view cdg-hybrid/cdginc/spare.cdg @ 268:f2e52cab0a73

abb_inth.c: check all interrupt causes, not just one The original code used if - else if - else if etc constructs, thus the first detected interrupt was the only one handled. However, Iota ITSTATREG is a clear-on-read register, thus if we only handle the first detected interrupt and skip checking the others, then the other interrupts will be lost, if more than one interrupt happened to occur in one ABB interrupt handling cycle - a form of rare race condition. Change the code to check all interrupts that were read in this cycle.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 13 Jun 2021 18:17:53 +0000
parents 35f7a1dc9f7d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : spare.cdg                                                      |
| SOURCE  : "msg\rr_com.mdf"                                               |
| LastModified : "2004-01-16"                                              |
| IdAndVersion : "8010.606.02.008"                                         |
| SrcFileTime  : "Wed Nov 28 10:20:42 2007"                                |
| Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:53 2016                   |
|           !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!!                |
+--------------------------------------------------------------------------+
*/

/* rr_com     */
/*  idx spareValue bSize */
/*    0*/ { 0x00000000,   1},
/*    1*/ { 0x00000000,   1},
/*    2*/ { 0x00000000,   1},
/*    3*/ { 0x00000000,   1},
/*    4*/ { 0x00000000,   1},
/*    5*/ { 0x00000000,   3},
/*    6*/ { 0x00000000,   3},
/*    7*/ { 0x00000000,   3},
/*    8*/ { 0x00000000,   3},
/*    9*/ { 0x00000000,   1},
/*   10*/ { 0x00000000,   1},
/*   11*/ { 0x00000000,   1},
/*   12*/ { 0x00000000,   1},
/*   13*/ { 0x00000000,   4},
/*   14*/ { 0x00000000,   8},
/* rr         */
/*  idx spareValue bSize */
/*   15*/ { 0x00000000,   1},
/*   16*/ { 0x00000000,   1},
/*   17*/ { 0x00000000,   2},
/*   18*/ { 0x00000000,   3},
/*   19*/ { 0x00000000,   4},
/*   20*/ { 0x00000000,   8},
/*   21*/ { 0x00000000,   1},
/*   22*/ { 0x00000000,   3},
/*   23*/ { 0x00000000,   5},
/*   24*/ { 0x00000000,   1},
/*   25*/ { 0x0000002B,   8},
/*   26*/ { 0x00000000,   1},
/*   27*/ { 0x00000000,   3},
/*   28*/ { 0x00000000,   2},
/*   29*/ { 0x00000000,   2},
/*   30*/ { 0x00000000,   2},
/*   31*/ { 0x0000002B,   8},
/*   32*/ { 0x0000000F,   4},
/*   33*/ { 0x00000000,   3},
/*   34*/ { 0x00000000,   1},
/*   35*/ { 0x00000000,   2},
/*   36*/ { 0x00000000,   4},
/*   37*/ { 0x00000000,   2},
/*   38*/ { 0x00000000,   2},
/*   39*/ { 0x00000000,   1},
/*   40*/ { 0x00000000,   1},
/*   41*/ { 0x0000002B,   8},
/*   42*/ { 0x00000000,   1},
/*   43*/ { 0x00000000,   2},
/*   44*/ { 0x00000000,   2},
/*   45*/ { 0x00000000,   3},
/*   46*/ { 0x00000000,   2},
/*   47*/ { 0x0000002B,   8},
/*   48*/ { 0x0000002B,   8},
/*   49*/ { 0x0000002B,   8},
/*   50*/ { 0x0000002B,   8},
/*   51*/ { 0x0000002B,   8},
/*   52*/ { 0x0000002B,   8},
/*   53*/ { 0x0000002B,   8},
/*   54*/ { 0x0000002B,   8},
/*   55*/ { 0x0000002B,   8},
/*   56*/ { 0x00000000,   2},
/*   57*/ { 0x00000000,   8},
/*   58*/ { 0x0000002B,   8},
/*   59*/ { 0x00000003,   2},
/*   60*/ { 0x00000000,   1},
/*   61*/ { 0x00000000,   8},
/*   62*/ { 0x00000001,   2},
/*   63*/ { 0x00000000,   3},
/*   64*/ { 0x0000002B,   8},
/*   65*/ { 0x0000002B,   8},
/*   66*/ { 0x0000002B,   8},
/*   67*/ { 0x00000000,   1},
/*   68*/ { 0x00000000,   4},
/*   69*/ { 0x0000002B,   8},
/*   70*/ { 0x00000000,   4},
/*   71*/ { 0x0000002B,   8},
/*   72*/ { 0x00000000,   4},
/*   73*/ { 0x0000002B,   8},
/*   74*/ { 0x0000002B,   8},
/*   75*/ { 0x0000002B,   8},
/* rr_short_pd */
/*  idx spareValue bSize */
/*   76*/ { 0x0000002B,   8},
/*   77*/ { 0x0000002B,   8},
/* mm         */
/*  idx spareValue bSize */
/*   78*/ { 0x00000000,   1},
/*   79*/ { 0x00000000,   1},
/*   80*/ { 0x00000000,   1},
/*   81*/ { 0x0000000F,   4},
/*   82*/ { 0x00000000,   2},
/*   83*/ { 0x00000001,   1},
/*   84*/ { 0x00000000,   6},
/*   85*/ { 0x00000000,   4},
/*   86*/ { 0x00000000,   4},
/*   87*/ { 0x00000000,   4},
/* cc         */
/*  idx spareValue bSize */
/*   88*/ { 0x00000000,   3},
/*   89*/ { 0x00000000,   1},
/*   90*/ { 0x00000000,   2},
/*   91*/ { 0x00000000,   2},
/*   92*/ { 0x00000000,   2},
/*   93*/ { 0x00000000,   2},
/*   94*/ { 0x00000000,   3},
/*   95*/ { 0x00000000,   1},
/*   96*/ { 0x00000000,   2},
/*   97*/ { 0x00000000,   2},
/*   98*/ { 0x00000000,   6},
/*   99*/ { 0x00000000,   4},
/*  100*/ { 0x00000000,   3},
/*  101*/ { 0x00000000,   3},
/*  102*/ { 0x00000000,   3},
/*  103*/ { 0x00000000,   1},
/*  104*/ { 0x00000000,   3},
/*  105*/ { 0x00000000,   3},
/*  106*/ { 0x00000000,   1},
/*  107*/ { 0x00000000,   1},
/*  108*/ { 0x00000000,   7},
/*  109*/ { 0x00000000,   5},
/*  110*/ { 0x00000000,   3},
/*  111*/ { 0x00000000,   3},
/*  112*/ { 0x00000000,   4},
/*  113*/ { 0x00000000,   4},
/* ss         */
/*  idx spareValue bSize */
/*  114*/ { 0x00000000,   1},
/* sms        */
/*  idx spareValue bSize */
/*  115*/ { 0x00000000,   8},
/*  116*/ { 0x00000000,   5},
/*  117*/ { 0x00000000,   8},
/*  118*/ { 0x00000000,   5},
/*  119*/ { 0x00000001,   1},
/*  120*/ { 0x00000000,   3},
/*  121*/ { 0x00000000,   1},
/*  122*/ { 0x00000000,   8},
/*  123*/ { 0x00000000,   8},
/*  124*/ { 0x00000000,   8},
/*  125*/ { 0x00000000,   8},
/*  126*/ { 0x00000000,   8},
/*  127*/ { 0x00000000,   2},
/*  128*/ { 0x00000000,   1},
/*  129*/ { 0x00000000,   4},
/*  130*/ { 0x00000000,   4},
/*  131*/ { 0x00000000,   1},
/*  132*/ { 0x00000000,   1},
/*  133*/ { 0x00000000,   4},
/*  134*/ { 0x00000000,   4},
/*  135*/ { 0x00000000,   1},
/*  136*/ { 0x00000000,   1},
/*  137*/ { 0x00000000,   4},
/*  138*/ { 0x00000000,   4},
/*  139*/ { 0x00000000,   1},
/*  140*/ { 0x00000000,   1},
/*  141*/ { 0x00000000,   4},
/*  142*/ { 0x00000000,   4},
/*  143*/ { 0x00000000,   1},
/*  144*/ { 0x00000000,   1},
/*  145*/ { 0x00000000,   2},
/*  146*/ { 0x00000000,   4},
/*  147*/ { 0x00000000,   1},
/*  148*/ { 0x00000000,   3},
/* fac        */
/*  idx spareValue bSize */
/*  149*/ { 0x00000000,   3},
/*  150*/ { 0x00000000,   2},
/*  151*/ { 0x00000000,   5},
/* sat        */
/*  idx spareValue bSize */
/*  152*/ { 0x00000000,   3},
/*  153*/ { 0x00000000,   4},
/* t30        */
/*  idx spareValue bSize */
/*  154*/ { 0x00000000,   5},
/*  155*/ { 0x00000000,   1},
/*  156*/ { 0x00000000,   1},
/*  157*/ { 0x00000000,   3},
/*  158*/ { 0x00000000,   7},
/*  159*/ { 0x00000000,   1},
/*  160*/ { 0x00000000,   1},
/*  161*/ { 0x00000000,   1},
/*  162*/ { 0x00000000,   1},
/*  163*/ { 0x00000000,   1},
/*  164*/ { 0x00000000,   9},
/*  165*/ { 0x00000000,   1},
/*  166*/ { 0x00000000,   2},
/*  167*/ { 0x00000000,   7},
/*  168*/ { 0x00000000,   3},
/*  169*/ { 0x00000000,   2},
/*  170*/ { 0x00000000,   2},
/*  171*/ { 0x00000000,   1},
/*  172*/ { 0x00000000,   1},
/* gmm        */
/*  idx spareValue bSize */
/*  173*/ { 0x00000000,   1},
/*  174*/ { 0x00000000,   1},
/*  175*/ { 0x00000000,   1},
/*  176*/ { 0x00000000,   1},
/*  177*/ { 0x00000000,   1},
/*  178*/ { 0x00000000,   1},
/*  179*/ { 0x0000000F,   4},
/*  180*/ { 0x00000000,   1},
/*  181*/ { 0x00000000,   1},
/*  182*/ { 0x00000000,   4},
/*  183*/ { 0x00000000,   1},
/*  184*/ { 0x00000000,   1},
/*  185*/ { 0x00000000,   8},
/*  186*/ { 0x00000001,   1},
/*  187*/ { 0x00000000,   3},
/*  188*/ { 0x00000000,   1},
/*  189*/ { 0x00000000,   6},
/*  190*/ { 0x00000000,   4},
/*  191*/ { 0x00000000,   4},
/*  192*/ { 0x00000000,   4},
/*  193*/ { 0x00000000,   4},
/*  194*/ { 0x00000000,   4},
/*  195*/ { 0x00000000,   4},
/* tst        */
/*  idx spareValue bSize */
/*  196*/ { 0x00000000,   3},
/*  197*/ { 0x00000000,   4},
/* grlc       */
/*  idx spareValue bSize */
/*  198*/ { 0x00000000,   1},
/*  199*/ { 0x0000002B,   8},
/*  200*/ { 0x0000002B,   8},
/*  201*/ { 0x0000002B,   8},
/*  202*/ { 0x00000000,   2},
/*  203*/ { 0x0000002B,   8},
/*  204*/ { 0x0000002B,   8},
/*  205*/ { 0x0000002B,   8},
/*  206*/ { 0x0000002B,   8},
/* grr        */
/*  idx spareValue bSize */
/*  207*/ { 0x00000000,   1},
/*  208*/ { 0x00000000,   1},
/*  209*/ { 0x00000000,   1},
/*  210*/ { 0x00000000,   1},
/*  211*/ { 0x00000000,   2},
/*  212*/ { 0x00000000,   1},
/*  213*/ { 0x00000000,   2},
/*  214*/ { 0x0000002B,   8},
/*  215*/ { 0x00000007,   3},
/*  216*/ { 0x0000002B,   8},
/*  217*/ { 0x0000002B,   8},
/*  218*/ { 0x0000002B,   8},
/*  219*/ { 0x00000000,   1},
/*  220*/ { 0x0000002B,   8},
/*  221*/ { 0x00000000,   1},
/*  222*/ { 0x0000002B,   8},
/*  223*/ { 0x0000002B,   8},
/*  224*/ { 0x0000002B,   8},
/*  225*/ { 0x0000002B,   8},
/*  226*/ { 0x00000000,   2},
/*  227*/ { 0x0000002B,   8},
/*  228*/ { 0x0000002B,   8},
/*  229*/ { 0x0000002B,   8},
/*  230*/ { 0x0000002B,   8},
/*  231*/ { 0x0000002B,   8},
/*  232*/ { 0x0000002B,   8},
/*  233*/ { 0x0000002B,   8},
/*  234*/ { 0x0000002B,   8},
/*  235*/ { 0x0000002B,   8},
/*  236*/ { 0x0000002B,   8},
/*  237*/ { 0x0000002B,   8},
/*  238*/ { 0x0000002B,   8},
/*  239*/ { 0x0000002B,   8},
/*  240*/ { 0x0000002B,   8},
/*  241*/ { 0x0000002B,   8},
/*  242*/ { 0x0000002B,   8},
/*  243*/ { 0x0000002B,   8},
/*  244*/ { 0x0000002B,   8},
/*  245*/ { 0x0000002B,   8},
/*  246*/ { 0x0000002B,   8},
/*  247*/ { 0x0000002B,   8},
/*  248*/ { 0x0000002B,   8},
/*  249*/ { 0x0000002B,   8},
/*  250*/ { 0x0000002B,   8},
/*  251*/ { 0x0000002B,   8},
/*  252*/ { 0x0000002B,   8},
/*  253*/ { 0x00000000,   1},
/*  254*/ { 0x0000002B,   8},
/*  255*/ { 0x0000002B,   8},
/*  256*/ { 0x0000002B,   8},
/*  257*/ { 0x0000002B,   8},
/*  258*/ { 0x0000002B,   8},
/*  259*/ { 0x0000002B,   8},
/*  260*/ { 0x00000000,   1},
/*  261*/ { 0x0000002B,   8},
/*  262*/ { 0x00000000,   1},
/*  263*/ { 0x00000000,   1},
/*  264*/ { 0x0000002B,   8},
/*  265*/ { 0x00000000,   1},
/*  266*/ { 0x00000000,   4},
/*  267*/ { 0x0000002B,   8},
/*  268*/ { 0x0000002B,   8},
/*  269*/ { 0x00000000,   1},
/*  270*/ { 0x0000002B,   8},
/* sm         */
/*  idx spareValue bSize */
/*  271*/ { 0x00000000,   4},
/*  272*/ { 0x00000000,   4},
/*  273*/ { 0x00000000,   2},
/*  274*/ { 0x00000000,   1},
/*  275*/ { 0x00000000,   3},
/*  276*/ { 0x00000000,   4},
/*  277*/ { 0x00000000,   1},
/*  278*/ { 0x00000000,   4},
/*  279*/ { 0x00000000,   3},
/*  280*/ { 0x00000000,   1},
/*  281*/ { 0x00000000,   1},
/*  282*/ { 0x00000000,   4},
/*  283*/ { 0x00000000,   4},
/*  284*/ { 0x00000000,   4},
/*65535*/ { 0x00000000,   0},