averageMemoryDefinition.h 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. /***********************************
  2. * $Id: m68360_pram.h,v 1.1 2002/03/02 15:01:07 gerg Exp $
  3. ***********************************
  4. *
  5. ***************************************
  6. * Definitions of the parameter area RAM.
  7. * Note that different structures are overlaid
  8. * at the same offsets for the different modes
  9. * of operation.
  10. ***************************************
  11. */
  12. #ifndef __PRAM_H
  13. #define __PRAM_H
  14. /* Time slot assignment table */
  15. #define VALID_SLOT 0x8000
  16. #define WRAP_SLOT 0x4000
  17. /*****************************************************************
  18. Global Multichannel parameter RAM
  19. *****************************************************************/
  20. struct global_multi_pram {
  21. /*
  22. * Global Multichannel parameter RAM
  23. */
  24. unsigned long mcbase; /* Multichannel Base pointer */
  25. unsigned short qmcstate; /* Multichannel Controller state */
  26. unsigned short mrblr; /* Maximum Receive Buffer Length */
  27. unsigned short tx_s_ptr; /* TSTATx Pointer */
  28. unsigned short rxptr; /* Current Time slot entry in TSATRx */
  29. unsigned short grfthr; /* Global Receive frame threshold */
  30. unsigned short grfcnt; /* Global Receive Frame Count */
  31. unsigned long intbase; /* Multichannel Base address */
  32. unsigned long iintptr; /* Pointer to interrupt queue */
  33. unsigned short rx_s_ptr; /* TSTARx Pointer */
  34. unsigned short txptr; /* Current Time slot entry in TSATTx */
  35. unsigned long c_mask32; /* CRC Constant (debb20e3) */
  36. unsigned short tsatrx[32]; /* Time Slot Assignment Table Rx */
  37. unsigned short tsattx[32]; /* Time Slot Assignment Table Tx */
  38. unsigned short c_mask16; /* CRC Constant (f0b8) */
  39. };
  40. /*****************************************************************
  41. Quicc32 HDLC parameter RAM
  42. *****************************************************************/
  43. struct quicc32_pram {
  44. unsigned short tbase; /* Tx Buffer Descriptors Base Address */
  45. unsigned short chamr; /* Channel Mode Register */
  46. unsigned long tstate; /* Tx Internal State */
  47. unsigned long txintr; /* Tx Internal Data Pointer */
  48. unsigned short tbptr; /* Tx Buffer Descriptor Pointer */
  49. unsigned short txcntr; /* Tx Internal Byte Count */
  50. unsigned long tupack; /* (Tx Temp) */
  51. unsigned long zistate; /* Zero Insertion machine state */
  52. unsigned long tcrc; /* Temp Transmit CRC */
  53. unsigned short intmask; /* Channel's interrupt mask flags */
  54. unsigned short bdflags;
  55. unsigned short rbase; /* Rx Buffer Descriptors Base Address */
  56. unsigned short mflr; /* Max Frame Length Register */
  57. unsigned long rstate; /* Rx Internal State */
  58. unsigned long rxintr; /* Rx Internal Data Pointer */
  59. unsigned short rbptr; /* Rx Buffer Descriptor Pointer */
  60. unsigned short rxbyc; /* Rx Internal Byte Count */
  61. unsigned long rpack; /* (Rx Temp) */
  62. unsigned long zdstate; /* Zero Deletion machine state */
  63. unsigned long rcrc; /* Temp Transmit CRC */
  64. unsigned short maxc; /* Max_length counter */
  65. unsigned short tmp_mb; /* Temp */
  66. };
  67. /*****************************************************************
  68. HDLC parameter RAM
  69. *****************************************************************/
  70. struct hdlc_pram {
  71. /*
  72. * SCC parameter RAM
  73. */
  74. unsigned short rbase; /* RX BD base address */
  75. unsigned short tbase; /* TX BD base address */
  76. unsigned char rfcr; /* Rx function code */
  77. unsigned char tfcr; /* Tx function code */
  78. unsigned short mrblr; /* Rx buffer length */
  79. unsigned long rstate; /* Rx internal state */
  80. unsigned long rptr; /* Rx internal data pointer */
  81. unsigned short rbptr; /* rb BD Pointer */
  82. unsigned short rcount; /* Rx internal byte count */
  83. unsigned long rtemp; /* Rx temp */
  84. unsigned long tstate; /* Tx internal state */
  85. unsigned long tptr; /* Tx internal data pointer */
  86. unsigned short tbptr; /* Tx BD pointer */
  87. unsigned short tcount; /* Tx byte count */
  88. unsigned long ttemp; /* Tx temp */
  89. unsigned long rcrc; /* temp receive CRC */
  90. unsigned long tcrc; /* temp transmit CRC */
  91. /*
  92. * HDLC specific parameter RAM
  93. */
  94. unsigned char RESERVED1[4]; /* Reserved area */
  95. unsigned long c_mask; /* CRC constant */
  96. unsigned long c_pres; /* CRC preset */
  97. unsigned short disfc; /* discarded frame counter */
  98. unsigned short crcec; /* CRC error counter */
  99. unsigned short abtsc; /* abort sequence counter */
  100. unsigned short nmarc; /* nonmatching address rx cnt */
  101. unsigned short retrc; /* frame retransmission cnt */
  102. unsigned short mflr; /* maximum frame length reg */
  103. unsigned short max_cnt; /* maximum length counter */
  104. unsigned short rfthr; /* received frames threshold */
  105. unsigned short rfcnt; /* received frames count */
  106. unsigned short hmask; /* user defined frm addr mask */
  107. unsigned short haddr1; /* user defined frm address 1 */
  108. unsigned short haddr2; /* user defined frm address 2 */
  109. unsigned short haddr3; /* user defined frm address 3 */
  110. unsigned short haddr4; /* user defined frm address 4 */
  111. unsigned short tmp; /* temp */
  112. unsigned short tmp_mb; /* temp */
  113. };
  114. /*****************************************************************
  115. UART parameter RAM
  116. *****************************************************************/
  117. /*
  118. * bits in uart control characters table
  119. */
  120. #define CC_INVALID 0x8000 /* control character is valid */
  121. #define CC_REJ 0x4000 /* don't store char in buffer */
  122. #define CC_CHAR 0x00ff /* control character */
  123. /* UART */
  124. struct uart_pram {
  125. /*
  126. * SCC parameter RAM
  127. */
  128. unsigned short rbase; /* RX BD base address */
  129. unsigned short tbase; /* TX BD base address */
  130. unsigned char rfcr; /* Rx function code */
  131. unsigned char tfcr; /* Tx function code */
  132. unsigned short mrblr; /* Rx buffer length */
  133. unsigned long rstate; /* Rx internal state */
  134. unsigned long rptr; /* Rx internal data pointer */
  135. unsigned short rbptr; /* rb BD Pointer */
  136. unsigned short rcount; /* Rx internal byte count */
  137. unsigned long rx_temp; /* Rx temp */
  138. unsigned long tstate; /* Tx internal state */
  139. unsigned long tptr; /* Tx internal data pointer */
  140. unsigned short tbptr; /* Tx BD pointer */
  141. unsigned short tcount; /* Tx byte count */
  142. unsigned long ttemp; /* Tx temp */
  143. unsigned long rcrc; /* temp receive CRC */
  144. unsigned long tcrc; /* temp transmit CRC */
  145. /*
  146. * UART specific parameter RAM
  147. */
  148. unsigned char RESERVED1[8]; /* Reserved area */
  149. unsigned short max_idl; /* maximum idle characters */
  150. unsigned short idlc; /* rx idle counter (internal) */
  151. unsigned short brkcr; /* break count register */
  152. unsigned short parec; /* Rx parity error counter */
  153. unsigned short frmer; /* Rx framing error counter */
  154. unsigned short nosec; /* Rx noise counter */
  155. unsigned short brkec; /* Rx break character counter */
  156. unsigned short brkln; /* Reaceive break length */
  157. unsigned short uaddr1; /* address character 1 */
  158. unsigned short uaddr2; /* address character 2 */
  159. unsigned short rtemp; /* temp storage */
  160. unsigned short toseq; /* Tx out of sequence char */
  161. unsigned short cc[8]; /* Rx control characters */
  162. unsigned short rccm; /* Rx control char mask */
  163. unsigned short rccr; /* Rx control char register */
  164. unsigned short rlbc; /* Receive last break char */
  165. };
  166. /*****************************************************************