aic7xxx_reg.h_shipped 48 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787
  1. /*
  2. * DO NOT EDIT - This file is automatically generated
  3. * from the following source files:
  4. *
  5. * $Id: //depot/aic7xxx/aic7xxx/aic7xxx.seq#58 $
  6. * $Id: //depot/aic7xxx/aic7xxx/aic7xxx.reg#40 $
  7. */
  8. typedef int (ahc_reg_print_t)(u_int, u_int *, u_int);
  9. typedef struct ahc_reg_parse_entry {
  10. char *name;
  11. uint8_t value;
  12. uint8_t mask;
  13. } ahc_reg_parse_entry_t;
  14. #if AIC_DEBUG_REGISTERS
  15. ahc_reg_print_t ahc_scsiseq_print;
  16. #else
  17. #define ahc_scsiseq_print(regvalue, cur_col, wrap) \
  18. ahc_print_register(NULL, 0, "SCSISEQ", 0x00, regvalue, cur_col, wrap)
  19. #endif
  20. #if AIC_DEBUG_REGISTERS
  21. ahc_reg_print_t ahc_sxfrctl0_print;
  22. #else
  23. #define ahc_sxfrctl0_print(regvalue, cur_col, wrap) \
  24. ahc_print_register(NULL, 0, "SXFRCTL0", 0x01, regvalue, cur_col, wrap)
  25. #endif
  26. #if AIC_DEBUG_REGISTERS
  27. ahc_reg_print_t ahc_sxfrctl1_print;
  28. #else
  29. #define ahc_sxfrctl1_print(regvalue, cur_col, wrap) \
  30. ahc_print_register(NULL, 0, "SXFRCTL1", 0x02, regvalue, cur_col, wrap)
  31. #endif
  32. #if AIC_DEBUG_REGISTERS
  33. ahc_reg_print_t ahc_scsisigo_print;
  34. #else
  35. #define ahc_scsisigo_print(regvalue, cur_col, wrap) \
  36. ahc_print_register(NULL, 0, "SCSISIGO", 0x03, regvalue, cur_col, wrap)
  37. #endif
  38. #if AIC_DEBUG_REGISTERS
  39. ahc_reg_print_t ahc_scsisigi_print;
  40. #else
  41. #define ahc_scsisigi_print(regvalue, cur_col, wrap) \
  42. ahc_print_register(NULL, 0, "SCSISIGI", 0x03, regvalue, cur_col, wrap)
  43. #endif
  44. #if AIC_DEBUG_REGISTERS
  45. ahc_reg_print_t ahc_scsirate_print;
  46. #else
  47. #define ahc_scsirate_print(regvalue, cur_col, wrap) \
  48. ahc_print_register(NULL, 0, "SCSIRATE", 0x04, regvalue, cur_col, wrap)
  49. #endif
  50. #if AIC_DEBUG_REGISTERS
  51. ahc_reg_print_t ahc_scsiid_print;
  52. #else
  53. #define ahc_scsiid_print(regvalue, cur_col, wrap) \
  54. ahc_print_register(NULL, 0, "SCSIID", 0x05, regvalue, cur_col, wrap)
  55. #endif
  56. #if AIC_DEBUG_REGISTERS
  57. ahc_reg_print_t ahc_scsidatl_print;
  58. #else
  59. #define ahc_scsidatl_print(regvalue, cur_col, wrap) \
  60. ahc_print_register(NULL, 0, "SCSIDATL", 0x06, regvalue, cur_col, wrap)
  61. #endif
  62. #if AIC_DEBUG_REGISTERS
  63. ahc_reg_print_t ahc_scsidath_print;
  64. #else
  65. #define ahc_scsidath_print(regvalue, cur_col, wrap) \
  66. ahc_print_register(NULL, 0, "SCSIDATH", 0x07, regvalue, cur_col, wrap)
  67. #endif
  68. #if AIC_DEBUG_REGISTERS
  69. ahc_reg_print_t ahc_stcnt_print;
  70. #else
  71. #define ahc_stcnt_print(regvalue, cur_col, wrap) \
  72. ahc_print_register(NULL, 0, "STCNT", 0x08, regvalue, cur_col, wrap)
  73. #endif
  74. #if AIC_DEBUG_REGISTERS
  75. ahc_reg_print_t ahc_optionmode_print;
  76. #else
  77. #define ahc_optionmode_print(regvalue, cur_col, wrap) \
  78. ahc_print_register(NULL, 0, "OPTIONMODE", 0x08, regvalue, cur_col, wrap)
  79. #endif
  80. #if AIC_DEBUG_REGISTERS
  81. ahc_reg_print_t ahc_targcrccnt_print;
  82. #else
  83. #define ahc_targcrccnt_print(regvalue, cur_col, wrap) \
  84. ahc_print_register(NULL, 0, "TARGCRCCNT", 0x0a, regvalue, cur_col, wrap)
  85. #endif
  86. #if AIC_DEBUG_REGISTERS
  87. ahc_reg_print_t ahc_clrsint0_print;
  88. #else
  89. #define ahc_clrsint0_print(regvalue, cur_col, wrap) \
  90. ahc_print_register(NULL, 0, "CLRSINT0", 0x0b, regvalue, cur_col, wrap)
  91. #endif
  92. #if AIC_DEBUG_REGISTERS
  93. ahc_reg_print_t ahc_sstat0_print;
  94. #else
  95. #define ahc_sstat0_print(regvalue, cur_col, wrap) \
  96. ahc_print_register(NULL, 0, "SSTAT0", 0x0b, regvalue, cur_col, wrap)
  97. #endif
  98. #if AIC_DEBUG_REGISTERS
  99. ahc_reg_print_t ahc_clrsint1_print;
  100. #else
  101. #define ahc_clrsint1_print(regvalue, cur_col, wrap) \
  102. ahc_print_register(NULL, 0, "CLRSINT1", 0x0c, regvalue, cur_col, wrap)
  103. #endif
  104. #if AIC_DEBUG_REGISTERS
  105. ahc_reg_print_t ahc_sstat1_print;
  106. #else
  107. #define ahc_sstat1_print(regvalue, cur_col, wrap) \
  108. ahc_print_register(NULL, 0, "SSTAT1", 0x0c, regvalue, cur_col, wrap)
  109. #endif
  110. #if AIC_DEBUG_REGISTERS
  111. ahc_reg_print_t ahc_sstat2_print;
  112. #else
  113. #define ahc_sstat2_print(regvalue, cur_col, wrap) \
  114. ahc_print_register(NULL, 0, "SSTAT2", 0x0d, regvalue, cur_col, wrap)
  115. #endif
  116. #if AIC_DEBUG_REGISTERS
  117. ahc_reg_print_t ahc_sstat3_print;
  118. #else
  119. #define ahc_sstat3_print(regvalue, cur_col, wrap) \
  120. ahc_print_register(NULL, 0, "SSTAT3", 0x0e, regvalue, cur_col, wrap)
  121. #endif
  122. #if AIC_DEBUG_REGISTERS
  123. ahc_reg_print_t ahc_scsiid_ultra2_print;
  124. #else
  125. #define ahc_scsiid_ultra2_print(regvalue, cur_col, wrap) \
  126. ahc_print_register(NULL, 0, "SCSIID_ULTRA2", 0x0f, regvalue, cur_col, wrap)
  127. #endif
  128. #if AIC_DEBUG_REGISTERS
  129. ahc_reg_print_t ahc_simode0_print;
  130. #else
  131. #define ahc_simode0_print(regvalue, cur_col, wrap) \
  132. ahc_print_register(NULL, 0, "SIMODE0", 0x10, regvalue, cur_col, wrap)
  133. #endif
  134. #if AIC_DEBUG_REGISTERS
  135. ahc_reg_print_t ahc_simode1_print;
  136. #else
  137. #define ahc_simode1_print(regvalue, cur_col, wrap) \
  138. ahc_print_register(NULL, 0, "SIMODE1", 0x11, regvalue, cur_col, wrap)
  139. #endif
  140. #if AIC_DEBUG_REGISTERS
  141. ahc_reg_print_t ahc_scsibusl_print;
  142. #else
  143. #define ahc_scsibusl_print(regvalue, cur_col, wrap) \
  144. ahc_print_register(NULL, 0, "SCSIBUSL", 0x12, regvalue, cur_col, wrap)
  145. #endif
  146. #if AIC_DEBUG_REGISTERS
  147. ahc_reg_print_t ahc_scsibush_print;
  148. #else
  149. #define ahc_scsibush_print(regvalue, cur_col, wrap) \
  150. ahc_print_register(NULL, 0, "SCSIBUSH", 0x13, regvalue, cur_col, wrap)
  151. #endif
  152. #if AIC_DEBUG_REGISTERS
  153. ahc_reg_print_t ahc_sxfrctl2_print;
  154. #else
  155. #define ahc_sxfrctl2_print(regvalue, cur_col, wrap) \
  156. ahc_print_register(NULL, 0, "SXFRCTL2", 0x13, regvalue, cur_col, wrap)
  157. #endif
  158. #if AIC_DEBUG_REGISTERS
  159. ahc_reg_print_t ahc_shaddr_print;
  160. #else
  161. #define ahc_shaddr_print(regvalue, cur_col, wrap) \
  162. ahc_print_register(NULL, 0, "SHADDR", 0x14, regvalue, cur_col, wrap)
  163. #endif
  164. #if AIC_DEBUG_REGISTERS
  165. ahc_reg_print_t ahc_seltimer_print;
  166. #else
  167. #define ahc_seltimer_print(regvalue, cur_col, wrap) \
  168. ahc_print_register(NULL, 0, "SELTIMER", 0x18, regvalue, cur_col, wrap)
  169. #endif
  170. #if AIC_DEBUG_REGISTERS
  171. ahc_reg_print_t ahc_selid_print;
  172. #else
  173. #define ahc_selid_print(regvalue, cur_col, wrap) \
  174. ahc_print_register(NULL, 0, "SELID", 0x19, regvalue, cur_col, wrap)
  175. #endif
  176. #if AIC_DEBUG_REGISTERS
  177. ahc_reg_print_t ahc_scamctl_print;
  178. #else
  179. #define ahc_scamctl_print(regvalue, cur_col, wrap) \
  180. ahc_print_register(NULL, 0, "SCAMCTL", 0x1a, regvalue, cur_col, wrap)
  181. #endif
  182. #if AIC_DEBUG_REGISTERS
  183. ahc_reg_print_t ahc_targid_print;
  184. #else
  185. #define ahc_targid_print(regvalue, cur_col, wrap) \
  186. ahc_print_register(NULL, 0, "TARGID", 0x1b, regvalue, cur_col, wrap)
  187. #endif
  188. #if AIC_DEBUG_REGISTERS
  189. ahc_reg_print_t ahc_spiocap_print;
  190. #else
  191. #define ahc_spiocap_print(regvalue, cur_col, wrap) \
  192. ahc_print_register(NULL, 0, "SPIOCAP", 0x1b, regvalue, cur_col, wrap)
  193. #endif
  194. #if AIC_DEBUG_REGISTERS
  195. ahc_reg_print_t ahc_brdctl_print;
  196. #else
  197. #define ahc_brdctl_print(regvalue, cur_col, wrap) \
  198. ahc_print_register(NULL, 0, "BRDCTL", 0x1d, regvalue, cur_col, wrap)
  199. #endif
  200. #if AIC_DEBUG_REGISTERS
  201. ahc_reg_print_t ahc_seectl_print;
  202. #else
  203. #define ahc_seectl_print(regvalue, cur_col, wrap) \
  204. ahc_print_register(NULL, 0, "SEECTL", 0x1e, regvalue, cur_col, wrap)
  205. #endif
  206. #if AIC_DEBUG_REGISTERS
  207. ahc_reg_print_t ahc_sblkctl_print;
  208. #else
  209. #define ahc_sblkctl_print(regvalue, cur_col, wrap) \
  210. ahc_print_register(NULL, 0, "SBLKCTL", 0x1f, regvalue, cur_col, wrap)
  211. #endif
  212. #if AIC_DEBUG_REGISTERS
  213. ahc_reg_print_t ahc_busy_targets_print;
  214. #else
  215. #define ahc_busy_targets_print(regvalue, cur_col, wrap) \
  216. ahc_print_register(NULL, 0, "BUSY_TARGETS", 0x20, regvalue, cur_col, wrap)
  217. #endif
  218. #if AIC_DEBUG_REGISTERS
  219. ahc_reg_print_t ahc_ultra_enb_print;
  220. #else
  221. #define ahc_ultra_enb_print(regvalue, cur_col, wrap) \
  222. ahc_print_register(NULL, 0, "ULTRA_ENB", 0x30, regvalue, cur_col, wrap)
  223. #endif
  224. #if AIC_DEBUG_REGISTERS
  225. ahc_reg_print_t ahc_disc_dsb_print;
  226. #else
  227. #define ahc_disc_dsb_print(regvalue, cur_col, wrap) \
  228. ahc_print_register(NULL, 0, "DISC_DSB", 0x32, regvalue, cur_col, wrap)
  229. #endif
  230. #if AIC_DEBUG_REGISTERS
  231. ahc_reg_print_t ahc_cmdsize_table_tail_print;
  232. #else
  233. #define ahc_cmdsize_table_tail_print(regvalue, cur_col, wrap) \
  234. ahc_print_register(NULL, 0, "CMDSIZE_TABLE_TAIL", 0x34, regvalue, cur_col, wrap)
  235. #endif
  236. #if AIC_DEBUG_REGISTERS
  237. ahc_reg_print_t ahc_mwi_residual_print;
  238. #else
  239. #define ahc_mwi_residual_print(regvalue, cur_col, wrap) \
  240. ahc_print_register(NULL, 0, "MWI_RESIDUAL", 0x38, regvalue, cur_col, wrap)
  241. #endif
  242. #if AIC_DEBUG_REGISTERS
  243. ahc_reg_print_t ahc_next_queued_scb_print;
  244. #else
  245. #define ahc_next_queued_scb_print(regvalue, cur_col, wrap) \
  246. ahc_print_register(NULL, 0, "NEXT_QUEUED_SCB", 0x39, regvalue, cur_col, wrap)
  247. #endif
  248. #if AIC_DEBUG_REGISTERS
  249. ahc_reg_print_t ahc_msg_out_print;
  250. #else
  251. #define ahc_msg_out_print(regvalue, cur_col, wrap) \
  252. ahc_print_register(NULL, 0, "MSG_OUT", 0x3a, regvalue, cur_col, wrap)
  253. #endif
  254. #if AIC_DEBUG_REGISTERS
  255. ahc_reg_print_t ahc_dmaparams_print;
  256. #else
  257. #define ahc_dmaparams_print(regvalue, cur_col, wrap) \
  258. ahc_print_register(NULL, 0, "DMAPARAMS", 0x3b, regvalue, cur_col, wrap)
  259. #endif
  260. #if AIC_DEBUG_REGISTERS
  261. ahc_reg_print_t ahc_seq_flags_print;
  262. #else
  263. #define ahc_seq_flags_print(regvalue, cur_col, wrap) \
  264. ahc_print_register(NULL, 0, "SEQ_FLAGS", 0x3c, regvalue, cur_col, wrap)
  265. #endif
  266. #if AIC_DEBUG_REGISTERS
  267. ahc_reg_print_t ahc_saved_scsiid_print;
  268. #else
  269. #define ahc_saved_scsiid_print(regvalue, cur_col, wrap) \
  270. ahc_print_register(NULL, 0, "SAVED_SCSIID", 0x3d, regvalue, cur_col, wrap)
  271. #endif
  272. #if AIC_DEBUG_REGISTERS
  273. ahc_reg_print_t ahc_saved_lun_print;
  274. #else
  275. #define ahc_saved_lun_print(regvalue, cur_col, wrap) \
  276. ahc_print_register(NULL, 0, "SAVED_LUN", 0x3e, regvalue, cur_col, wrap)
  277. #endif
  278. #if AIC_DEBUG_REGISTERS
  279. ahc_reg_print_t ahc_lastphase_print;
  280. #else
  281. #define ahc_lastphase_print(regvalue, cur_col, wrap) \
  282. ahc_print_register(NULL, 0, "LASTPHASE", 0x3f, regvalue, cur_col, wrap)
  283. #endif
  284. #if AIC_DEBUG_REGISTERS
  285. ahc_reg_print_t ahc_waiting_scbh_print;
  286. #else
  287. #define ahc_waiting_scbh_print(regvalue, cur_col, wrap) \
  288. ahc_print_register(NULL, 0, "WAITING_SCBH", 0x40, regvalue, cur_col, wrap)
  289. #endif
  290. #if AIC_DEBUG_REGISTERS
  291. ahc_reg_print_t ahc_disconnected_scbh_print;
  292. #else
  293. #define ahc_disconnected_scbh_print(regvalue, cur_col, wrap) \
  294. ahc_print_register(NULL, 0, "DISCONNECTED_SCBH", 0x41, regvalue, cur_col, wrap)
  295. #endif
  296. #if AIC_DEBUG_REGISTERS
  297. ahc_reg_print_t ahc_free_scbh_print;
  298. #else
  299. #define ahc_free_scbh_print(regvalue, cur_col, wrap) \
  300. ahc_print_register(NULL, 0, "FREE_SCBH", 0x42, regvalue, cur_col, wrap)
  301. #endif
  302. #if AIC_DEBUG_REGISTERS
  303. ahc_reg_print_t ahc_complete_scbh_print;
  304. #else
  305. #define ahc_complete_scbh_print(regvalue, cur_col, wrap) \
  306. ahc_print_register(NULL, 0, "COMPLETE_SCBH", 0x43, regvalue, cur_col, wrap)
  307. #endif
  308. #if AIC_DEBUG_REGISTERS
  309. ahc_reg_print_t ahc_hscb_addr_print;
  310. #else
  311. #define ahc_hscb_addr_print(regvalue, cur_col, wrap) \
  312. ahc_print_register(NULL, 0, "HSCB_ADDR", 0x44, regvalue, cur_col, wrap)
  313. #endif
  314. #if AIC_DEBUG_REGISTERS
  315. ahc_reg_print_t ahc_shared_data_addr_print;
  316. #else
  317. #define ahc_shared_data_addr_print(regvalue, cur_col, wrap) \
  318. ahc_print_register(NULL, 0, "SHARED_DATA_ADDR", 0x48, regvalue, cur_col, wrap)
  319. #endif
  320. #if AIC_DEBUG_REGISTERS
  321. ahc_reg_print_t ahc_kernel_qinpos_print;
  322. #else
  323. #define ahc_kernel_qinpos_print(regvalue, cur_col, wrap) \
  324. ahc_print_register(NULL, 0, "KERNEL_QINPOS", 0x4c, regvalue, cur_col, wrap)
  325. #endif
  326. #if AIC_DEBUG_REGISTERS
  327. ahc_reg_print_t ahc_qinpos_print;
  328. #else
  329. #define ahc_qinpos_print(regvalue, cur_col, wrap) \
  330. ahc_print_register(NULL, 0, "QINPOS", 0x4d, regvalue, cur_col, wrap)
  331. #endif
  332. #if AIC_DEBUG_REGISTERS
  333. ahc_reg_print_t ahc_qoutpos_print;
  334. #else
  335. #define ahc_qoutpos_print(regvalue, cur_col, wrap) \
  336. ahc_print_register(NULL, 0, "QOUTPOS", 0x4e, regvalue, cur_col, wrap)
  337. #endif
  338. #if AIC_DEBUG_REGISTERS
  339. ahc_reg_print_t ahc_kernel_tqinpos_print;
  340. #else
  341. #define ahc_kernel_tqinpos_print(regvalue, cur_col, wrap) \
  342. ahc_print_register(NULL, 0, "KERNEL_TQINPOS", 0x4f, regvalue, cur_col, wrap)
  343. #endif
  344. #if AIC_DEBUG_REGISTERS
  345. ahc_reg_print_t ahc_tqinpos_print;
  346. #else
  347. #define ahc_tqinpos_print(regvalue, cur_col, wrap) \
  348. ahc_print_register(NULL, 0, "TQINPOS", 0x50, regvalue, cur_col, wrap)
  349. #endif
  350. #if AIC_DEBUG_REGISTERS
  351. ahc_reg_print_t ahc_arg_1_print;
  352. #else
  353. #define ahc_arg_1_print(regvalue, cur_col, wrap) \
  354. ahc_print_register(NULL, 0, "ARG_1", 0x51, regvalue, cur_col, wrap)
  355. #endif
  356. #if AIC_DEBUG_REGISTERS
  357. ahc_reg_print_t ahc_arg_2_print;
  358. #else
  359. #define ahc_arg_2_print(regvalue, cur_col, wrap) \
  360. ahc_print_register(NULL, 0, "ARG_2", 0x52, regvalue, cur_col, wrap)
  361. #endif
  362. #if AIC_DEBUG_REGISTERS
  363. ahc_reg_print_t ahc_last_msg_print;
  364. #else
  365. #define ahc_last_msg_print(regvalue, cur_col, wrap) \
  366. ahc_print_register(NULL, 0, "LAST_MSG", 0x53, regvalue, cur_col, wrap)
  367. #endif
  368. #if AIC_DEBUG_REGISTERS
  369. ahc_reg_print_t ahc_scsiseq_template_print;
  370. #else
  371. #define ahc_scsiseq_template_print(regvalue, cur_col, wrap) \
  372. ahc_print_register(NULL, 0, "SCSISEQ_TEMPLATE", 0x54, regvalue, cur_col, wrap)
  373. #endif
  374. #if AIC_DEBUG_REGISTERS
  375. ahc_reg_print_t ahc_ha_274_biosglobal_print;
  376. #else
  377. #define ahc_ha_274_biosglobal_print(regvalue, cur_col, wrap) \
  378. ahc_print_register(NULL, 0, "HA_274_BIOSGLOBAL", 0x56, regvalue, cur_col, wrap)
  379. #endif
  380. #if AIC_DEBUG_REGISTERS
  381. ahc_reg_print_t ahc_seq_flags2_print;
  382. #else
  383. #define ahc_seq_flags2_print(regvalue, cur_col, wrap) \
  384. ahc_print_register(NULL, 0, "SEQ_FLAGS2", 0x57, regvalue, cur_col, wrap)
  385. #endif
  386. #if AIC_DEBUG_REGISTERS
  387. ahc_reg_print_t ahc_scsiconf_print;
  388. #else
  389. #define ahc_scsiconf_print(regvalue, cur_col, wrap) \
  390. ahc_print_register(NULL, 0, "SCSICONF", 0x5a, regvalue, cur_col, wrap)
  391. #endif
  392. #if AIC_DEBUG_REGISTERS
  393. ahc_reg_print_t ahc_intdef_print;
  394. #else
  395. #define ahc_intdef_print(regvalue, cur_col, wrap) \
  396. ahc_print_register(NULL, 0, "INTDEF", 0x5c, regvalue, cur_col, wrap)
  397. #endif
  398. #if AIC_DEBUG_REGISTERS
  399. ahc_reg_print_t ahc_hostconf_print;
  400. #else
  401. #define ahc_hostconf_print(regvalue, cur_col, wrap) \
  402. ahc_print_register(NULL, 0, "HOSTCONF", 0x5d, regvalue, cur_col, wrap)
  403. #endif
  404. #if AIC_DEBUG_REGISTERS
  405. ahc_reg_print_t ahc_ha_274_biosctrl_print;
  406. #else
  407. #define ahc_ha_274_biosctrl_print(regvalue, cur_col, wrap) \
  408. ahc_print_register(NULL, 0, "HA_274_BIOSCTRL", 0x5f, regvalue, cur_col, wrap)
  409. #endif
  410. #if AIC_DEBUG_REGISTERS
  411. ahc_reg_print_t ahc_seqctl_print;
  412. #else
  413. #define ahc_seqctl_print(regvalue, cur_col, wrap) \
  414. ahc_print_register(NULL, 0, "SEQCTL", 0x60, regvalue, cur_col, wrap)
  415. #endif
  416. #if AIC_DEBUG_REGISTERS
  417. ahc_reg_print_t ahc_seqram_print;
  418. #else
  419. #define ahc_seqram_print(regvalue, cur_col, wrap) \
  420. ahc_print_register(NULL, 0, "SEQRAM", 0x61, regvalue, cur_col, wrap)
  421. #endif
  422. #if AIC_DEBUG_REGISTERS
  423. ahc_reg_print_t ahc_seqaddr0_print;
  424. #else
  425. #define ahc_seqaddr0_print(regvalue, cur_col, wrap) \
  426. ahc_print_register(NULL, 0, "SEQADDR0", 0x62, regvalue, cur_col, wrap)
  427. #endif
  428. #if AIC_DEBUG_REGISTERS
  429. ahc_reg_print_t ahc_seqaddr1_print;
  430. #else
  431. #define ahc_seqaddr1_print(regvalue, cur_col, wrap) \
  432. ahc_print_register(NULL, 0, "SEQADDR1", 0x63, regvalue, cur_col, wrap)
  433. #endif
  434. #if AIC_DEBUG_REGISTERS
  435. ahc_reg_print_t ahc_accum_print;
  436. #else
  437. #define ahc_accum_print(regvalue, cur_col, wrap) \
  438. ahc_print_register(NULL, 0, "ACCUM", 0x64, regvalue, cur_col, wrap)
  439. #endif
  440. #if AIC_DEBUG_REGISTERS
  441. ahc_reg_print_t ahc_sindex_print;
  442. #else
  443. #define ahc_sindex_print(regvalue, cur_col, wrap) \
  444. ahc_print_register(NULL, 0, "SINDEX", 0x65, regvalue, cur_col, wrap)
  445. #endif
  446. #if AIC_DEBUG_REGISTERS
  447. ahc_reg_print_t ahc_dindex_print;
  448. #else
  449. #define ahc_dindex_print(regvalue, cur_col, wrap) \
  450. ahc_print_register(NULL, 0, "DINDEX", 0x66, regvalue, cur_col, wrap)
  451. #endif
  452. #if AIC_DEBUG_REGISTERS
  453. ahc_reg_print_t ahc_allones_print;
  454. #else
  455. #define ahc_allones_print(regvalue, cur_col, wrap) \
  456. ahc_print_register(NULL, 0, "ALLONES", 0x69, regvalue, cur_col, wrap)
  457. #endif
  458. #if AIC_DEBUG_REGISTERS
  459. ahc_reg_print_t ahc_allzeros_print;
  460. #else
  461. #define ahc_allzeros_print(regvalue, cur_col, wrap) \
  462. ahc_print_register(NULL, 0, "ALLZEROS", 0x6a, regvalue, cur_col, wrap)
  463. #endif
  464. #if AIC_DEBUG_REGISTERS
  465. ahc_reg_print_t ahc_none_print;
  466. #else
  467. #define ahc_none_print(regvalue, cur_col, wrap) \
  468. ahc_print_register(NULL, 0, "NONE", 0x6a, regvalue, cur_col, wrap)
  469. #endif
  470. #if AIC_DEBUG_REGISTERS
  471. ahc_reg_print_t ahc_flags_print;
  472. #else
  473. #define ahc_flags_print(regvalue, cur_col, wrap) \
  474. ahc_print_register(NULL, 0, "FLAGS", 0x6b, regvalue, cur_col, wrap)
  475. #endif
  476. #if AIC_DEBUG_REGISTERS
  477. ahc_reg_print_t ahc_sindir_print;
  478. #else
  479. #define ahc_sindir_print(regvalue, cur_col, wrap) \
  480. ahc_print_register(NULL, 0, "SINDIR", 0x6c, regvalue, cur_col, wrap)
  481. #endif
  482. #if AIC_DEBUG_REGISTERS
  483. ahc_reg_print_t ahc_dindir_print;
  484. #else
  485. #define ahc_dindir_print(regvalue, cur_col, wrap) \
  486. ahc_print_register(NULL, 0, "DINDIR", 0x6d, regvalue, cur_col, wrap)
  487. #endif
  488. #if AIC_DEBUG_REGISTERS
  489. ahc_reg_print_t ahc_function1_print;
  490. #else
  491. #define ahc_function1_print(regvalue, cur_col, wrap) \
  492. ahc_print_register(NULL, 0, "FUNCTION1", 0x6e, regvalue, cur_col, wrap)
  493. #endif
  494. #if AIC_DEBUG_REGISTERS
  495. ahc_reg_print_t ahc_stack_print;
  496. #else
  497. #define ahc_stack_print(regvalue, cur_col, wrap) \
  498. ahc_print_register(NULL, 0, "STACK", 0x6f, regvalue, cur_col, wrap)
  499. #endif
  500. #if AIC_DEBUG_REGISTERS
  501. ahc_reg_print_t ahc_targ_offset_print;
  502. #else
  503. #define ahc_targ_offset_print(regvalue, cur_col, wrap) \
  504. ahc_print_register(NULL, 0, "TARG_OFFSET", 0x70, regvalue, cur_col, wrap)
  505. #endif
  506. #if AIC_DEBUG_REGISTERS
  507. ahc_reg_print_t ahc_sram_base_print;
  508. #else
  509. #define ahc_sram_base_print(regvalue, cur_col, wrap) \
  510. ahc_print_register(NULL, 0, "SRAM_BASE", 0x70, regvalue, cur_col, wrap)
  511. #endif
  512. #if AIC_DEBUG_REGISTERS
  513. ahc_reg_print_t ahc_bctl_print;
  514. #else
  515. #define ahc_bctl_print(regvalue, cur_col, wrap) \
  516. ahc_print_register(NULL, 0, "BCTL", 0x84, regvalue, cur_col, wrap)
  517. #endif
  518. #if AIC_DEBUG_REGISTERS
  519. ahc_reg_print_t ahc_dscommand0_print;
  520. #else
  521. #define ahc_dscommand0_print(regvalue, cur_col, wrap) \
  522. ahc_print_register(NULL, 0, "DSCOMMAND0", 0x84, regvalue, cur_col, wrap)
  523. #endif
  524. #if AIC_DEBUG_REGISTERS
  525. ahc_reg_print_t ahc_bustime_print;
  526. #else
  527. #define ahc_bustime_print(regvalue, cur_col, wrap) \
  528. ahc_print_register(NULL, 0, "BUSTIME", 0x85, regvalue, cur_col, wrap)
  529. #endif
  530. #if AIC_DEBUG_REGISTERS
  531. ahc_reg_print_t ahc_dscommand1_print;
  532. #else
  533. #define ahc_dscommand1_print(regvalue, cur_col, wrap) \
  534. ahc_print_register(NULL, 0, "DSCOMMAND1", 0x85, regvalue, cur_col, wrap)
  535. #endif
  536. #if AIC_DEBUG_REGISTERS
  537. ahc_reg_print_t ahc_busspd_print;
  538. #else
  539. #define ahc_busspd_print(regvalue, cur_col, wrap) \
  540. ahc_print_register(NULL, 0, "BUSSPD", 0x86, regvalue, cur_col, wrap)
  541. #endif
  542. #if AIC_DEBUG_REGISTERS
  543. ahc_reg_print_t ahc_hs_mailbox_print;
  544. #else
  545. #define ahc_hs_mailbox_print(regvalue, cur_col, wrap) \
  546. ahc_print_register(NULL, 0, "HS_MAILBOX", 0x86, regvalue, cur_col, wrap)
  547. #endif
  548. #if AIC_DEBUG_REGISTERS
  549. ahc_reg_print_t ahc_dspcistatus_print;
  550. #else
  551. #define ahc_dspcistatus_print(regvalue, cur_col, wrap) \
  552. ahc_print_register(NULL, 0, "DSPCISTATUS", 0x86, regvalue, cur_col, wrap)
  553. #endif
  554. #if AIC_DEBUG_REGISTERS
  555. ahc_reg_print_t ahc_hcntrl_print;
  556. #else
  557. #define ahc_hcntrl_print(regvalue, cur_col, wrap) \
  558. ahc_print_register(NULL, 0, "HCNTRL", 0x87, regvalue, cur_col, wrap)
  559. #endif
  560. #if AIC_DEBUG_REGISTERS
  561. ahc_reg_print_t ahc_haddr_print;
  562. #else
  563. #define ahc_haddr_print(regvalue, cur_col, wrap) \
  564. ahc_print_register(NULL, 0, "HADDR", 0x88, regvalue, cur_col, wrap)
  565. #endif
  566. #if AIC_DEBUG_REGISTERS
  567. ahc_reg_print_t ahc_hcnt_print;
  568. #else
  569. #define ahc_hcnt_print(regvalue, cur_col, wrap) \
  570. ahc_print_register(NULL, 0, "HCNT", 0x8c, regvalue, cur_col, wrap)
  571. #endif
  572. #if AIC_DEBUG_REGISTERS
  573. ahc_reg_print_t ahc_scbptr_print;
  574. #else
  575. #define ahc_scbptr_print(regvalue, cur_col, wrap) \
  576. ahc_print_register(NULL, 0, "SCBPTR", 0x90, regvalue, cur_col, wrap)
  577. #endif
  578. #if AIC_DEBUG_REGISTERS
  579. ahc_reg_print_t ahc_intstat_print;
  580. #else
  581. #define ahc_intstat_print(regvalue, cur_col, wrap) \
  582. ahc_print_register(NULL, 0, "INTSTAT", 0x91, regvalue, cur_col, wrap)
  583. #endif
  584. #if AIC_DEBUG_REGISTERS
  585. ahc_reg_print_t ahc_clrint_print;
  586. #else
  587. #define ahc_clrint_print(regvalue, cur_col, wrap) \
  588. ahc_print_register(NULL, 0, "CLRINT", 0x92, regvalue, cur_col, wrap)
  589. #endif
  590. #if AIC_DEBUG_REGISTERS
  591. ahc_reg_print_t ahc_error_print;
  592. #else
  593. #define ahc_error_print(regvalue, cur_col, wrap) \
  594. ahc_print_register(NULL, 0, "ERROR", 0x92, regvalue, cur_col, wrap)
  595. #endif
  596. #if AIC_DEBUG_REGISTERS
  597. ahc_reg_print_t ahc_dfcntrl_print;
  598. #else
  599. #define ahc_dfcntrl_print(regvalue, cur_col, wrap) \
  600. ahc_print_register(NULL, 0, "DFCNTRL", 0x93, regvalue, cur_col, wrap)
  601. #endif
  602. #if AIC_DEBUG_REGISTERS
  603. ahc_reg_print_t ahc_dfstatus_print;
  604. #else
  605. #define ahc_dfstatus_print(regvalue, cur_col, wrap) \
  606. ahc_print_register(NULL, 0, "DFSTATUS", 0x94, regvalue, cur_col, wrap)
  607. #endif
  608. #if AIC_DEBUG_REGISTERS
  609. ahc_reg_print_t ahc_dfwaddr_print;
  610. #else
  611. #define ahc_dfwaddr_print(regvalue, cur_col, wrap) \
  612. ahc_print_register(NULL, 0, "DFWADDR", 0x95, regvalue, cur_col, wrap)
  613. #endif
  614. #if AIC_DEBUG_REGISTERS
  615. ahc_reg_print_t ahc_dfraddr_print;
  616. #else
  617. #define ahc_dfraddr_print(regvalue, cur_col, wrap) \
  618. ahc_print_register(NULL, 0, "DFRADDR", 0x97, regvalue, cur_col, wrap)
  619. #endif
  620. #if AIC_DEBUG_REGISTERS
  621. ahc_reg_print_t ahc_dfdat_print;
  622. #else
  623. #define ahc_dfdat_print(regvalue, cur_col, wrap) \
  624. ahc_print_register(NULL, 0, "DFDAT", 0x99, regvalue, cur_col, wrap)
  625. #endif
  626. #if AIC_DEBUG_REGISTERS
  627. ahc_reg_print_t ahc_scbcnt_print;
  628. #else
  629. #define ahc_scbcnt_print(regvalue, cur_col, wrap) \
  630. ahc_print_register(NULL, 0, "SCBCNT", 0x9a, regvalue, cur_col, wrap)
  631. #endif
  632. #if AIC_DEBUG_REGISTERS
  633. ahc_reg_print_t ahc_qinfifo_print;
  634. #else
  635. #define ahc_qinfifo_print(regvalue, cur_col, wrap) \
  636. ahc_print_register(NULL, 0, "QINFIFO", 0x9b, regvalue, cur_col, wrap)
  637. #endif
  638. #if AIC_DEBUG_REGISTERS
  639. ahc_reg_print_t ahc_qincnt_print;
  640. #else
  641. #define ahc_qincnt_print(regvalue, cur_col, wrap) \
  642. ahc_print_register(NULL, 0, "QINCNT", 0x9c, regvalue, cur_col, wrap)
  643. #endif
  644. #if AIC_DEBUG_REGISTERS
  645. ahc_reg_print_t ahc_qoutfifo_print;
  646. #else
  647. #define ahc_qoutfifo_print(regvalue, cur_col, wrap) \
  648. ahc_print_register(NULL, 0, "QOUTFIFO", 0x9d, regvalue, cur_col, wrap)
  649. #endif
  650. #if AIC_DEBUG_REGISTERS
  651. ahc_reg_print_t ahc_crccontrol1_print;
  652. #else
  653. #define ahc_crccontrol1_print(regvalue, cur_col, wrap) \
  654. ahc_print_register(NULL, 0, "CRCCONTROL1", 0x9d, regvalue, cur_col, wrap)
  655. #endif
  656. #if AIC_DEBUG_REGISTERS
  657. ahc_reg_print_t ahc_qoutcnt_print;
  658. #else
  659. #define ahc_qoutcnt_print(regvalue, cur_col, wrap) \
  660. ahc_print_register(NULL, 0, "QOUTCNT", 0x9e, regvalue, cur_col, wrap)
  661. #endif
  662. #if AIC_DEBUG_REGISTERS
  663. ahc_reg_print_t ahc_scsiphase_print;
  664. #else
  665. #define ahc_scsiphase_print(regvalue, cur_col, wrap) \
  666. ahc_print_register(NULL, 0, "SCSIPHASE", 0x9e, regvalue, cur_col, wrap)
  667. #endif
  668. #if AIC_DEBUG_REGISTERS
  669. ahc_reg_print_t ahc_sfunct_print;
  670. #else
  671. #define ahc_sfunct_print(regvalue, cur_col, wrap) \
  672. ahc_print_register(NULL, 0, "SFUNCT", 0x9f, regvalue, cur_col, wrap)
  673. #endif
  674. #if AIC_DEBUG_REGISTERS
  675. ahc_reg_print_t ahc_scb_base_print;
  676. #else
  677. #define ahc_scb_base_print(regvalue, cur_col, wrap) \
  678. ahc_print_register(NULL, 0, "SCB_BASE", 0xa0, regvalue, cur_col, wrap)
  679. #endif
  680. #if AIC_DEBUG_REGISTERS
  681. ahc_reg_print_t ahc_scb_cdb_ptr_print;
  682. #else
  683. #define ahc_scb_cdb_ptr_print(regvalue, cur_col, wrap) \
  684. ahc_print_register(NULL, 0, "SCB_CDB_PTR", 0xa0, regvalue, cur_col, wrap)
  685. #endif
  686. #if AIC_DEBUG_REGISTERS
  687. ahc_reg_print_t ahc_scb_residual_sgptr_print;
  688. #else
  689. #define ahc_scb_residual_sgptr_print(regvalue, cur_col, wrap) \
  690. ahc_print_register(NULL, 0, "SCB_RESIDUAL_SGPTR", 0xa4, regvalue, cur_col, wrap)
  691. #endif
  692. #if AIC_DEBUG_REGISTERS
  693. ahc_reg_print_t ahc_scb_scsi_status_print;
  694. #else
  695. #define ahc_scb_scsi_status_print(regvalue, cur_col, wrap) \
  696. ahc_print_register(NULL, 0, "SCB_SCSI_STATUS", 0xa8, regvalue, cur_col, wrap)
  697. #endif
  698. #if AIC_DEBUG_REGISTERS
  699. ahc_reg_print_t ahc_scb_target_phases_print;
  700. #else
  701. #define ahc_scb_target_phases_print(regvalue, cur_col, wrap) \
  702. ahc_print_register(NULL, 0, "SCB_TARGET_PHASES", 0xa9, regvalue, cur_col, wrap)
  703. #endif
  704. #if AIC_DEBUG_REGISTERS
  705. ahc_reg_print_t ahc_scb_target_data_dir_print;
  706. #else
  707. #define ahc_scb_target_data_dir_print(regvalue, cur_col, wrap) \
  708. ahc_print_register(NULL, 0, "SCB_TARGET_DATA_DIR", 0xaa, regvalue, cur_col, wrap)
  709. #endif
  710. #if AIC_DEBUG_REGISTERS
  711. ahc_reg_print_t ahc_scb_target_itag_print;
  712. #else
  713. #define ahc_scb_target_itag_print(regvalue, cur_col, wrap) \
  714. ahc_print_register(NULL, 0, "SCB_TARGET_ITAG", 0xab, regvalue, cur_col, wrap)
  715. #endif
  716. #if AIC_DEBUG_REGISTERS
  717. ahc_reg_print_t ahc_scb_dataptr_print;
  718. #else
  719. #define ahc_scb_dataptr_print(regvalue, cur_col, wrap) \
  720. ahc_print_register(NULL, 0, "SCB_DATAPTR", 0xac, regvalue, cur_col, wrap)
  721. #endif
  722. #if AIC_DEBUG_REGISTERS
  723. ahc_reg_print_t ahc_scb_datacnt_print;
  724. #else
  725. #define ahc_scb_datacnt_print(regvalue, cur_col, wrap) \
  726. ahc_print_register(NULL, 0, "SCB_DATACNT", 0xb0, regvalue, cur_col, wrap)
  727. #endif
  728. #if AIC_DEBUG_REGISTERS
  729. ahc_reg_print_t ahc_scb_sgptr_print;
  730. #else
  731. #define ahc_scb_sgptr_print(regvalue, cur_col, wrap) \
  732. ahc_print_register(NULL, 0, "SCB_SGPTR", 0xb4, regvalue, cur_col, wrap)
  733. #endif
  734. #if AIC_DEBUG_REGISTERS
  735. ahc_reg_print_t ahc_scb_control_print;
  736. #else
  737. #define ahc_scb_control_print(regvalue, cur_col, wrap) \
  738. ahc_print_register(NULL, 0, "SCB_CONTROL", 0xb8, regvalue, cur_col, wrap)
  739. #endif
  740. #if AIC_DEBUG_REGISTERS
  741. ahc_reg_print_t ahc_scb_scsiid_print;
  742. #else
  743. #define ahc_scb_scsiid_print(regvalue, cur_col, wrap) \
  744. ahc_print_register(NULL, 0, "SCB_SCSIID", 0xb9, regvalue, cur_col, wrap)
  745. #endif
  746. #if AIC_DEBUG_REGISTERS
  747. ahc_reg_print_t ahc_scb_lun_print;
  748. #else
  749. #define ahc_scb_lun_print(regvalue, cur_col, wrap) \
  750. ahc_print_register(NULL, 0, "SCB_LUN", 0xba, regvalue, cur_col, wrap)
  751. #endif
  752. #if AIC_DEBUG_REGISTERS
  753. ahc_reg_print_t ahc_scb_tag_print;
  754. #else
  755. #define ahc_scb_tag_print(regvalue, cur_col, wrap) \
  756. ahc_print_register(NULL, 0, "SCB_TAG", 0xbb, regvalue, cur_col, wrap)
  757. #endif
  758. #if AIC_DEBUG_REGISTERS
  759. ahc_reg_print_t ahc_scb_cdb_len_print;
  760. #else
  761. #define ahc_scb_cdb_len_print(regvalue, cur_col, wrap) \
  762. ahc_print_register(NULL, 0, "SCB_CDB_LEN", 0xbc, regvalue, cur_col, wrap)
  763. #endif
  764. #if AIC_DEBUG_REGISTERS
  765. ahc_reg_print_t ahc_scb_scsirate_print;
  766. #else
  767. #define ahc_scb_scsirate_print(regvalue, cur_col, wrap) \
  768. ahc_print_register(NULL, 0, "SCB_SCSIRATE", 0xbd, regvalue, cur_col, wrap)
  769. #endif
  770. #if AIC_DEBUG_REGISTERS
  771. ahc_reg_print_t ahc_scb_scsioffset_print;
  772. #else
  773. #define ahc_scb_scsioffset_print(regvalue, cur_col, wrap) \
  774. ahc_print_register(NULL, 0, "SCB_SCSIOFFSET", 0xbe, regvalue, cur_col, wrap)
  775. #endif
  776. #if AIC_DEBUG_REGISTERS
  777. ahc_reg_print_t ahc_scb_next_print;
  778. #else
  779. #define ahc_scb_next_print(regvalue, cur_col, wrap) \
  780. ahc_print_register(NULL, 0, "SCB_NEXT", 0xbf, regvalue, cur_col, wrap)
  781. #endif
  782. #if AIC_DEBUG_REGISTERS
  783. ahc_reg_print_t ahc_scb_64_spare_print;
  784. #else
  785. #define ahc_scb_64_spare_print(regvalue, cur_col, wrap) \
  786. ahc_print_register(NULL, 0, "SCB_64_SPARE", 0xc0, regvalue, cur_col, wrap)
  787. #endif
  788. #if AIC_DEBUG_REGISTERS
  789. ahc_reg_print_t ahc_seectl_2840_print;
  790. #else
  791. #define ahc_seectl_2840_print(regvalue, cur_col, wrap) \
  792. ahc_print_register(NULL, 0, "SEECTL_2840", 0xc0, regvalue, cur_col, wrap)
  793. #endif
  794. #if AIC_DEBUG_REGISTERS
  795. ahc_reg_print_t ahc_status_2840_print;
  796. #else
  797. #define ahc_status_2840_print(regvalue, cur_col, wrap) \
  798. ahc_print_register(NULL, 0, "STATUS_2840", 0xc1, regvalue, cur_col, wrap)
  799. #endif
  800. #if AIC_DEBUG_REGISTERS
  801. ahc_reg_print_t ahc_scb_64_btt_print;
  802. #else
  803. #define ahc_scb_64_btt_print(regvalue, cur_col, wrap) \
  804. ahc_print_register(NULL, 0, "SCB_64_BTT", 0xd0, regvalue, cur_col, wrap)
  805. #endif
  806. #if AIC_DEBUG_REGISTERS
  807. ahc_reg_print_t ahc_cchaddr_print;
  808. #else
  809. #define ahc_cchaddr_print(regvalue, cur_col, wrap) \
  810. ahc_print_register(NULL, 0, "CCHADDR", 0xe0, regvalue, cur_col, wrap)
  811. #endif
  812. #if AIC_DEBUG_REGISTERS
  813. ahc_reg_print_t ahc_cchcnt_print;
  814. #else
  815. #define ahc_cchcnt_print(regvalue, cur_col, wrap) \
  816. ahc_print_register(NULL, 0, "CCHCNT", 0xe8, regvalue, cur_col, wrap)
  817. #endif
  818. #if AIC_DEBUG_REGISTERS
  819. ahc_reg_print_t ahc_ccsgram_print;
  820. #else
  821. #define ahc_ccsgram_print(regvalue, cur_col, wrap) \
  822. ahc_print_register(NULL, 0, "CCSGRAM", 0xe9, regvalue, cur_col, wrap)
  823. #endif
  824. #if AIC_DEBUG_REGISTERS
  825. ahc_reg_print_t ahc_ccsgaddr_print;
  826. #else
  827. #define ahc_ccsgaddr_print(regvalue, cur_col, wrap) \
  828. ahc_print_register(NULL, 0, "CCSGADDR", 0xea, regvalue, cur_col, wrap)
  829. #endif
  830. #if AIC_DEBUG_REGISTERS
  831. ahc_reg_print_t ahc_ccsgctl_print;
  832. #else
  833. #define ahc_ccsgctl_print(regvalue, cur_col, wrap) \
  834. ahc_print_register(NULL, 0, "CCSGCTL", 0xeb, regvalue, cur_col, wrap)
  835. #endif
  836. #if AIC_DEBUG_REGISTERS
  837. ahc_reg_print_t ahc_ccscbram_print;
  838. #else
  839. #define ahc_ccscbram_print(regvalue, cur_col, wrap) \
  840. ahc_print_register(NULL, 0, "CCSCBRAM", 0xec, regvalue, cur_col, wrap)
  841. #endif
  842. #if AIC_DEBUG_REGISTERS
  843. ahc_reg_print_t ahc_ccscbaddr_print;
  844. #else
  845. #define ahc_ccscbaddr_print(regvalue, cur_col, wrap) \
  846. ahc_print_register(NULL, 0, "CCSCBADDR", 0xed, regvalue, cur_col, wrap)
  847. #endif
  848. #if AIC_DEBUG_REGISTERS
  849. ahc_reg_print_t ahc_ccscbctl_print;
  850. #else
  851. #define ahc_ccscbctl_print(regvalue, cur_col, wrap) \
  852. ahc_print_register(NULL, 0, "CCSCBCTL", 0xee, regvalue, cur_col, wrap)
  853. #endif
  854. #if AIC_DEBUG_REGISTERS
  855. ahc_reg_print_t ahc_ccscbcnt_print;
  856. #else
  857. #define ahc_ccscbcnt_print(regvalue, cur_col, wrap) \
  858. ahc_print_register(NULL, 0, "CCSCBCNT", 0xef, regvalue, cur_col, wrap)
  859. #endif
  860. #if AIC_DEBUG_REGISTERS
  861. ahc_reg_print_t ahc_scbbaddr_print;
  862. #else
  863. #define ahc_scbbaddr_print(regvalue, cur_col, wrap) \
  864. ahc_print_register(NULL, 0, "SCBBADDR", 0xf0, regvalue, cur_col, wrap)
  865. #endif
  866. #if AIC_DEBUG_REGISTERS
  867. ahc_reg_print_t ahc_ccscbptr_print;
  868. #else
  869. #define ahc_ccscbptr_print(regvalue, cur_col, wrap) \
  870. ahc_print_register(NULL, 0, "CCSCBPTR", 0xf1, regvalue, cur_col, wrap)
  871. #endif
  872. #if AIC_DEBUG_REGISTERS
  873. ahc_reg_print_t ahc_hnscb_qoff_print;
  874. #else
  875. #define ahc_hnscb_qoff_print(regvalue, cur_col, wrap) \
  876. ahc_print_register(NULL, 0, "HNSCB_QOFF", 0xf4, regvalue, cur_col, wrap)
  877. #endif
  878. #if AIC_DEBUG_REGISTERS
  879. ahc_reg_print_t ahc_snscb_qoff_print;
  880. #else
  881. #define ahc_snscb_qoff_print(regvalue, cur_col, wrap) \
  882. ahc_print_register(NULL, 0, "SNSCB_QOFF", 0xf6, regvalue, cur_col, wrap)
  883. #endif
  884. #if AIC_DEBUG_REGISTERS
  885. ahc_reg_print_t ahc_sdscb_qoff_print;
  886. #else
  887. #define ahc_sdscb_qoff_print(regvalue, cur_col, wrap) \
  888. ahc_print_register(NULL, 0, "SDSCB_QOFF", 0xf8, regvalue, cur_col, wrap)
  889. #endif
  890. #if AIC_DEBUG_REGISTERS
  891. ahc_reg_print_t ahc_qoff_ctlsta_print;
  892. #else
  893. #define ahc_qoff_ctlsta_print(regvalue, cur_col, wrap) \
  894. ahc_print_register(NULL, 0, "QOFF_CTLSTA", 0xfa, regvalue, cur_col, wrap)
  895. #endif
  896. #if AIC_DEBUG_REGISTERS
  897. ahc_reg_print_t ahc_dff_thrsh_print;
  898. #else
  899. #define ahc_dff_thrsh_print(regvalue, cur_col, wrap) \
  900. ahc_print_register(NULL, 0, "DFF_THRSH", 0xfb, regvalue, cur_col, wrap)
  901. #endif
  902. #if AIC_DEBUG_REGISTERS
  903. ahc_reg_print_t ahc_sg_cache_shadow_print;
  904. #else
  905. #define ahc_sg_cache_shadow_print(regvalue, cur_col, wrap) \
  906. ahc_print_register(NULL, 0, "SG_CACHE_SHADOW", 0xfc, regvalue, cur_col, wrap)
  907. #endif
  908. #if AIC_DEBUG_REGISTERS
  909. ahc_reg_print_t ahc_sg_cache_pre_print;
  910. #else
  911. #define ahc_sg_cache_pre_print(regvalue, cur_col, wrap) \
  912. ahc_print_register(NULL, 0, "SG_CACHE_PRE", 0xfc, regvalue, cur_col, wrap)
  913. #endif
  914. #define SCSISEQ 0x00
  915. #define TEMODE 0x80
  916. #define SCSIRSTO 0x01
  917. #define SXFRCTL0 0x01
  918. #define DFON 0x80
  919. #define DFPEXP 0x40
  920. #define FAST20 0x20
  921. #define CLRSTCNT 0x10
  922. #define SPIOEN 0x08
  923. #define SCAMEN 0x04
  924. #define CLRCHN 0x02
  925. #define SXFRCTL1 0x02
  926. #define STIMESEL 0x18
  927. #define BITBUCKET 0x80
  928. #define SWRAPEN 0x40
  929. #define ENSTIMER 0x04
  930. #define ACTNEGEN 0x02
  931. #define STPWEN 0x01
  932. #define SCSISIGO 0x03
  933. #define CDO 0x80
  934. #define IOO 0x40
  935. #define MSGO 0x20
  936. #define ATNO 0x10
  937. #define SELO 0x08
  938. #define BSYO 0x04
  939. #define REQO 0x02
  940. #define ACKO 0x01
  941. #define SCSISIGI 0x03
  942. #define P_DATAIN_DT 0x60
  943. #define P_DATAOUT_DT 0x20
  944. #define ATNI 0x10
  945. #define SELI 0x08
  946. #define BSYI 0x04
  947. #define REQI 0x02
  948. #define ACKI 0x01
  949. #define SCSIRATE 0x04
  950. #define SXFR 0x70
  951. #define SOFS 0x0f
  952. #define SXFR_ULTRA2 0x0f
  953. #define WIDEXFER 0x80
  954. #define ENABLE_CRC 0x40
  955. #define SINGLE_EDGE 0x10
  956. #define SCSIID 0x05
  957. #define SCSIOFFSET 0x05
  958. #define SOFS_ULTRA2 0x7f
  959. #define SCSIDATL 0x06
  960. #define SCSIDATH 0x07
  961. #define STCNT 0x08
  962. #define OPTIONMODE 0x08
  963. #define OPTIONMODE_DEFAULTS 0x03
  964. #define AUTORATEEN 0x80
  965. #define AUTOACKEN 0x40
  966. #define ATNMGMNTEN 0x20
  967. #define BUSFREEREV 0x10
  968. #define EXPPHASEDIS 0x08
  969. #define SCSIDATL_IMGEN 0x04
  970. #define AUTO_MSGOUT_DE 0x02
  971. #define DIS_MSGIN_DUALEDGE 0x01
  972. #define TARGCRCCNT 0x0a
  973. #define CLRSINT0 0x0b
  974. #define CLRSELDO 0x40
  975. #define CLRSELDI 0x20
  976. #define CLRSELINGO 0x10
  977. #define CLRIOERR 0x08
  978. #define CLRSWRAP 0x08
  979. #define CLRSPIORDY 0x02
  980. #define SSTAT0 0x0b
  981. #define TARGET 0x80
  982. #define SELDO 0x40
  983. #define SELDI 0x20
  984. #define SELINGO 0x10
  985. #define SWRAP 0x08
  986. #define IOERR 0x08
  987. #define SDONE 0x04
  988. #define SPIORDY 0x02
  989. #define DMADONE 0x01
  990. #define CLRSINT1 0x0c
  991. #define CLRSELTIMEO 0x80
  992. #define CLRATNO 0x40
  993. #define CLRSCSIRSTI 0x20
  994. #define CLRBUSFREE 0x08
  995. #define CLRSCSIPERR 0x04
  996. #define CLRPHASECHG 0x02
  997. #define CLRREQINIT 0x01
  998. #define SSTAT1 0x0c
  999. #define SELTO 0x80
  1000. #define ATNTARG 0x40
  1001. #define SCSIRSTI 0x20
  1002. #define PHASEMIS 0x10
  1003. #define BUSFREE 0x08
  1004. #define SCSIPERR 0x04
  1005. #define PHASECHG 0x02
  1006. #define REQINIT 0x01
  1007. #define SSTAT2 0x0d
  1008. #define SFCNT 0x1f
  1009. #define OVERRUN 0x80
  1010. #define SHVALID 0x40
  1011. #define EXP_ACTIVE 0x10
  1012. #define CRCVALERR 0x08
  1013. #define CRCENDERR 0x04
  1014. #define CRCREQERR 0x02
  1015. #define DUAL_EDGE_ERR 0x01
  1016. #define SSTAT3 0x0e
  1017. #define SCSICNT 0xf0
  1018. #define U2OFFCNT 0x7f
  1019. #define OFFCNT 0x0f
  1020. #define SCSIID_ULTRA2 0x0f
  1021. #define SIMODE0 0x10
  1022. #define ENSELDO 0x40
  1023. #define ENSELDI 0x20
  1024. #define ENSELINGO 0x10
  1025. #define ENIOERR 0x08
  1026. #define ENSWRAP 0x08
  1027. #define ENSDONE 0x04
  1028. #define ENSPIORDY 0x02
  1029. #define ENDMADONE 0x01
  1030. #define SIMODE1 0x11
  1031. #define ENSELTIMO 0x80
  1032. #define ENATNTARG 0x40
  1033. #define ENSCSIRST 0x20
  1034. #define ENPHASEMIS 0x10
  1035. #define ENBUSFREE 0x08
  1036. #define ENSCSIPERR 0x04
  1037. #define ENPHASECHG 0x02
  1038. #define ENREQINIT 0x01
  1039. #define SCSIBUSL 0x12
  1040. #define SCSIBUSH 0x13
  1041. #define SXFRCTL2 0x13
  1042. #define ASYNC_SETUP 0x07
  1043. #define AUTORSTDIS 0x10
  1044. #define CMDDMAEN 0x08
  1045. #define SHADDR 0x14
  1046. #define SELTIMER 0x18
  1047. #define TARGIDIN 0x18
  1048. #define STAGE6 0x20
  1049. #define STAGE5 0x10
  1050. #define STAGE4 0x08
  1051. #define STAGE3 0x04
  1052. #define STAGE2 0x02
  1053. #define STAGE1 0x01
  1054. #define SELID 0x19
  1055. #define SELID_MASK 0xf0
  1056. #define ONEBIT 0x08
  1057. #define SCAMCTL 0x1a
  1058. #define SCAMLVL 0x03
  1059. #define ENSCAMSELO 0x80
  1060. #define CLRSCAMSELID 0x40
  1061. #define ALTSTIM 0x20
  1062. #define DFLTTID 0x10
  1063. #define TARGID 0x1b
  1064. #define SPIOCAP 0x1b
  1065. #define SOFT1 0x80
  1066. #define SOFT0 0x40
  1067. #define SOFTCMDEN 0x20
  1068. #define EXT_BRDCTL 0x10
  1069. #define SEEPROM 0x08
  1070. #define EEPROM 0x04
  1071. #define ROM 0x02
  1072. #define SSPIOCPS 0x01
  1073. #define BRDCTL 0x1d
  1074. #define BRDDAT7 0x80
  1075. #define BRDDAT6 0x40
  1076. #define BRDDAT5 0x20
  1077. #define BRDDAT4 0x10
  1078. #define BRDSTB 0x10
  1079. #define BRDDAT3 0x08
  1080. #define BRDCS 0x08
  1081. #define BRDDAT2 0x04
  1082. #define BRDRW 0x04
  1083. #define BRDRW_ULTRA2 0x02
  1084. #define BRDCTL1 0x02
  1085. #define BRDCTL0 0x01
  1086. #define BRDSTB_ULTRA2 0x01
  1087. #define SEECTL 0x1e
  1088. #define EXTARBACK 0x80
  1089. #define EXTARBREQ 0x40
  1090. #define SEEMS 0x20
  1091. #define SEERDY 0x10
  1092. #define SEECS 0x08
  1093. #define SEECK 0x04
  1094. #define SEEDO 0x02
  1095. #define SEEDI 0x01
  1096. #define SBLKCTL 0x1f
  1097. #define DIAGLEDEN 0x80
  1098. #define DIAGLEDON 0x40
  1099. #define AUTOFLUSHDIS 0x20
  1100. #define ENAB40 0x08
  1101. #define SELBUSB 0x08
  1102. #define ENAB20 0x04
  1103. #define SELWIDE 0x02
  1104. #define XCVR 0x01
  1105. #define BUSY_TARGETS 0x20
  1106. #define TARG_SCSIRATE 0x20
  1107. #define ULTRA_ENB 0x30
  1108. #define CMDSIZE_TABLE 0x30
  1109. #define DISC_DSB 0x32
  1110. #define CMDSIZE_TABLE_TAIL 0x34
  1111. #define MWI_RESIDUAL 0x38
  1112. #define NEXT_QUEUED_SCB 0x39
  1113. #define MSG_OUT 0x3a
  1114. #define DMAPARAMS 0x3b
  1115. #define PRELOADEN 0x80
  1116. #define WIDEODD 0x40
  1117. #define SCSIEN 0x20
  1118. #define SDMAEN 0x10
  1119. #define SDMAENACK 0x10
  1120. #define HDMAEN 0x08
  1121. #define HDMAENACK 0x08
  1122. #define DIRECTION 0x04
  1123. #define FIFOFLUSH 0x02
  1124. #define FIFORESET 0x01
  1125. #define SEQ_FLAGS 0x3c
  1126. #define NOT_IDENTIFIED 0x80
  1127. #define NO_CDB_SENT 0x40
  1128. #define TARGET_CMD_IS_TAGGED 0x40
  1129. #define DPHASE 0x20
  1130. #define TARG_CMD_PENDING 0x10
  1131. #define CMDPHASE_PENDING 0x08
  1132. #define DPHASE_PENDING 0x04
  1133. #define SPHASE_PENDING 0x02
  1134. #define NO_DISCONNECT 0x01
  1135. #define SAVED_SCSIID 0x3d
  1136. #define SAVED_LUN 0x3e
  1137. #define LASTPHASE 0x3f
  1138. #define P_MESGIN 0xe0
  1139. #define PHASE_MASK 0xe0
  1140. #define P_STATUS 0xc0
  1141. #define P_MESGOUT 0xa0
  1142. #define P_COMMAND 0x80
  1143. #define P_DATAIN 0x40
  1144. #define P_BUSFREE 0x01
  1145. #define P_DATAOUT 0x00
  1146. #define CDI 0x80
  1147. #define IOI 0x40
  1148. #define MSGI 0x20
  1149. #define WAITING_SCBH 0x40
  1150. #define DISCONNECTED_SCBH 0x41
  1151. #define FREE_SCBH 0x42
  1152. #define COMPLETE_SCBH 0x43
  1153. #define HSCB_ADDR 0x44
  1154. #define SHARED_DATA_ADDR 0x48
  1155. #define KERNEL_QINPOS 0x4c
  1156. #define QINPOS 0x4d
  1157. #define QOUTPOS 0x4e
  1158. #define KERNEL_TQINPOS 0x4f
  1159. #define TQINPOS 0x50
  1160. #define ARG_1 0x51
  1161. #define RETURN_1 0x51
  1162. #define SEND_MSG 0x80
  1163. #define SEND_SENSE 0x40
  1164. #define SEND_REJ 0x20
  1165. #define MSGOUT_PHASEMIS 0x10
  1166. #define EXIT_MSG_LOOP 0x08
  1167. #define CONT_MSG_LOOP 0x04
  1168. #define CONT_TARG_SESSION 0x02
  1169. #define ARG_2 0x52
  1170. #define RETURN_2 0x52
  1171. #define LAST_MSG 0x53
  1172. #define TARG_IMMEDIATE_SCB 0x53
  1173. #define SCSISEQ_TEMPLATE 0x54
  1174. #define ENSELO 0x40
  1175. #define ENSELI 0x20
  1176. #define ENRSELI 0x10
  1177. #define ENAUTOATNO 0x08
  1178. #define ENAUTOATNI 0x04
  1179. #define ENAUTOATNP 0x02
  1180. #define HA_274_BIOSGLOBAL 0x56
  1181. #define INITIATOR_TAG 0x56
  1182. #define HA_274_EXTENDED_TRANS 0x01
  1183. #define SEQ_FLAGS2 0x57
  1184. #define TARGET_MSG_PENDING 0x02
  1185. #define SCB_DMA 0x01
  1186. #define SCSICONF 0x5a
  1187. #define HWSCSIID 0x0f
  1188. #define HSCSIID 0x07
  1189. #define TERM_ENB 0x80
  1190. #define RESET_SCSI 0x40
  1191. #define ENSPCHK 0x20
  1192. #define INTDEF 0x5c
  1193. #define VECTOR 0x0f
  1194. #define EDGE_TRIG 0x80
  1195. #define HOSTCONF 0x5d
  1196. #define HA_274_BIOSCTRL 0x5f
  1197. #define BIOSDISABLED 0x30
  1198. #define BIOSMODE 0x30
  1199. #define CHANNEL_B_PRIMARY 0x08
  1200. #define SEQCTL 0x60
  1201. #define PERRORDIS 0x80
  1202. #define PAUSEDIS 0x40
  1203. #define FAILDIS 0x20
  1204. #define FASTMODE 0x10
  1205. #define BRKADRINTEN 0x08
  1206. #define STEP 0x04
  1207. #define SEQRESET 0x02
  1208. #define LOADRAM 0x01
  1209. #define SEQRAM 0x61
  1210. #define SEQADDR0 0x62
  1211. #define SEQADDR1 0x63
  1212. #define SEQADDR1_MASK 0x01
  1213. #define ACCUM 0x64
  1214. #define SINDEX 0x65
  1215. #define DINDEX 0x66
  1216. #define ALLONES 0x69
  1217. #define ALLZEROS 0x6a
  1218. #define NONE 0x6a
  1219. #define FLAGS 0x6b
  1220. #define ZERO 0x02
  1221. #define CARRY 0x01
  1222. #define SINDIR 0x6c
  1223. #define DINDIR 0x6d
  1224. #define FUNCTION1 0x6e
  1225. #define STACK 0x6f
  1226. #define TARG_OFFSET 0x70
  1227. #define SRAM_BASE 0x70
  1228. #define BCTL 0x84
  1229. #define ACE 0x08
  1230. #define ENABLE 0x01
  1231. #define DSCOMMAND0 0x84
  1232. #define CACHETHEN 0x80
  1233. #define DPARCKEN 0x40
  1234. #define MPARCKEN 0x20
  1235. #define EXTREQLCK 0x10
  1236. #define INTSCBRAMSEL 0x08
  1237. #define RAMPS 0x04
  1238. #define USCBSIZE32 0x02
  1239. #define CIOPARCKEN 0x01
  1240. #define BUSTIME 0x85
  1241. #define BOFF 0xf0
  1242. #define BON 0x0f
  1243. #define DSCOMMAND1 0x85
  1244. #define DSLATT 0xfc
  1245. #define HADDLDSEL1 0x02
  1246. #define HADDLDSEL0 0x01
  1247. #define BUSSPD 0x86
  1248. #define DFTHRSH 0xc0
  1249. #define DFTHRSH_75 0x80
  1250. #define STBOFF 0x38
  1251. #define STBON 0x07
  1252. #define HS_MAILBOX 0x86
  1253. #define HOST_MAILBOX 0xf0
  1254. #define HOST_TQINPOS 0x80
  1255. #define SEQ_MAILBOX 0x0f
  1256. #define DSPCISTATUS 0x86
  1257. #define DFTHRSH_100 0xc0
  1258. #define HCNTRL 0x87
  1259. #define POWRDN 0x40
  1260. #define SWINT 0x10
  1261. #define IRQMS 0x08
  1262. #define PAUSE 0x04
  1263. #define INTEN 0x02
  1264. #define CHIPRST 0x01
  1265. #define CHIPRSTACK 0x01
  1266. #define HADDR 0x88
  1267. #define HCNT 0x8c
  1268. #define SCBPTR 0x90
  1269. #define INTSTAT 0x91
  1270. #define SEQINT_MASK 0xf1
  1271. #define OUT_OF_RANGE 0xe1
  1272. #define NO_FREE_SCB 0xd1
  1273. #define SCB_MISMATCH 0xc1
  1274. #define MISSED_BUSFREE 0xb1
  1275. #define MKMSG_FAILED 0xa1
  1276. #define DATA_OVERRUN 0x91
  1277. #define PERR_DETECTED 0x81
  1278. #define BAD_STATUS 0x71
  1279. #define HOST_MSG_LOOP 0x61
  1280. #define PDATA_REINIT 0x51
  1281. #define IGN_WIDE_RES 0x41
  1282. #define NO_MATCH 0x31
  1283. #define PROTO_VIOLATION 0x21
  1284. #define SEND_REJECT 0x11
  1285. #define INT_PEND 0x0f
  1286. #define BAD_PHASE 0x01
  1287. #define BRKADRINT 0x08
  1288. #define SCSIINT 0x04
  1289. #define CMDCMPLT 0x02
  1290. #define SEQINT 0x01
  1291. #define CLRINT 0x92
  1292. #define CLRPARERR 0x10
  1293. #define CLRBRKADRINT 0x08
  1294. #define CLRSCSIINT 0x04
  1295. #define CLRCMDINT 0x02
  1296. #define CLRSEQINT 0x01
  1297. #define ERROR 0x92
  1298. #define CIOPARERR 0x80
  1299. #define PCIERRSTAT 0x40
  1300. #define MPARERR 0x20
  1301. #define DPARERR 0x10
  1302. #define SQPARERR 0x08
  1303. #define ILLOPCODE 0x04
  1304. #define ILLSADDR 0x02
  1305. #define ILLHADDR 0x01
  1306. #define DFCNTRL 0x93
  1307. #define DFSTATUS 0x94
  1308. #define PRELOAD_AVAIL 0x80
  1309. #define DFCACHETH 0x40
  1310. #define FIFOQWDEMP 0x20
  1311. #define MREQPEND 0x10
  1312. #define HDONE 0x08
  1313. #define DFTHRESH 0x04
  1314. #define FIFOFULL 0x02
  1315. #define FIFOEMP 0x01
  1316. #define DFWADDR 0x95
  1317. #define DFRADDR 0x97
  1318. #define DFDAT 0x99
  1319. #define SCBCNT 0x9a
  1320. #define SCBCNT_MASK 0x1f
  1321. #define SCBAUTO 0x80
  1322. #define QINFIFO 0x9b
  1323. #define QINCNT 0x9c
  1324. #define QOUTFIFO 0x9d
  1325. #define CRCCONTROL1 0x9d
  1326. #define CRCONSEEN 0x80
  1327. #define CRCVALCHKEN 0x40
  1328. #define CRCENDCHKEN 0x20
  1329. #define CRCREQCHKEN 0x10
  1330. #define TARGCRCENDEN 0x08
  1331. #define TARGCRCCNTEN 0x04
  1332. #define QOUTCNT 0x9e
  1333. #define SCSIPHASE 0x9e
  1334. #define DATA_PHASE_MASK 0x03
  1335. #define STATUS_PHASE 0x20
  1336. #define COMMAND_PHASE 0x10
  1337. #define MSG_IN_PHASE 0x08
  1338. #define MSG_OUT_PHASE 0x04
  1339. #define DATA_IN_PHASE 0x02
  1340. #define DATA_OUT_PHASE 0x01
  1341. #define SFUNCT 0x9f
  1342. #define ALT_MODE 0x80
  1343. #define SCB_BASE 0xa0
  1344. #define SCB_CDB_PTR 0xa0
  1345. #define SCB_RESIDUAL_DATACNT 0xa0
  1346. #define SCB_CDB_STORE 0xa0
  1347. #define SCB_RESIDUAL_SGPTR 0xa4
  1348. #define SCB_SCSI_STATUS 0xa8
  1349. #define SCB_TARGET_PHASES 0xa9
  1350. #define SCB_TARGET_DATA_DIR 0xaa
  1351. #define SCB_TARGET_ITAG 0xab
  1352. #define SCB_DATAPTR 0xac
  1353. #define SCB_DATACNT 0xb0
  1354. #define SG_HIGH_ADDR_BITS 0x7f
  1355. #define SG_LAST_SEG 0x80
  1356. #define SCB_SGPTR 0xb4
  1357. #define SG_RESID_VALID 0x04
  1358. #define SG_FULL_RESID 0x02
  1359. #define SG_LIST_NULL 0x01
  1360. #define SCB_CONTROL 0xb8
  1361. #define SCB_TAG_TYPE 0x03
  1362. #define STATUS_RCVD 0x80
  1363. #define TARGET_SCB 0x80
  1364. #define DISCENB 0x40
  1365. #define TAG_ENB 0x20
  1366. #define MK_MESSAGE 0x10
  1367. #define ULTRAENB 0x08
  1368. #define DISCONNECTED 0x04
  1369. #define SCB_SCSIID 0xb9
  1370. #define TID 0xf0
  1371. #define TWIN_TID 0x70
  1372. #define OID 0x0f
  1373. #define TWIN_CHNLB 0x80
  1374. #define SCB_LUN 0xba
  1375. #define LID 0x3f
  1376. #define SCB_XFERLEN_ODD 0x80
  1377. #define SCB_TAG 0xbb
  1378. #define SCB_CDB_LEN 0xbc
  1379. #define SCB_SCSIRATE 0xbd
  1380. #define SCB_SCSIOFFSET 0xbe
  1381. #define SCB_NEXT 0xbf
  1382. #define SCB_64_SPARE 0xc0
  1383. #define SEECTL_2840 0xc0
  1384. #define CS_2840 0x04
  1385. #define CK_2840 0x02
  1386. #define DO_2840 0x01
  1387. #define STATUS_2840 0xc1
  1388. #define BIOS_SEL 0x60
  1389. #define ADSEL 0x1e
  1390. #define EEPROM_TF 0x80
  1391. #define DI_2840 0x01
  1392. #define SCB_64_BTT 0xd0
  1393. #define CCHADDR 0xe0
  1394. #define CCHCNT 0xe8
  1395. #define CCSGRAM 0xe9
  1396. #define CCSGADDR 0xea
  1397. #define CCSGCTL 0xeb
  1398. #define CCSGDONE 0x80
  1399. #define CCSGEN 0x08
  1400. #define SG_FETCH_NEEDED 0x02
  1401. #define CCSGRESET 0x01
  1402. #define CCSCBRAM 0xec
  1403. #define CCSCBADDR 0xed
  1404. #define CCSCBCTL 0xee
  1405. #define CCSCBDONE 0x80
  1406. #define ARRDONE 0x40
  1407. #define CCARREN 0x10
  1408. #define CCSCBEN 0x08
  1409. #define CCSCBDIR 0x04
  1410. #define CCSCBRESET 0x01
  1411. #define CCSCBCNT 0xef
  1412. #define SCBBADDR 0xf0
  1413. #define CCSCBPTR 0xf1
  1414. #define HNSCB_QOFF 0xf4
  1415. #define SNSCB_QOFF 0xf6
  1416. #define SDSCB_QOFF 0xf8
  1417. #define QOFF_CTLSTA 0xfa
  1418. #define SCB_QSIZE 0x07
  1419. #define SCB_QSIZE_256 0x06
  1420. #define SCB_AVAIL 0x40
  1421. #define SNSCB_ROLLOVER 0x20
  1422. #define SDSCB_ROLLOVER 0x10
  1423. #define DFF_THRSH 0xfb
  1424. #define WR_DFTHRSH 0x70
  1425. #define WR_DFTHRSH_MAX 0x70
  1426. #define WR_DFTHRSH_90 0x60
  1427. #define WR_DFTHRSH_85 0x50
  1428. #define WR_DFTHRSH_75 0x40
  1429. #define WR_DFTHRSH_63 0x30
  1430. #define WR_DFTHRSH_50 0x20
  1431. #define WR_DFTHRSH_25 0x10
  1432. #define RD_DFTHRSH 0x07
  1433. #define RD_DFTHRSH_MAX 0x07
  1434. #define RD_DFTHRSH_90 0x06
  1435. #define RD_DFTHRSH_85 0x05
  1436. #define RD_DFTHRSH_75 0x04
  1437. #define RD_DFTHRSH_63 0x03
  1438. #define RD_DFTHRSH_50 0x02
  1439. #define RD_DFTHRSH_25 0x01
  1440. #define RD_DFTHRSH_MIN 0x00
  1441. #define WR_DFTHRSH_MIN 0x00
  1442. #define SG_CACHE_SHADOW 0xfc
  1443. #define SG_ADDR_MASK 0xf8
  1444. #define LAST_SEG 0x02
  1445. #define LAST_SEG_DONE 0x01
  1446. #define SG_CACHE_PRE 0xfc
  1447. #define MAX_OFFSET_ULTRA2 0x7f
  1448. #define MAX_OFFSET_16BIT 0x08
  1449. #define BUS_8_BIT 0x00
  1450. #define TARGET_CMD_CMPLT 0xfe
  1451. #define STATUS_QUEUE_FULL 0x28
  1452. #define STATUS_BUSY 0x08
  1453. #define MAX_OFFSET_8BIT 0x0f
  1454. #define BUS_32_BIT 0x02
  1455. #define CCSGADDR_MAX 0x80
  1456. #define TID_SHIFT 0x04
  1457. #define SCB_DOWNLOAD_SIZE_64 0x30
  1458. #define HOST_MAILBOX_SHIFT 0x04
  1459. #define CMD_GROUP_CODE_SHIFT 0x05
  1460. #define CCSGRAM_MAXSEGS 0x10
  1461. #define SCB_LIST_NULL 0xff
  1462. #define SG_SIZEOF 0x08
  1463. #define SCB_DOWNLOAD_SIZE 0x20
  1464. #define SEQ_MAILBOX_SHIFT 0x00
  1465. #define TARGET_DATA_IN 0x01
  1466. #define HOST_MSG 0xff
  1467. #define MAX_OFFSET 0x7f
  1468. #define BUS_16_BIT 0x01
  1469. #define SCB_UPLOAD_SIZE 0x20
  1470. #define STACK_SIZE 0x04
  1471. /* Downloaded Constant Definitions */
  1472. #define INVERTED_CACHESIZE_MASK 0x03
  1473. #define SG_PREFETCH_ADDR_MASK 0x06
  1474. #define SG_PREFETCH_ALIGN_MASK 0x05
  1475. #define QOUTFIFO_OFFSET 0x00
  1476. #define SG_PREFETCH_CNT 0x04
  1477. #define CACHESIZE_MASK 0x02
  1478. #define QINFIFO_OFFSET 0x01
  1479. #define DOWNLOAD_CONST_COUNT 0x07
  1480. /* Exported Labels */