rom.h 283 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013
  1. //*****************************************************************************
  2. //
  3. // rom.h - Macros to facilitate calling functions in the ROM.
  4. //
  5. // Copyright (c) 2007-2011 Texas Instruments Incorporated. All rights reserved.
  6. // Software License Agreement
  7. //
  8. // Texas Instruments (TI) is supplying this software for use solely and
  9. // exclusively on TI's microcontroller products. The software is owned by
  10. // TI and/or its suppliers, and is protected under applicable copyright
  11. // laws. You may not combine this software with "viral" open-source
  12. // software in order to form a larger program.
  13. //
  14. // THIS SOFTWARE IS PROVIDED "AS IS" AND WITH ALL FAULTS.
  15. // NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT
  16. // NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  17. // A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. TI SHALL NOT, UNDER ANY
  18. // CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
  19. // DAMAGES, FOR ANY REASON WHATSOEVER.
  20. //
  21. // This is part of revision 8264 of the Stellaris Peripheral Driver Library.
  22. //
  23. //*****************************************************************************
  24. #ifndef __ROM_H__
  25. #define __ROM_H__
  26. //*****************************************************************************
  27. //
  28. // Pointers to the main API tables.
  29. //
  30. //*****************************************************************************
  31. #define ROM_APITABLE ((unsigned long *)0x01000010)
  32. #define ROM_VERSION (ROM_APITABLE[0])
  33. #define ROM_UARTTABLE ((unsigned long *)(ROM_APITABLE[1]))
  34. #define ROM_SSITABLE ((unsigned long *)(ROM_APITABLE[2]))
  35. #define ROM_I2CTABLE ((unsigned long *)(ROM_APITABLE[3]))
  36. #define ROM_GPIOTABLE ((unsigned long *)(ROM_APITABLE[4]))
  37. #define ROM_ADCTABLE ((unsigned long *)(ROM_APITABLE[5]))
  38. #define ROM_COMPARATORTABLE ((unsigned long *)(ROM_APITABLE[6]))
  39. #define ROM_FLASHTABLE ((unsigned long *)(ROM_APITABLE[7]))
  40. #define ROM_PWMTABLE ((unsigned long *)(ROM_APITABLE[8]))
  41. #define ROM_QEITABLE ((unsigned long *)(ROM_APITABLE[9]))
  42. #define ROM_SYSTICKTABLE ((unsigned long *)(ROM_APITABLE[10]))
  43. #define ROM_TIMERTABLE ((unsigned long *)(ROM_APITABLE[11]))
  44. #define ROM_WATCHDOGTABLE ((unsigned long *)(ROM_APITABLE[12]))
  45. #define ROM_SYSCTLTABLE ((unsigned long *)(ROM_APITABLE[13]))
  46. #define ROM_INTERRUPTTABLE ((unsigned long *)(ROM_APITABLE[14]))
  47. #define ROM_ETHERNETTABLE ((unsigned long *)(ROM_APITABLE[15]))
  48. #define ROM_USBTABLE ((unsigned long *)(ROM_APITABLE[16]))
  49. #define ROM_UDMATABLE ((unsigned long *)(ROM_APITABLE[17]))
  50. #define ROM_CANTABLE ((unsigned long *)(ROM_APITABLE[18]))
  51. #define ROM_HIBERNATETABLE ((unsigned long *)(ROM_APITABLE[19]))
  52. #define ROM_MPUTABLE ((unsigned long *)(ROM_APITABLE[20]))
  53. #define ROM_SOFTWARETABLE ((unsigned long *)(ROM_APITABLE[21]))
  54. #define ROM_I2STABLE ((unsigned long *)(ROM_APITABLE[22]))
  55. #define ROM_EPITABLE ((unsigned long *)(ROM_APITABLE[23]))
  56. #define ROM_FANTABLE ((unsigned long *)(ROM_APITABLE[25]))
  57. #define ROM_FPUTABLE ((unsigned long *)(ROM_APITABLE[26]))
  58. #define ROM_LPCTABLE ((unsigned long *)(ROM_APITABLE[27]))
  59. #define ROM_PECITABLE ((unsigned long *)(ROM_APITABLE[28]))
  60. #define ROM_SMBUSTABLE ((unsigned long *)(ROM_APITABLE[29]))
  61. #define ROM_SYSEXCTABLE ((unsigned long *)(ROM_APITABLE[30]))
  62. //*****************************************************************************
  63. //
  64. // Macros for calling ROM functions in the ADC API.
  65. //
  66. //*****************************************************************************
  67. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  68. defined(TARGET_IS_TEMPEST_RB1) || \
  69. defined(TARGET_IS_TEMPEST_RC1) || \
  70. defined(TARGET_IS_TEMPEST_RC3) || \
  71. defined(TARGET_IS_TEMPEST_RC5) || \
  72. defined(TARGET_IS_FIRESTORM_RA2) || \
  73. defined(TARGET_IS_BLIZZARD_RA1)
  74. #define ROM_ADCSequenceDataGet \
  75. ((long (*)(unsigned long ulBase, \
  76. unsigned long ulSequenceNum, \
  77. unsigned long *pulBuffer))ROM_ADCTABLE[0])
  78. #endif
  79. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  80. defined(TARGET_IS_TEMPEST_RB1) || \
  81. defined(TARGET_IS_TEMPEST_RC1) || \
  82. defined(TARGET_IS_TEMPEST_RC3) || \
  83. defined(TARGET_IS_TEMPEST_RC5) || \
  84. defined(TARGET_IS_FIRESTORM_RA2) || \
  85. defined(TARGET_IS_BLIZZARD_RA1)
  86. #define ROM_ADCIntDisable \
  87. ((void (*)(unsigned long ulBase, \
  88. unsigned long ulSequenceNum))ROM_ADCTABLE[1])
  89. #endif
  90. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  91. defined(TARGET_IS_TEMPEST_RB1) || \
  92. defined(TARGET_IS_TEMPEST_RC1) || \
  93. defined(TARGET_IS_TEMPEST_RC3) || \
  94. defined(TARGET_IS_TEMPEST_RC5) || \
  95. defined(TARGET_IS_FIRESTORM_RA2) || \
  96. defined(TARGET_IS_BLIZZARD_RA1)
  97. #define ROM_ADCIntEnable \
  98. ((void (*)(unsigned long ulBase, \
  99. unsigned long ulSequenceNum))ROM_ADCTABLE[2])
  100. #endif
  101. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  102. defined(TARGET_IS_TEMPEST_RB1) || \
  103. defined(TARGET_IS_TEMPEST_RC1) || \
  104. defined(TARGET_IS_TEMPEST_RC3) || \
  105. defined(TARGET_IS_TEMPEST_RC5) || \
  106. defined(TARGET_IS_FIRESTORM_RA2) || \
  107. defined(TARGET_IS_BLIZZARD_RA1)
  108. #define ROM_ADCIntStatus \
  109. ((unsigned long (*)(unsigned long ulBase, \
  110. unsigned long ulSequenceNum, \
  111. tBoolean bMasked))ROM_ADCTABLE[3])
  112. #endif
  113. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  114. defined(TARGET_IS_TEMPEST_RB1) || \
  115. defined(TARGET_IS_TEMPEST_RC1) || \
  116. defined(TARGET_IS_TEMPEST_RC3) || \
  117. defined(TARGET_IS_TEMPEST_RC5) || \
  118. defined(TARGET_IS_FIRESTORM_RA2) || \
  119. defined(TARGET_IS_BLIZZARD_RA1)
  120. #define ROM_ADCIntClear \
  121. ((void (*)(unsigned long ulBase, \
  122. unsigned long ulSequenceNum))ROM_ADCTABLE[4])
  123. #endif
  124. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  125. defined(TARGET_IS_TEMPEST_RB1) || \
  126. defined(TARGET_IS_TEMPEST_RC1) || \
  127. defined(TARGET_IS_TEMPEST_RC3) || \
  128. defined(TARGET_IS_TEMPEST_RC5) || \
  129. defined(TARGET_IS_FIRESTORM_RA2) || \
  130. defined(TARGET_IS_BLIZZARD_RA1)
  131. #define ROM_ADCSequenceEnable \
  132. ((void (*)(unsigned long ulBase, \
  133. unsigned long ulSequenceNum))ROM_ADCTABLE[5])
  134. #endif
  135. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  136. defined(TARGET_IS_TEMPEST_RB1) || \
  137. defined(TARGET_IS_TEMPEST_RC1) || \
  138. defined(TARGET_IS_TEMPEST_RC3) || \
  139. defined(TARGET_IS_TEMPEST_RC5) || \
  140. defined(TARGET_IS_FIRESTORM_RA2) || \
  141. defined(TARGET_IS_BLIZZARD_RA1)
  142. #define ROM_ADCSequenceDisable \
  143. ((void (*)(unsigned long ulBase, \
  144. unsigned long ulSequenceNum))ROM_ADCTABLE[6])
  145. #endif
  146. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  147. defined(TARGET_IS_TEMPEST_RB1) || \
  148. defined(TARGET_IS_TEMPEST_RC1) || \
  149. defined(TARGET_IS_TEMPEST_RC3) || \
  150. defined(TARGET_IS_TEMPEST_RC5) || \
  151. defined(TARGET_IS_FIRESTORM_RA2) || \
  152. defined(TARGET_IS_BLIZZARD_RA1)
  153. #define ROM_ADCSequenceConfigure \
  154. ((void (*)(unsigned long ulBase, \
  155. unsigned long ulSequenceNum, \
  156. unsigned long ulTrigger, \
  157. unsigned long ulPriority))ROM_ADCTABLE[7])
  158. #endif
  159. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  160. defined(TARGET_IS_TEMPEST_RB1) || \
  161. defined(TARGET_IS_TEMPEST_RC1) || \
  162. defined(TARGET_IS_TEMPEST_RC3) || \
  163. defined(TARGET_IS_TEMPEST_RC5) || \
  164. defined(TARGET_IS_FIRESTORM_RA2) || \
  165. defined(TARGET_IS_BLIZZARD_RA1)
  166. #define ROM_ADCSequenceStepConfigure \
  167. ((void (*)(unsigned long ulBase, \
  168. unsigned long ulSequenceNum, \
  169. unsigned long ulStep, \
  170. unsigned long ulConfig))ROM_ADCTABLE[8])
  171. #endif
  172. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  173. defined(TARGET_IS_TEMPEST_RB1) || \
  174. defined(TARGET_IS_TEMPEST_RC1) || \
  175. defined(TARGET_IS_TEMPEST_RC3) || \
  176. defined(TARGET_IS_TEMPEST_RC5) || \
  177. defined(TARGET_IS_FIRESTORM_RA2) || \
  178. defined(TARGET_IS_BLIZZARD_RA1)
  179. #define ROM_ADCSequenceOverflow \
  180. ((long (*)(unsigned long ulBase, \
  181. unsigned long ulSequenceNum))ROM_ADCTABLE[9])
  182. #endif
  183. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  184. defined(TARGET_IS_TEMPEST_RB1) || \
  185. defined(TARGET_IS_TEMPEST_RC1) || \
  186. defined(TARGET_IS_TEMPEST_RC3) || \
  187. defined(TARGET_IS_TEMPEST_RC5) || \
  188. defined(TARGET_IS_FIRESTORM_RA2) || \
  189. defined(TARGET_IS_BLIZZARD_RA1)
  190. #define ROM_ADCSequenceOverflowClear \
  191. ((void (*)(unsigned long ulBase, \
  192. unsigned long ulSequenceNum))ROM_ADCTABLE[10])
  193. #endif
  194. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  195. defined(TARGET_IS_TEMPEST_RB1) || \
  196. defined(TARGET_IS_TEMPEST_RC1) || \
  197. defined(TARGET_IS_TEMPEST_RC3) || \
  198. defined(TARGET_IS_TEMPEST_RC5) || \
  199. defined(TARGET_IS_FIRESTORM_RA2) || \
  200. defined(TARGET_IS_BLIZZARD_RA1)
  201. #define ROM_ADCSequenceUnderflow \
  202. ((long (*)(unsigned long ulBase, \
  203. unsigned long ulSequenceNum))ROM_ADCTABLE[11])
  204. #endif
  205. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  206. defined(TARGET_IS_TEMPEST_RB1) || \
  207. defined(TARGET_IS_TEMPEST_RC1) || \
  208. defined(TARGET_IS_TEMPEST_RC3) || \
  209. defined(TARGET_IS_TEMPEST_RC5) || \
  210. defined(TARGET_IS_FIRESTORM_RA2) || \
  211. defined(TARGET_IS_BLIZZARD_RA1)
  212. #define ROM_ADCSequenceUnderflowClear \
  213. ((void (*)(unsigned long ulBase, \
  214. unsigned long ulSequenceNum))ROM_ADCTABLE[12])
  215. #endif
  216. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  217. defined(TARGET_IS_TEMPEST_RB1) || \
  218. defined(TARGET_IS_TEMPEST_RC1) || \
  219. defined(TARGET_IS_TEMPEST_RC3) || \
  220. defined(TARGET_IS_TEMPEST_RC5) || \
  221. defined(TARGET_IS_FIRESTORM_RA2) || \
  222. defined(TARGET_IS_BLIZZARD_RA1)
  223. #define ROM_ADCProcessorTrigger \
  224. ((void (*)(unsigned long ulBase, \
  225. unsigned long ulSequenceNum))ROM_ADCTABLE[13])
  226. #endif
  227. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  228. defined(TARGET_IS_TEMPEST_RB1) || \
  229. defined(TARGET_IS_TEMPEST_RC1) || \
  230. defined(TARGET_IS_TEMPEST_RC3) || \
  231. defined(TARGET_IS_TEMPEST_RC5) || \
  232. defined(TARGET_IS_FIRESTORM_RA2) || \
  233. defined(TARGET_IS_BLIZZARD_RA1)
  234. #define ROM_ADCHardwareOversampleConfigure \
  235. ((void (*)(unsigned long ulBase, \
  236. unsigned long ulFactor))ROM_ADCTABLE[14])
  237. #endif
  238. #if defined(TARGET_IS_TEMPEST_RC1) || \
  239. defined(TARGET_IS_TEMPEST_RC3) || \
  240. defined(TARGET_IS_TEMPEST_RC5) || \
  241. defined(TARGET_IS_FIRESTORM_RA2) || \
  242. defined(TARGET_IS_BLIZZARD_RA1)
  243. #define ROM_ADCComparatorConfigure \
  244. ((void (*)(unsigned long ulBase, \
  245. unsigned long ulComp, \
  246. unsigned long ulConfig))ROM_ADCTABLE[15])
  247. #endif
  248. #if defined(TARGET_IS_TEMPEST_RC1) || \
  249. defined(TARGET_IS_TEMPEST_RC3) || \
  250. defined(TARGET_IS_TEMPEST_RC5) || \
  251. defined(TARGET_IS_FIRESTORM_RA2) || \
  252. defined(TARGET_IS_BLIZZARD_RA1)
  253. #define ROM_ADCComparatorRegionSet \
  254. ((void (*)(unsigned long ulBase, \
  255. unsigned long ulComp, \
  256. unsigned long ulLowRef, \
  257. unsigned long ulHighRef))ROM_ADCTABLE[16])
  258. #endif
  259. #if defined(TARGET_IS_TEMPEST_RC1) || \
  260. defined(TARGET_IS_TEMPEST_RC3) || \
  261. defined(TARGET_IS_TEMPEST_RC5) || \
  262. defined(TARGET_IS_FIRESTORM_RA2) || \
  263. defined(TARGET_IS_BLIZZARD_RA1)
  264. #define ROM_ADCComparatorReset \
  265. ((void (*)(unsigned long ulBase, \
  266. unsigned long ulComp, \
  267. tBoolean bTrigger, \
  268. tBoolean bInterrupt))ROM_ADCTABLE[17])
  269. #endif
  270. #if defined(TARGET_IS_TEMPEST_RC1) || \
  271. defined(TARGET_IS_TEMPEST_RC3) || \
  272. defined(TARGET_IS_TEMPEST_RC5) || \
  273. defined(TARGET_IS_FIRESTORM_RA2) || \
  274. defined(TARGET_IS_BLIZZARD_RA1)
  275. #define ROM_ADCComparatorIntDisable \
  276. ((void (*)(unsigned long ulBase, \
  277. unsigned long ulSequenceNum))ROM_ADCTABLE[18])
  278. #endif
  279. #if defined(TARGET_IS_TEMPEST_RC1) || \
  280. defined(TARGET_IS_TEMPEST_RC3) || \
  281. defined(TARGET_IS_TEMPEST_RC5) || \
  282. defined(TARGET_IS_FIRESTORM_RA2) || \
  283. defined(TARGET_IS_BLIZZARD_RA1)
  284. #define ROM_ADCComparatorIntEnable \
  285. ((void (*)(unsigned long ulBase, \
  286. unsigned long ulSequenceNum))ROM_ADCTABLE[19])
  287. #endif
  288. #if defined(TARGET_IS_TEMPEST_RC1) || \
  289. defined(TARGET_IS_TEMPEST_RC3) || \
  290. defined(TARGET_IS_TEMPEST_RC5) || \
  291. defined(TARGET_IS_FIRESTORM_RA2) || \
  292. defined(TARGET_IS_BLIZZARD_RA1)
  293. #define ROM_ADCComparatorIntStatus \
  294. ((unsigned long (*)(unsigned long ulBase))ROM_ADCTABLE[20])
  295. #endif
  296. #if defined(TARGET_IS_TEMPEST_RC1) || \
  297. defined(TARGET_IS_TEMPEST_RC3) || \
  298. defined(TARGET_IS_TEMPEST_RC5) || \
  299. defined(TARGET_IS_FIRESTORM_RA2) || \
  300. defined(TARGET_IS_BLIZZARD_RA1)
  301. #define ROM_ADCComparatorIntClear \
  302. ((void (*)(unsigned long ulBase, \
  303. unsigned long ulStatus))ROM_ADCTABLE[21])
  304. #endif
  305. #if defined(TARGET_IS_TEMPEST_RC3) || \
  306. defined(TARGET_IS_TEMPEST_RC5) || \
  307. defined(TARGET_IS_FIRESTORM_RA2) || \
  308. defined(TARGET_IS_BLIZZARD_RA1)
  309. #define ROM_ADCReferenceSet \
  310. ((void (*)(unsigned long ulBase, \
  311. unsigned long ulRef))ROM_ADCTABLE[22])
  312. #endif
  313. #if defined(TARGET_IS_TEMPEST_RC3) || \
  314. defined(TARGET_IS_TEMPEST_RC5) || \
  315. defined(TARGET_IS_FIRESTORM_RA2) || \
  316. defined(TARGET_IS_BLIZZARD_RA1)
  317. #define ROM_ADCReferenceGet \
  318. ((unsigned long (*)(unsigned long ulBase))ROM_ADCTABLE[23])
  319. #endif
  320. #if defined(TARGET_IS_TEMPEST_RC3) || \
  321. defined(TARGET_IS_TEMPEST_RC5) || \
  322. defined(TARGET_IS_FIRESTORM_RA2) || \
  323. defined(TARGET_IS_BLIZZARD_RA1)
  324. #define ROM_ADCPhaseDelaySet \
  325. ((void (*)(unsigned long ulBase, \
  326. unsigned long ulPhase))ROM_ADCTABLE[24])
  327. #endif
  328. #if defined(TARGET_IS_TEMPEST_RC3) || \
  329. defined(TARGET_IS_TEMPEST_RC5) || \
  330. defined(TARGET_IS_FIRESTORM_RA2) || \
  331. defined(TARGET_IS_BLIZZARD_RA1)
  332. #define ROM_ADCPhaseDelayGet \
  333. ((unsigned long (*)(unsigned long ulBase))ROM_ADCTABLE[25])
  334. #endif
  335. #if defined(TARGET_IS_FIRESTORM_RA2) || \
  336. defined(TARGET_IS_BLIZZARD_RA1)
  337. #define ROM_ADCResolutionSet \
  338. ((void (*)(unsigned long ulBase, \
  339. unsigned long ulResolution))ROM_ADCTABLE[26])
  340. #endif
  341. #if defined(TARGET_IS_FIRESTORM_RA2) || \
  342. defined(TARGET_IS_BLIZZARD_RA1)
  343. #define ROM_ADCResolutionGet \
  344. ((unsigned long (*)(unsigned long ulBase))ROM_ADCTABLE[27])
  345. #endif
  346. //*****************************************************************************
  347. //
  348. // Macros for calling ROM functions in the CAN API.
  349. //
  350. //*****************************************************************************
  351. #if defined(TARGET_IS_TEMPEST_RB1) || \
  352. defined(TARGET_IS_TEMPEST_RC1) || \
  353. defined(TARGET_IS_TEMPEST_RC3) || \
  354. defined(TARGET_IS_TEMPEST_RC5) || \
  355. defined(TARGET_IS_FIRESTORM_RA2) || \
  356. defined(TARGET_IS_BLIZZARD_RA1)
  357. #define ROM_CANIntClear \
  358. ((void (*)(unsigned long ulBase, \
  359. unsigned long ulIntClr))ROM_CANTABLE[0])
  360. #endif
  361. #if defined(TARGET_IS_TEMPEST_RB1) || \
  362. defined(TARGET_IS_TEMPEST_RC1) || \
  363. defined(TARGET_IS_TEMPEST_RC3) || \
  364. defined(TARGET_IS_TEMPEST_RC5) || \
  365. defined(TARGET_IS_FIRESTORM_RA2) || \
  366. defined(TARGET_IS_BLIZZARD_RA1)
  367. #define ROM_CANInit \
  368. ((void (*)(unsigned long ulBase))ROM_CANTABLE[1])
  369. #endif
  370. #if defined(TARGET_IS_TEMPEST_RB1) || \
  371. defined(TARGET_IS_TEMPEST_RC1) || \
  372. defined(TARGET_IS_TEMPEST_RC3) || \
  373. defined(TARGET_IS_TEMPEST_RC5) || \
  374. defined(TARGET_IS_FIRESTORM_RA2) || \
  375. defined(TARGET_IS_BLIZZARD_RA1)
  376. #define ROM_CANEnable \
  377. ((void (*)(unsigned long ulBase))ROM_CANTABLE[2])
  378. #endif
  379. #if defined(TARGET_IS_TEMPEST_RB1) || \
  380. defined(TARGET_IS_TEMPEST_RC1) || \
  381. defined(TARGET_IS_TEMPEST_RC3) || \
  382. defined(TARGET_IS_TEMPEST_RC5) || \
  383. defined(TARGET_IS_FIRESTORM_RA2) || \
  384. defined(TARGET_IS_BLIZZARD_RA1)
  385. #define ROM_CANDisable \
  386. ((void (*)(unsigned long ulBase))ROM_CANTABLE[3])
  387. #endif
  388. #if defined(TARGET_IS_TEMPEST_RB1) || \
  389. defined(TARGET_IS_TEMPEST_RC1) || \
  390. defined(TARGET_IS_TEMPEST_RC3) || \
  391. defined(TARGET_IS_TEMPEST_RC5) || \
  392. defined(TARGET_IS_FIRESTORM_RA2) || \
  393. defined(TARGET_IS_BLIZZARD_RA1)
  394. #define ROM_CANBitTimingSet \
  395. ((void (*)(unsigned long ulBase, \
  396. tCANBitClkParms *pClkParms))ROM_CANTABLE[4])
  397. #endif
  398. #if defined(TARGET_IS_TEMPEST_RB1) || \
  399. defined(TARGET_IS_TEMPEST_RC1) || \
  400. defined(TARGET_IS_TEMPEST_RC3) || \
  401. defined(TARGET_IS_TEMPEST_RC5) || \
  402. defined(TARGET_IS_FIRESTORM_RA2) || \
  403. defined(TARGET_IS_BLIZZARD_RA1)
  404. #define ROM_CANBitTimingGet \
  405. ((void (*)(unsigned long ulBase, \
  406. tCANBitClkParms *pClkParms))ROM_CANTABLE[5])
  407. #endif
  408. #if defined(TARGET_IS_TEMPEST_RB1) || \
  409. defined(TARGET_IS_TEMPEST_RC1) || \
  410. defined(TARGET_IS_TEMPEST_RC3) || \
  411. defined(TARGET_IS_TEMPEST_RC5) || \
  412. defined(TARGET_IS_FIRESTORM_RA2) || \
  413. defined(TARGET_IS_BLIZZARD_RA1)
  414. #define ROM_CANMessageSet \
  415. ((void (*)(unsigned long ulBase, \
  416. unsigned long ulObjID, \
  417. tCANMsgObject *pMsgObject, \
  418. tMsgObjType eMsgType))ROM_CANTABLE[6])
  419. #endif
  420. #if defined(TARGET_IS_TEMPEST_RB1) || \
  421. defined(TARGET_IS_TEMPEST_RC1) || \
  422. defined(TARGET_IS_TEMPEST_RC3) || \
  423. defined(TARGET_IS_TEMPEST_RC5) || \
  424. defined(TARGET_IS_FIRESTORM_RA2) || \
  425. defined(TARGET_IS_BLIZZARD_RA1)
  426. #define ROM_CANMessageGet \
  427. ((void (*)(unsigned long ulBase, \
  428. unsigned long ulObjID, \
  429. tCANMsgObject *pMsgObject, \
  430. tBoolean bClrPendingInt))ROM_CANTABLE[7])
  431. #endif
  432. #if defined(TARGET_IS_TEMPEST_RB1) || \
  433. defined(TARGET_IS_TEMPEST_RC1) || \
  434. defined(TARGET_IS_TEMPEST_RC3) || \
  435. defined(TARGET_IS_TEMPEST_RC5) || \
  436. defined(TARGET_IS_FIRESTORM_RA2) || \
  437. defined(TARGET_IS_BLIZZARD_RA1)
  438. #define ROM_CANStatusGet \
  439. ((unsigned long (*)(unsigned long ulBase, \
  440. tCANStsReg eStatusReg))ROM_CANTABLE[8])
  441. #endif
  442. #if defined(TARGET_IS_TEMPEST_RB1) || \
  443. defined(TARGET_IS_TEMPEST_RC1) || \
  444. defined(TARGET_IS_TEMPEST_RC3) || \
  445. defined(TARGET_IS_TEMPEST_RC5) || \
  446. defined(TARGET_IS_FIRESTORM_RA2) || \
  447. defined(TARGET_IS_BLIZZARD_RA1)
  448. #define ROM_CANMessageClear \
  449. ((void (*)(unsigned long ulBase, \
  450. unsigned long ulObjID))ROM_CANTABLE[9])
  451. #endif
  452. #if defined(TARGET_IS_TEMPEST_RB1) || \
  453. defined(TARGET_IS_TEMPEST_RC1) || \
  454. defined(TARGET_IS_TEMPEST_RC3) || \
  455. defined(TARGET_IS_TEMPEST_RC5) || \
  456. defined(TARGET_IS_FIRESTORM_RA2) || \
  457. defined(TARGET_IS_BLIZZARD_RA1)
  458. #define ROM_CANIntEnable \
  459. ((void (*)(unsigned long ulBase, \
  460. unsigned long ulIntFlags))ROM_CANTABLE[10])
  461. #endif
  462. #if defined(TARGET_IS_TEMPEST_RB1) || \
  463. defined(TARGET_IS_TEMPEST_RC1) || \
  464. defined(TARGET_IS_TEMPEST_RC3) || \
  465. defined(TARGET_IS_TEMPEST_RC5) || \
  466. defined(TARGET_IS_FIRESTORM_RA2) || \
  467. defined(TARGET_IS_BLIZZARD_RA1)
  468. #define ROM_CANIntDisable \
  469. ((void (*)(unsigned long ulBase, \
  470. unsigned long ulIntFlags))ROM_CANTABLE[11])
  471. #endif
  472. #if defined(TARGET_IS_TEMPEST_RB1) || \
  473. defined(TARGET_IS_TEMPEST_RC1) || \
  474. defined(TARGET_IS_TEMPEST_RC3) || \
  475. defined(TARGET_IS_TEMPEST_RC5) || \
  476. defined(TARGET_IS_FIRESTORM_RA2) || \
  477. defined(TARGET_IS_BLIZZARD_RA1)
  478. #define ROM_CANIntStatus \
  479. ((unsigned long (*)(unsigned long ulBase, \
  480. tCANIntStsReg eIntStsReg))ROM_CANTABLE[12])
  481. #endif
  482. #if defined(TARGET_IS_TEMPEST_RB1) || \
  483. defined(TARGET_IS_TEMPEST_RC1) || \
  484. defined(TARGET_IS_TEMPEST_RC3) || \
  485. defined(TARGET_IS_TEMPEST_RC5) || \
  486. defined(TARGET_IS_FIRESTORM_RA2) || \
  487. defined(TARGET_IS_BLIZZARD_RA1)
  488. #define ROM_CANRetryGet \
  489. ((tBoolean (*)(unsigned long ulBase))ROM_CANTABLE[13])
  490. #endif
  491. #if defined(TARGET_IS_TEMPEST_RB1) || \
  492. defined(TARGET_IS_TEMPEST_RC1) || \
  493. defined(TARGET_IS_TEMPEST_RC3) || \
  494. defined(TARGET_IS_TEMPEST_RC5) || \
  495. defined(TARGET_IS_FIRESTORM_RA2) || \
  496. defined(TARGET_IS_BLIZZARD_RA1)
  497. #define ROM_CANRetrySet \
  498. ((void (*)(unsigned long ulBase, \
  499. tBoolean bAutoRetry))ROM_CANTABLE[14])
  500. #endif
  501. #if defined(TARGET_IS_TEMPEST_RB1) || \
  502. defined(TARGET_IS_TEMPEST_RC1) || \
  503. defined(TARGET_IS_TEMPEST_RC3) || \
  504. defined(TARGET_IS_TEMPEST_RC5) || \
  505. defined(TARGET_IS_FIRESTORM_RA2) || \
  506. defined(TARGET_IS_BLIZZARD_RA1)
  507. #define ROM_CANErrCntrGet \
  508. ((tBoolean (*)(unsigned long ulBase, \
  509. unsigned long *pulRxCount, \
  510. unsigned long *pulTxCount))ROM_CANTABLE[15])
  511. #endif
  512. #if defined(TARGET_IS_TEMPEST_RC1) || \
  513. defined(TARGET_IS_TEMPEST_RC3) || \
  514. defined(TARGET_IS_TEMPEST_RC5) || \
  515. defined(TARGET_IS_FIRESTORM_RA2) || \
  516. defined(TARGET_IS_BLIZZARD_RA1)
  517. #define ROM_CANBitRateSet \
  518. ((unsigned long (*)(unsigned long ulBase, \
  519. unsigned long ulSourceClock, \
  520. unsigned long ulBitRate))ROM_CANTABLE[16])
  521. #endif
  522. //*****************************************************************************
  523. //
  524. // Macros for calling ROM functions in the Comparator API.
  525. //
  526. //*****************************************************************************
  527. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  528. defined(TARGET_IS_TEMPEST_RB1) || \
  529. defined(TARGET_IS_TEMPEST_RC1) || \
  530. defined(TARGET_IS_TEMPEST_RC3) || \
  531. defined(TARGET_IS_TEMPEST_RC5) || \
  532. defined(TARGET_IS_FIRESTORM_RA2) || \
  533. defined(TARGET_IS_BLIZZARD_RA1)
  534. #define ROM_ComparatorIntClear \
  535. ((void (*)(unsigned long ulBase, \
  536. unsigned long ulComp))ROM_COMPARATORTABLE[0])
  537. #endif
  538. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  539. defined(TARGET_IS_TEMPEST_RB1) || \
  540. defined(TARGET_IS_TEMPEST_RC1) || \
  541. defined(TARGET_IS_TEMPEST_RC3) || \
  542. defined(TARGET_IS_TEMPEST_RC5) || \
  543. defined(TARGET_IS_FIRESTORM_RA2) || \
  544. defined(TARGET_IS_BLIZZARD_RA1)
  545. #define ROM_ComparatorConfigure \
  546. ((void (*)(unsigned long ulBase, \
  547. unsigned long ulComp, \
  548. unsigned long ulConfig))ROM_COMPARATORTABLE[1])
  549. #endif
  550. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  551. defined(TARGET_IS_TEMPEST_RB1) || \
  552. defined(TARGET_IS_TEMPEST_RC1) || \
  553. defined(TARGET_IS_TEMPEST_RC3) || \
  554. defined(TARGET_IS_TEMPEST_RC5) || \
  555. defined(TARGET_IS_FIRESTORM_RA2) || \
  556. defined(TARGET_IS_BLIZZARD_RA1)
  557. #define ROM_ComparatorRefSet \
  558. ((void (*)(unsigned long ulBase, \
  559. unsigned long ulRef))ROM_COMPARATORTABLE[2])
  560. #endif
  561. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  562. defined(TARGET_IS_TEMPEST_RB1) || \
  563. defined(TARGET_IS_TEMPEST_RC1) || \
  564. defined(TARGET_IS_TEMPEST_RC3) || \
  565. defined(TARGET_IS_TEMPEST_RC5) || \
  566. defined(TARGET_IS_FIRESTORM_RA2) || \
  567. defined(TARGET_IS_BLIZZARD_RA1)
  568. #define ROM_ComparatorValueGet \
  569. ((tBoolean (*)(unsigned long ulBase, \
  570. unsigned long ulComp))ROM_COMPARATORTABLE[3])
  571. #endif
  572. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  573. defined(TARGET_IS_TEMPEST_RB1) || \
  574. defined(TARGET_IS_TEMPEST_RC1) || \
  575. defined(TARGET_IS_TEMPEST_RC3) || \
  576. defined(TARGET_IS_TEMPEST_RC5) || \
  577. defined(TARGET_IS_FIRESTORM_RA2) || \
  578. defined(TARGET_IS_BLIZZARD_RA1)
  579. #define ROM_ComparatorIntEnable \
  580. ((void (*)(unsigned long ulBase, \
  581. unsigned long ulComp))ROM_COMPARATORTABLE[4])
  582. #endif
  583. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  584. defined(TARGET_IS_TEMPEST_RB1) || \
  585. defined(TARGET_IS_TEMPEST_RC1) || \
  586. defined(TARGET_IS_TEMPEST_RC3) || \
  587. defined(TARGET_IS_TEMPEST_RC5) || \
  588. defined(TARGET_IS_FIRESTORM_RA2) || \
  589. defined(TARGET_IS_BLIZZARD_RA1)
  590. #define ROM_ComparatorIntDisable \
  591. ((void (*)(unsigned long ulBase, \
  592. unsigned long ulComp))ROM_COMPARATORTABLE[5])
  593. #endif
  594. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  595. defined(TARGET_IS_TEMPEST_RB1) || \
  596. defined(TARGET_IS_TEMPEST_RC1) || \
  597. defined(TARGET_IS_TEMPEST_RC3) || \
  598. defined(TARGET_IS_TEMPEST_RC5) || \
  599. defined(TARGET_IS_FIRESTORM_RA2) || \
  600. defined(TARGET_IS_BLIZZARD_RA1)
  601. #define ROM_ComparatorIntStatus \
  602. ((tBoolean (*)(unsigned long ulBase, \
  603. unsigned long ulComp, \
  604. tBoolean bMasked))ROM_COMPARATORTABLE[6])
  605. #endif
  606. //*****************************************************************************
  607. //
  608. // Macros for calling ROM functions in the EPI API.
  609. //
  610. //*****************************************************************************
  611. #if defined(TARGET_IS_TEMPEST_RC1) || \
  612. defined(TARGET_IS_TEMPEST_RC3) || \
  613. defined(TARGET_IS_TEMPEST_RC5) || \
  614. defined(TARGET_IS_FIRESTORM_RA2)
  615. #define ROM_EPIIntStatus \
  616. ((unsigned long (*)(unsigned long ulBase, \
  617. tBoolean bMasked))ROM_EPITABLE[0])
  618. #endif
  619. #if defined(TARGET_IS_TEMPEST_RC1) || \
  620. defined(TARGET_IS_TEMPEST_RC3) || \
  621. defined(TARGET_IS_TEMPEST_RC5) || \
  622. defined(TARGET_IS_FIRESTORM_RA2)
  623. #define ROM_EPIModeSet \
  624. ((void (*)(unsigned long ulBase, \
  625. unsigned long ulMode))ROM_EPITABLE[1])
  626. #endif
  627. #if defined(TARGET_IS_TEMPEST_RC1) || \
  628. defined(TARGET_IS_TEMPEST_RC3) || \
  629. defined(TARGET_IS_TEMPEST_RC5) || \
  630. defined(TARGET_IS_FIRESTORM_RA2)
  631. #define ROM_EPIDividerSet \
  632. ((void (*)(unsigned long ulBase, \
  633. unsigned long ulDivider))ROM_EPITABLE[2])
  634. #endif
  635. #if defined(TARGET_IS_TEMPEST_RC1) || \
  636. defined(TARGET_IS_TEMPEST_RC3) || \
  637. defined(TARGET_IS_TEMPEST_RC5) || \
  638. defined(TARGET_IS_FIRESTORM_RA2)
  639. #define ROM_EPIConfigSDRAMSet \
  640. ((void (*)(unsigned long ulBase, \
  641. unsigned long ulConfig, \
  642. unsigned long ulRefresh))ROM_EPITABLE[3])
  643. #endif
  644. #if defined(TARGET_IS_TEMPEST_RC1) || \
  645. defined(TARGET_IS_TEMPEST_RC3) || \
  646. defined(TARGET_IS_TEMPEST_RC5) || \
  647. defined(TARGET_IS_FIRESTORM_RA2)
  648. #define ROM_EPIConfigGPModeSet \
  649. ((void (*)(unsigned long ulBase, \
  650. unsigned long ulConfig, \
  651. unsigned long ulFrameCount, \
  652. unsigned long ulMaxWait))ROM_EPITABLE[4])
  653. #endif
  654. #if defined(TARGET_IS_TEMPEST_RC1) || \
  655. defined(TARGET_IS_TEMPEST_RC3) || \
  656. defined(TARGET_IS_TEMPEST_RC5) || \
  657. defined(TARGET_IS_FIRESTORM_RA2)
  658. #define ROM_EPIConfigHB8Set \
  659. ((void (*)(unsigned long ulBase, \
  660. unsigned long ulConfig, \
  661. unsigned long ulMaxWait))ROM_EPITABLE[5])
  662. #endif
  663. #if defined(TARGET_IS_TEMPEST_RC1) || \
  664. defined(TARGET_IS_TEMPEST_RC3) || \
  665. defined(TARGET_IS_TEMPEST_RC5) || \
  666. defined(TARGET_IS_FIRESTORM_RA2)
  667. #define ROM_EPIConfigHB16Set \
  668. ((void (*)(unsigned long ulBase, \
  669. unsigned long ulConfig, \
  670. unsigned long ulMaxWait))ROM_EPITABLE[6])
  671. #endif
  672. #if defined(TARGET_IS_TEMPEST_RC1) || \
  673. defined(TARGET_IS_TEMPEST_RC3) || \
  674. defined(TARGET_IS_TEMPEST_RC5) || \
  675. defined(TARGET_IS_FIRESTORM_RA2)
  676. #define ROM_EPIAddressMapSet \
  677. ((void (*)(unsigned long ulBase, \
  678. unsigned long ulMap))ROM_EPITABLE[7])
  679. #endif
  680. #if defined(TARGET_IS_TEMPEST_RC1) || \
  681. defined(TARGET_IS_TEMPEST_RC3) || \
  682. defined(TARGET_IS_TEMPEST_RC5) || \
  683. defined(TARGET_IS_FIRESTORM_RA2)
  684. #define ROM_EPINonBlockingReadConfigure \
  685. ((void (*)(unsigned long ulBase, \
  686. unsigned long ulChannel, \
  687. unsigned long ulDataSize, \
  688. unsigned long ulAddress))ROM_EPITABLE[8])
  689. #endif
  690. #if defined(TARGET_IS_TEMPEST_RC1) || \
  691. defined(TARGET_IS_TEMPEST_RC3) || \
  692. defined(TARGET_IS_TEMPEST_RC5) || \
  693. defined(TARGET_IS_FIRESTORM_RA2)
  694. #define ROM_EPINonBlockingReadStart \
  695. ((void (*)(unsigned long ulBase, \
  696. unsigned long ulChannel, \
  697. unsigned long ulCount))ROM_EPITABLE[9])
  698. #endif
  699. #if defined(TARGET_IS_TEMPEST_RC1) || \
  700. defined(TARGET_IS_TEMPEST_RC3) || \
  701. defined(TARGET_IS_TEMPEST_RC5) || \
  702. defined(TARGET_IS_FIRESTORM_RA2)
  703. #define ROM_EPINonBlockingReadStop \
  704. ((void (*)(unsigned long ulBase, \
  705. unsigned long ulChannel))ROM_EPITABLE[10])
  706. #endif
  707. #if defined(TARGET_IS_TEMPEST_RC1) || \
  708. defined(TARGET_IS_TEMPEST_RC3) || \
  709. defined(TARGET_IS_TEMPEST_RC5) || \
  710. defined(TARGET_IS_FIRESTORM_RA2)
  711. #define ROM_EPINonBlockingReadCount \
  712. ((unsigned long (*)(unsigned long ulBase, \
  713. unsigned long ulChannel))ROM_EPITABLE[11])
  714. #endif
  715. #if defined(TARGET_IS_TEMPEST_RC1) || \
  716. defined(TARGET_IS_TEMPEST_RC3) || \
  717. defined(TARGET_IS_TEMPEST_RC5) || \
  718. defined(TARGET_IS_FIRESTORM_RA2)
  719. #define ROM_EPINonBlockingReadAvail \
  720. ((unsigned long (*)(unsigned long ulBase))ROM_EPITABLE[12])
  721. #endif
  722. #if defined(TARGET_IS_TEMPEST_RC1) || \
  723. defined(TARGET_IS_TEMPEST_RC3) || \
  724. defined(TARGET_IS_TEMPEST_RC5) || \
  725. defined(TARGET_IS_FIRESTORM_RA2)
  726. #define ROM_EPINonBlockingReadGet32 \
  727. ((unsigned long (*)(unsigned long ulBase, \
  728. unsigned long ulCount, \
  729. unsigned long *pulBuf))ROM_EPITABLE[13])
  730. #endif
  731. #if defined(TARGET_IS_TEMPEST_RC1) || \
  732. defined(TARGET_IS_TEMPEST_RC3) || \
  733. defined(TARGET_IS_TEMPEST_RC5) || \
  734. defined(TARGET_IS_FIRESTORM_RA2)
  735. #define ROM_EPINonBlockingReadGet16 \
  736. ((unsigned long (*)(unsigned long ulBase, \
  737. unsigned long ulCount, \
  738. unsigned short *pusBuf))ROM_EPITABLE[14])
  739. #endif
  740. #if defined(TARGET_IS_TEMPEST_RC1) || \
  741. defined(TARGET_IS_TEMPEST_RC3) || \
  742. defined(TARGET_IS_TEMPEST_RC5) || \
  743. defined(TARGET_IS_FIRESTORM_RA2)
  744. #define ROM_EPINonBlockingReadGet8 \
  745. ((unsigned long (*)(unsigned long ulBase, \
  746. unsigned long ulCount, \
  747. unsigned char *pucBuf))ROM_EPITABLE[15])
  748. #endif
  749. #if defined(TARGET_IS_TEMPEST_RC1) || \
  750. defined(TARGET_IS_TEMPEST_RC3) || \
  751. defined(TARGET_IS_TEMPEST_RC5) || \
  752. defined(TARGET_IS_FIRESTORM_RA2)
  753. #define ROM_EPIFIFOConfig \
  754. ((void (*)(unsigned long ulBase, \
  755. unsigned long ulConfig))ROM_EPITABLE[16])
  756. #endif
  757. #if defined(TARGET_IS_TEMPEST_RC1) || \
  758. defined(TARGET_IS_TEMPEST_RC3) || \
  759. defined(TARGET_IS_TEMPEST_RC5) || \
  760. defined(TARGET_IS_FIRESTORM_RA2)
  761. #define ROM_EPIWriteFIFOCountGet \
  762. ((unsigned long (*)(unsigned long ulBase))ROM_EPITABLE[17])
  763. #endif
  764. #if defined(TARGET_IS_TEMPEST_RC1) || \
  765. defined(TARGET_IS_TEMPEST_RC3) || \
  766. defined(TARGET_IS_TEMPEST_RC5) || \
  767. defined(TARGET_IS_FIRESTORM_RA2)
  768. #define ROM_EPIIntEnable \
  769. ((void (*)(unsigned long ulBase, \
  770. unsigned long ulIntFlags))ROM_EPITABLE[18])
  771. #endif
  772. #if defined(TARGET_IS_TEMPEST_RC1) || \
  773. defined(TARGET_IS_TEMPEST_RC3) || \
  774. defined(TARGET_IS_TEMPEST_RC5) || \
  775. defined(TARGET_IS_FIRESTORM_RA2)
  776. #define ROM_EPIIntDisable \
  777. ((void (*)(unsigned long ulBase, \
  778. unsigned long ulIntFlags))ROM_EPITABLE[19])
  779. #endif
  780. #if defined(TARGET_IS_TEMPEST_RC1) || \
  781. defined(TARGET_IS_TEMPEST_RC3) || \
  782. defined(TARGET_IS_TEMPEST_RC5) || \
  783. defined(TARGET_IS_FIRESTORM_RA2)
  784. #define ROM_EPIIntErrorStatus \
  785. ((unsigned long (*)(unsigned long ulBase))ROM_EPITABLE[20])
  786. #endif
  787. #if defined(TARGET_IS_TEMPEST_RC1) || \
  788. defined(TARGET_IS_TEMPEST_RC3) || \
  789. defined(TARGET_IS_TEMPEST_RC5) || \
  790. defined(TARGET_IS_FIRESTORM_RA2)
  791. #define ROM_EPIIntErrorClear \
  792. ((void (*)(unsigned long ulBase, \
  793. unsigned long ulErrFlags))ROM_EPITABLE[21])
  794. #endif
  795. //*****************************************************************************
  796. //
  797. // Macros for calling ROM functions in the Ethernet API.
  798. //
  799. //*****************************************************************************
  800. #if defined(TARGET_IS_TEMPEST_RB1) || \
  801. defined(TARGET_IS_TEMPEST_RC1) || \
  802. defined(TARGET_IS_TEMPEST_RC3) || \
  803. defined(TARGET_IS_TEMPEST_RC5) || \
  804. defined(TARGET_IS_FIRESTORM_RA2)
  805. #define ROM_EthernetIntClear \
  806. ((void (*)(unsigned long ulBase, \
  807. unsigned long ulIntFlags))ROM_ETHERNETTABLE[0])
  808. #endif
  809. #if defined(TARGET_IS_TEMPEST_RB1) || \
  810. defined(TARGET_IS_TEMPEST_RC1) || \
  811. defined(TARGET_IS_TEMPEST_RC3) || \
  812. defined(TARGET_IS_TEMPEST_RC5) || \
  813. defined(TARGET_IS_FIRESTORM_RA2)
  814. #define ROM_EthernetInitExpClk \
  815. ((void (*)(unsigned long ulBase, \
  816. unsigned long ulEthClk))ROM_ETHERNETTABLE[1])
  817. #endif
  818. #if defined(TARGET_IS_TEMPEST_RB1) || \
  819. defined(TARGET_IS_TEMPEST_RC1) || \
  820. defined(TARGET_IS_TEMPEST_RC3) || \
  821. defined(TARGET_IS_TEMPEST_RC5) || \
  822. defined(TARGET_IS_FIRESTORM_RA2)
  823. #define ROM_EthernetConfigSet \
  824. ((void (*)(unsigned long ulBase, \
  825. unsigned long ulConfig))ROM_ETHERNETTABLE[2])
  826. #endif
  827. #if defined(TARGET_IS_TEMPEST_RB1) || \
  828. defined(TARGET_IS_TEMPEST_RC1) || \
  829. defined(TARGET_IS_TEMPEST_RC3) || \
  830. defined(TARGET_IS_TEMPEST_RC5) || \
  831. defined(TARGET_IS_FIRESTORM_RA2)
  832. #define ROM_EthernetConfigGet \
  833. ((unsigned long (*)(unsigned long ulBase))ROM_ETHERNETTABLE[3])
  834. #endif
  835. #if defined(TARGET_IS_TEMPEST_RB1) || \
  836. defined(TARGET_IS_TEMPEST_RC1) || \
  837. defined(TARGET_IS_TEMPEST_RC3) || \
  838. defined(TARGET_IS_TEMPEST_RC5) || \
  839. defined(TARGET_IS_FIRESTORM_RA2)
  840. #define ROM_EthernetMACAddrSet \
  841. ((void (*)(unsigned long ulBase, \
  842. unsigned char *pucMACAddr))ROM_ETHERNETTABLE[4])
  843. #endif
  844. #if defined(TARGET_IS_TEMPEST_RB1) || \
  845. defined(TARGET_IS_TEMPEST_RC1) || \
  846. defined(TARGET_IS_TEMPEST_RC3) || \
  847. defined(TARGET_IS_TEMPEST_RC5) || \
  848. defined(TARGET_IS_FIRESTORM_RA2)
  849. #define ROM_EthernetMACAddrGet \
  850. ((void (*)(unsigned long ulBase, \
  851. unsigned char *pucMACAddr))ROM_ETHERNETTABLE[5])
  852. #endif
  853. #if defined(TARGET_IS_TEMPEST_RB1) || \
  854. defined(TARGET_IS_TEMPEST_RC1) || \
  855. defined(TARGET_IS_TEMPEST_RC3) || \
  856. defined(TARGET_IS_TEMPEST_RC5) || \
  857. defined(TARGET_IS_FIRESTORM_RA2)
  858. #define ROM_EthernetEnable \
  859. ((void (*)(unsigned long ulBase))ROM_ETHERNETTABLE[6])
  860. #endif
  861. #if defined(TARGET_IS_TEMPEST_RB1) || \
  862. defined(TARGET_IS_TEMPEST_RC1) || \
  863. defined(TARGET_IS_TEMPEST_RC3) || \
  864. defined(TARGET_IS_TEMPEST_RC5) || \
  865. defined(TARGET_IS_FIRESTORM_RA2)
  866. #define ROM_EthernetDisable \
  867. ((void (*)(unsigned long ulBase))ROM_ETHERNETTABLE[7])
  868. #endif
  869. #if defined(TARGET_IS_TEMPEST_RB1) || \
  870. defined(TARGET_IS_TEMPEST_RC1) || \
  871. defined(TARGET_IS_TEMPEST_RC3) || \
  872. defined(TARGET_IS_TEMPEST_RC5) || \
  873. defined(TARGET_IS_FIRESTORM_RA2)
  874. #define ROM_EthernetPacketAvail \
  875. ((tBoolean (*)(unsigned long ulBase))ROM_ETHERNETTABLE[8])
  876. #endif
  877. #if defined(TARGET_IS_TEMPEST_RB1) || \
  878. defined(TARGET_IS_TEMPEST_RC1) || \
  879. defined(TARGET_IS_TEMPEST_RC3) || \
  880. defined(TARGET_IS_TEMPEST_RC5) || \
  881. defined(TARGET_IS_FIRESTORM_RA2)
  882. #define ROM_EthernetSpaceAvail \
  883. ((tBoolean (*)(unsigned long ulBase))ROM_ETHERNETTABLE[9])
  884. #endif
  885. #if defined(TARGET_IS_TEMPEST_RB1) || \
  886. defined(TARGET_IS_TEMPEST_RC1) || \
  887. defined(TARGET_IS_TEMPEST_RC3) || \
  888. defined(TARGET_IS_TEMPEST_RC5) || \
  889. defined(TARGET_IS_FIRESTORM_RA2)
  890. #define ROM_EthernetPacketGetNonBlocking \
  891. ((long (*)(unsigned long ulBase, \
  892. unsigned char *pucBuf, \
  893. long lBufLen))ROM_ETHERNETTABLE[10])
  894. #endif
  895. #if defined(TARGET_IS_TEMPEST_RB1) || \
  896. defined(TARGET_IS_TEMPEST_RC1) || \
  897. defined(TARGET_IS_TEMPEST_RC3) || \
  898. defined(TARGET_IS_TEMPEST_RC5) || \
  899. defined(TARGET_IS_FIRESTORM_RA2)
  900. #define ROM_EthernetPacketGet \
  901. ((long (*)(unsigned long ulBase, \
  902. unsigned char *pucBuf, \
  903. long lBufLen))ROM_ETHERNETTABLE[11])
  904. #endif
  905. #if defined(TARGET_IS_TEMPEST_RB1) || \
  906. defined(TARGET_IS_TEMPEST_RC1) || \
  907. defined(TARGET_IS_TEMPEST_RC3) || \
  908. defined(TARGET_IS_TEMPEST_RC5) || \
  909. defined(TARGET_IS_FIRESTORM_RA2)
  910. #define ROM_EthernetPacketPutNonBlocking \
  911. ((long (*)(unsigned long ulBase, \
  912. unsigned char *pucBuf, \
  913. long lBufLen))ROM_ETHERNETTABLE[12])
  914. #endif
  915. #if defined(TARGET_IS_TEMPEST_RB1) || \
  916. defined(TARGET_IS_TEMPEST_RC1) || \
  917. defined(TARGET_IS_TEMPEST_RC3) || \
  918. defined(TARGET_IS_TEMPEST_RC5) || \
  919. defined(TARGET_IS_FIRESTORM_RA2)
  920. #define ROM_EthernetPacketPut \
  921. ((long (*)(unsigned long ulBase, \
  922. unsigned char *pucBuf, \
  923. long lBufLen))ROM_ETHERNETTABLE[13])
  924. #endif
  925. #if defined(TARGET_IS_TEMPEST_RB1) || \
  926. defined(TARGET_IS_TEMPEST_RC1) || \
  927. defined(TARGET_IS_TEMPEST_RC3) || \
  928. defined(TARGET_IS_TEMPEST_RC5) || \
  929. defined(TARGET_IS_FIRESTORM_RA2)
  930. #define ROM_EthernetIntEnable \
  931. ((void (*)(unsigned long ulBase, \
  932. unsigned long ulIntFlags))ROM_ETHERNETTABLE[14])
  933. #endif
  934. #if defined(TARGET_IS_TEMPEST_RB1) || \
  935. defined(TARGET_IS_TEMPEST_RC1) || \
  936. defined(TARGET_IS_TEMPEST_RC3) || \
  937. defined(TARGET_IS_TEMPEST_RC5) || \
  938. defined(TARGET_IS_FIRESTORM_RA2)
  939. #define ROM_EthernetIntDisable \
  940. ((void (*)(unsigned long ulBase, \
  941. unsigned long ulIntFlags))ROM_ETHERNETTABLE[15])
  942. #endif
  943. #if defined(TARGET_IS_TEMPEST_RB1) || \
  944. defined(TARGET_IS_TEMPEST_RC1) || \
  945. defined(TARGET_IS_TEMPEST_RC3) || \
  946. defined(TARGET_IS_TEMPEST_RC5) || \
  947. defined(TARGET_IS_FIRESTORM_RA2)
  948. #define ROM_EthernetIntStatus \
  949. ((unsigned long (*)(unsigned long ulBase, \
  950. tBoolean bMasked))ROM_ETHERNETTABLE[16])
  951. #endif
  952. #if defined(TARGET_IS_TEMPEST_RB1) || \
  953. defined(TARGET_IS_TEMPEST_RC1) || \
  954. defined(TARGET_IS_TEMPEST_RC3) || \
  955. defined(TARGET_IS_TEMPEST_RC5) || \
  956. defined(TARGET_IS_FIRESTORM_RA2)
  957. #define ROM_EthernetPHYWrite \
  958. ((void (*)(unsigned long ulBase, \
  959. unsigned char ucRegAddr, \
  960. unsigned long ulData))ROM_ETHERNETTABLE[17])
  961. #endif
  962. #if defined(TARGET_IS_TEMPEST_RB1) || \
  963. defined(TARGET_IS_TEMPEST_RC1) || \
  964. defined(TARGET_IS_TEMPEST_RC3) || \
  965. defined(TARGET_IS_TEMPEST_RC5) || \
  966. defined(TARGET_IS_FIRESTORM_RA2)
  967. #define ROM_EthernetPHYRead \
  968. ((unsigned long (*)(unsigned long ulBase, \
  969. unsigned char ucRegAddr))ROM_ETHERNETTABLE[18])
  970. #endif
  971. #if defined(TARGET_IS_TEMPEST_RB1) || \
  972. defined(TARGET_IS_TEMPEST_RC1) || \
  973. defined(TARGET_IS_TEMPEST_RC3) || \
  974. defined(TARGET_IS_TEMPEST_RC5) || \
  975. defined(TARGET_IS_FIRESTORM_RA2)
  976. #define ROM_UpdateEthernet \
  977. ((void (*)(unsigned long ulClock))ROM_ETHERNETTABLE[19])
  978. #endif
  979. #if defined(TARGET_IS_TEMPEST_RC5) || \
  980. defined(TARGET_IS_FIRESTORM_RA2)
  981. #define ROM_EthernetPHYAddrSet \
  982. ((void (*)(unsigned long ulBase, \
  983. unsigned char ucAddr))ROM_ETHERNETTABLE[20])
  984. #endif
  985. #if defined(TARGET_IS_TEMPEST_RC5) || \
  986. defined(TARGET_IS_FIRESTORM_RA2)
  987. #define ROM_EthernetPHYPowerOff \
  988. ((void (*)(unsigned long ulBase))ROM_ETHERNETTABLE[21])
  989. #endif
  990. #if defined(TARGET_IS_TEMPEST_RC5) || \
  991. defined(TARGET_IS_FIRESTORM_RA2)
  992. #define ROM_EthernetPHYPowerOn \
  993. ((void (*)(unsigned long ulBase))ROM_ETHERNETTABLE[22])
  994. #endif
  995. //*****************************************************************************
  996. //
  997. // Macros for calling ROM functions in the Fan API.
  998. //
  999. //*****************************************************************************
  1000. #if defined(TARGET_IS_BLIZZARD_RA1)
  1001. #define ROM_FanIntClear \
  1002. ((void (*)(unsigned long ulBase, \
  1003. unsigned long ulFlags))ROM_FANTABLE[0])
  1004. #endif
  1005. #if defined(TARGET_IS_BLIZZARD_RA1)
  1006. #define ROM_FanChannelConfigAuto \
  1007. ((void (*)(unsigned long ulBase, \
  1008. unsigned long ulChannel, \
  1009. unsigned long ulConfig))ROM_FANTABLE[1])
  1010. #endif
  1011. #if defined(TARGET_IS_BLIZZARD_RA1)
  1012. #define ROM_FanChannelConfigManual \
  1013. ((void (*)(unsigned long ulBase, \
  1014. unsigned long ulChannel, \
  1015. unsigned long ulConfig))ROM_FANTABLE[2])
  1016. #endif
  1017. #if defined(TARGET_IS_BLIZZARD_RA1)
  1018. #define ROM_FanChannelDisable \
  1019. ((void (*)(unsigned long ulBase, \
  1020. unsigned long ulChannel))ROM_FANTABLE[3])
  1021. #endif
  1022. #if defined(TARGET_IS_BLIZZARD_RA1)
  1023. #define ROM_FanChannelDutyGet \
  1024. ((unsigned long (*)(unsigned long ulBase, \
  1025. unsigned long ulChannel))ROM_FANTABLE[4])
  1026. #endif
  1027. #if defined(TARGET_IS_BLIZZARD_RA1)
  1028. #define ROM_FanChannelDutySet \
  1029. ((void (*)(unsigned long ulBase, \
  1030. unsigned long ulChannel, \
  1031. unsigned long ulDuty))ROM_FANTABLE[5])
  1032. #endif
  1033. #if defined(TARGET_IS_BLIZZARD_RA1)
  1034. #define ROM_FanChannelEnable \
  1035. ((void (*)(unsigned long ulBase, \
  1036. unsigned long ulChannel))ROM_FANTABLE[6])
  1037. #endif
  1038. #if defined(TARGET_IS_BLIZZARD_RA1)
  1039. #define ROM_FanChannelRPMGet \
  1040. ((unsigned long (*)(unsigned long ulBase, \
  1041. unsigned long ulChannel))ROM_FANTABLE[7])
  1042. #endif
  1043. #if defined(TARGET_IS_BLIZZARD_RA1)
  1044. #define ROM_FanChannelRPMSet \
  1045. ((void (*)(unsigned long ulBase, \
  1046. unsigned long ulChannel, \
  1047. unsigned long ulRPM))ROM_FANTABLE[8])
  1048. #endif
  1049. #if defined(TARGET_IS_BLIZZARD_RA1)
  1050. #define ROM_FanChannelStatus \
  1051. ((unsigned long (*)(unsigned long ulBase, \
  1052. unsigned long ulChannel))ROM_FANTABLE[9])
  1053. #endif
  1054. #if defined(TARGET_IS_BLIZZARD_RA1)
  1055. #define ROM_FanChannelsGet \
  1056. ((unsigned long (*)(unsigned long ulBase))ROM_FANTABLE[10])
  1057. #endif
  1058. #if defined(TARGET_IS_BLIZZARD_RA1)
  1059. #define ROM_FanIntDisable \
  1060. ((void (*)(unsigned long ulBase, \
  1061. unsigned long ulFlags))ROM_FANTABLE[11])
  1062. #endif
  1063. #if defined(TARGET_IS_BLIZZARD_RA1)
  1064. #define ROM_FanIntEnable \
  1065. ((void (*)(unsigned long ulBase, \
  1066. unsigned long ulFlags))ROM_FANTABLE[12])
  1067. #endif
  1068. #if defined(TARGET_IS_BLIZZARD_RA1)
  1069. #define ROM_FanIntStatus \
  1070. ((unsigned long (*)(unsigned long ulBase, \
  1071. tBoolean bMasked))ROM_FANTABLE[13])
  1072. #endif
  1073. //*****************************************************************************
  1074. //
  1075. // Macros for calling ROM functions in the Flash API.
  1076. //
  1077. //*****************************************************************************
  1078. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1079. defined(TARGET_IS_TEMPEST_RB1) || \
  1080. defined(TARGET_IS_TEMPEST_RC1) || \
  1081. defined(TARGET_IS_TEMPEST_RC3) || \
  1082. defined(TARGET_IS_TEMPEST_RC5) || \
  1083. defined(TARGET_IS_FIRESTORM_RA2) || \
  1084. defined(TARGET_IS_BLIZZARD_RA1)
  1085. #define ROM_FlashProgram \
  1086. ((long (*)(unsigned long *pulData, \
  1087. unsigned long ulAddress, \
  1088. unsigned long ulCount))ROM_FLASHTABLE[0])
  1089. #endif
  1090. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1091. defined(TARGET_IS_TEMPEST_RB1) || \
  1092. defined(TARGET_IS_TEMPEST_RC1) || \
  1093. defined(TARGET_IS_TEMPEST_RC3) || \
  1094. defined(TARGET_IS_TEMPEST_RC5) || \
  1095. defined(TARGET_IS_FIRESTORM_RA2) || \
  1096. defined(TARGET_IS_BLIZZARD_RA1)
  1097. #define ROM_FlashUsecGet \
  1098. ((unsigned long (*)(void))ROM_FLASHTABLE[1])
  1099. #endif
  1100. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1101. defined(TARGET_IS_TEMPEST_RB1) || \
  1102. defined(TARGET_IS_TEMPEST_RC1) || \
  1103. defined(TARGET_IS_TEMPEST_RC3) || \
  1104. defined(TARGET_IS_TEMPEST_RC5) || \
  1105. defined(TARGET_IS_FIRESTORM_RA2) || \
  1106. defined(TARGET_IS_BLIZZARD_RA1)
  1107. #define ROM_FlashUsecSet \
  1108. ((void (*)(unsigned long ulClocks))ROM_FLASHTABLE[2])
  1109. #endif
  1110. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1111. defined(TARGET_IS_TEMPEST_RB1) || \
  1112. defined(TARGET_IS_TEMPEST_RC1) || \
  1113. defined(TARGET_IS_TEMPEST_RC3) || \
  1114. defined(TARGET_IS_TEMPEST_RC5) || \
  1115. defined(TARGET_IS_FIRESTORM_RA2) || \
  1116. defined(TARGET_IS_BLIZZARD_RA1)
  1117. #define ROM_FlashErase \
  1118. ((long (*)(unsigned long ulAddress))ROM_FLASHTABLE[3])
  1119. #endif
  1120. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1121. defined(TARGET_IS_TEMPEST_RB1) || \
  1122. defined(TARGET_IS_TEMPEST_RC1) || \
  1123. defined(TARGET_IS_TEMPEST_RC3) || \
  1124. defined(TARGET_IS_TEMPEST_RC5) || \
  1125. defined(TARGET_IS_FIRESTORM_RA2) || \
  1126. defined(TARGET_IS_BLIZZARD_RA1)
  1127. #define ROM_FlashProtectGet \
  1128. ((tFlashProtection (*)(unsigned long ulAddress))ROM_FLASHTABLE[4])
  1129. #endif
  1130. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1131. defined(TARGET_IS_TEMPEST_RB1) || \
  1132. defined(TARGET_IS_TEMPEST_RC1) || \
  1133. defined(TARGET_IS_TEMPEST_RC3) || \
  1134. defined(TARGET_IS_TEMPEST_RC5) || \
  1135. defined(TARGET_IS_FIRESTORM_RA2) || \
  1136. defined(TARGET_IS_BLIZZARD_RA1)
  1137. #define ROM_FlashProtectSet \
  1138. ((long (*)(unsigned long ulAddress, \
  1139. tFlashProtection eProtect))ROM_FLASHTABLE[5])
  1140. #endif
  1141. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1142. defined(TARGET_IS_TEMPEST_RB1) || \
  1143. defined(TARGET_IS_TEMPEST_RC1) || \
  1144. defined(TARGET_IS_TEMPEST_RC3) || \
  1145. defined(TARGET_IS_TEMPEST_RC5) || \
  1146. defined(TARGET_IS_FIRESTORM_RA2) || \
  1147. defined(TARGET_IS_BLIZZARD_RA1)
  1148. #define ROM_FlashProtectSave \
  1149. ((long (*)(void))ROM_FLASHTABLE[6])
  1150. #endif
  1151. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1152. defined(TARGET_IS_TEMPEST_RB1) || \
  1153. defined(TARGET_IS_TEMPEST_RC1) || \
  1154. defined(TARGET_IS_TEMPEST_RC3) || \
  1155. defined(TARGET_IS_TEMPEST_RC5) || \
  1156. defined(TARGET_IS_FIRESTORM_RA2) || \
  1157. defined(TARGET_IS_BLIZZARD_RA1)
  1158. #define ROM_FlashUserGet \
  1159. ((long (*)(unsigned long *pulUser0, \
  1160. unsigned long *pulUser1))ROM_FLASHTABLE[7])
  1161. #endif
  1162. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1163. defined(TARGET_IS_TEMPEST_RB1) || \
  1164. defined(TARGET_IS_TEMPEST_RC1) || \
  1165. defined(TARGET_IS_TEMPEST_RC3) || \
  1166. defined(TARGET_IS_TEMPEST_RC5) || \
  1167. defined(TARGET_IS_FIRESTORM_RA2) || \
  1168. defined(TARGET_IS_BLIZZARD_RA1)
  1169. #define ROM_FlashUserSet \
  1170. ((long (*)(unsigned long ulUser0, \
  1171. unsigned long ulUser1))ROM_FLASHTABLE[8])
  1172. #endif
  1173. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1174. defined(TARGET_IS_TEMPEST_RB1) || \
  1175. defined(TARGET_IS_TEMPEST_RC1) || \
  1176. defined(TARGET_IS_TEMPEST_RC3) || \
  1177. defined(TARGET_IS_TEMPEST_RC5) || \
  1178. defined(TARGET_IS_FIRESTORM_RA2) || \
  1179. defined(TARGET_IS_BLIZZARD_RA1)
  1180. #define ROM_FlashUserSave \
  1181. ((long (*)(void))ROM_FLASHTABLE[9])
  1182. #endif
  1183. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1184. defined(TARGET_IS_TEMPEST_RB1) || \
  1185. defined(TARGET_IS_TEMPEST_RC1) || \
  1186. defined(TARGET_IS_TEMPEST_RC3) || \
  1187. defined(TARGET_IS_TEMPEST_RC5) || \
  1188. defined(TARGET_IS_FIRESTORM_RA2) || \
  1189. defined(TARGET_IS_BLIZZARD_RA1)
  1190. #define ROM_FlashIntEnable \
  1191. ((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[10])
  1192. #endif
  1193. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1194. defined(TARGET_IS_TEMPEST_RB1) || \
  1195. defined(TARGET_IS_TEMPEST_RC1) || \
  1196. defined(TARGET_IS_TEMPEST_RC3) || \
  1197. defined(TARGET_IS_TEMPEST_RC5) || \
  1198. defined(TARGET_IS_FIRESTORM_RA2) || \
  1199. defined(TARGET_IS_BLIZZARD_RA1)
  1200. #define ROM_FlashIntDisable \
  1201. ((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[11])
  1202. #endif
  1203. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1204. defined(TARGET_IS_TEMPEST_RB1) || \
  1205. defined(TARGET_IS_TEMPEST_RC1) || \
  1206. defined(TARGET_IS_TEMPEST_RC3) || \
  1207. defined(TARGET_IS_TEMPEST_RC5) || \
  1208. defined(TARGET_IS_FIRESTORM_RA2) || \
  1209. defined(TARGET_IS_BLIZZARD_RA1)
  1210. #define ROM_FlashIntStatus \
  1211. ((unsigned long (*)(tBoolean bMasked))ROM_FLASHTABLE[12])
  1212. #endif
  1213. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1214. defined(TARGET_IS_TEMPEST_RB1) || \
  1215. defined(TARGET_IS_TEMPEST_RC1) || \
  1216. defined(TARGET_IS_TEMPEST_RC3) || \
  1217. defined(TARGET_IS_TEMPEST_RC5) || \
  1218. defined(TARGET_IS_FIRESTORM_RA2) || \
  1219. defined(TARGET_IS_BLIZZARD_RA1)
  1220. #define ROM_FlashIntClear \
  1221. ((void (*)(unsigned long ulIntFlags))ROM_FLASHTABLE[13])
  1222. #endif
  1223. //*****************************************************************************
  1224. //
  1225. // Macros for calling ROM functions in the FPU API.
  1226. //
  1227. //*****************************************************************************
  1228. #if defined(TARGET_IS_BLIZZARD_RA1)
  1229. #define ROM_FPUEnable \
  1230. ((void (*)(void))ROM_FPUTABLE[0])
  1231. #endif
  1232. #if defined(TARGET_IS_BLIZZARD_RA1)
  1233. #define ROM_FPUDisable \
  1234. ((void (*)(void))ROM_FPUTABLE[1])
  1235. #endif
  1236. #if defined(TARGET_IS_BLIZZARD_RA1)
  1237. #define ROM_FPUFlushToZeroModeSet \
  1238. ((void (*)(unsigned long ulMode))ROM_FPUTABLE[2])
  1239. #endif
  1240. #if defined(TARGET_IS_BLIZZARD_RA1)
  1241. #define ROM_FPUHalfPrecisionModeSet \
  1242. ((void (*)(unsigned long ulMode))ROM_FPUTABLE[3])
  1243. #endif
  1244. #if defined(TARGET_IS_BLIZZARD_RA1)
  1245. #define ROM_FPULazyStackingEnable \
  1246. ((void (*)(void))ROM_FPUTABLE[4])
  1247. #endif
  1248. #if defined(TARGET_IS_BLIZZARD_RA1)
  1249. #define ROM_FPUNaNModeSet \
  1250. ((void (*)(unsigned long ulMode))ROM_FPUTABLE[5])
  1251. #endif
  1252. #if defined(TARGET_IS_BLIZZARD_RA1)
  1253. #define ROM_FPURoundingModeSet \
  1254. ((void (*)(unsigned long ulMode))ROM_FPUTABLE[6])
  1255. #endif
  1256. #if defined(TARGET_IS_BLIZZARD_RA1)
  1257. #define ROM_FPUStackingDisable \
  1258. ((void (*)(void))ROM_FPUTABLE[7])
  1259. #endif
  1260. #if defined(TARGET_IS_BLIZZARD_RA1)
  1261. #define ROM_FPUStackingEnable \
  1262. ((void (*)(void))ROM_FPUTABLE[8])
  1263. #endif
  1264. //*****************************************************************************
  1265. //
  1266. // Macros for calling ROM functions in the GPIO API.
  1267. //
  1268. //*****************************************************************************
  1269. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1270. defined(TARGET_IS_TEMPEST_RB1) || \
  1271. defined(TARGET_IS_TEMPEST_RC1) || \
  1272. defined(TARGET_IS_TEMPEST_RC3) || \
  1273. defined(TARGET_IS_TEMPEST_RC5) || \
  1274. defined(TARGET_IS_FIRESTORM_RA2) || \
  1275. defined(TARGET_IS_BLIZZARD_RA1)
  1276. #define ROM_GPIOPinWrite \
  1277. ((void (*)(unsigned long ulPort, \
  1278. unsigned char ucPins, \
  1279. unsigned char ucVal))ROM_GPIOTABLE[0])
  1280. #endif
  1281. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1282. defined(TARGET_IS_TEMPEST_RB1) || \
  1283. defined(TARGET_IS_TEMPEST_RC1) || \
  1284. defined(TARGET_IS_TEMPEST_RC3) || \
  1285. defined(TARGET_IS_TEMPEST_RC5) || \
  1286. defined(TARGET_IS_FIRESTORM_RA2) || \
  1287. defined(TARGET_IS_BLIZZARD_RA1)
  1288. #define ROM_GPIODirModeSet \
  1289. ((void (*)(unsigned long ulPort, \
  1290. unsigned char ucPins, \
  1291. unsigned long ulPinIO))ROM_GPIOTABLE[1])
  1292. #endif
  1293. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1294. defined(TARGET_IS_TEMPEST_RB1) || \
  1295. defined(TARGET_IS_TEMPEST_RC1) || \
  1296. defined(TARGET_IS_TEMPEST_RC3) || \
  1297. defined(TARGET_IS_TEMPEST_RC5) || \
  1298. defined(TARGET_IS_FIRESTORM_RA2) || \
  1299. defined(TARGET_IS_BLIZZARD_RA1)
  1300. #define ROM_GPIODirModeGet \
  1301. ((unsigned long (*)(unsigned long ulPort, \
  1302. unsigned char ucPin))ROM_GPIOTABLE[2])
  1303. #endif
  1304. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1305. defined(TARGET_IS_TEMPEST_RB1) || \
  1306. defined(TARGET_IS_TEMPEST_RC1) || \
  1307. defined(TARGET_IS_TEMPEST_RC3) || \
  1308. defined(TARGET_IS_TEMPEST_RC5) || \
  1309. defined(TARGET_IS_FIRESTORM_RA2) || \
  1310. defined(TARGET_IS_BLIZZARD_RA1)
  1311. #define ROM_GPIOIntTypeSet \
  1312. ((void (*)(unsigned long ulPort, \
  1313. unsigned char ucPins, \
  1314. unsigned long ulIntType))ROM_GPIOTABLE[3])
  1315. #endif
  1316. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1317. defined(TARGET_IS_TEMPEST_RB1) || \
  1318. defined(TARGET_IS_TEMPEST_RC1) || \
  1319. defined(TARGET_IS_TEMPEST_RC3) || \
  1320. defined(TARGET_IS_TEMPEST_RC5) || \
  1321. defined(TARGET_IS_FIRESTORM_RA2) || \
  1322. defined(TARGET_IS_BLIZZARD_RA1)
  1323. #define ROM_GPIOIntTypeGet \
  1324. ((unsigned long (*)(unsigned long ulPort, \
  1325. unsigned char ucPin))ROM_GPIOTABLE[4])
  1326. #endif
  1327. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1328. defined(TARGET_IS_TEMPEST_RB1) || \
  1329. defined(TARGET_IS_TEMPEST_RC1) || \
  1330. defined(TARGET_IS_TEMPEST_RC3) || \
  1331. defined(TARGET_IS_TEMPEST_RC5) || \
  1332. defined(TARGET_IS_FIRESTORM_RA2) || \
  1333. defined(TARGET_IS_BLIZZARD_RA1)
  1334. #define ROM_GPIOPadConfigSet \
  1335. ((void (*)(unsigned long ulPort, \
  1336. unsigned char ucPins, \
  1337. unsigned long ulStrength, \
  1338. unsigned long ulPadType))ROM_GPIOTABLE[5])
  1339. #endif
  1340. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1341. defined(TARGET_IS_TEMPEST_RB1) || \
  1342. defined(TARGET_IS_TEMPEST_RC1) || \
  1343. defined(TARGET_IS_TEMPEST_RC3) || \
  1344. defined(TARGET_IS_TEMPEST_RC5) || \
  1345. defined(TARGET_IS_FIRESTORM_RA2) || \
  1346. defined(TARGET_IS_BLIZZARD_RA1)
  1347. #define ROM_GPIOPadConfigGet \
  1348. ((void (*)(unsigned long ulPort, \
  1349. unsigned char ucPin, \
  1350. unsigned long *pulStrength, \
  1351. unsigned long *pulPadType))ROM_GPIOTABLE[6])
  1352. #endif
  1353. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1354. defined(TARGET_IS_TEMPEST_RB1) || \
  1355. defined(TARGET_IS_TEMPEST_RC1) || \
  1356. defined(TARGET_IS_TEMPEST_RC3) || \
  1357. defined(TARGET_IS_TEMPEST_RC5) || \
  1358. defined(TARGET_IS_FIRESTORM_RA2) || \
  1359. defined(TARGET_IS_BLIZZARD_RA1)
  1360. #define ROM_GPIOPinIntEnable \
  1361. ((void (*)(unsigned long ulPort, \
  1362. unsigned char ucPins))ROM_GPIOTABLE[7])
  1363. #endif
  1364. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1365. defined(TARGET_IS_TEMPEST_RB1) || \
  1366. defined(TARGET_IS_TEMPEST_RC1) || \
  1367. defined(TARGET_IS_TEMPEST_RC3) || \
  1368. defined(TARGET_IS_TEMPEST_RC5) || \
  1369. defined(TARGET_IS_FIRESTORM_RA2) || \
  1370. defined(TARGET_IS_BLIZZARD_RA1)
  1371. #define ROM_GPIOPinIntDisable \
  1372. ((void (*)(unsigned long ulPort, \
  1373. unsigned char ucPins))ROM_GPIOTABLE[8])
  1374. #endif
  1375. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1376. defined(TARGET_IS_TEMPEST_RB1) || \
  1377. defined(TARGET_IS_TEMPEST_RC1) || \
  1378. defined(TARGET_IS_TEMPEST_RC3) || \
  1379. defined(TARGET_IS_TEMPEST_RC5) || \
  1380. defined(TARGET_IS_FIRESTORM_RA2) || \
  1381. defined(TARGET_IS_BLIZZARD_RA1)
  1382. #define ROM_GPIOPinIntStatus \
  1383. ((long (*)(unsigned long ulPort, \
  1384. tBoolean bMasked))ROM_GPIOTABLE[9])
  1385. #endif
  1386. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1387. defined(TARGET_IS_TEMPEST_RB1) || \
  1388. defined(TARGET_IS_TEMPEST_RC1) || \
  1389. defined(TARGET_IS_TEMPEST_RC3) || \
  1390. defined(TARGET_IS_TEMPEST_RC5) || \
  1391. defined(TARGET_IS_FIRESTORM_RA2) || \
  1392. defined(TARGET_IS_BLIZZARD_RA1)
  1393. #define ROM_GPIOPinIntClear \
  1394. ((void (*)(unsigned long ulPort, \
  1395. unsigned char ucPins))ROM_GPIOTABLE[10])
  1396. #endif
  1397. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1398. defined(TARGET_IS_TEMPEST_RB1) || \
  1399. defined(TARGET_IS_TEMPEST_RC1) || \
  1400. defined(TARGET_IS_TEMPEST_RC3) || \
  1401. defined(TARGET_IS_TEMPEST_RC5) || \
  1402. defined(TARGET_IS_FIRESTORM_RA2) || \
  1403. defined(TARGET_IS_BLIZZARD_RA1)
  1404. #define ROM_GPIOPinRead \
  1405. ((long (*)(unsigned long ulPort, \
  1406. unsigned char ucPins))ROM_GPIOTABLE[11])
  1407. #endif
  1408. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1409. defined(TARGET_IS_TEMPEST_RB1) || \
  1410. defined(TARGET_IS_TEMPEST_RC1) || \
  1411. defined(TARGET_IS_TEMPEST_RC3) || \
  1412. defined(TARGET_IS_TEMPEST_RC5) || \
  1413. defined(TARGET_IS_FIRESTORM_RA2) || \
  1414. defined(TARGET_IS_BLIZZARD_RA1)
  1415. #define ROM_GPIOPinTypeCAN \
  1416. ((void (*)(unsigned long ulPort, \
  1417. unsigned char ucPins))ROM_GPIOTABLE[12])
  1418. #endif
  1419. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1420. defined(TARGET_IS_TEMPEST_RB1) || \
  1421. defined(TARGET_IS_TEMPEST_RC1) || \
  1422. defined(TARGET_IS_TEMPEST_RC3) || \
  1423. defined(TARGET_IS_TEMPEST_RC5) || \
  1424. defined(TARGET_IS_FIRESTORM_RA2) || \
  1425. defined(TARGET_IS_BLIZZARD_RA1)
  1426. #define ROM_GPIOPinTypeComparator \
  1427. ((void (*)(unsigned long ulPort, \
  1428. unsigned char ucPins))ROM_GPIOTABLE[13])
  1429. #endif
  1430. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1431. defined(TARGET_IS_TEMPEST_RB1) || \
  1432. defined(TARGET_IS_TEMPEST_RC1) || \
  1433. defined(TARGET_IS_TEMPEST_RC3) || \
  1434. defined(TARGET_IS_TEMPEST_RC5) || \
  1435. defined(TARGET_IS_FIRESTORM_RA2) || \
  1436. defined(TARGET_IS_BLIZZARD_RA1)
  1437. #define ROM_GPIOPinTypeGPIOInput \
  1438. ((void (*)(unsigned long ulPort, \
  1439. unsigned char ucPins))ROM_GPIOTABLE[14])
  1440. #endif
  1441. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1442. defined(TARGET_IS_TEMPEST_RB1) || \
  1443. defined(TARGET_IS_TEMPEST_RC1) || \
  1444. defined(TARGET_IS_TEMPEST_RC3) || \
  1445. defined(TARGET_IS_TEMPEST_RC5) || \
  1446. defined(TARGET_IS_FIRESTORM_RA2) || \
  1447. defined(TARGET_IS_BLIZZARD_RA1)
  1448. #define ROM_GPIOPinTypeGPIOOutput \
  1449. ((void (*)(unsigned long ulPort, \
  1450. unsigned char ucPins))ROM_GPIOTABLE[15])
  1451. #endif
  1452. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1453. defined(TARGET_IS_TEMPEST_RB1) || \
  1454. defined(TARGET_IS_TEMPEST_RC1) || \
  1455. defined(TARGET_IS_TEMPEST_RC3) || \
  1456. defined(TARGET_IS_TEMPEST_RC5) || \
  1457. defined(TARGET_IS_FIRESTORM_RA2) || \
  1458. defined(TARGET_IS_BLIZZARD_RA1)
  1459. #define ROM_GPIOPinTypeI2C \
  1460. ((void (*)(unsigned long ulPort, \
  1461. unsigned char ucPins))ROM_GPIOTABLE[16])
  1462. #endif
  1463. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1464. defined(TARGET_IS_TEMPEST_RB1) || \
  1465. defined(TARGET_IS_TEMPEST_RC1) || \
  1466. defined(TARGET_IS_TEMPEST_RC3) || \
  1467. defined(TARGET_IS_TEMPEST_RC5) || \
  1468. defined(TARGET_IS_FIRESTORM_RA2) || \
  1469. defined(TARGET_IS_BLIZZARD_RA1)
  1470. #define ROM_GPIOPinTypePWM \
  1471. ((void (*)(unsigned long ulPort, \
  1472. unsigned char ucPins))ROM_GPIOTABLE[17])
  1473. #endif
  1474. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1475. defined(TARGET_IS_TEMPEST_RB1) || \
  1476. defined(TARGET_IS_TEMPEST_RC1) || \
  1477. defined(TARGET_IS_TEMPEST_RC3) || \
  1478. defined(TARGET_IS_TEMPEST_RC5) || \
  1479. defined(TARGET_IS_FIRESTORM_RA2) || \
  1480. defined(TARGET_IS_BLIZZARD_RA1)
  1481. #define ROM_GPIOPinTypeQEI \
  1482. ((void (*)(unsigned long ulPort, \
  1483. unsigned char ucPins))ROM_GPIOTABLE[18])
  1484. #endif
  1485. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1486. defined(TARGET_IS_TEMPEST_RB1) || \
  1487. defined(TARGET_IS_TEMPEST_RC1) || \
  1488. defined(TARGET_IS_TEMPEST_RC3) || \
  1489. defined(TARGET_IS_TEMPEST_RC5) || \
  1490. defined(TARGET_IS_FIRESTORM_RA2) || \
  1491. defined(TARGET_IS_BLIZZARD_RA1)
  1492. #define ROM_GPIOPinTypeSSI \
  1493. ((void (*)(unsigned long ulPort, \
  1494. unsigned char ucPins))ROM_GPIOTABLE[19])
  1495. #endif
  1496. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1497. defined(TARGET_IS_TEMPEST_RB1) || \
  1498. defined(TARGET_IS_TEMPEST_RC1) || \
  1499. defined(TARGET_IS_TEMPEST_RC3) || \
  1500. defined(TARGET_IS_TEMPEST_RC5) || \
  1501. defined(TARGET_IS_FIRESTORM_RA2) || \
  1502. defined(TARGET_IS_BLIZZARD_RA1)
  1503. #define ROM_GPIOPinTypeTimer \
  1504. ((void (*)(unsigned long ulPort, \
  1505. unsigned char ucPins))ROM_GPIOTABLE[20])
  1506. #endif
  1507. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1508. defined(TARGET_IS_TEMPEST_RB1) || \
  1509. defined(TARGET_IS_TEMPEST_RC1) || \
  1510. defined(TARGET_IS_TEMPEST_RC3) || \
  1511. defined(TARGET_IS_TEMPEST_RC5) || \
  1512. defined(TARGET_IS_FIRESTORM_RA2) || \
  1513. defined(TARGET_IS_BLIZZARD_RA1)
  1514. #define ROM_GPIOPinTypeUART \
  1515. ((void (*)(unsigned long ulPort, \
  1516. unsigned char ucPins))ROM_GPIOTABLE[21])
  1517. #endif
  1518. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1519. defined(TARGET_IS_TEMPEST_RB1) || \
  1520. defined(TARGET_IS_TEMPEST_RC1) || \
  1521. defined(TARGET_IS_TEMPEST_RC3) || \
  1522. defined(TARGET_IS_TEMPEST_RC5) || \
  1523. defined(TARGET_IS_FIRESTORM_RA2) || \
  1524. defined(TARGET_IS_BLIZZARD_RA1)
  1525. #define ROM_GPIOPinTypeGPIOOutputOD \
  1526. ((void (*)(unsigned long ulPort, \
  1527. unsigned char ucPins))ROM_GPIOTABLE[22])
  1528. #endif
  1529. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1530. defined(TARGET_IS_TEMPEST_RC1) || \
  1531. defined(TARGET_IS_TEMPEST_RC3) || \
  1532. defined(TARGET_IS_TEMPEST_RC5) || \
  1533. defined(TARGET_IS_FIRESTORM_RA2) || \
  1534. defined(TARGET_IS_BLIZZARD_RA1)
  1535. #define ROM_GPIOPinTypeADC \
  1536. ((void (*)(unsigned long ulPort, \
  1537. unsigned char ucPins))ROM_GPIOTABLE[23])
  1538. #endif
  1539. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1540. defined(TARGET_IS_TEMPEST_RC1) || \
  1541. defined(TARGET_IS_TEMPEST_RC3) || \
  1542. defined(TARGET_IS_TEMPEST_RC5) || \
  1543. defined(TARGET_IS_FIRESTORM_RA2) || \
  1544. defined(TARGET_IS_BLIZZARD_RA1)
  1545. #define ROM_GPIOPinTypeUSBDigital \
  1546. ((void (*)(unsigned long ulPort, \
  1547. unsigned char ucPins))ROM_GPIOTABLE[24])
  1548. #endif
  1549. #if defined(TARGET_IS_TEMPEST_RC1) || \
  1550. defined(TARGET_IS_TEMPEST_RC3) || \
  1551. defined(TARGET_IS_TEMPEST_RC5) || \
  1552. defined(TARGET_IS_FIRESTORM_RA2)
  1553. #define ROM_GPIOPinTypeI2S \
  1554. ((void (*)(unsigned long ulPort, \
  1555. unsigned char ucPins))ROM_GPIOTABLE[25])
  1556. #endif
  1557. #if defined(TARGET_IS_TEMPEST_RC1) || \
  1558. defined(TARGET_IS_TEMPEST_RC3) || \
  1559. defined(TARGET_IS_TEMPEST_RC5) || \
  1560. defined(TARGET_IS_FIRESTORM_RA2) || \
  1561. defined(TARGET_IS_BLIZZARD_RA1)
  1562. #define ROM_GPIOPinConfigure \
  1563. ((void (*)(unsigned long ulPinConfig))ROM_GPIOTABLE[26])
  1564. #endif
  1565. #if defined(TARGET_IS_TEMPEST_RC1) || \
  1566. defined(TARGET_IS_TEMPEST_RC3) || \
  1567. defined(TARGET_IS_TEMPEST_RC5) || \
  1568. defined(TARGET_IS_FIRESTORM_RA2)
  1569. #define ROM_GPIOPinTypeEthernetLED \
  1570. ((void (*)(unsigned long ulPort, \
  1571. unsigned char ucPins))ROM_GPIOTABLE[27])
  1572. #endif
  1573. #if defined(TARGET_IS_TEMPEST_RC1) || \
  1574. defined(TARGET_IS_TEMPEST_RC3) || \
  1575. defined(TARGET_IS_TEMPEST_RC5) || \
  1576. defined(TARGET_IS_FIRESTORM_RA2) || \
  1577. defined(TARGET_IS_BLIZZARD_RA1)
  1578. #define ROM_GPIOPinTypeUSBAnalog \
  1579. ((void (*)(unsigned long ulPort, \
  1580. unsigned char ucPins))ROM_GPIOTABLE[28])
  1581. #endif
  1582. #if defined(TARGET_IS_TEMPEST_RC3) || \
  1583. defined(TARGET_IS_TEMPEST_RC5) || \
  1584. defined(TARGET_IS_FIRESTORM_RA2)
  1585. #define ROM_GPIOPinTypeEPI \
  1586. ((void (*)(unsigned long ulPort, \
  1587. unsigned char ucPins))ROM_GPIOTABLE[29])
  1588. #endif
  1589. #if defined(TARGET_IS_TEMPEST_RC3) || \
  1590. defined(TARGET_IS_TEMPEST_RC5) || \
  1591. defined(TARGET_IS_FIRESTORM_RA2)
  1592. #define ROM_GPIOPinTypeEthernetMII \
  1593. ((void (*)(unsigned long ulPort, \
  1594. unsigned char ucPins))ROM_GPIOTABLE[30])
  1595. #endif
  1596. #if defined(TARGET_IS_BLIZZARD_RA1)
  1597. #define ROM_GPIODMATriggerEnable \
  1598. ((void (*)(unsigned long ulPort, \
  1599. unsigned char ucPins))ROM_GPIOTABLE[31])
  1600. #endif
  1601. #if defined(TARGET_IS_BLIZZARD_RA1)
  1602. #define ROM_GPIODMATriggerDisable \
  1603. ((void (*)(unsigned long ulPort, \
  1604. unsigned char ucPins))ROM_GPIOTABLE[32])
  1605. #endif
  1606. #if defined(TARGET_IS_BLIZZARD_RA1)
  1607. #define ROM_GPIOADCTriggerEnable \
  1608. ((void (*)(unsigned long ulPort, \
  1609. unsigned char ucPins))ROM_GPIOTABLE[33])
  1610. #endif
  1611. #if defined(TARGET_IS_BLIZZARD_RA1)
  1612. #define ROM_GPIOADCTriggerDisable \
  1613. ((void (*)(unsigned long ulPort, \
  1614. unsigned char ucPins))ROM_GPIOTABLE[34])
  1615. #endif
  1616. #if defined(TARGET_IS_BLIZZARD_RA1)
  1617. #define ROM_GPIOPinTypeFan \
  1618. ((void (*)(unsigned long ulPort, \
  1619. unsigned char ucPins))ROM_GPIOTABLE[35])
  1620. #endif
  1621. #if defined(TARGET_IS_BLIZZARD_RA1)
  1622. #define ROM_GPIOPinTypeLPC \
  1623. ((void (*)(unsigned long ulPort, \
  1624. unsigned char ucPins))ROM_GPIOTABLE[36])
  1625. #endif
  1626. #if defined(TARGET_IS_BLIZZARD_RA1)
  1627. #define ROM_GPIOPinTypePECIRx \
  1628. ((void (*)(unsigned long ulPort, \
  1629. unsigned char ucPins))ROM_GPIOTABLE[37])
  1630. #endif
  1631. #if defined(TARGET_IS_BLIZZARD_RA1)
  1632. #define ROM_GPIOPinTypePECITx \
  1633. ((void (*)(unsigned long ulPort, \
  1634. unsigned char ucPins))ROM_GPIOTABLE[38])
  1635. #endif
  1636. //*****************************************************************************
  1637. //
  1638. // Macros for calling ROM functions in the Hibernate API.
  1639. //
  1640. //*****************************************************************************
  1641. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1642. defined(TARGET_IS_TEMPEST_RC1) || \
  1643. defined(TARGET_IS_TEMPEST_RC3) || \
  1644. defined(TARGET_IS_TEMPEST_RC5) || \
  1645. defined(TARGET_IS_FIRESTORM_RA2) || \
  1646. defined(TARGET_IS_BLIZZARD_RA1)
  1647. #define ROM_HibernateIntClear \
  1648. ((void (*)(unsigned long ulIntFlags))ROM_HIBERNATETABLE[0])
  1649. #endif
  1650. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1651. defined(TARGET_IS_TEMPEST_RC1) || \
  1652. defined(TARGET_IS_TEMPEST_RC3) || \
  1653. defined(TARGET_IS_TEMPEST_RC5) || \
  1654. defined(TARGET_IS_FIRESTORM_RA2) || \
  1655. defined(TARGET_IS_BLIZZARD_RA1)
  1656. #define ROM_HibernateEnableExpClk \
  1657. ((void (*)(unsigned long ulHibClk))ROM_HIBERNATETABLE[1])
  1658. #endif
  1659. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1660. defined(TARGET_IS_TEMPEST_RC1) || \
  1661. defined(TARGET_IS_TEMPEST_RC3) || \
  1662. defined(TARGET_IS_TEMPEST_RC5) || \
  1663. defined(TARGET_IS_FIRESTORM_RA2) || \
  1664. defined(TARGET_IS_BLIZZARD_RA1)
  1665. #define ROM_HibernateDisable \
  1666. ((void (*)(void))ROM_HIBERNATETABLE[2])
  1667. #endif
  1668. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1669. defined(TARGET_IS_TEMPEST_RC1) || \
  1670. defined(TARGET_IS_TEMPEST_RC3) || \
  1671. defined(TARGET_IS_TEMPEST_RC5) || \
  1672. defined(TARGET_IS_FIRESTORM_RA2) || \
  1673. defined(TARGET_IS_BLIZZARD_RA1)
  1674. #define ROM_HibernateClockSelect \
  1675. ((void (*)(unsigned long ulClockInput))ROM_HIBERNATETABLE[3])
  1676. #endif
  1677. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1678. defined(TARGET_IS_TEMPEST_RC1) || \
  1679. defined(TARGET_IS_TEMPEST_RC3) || \
  1680. defined(TARGET_IS_TEMPEST_RC5) || \
  1681. defined(TARGET_IS_FIRESTORM_RA2) || \
  1682. defined(TARGET_IS_BLIZZARD_RA1)
  1683. #define ROM_HibernateRTCEnable \
  1684. ((void (*)(void))ROM_HIBERNATETABLE[4])
  1685. #endif
  1686. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1687. defined(TARGET_IS_TEMPEST_RC1) || \
  1688. defined(TARGET_IS_TEMPEST_RC3) || \
  1689. defined(TARGET_IS_TEMPEST_RC5) || \
  1690. defined(TARGET_IS_FIRESTORM_RA2) || \
  1691. defined(TARGET_IS_BLIZZARD_RA1)
  1692. #define ROM_HibernateRTCDisable \
  1693. ((void (*)(void))ROM_HIBERNATETABLE[5])
  1694. #endif
  1695. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1696. defined(TARGET_IS_TEMPEST_RC1) || \
  1697. defined(TARGET_IS_TEMPEST_RC3) || \
  1698. defined(TARGET_IS_TEMPEST_RC5) || \
  1699. defined(TARGET_IS_FIRESTORM_RA2) || \
  1700. defined(TARGET_IS_BLIZZARD_RA1)
  1701. #define ROM_HibernateWakeSet \
  1702. ((void (*)(unsigned long ulWakeFlags))ROM_HIBERNATETABLE[6])
  1703. #endif
  1704. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1705. defined(TARGET_IS_TEMPEST_RC1) || \
  1706. defined(TARGET_IS_TEMPEST_RC3) || \
  1707. defined(TARGET_IS_TEMPEST_RC5) || \
  1708. defined(TARGET_IS_FIRESTORM_RA2) || \
  1709. defined(TARGET_IS_BLIZZARD_RA1)
  1710. #define ROM_HibernateWakeGet \
  1711. ((unsigned long (*)(void))ROM_HIBERNATETABLE[7])
  1712. #endif
  1713. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1714. defined(TARGET_IS_TEMPEST_RC1) || \
  1715. defined(TARGET_IS_TEMPEST_RC3) || \
  1716. defined(TARGET_IS_TEMPEST_RC5) || \
  1717. defined(TARGET_IS_FIRESTORM_RA2) || \
  1718. defined(TARGET_IS_BLIZZARD_RA1)
  1719. #define ROM_HibernateLowBatSet \
  1720. ((void (*)(unsigned long ulLowBatFlags))ROM_HIBERNATETABLE[8])
  1721. #endif
  1722. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1723. defined(TARGET_IS_TEMPEST_RC1) || \
  1724. defined(TARGET_IS_TEMPEST_RC3) || \
  1725. defined(TARGET_IS_TEMPEST_RC5) || \
  1726. defined(TARGET_IS_FIRESTORM_RA2) || \
  1727. defined(TARGET_IS_BLIZZARD_RA1)
  1728. #define ROM_HibernateLowBatGet \
  1729. ((unsigned long (*)(void))ROM_HIBERNATETABLE[9])
  1730. #endif
  1731. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1732. defined(TARGET_IS_TEMPEST_RC1) || \
  1733. defined(TARGET_IS_TEMPEST_RC3) || \
  1734. defined(TARGET_IS_TEMPEST_RC5) || \
  1735. defined(TARGET_IS_FIRESTORM_RA2) || \
  1736. defined(TARGET_IS_BLIZZARD_RA1)
  1737. #define ROM_HibernateRTCSet \
  1738. ((void (*)(unsigned long ulRTCValue))ROM_HIBERNATETABLE[10])
  1739. #endif
  1740. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1741. defined(TARGET_IS_TEMPEST_RC1) || \
  1742. defined(TARGET_IS_TEMPEST_RC3) || \
  1743. defined(TARGET_IS_TEMPEST_RC5) || \
  1744. defined(TARGET_IS_FIRESTORM_RA2) || \
  1745. defined(TARGET_IS_BLIZZARD_RA1)
  1746. #define ROM_HibernateRTCGet \
  1747. ((unsigned long (*)(void))ROM_HIBERNATETABLE[11])
  1748. #endif
  1749. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1750. defined(TARGET_IS_TEMPEST_RC1) || \
  1751. defined(TARGET_IS_TEMPEST_RC3) || \
  1752. defined(TARGET_IS_TEMPEST_RC5) || \
  1753. defined(TARGET_IS_FIRESTORM_RA2) || \
  1754. defined(TARGET_IS_BLIZZARD_RA1)
  1755. #define ROM_HibernateRTCMatch0Set \
  1756. ((void (*)(unsigned long ulMatch))ROM_HIBERNATETABLE[12])
  1757. #endif
  1758. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1759. defined(TARGET_IS_TEMPEST_RC1) || \
  1760. defined(TARGET_IS_TEMPEST_RC3) || \
  1761. defined(TARGET_IS_TEMPEST_RC5) || \
  1762. defined(TARGET_IS_FIRESTORM_RA2) || \
  1763. defined(TARGET_IS_BLIZZARD_RA1)
  1764. #define ROM_HibernateRTCMatch0Get \
  1765. ((unsigned long (*)(void))ROM_HIBERNATETABLE[13])
  1766. #endif
  1767. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1768. defined(TARGET_IS_TEMPEST_RC1) || \
  1769. defined(TARGET_IS_TEMPEST_RC3) || \
  1770. defined(TARGET_IS_TEMPEST_RC5) || \
  1771. defined(TARGET_IS_FIRESTORM_RA2)
  1772. #define ROM_HibernateRTCMatch1Set \
  1773. ((void (*)(unsigned long ulMatch))ROM_HIBERNATETABLE[14])
  1774. #endif
  1775. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1776. defined(TARGET_IS_TEMPEST_RC1) || \
  1777. defined(TARGET_IS_TEMPEST_RC3) || \
  1778. defined(TARGET_IS_TEMPEST_RC5) || \
  1779. defined(TARGET_IS_FIRESTORM_RA2)
  1780. #define ROM_HibernateRTCMatch1Get \
  1781. ((unsigned long (*)(void))ROM_HIBERNATETABLE[15])
  1782. #endif
  1783. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1784. defined(TARGET_IS_TEMPEST_RC1) || \
  1785. defined(TARGET_IS_TEMPEST_RC3) || \
  1786. defined(TARGET_IS_TEMPEST_RC5) || \
  1787. defined(TARGET_IS_FIRESTORM_RA2) || \
  1788. defined(TARGET_IS_BLIZZARD_RA1)
  1789. #define ROM_HibernateRTCTrimSet \
  1790. ((void (*)(unsigned long ulTrim))ROM_HIBERNATETABLE[16])
  1791. #endif
  1792. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1793. defined(TARGET_IS_TEMPEST_RC1) || \
  1794. defined(TARGET_IS_TEMPEST_RC3) || \
  1795. defined(TARGET_IS_TEMPEST_RC5) || \
  1796. defined(TARGET_IS_FIRESTORM_RA2) || \
  1797. defined(TARGET_IS_BLIZZARD_RA1)
  1798. #define ROM_HibernateRTCTrimGet \
  1799. ((unsigned long (*)(void))ROM_HIBERNATETABLE[17])
  1800. #endif
  1801. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1802. defined(TARGET_IS_TEMPEST_RC1) || \
  1803. defined(TARGET_IS_TEMPEST_RC3) || \
  1804. defined(TARGET_IS_TEMPEST_RC5) || \
  1805. defined(TARGET_IS_FIRESTORM_RA2) || \
  1806. defined(TARGET_IS_BLIZZARD_RA1)
  1807. #define ROM_HibernateDataSet \
  1808. ((void (*)(unsigned long *pulData, \
  1809. unsigned long ulCount))ROM_HIBERNATETABLE[18])
  1810. #endif
  1811. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1812. defined(TARGET_IS_TEMPEST_RC1) || \
  1813. defined(TARGET_IS_TEMPEST_RC3) || \
  1814. defined(TARGET_IS_TEMPEST_RC5) || \
  1815. defined(TARGET_IS_FIRESTORM_RA2) || \
  1816. defined(TARGET_IS_BLIZZARD_RA1)
  1817. #define ROM_HibernateDataGet \
  1818. ((void (*)(unsigned long *pulData, \
  1819. unsigned long ulCount))ROM_HIBERNATETABLE[19])
  1820. #endif
  1821. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1822. defined(TARGET_IS_TEMPEST_RC1) || \
  1823. defined(TARGET_IS_TEMPEST_RC3) || \
  1824. defined(TARGET_IS_TEMPEST_RC5) || \
  1825. defined(TARGET_IS_FIRESTORM_RA2) || \
  1826. defined(TARGET_IS_BLIZZARD_RA1)
  1827. #define ROM_HibernateRequest \
  1828. ((void (*)(void))ROM_HIBERNATETABLE[20])
  1829. #endif
  1830. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1831. defined(TARGET_IS_TEMPEST_RC1) || \
  1832. defined(TARGET_IS_TEMPEST_RC3) || \
  1833. defined(TARGET_IS_TEMPEST_RC5) || \
  1834. defined(TARGET_IS_FIRESTORM_RA2) || \
  1835. defined(TARGET_IS_BLIZZARD_RA1)
  1836. #define ROM_HibernateIntEnable \
  1837. ((void (*)(unsigned long ulIntFlags))ROM_HIBERNATETABLE[21])
  1838. #endif
  1839. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1840. defined(TARGET_IS_TEMPEST_RC1) || \
  1841. defined(TARGET_IS_TEMPEST_RC3) || \
  1842. defined(TARGET_IS_TEMPEST_RC5) || \
  1843. defined(TARGET_IS_FIRESTORM_RA2) || \
  1844. defined(TARGET_IS_BLIZZARD_RA1)
  1845. #define ROM_HibernateIntDisable \
  1846. ((void (*)(unsigned long ulIntFlags))ROM_HIBERNATETABLE[22])
  1847. #endif
  1848. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1849. defined(TARGET_IS_TEMPEST_RC1) || \
  1850. defined(TARGET_IS_TEMPEST_RC3) || \
  1851. defined(TARGET_IS_TEMPEST_RC5) || \
  1852. defined(TARGET_IS_FIRESTORM_RA2) || \
  1853. defined(TARGET_IS_BLIZZARD_RA1)
  1854. #define ROM_HibernateIntStatus \
  1855. ((unsigned long (*)(tBoolean bMasked))ROM_HIBERNATETABLE[23])
  1856. #endif
  1857. #if defined(TARGET_IS_TEMPEST_RB1) || \
  1858. defined(TARGET_IS_TEMPEST_RC1) || \
  1859. defined(TARGET_IS_TEMPEST_RC3) || \
  1860. defined(TARGET_IS_TEMPEST_RC5) || \
  1861. defined(TARGET_IS_FIRESTORM_RA2) || \
  1862. defined(TARGET_IS_BLIZZARD_RA1)
  1863. #define ROM_HibernateIsActive \
  1864. ((unsigned long (*)(void))ROM_HIBERNATETABLE[24])
  1865. #endif
  1866. #if defined(TARGET_IS_BLIZZARD_RA1)
  1867. #define ROM_HibernateRTCSSMatch0Set \
  1868. ((void (*)(unsigned long ulMatch))ROM_HIBERNATETABLE[25])
  1869. #endif
  1870. #if defined(TARGET_IS_BLIZZARD_RA1)
  1871. #define ROM_HibernateRTCSSMatch0Get \
  1872. ((unsigned long (*)(void))ROM_HIBERNATETABLE[26])
  1873. #endif
  1874. #if defined(TARGET_IS_BLIZZARD_RA1)
  1875. #define ROM_HibernateRTCSSGet \
  1876. ((unsigned long (*)(void))ROM_HIBERNATETABLE[27])
  1877. #endif
  1878. #if defined(TARGET_IS_BLIZZARD_RA1)
  1879. #define ROM_HibernateClockConfig \
  1880. ((void (*)(unsigned long ulConfig))ROM_HIBERNATETABLE[28])
  1881. #endif
  1882. #if defined(TARGET_IS_BLIZZARD_RA1)
  1883. #define ROM_HibernateBatCheckStart \
  1884. ((void (*)(void))ROM_HIBERNATETABLE[29])
  1885. #endif
  1886. #if defined(TARGET_IS_BLIZZARD_RA1)
  1887. #define ROM_HibernateBatCheckDone \
  1888. ((unsigned long (*)(void))ROM_HIBERNATETABLE[30])
  1889. #endif
  1890. //*****************************************************************************
  1891. //
  1892. // Macros for calling ROM functions in the I2C API.
  1893. //
  1894. //*****************************************************************************
  1895. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1896. defined(TARGET_IS_TEMPEST_RB1) || \
  1897. defined(TARGET_IS_TEMPEST_RC1) || \
  1898. defined(TARGET_IS_TEMPEST_RC3) || \
  1899. defined(TARGET_IS_TEMPEST_RC5) || \
  1900. defined(TARGET_IS_FIRESTORM_RA2) || \
  1901. defined(TARGET_IS_BLIZZARD_RA1)
  1902. #define ROM_I2CMasterDataPut \
  1903. ((void (*)(unsigned long ulBase, \
  1904. unsigned char ucData))ROM_I2CTABLE[0])
  1905. #endif
  1906. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1907. defined(TARGET_IS_TEMPEST_RB1) || \
  1908. defined(TARGET_IS_TEMPEST_RC1) || \
  1909. defined(TARGET_IS_TEMPEST_RC3) || \
  1910. defined(TARGET_IS_TEMPEST_RC5) || \
  1911. defined(TARGET_IS_FIRESTORM_RA2) || \
  1912. defined(TARGET_IS_BLIZZARD_RA1)
  1913. #define ROM_I2CMasterInitExpClk \
  1914. ((void (*)(unsigned long ulBase, \
  1915. unsigned long ulI2CClk, \
  1916. tBoolean bFast))ROM_I2CTABLE[1])
  1917. #endif
  1918. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1919. defined(TARGET_IS_TEMPEST_RB1) || \
  1920. defined(TARGET_IS_TEMPEST_RC1) || \
  1921. defined(TARGET_IS_TEMPEST_RC3) || \
  1922. defined(TARGET_IS_TEMPEST_RC5) || \
  1923. defined(TARGET_IS_FIRESTORM_RA2) || \
  1924. defined(TARGET_IS_BLIZZARD_RA1)
  1925. #define ROM_I2CSlaveInit \
  1926. ((void (*)(unsigned long ulBase, \
  1927. unsigned char ucSlaveAddr))ROM_I2CTABLE[2])
  1928. #endif
  1929. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1930. defined(TARGET_IS_TEMPEST_RB1) || \
  1931. defined(TARGET_IS_TEMPEST_RC1) || \
  1932. defined(TARGET_IS_TEMPEST_RC3) || \
  1933. defined(TARGET_IS_TEMPEST_RC5) || \
  1934. defined(TARGET_IS_FIRESTORM_RA2) || \
  1935. defined(TARGET_IS_BLIZZARD_RA1)
  1936. #define ROM_I2CMasterEnable \
  1937. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[3])
  1938. #endif
  1939. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1940. defined(TARGET_IS_TEMPEST_RB1) || \
  1941. defined(TARGET_IS_TEMPEST_RC1) || \
  1942. defined(TARGET_IS_TEMPEST_RC3) || \
  1943. defined(TARGET_IS_TEMPEST_RC5) || \
  1944. defined(TARGET_IS_FIRESTORM_RA2) || \
  1945. defined(TARGET_IS_BLIZZARD_RA1)
  1946. #define ROM_I2CSlaveEnable \
  1947. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[4])
  1948. #endif
  1949. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1950. defined(TARGET_IS_TEMPEST_RB1) || \
  1951. defined(TARGET_IS_TEMPEST_RC1) || \
  1952. defined(TARGET_IS_TEMPEST_RC3) || \
  1953. defined(TARGET_IS_TEMPEST_RC5) || \
  1954. defined(TARGET_IS_FIRESTORM_RA2) || \
  1955. defined(TARGET_IS_BLIZZARD_RA1)
  1956. #define ROM_I2CMasterDisable \
  1957. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[5])
  1958. #endif
  1959. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1960. defined(TARGET_IS_TEMPEST_RB1) || \
  1961. defined(TARGET_IS_TEMPEST_RC1) || \
  1962. defined(TARGET_IS_TEMPEST_RC3) || \
  1963. defined(TARGET_IS_TEMPEST_RC5) || \
  1964. defined(TARGET_IS_FIRESTORM_RA2) || \
  1965. defined(TARGET_IS_BLIZZARD_RA1)
  1966. #define ROM_I2CSlaveDisable \
  1967. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[6])
  1968. #endif
  1969. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1970. defined(TARGET_IS_TEMPEST_RB1) || \
  1971. defined(TARGET_IS_TEMPEST_RC1) || \
  1972. defined(TARGET_IS_TEMPEST_RC3) || \
  1973. defined(TARGET_IS_TEMPEST_RC5) || \
  1974. defined(TARGET_IS_FIRESTORM_RA2) || \
  1975. defined(TARGET_IS_BLIZZARD_RA1)
  1976. #define ROM_I2CMasterIntEnable \
  1977. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[7])
  1978. #endif
  1979. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1980. defined(TARGET_IS_TEMPEST_RB1) || \
  1981. defined(TARGET_IS_TEMPEST_RC1) || \
  1982. defined(TARGET_IS_TEMPEST_RC3) || \
  1983. defined(TARGET_IS_TEMPEST_RC5) || \
  1984. defined(TARGET_IS_FIRESTORM_RA2) || \
  1985. defined(TARGET_IS_BLIZZARD_RA1)
  1986. #define ROM_I2CSlaveIntEnable \
  1987. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[8])
  1988. #endif
  1989. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  1990. defined(TARGET_IS_TEMPEST_RB1) || \
  1991. defined(TARGET_IS_TEMPEST_RC1) || \
  1992. defined(TARGET_IS_TEMPEST_RC3) || \
  1993. defined(TARGET_IS_TEMPEST_RC5) || \
  1994. defined(TARGET_IS_FIRESTORM_RA2) || \
  1995. defined(TARGET_IS_BLIZZARD_RA1)
  1996. #define ROM_I2CMasterIntDisable \
  1997. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[9])
  1998. #endif
  1999. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2000. defined(TARGET_IS_TEMPEST_RB1) || \
  2001. defined(TARGET_IS_TEMPEST_RC1) || \
  2002. defined(TARGET_IS_TEMPEST_RC3) || \
  2003. defined(TARGET_IS_TEMPEST_RC5) || \
  2004. defined(TARGET_IS_FIRESTORM_RA2) || \
  2005. defined(TARGET_IS_BLIZZARD_RA1)
  2006. #define ROM_I2CSlaveIntDisable \
  2007. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[10])
  2008. #endif
  2009. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2010. defined(TARGET_IS_TEMPEST_RB1) || \
  2011. defined(TARGET_IS_TEMPEST_RC1) || \
  2012. defined(TARGET_IS_TEMPEST_RC3) || \
  2013. defined(TARGET_IS_TEMPEST_RC5) || \
  2014. defined(TARGET_IS_FIRESTORM_RA2) || \
  2015. defined(TARGET_IS_BLIZZARD_RA1)
  2016. #define ROM_I2CMasterIntStatus \
  2017. ((tBoolean (*)(unsigned long ulBase, \
  2018. tBoolean bMasked))ROM_I2CTABLE[11])
  2019. #endif
  2020. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2021. defined(TARGET_IS_TEMPEST_RB1) || \
  2022. defined(TARGET_IS_TEMPEST_RC1) || \
  2023. defined(TARGET_IS_TEMPEST_RC3) || \
  2024. defined(TARGET_IS_TEMPEST_RC5) || \
  2025. defined(TARGET_IS_FIRESTORM_RA2) || \
  2026. defined(TARGET_IS_BLIZZARD_RA1)
  2027. #define ROM_I2CSlaveIntStatus \
  2028. ((tBoolean (*)(unsigned long ulBase, \
  2029. tBoolean bMasked))ROM_I2CTABLE[12])
  2030. #endif
  2031. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2032. defined(TARGET_IS_TEMPEST_RB1) || \
  2033. defined(TARGET_IS_TEMPEST_RC1) || \
  2034. defined(TARGET_IS_TEMPEST_RC3) || \
  2035. defined(TARGET_IS_TEMPEST_RC5) || \
  2036. defined(TARGET_IS_FIRESTORM_RA2) || \
  2037. defined(TARGET_IS_BLIZZARD_RA1)
  2038. #define ROM_I2CMasterIntClear \
  2039. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[13])
  2040. #endif
  2041. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2042. defined(TARGET_IS_TEMPEST_RB1) || \
  2043. defined(TARGET_IS_TEMPEST_RC1) || \
  2044. defined(TARGET_IS_TEMPEST_RC3) || \
  2045. defined(TARGET_IS_TEMPEST_RC5) || \
  2046. defined(TARGET_IS_FIRESTORM_RA2) || \
  2047. defined(TARGET_IS_BLIZZARD_RA1)
  2048. #define ROM_I2CSlaveIntClear \
  2049. ((void (*)(unsigned long ulBase))ROM_I2CTABLE[14])
  2050. #endif
  2051. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2052. defined(TARGET_IS_TEMPEST_RB1) || \
  2053. defined(TARGET_IS_TEMPEST_RC1) || \
  2054. defined(TARGET_IS_TEMPEST_RC3) || \
  2055. defined(TARGET_IS_TEMPEST_RC5) || \
  2056. defined(TARGET_IS_FIRESTORM_RA2) || \
  2057. defined(TARGET_IS_BLIZZARD_RA1)
  2058. #define ROM_I2CMasterSlaveAddrSet \
  2059. ((void (*)(unsigned long ulBase, \
  2060. unsigned char ucSlaveAddr, \
  2061. tBoolean bReceive))ROM_I2CTABLE[15])
  2062. #endif
  2063. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2064. defined(TARGET_IS_TEMPEST_RB1) || \
  2065. defined(TARGET_IS_TEMPEST_RC1) || \
  2066. defined(TARGET_IS_TEMPEST_RC3) || \
  2067. defined(TARGET_IS_TEMPEST_RC5) || \
  2068. defined(TARGET_IS_FIRESTORM_RA2) || \
  2069. defined(TARGET_IS_BLIZZARD_RA1)
  2070. #define ROM_I2CMasterBusy \
  2071. ((tBoolean (*)(unsigned long ulBase))ROM_I2CTABLE[16])
  2072. #endif
  2073. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2074. defined(TARGET_IS_TEMPEST_RB1) || \
  2075. defined(TARGET_IS_TEMPEST_RC1) || \
  2076. defined(TARGET_IS_TEMPEST_RC3) || \
  2077. defined(TARGET_IS_TEMPEST_RC5) || \
  2078. defined(TARGET_IS_FIRESTORM_RA2) || \
  2079. defined(TARGET_IS_BLIZZARD_RA1)
  2080. #define ROM_I2CMasterBusBusy \
  2081. ((tBoolean (*)(unsigned long ulBase))ROM_I2CTABLE[17])
  2082. #endif
  2083. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2084. defined(TARGET_IS_TEMPEST_RB1) || \
  2085. defined(TARGET_IS_TEMPEST_RC1) || \
  2086. defined(TARGET_IS_TEMPEST_RC3) || \
  2087. defined(TARGET_IS_TEMPEST_RC5) || \
  2088. defined(TARGET_IS_FIRESTORM_RA2) || \
  2089. defined(TARGET_IS_BLIZZARD_RA1)
  2090. #define ROM_I2CMasterControl \
  2091. ((void (*)(unsigned long ulBase, \
  2092. unsigned long ulCmd))ROM_I2CTABLE[18])
  2093. #endif
  2094. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2095. defined(TARGET_IS_TEMPEST_RB1) || \
  2096. defined(TARGET_IS_TEMPEST_RC1) || \
  2097. defined(TARGET_IS_TEMPEST_RC3) || \
  2098. defined(TARGET_IS_TEMPEST_RC5) || \
  2099. defined(TARGET_IS_FIRESTORM_RA2) || \
  2100. defined(TARGET_IS_BLIZZARD_RA1)
  2101. #define ROM_I2CMasterErr \
  2102. ((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[19])
  2103. #endif
  2104. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2105. defined(TARGET_IS_TEMPEST_RB1) || \
  2106. defined(TARGET_IS_TEMPEST_RC1) || \
  2107. defined(TARGET_IS_TEMPEST_RC3) || \
  2108. defined(TARGET_IS_TEMPEST_RC5) || \
  2109. defined(TARGET_IS_FIRESTORM_RA2) || \
  2110. defined(TARGET_IS_BLIZZARD_RA1)
  2111. #define ROM_I2CMasterDataGet \
  2112. ((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[20])
  2113. #endif
  2114. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2115. defined(TARGET_IS_TEMPEST_RB1) || \
  2116. defined(TARGET_IS_TEMPEST_RC1) || \
  2117. defined(TARGET_IS_TEMPEST_RC3) || \
  2118. defined(TARGET_IS_TEMPEST_RC5) || \
  2119. defined(TARGET_IS_FIRESTORM_RA2) || \
  2120. defined(TARGET_IS_BLIZZARD_RA1)
  2121. #define ROM_I2CSlaveStatus \
  2122. ((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[21])
  2123. #endif
  2124. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2125. defined(TARGET_IS_TEMPEST_RB1) || \
  2126. defined(TARGET_IS_TEMPEST_RC1) || \
  2127. defined(TARGET_IS_TEMPEST_RC3) || \
  2128. defined(TARGET_IS_TEMPEST_RC5) || \
  2129. defined(TARGET_IS_FIRESTORM_RA2) || \
  2130. defined(TARGET_IS_BLIZZARD_RA1)
  2131. #define ROM_I2CSlaveDataPut \
  2132. ((void (*)(unsigned long ulBase, \
  2133. unsigned char ucData))ROM_I2CTABLE[22])
  2134. #endif
  2135. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2136. defined(TARGET_IS_TEMPEST_RB1) || \
  2137. defined(TARGET_IS_TEMPEST_RC1) || \
  2138. defined(TARGET_IS_TEMPEST_RC3) || \
  2139. defined(TARGET_IS_TEMPEST_RC5) || \
  2140. defined(TARGET_IS_FIRESTORM_RA2) || \
  2141. defined(TARGET_IS_BLIZZARD_RA1)
  2142. #define ROM_I2CSlaveDataGet \
  2143. ((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[23])
  2144. #endif
  2145. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2146. defined(TARGET_IS_TEMPEST_RB1) || \
  2147. defined(TARGET_IS_TEMPEST_RC1) || \
  2148. defined(TARGET_IS_TEMPEST_RC3) || \
  2149. defined(TARGET_IS_TEMPEST_RC5) || \
  2150. defined(TARGET_IS_FIRESTORM_RA2) || \
  2151. defined(TARGET_IS_BLIZZARD_RA1)
  2152. #define ROM_UpdateI2C \
  2153. ((void (*)(void))ROM_I2CTABLE[24])
  2154. #endif
  2155. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2156. defined(TARGET_IS_TEMPEST_RC3) || \
  2157. defined(TARGET_IS_TEMPEST_RC5) || \
  2158. defined(TARGET_IS_FIRESTORM_RA2) || \
  2159. defined(TARGET_IS_BLIZZARD_RA1)
  2160. #define ROM_I2CSlaveIntEnableEx \
  2161. ((void (*)(unsigned long ulBase, \
  2162. unsigned long ulIntFlags))ROM_I2CTABLE[25])
  2163. #endif
  2164. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2165. defined(TARGET_IS_TEMPEST_RC3) || \
  2166. defined(TARGET_IS_TEMPEST_RC5) || \
  2167. defined(TARGET_IS_FIRESTORM_RA2) || \
  2168. defined(TARGET_IS_BLIZZARD_RA1)
  2169. #define ROM_I2CSlaveIntDisableEx \
  2170. ((void (*)(unsigned long ulBase, \
  2171. unsigned long ulIntFlags))ROM_I2CTABLE[26])
  2172. #endif
  2173. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2174. defined(TARGET_IS_TEMPEST_RC3) || \
  2175. defined(TARGET_IS_TEMPEST_RC5) || \
  2176. defined(TARGET_IS_FIRESTORM_RA2) || \
  2177. defined(TARGET_IS_BLIZZARD_RA1)
  2178. #define ROM_I2CSlaveIntStatusEx \
  2179. ((unsigned long (*)(unsigned long ulBase, \
  2180. tBoolean bMasked))ROM_I2CTABLE[27])
  2181. #endif
  2182. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2183. defined(TARGET_IS_TEMPEST_RC3) || \
  2184. defined(TARGET_IS_TEMPEST_RC5) || \
  2185. defined(TARGET_IS_FIRESTORM_RA2) || \
  2186. defined(TARGET_IS_BLIZZARD_RA1)
  2187. #define ROM_I2CSlaveIntClearEx \
  2188. ((void (*)(unsigned long ulBase, \
  2189. unsigned long ulIntFlags))ROM_I2CTABLE[28])
  2190. #endif
  2191. #if defined(TARGET_IS_BLIZZARD_RA1)
  2192. #define ROM_I2CMasterIntEnableEx \
  2193. ((void (*)(unsigned long ulBase, \
  2194. unsigned long ulIntFlags))ROM_I2CTABLE[29])
  2195. #endif
  2196. #if defined(TARGET_IS_BLIZZARD_RA1)
  2197. #define ROM_I2CMasterIntDisableEx \
  2198. ((void (*)(unsigned long ulBase, \
  2199. unsigned long ulIntFlags))ROM_I2CTABLE[30])
  2200. #endif
  2201. #if defined(TARGET_IS_BLIZZARD_RA1)
  2202. #define ROM_I2CMasterIntStatusEx \
  2203. ((unsigned long (*)(unsigned long ulBase, \
  2204. tBoolean bMasked))ROM_I2CTABLE[31])
  2205. #endif
  2206. #if defined(TARGET_IS_BLIZZARD_RA1)
  2207. #define ROM_I2CMasterIntClearEx \
  2208. ((void (*)(unsigned long ulBase, \
  2209. unsigned long ulIntFlags))ROM_I2CTABLE[32])
  2210. #endif
  2211. #if defined(TARGET_IS_BLIZZARD_RA1)
  2212. #define ROM_I2CMasterTimeoutSet \
  2213. ((void (*)(unsigned long ulBase, \
  2214. unsigned long ulValue))ROM_I2CTABLE[33])
  2215. #endif
  2216. #if defined(TARGET_IS_BLIZZARD_RA1)
  2217. #define ROM_I2CSlaveACKOverride \
  2218. ((void (*)(unsigned long ulBase, \
  2219. tBoolean bEnable))ROM_I2CTABLE[34])
  2220. #endif
  2221. #if defined(TARGET_IS_BLIZZARD_RA1)
  2222. #define ROM_I2CSlaveACKValueSet \
  2223. ((void (*)(unsigned long ulBase, \
  2224. tBoolean bACK))ROM_I2CTABLE[35])
  2225. #endif
  2226. #if defined(TARGET_IS_BLIZZARD_RA1)
  2227. #define ROM_I2CSlaveAddressSet \
  2228. ((void (*)(unsigned long ulBase, \
  2229. unsigned char ucAddrNum, \
  2230. unsigned char ucSlaveAddr))ROM_I2CTABLE[37])
  2231. #endif
  2232. #if defined(TARGET_IS_BLIZZARD_RA1)
  2233. #define ROM_I2CMasterLineStateGet \
  2234. ((unsigned long (*)(unsigned long ulBase))ROM_I2CTABLE[38])
  2235. #endif
  2236. //*****************************************************************************
  2237. //
  2238. // Macros for calling ROM functions in the I2S API.
  2239. //
  2240. //*****************************************************************************
  2241. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2242. defined(TARGET_IS_TEMPEST_RC3) || \
  2243. defined(TARGET_IS_TEMPEST_RC5) || \
  2244. defined(TARGET_IS_FIRESTORM_RA2)
  2245. #define ROM_I2SIntStatus \
  2246. ((unsigned long (*)(unsigned long ulBase, \
  2247. tBoolean bMasked))ROM_I2STABLE[0])
  2248. #endif
  2249. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2250. defined(TARGET_IS_TEMPEST_RC3) || \
  2251. defined(TARGET_IS_TEMPEST_RC5) || \
  2252. defined(TARGET_IS_FIRESTORM_RA2)
  2253. #define ROM_I2STxEnable \
  2254. ((void (*)(unsigned long ulBase))ROM_I2STABLE[1])
  2255. #endif
  2256. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2257. defined(TARGET_IS_TEMPEST_RC3) || \
  2258. defined(TARGET_IS_TEMPEST_RC5) || \
  2259. defined(TARGET_IS_FIRESTORM_RA2)
  2260. #define ROM_I2STxDisable \
  2261. ((void (*)(unsigned long ulBase))ROM_I2STABLE[2])
  2262. #endif
  2263. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2264. defined(TARGET_IS_TEMPEST_RC3) || \
  2265. defined(TARGET_IS_TEMPEST_RC5) || \
  2266. defined(TARGET_IS_FIRESTORM_RA2)
  2267. #define ROM_I2STxDataPut \
  2268. ((void (*)(unsigned long ulBase, \
  2269. unsigned long ulData))ROM_I2STABLE[3])
  2270. #endif
  2271. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2272. defined(TARGET_IS_TEMPEST_RC3) || \
  2273. defined(TARGET_IS_TEMPEST_RC5) || \
  2274. defined(TARGET_IS_FIRESTORM_RA2)
  2275. #define ROM_I2STxDataPutNonBlocking \
  2276. ((long (*)(unsigned long ulBase, \
  2277. unsigned long ulData))ROM_I2STABLE[4])
  2278. #endif
  2279. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2280. defined(TARGET_IS_TEMPEST_RC3) || \
  2281. defined(TARGET_IS_TEMPEST_RC5) || \
  2282. defined(TARGET_IS_FIRESTORM_RA2)
  2283. #define ROM_I2STxConfigSet \
  2284. ((void (*)(unsigned long ulBase, \
  2285. unsigned long ulConfig))ROM_I2STABLE[5])
  2286. #endif
  2287. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2288. defined(TARGET_IS_TEMPEST_RC3) || \
  2289. defined(TARGET_IS_TEMPEST_RC5) || \
  2290. defined(TARGET_IS_FIRESTORM_RA2)
  2291. #define ROM_I2STxFIFOLimitSet \
  2292. ((void (*)(unsigned long ulBase, \
  2293. unsigned long ulLevel))ROM_I2STABLE[6])
  2294. #endif
  2295. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2296. defined(TARGET_IS_TEMPEST_RC3) || \
  2297. defined(TARGET_IS_TEMPEST_RC5) || \
  2298. defined(TARGET_IS_FIRESTORM_RA2)
  2299. #define ROM_I2STxFIFOLimitGet \
  2300. ((unsigned long (*)(unsigned long ulBase))ROM_I2STABLE[7])
  2301. #endif
  2302. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2303. defined(TARGET_IS_TEMPEST_RC3) || \
  2304. defined(TARGET_IS_TEMPEST_RC5) || \
  2305. defined(TARGET_IS_FIRESTORM_RA2)
  2306. #define ROM_I2STxFIFOLevelGet \
  2307. ((unsigned long (*)(unsigned long ulBase))ROM_I2STABLE[8])
  2308. #endif
  2309. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2310. defined(TARGET_IS_TEMPEST_RC3) || \
  2311. defined(TARGET_IS_TEMPEST_RC5) || \
  2312. defined(TARGET_IS_FIRESTORM_RA2)
  2313. #define ROM_I2SRxEnable \
  2314. ((void (*)(unsigned long ulBase))ROM_I2STABLE[9])
  2315. #endif
  2316. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2317. defined(TARGET_IS_TEMPEST_RC3) || \
  2318. defined(TARGET_IS_TEMPEST_RC5) || \
  2319. defined(TARGET_IS_FIRESTORM_RA2)
  2320. #define ROM_I2SRxDisable \
  2321. ((void (*)(unsigned long ulBase))ROM_I2STABLE[10])
  2322. #endif
  2323. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2324. defined(TARGET_IS_TEMPEST_RC3) || \
  2325. defined(TARGET_IS_TEMPEST_RC5) || \
  2326. defined(TARGET_IS_FIRESTORM_RA2)
  2327. #define ROM_I2SRxDataGet \
  2328. ((void (*)(unsigned long ulBase, \
  2329. unsigned long *pulData))ROM_I2STABLE[11])
  2330. #endif
  2331. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2332. defined(TARGET_IS_TEMPEST_RC3) || \
  2333. defined(TARGET_IS_TEMPEST_RC5) || \
  2334. defined(TARGET_IS_FIRESTORM_RA2)
  2335. #define ROM_I2SRxDataGetNonBlocking \
  2336. ((long (*)(unsigned long ulBase, \
  2337. unsigned long *pulData))ROM_I2STABLE[12])
  2338. #endif
  2339. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2340. defined(TARGET_IS_TEMPEST_RC3) || \
  2341. defined(TARGET_IS_TEMPEST_RC5) || \
  2342. defined(TARGET_IS_FIRESTORM_RA2)
  2343. #define ROM_I2SRxConfigSet \
  2344. ((void (*)(unsigned long ulBase, \
  2345. unsigned long ulConfig))ROM_I2STABLE[13])
  2346. #endif
  2347. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2348. defined(TARGET_IS_TEMPEST_RC3) || \
  2349. defined(TARGET_IS_TEMPEST_RC5) || \
  2350. defined(TARGET_IS_FIRESTORM_RA2)
  2351. #define ROM_I2SRxFIFOLimitSet \
  2352. ((void (*)(unsigned long ulBase, \
  2353. unsigned long ulLevel))ROM_I2STABLE[14])
  2354. #endif
  2355. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2356. defined(TARGET_IS_TEMPEST_RC3) || \
  2357. defined(TARGET_IS_TEMPEST_RC5) || \
  2358. defined(TARGET_IS_FIRESTORM_RA2)
  2359. #define ROM_I2SRxFIFOLimitGet \
  2360. ((unsigned long (*)(unsigned long ulBase))ROM_I2STABLE[15])
  2361. #endif
  2362. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2363. defined(TARGET_IS_TEMPEST_RC3) || \
  2364. defined(TARGET_IS_TEMPEST_RC5) || \
  2365. defined(TARGET_IS_FIRESTORM_RA2)
  2366. #define ROM_I2SRxFIFOLevelGet \
  2367. ((unsigned long (*)(unsigned long ulBase))ROM_I2STABLE[16])
  2368. #endif
  2369. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2370. defined(TARGET_IS_TEMPEST_RC3) || \
  2371. defined(TARGET_IS_TEMPEST_RC5) || \
  2372. defined(TARGET_IS_FIRESTORM_RA2)
  2373. #define ROM_I2STxRxEnable \
  2374. ((void (*)(unsigned long ulBase))ROM_I2STABLE[17])
  2375. #endif
  2376. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2377. defined(TARGET_IS_TEMPEST_RC3) || \
  2378. defined(TARGET_IS_TEMPEST_RC5) || \
  2379. defined(TARGET_IS_FIRESTORM_RA2)
  2380. #define ROM_I2STxRxDisable \
  2381. ((void (*)(unsigned long ulBase))ROM_I2STABLE[18])
  2382. #endif
  2383. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2384. defined(TARGET_IS_TEMPEST_RC3) || \
  2385. defined(TARGET_IS_TEMPEST_RC5) || \
  2386. defined(TARGET_IS_FIRESTORM_RA2)
  2387. #define ROM_I2STxRxConfigSet \
  2388. ((void (*)(unsigned long ulBase, \
  2389. unsigned long ulConfig))ROM_I2STABLE[19])
  2390. #endif
  2391. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2392. defined(TARGET_IS_TEMPEST_RC3) || \
  2393. defined(TARGET_IS_TEMPEST_RC5) || \
  2394. defined(TARGET_IS_FIRESTORM_RA2)
  2395. #define ROM_I2SMasterClockSelect \
  2396. ((void (*)(unsigned long ulBase, \
  2397. unsigned long ulMClock))ROM_I2STABLE[20])
  2398. #endif
  2399. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2400. defined(TARGET_IS_TEMPEST_RC3) || \
  2401. defined(TARGET_IS_TEMPEST_RC5) || \
  2402. defined(TARGET_IS_FIRESTORM_RA2)
  2403. #define ROM_I2SIntEnable \
  2404. ((void (*)(unsigned long ulBase, \
  2405. unsigned long ulIntFlags))ROM_I2STABLE[21])
  2406. #endif
  2407. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2408. defined(TARGET_IS_TEMPEST_RC3) || \
  2409. defined(TARGET_IS_TEMPEST_RC5) || \
  2410. defined(TARGET_IS_FIRESTORM_RA2)
  2411. #define ROM_I2SIntDisable \
  2412. ((void (*)(unsigned long ulBase, \
  2413. unsigned long ulIntFlags))ROM_I2STABLE[22])
  2414. #endif
  2415. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2416. defined(TARGET_IS_TEMPEST_RC3) || \
  2417. defined(TARGET_IS_TEMPEST_RC5) || \
  2418. defined(TARGET_IS_FIRESTORM_RA2)
  2419. #define ROM_I2SIntClear \
  2420. ((void (*)(unsigned long ulBase, \
  2421. unsigned long ulIntFlags))ROM_I2STABLE[23])
  2422. #endif
  2423. //*****************************************************************************
  2424. //
  2425. // Macros for calling ROM functions in the Interrupt API.
  2426. //
  2427. //*****************************************************************************
  2428. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2429. defined(TARGET_IS_TEMPEST_RB1) || \
  2430. defined(TARGET_IS_TEMPEST_RC1) || \
  2431. defined(TARGET_IS_TEMPEST_RC3) || \
  2432. defined(TARGET_IS_TEMPEST_RC5) || \
  2433. defined(TARGET_IS_FIRESTORM_RA2) || \
  2434. defined(TARGET_IS_BLIZZARD_RA1)
  2435. #define ROM_IntEnable \
  2436. ((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[0])
  2437. #endif
  2438. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2439. defined(TARGET_IS_TEMPEST_RC1) || \
  2440. defined(TARGET_IS_TEMPEST_RC3) || \
  2441. defined(TARGET_IS_TEMPEST_RC5) || \
  2442. defined(TARGET_IS_FIRESTORM_RA2) || \
  2443. defined(TARGET_IS_BLIZZARD_RA1)
  2444. #define ROM_IntMasterEnable \
  2445. ((tBoolean (*)(void))ROM_INTERRUPTTABLE[1])
  2446. #endif
  2447. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2448. defined(TARGET_IS_TEMPEST_RC1) || \
  2449. defined(TARGET_IS_TEMPEST_RC3) || \
  2450. defined(TARGET_IS_TEMPEST_RC5) || \
  2451. defined(TARGET_IS_FIRESTORM_RA2) || \
  2452. defined(TARGET_IS_BLIZZARD_RA1)
  2453. #define ROM_IntMasterDisable \
  2454. ((tBoolean (*)(void))ROM_INTERRUPTTABLE[2])
  2455. #endif
  2456. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2457. defined(TARGET_IS_TEMPEST_RB1) || \
  2458. defined(TARGET_IS_TEMPEST_RC1) || \
  2459. defined(TARGET_IS_TEMPEST_RC3) || \
  2460. defined(TARGET_IS_TEMPEST_RC5) || \
  2461. defined(TARGET_IS_FIRESTORM_RA2) || \
  2462. defined(TARGET_IS_BLIZZARD_RA1)
  2463. #define ROM_IntDisable \
  2464. ((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[3])
  2465. #endif
  2466. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2467. defined(TARGET_IS_TEMPEST_RB1) || \
  2468. defined(TARGET_IS_TEMPEST_RC1) || \
  2469. defined(TARGET_IS_TEMPEST_RC3) || \
  2470. defined(TARGET_IS_TEMPEST_RC5) || \
  2471. defined(TARGET_IS_FIRESTORM_RA2) || \
  2472. defined(TARGET_IS_BLIZZARD_RA1)
  2473. #define ROM_IntPriorityGroupingSet \
  2474. ((void (*)(unsigned long ulBits))ROM_INTERRUPTTABLE[4])
  2475. #endif
  2476. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2477. defined(TARGET_IS_TEMPEST_RB1) || \
  2478. defined(TARGET_IS_TEMPEST_RC1) || \
  2479. defined(TARGET_IS_TEMPEST_RC3) || \
  2480. defined(TARGET_IS_TEMPEST_RC5) || \
  2481. defined(TARGET_IS_FIRESTORM_RA2) || \
  2482. defined(TARGET_IS_BLIZZARD_RA1)
  2483. #define ROM_IntPriorityGroupingGet \
  2484. ((unsigned long (*)(void))ROM_INTERRUPTTABLE[5])
  2485. #endif
  2486. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2487. defined(TARGET_IS_TEMPEST_RB1) || \
  2488. defined(TARGET_IS_TEMPEST_RC1) || \
  2489. defined(TARGET_IS_TEMPEST_RC3) || \
  2490. defined(TARGET_IS_TEMPEST_RC5) || \
  2491. defined(TARGET_IS_FIRESTORM_RA2) || \
  2492. defined(TARGET_IS_BLIZZARD_RA1)
  2493. #define ROM_IntPrioritySet \
  2494. ((void (*)(unsigned long ulInterrupt, \
  2495. unsigned char ucPriority))ROM_INTERRUPTTABLE[6])
  2496. #endif
  2497. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2498. defined(TARGET_IS_TEMPEST_RB1) || \
  2499. defined(TARGET_IS_TEMPEST_RC1) || \
  2500. defined(TARGET_IS_TEMPEST_RC3) || \
  2501. defined(TARGET_IS_TEMPEST_RC5) || \
  2502. defined(TARGET_IS_FIRESTORM_RA2) || \
  2503. defined(TARGET_IS_BLIZZARD_RA1)
  2504. #define ROM_IntPriorityGet \
  2505. ((long (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[7])
  2506. #endif
  2507. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2508. defined(TARGET_IS_TEMPEST_RC3) || \
  2509. defined(TARGET_IS_TEMPEST_RC5) || \
  2510. defined(TARGET_IS_FIRESTORM_RA2) || \
  2511. defined(TARGET_IS_BLIZZARD_RA1)
  2512. #define ROM_IntPendSet \
  2513. ((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[8])
  2514. #endif
  2515. #if defined(TARGET_IS_TEMPEST_RC1) || \
  2516. defined(TARGET_IS_TEMPEST_RC3) || \
  2517. defined(TARGET_IS_TEMPEST_RC5) || \
  2518. defined(TARGET_IS_FIRESTORM_RA2) || \
  2519. defined(TARGET_IS_BLIZZARD_RA1)
  2520. #define ROM_IntPendClear \
  2521. ((void (*)(unsigned long ulInterrupt))ROM_INTERRUPTTABLE[9])
  2522. #endif
  2523. #if defined(TARGET_IS_TEMPEST_RC5) || \
  2524. defined(TARGET_IS_FIRESTORM_RA2) || \
  2525. defined(TARGET_IS_BLIZZARD_RA1)
  2526. #define ROM_IntPriorityMaskSet \
  2527. ((void (*)(unsigned long ulPriorityMask))ROM_INTERRUPTTABLE[10])
  2528. #endif
  2529. #if defined(TARGET_IS_TEMPEST_RC5) || \
  2530. defined(TARGET_IS_FIRESTORM_RA2) || \
  2531. defined(TARGET_IS_BLIZZARD_RA1)
  2532. #define ROM_IntPriorityMaskGet \
  2533. ((unsigned long (*)(void))ROM_INTERRUPTTABLE[11])
  2534. #endif
  2535. //*****************************************************************************
  2536. //
  2537. // Macros for calling ROM functions in the LPC API.
  2538. //
  2539. //*****************************************************************************
  2540. #if defined(TARGET_IS_BLIZZARD_RA1)
  2541. #define ROM_LPCIntClear \
  2542. ((void (*)(unsigned long ulBase, \
  2543. unsigned long ulIntFlags))ROM_LPCTABLE[0])
  2544. #endif
  2545. #if defined(TARGET_IS_BLIZZARD_RA1)
  2546. #define ROM_LPCByteRead \
  2547. ((unsigned char (*)(unsigned long ulBase, \
  2548. unsigned long ulOffset))ROM_LPCTABLE[1])
  2549. #endif
  2550. #if defined(TARGET_IS_BLIZZARD_RA1)
  2551. #define ROM_LPCByteWrite \
  2552. ((void (*)(unsigned long ulBase, \
  2553. unsigned long ulOffset, \
  2554. unsigned char ucData))ROM_LPCTABLE[2])
  2555. #endif
  2556. #if defined(TARGET_IS_BLIZZARD_RA1)
  2557. #define ROM_LPCChannelConfigCOMxSet \
  2558. ((void (*)(unsigned long ulBase, \
  2559. unsigned long ulChannel, \
  2560. unsigned long ulConfig, \
  2561. unsigned long ulAddress, \
  2562. unsigned long ulOffset, \
  2563. unsigned long ulCOMxMode))ROM_LPCTABLE[3])
  2564. #endif
  2565. #if defined(TARGET_IS_BLIZZARD_RA1)
  2566. #define ROM_LPCChannelConfigGet \
  2567. ((unsigned long (*)(unsigned long ulBase, \
  2568. unsigned long ulChannel, \
  2569. unsigned long *pulAddress, \
  2570. unsigned long *pulOffset, \
  2571. unsigned long *pulCOMxMode))ROM_LPCTABLE[4])
  2572. #endif
  2573. #if defined(TARGET_IS_BLIZZARD_RA1)
  2574. #define ROM_LPCChannelConfigEPSet \
  2575. ((void (*)(unsigned long ulBase, \
  2576. unsigned long ulChannel, \
  2577. unsigned long ulConfig, \
  2578. unsigned long ulAddress, \
  2579. unsigned long ulOffset))ROM_LPCTABLE[5])
  2580. #endif
  2581. #if defined(TARGET_IS_BLIZZARD_RA1)
  2582. #define ROM_LPCChannelConfigMBSet \
  2583. ((void (*)(unsigned long ulBase, \
  2584. unsigned long ulChannel, \
  2585. unsigned long ulConfig, \
  2586. unsigned long ulAddress, \
  2587. unsigned long ulOffset))ROM_LPCTABLE[6])
  2588. #endif
  2589. #if defined(TARGET_IS_BLIZZARD_RA1)
  2590. #define ROM_LPCChannelDMAConfigGet \
  2591. ((unsigned long (*)(unsigned long ulBase))ROM_LPCTABLE[7])
  2592. #endif
  2593. #if defined(TARGET_IS_BLIZZARD_RA1)
  2594. #define ROM_LPCChannelDMAConfigSet \
  2595. ((void (*)(unsigned long ulBase, \
  2596. unsigned long ulConfig, \
  2597. unsigned long ulMask))ROM_LPCTABLE[8])
  2598. #endif
  2599. #if defined(TARGET_IS_BLIZZARD_RA1)
  2600. #define ROM_LPCChannelDisable \
  2601. ((void (*)(unsigned long ulBase, \
  2602. unsigned long ulChannel))ROM_LPCTABLE[9])
  2603. #endif
  2604. #if defined(TARGET_IS_BLIZZARD_RA1)
  2605. #define ROM_LPCChannelEnable \
  2606. ((void (*)(unsigned long ulBase, \
  2607. unsigned long ulChannel))ROM_LPCTABLE[10])
  2608. #endif
  2609. #if defined(TARGET_IS_BLIZZARD_RA1)
  2610. #define ROM_LPCChannelStatusClear \
  2611. ((void (*)(unsigned long ulBase, \
  2612. unsigned long ulChannel, \
  2613. unsigned long ulStatus))ROM_LPCTABLE[11])
  2614. #endif
  2615. #if defined(TARGET_IS_BLIZZARD_RA1)
  2616. #define ROM_LPCChannelStatusGet \
  2617. ((unsigned long (*)(unsigned long ulBase, \
  2618. unsigned long ulChannel))ROM_LPCTABLE[12])
  2619. #endif
  2620. #if defined(TARGET_IS_BLIZZARD_RA1)
  2621. #define ROM_LPCChannelStatusSet \
  2622. ((void (*)(unsigned long ulBase, \
  2623. unsigned long ulChannel, \
  2624. unsigned long ulStatus))ROM_LPCTABLE[13])
  2625. #endif
  2626. #if defined(TARGET_IS_BLIZZARD_RA1)
  2627. #define ROM_LPCCOMxIntClear \
  2628. ((void (*)(unsigned long ulBase, \
  2629. unsigned long ulIntFlags))ROM_LPCTABLE[14])
  2630. #endif
  2631. #if defined(TARGET_IS_BLIZZARD_RA1)
  2632. #define ROM_LPCCOMxIntDisable \
  2633. ((void (*)(unsigned long ulBase, \
  2634. unsigned long ulIntFlags))ROM_LPCTABLE[15])
  2635. #endif
  2636. #if defined(TARGET_IS_BLIZZARD_RA1)
  2637. #define ROM_LPCCOMxIntEnable \
  2638. ((void (*)(unsigned long ulBase, \
  2639. unsigned long ulIntFlags))ROM_LPCTABLE[16])
  2640. #endif
  2641. #if defined(TARGET_IS_BLIZZARD_RA1)
  2642. #define ROM_LPCCOMxIntStatus \
  2643. ((unsigned long (*)(unsigned long ulBase, \
  2644. tBoolean bMasked))ROM_LPCTABLE[17])
  2645. #endif
  2646. #if defined(TARGET_IS_BLIZZARD_RA1)
  2647. #define ROM_LPCConfigGet \
  2648. ((unsigned long (*)(unsigned long ulBase))ROM_LPCTABLE[18])
  2649. #endif
  2650. #if defined(TARGET_IS_BLIZZARD_RA1)
  2651. #define ROM_LPCConfigSet \
  2652. ((void (*)(unsigned long ulBase, \
  2653. unsigned long ulConfig))ROM_LPCTABLE[19])
  2654. #endif
  2655. #if defined(TARGET_IS_BLIZZARD_RA1)
  2656. #define ROM_LPCHalfWordRead \
  2657. ((unsigned short (*)(unsigned long ulBase, \
  2658. unsigned long ulOffset))ROM_LPCTABLE[20])
  2659. #endif
  2660. #if defined(TARGET_IS_BLIZZARD_RA1)
  2661. #define ROM_LPCHalfWordWrite \
  2662. ((void (*)(unsigned long ulBase, \
  2663. unsigned long ulOffset, \
  2664. unsigned short usData))ROM_LPCTABLE[21])
  2665. #endif
  2666. #if defined(TARGET_IS_BLIZZARD_RA1)
  2667. #define ROM_LPCIRQClear \
  2668. ((void (*)(unsigned long ulBase, \
  2669. unsigned long ulIRQ))ROM_LPCTABLE[22])
  2670. #endif
  2671. #if defined(TARGET_IS_BLIZZARD_RA1)
  2672. #define ROM_LPCIRQConfig \
  2673. ((void (*)(unsigned long ulBase, \
  2674. tBoolean bIRQPulse, \
  2675. tBoolean bIRQOnChange))ROM_LPCTABLE[23])
  2676. #endif
  2677. #if defined(TARGET_IS_BLIZZARD_RA1)
  2678. #define ROM_LPCIRQGet \
  2679. ((unsigned long (*)(unsigned long ulBase))ROM_LPCTABLE[24])
  2680. #endif
  2681. #if defined(TARGET_IS_BLIZZARD_RA1)
  2682. #define ROM_LPCIRQSend \
  2683. ((void (*)(unsigned long ulBase))ROM_LPCTABLE[25])
  2684. #endif
  2685. #if defined(TARGET_IS_BLIZZARD_RA1)
  2686. #define ROM_LPCIRQSet \
  2687. ((void (*)(unsigned long ulBase, \
  2688. unsigned long ulIRQ))ROM_LPCTABLE[26])
  2689. #endif
  2690. #if defined(TARGET_IS_BLIZZARD_RA1)
  2691. #define ROM_LPCIntDisable \
  2692. ((void (*)(unsigned long ulBase, \
  2693. unsigned long ulIntFlags))ROM_LPCTABLE[27])
  2694. #endif
  2695. #if defined(TARGET_IS_BLIZZARD_RA1)
  2696. #define ROM_LPCIntEnable \
  2697. ((void (*)(unsigned long ulBase, \
  2698. unsigned long ulIntFlags))ROM_LPCTABLE[28])
  2699. #endif
  2700. #if defined(TARGET_IS_BLIZZARD_RA1)
  2701. #define ROM_LPCIntStatus \
  2702. ((unsigned long (*)(unsigned long ulBase, \
  2703. tBoolean bMasked))ROM_LPCTABLE[29])
  2704. #endif
  2705. #if defined(TARGET_IS_BLIZZARD_RA1)
  2706. #define ROM_LPCSCIAssert \
  2707. ((void (*)(unsigned long ulBase, \
  2708. unsigned long ulCount))ROM_LPCTABLE[30])
  2709. #endif
  2710. #if defined(TARGET_IS_BLIZZARD_RA1)
  2711. #define ROM_LPCStatusGet \
  2712. ((unsigned long (*)(unsigned long ulBase, \
  2713. unsigned long *pulCount, \
  2714. unsigned long *pulPoolSize))ROM_LPCTABLE[31])
  2715. #endif
  2716. #if defined(TARGET_IS_BLIZZARD_RA1)
  2717. #define ROM_LPCWordRead \
  2718. ((unsigned long (*)(unsigned long ulBase, \
  2719. unsigned long ulOffset))ROM_LPCTABLE[32])
  2720. #endif
  2721. #if defined(TARGET_IS_BLIZZARD_RA1)
  2722. #define ROM_LPCWordWrite \
  2723. ((void (*)(unsigned long ulBase, \
  2724. unsigned long ulOffset, \
  2725. unsigned long ulData))ROM_LPCTABLE[33])
  2726. #endif
  2727. #if defined(TARGET_IS_BLIZZARD_RA1)
  2728. #define ROM_LPCChannelPoolAddressGet \
  2729. ((unsigned long (*)(unsigned long ulBase, \
  2730. unsigned long ulChannel))ROM_LPCTABLE[34])
  2731. #endif
  2732. #if defined(TARGET_IS_BLIZZARD_RA1)
  2733. #define ROM_LPCStatusBlockAddressGet \
  2734. ((unsigned (*)(unsigned long ulBase))ROM_LPCTABLE[35])
  2735. #endif
  2736. #if defined(TARGET_IS_BLIZZARD_RA1)
  2737. #define ROM_LPCStatusBlockAddressSet \
  2738. ((void (*)(unsigned long ulBase, \
  2739. unsigned long ulAddress, \
  2740. tBoolean bEnabled))ROM_LPCTABLE[36])
  2741. #endif
  2742. //*****************************************************************************
  2743. //
  2744. // Macros for calling ROM functions in the MPU API.
  2745. //
  2746. //*****************************************************************************
  2747. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2748. defined(TARGET_IS_TEMPEST_RC1) || \
  2749. defined(TARGET_IS_TEMPEST_RC3) || \
  2750. defined(TARGET_IS_TEMPEST_RC5) || \
  2751. defined(TARGET_IS_FIRESTORM_RA2) || \
  2752. defined(TARGET_IS_BLIZZARD_RA1)
  2753. #define ROM_MPUEnable \
  2754. ((void (*)(unsigned long ulMPUConfig))ROM_MPUTABLE[0])
  2755. #endif
  2756. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2757. defined(TARGET_IS_TEMPEST_RC1) || \
  2758. defined(TARGET_IS_TEMPEST_RC3) || \
  2759. defined(TARGET_IS_TEMPEST_RC5) || \
  2760. defined(TARGET_IS_FIRESTORM_RA2) || \
  2761. defined(TARGET_IS_BLIZZARD_RA1)
  2762. #define ROM_MPUDisable \
  2763. ((void (*)(void))ROM_MPUTABLE[1])
  2764. #endif
  2765. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2766. defined(TARGET_IS_TEMPEST_RC1) || \
  2767. defined(TARGET_IS_TEMPEST_RC3) || \
  2768. defined(TARGET_IS_TEMPEST_RC5) || \
  2769. defined(TARGET_IS_FIRESTORM_RA2) || \
  2770. defined(TARGET_IS_BLIZZARD_RA1)
  2771. #define ROM_MPURegionCountGet \
  2772. ((unsigned long (*)(void))ROM_MPUTABLE[2])
  2773. #endif
  2774. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2775. defined(TARGET_IS_TEMPEST_RC1) || \
  2776. defined(TARGET_IS_TEMPEST_RC3) || \
  2777. defined(TARGET_IS_TEMPEST_RC5) || \
  2778. defined(TARGET_IS_FIRESTORM_RA2) || \
  2779. defined(TARGET_IS_BLIZZARD_RA1)
  2780. #define ROM_MPURegionEnable \
  2781. ((void (*)(unsigned long ulRegion))ROM_MPUTABLE[3])
  2782. #endif
  2783. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2784. defined(TARGET_IS_TEMPEST_RC1) || \
  2785. defined(TARGET_IS_TEMPEST_RC3) || \
  2786. defined(TARGET_IS_TEMPEST_RC5) || \
  2787. defined(TARGET_IS_FIRESTORM_RA2) || \
  2788. defined(TARGET_IS_BLIZZARD_RA1)
  2789. #define ROM_MPURegionDisable \
  2790. ((void (*)(unsigned long ulRegion))ROM_MPUTABLE[4])
  2791. #endif
  2792. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2793. defined(TARGET_IS_TEMPEST_RC1) || \
  2794. defined(TARGET_IS_TEMPEST_RC3) || \
  2795. defined(TARGET_IS_TEMPEST_RC5) || \
  2796. defined(TARGET_IS_FIRESTORM_RA2) || \
  2797. defined(TARGET_IS_BLIZZARD_RA1)
  2798. #define ROM_MPURegionSet \
  2799. ((void (*)(unsigned long ulRegion, \
  2800. unsigned long ulAddr, \
  2801. unsigned long ulFlags))ROM_MPUTABLE[5])
  2802. #endif
  2803. #if defined(TARGET_IS_TEMPEST_RB1) || \
  2804. defined(TARGET_IS_TEMPEST_RC1) || \
  2805. defined(TARGET_IS_TEMPEST_RC3) || \
  2806. defined(TARGET_IS_TEMPEST_RC5) || \
  2807. defined(TARGET_IS_FIRESTORM_RA2) || \
  2808. defined(TARGET_IS_BLIZZARD_RA1)
  2809. #define ROM_MPURegionGet \
  2810. ((void (*)(unsigned long ulRegion, \
  2811. unsigned long *pulAddr, \
  2812. unsigned long *pulFlags))ROM_MPUTABLE[6])
  2813. #endif
  2814. //*****************************************************************************
  2815. //
  2816. // Macros for calling ROM functions in the PECI API.
  2817. //
  2818. //*****************************************************************************
  2819. #if defined(TARGET_IS_BLIZZARD_RA1)
  2820. #define ROM_PECIIntClear \
  2821. ((void (*)(unsigned long ulBase, \
  2822. unsigned long ulIntFlags))ROM_PECITABLE[0])
  2823. #endif
  2824. #if defined(TARGET_IS_BLIZZARD_RA1)
  2825. #define ROM_PECIAdvCmdSend \
  2826. ((void (*)(unsigned long ulBase, \
  2827. unsigned char ucCmd, \
  2828. unsigned char ucHidRe, \
  2829. unsigned char ucDomain, \
  2830. unsigned char ucProcAdd, \
  2831. unsigned long ulArg, \
  2832. unsigned char ucSize, \
  2833. unsigned long ulData0, \
  2834. unsigned long ulData1))ROM_PECITABLE[1])
  2835. #endif
  2836. #if defined(TARGET_IS_BLIZZARD_RA1)
  2837. #define ROM_PECIAdvCmdSendNonBlocking \
  2838. ((unsigned long (*)(unsigned long ulBase, \
  2839. unsigned char ucCmd, \
  2840. unsigned char ucHidRe, \
  2841. unsigned char ucDomain, \
  2842. unsigned char ucProcAdd, \
  2843. unsigned long ulArg, \
  2844. unsigned char ucSize, \
  2845. unsigned long ulData0, \
  2846. unsigned long ulData1))ROM_PECITABLE[2])
  2847. #endif
  2848. #if defined(TARGET_IS_BLIZZARD_RA1)
  2849. #define ROM_PECIAdvCmdStatusGet \
  2850. ((unsigned long (*)(unsigned long ulBase, \
  2851. unsigned long *pulData0, \
  2852. unsigned long *pulData1))ROM_PECITABLE[3])
  2853. #endif
  2854. #if defined(TARGET_IS_BLIZZARD_RA1)
  2855. #define ROM_PECIConfigGet \
  2856. ((void (*)(unsigned long ulBase, \
  2857. unsigned long ulPECIClk, \
  2858. unsigned long *pulBaud, \
  2859. unsigned long *pulPoll, \
  2860. unsigned long *pulOffset, \
  2861. unsigned long *pulRetry))ROM_PECITABLE[4])
  2862. #endif
  2863. #if defined(TARGET_IS_BLIZZARD_RA1)
  2864. #define ROM_PECIConfigSet \
  2865. ((void (*)(unsigned long ulBase, \
  2866. unsigned long ulPECIClk, \
  2867. unsigned long ulBaud, \
  2868. unsigned long ulPoll, \
  2869. unsigned long ulOffset, \
  2870. unsigned long ulRetry))ROM_PECITABLE[5])
  2871. #endif
  2872. #if defined(TARGET_IS_BLIZZARD_RA1)
  2873. #define ROM_PECIDomainMaxReadClear \
  2874. ((void (*)(unsigned long ulBase, \
  2875. unsigned long ulDomain))ROM_PECITABLE[6])
  2876. #endif
  2877. #if defined(TARGET_IS_BLIZZARD_RA1)
  2878. #define ROM_PECIDomainValueClear \
  2879. ((void (*)(unsigned long ulBase, \
  2880. unsigned long ulDomain))ROM_PECITABLE[7])
  2881. #endif
  2882. #if defined(TARGET_IS_BLIZZARD_RA1)
  2883. #define ROM_PECIDomainConfigGet \
  2884. ((void (*)(unsigned long ulBase, \
  2885. unsigned long ulDomain, \
  2886. unsigned long *pulHigh, \
  2887. unsigned long *pulLow))ROM_PECITABLE[8])
  2888. #endif
  2889. #if defined(TARGET_IS_BLIZZARD_RA1)
  2890. #define ROM_PECIDomainConfigSet \
  2891. ((void (*)(unsigned long ulBase, \
  2892. unsigned long ulDomain, \
  2893. unsigned long ulHigh, \
  2894. unsigned long ulLow))ROM_PECITABLE[9])
  2895. #endif
  2896. #if defined(TARGET_IS_BLIZZARD_RA1)
  2897. #define ROM_PECIDomainDisable \
  2898. ((void (*)(unsigned long ulBase, \
  2899. unsigned long ulDomain))ROM_PECITABLE[10])
  2900. #endif
  2901. #if defined(TARGET_IS_BLIZZARD_RA1)
  2902. #define ROM_PECIDomainEnable \
  2903. ((void (*)(unsigned long ulBase, \
  2904. unsigned long ulDomain))ROM_PECITABLE[11])
  2905. #endif
  2906. #if defined(TARGET_IS_BLIZZARD_RA1)
  2907. #define ROM_PECIDomainMaxReadGet \
  2908. ((unsigned long (*)(unsigned long ulBase, \
  2909. unsigned long ulDomain))ROM_PECITABLE[12])
  2910. #endif
  2911. #if defined(TARGET_IS_BLIZZARD_RA1)
  2912. #define ROM_PECIDomainValueGet \
  2913. ((unsigned long (*)(unsigned long ulBase, \
  2914. unsigned long ulDomain))ROM_PECITABLE[13])
  2915. #endif
  2916. #if defined(TARGET_IS_BLIZZARD_RA1)
  2917. #define ROM_PECIIntDisable \
  2918. ((void (*)(unsigned long ulBase, \
  2919. unsigned long ulIntFlags))ROM_PECITABLE[14])
  2920. #endif
  2921. #if defined(TARGET_IS_BLIZZARD_RA1)
  2922. #define ROM_PECIIntEnable \
  2923. ((void (*)(unsigned long ulBase, \
  2924. unsigned long ulIntFlags, \
  2925. unsigned long ulIntMode))ROM_PECITABLE[15])
  2926. #endif
  2927. #if defined(TARGET_IS_BLIZZARD_RA1)
  2928. #define ROM_PECIIntStatus \
  2929. ((unsigned long (*)(unsigned long ulBase, \
  2930. tBoolean bMasked))ROM_PECITABLE[16])
  2931. #endif
  2932. #if defined(TARGET_IS_BLIZZARD_RA1)
  2933. #define ROM_PECIBypassEnable \
  2934. ((void (*)(unsigned long ulBase))ROM_PECITABLE[17])
  2935. #endif
  2936. #if defined(TARGET_IS_BLIZZARD_RA1)
  2937. #define ROM_PECIBypassDisable \
  2938. ((void (*)(unsigned long ulBase))ROM_PECITABLE[18])
  2939. #endif
  2940. //*****************************************************************************
  2941. //
  2942. // Macros for calling ROM functions in the PWM API.
  2943. //
  2944. //*****************************************************************************
  2945. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2946. defined(TARGET_IS_TEMPEST_RB1) || \
  2947. defined(TARGET_IS_TEMPEST_RC1) || \
  2948. defined(TARGET_IS_TEMPEST_RC3) || \
  2949. defined(TARGET_IS_TEMPEST_RC5) || \
  2950. defined(TARGET_IS_FIRESTORM_RA2) || \
  2951. defined(TARGET_IS_BLIZZARD_RA1)
  2952. #define ROM_PWMPulseWidthSet \
  2953. ((void (*)(unsigned long ulBase, \
  2954. unsigned long ulPWMOut, \
  2955. unsigned long ulWidth))ROM_PWMTABLE[0])
  2956. #endif
  2957. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2958. defined(TARGET_IS_TEMPEST_RB1) || \
  2959. defined(TARGET_IS_TEMPEST_RC1) || \
  2960. defined(TARGET_IS_TEMPEST_RC3) || \
  2961. defined(TARGET_IS_TEMPEST_RC5) || \
  2962. defined(TARGET_IS_FIRESTORM_RA2) || \
  2963. defined(TARGET_IS_BLIZZARD_RA1)
  2964. #define ROM_PWMGenConfigure \
  2965. ((void (*)(unsigned long ulBase, \
  2966. unsigned long ulGen, \
  2967. unsigned long ulConfig))ROM_PWMTABLE[1])
  2968. #endif
  2969. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2970. defined(TARGET_IS_TEMPEST_RB1) || \
  2971. defined(TARGET_IS_TEMPEST_RC1) || \
  2972. defined(TARGET_IS_TEMPEST_RC3) || \
  2973. defined(TARGET_IS_TEMPEST_RC5) || \
  2974. defined(TARGET_IS_FIRESTORM_RA2) || \
  2975. defined(TARGET_IS_BLIZZARD_RA1)
  2976. #define ROM_PWMGenPeriodSet \
  2977. ((void (*)(unsigned long ulBase, \
  2978. unsigned long ulGen, \
  2979. unsigned long ulPeriod))ROM_PWMTABLE[2])
  2980. #endif
  2981. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2982. defined(TARGET_IS_TEMPEST_RB1) || \
  2983. defined(TARGET_IS_TEMPEST_RC1) || \
  2984. defined(TARGET_IS_TEMPEST_RC3) || \
  2985. defined(TARGET_IS_TEMPEST_RC5) || \
  2986. defined(TARGET_IS_FIRESTORM_RA2) || \
  2987. defined(TARGET_IS_BLIZZARD_RA1)
  2988. #define ROM_PWMGenPeriodGet \
  2989. ((unsigned long (*)(unsigned long ulBase, \
  2990. unsigned long ulGen))ROM_PWMTABLE[3])
  2991. #endif
  2992. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  2993. defined(TARGET_IS_TEMPEST_RB1) || \
  2994. defined(TARGET_IS_TEMPEST_RC1) || \
  2995. defined(TARGET_IS_TEMPEST_RC3) || \
  2996. defined(TARGET_IS_TEMPEST_RC5) || \
  2997. defined(TARGET_IS_FIRESTORM_RA2) || \
  2998. defined(TARGET_IS_BLIZZARD_RA1)
  2999. #define ROM_PWMGenEnable \
  3000. ((void (*)(unsigned long ulBase, \
  3001. unsigned long ulGen))ROM_PWMTABLE[4])
  3002. #endif
  3003. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3004. defined(TARGET_IS_TEMPEST_RB1) || \
  3005. defined(TARGET_IS_TEMPEST_RC1) || \
  3006. defined(TARGET_IS_TEMPEST_RC3) || \
  3007. defined(TARGET_IS_TEMPEST_RC5) || \
  3008. defined(TARGET_IS_FIRESTORM_RA2) || \
  3009. defined(TARGET_IS_BLIZZARD_RA1)
  3010. #define ROM_PWMGenDisable \
  3011. ((void (*)(unsigned long ulBase, \
  3012. unsigned long ulGen))ROM_PWMTABLE[5])
  3013. #endif
  3014. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3015. defined(TARGET_IS_TEMPEST_RB1) || \
  3016. defined(TARGET_IS_TEMPEST_RC1) || \
  3017. defined(TARGET_IS_TEMPEST_RC3) || \
  3018. defined(TARGET_IS_TEMPEST_RC5) || \
  3019. defined(TARGET_IS_FIRESTORM_RA2) || \
  3020. defined(TARGET_IS_BLIZZARD_RA1)
  3021. #define ROM_PWMPulseWidthGet \
  3022. ((unsigned long (*)(unsigned long ulBase, \
  3023. unsigned long ulPWMOut))ROM_PWMTABLE[6])
  3024. #endif
  3025. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3026. defined(TARGET_IS_TEMPEST_RB1) || \
  3027. defined(TARGET_IS_TEMPEST_RC1) || \
  3028. defined(TARGET_IS_TEMPEST_RC3) || \
  3029. defined(TARGET_IS_TEMPEST_RC5) || \
  3030. defined(TARGET_IS_FIRESTORM_RA2) || \
  3031. defined(TARGET_IS_BLIZZARD_RA1)
  3032. #define ROM_PWMDeadBandEnable \
  3033. ((void (*)(unsigned long ulBase, \
  3034. unsigned long ulGen, \
  3035. unsigned short usRise, \
  3036. unsigned short usFall))ROM_PWMTABLE[7])
  3037. #endif
  3038. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3039. defined(TARGET_IS_TEMPEST_RB1) || \
  3040. defined(TARGET_IS_TEMPEST_RC1) || \
  3041. defined(TARGET_IS_TEMPEST_RC3) || \
  3042. defined(TARGET_IS_TEMPEST_RC5) || \
  3043. defined(TARGET_IS_FIRESTORM_RA2) || \
  3044. defined(TARGET_IS_BLIZZARD_RA1)
  3045. #define ROM_PWMDeadBandDisable \
  3046. ((void (*)(unsigned long ulBase, \
  3047. unsigned long ulGen))ROM_PWMTABLE[8])
  3048. #endif
  3049. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3050. defined(TARGET_IS_TEMPEST_RB1) || \
  3051. defined(TARGET_IS_TEMPEST_RC1) || \
  3052. defined(TARGET_IS_TEMPEST_RC3) || \
  3053. defined(TARGET_IS_TEMPEST_RC5) || \
  3054. defined(TARGET_IS_FIRESTORM_RA2) || \
  3055. defined(TARGET_IS_BLIZZARD_RA1)
  3056. #define ROM_PWMSyncUpdate \
  3057. ((void (*)(unsigned long ulBase, \
  3058. unsigned long ulGenBits))ROM_PWMTABLE[9])
  3059. #endif
  3060. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3061. defined(TARGET_IS_TEMPEST_RB1) || \
  3062. defined(TARGET_IS_TEMPEST_RC1) || \
  3063. defined(TARGET_IS_TEMPEST_RC3) || \
  3064. defined(TARGET_IS_TEMPEST_RC5) || \
  3065. defined(TARGET_IS_FIRESTORM_RA2) || \
  3066. defined(TARGET_IS_BLIZZARD_RA1)
  3067. #define ROM_PWMSyncTimeBase \
  3068. ((void (*)(unsigned long ulBase, \
  3069. unsigned long ulGenBits))ROM_PWMTABLE[10])
  3070. #endif
  3071. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3072. defined(TARGET_IS_TEMPEST_RB1) || \
  3073. defined(TARGET_IS_TEMPEST_RC1) || \
  3074. defined(TARGET_IS_TEMPEST_RC3) || \
  3075. defined(TARGET_IS_TEMPEST_RC5) || \
  3076. defined(TARGET_IS_FIRESTORM_RA2) || \
  3077. defined(TARGET_IS_BLIZZARD_RA1)
  3078. #define ROM_PWMOutputState \
  3079. ((void (*)(unsigned long ulBase, \
  3080. unsigned long ulPWMOutBits, \
  3081. tBoolean bEnable))ROM_PWMTABLE[11])
  3082. #endif
  3083. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3084. defined(TARGET_IS_TEMPEST_RB1) || \
  3085. defined(TARGET_IS_TEMPEST_RC1) || \
  3086. defined(TARGET_IS_TEMPEST_RC3) || \
  3087. defined(TARGET_IS_TEMPEST_RC5) || \
  3088. defined(TARGET_IS_FIRESTORM_RA2) || \
  3089. defined(TARGET_IS_BLIZZARD_RA1)
  3090. #define ROM_PWMOutputInvert \
  3091. ((void (*)(unsigned long ulBase, \
  3092. unsigned long ulPWMOutBits, \
  3093. tBoolean bInvert))ROM_PWMTABLE[12])
  3094. #endif
  3095. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3096. defined(TARGET_IS_TEMPEST_RB1) || \
  3097. defined(TARGET_IS_TEMPEST_RC1) || \
  3098. defined(TARGET_IS_TEMPEST_RC3) || \
  3099. defined(TARGET_IS_TEMPEST_RC5) || \
  3100. defined(TARGET_IS_FIRESTORM_RA2) || \
  3101. defined(TARGET_IS_BLIZZARD_RA1)
  3102. #define ROM_PWMOutputFault \
  3103. ((void (*)(unsigned long ulBase, \
  3104. unsigned long ulPWMOutBits, \
  3105. tBoolean bFaultSuppress))ROM_PWMTABLE[13])
  3106. #endif
  3107. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3108. defined(TARGET_IS_TEMPEST_RB1) || \
  3109. defined(TARGET_IS_TEMPEST_RC1) || \
  3110. defined(TARGET_IS_TEMPEST_RC3) || \
  3111. defined(TARGET_IS_TEMPEST_RC5) || \
  3112. defined(TARGET_IS_FIRESTORM_RA2) || \
  3113. defined(TARGET_IS_BLIZZARD_RA1)
  3114. #define ROM_PWMGenIntTrigEnable \
  3115. ((void (*)(unsigned long ulBase, \
  3116. unsigned long ulGen, \
  3117. unsigned long ulIntTrig))ROM_PWMTABLE[14])
  3118. #endif
  3119. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3120. defined(TARGET_IS_TEMPEST_RB1) || \
  3121. defined(TARGET_IS_TEMPEST_RC1) || \
  3122. defined(TARGET_IS_TEMPEST_RC3) || \
  3123. defined(TARGET_IS_TEMPEST_RC5) || \
  3124. defined(TARGET_IS_FIRESTORM_RA2) || \
  3125. defined(TARGET_IS_BLIZZARD_RA1)
  3126. #define ROM_PWMGenIntTrigDisable \
  3127. ((void (*)(unsigned long ulBase, \
  3128. unsigned long ulGen, \
  3129. unsigned long ulIntTrig))ROM_PWMTABLE[15])
  3130. #endif
  3131. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3132. defined(TARGET_IS_TEMPEST_RB1) || \
  3133. defined(TARGET_IS_TEMPEST_RC1) || \
  3134. defined(TARGET_IS_TEMPEST_RC3) || \
  3135. defined(TARGET_IS_TEMPEST_RC5) || \
  3136. defined(TARGET_IS_FIRESTORM_RA2) || \
  3137. defined(TARGET_IS_BLIZZARD_RA1)
  3138. #define ROM_PWMGenIntStatus \
  3139. ((unsigned long (*)(unsigned long ulBase, \
  3140. unsigned long ulGen, \
  3141. tBoolean bMasked))ROM_PWMTABLE[16])
  3142. #endif
  3143. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3144. defined(TARGET_IS_TEMPEST_RB1) || \
  3145. defined(TARGET_IS_TEMPEST_RC1) || \
  3146. defined(TARGET_IS_TEMPEST_RC3) || \
  3147. defined(TARGET_IS_TEMPEST_RC5) || \
  3148. defined(TARGET_IS_FIRESTORM_RA2) || \
  3149. defined(TARGET_IS_BLIZZARD_RA1)
  3150. #define ROM_PWMGenIntClear \
  3151. ((void (*)(unsigned long ulBase, \
  3152. unsigned long ulGen, \
  3153. unsigned long ulInts))ROM_PWMTABLE[17])
  3154. #endif
  3155. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3156. defined(TARGET_IS_TEMPEST_RB1) || \
  3157. defined(TARGET_IS_TEMPEST_RC1) || \
  3158. defined(TARGET_IS_TEMPEST_RC3) || \
  3159. defined(TARGET_IS_TEMPEST_RC5) || \
  3160. defined(TARGET_IS_FIRESTORM_RA2) || \
  3161. defined(TARGET_IS_BLIZZARD_RA1)
  3162. #define ROM_PWMIntEnable \
  3163. ((void (*)(unsigned long ulBase, \
  3164. unsigned long ulGenFault))ROM_PWMTABLE[18])
  3165. #endif
  3166. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3167. defined(TARGET_IS_TEMPEST_RB1) || \
  3168. defined(TARGET_IS_TEMPEST_RC1) || \
  3169. defined(TARGET_IS_TEMPEST_RC3) || \
  3170. defined(TARGET_IS_TEMPEST_RC5) || \
  3171. defined(TARGET_IS_FIRESTORM_RA2) || \
  3172. defined(TARGET_IS_BLIZZARD_RA1)
  3173. #define ROM_PWMIntDisable \
  3174. ((void (*)(unsigned long ulBase, \
  3175. unsigned long ulGenFault))ROM_PWMTABLE[19])
  3176. #endif
  3177. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3178. defined(TARGET_IS_TEMPEST_RB1) || \
  3179. defined(TARGET_IS_TEMPEST_RC1) || \
  3180. defined(TARGET_IS_TEMPEST_RC3) || \
  3181. defined(TARGET_IS_TEMPEST_RC5) || \
  3182. defined(TARGET_IS_FIRESTORM_RA2) || \
  3183. defined(TARGET_IS_BLIZZARD_RA1)
  3184. #define ROM_PWMFaultIntClear \
  3185. ((void (*)(unsigned long ulBase))ROM_PWMTABLE[20])
  3186. #endif
  3187. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3188. defined(TARGET_IS_TEMPEST_RB1) || \
  3189. defined(TARGET_IS_TEMPEST_RC1) || \
  3190. defined(TARGET_IS_TEMPEST_RC3) || \
  3191. defined(TARGET_IS_TEMPEST_RC5) || \
  3192. defined(TARGET_IS_FIRESTORM_RA2) || \
  3193. defined(TARGET_IS_BLIZZARD_RA1)
  3194. #define ROM_PWMIntStatus \
  3195. ((unsigned long (*)(unsigned long ulBase, \
  3196. tBoolean bMasked))ROM_PWMTABLE[21])
  3197. #endif
  3198. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3199. defined(TARGET_IS_TEMPEST_RC1) || \
  3200. defined(TARGET_IS_TEMPEST_RC3) || \
  3201. defined(TARGET_IS_TEMPEST_RC5) || \
  3202. defined(TARGET_IS_FIRESTORM_RA2) || \
  3203. defined(TARGET_IS_BLIZZARD_RA1)
  3204. #define ROM_PWMOutputFaultLevel \
  3205. ((void (*)(unsigned long ulBase, \
  3206. unsigned long ulPWMOutBits, \
  3207. tBoolean bDriveHigh))ROM_PWMTABLE[22])
  3208. #endif
  3209. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3210. defined(TARGET_IS_TEMPEST_RC1) || \
  3211. defined(TARGET_IS_TEMPEST_RC3) || \
  3212. defined(TARGET_IS_TEMPEST_RC5) || \
  3213. defined(TARGET_IS_FIRESTORM_RA2) || \
  3214. defined(TARGET_IS_BLIZZARD_RA1)
  3215. #define ROM_PWMFaultIntClearExt \
  3216. ((void (*)(unsigned long ulBase, \
  3217. unsigned long ulFaultInts))ROM_PWMTABLE[23])
  3218. #endif
  3219. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3220. defined(TARGET_IS_TEMPEST_RC1) || \
  3221. defined(TARGET_IS_TEMPEST_RC3) || \
  3222. defined(TARGET_IS_TEMPEST_RC5) || \
  3223. defined(TARGET_IS_FIRESTORM_RA2) || \
  3224. defined(TARGET_IS_BLIZZARD_RA1)
  3225. #define ROM_PWMGenFaultConfigure \
  3226. ((void (*)(unsigned long ulBase, \
  3227. unsigned long ulGen, \
  3228. unsigned long ulMinFaultPeriod, \
  3229. unsigned long ulFaultSenses))ROM_PWMTABLE[24])
  3230. #endif
  3231. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3232. defined(TARGET_IS_TEMPEST_RC1) || \
  3233. defined(TARGET_IS_TEMPEST_RC3) || \
  3234. defined(TARGET_IS_TEMPEST_RC5) || \
  3235. defined(TARGET_IS_FIRESTORM_RA2) || \
  3236. defined(TARGET_IS_BLIZZARD_RA1)
  3237. #define ROM_PWMGenFaultTriggerSet \
  3238. ((void (*)(unsigned long ulBase, \
  3239. unsigned long ulGen, \
  3240. unsigned long ulGroup, \
  3241. unsigned long ulFaultTriggers))ROM_PWMTABLE[25])
  3242. #endif
  3243. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3244. defined(TARGET_IS_TEMPEST_RC1) || \
  3245. defined(TARGET_IS_TEMPEST_RC3) || \
  3246. defined(TARGET_IS_TEMPEST_RC5) || \
  3247. defined(TARGET_IS_FIRESTORM_RA2) || \
  3248. defined(TARGET_IS_BLIZZARD_RA1)
  3249. #define ROM_PWMGenFaultTriggerGet \
  3250. ((unsigned long (*)(unsigned long ulBase, \
  3251. unsigned long ulGen, \
  3252. unsigned long ulGroup))ROM_PWMTABLE[26])
  3253. #endif
  3254. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3255. defined(TARGET_IS_TEMPEST_RC1) || \
  3256. defined(TARGET_IS_TEMPEST_RC3) || \
  3257. defined(TARGET_IS_TEMPEST_RC5) || \
  3258. defined(TARGET_IS_FIRESTORM_RA2) || \
  3259. defined(TARGET_IS_BLIZZARD_RA1)
  3260. #define ROM_PWMGenFaultStatus \
  3261. ((unsigned long (*)(unsigned long ulBase, \
  3262. unsigned long ulGen, \
  3263. unsigned long ulGroup))ROM_PWMTABLE[27])
  3264. #endif
  3265. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3266. defined(TARGET_IS_TEMPEST_RC1) || \
  3267. defined(TARGET_IS_TEMPEST_RC3) || \
  3268. defined(TARGET_IS_TEMPEST_RC5) || \
  3269. defined(TARGET_IS_FIRESTORM_RA2) || \
  3270. defined(TARGET_IS_BLIZZARD_RA1)
  3271. #define ROM_PWMGenFaultClear \
  3272. ((void (*)(unsigned long ulBase, \
  3273. unsigned long ulGen, \
  3274. unsigned long ulGroup, \
  3275. unsigned long ulFaultTriggers))ROM_PWMTABLE[28])
  3276. #endif
  3277. //*****************************************************************************
  3278. //
  3279. // Macros for calling ROM functions in the QEI API.
  3280. //
  3281. //*****************************************************************************
  3282. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3283. defined(TARGET_IS_TEMPEST_RB1) || \
  3284. defined(TARGET_IS_TEMPEST_RC1) || \
  3285. defined(TARGET_IS_TEMPEST_RC3) || \
  3286. defined(TARGET_IS_TEMPEST_RC5) || \
  3287. defined(TARGET_IS_FIRESTORM_RA2) || \
  3288. defined(TARGET_IS_BLIZZARD_RA1)
  3289. #define ROM_QEIPositionGet \
  3290. ((unsigned long (*)(unsigned long ulBase))ROM_QEITABLE[0])
  3291. #endif
  3292. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3293. defined(TARGET_IS_TEMPEST_RB1) || \
  3294. defined(TARGET_IS_TEMPEST_RC1) || \
  3295. defined(TARGET_IS_TEMPEST_RC3) || \
  3296. defined(TARGET_IS_TEMPEST_RC5) || \
  3297. defined(TARGET_IS_FIRESTORM_RA2) || \
  3298. defined(TARGET_IS_BLIZZARD_RA1)
  3299. #define ROM_QEIEnable \
  3300. ((void (*)(unsigned long ulBase))ROM_QEITABLE[1])
  3301. #endif
  3302. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3303. defined(TARGET_IS_TEMPEST_RB1) || \
  3304. defined(TARGET_IS_TEMPEST_RC1) || \
  3305. defined(TARGET_IS_TEMPEST_RC3) || \
  3306. defined(TARGET_IS_TEMPEST_RC5) || \
  3307. defined(TARGET_IS_FIRESTORM_RA2) || \
  3308. defined(TARGET_IS_BLIZZARD_RA1)
  3309. #define ROM_QEIDisable \
  3310. ((void (*)(unsigned long ulBase))ROM_QEITABLE[2])
  3311. #endif
  3312. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3313. defined(TARGET_IS_TEMPEST_RB1) || \
  3314. defined(TARGET_IS_TEMPEST_RC1) || \
  3315. defined(TARGET_IS_TEMPEST_RC3) || \
  3316. defined(TARGET_IS_TEMPEST_RC5) || \
  3317. defined(TARGET_IS_FIRESTORM_RA2) || \
  3318. defined(TARGET_IS_BLIZZARD_RA1)
  3319. #define ROM_QEIConfigure \
  3320. ((void (*)(unsigned long ulBase, \
  3321. unsigned long ulConfig, \
  3322. unsigned long ulMaxPosition))ROM_QEITABLE[3])
  3323. #endif
  3324. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3325. defined(TARGET_IS_TEMPEST_RB1) || \
  3326. defined(TARGET_IS_TEMPEST_RC1) || \
  3327. defined(TARGET_IS_TEMPEST_RC3) || \
  3328. defined(TARGET_IS_TEMPEST_RC5) || \
  3329. defined(TARGET_IS_FIRESTORM_RA2) || \
  3330. defined(TARGET_IS_BLIZZARD_RA1)
  3331. #define ROM_QEIPositionSet \
  3332. ((void (*)(unsigned long ulBase, \
  3333. unsigned long ulPosition))ROM_QEITABLE[4])
  3334. #endif
  3335. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3336. defined(TARGET_IS_TEMPEST_RB1) || \
  3337. defined(TARGET_IS_TEMPEST_RC1) || \
  3338. defined(TARGET_IS_TEMPEST_RC3) || \
  3339. defined(TARGET_IS_TEMPEST_RC5) || \
  3340. defined(TARGET_IS_FIRESTORM_RA2) || \
  3341. defined(TARGET_IS_BLIZZARD_RA1)
  3342. #define ROM_QEIDirectionGet \
  3343. ((long (*)(unsigned long ulBase))ROM_QEITABLE[5])
  3344. #endif
  3345. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3346. defined(TARGET_IS_TEMPEST_RB1) || \
  3347. defined(TARGET_IS_TEMPEST_RC1) || \
  3348. defined(TARGET_IS_TEMPEST_RC3) || \
  3349. defined(TARGET_IS_TEMPEST_RC5) || \
  3350. defined(TARGET_IS_FIRESTORM_RA2) || \
  3351. defined(TARGET_IS_BLIZZARD_RA1)
  3352. #define ROM_QEIErrorGet \
  3353. ((tBoolean (*)(unsigned long ulBase))ROM_QEITABLE[6])
  3354. #endif
  3355. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3356. defined(TARGET_IS_TEMPEST_RB1) || \
  3357. defined(TARGET_IS_TEMPEST_RC1) || \
  3358. defined(TARGET_IS_TEMPEST_RC3) || \
  3359. defined(TARGET_IS_TEMPEST_RC5) || \
  3360. defined(TARGET_IS_FIRESTORM_RA2) || \
  3361. defined(TARGET_IS_BLIZZARD_RA1)
  3362. #define ROM_QEIVelocityEnable \
  3363. ((void (*)(unsigned long ulBase))ROM_QEITABLE[7])
  3364. #endif
  3365. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3366. defined(TARGET_IS_TEMPEST_RB1) || \
  3367. defined(TARGET_IS_TEMPEST_RC1) || \
  3368. defined(TARGET_IS_TEMPEST_RC3) || \
  3369. defined(TARGET_IS_TEMPEST_RC5) || \
  3370. defined(TARGET_IS_FIRESTORM_RA2) || \
  3371. defined(TARGET_IS_BLIZZARD_RA1)
  3372. #define ROM_QEIVelocityDisable \
  3373. ((void (*)(unsigned long ulBase))ROM_QEITABLE[8])
  3374. #endif
  3375. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3376. defined(TARGET_IS_TEMPEST_RB1) || \
  3377. defined(TARGET_IS_TEMPEST_RC1) || \
  3378. defined(TARGET_IS_TEMPEST_RC3) || \
  3379. defined(TARGET_IS_TEMPEST_RC5) || \
  3380. defined(TARGET_IS_FIRESTORM_RA2) || \
  3381. defined(TARGET_IS_BLIZZARD_RA1)
  3382. #define ROM_QEIVelocityConfigure \
  3383. ((void (*)(unsigned long ulBase, \
  3384. unsigned long ulPreDiv, \
  3385. unsigned long ulPeriod))ROM_QEITABLE[9])
  3386. #endif
  3387. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3388. defined(TARGET_IS_TEMPEST_RB1) || \
  3389. defined(TARGET_IS_TEMPEST_RC1) || \
  3390. defined(TARGET_IS_TEMPEST_RC3) || \
  3391. defined(TARGET_IS_TEMPEST_RC5) || \
  3392. defined(TARGET_IS_FIRESTORM_RA2) || \
  3393. defined(TARGET_IS_BLIZZARD_RA1)
  3394. #define ROM_QEIVelocityGet \
  3395. ((unsigned long (*)(unsigned long ulBase))ROM_QEITABLE[10])
  3396. #endif
  3397. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3398. defined(TARGET_IS_TEMPEST_RB1) || \
  3399. defined(TARGET_IS_TEMPEST_RC1) || \
  3400. defined(TARGET_IS_TEMPEST_RC3) || \
  3401. defined(TARGET_IS_TEMPEST_RC5) || \
  3402. defined(TARGET_IS_FIRESTORM_RA2) || \
  3403. defined(TARGET_IS_BLIZZARD_RA1)
  3404. #define ROM_QEIIntEnable \
  3405. ((void (*)(unsigned long ulBase, \
  3406. unsigned long ulIntFlags))ROM_QEITABLE[11])
  3407. #endif
  3408. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3409. defined(TARGET_IS_TEMPEST_RB1) || \
  3410. defined(TARGET_IS_TEMPEST_RC1) || \
  3411. defined(TARGET_IS_TEMPEST_RC3) || \
  3412. defined(TARGET_IS_TEMPEST_RC5) || \
  3413. defined(TARGET_IS_FIRESTORM_RA2) || \
  3414. defined(TARGET_IS_BLIZZARD_RA1)
  3415. #define ROM_QEIIntDisable \
  3416. ((void (*)(unsigned long ulBase, \
  3417. unsigned long ulIntFlags))ROM_QEITABLE[12])
  3418. #endif
  3419. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3420. defined(TARGET_IS_TEMPEST_RB1) || \
  3421. defined(TARGET_IS_TEMPEST_RC1) || \
  3422. defined(TARGET_IS_TEMPEST_RC3) || \
  3423. defined(TARGET_IS_TEMPEST_RC5) || \
  3424. defined(TARGET_IS_FIRESTORM_RA2) || \
  3425. defined(TARGET_IS_BLIZZARD_RA1)
  3426. #define ROM_QEIIntStatus \
  3427. ((unsigned long (*)(unsigned long ulBase, \
  3428. tBoolean bMasked))ROM_QEITABLE[13])
  3429. #endif
  3430. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3431. defined(TARGET_IS_TEMPEST_RB1) || \
  3432. defined(TARGET_IS_TEMPEST_RC1) || \
  3433. defined(TARGET_IS_TEMPEST_RC3) || \
  3434. defined(TARGET_IS_TEMPEST_RC5) || \
  3435. defined(TARGET_IS_FIRESTORM_RA2) || \
  3436. defined(TARGET_IS_BLIZZARD_RA1)
  3437. #define ROM_QEIIntClear \
  3438. ((void (*)(unsigned long ulBase, \
  3439. unsigned long ulIntFlags))ROM_QEITABLE[14])
  3440. #endif
  3441. //*****************************************************************************
  3442. //
  3443. // Macros for calling ROM functions in the SMBus API.
  3444. //
  3445. //*****************************************************************************
  3446. #if defined(TARGET_IS_BLIZZARD_RA1)
  3447. #define ROM_SMBusMasterIntProcess \
  3448. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[0])
  3449. #endif
  3450. #if defined(TARGET_IS_BLIZZARD_RA1)
  3451. #define ROM_SMBusARPDisable \
  3452. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[1])
  3453. #endif
  3454. #if defined(TARGET_IS_BLIZZARD_RA1)
  3455. #define ROM_SMBusARPEnable \
  3456. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[2])
  3457. #endif
  3458. #if defined(TARGET_IS_BLIZZARD_RA1)
  3459. #define ROM_SMBusARPUDIDPacketDecode \
  3460. ((void (*)(tSMBusUDID *pUDID, \
  3461. unsigned char *pucAddress, \
  3462. unsigned char *pucData))ROM_SMBUSTABLE[3])
  3463. #endif
  3464. #if defined(TARGET_IS_BLIZZARD_RA1)
  3465. #define ROM_SMBusARPUDIDPacketEncode \
  3466. ((void (*)(tSMBusUDID *pUDID, \
  3467. unsigned char ucAddress, \
  3468. unsigned char *pucData))ROM_SMBUSTABLE[4])
  3469. #endif
  3470. #if defined(TARGET_IS_BLIZZARD_RA1)
  3471. #define ROM_SMBusMasterARPAssignAddress \
  3472. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3473. unsigned char *pucData))ROM_SMBUSTABLE[5])
  3474. #endif
  3475. #if defined(TARGET_IS_BLIZZARD_RA1)
  3476. #define ROM_SMBusMasterARPGetUDIDDir \
  3477. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3478. unsigned char ucTargetAddress, \
  3479. unsigned char *pucData))ROM_SMBUSTABLE[6])
  3480. #endif
  3481. #if defined(TARGET_IS_BLIZZARD_RA1)
  3482. #define ROM_SMBusMasterARPGetUDIDGen \
  3483. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3484. unsigned char *pucData))ROM_SMBUSTABLE[7])
  3485. #endif
  3486. #if defined(TARGET_IS_BLIZZARD_RA1)
  3487. #define ROM_SMBusMasterARPNotifyMaster \
  3488. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3489. unsigned char *pucData))ROM_SMBUSTABLE[8])
  3490. #endif
  3491. #if defined(TARGET_IS_BLIZZARD_RA1)
  3492. #define ROM_SMBusMasterARPPrepareToARP \
  3493. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[9])
  3494. #endif
  3495. #if defined(TARGET_IS_BLIZZARD_RA1)
  3496. #define ROM_SMBusMasterARPResetDeviceDir \
  3497. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3498. unsigned char ucTargetAddress))ROM_SMBUSTABLE[10])
  3499. #endif
  3500. #if defined(TARGET_IS_BLIZZARD_RA1)
  3501. #define ROM_SMBusMasterARPResetDeviceGen \
  3502. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[11])
  3503. #endif
  3504. #if defined(TARGET_IS_BLIZZARD_RA1)
  3505. #define ROM_SMBusMasterBlockProcessCall \
  3506. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3507. unsigned char ucTargetAddress, \
  3508. unsigned char ucCommand, \
  3509. unsigned char *pucTxData, \
  3510. unsigned char ucTxSize, \
  3511. unsigned char *pucRxData))ROM_SMBUSTABLE[12])
  3512. #endif
  3513. #if defined(TARGET_IS_BLIZZARD_RA1)
  3514. #define ROM_SMBusMasterBlockWrite \
  3515. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3516. unsigned char ucTargetAddress, \
  3517. unsigned char ucCommand, \
  3518. unsigned char *pucData, \
  3519. unsigned char ucSize))ROM_SMBUSTABLE[14])
  3520. #endif
  3521. #if defined(TARGET_IS_BLIZZARD_RA1)
  3522. #define ROM_SMBusMasterByteReceive \
  3523. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3524. unsigned char ucTargetAddress, \
  3525. unsigned char *pucData))ROM_SMBUSTABLE[15])
  3526. #endif
  3527. #if defined(TARGET_IS_BLIZZARD_RA1)
  3528. #define ROM_SMBusMasterByteSend \
  3529. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3530. unsigned char ucTargetAddress, \
  3531. unsigned char ucData))ROM_SMBUSTABLE[16])
  3532. #endif
  3533. #if defined(TARGET_IS_BLIZZARD_RA1)
  3534. #define ROM_SMBusMasterByteWordRead \
  3535. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3536. unsigned char ucTargetAddress, \
  3537. unsigned char ucCommand, \
  3538. unsigned char *pucData, \
  3539. unsigned char ucSize))ROM_SMBUSTABLE[17])
  3540. #endif
  3541. #if defined(TARGET_IS_BLIZZARD_RA1)
  3542. #define ROM_SMBusMasterByteWordWrite \
  3543. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3544. unsigned char ucTargetAddress, \
  3545. unsigned char ucCommand, \
  3546. unsigned char *pucData, \
  3547. unsigned char ucSize))ROM_SMBUSTABLE[18])
  3548. #endif
  3549. #if defined(TARGET_IS_BLIZZARD_RA1)
  3550. #define ROM_SMBusMasterHostNotify \
  3551. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3552. unsigned char ucOwnSlaveAddress, \
  3553. unsigned char *pucData))ROM_SMBUSTABLE[19])
  3554. #endif
  3555. #if defined(TARGET_IS_BLIZZARD_RA1)
  3556. #define ROM_SMBusMasterI2CRead \
  3557. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3558. unsigned char ucTargetAddress, \
  3559. unsigned char *pucData, \
  3560. unsigned char ucSize))ROM_SMBUSTABLE[20])
  3561. #endif
  3562. #if defined(TARGET_IS_BLIZZARD_RA1)
  3563. #define ROM_SMBusMasterI2CWrite \
  3564. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3565. unsigned char ucTargetAddress, \
  3566. unsigned char *pucData, \
  3567. unsigned char ucSize))ROM_SMBUSTABLE[21])
  3568. #endif
  3569. #if defined(TARGET_IS_BLIZZARD_RA1)
  3570. #define ROM_SMBusMasterI2CWriteRead \
  3571. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3572. unsigned char ucTargetAddress, \
  3573. unsigned char *pucTxData, \
  3574. unsigned char ucTxSize, \
  3575. unsigned char *pucRxData, \
  3576. unsigned char ucRxSize))ROM_SMBUSTABLE[22])
  3577. #endif
  3578. #if defined(TARGET_IS_BLIZZARD_RA1)
  3579. #define ROM_SMBusMasterInit \
  3580. ((void (*)(tSMBus *pSMBus, \
  3581. unsigned long ulI2CBase, \
  3582. unsigned long ulSMBusClock))ROM_SMBUSTABLE[23])
  3583. #endif
  3584. #if defined(TARGET_IS_BLIZZARD_RA1)
  3585. #define ROM_SMBusMasterIntEnable \
  3586. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[24])
  3587. #endif
  3588. #if defined(TARGET_IS_BLIZZARD_RA1)
  3589. #define ROM_SMBusMasterProcessCall \
  3590. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3591. unsigned char ucTargetAddress, \
  3592. unsigned char ucCommand, \
  3593. unsigned char *pucTxData, \
  3594. unsigned char *pucRxData))ROM_SMBUSTABLE[25])
  3595. #endif
  3596. #if defined(TARGET_IS_BLIZZARD_RA1)
  3597. #define ROM_SMBusMasterQuickCommand \
  3598. ((tSMBusStatus (*)(tSMBus *pSMBus, \
  3599. unsigned char ucTargetAddress, \
  3600. tBoolean bData))ROM_SMBUSTABLE[26])
  3601. #endif
  3602. #if defined(TARGET_IS_BLIZZARD_RA1)
  3603. #define ROM_SMBusPECDisable \
  3604. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[27])
  3605. #endif
  3606. #if defined(TARGET_IS_BLIZZARD_RA1)
  3607. #define ROM_SMBusPECEnable \
  3608. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[28])
  3609. #endif
  3610. #if defined(TARGET_IS_BLIZZARD_RA1)
  3611. #define ROM_SMBusRxPacketSizeGet \
  3612. ((unsigned char (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[29])
  3613. #endif
  3614. #if defined(TARGET_IS_BLIZZARD_RA1)
  3615. #define ROM_SMBusSlaveACKSend \
  3616. ((void (*)(tSMBus *pSMBus, \
  3617. tBoolean bACK))ROM_SMBUSTABLE[30])
  3618. #endif
  3619. #if defined(TARGET_IS_BLIZZARD_RA1)
  3620. #define ROM_SMBusSlaveAddressSet \
  3621. ((void (*)(tSMBus *pSMBus, \
  3622. unsigned char ucAddressNum, \
  3623. unsigned char ucSlaveAddress))ROM_SMBUSTABLE[31])
  3624. #endif
  3625. #if defined(TARGET_IS_BLIZZARD_RA1)
  3626. #define ROM_SMBusSlaveARPFlagARGet \
  3627. ((tBoolean (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[32])
  3628. #endif
  3629. #if defined(TARGET_IS_BLIZZARD_RA1)
  3630. #define ROM_SMBusSlaveARPFlagARSet \
  3631. ((void (*)(tSMBus *pSMBus, \
  3632. tBoolean bValue))ROM_SMBUSTABLE[33])
  3633. #endif
  3634. #if defined(TARGET_IS_BLIZZARD_RA1)
  3635. #define ROM_SMBusSlaveARPFlagAVGet \
  3636. ((tBoolean (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[34])
  3637. #endif
  3638. #if defined(TARGET_IS_BLIZZARD_RA1)
  3639. #define ROM_SMBusSlaveARPFlagAVSet \
  3640. ((void (*)(tSMBus *pSMBus, \
  3641. tBoolean bValue))ROM_SMBUSTABLE[35])
  3642. #endif
  3643. #if defined(TARGET_IS_BLIZZARD_RA1)
  3644. #define ROM_SMBusSlaveBlockTransferDisable \
  3645. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[36])
  3646. #endif
  3647. #if defined(TARGET_IS_BLIZZARD_RA1)
  3648. #define ROM_SMBusSlaveBlockTransferEnable \
  3649. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[37])
  3650. #endif
  3651. #if defined(TARGET_IS_BLIZZARD_RA1)
  3652. #define ROM_SMBusSlaveCommandGet \
  3653. ((unsigned char (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[38])
  3654. #endif
  3655. #if defined(TARGET_IS_BLIZZARD_RA1)
  3656. #define ROM_SMBusSlaveI2CDisable \
  3657. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[39])
  3658. #endif
  3659. #if defined(TARGET_IS_BLIZZARD_RA1)
  3660. #define ROM_SMBusSlaveI2CEnable \
  3661. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[40])
  3662. #endif
  3663. #if defined(TARGET_IS_BLIZZARD_RA1)
  3664. #define ROM_SMBusSlaveInit \
  3665. ((void (*)(tSMBus *pSMBus, \
  3666. unsigned long ulI2CBase))ROM_SMBUSTABLE[41])
  3667. #endif
  3668. #if defined(TARGET_IS_BLIZZARD_RA1)
  3669. #define ROM_SMBusSlaveIntAddressGet \
  3670. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[42])
  3671. #endif
  3672. #if defined(TARGET_IS_BLIZZARD_RA1)
  3673. #define ROM_SMBusSlaveIntEnable \
  3674. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[43])
  3675. #endif
  3676. #if defined(TARGET_IS_BLIZZARD_RA1)
  3677. #define ROM_SMBusSlaveIntProcess \
  3678. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[44])
  3679. #endif
  3680. #if defined(TARGET_IS_BLIZZARD_RA1)
  3681. #define ROM_SMBusSlaveManualACKDisable \
  3682. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[45])
  3683. #endif
  3684. #if defined(TARGET_IS_BLIZZARD_RA1)
  3685. #define ROM_SMBusSlaveManualACKEnable \
  3686. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[46])
  3687. #endif
  3688. #if defined(TARGET_IS_BLIZZARD_RA1)
  3689. #define ROM_SMBusSlaveManualACKStatusGet \
  3690. ((tBoolean (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[47])
  3691. #endif
  3692. #if defined(TARGET_IS_BLIZZARD_RA1)
  3693. #define ROM_SMBusSlaveProcessCallDisable \
  3694. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[48])
  3695. #endif
  3696. #if defined(TARGET_IS_BLIZZARD_RA1)
  3697. #define ROM_SMBusSlaveProcessCallEnable \
  3698. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[49])
  3699. #endif
  3700. #if defined(TARGET_IS_BLIZZARD_RA1)
  3701. #define ROM_SMBusSlaveRxBufferSet \
  3702. ((void (*)(tSMBus *pSMBus, \
  3703. unsigned char *pucData, \
  3704. unsigned char ucSize))ROM_SMBUSTABLE[50])
  3705. #endif
  3706. #if defined(TARGET_IS_BLIZZARD_RA1)
  3707. #define ROM_SMBusSlaveTransferInit \
  3708. ((void (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[51])
  3709. #endif
  3710. #if defined(TARGET_IS_BLIZZARD_RA1)
  3711. #define ROM_SMBusSlaveTxBufferSet \
  3712. ((void (*)(tSMBus *pSMBus, \
  3713. unsigned char *pucData, \
  3714. unsigned char ucSize))ROM_SMBUSTABLE[52])
  3715. #endif
  3716. #if defined(TARGET_IS_BLIZZARD_RA1)
  3717. #define ROM_SMBusSlaveUDIDSet \
  3718. ((void (*)(tSMBus *pSMBus, \
  3719. tSMBusUDID *pUDID))ROM_SMBUSTABLE[53])
  3720. #endif
  3721. #if defined(TARGET_IS_BLIZZARD_RA1)
  3722. #define ROM_SMBusStatusGet \
  3723. ((tSMBusStatus (*)(tSMBus *pSMBus))ROM_SMBUSTABLE[54])
  3724. #endif
  3725. //*****************************************************************************
  3726. //
  3727. // Macros for calling ROM functions in the SSI API.
  3728. //
  3729. //*****************************************************************************
  3730. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3731. defined(TARGET_IS_TEMPEST_RB1) || \
  3732. defined(TARGET_IS_TEMPEST_RC1) || \
  3733. defined(TARGET_IS_TEMPEST_RC3) || \
  3734. defined(TARGET_IS_TEMPEST_RC5) || \
  3735. defined(TARGET_IS_FIRESTORM_RA2) || \
  3736. defined(TARGET_IS_BLIZZARD_RA1)
  3737. #define ROM_SSIDataPut \
  3738. ((void (*)(unsigned long ulBase, \
  3739. unsigned long ulData))ROM_SSITABLE[0])
  3740. #endif
  3741. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3742. defined(TARGET_IS_TEMPEST_RB1) || \
  3743. defined(TARGET_IS_TEMPEST_RC1) || \
  3744. defined(TARGET_IS_TEMPEST_RC3) || \
  3745. defined(TARGET_IS_TEMPEST_RC5) || \
  3746. defined(TARGET_IS_FIRESTORM_RA2) || \
  3747. defined(TARGET_IS_BLIZZARD_RA1)
  3748. #define ROM_SSIConfigSetExpClk \
  3749. ((void (*)(unsigned long ulBase, \
  3750. unsigned long ulSSIClk, \
  3751. unsigned long ulProtocol, \
  3752. unsigned long ulMode, \
  3753. unsigned long ulBitRate, \
  3754. unsigned long ulDataWidth))ROM_SSITABLE[1])
  3755. #endif
  3756. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3757. defined(TARGET_IS_TEMPEST_RB1) || \
  3758. defined(TARGET_IS_TEMPEST_RC1) || \
  3759. defined(TARGET_IS_TEMPEST_RC3) || \
  3760. defined(TARGET_IS_TEMPEST_RC5) || \
  3761. defined(TARGET_IS_FIRESTORM_RA2) || \
  3762. defined(TARGET_IS_BLIZZARD_RA1)
  3763. #define ROM_SSIEnable \
  3764. ((void (*)(unsigned long ulBase))ROM_SSITABLE[2])
  3765. #endif
  3766. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3767. defined(TARGET_IS_TEMPEST_RB1) || \
  3768. defined(TARGET_IS_TEMPEST_RC1) || \
  3769. defined(TARGET_IS_TEMPEST_RC3) || \
  3770. defined(TARGET_IS_TEMPEST_RC5) || \
  3771. defined(TARGET_IS_FIRESTORM_RA2) || \
  3772. defined(TARGET_IS_BLIZZARD_RA1)
  3773. #define ROM_SSIDisable \
  3774. ((void (*)(unsigned long ulBase))ROM_SSITABLE[3])
  3775. #endif
  3776. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3777. defined(TARGET_IS_TEMPEST_RB1) || \
  3778. defined(TARGET_IS_TEMPEST_RC1) || \
  3779. defined(TARGET_IS_TEMPEST_RC3) || \
  3780. defined(TARGET_IS_TEMPEST_RC5) || \
  3781. defined(TARGET_IS_FIRESTORM_RA2) || \
  3782. defined(TARGET_IS_BLIZZARD_RA1)
  3783. #define ROM_SSIIntEnable \
  3784. ((void (*)(unsigned long ulBase, \
  3785. unsigned long ulIntFlags))ROM_SSITABLE[4])
  3786. #endif
  3787. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3788. defined(TARGET_IS_TEMPEST_RB1) || \
  3789. defined(TARGET_IS_TEMPEST_RC1) || \
  3790. defined(TARGET_IS_TEMPEST_RC3) || \
  3791. defined(TARGET_IS_TEMPEST_RC5) || \
  3792. defined(TARGET_IS_FIRESTORM_RA2) || \
  3793. defined(TARGET_IS_BLIZZARD_RA1)
  3794. #define ROM_SSIIntDisable \
  3795. ((void (*)(unsigned long ulBase, \
  3796. unsigned long ulIntFlags))ROM_SSITABLE[5])
  3797. #endif
  3798. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3799. defined(TARGET_IS_TEMPEST_RB1) || \
  3800. defined(TARGET_IS_TEMPEST_RC1) || \
  3801. defined(TARGET_IS_TEMPEST_RC3) || \
  3802. defined(TARGET_IS_TEMPEST_RC5) || \
  3803. defined(TARGET_IS_FIRESTORM_RA2) || \
  3804. defined(TARGET_IS_BLIZZARD_RA1)
  3805. #define ROM_SSIIntStatus \
  3806. ((unsigned long (*)(unsigned long ulBase, \
  3807. tBoolean bMasked))ROM_SSITABLE[6])
  3808. #endif
  3809. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3810. defined(TARGET_IS_TEMPEST_RB1) || \
  3811. defined(TARGET_IS_TEMPEST_RC1) || \
  3812. defined(TARGET_IS_TEMPEST_RC3) || \
  3813. defined(TARGET_IS_TEMPEST_RC5) || \
  3814. defined(TARGET_IS_FIRESTORM_RA2) || \
  3815. defined(TARGET_IS_BLIZZARD_RA1)
  3816. #define ROM_SSIIntClear \
  3817. ((void (*)(unsigned long ulBase, \
  3818. unsigned long ulIntFlags))ROM_SSITABLE[7])
  3819. #endif
  3820. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3821. defined(TARGET_IS_TEMPEST_RB1) || \
  3822. defined(TARGET_IS_TEMPEST_RC1) || \
  3823. defined(TARGET_IS_TEMPEST_RC3) || \
  3824. defined(TARGET_IS_TEMPEST_RC5) || \
  3825. defined(TARGET_IS_FIRESTORM_RA2) || \
  3826. defined(TARGET_IS_BLIZZARD_RA1)
  3827. #define ROM_SSIDataPutNonBlocking \
  3828. ((long (*)(unsigned long ulBase, \
  3829. unsigned long ulData))ROM_SSITABLE[8])
  3830. #endif
  3831. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3832. defined(TARGET_IS_TEMPEST_RB1) || \
  3833. defined(TARGET_IS_TEMPEST_RC1) || \
  3834. defined(TARGET_IS_TEMPEST_RC3) || \
  3835. defined(TARGET_IS_TEMPEST_RC5) || \
  3836. defined(TARGET_IS_FIRESTORM_RA2) || \
  3837. defined(TARGET_IS_BLIZZARD_RA1)
  3838. #define ROM_SSIDataGet \
  3839. ((void (*)(unsigned long ulBase, \
  3840. unsigned long *pulData))ROM_SSITABLE[9])
  3841. #endif
  3842. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3843. defined(TARGET_IS_TEMPEST_RB1) || \
  3844. defined(TARGET_IS_TEMPEST_RC1) || \
  3845. defined(TARGET_IS_TEMPEST_RC3) || \
  3846. defined(TARGET_IS_TEMPEST_RC5) || \
  3847. defined(TARGET_IS_FIRESTORM_RA2) || \
  3848. defined(TARGET_IS_BLIZZARD_RA1)
  3849. #define ROM_SSIDataGetNonBlocking \
  3850. ((long (*)(unsigned long ulBase, \
  3851. unsigned long *pulData))ROM_SSITABLE[10])
  3852. #endif
  3853. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3854. defined(TARGET_IS_TEMPEST_RB1) || \
  3855. defined(TARGET_IS_TEMPEST_RC1) || \
  3856. defined(TARGET_IS_TEMPEST_RC3) || \
  3857. defined(TARGET_IS_TEMPEST_RC5) || \
  3858. defined(TARGET_IS_FIRESTORM_RA2) || \
  3859. defined(TARGET_IS_BLIZZARD_RA1)
  3860. #define ROM_UpdateSSI \
  3861. ((void (*)(void))ROM_SSITABLE[11])
  3862. #endif
  3863. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3864. defined(TARGET_IS_TEMPEST_RC1) || \
  3865. defined(TARGET_IS_TEMPEST_RC3) || \
  3866. defined(TARGET_IS_TEMPEST_RC5) || \
  3867. defined(TARGET_IS_FIRESTORM_RA2) || \
  3868. defined(TARGET_IS_BLIZZARD_RA1)
  3869. #define ROM_SSIDMAEnable \
  3870. ((void (*)(unsigned long ulBase, \
  3871. unsigned long ulDMAFlags))ROM_SSITABLE[12])
  3872. #endif
  3873. #if defined(TARGET_IS_TEMPEST_RB1) || \
  3874. defined(TARGET_IS_TEMPEST_RC1) || \
  3875. defined(TARGET_IS_TEMPEST_RC3) || \
  3876. defined(TARGET_IS_TEMPEST_RC5) || \
  3877. defined(TARGET_IS_FIRESTORM_RA2) || \
  3878. defined(TARGET_IS_BLIZZARD_RA1)
  3879. #define ROM_SSIDMADisable \
  3880. ((void (*)(unsigned long ulBase, \
  3881. unsigned long ulDMAFlags))ROM_SSITABLE[13])
  3882. #endif
  3883. #if defined(TARGET_IS_TEMPEST_RC1) || \
  3884. defined(TARGET_IS_TEMPEST_RC3) || \
  3885. defined(TARGET_IS_TEMPEST_RC5) || \
  3886. defined(TARGET_IS_FIRESTORM_RA2) || \
  3887. defined(TARGET_IS_BLIZZARD_RA1)
  3888. #define ROM_SSIBusy \
  3889. ((tBoolean (*)(unsigned long ulBase))ROM_SSITABLE[14])
  3890. #endif
  3891. #if defined(TARGET_IS_BLIZZARD_RA1)
  3892. #define ROM_SSIClockSourceGet \
  3893. ((unsigned long (*)(unsigned long ulBase))ROM_SSITABLE[15])
  3894. #endif
  3895. #if defined(TARGET_IS_BLIZZARD_RA1)
  3896. #define ROM_SSIClockSourceSet \
  3897. ((void (*)(unsigned long ulBase, \
  3898. unsigned long ulSource))ROM_SSITABLE[16])
  3899. #endif
  3900. //*****************************************************************************
  3901. //
  3902. // Macros for calling ROM functions in the SysCtl API.
  3903. //
  3904. //*****************************************************************************
  3905. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3906. defined(TARGET_IS_TEMPEST_RB1) || \
  3907. defined(TARGET_IS_TEMPEST_RC1) || \
  3908. defined(TARGET_IS_TEMPEST_RC3) || \
  3909. defined(TARGET_IS_TEMPEST_RC5) || \
  3910. defined(TARGET_IS_FIRESTORM_RA2) || \
  3911. defined(TARGET_IS_BLIZZARD_RA1)
  3912. #define ROM_SysCtlSleep \
  3913. ((void (*)(void))ROM_SYSCTLTABLE[0])
  3914. #endif
  3915. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3916. defined(TARGET_IS_TEMPEST_RB1) || \
  3917. defined(TARGET_IS_TEMPEST_RC1) || \
  3918. defined(TARGET_IS_TEMPEST_RC3) || \
  3919. defined(TARGET_IS_TEMPEST_RC5) || \
  3920. defined(TARGET_IS_FIRESTORM_RA2) || \
  3921. defined(TARGET_IS_BLIZZARD_RA1)
  3922. #define ROM_SysCtlSRAMSizeGet \
  3923. ((unsigned long (*)(void))ROM_SYSCTLTABLE[1])
  3924. #endif
  3925. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3926. defined(TARGET_IS_TEMPEST_RB1) || \
  3927. defined(TARGET_IS_TEMPEST_RC1) || \
  3928. defined(TARGET_IS_TEMPEST_RC3) || \
  3929. defined(TARGET_IS_TEMPEST_RC5) || \
  3930. defined(TARGET_IS_FIRESTORM_RA2) || \
  3931. defined(TARGET_IS_BLIZZARD_RA1)
  3932. #define ROM_SysCtlFlashSizeGet \
  3933. ((unsigned long (*)(void))ROM_SYSCTLTABLE[2])
  3934. #endif
  3935. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3936. defined(TARGET_IS_TEMPEST_RB1) || \
  3937. defined(TARGET_IS_TEMPEST_RC1) || \
  3938. defined(TARGET_IS_TEMPEST_RC3) || \
  3939. defined(TARGET_IS_TEMPEST_RC5) || \
  3940. defined(TARGET_IS_FIRESTORM_RA2) || \
  3941. defined(TARGET_IS_BLIZZARD_RA1)
  3942. #define ROM_SysCtlPinPresent \
  3943. ((tBoolean (*)(unsigned long ulPin))ROM_SYSCTLTABLE[3])
  3944. #endif
  3945. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3946. defined(TARGET_IS_TEMPEST_RB1) || \
  3947. defined(TARGET_IS_TEMPEST_RC1) || \
  3948. defined(TARGET_IS_TEMPEST_RC3) || \
  3949. defined(TARGET_IS_TEMPEST_RC5) || \
  3950. defined(TARGET_IS_FIRESTORM_RA2) || \
  3951. defined(TARGET_IS_BLIZZARD_RA1)
  3952. #define ROM_SysCtlPeripheralPresent \
  3953. ((tBoolean (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[4])
  3954. #endif
  3955. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3956. defined(TARGET_IS_TEMPEST_RB1) || \
  3957. defined(TARGET_IS_TEMPEST_RC1) || \
  3958. defined(TARGET_IS_TEMPEST_RC3) || \
  3959. defined(TARGET_IS_TEMPEST_RC5) || \
  3960. defined(TARGET_IS_FIRESTORM_RA2) || \
  3961. defined(TARGET_IS_BLIZZARD_RA1)
  3962. #define ROM_SysCtlPeripheralReset \
  3963. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[5])
  3964. #endif
  3965. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3966. defined(TARGET_IS_TEMPEST_RB1) || \
  3967. defined(TARGET_IS_TEMPEST_RC1) || \
  3968. defined(TARGET_IS_TEMPEST_RC3) || \
  3969. defined(TARGET_IS_TEMPEST_RC5) || \
  3970. defined(TARGET_IS_FIRESTORM_RA2) || \
  3971. defined(TARGET_IS_BLIZZARD_RA1)
  3972. #define ROM_SysCtlPeripheralEnable \
  3973. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[6])
  3974. #endif
  3975. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3976. defined(TARGET_IS_TEMPEST_RB1) || \
  3977. defined(TARGET_IS_TEMPEST_RC1) || \
  3978. defined(TARGET_IS_TEMPEST_RC3) || \
  3979. defined(TARGET_IS_TEMPEST_RC5) || \
  3980. defined(TARGET_IS_FIRESTORM_RA2) || \
  3981. defined(TARGET_IS_BLIZZARD_RA1)
  3982. #define ROM_SysCtlPeripheralDisable \
  3983. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[7])
  3984. #endif
  3985. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3986. defined(TARGET_IS_TEMPEST_RB1) || \
  3987. defined(TARGET_IS_TEMPEST_RC1) || \
  3988. defined(TARGET_IS_TEMPEST_RC3) || \
  3989. defined(TARGET_IS_TEMPEST_RC5) || \
  3990. defined(TARGET_IS_FIRESTORM_RA2) || \
  3991. defined(TARGET_IS_BLIZZARD_RA1)
  3992. #define ROM_SysCtlPeripheralSleepEnable \
  3993. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[8])
  3994. #endif
  3995. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  3996. defined(TARGET_IS_TEMPEST_RB1) || \
  3997. defined(TARGET_IS_TEMPEST_RC1) || \
  3998. defined(TARGET_IS_TEMPEST_RC3) || \
  3999. defined(TARGET_IS_TEMPEST_RC5) || \
  4000. defined(TARGET_IS_FIRESTORM_RA2) || \
  4001. defined(TARGET_IS_BLIZZARD_RA1)
  4002. #define ROM_SysCtlPeripheralSleepDisable \
  4003. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[9])
  4004. #endif
  4005. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4006. defined(TARGET_IS_TEMPEST_RB1) || \
  4007. defined(TARGET_IS_TEMPEST_RC1) || \
  4008. defined(TARGET_IS_TEMPEST_RC3) || \
  4009. defined(TARGET_IS_TEMPEST_RC5) || \
  4010. defined(TARGET_IS_FIRESTORM_RA2) || \
  4011. defined(TARGET_IS_BLIZZARD_RA1)
  4012. #define ROM_SysCtlPeripheralDeepSleepEnable \
  4013. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[10])
  4014. #endif
  4015. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4016. defined(TARGET_IS_TEMPEST_RB1) || \
  4017. defined(TARGET_IS_TEMPEST_RC1) || \
  4018. defined(TARGET_IS_TEMPEST_RC3) || \
  4019. defined(TARGET_IS_TEMPEST_RC5) || \
  4020. defined(TARGET_IS_FIRESTORM_RA2) || \
  4021. defined(TARGET_IS_BLIZZARD_RA1)
  4022. #define ROM_SysCtlPeripheralDeepSleepDisable \
  4023. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[11])
  4024. #endif
  4025. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4026. defined(TARGET_IS_TEMPEST_RB1) || \
  4027. defined(TARGET_IS_TEMPEST_RC1) || \
  4028. defined(TARGET_IS_TEMPEST_RC3) || \
  4029. defined(TARGET_IS_TEMPEST_RC5) || \
  4030. defined(TARGET_IS_FIRESTORM_RA2) || \
  4031. defined(TARGET_IS_BLIZZARD_RA1)
  4032. #define ROM_SysCtlPeripheralClockGating \
  4033. ((void (*)(tBoolean bEnable))ROM_SYSCTLTABLE[12])
  4034. #endif
  4035. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4036. defined(TARGET_IS_TEMPEST_RB1) || \
  4037. defined(TARGET_IS_TEMPEST_RC1) || \
  4038. defined(TARGET_IS_TEMPEST_RC3) || \
  4039. defined(TARGET_IS_TEMPEST_RC5) || \
  4040. defined(TARGET_IS_FIRESTORM_RA2) || \
  4041. defined(TARGET_IS_BLIZZARD_RA1)
  4042. #define ROM_SysCtlIntEnable \
  4043. ((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[13])
  4044. #endif
  4045. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4046. defined(TARGET_IS_TEMPEST_RB1) || \
  4047. defined(TARGET_IS_TEMPEST_RC1) || \
  4048. defined(TARGET_IS_TEMPEST_RC3) || \
  4049. defined(TARGET_IS_TEMPEST_RC5) || \
  4050. defined(TARGET_IS_FIRESTORM_RA2) || \
  4051. defined(TARGET_IS_BLIZZARD_RA1)
  4052. #define ROM_SysCtlIntDisable \
  4053. ((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[14])
  4054. #endif
  4055. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4056. defined(TARGET_IS_TEMPEST_RB1) || \
  4057. defined(TARGET_IS_TEMPEST_RC1) || \
  4058. defined(TARGET_IS_TEMPEST_RC3) || \
  4059. defined(TARGET_IS_TEMPEST_RC5) || \
  4060. defined(TARGET_IS_FIRESTORM_RA2) || \
  4061. defined(TARGET_IS_BLIZZARD_RA1)
  4062. #define ROM_SysCtlIntClear \
  4063. ((void (*)(unsigned long ulInts))ROM_SYSCTLTABLE[15])
  4064. #endif
  4065. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4066. defined(TARGET_IS_TEMPEST_RB1) || \
  4067. defined(TARGET_IS_TEMPEST_RC1) || \
  4068. defined(TARGET_IS_TEMPEST_RC3) || \
  4069. defined(TARGET_IS_TEMPEST_RC5) || \
  4070. defined(TARGET_IS_FIRESTORM_RA2) || \
  4071. defined(TARGET_IS_BLIZZARD_RA1)
  4072. #define ROM_SysCtlIntStatus \
  4073. ((unsigned long (*)(tBoolean bMasked))ROM_SYSCTLTABLE[16])
  4074. #endif
  4075. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4076. defined(TARGET_IS_TEMPEST_RB1) || \
  4077. defined(TARGET_IS_TEMPEST_RC1) || \
  4078. defined(TARGET_IS_TEMPEST_RC3) || \
  4079. defined(TARGET_IS_TEMPEST_RC5) || \
  4080. defined(TARGET_IS_FIRESTORM_RA2)
  4081. #define ROM_SysCtlLDOSet \
  4082. ((void (*)(unsigned long ulVoltage))ROM_SYSCTLTABLE[17])
  4083. #endif
  4084. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4085. defined(TARGET_IS_TEMPEST_RB1) || \
  4086. defined(TARGET_IS_TEMPEST_RC1) || \
  4087. defined(TARGET_IS_TEMPEST_RC3) || \
  4088. defined(TARGET_IS_TEMPEST_RC5) || \
  4089. defined(TARGET_IS_FIRESTORM_RA2)
  4090. #define ROM_SysCtlLDOGet \
  4091. ((unsigned long (*)(void))ROM_SYSCTLTABLE[18])
  4092. #endif
  4093. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4094. defined(TARGET_IS_TEMPEST_RB1) || \
  4095. defined(TARGET_IS_TEMPEST_RC1) || \
  4096. defined(TARGET_IS_TEMPEST_RC3) || \
  4097. defined(TARGET_IS_TEMPEST_RC5) || \
  4098. defined(TARGET_IS_FIRESTORM_RA2) || \
  4099. defined(TARGET_IS_BLIZZARD_RA1)
  4100. #define ROM_SysCtlReset \
  4101. ((void (*)(void))ROM_SYSCTLTABLE[19])
  4102. #endif
  4103. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4104. defined(TARGET_IS_TEMPEST_RB1) || \
  4105. defined(TARGET_IS_TEMPEST_RC1) || \
  4106. defined(TARGET_IS_TEMPEST_RC3) || \
  4107. defined(TARGET_IS_TEMPEST_RC5) || \
  4108. defined(TARGET_IS_FIRESTORM_RA2) || \
  4109. defined(TARGET_IS_BLIZZARD_RA1)
  4110. #define ROM_SysCtlDeepSleep \
  4111. ((void (*)(void))ROM_SYSCTLTABLE[20])
  4112. #endif
  4113. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4114. defined(TARGET_IS_TEMPEST_RB1) || \
  4115. defined(TARGET_IS_TEMPEST_RC1) || \
  4116. defined(TARGET_IS_TEMPEST_RC3) || \
  4117. defined(TARGET_IS_TEMPEST_RC5) || \
  4118. defined(TARGET_IS_FIRESTORM_RA2) || \
  4119. defined(TARGET_IS_BLIZZARD_RA1)
  4120. #define ROM_SysCtlResetCauseGet \
  4121. ((unsigned long (*)(void))ROM_SYSCTLTABLE[21])
  4122. #endif
  4123. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4124. defined(TARGET_IS_TEMPEST_RB1) || \
  4125. defined(TARGET_IS_TEMPEST_RC1) || \
  4126. defined(TARGET_IS_TEMPEST_RC3) || \
  4127. defined(TARGET_IS_TEMPEST_RC5) || \
  4128. defined(TARGET_IS_FIRESTORM_RA2) || \
  4129. defined(TARGET_IS_BLIZZARD_RA1)
  4130. #define ROM_SysCtlResetCauseClear \
  4131. ((void (*)(unsigned long ulCauses))ROM_SYSCTLTABLE[22])
  4132. #endif
  4133. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4134. defined(TARGET_IS_TEMPEST_RB1) || \
  4135. defined(TARGET_IS_TEMPEST_RC1) || \
  4136. defined(TARGET_IS_TEMPEST_RC3) || \
  4137. defined(TARGET_IS_TEMPEST_RC5) || \
  4138. defined(TARGET_IS_FIRESTORM_RA2) || \
  4139. defined(TARGET_IS_BLIZZARD_RA1)
  4140. #define ROM_SysCtlClockSet \
  4141. ((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[23])
  4142. #endif
  4143. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4144. defined(TARGET_IS_TEMPEST_RB1) || \
  4145. defined(TARGET_IS_TEMPEST_RC1) || \
  4146. defined(TARGET_IS_TEMPEST_RC3) || \
  4147. defined(TARGET_IS_TEMPEST_RC5) || \
  4148. defined(TARGET_IS_FIRESTORM_RA2) || \
  4149. defined(TARGET_IS_BLIZZARD_RA1)
  4150. #define ROM_SysCtlClockGet \
  4151. ((unsigned long (*)(void))ROM_SYSCTLTABLE[24])
  4152. #endif
  4153. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4154. defined(TARGET_IS_TEMPEST_RB1) || \
  4155. defined(TARGET_IS_TEMPEST_RC1) || \
  4156. defined(TARGET_IS_TEMPEST_RC3) || \
  4157. defined(TARGET_IS_TEMPEST_RC5) || \
  4158. defined(TARGET_IS_FIRESTORM_RA2) || \
  4159. defined(TARGET_IS_BLIZZARD_RA1)
  4160. #define ROM_SysCtlPWMClockSet \
  4161. ((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[25])
  4162. #endif
  4163. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4164. defined(TARGET_IS_TEMPEST_RB1) || \
  4165. defined(TARGET_IS_TEMPEST_RC1) || \
  4166. defined(TARGET_IS_TEMPEST_RC3) || \
  4167. defined(TARGET_IS_TEMPEST_RC5) || \
  4168. defined(TARGET_IS_FIRESTORM_RA2) || \
  4169. defined(TARGET_IS_BLIZZARD_RA1)
  4170. #define ROM_SysCtlPWMClockGet \
  4171. ((unsigned long (*)(void))ROM_SYSCTLTABLE[26])
  4172. #endif
  4173. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4174. defined(TARGET_IS_TEMPEST_RB1) || \
  4175. defined(TARGET_IS_TEMPEST_RC1) || \
  4176. defined(TARGET_IS_TEMPEST_RC3) || \
  4177. defined(TARGET_IS_TEMPEST_RC5) || \
  4178. defined(TARGET_IS_FIRESTORM_RA2) || \
  4179. defined(TARGET_IS_BLIZZARD_RA1)
  4180. #define ROM_SysCtlADCSpeedSet \
  4181. ((void (*)(unsigned long ulSpeed))ROM_SYSCTLTABLE[27])
  4182. #endif
  4183. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4184. defined(TARGET_IS_TEMPEST_RB1) || \
  4185. defined(TARGET_IS_TEMPEST_RC1) || \
  4186. defined(TARGET_IS_TEMPEST_RC3) || \
  4187. defined(TARGET_IS_TEMPEST_RC5) || \
  4188. defined(TARGET_IS_FIRESTORM_RA2) || \
  4189. defined(TARGET_IS_BLIZZARD_RA1)
  4190. #define ROM_SysCtlADCSpeedGet \
  4191. ((unsigned long (*)(void))ROM_SYSCTLTABLE[28])
  4192. #endif
  4193. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4194. defined(TARGET_IS_TEMPEST_RB1) || \
  4195. defined(TARGET_IS_TEMPEST_RC1) || \
  4196. defined(TARGET_IS_TEMPEST_RC3) || \
  4197. defined(TARGET_IS_TEMPEST_RC5) || \
  4198. defined(TARGET_IS_FIRESTORM_RA2) || \
  4199. defined(TARGET_IS_BLIZZARD_RA1)
  4200. #define ROM_SysCtlGPIOAHBEnable \
  4201. ((void (*)(unsigned long ulGPIOPeripheral))ROM_SYSCTLTABLE[29])
  4202. #endif
  4203. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4204. defined(TARGET_IS_TEMPEST_RB1) || \
  4205. defined(TARGET_IS_TEMPEST_RC1) || \
  4206. defined(TARGET_IS_TEMPEST_RC3) || \
  4207. defined(TARGET_IS_TEMPEST_RC5) || \
  4208. defined(TARGET_IS_FIRESTORM_RA2) || \
  4209. defined(TARGET_IS_BLIZZARD_RA1)
  4210. #define ROM_SysCtlGPIOAHBDisable \
  4211. ((void (*)(unsigned long ulGPIOPeripheral))ROM_SYSCTLTABLE[30])
  4212. #endif
  4213. #if defined(TARGET_IS_TEMPEST_RB1) || \
  4214. defined(TARGET_IS_TEMPEST_RC1) || \
  4215. defined(TARGET_IS_TEMPEST_RC3) || \
  4216. defined(TARGET_IS_TEMPEST_RC5) || \
  4217. defined(TARGET_IS_FIRESTORM_RA2) || \
  4218. defined(TARGET_IS_BLIZZARD_RA1)
  4219. #define ROM_SysCtlUSBPLLEnable \
  4220. ((void (*)(void))ROM_SYSCTLTABLE[31])
  4221. #endif
  4222. #if defined(TARGET_IS_TEMPEST_RB1) || \
  4223. defined(TARGET_IS_TEMPEST_RC1) || \
  4224. defined(TARGET_IS_TEMPEST_RC3) || \
  4225. defined(TARGET_IS_TEMPEST_RC5) || \
  4226. defined(TARGET_IS_FIRESTORM_RA2) || \
  4227. defined(TARGET_IS_BLIZZARD_RA1)
  4228. #define ROM_SysCtlUSBPLLDisable \
  4229. ((void (*)(void))ROM_SYSCTLTABLE[32])
  4230. #endif
  4231. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4232. defined(TARGET_IS_TEMPEST_RC3) || \
  4233. defined(TARGET_IS_TEMPEST_RC5) || \
  4234. defined(TARGET_IS_FIRESTORM_RA2)
  4235. #define ROM_SysCtlI2SMClkSet \
  4236. ((unsigned long (*)(unsigned long ulInputClock, \
  4237. unsigned long ulMClk))ROM_SYSCTLTABLE[33])
  4238. #endif
  4239. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4240. defined(TARGET_IS_TEMPEST_RC3) || \
  4241. defined(TARGET_IS_TEMPEST_RC5) || \
  4242. defined(TARGET_IS_FIRESTORM_RA2) || \
  4243. defined(TARGET_IS_BLIZZARD_RA1)
  4244. #define ROM_SysCtlDelay \
  4245. ((void (*)(unsigned long ulCount))ROM_SYSCTLTABLE[34])
  4246. #endif
  4247. #if defined(TARGET_IS_BLIZZARD_RA1)
  4248. #define ROM_SysCtlPeripheralReady \
  4249. ((tBoolean (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[35])
  4250. #endif
  4251. #if defined(TARGET_IS_BLIZZARD_RA1)
  4252. #define ROM_SysCtlPeripheralPowerOn \
  4253. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[36])
  4254. #endif
  4255. #if defined(TARGET_IS_BLIZZARD_RA1)
  4256. #define ROM_SysCtlPeripheralPowerOff \
  4257. ((void (*)(unsigned long ulPeripheral))ROM_SYSCTLTABLE[37])
  4258. #endif
  4259. #if defined(TARGET_IS_BLIZZARD_RA1)
  4260. #define ROM_SysCtlMOSCConfigSet \
  4261. ((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[44])
  4262. #endif
  4263. #if defined(TARGET_IS_BLIZZARD_RA1)
  4264. #define ROM_SysCtlPIOSCCalibrate \
  4265. ((unsigned long (*)(unsigned long ulType))ROM_SYSCTLTABLE[45])
  4266. #endif
  4267. #if defined(TARGET_IS_BLIZZARD_RA1)
  4268. #define ROM_SysCtlDeepSleepClockSet \
  4269. ((void (*)(unsigned long ulConfig))ROM_SYSCTLTABLE[46])
  4270. #endif
  4271. //*****************************************************************************
  4272. //
  4273. // Macros for calling ROM functions in the SysExc API.
  4274. //
  4275. //*****************************************************************************
  4276. #if defined(TARGET_IS_BLIZZARD_RA1)
  4277. #define ROM_SysExcIntStatus \
  4278. ((unsigned long (*)(tBoolean bMasked))ROM_SYSEXCTABLE[0])
  4279. #endif
  4280. #if defined(TARGET_IS_BLIZZARD_RA1)
  4281. #define ROM_SysExcIntClear \
  4282. ((void (*)(unsigned long ulIntFlags))ROM_SYSEXCTABLE[1])
  4283. #endif
  4284. #if defined(TARGET_IS_BLIZZARD_RA1)
  4285. #define ROM_SysExcIntDisable \
  4286. ((void (*)(unsigned long ulIntFlags))ROM_SYSEXCTABLE[2])
  4287. #endif
  4288. #if defined(TARGET_IS_BLIZZARD_RA1)
  4289. #define ROM_SysExcIntEnable \
  4290. ((void (*)(unsigned long ulIntFlags))ROM_SYSEXCTABLE[3])
  4291. #endif
  4292. //*****************************************************************************
  4293. //
  4294. // Macros for calling ROM functions in the SysTick API.
  4295. //
  4296. //*****************************************************************************
  4297. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4298. defined(TARGET_IS_TEMPEST_RB1) || \
  4299. defined(TARGET_IS_TEMPEST_RC1) || \
  4300. defined(TARGET_IS_TEMPEST_RC3) || \
  4301. defined(TARGET_IS_TEMPEST_RC5) || \
  4302. defined(TARGET_IS_FIRESTORM_RA2) || \
  4303. defined(TARGET_IS_BLIZZARD_RA1)
  4304. #define ROM_SysTickValueGet \
  4305. ((unsigned long (*)(void))ROM_SYSTICKTABLE[0])
  4306. #endif
  4307. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4308. defined(TARGET_IS_TEMPEST_RB1) || \
  4309. defined(TARGET_IS_TEMPEST_RC1) || \
  4310. defined(TARGET_IS_TEMPEST_RC3) || \
  4311. defined(TARGET_IS_TEMPEST_RC5) || \
  4312. defined(TARGET_IS_FIRESTORM_RA2) || \
  4313. defined(TARGET_IS_BLIZZARD_RA1)
  4314. #define ROM_SysTickEnable \
  4315. ((void (*)(void))ROM_SYSTICKTABLE[1])
  4316. #endif
  4317. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4318. defined(TARGET_IS_TEMPEST_RB1) || \
  4319. defined(TARGET_IS_TEMPEST_RC1) || \
  4320. defined(TARGET_IS_TEMPEST_RC3) || \
  4321. defined(TARGET_IS_TEMPEST_RC5) || \
  4322. defined(TARGET_IS_FIRESTORM_RA2) || \
  4323. defined(TARGET_IS_BLIZZARD_RA1)
  4324. #define ROM_SysTickDisable \
  4325. ((void (*)(void))ROM_SYSTICKTABLE[2])
  4326. #endif
  4327. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4328. defined(TARGET_IS_TEMPEST_RB1) || \
  4329. defined(TARGET_IS_TEMPEST_RC1) || \
  4330. defined(TARGET_IS_TEMPEST_RC3) || \
  4331. defined(TARGET_IS_TEMPEST_RC5) || \
  4332. defined(TARGET_IS_FIRESTORM_RA2) || \
  4333. defined(TARGET_IS_BLIZZARD_RA1)
  4334. #define ROM_SysTickIntEnable \
  4335. ((void (*)(void))ROM_SYSTICKTABLE[3])
  4336. #endif
  4337. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4338. defined(TARGET_IS_TEMPEST_RB1) || \
  4339. defined(TARGET_IS_TEMPEST_RC1) || \
  4340. defined(TARGET_IS_TEMPEST_RC3) || \
  4341. defined(TARGET_IS_TEMPEST_RC5) || \
  4342. defined(TARGET_IS_FIRESTORM_RA2) || \
  4343. defined(TARGET_IS_BLIZZARD_RA1)
  4344. #define ROM_SysTickIntDisable \
  4345. ((void (*)(void))ROM_SYSTICKTABLE[4])
  4346. #endif
  4347. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4348. defined(TARGET_IS_TEMPEST_RB1) || \
  4349. defined(TARGET_IS_TEMPEST_RC1) || \
  4350. defined(TARGET_IS_TEMPEST_RC3) || \
  4351. defined(TARGET_IS_TEMPEST_RC5) || \
  4352. defined(TARGET_IS_FIRESTORM_RA2) || \
  4353. defined(TARGET_IS_BLIZZARD_RA1)
  4354. #define ROM_SysTickPeriodSet \
  4355. ((void (*)(unsigned long ulPeriod))ROM_SYSTICKTABLE[5])
  4356. #endif
  4357. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4358. defined(TARGET_IS_TEMPEST_RB1) || \
  4359. defined(TARGET_IS_TEMPEST_RC1) || \
  4360. defined(TARGET_IS_TEMPEST_RC3) || \
  4361. defined(TARGET_IS_TEMPEST_RC5) || \
  4362. defined(TARGET_IS_FIRESTORM_RA2) || \
  4363. defined(TARGET_IS_BLIZZARD_RA1)
  4364. #define ROM_SysTickPeriodGet \
  4365. ((unsigned long (*)(void))ROM_SYSTICKTABLE[6])
  4366. #endif
  4367. //*****************************************************************************
  4368. //
  4369. // Macros for calling ROM functions in the Timer API.
  4370. //
  4371. //*****************************************************************************
  4372. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4373. defined(TARGET_IS_TEMPEST_RB1) || \
  4374. defined(TARGET_IS_TEMPEST_RC1) || \
  4375. defined(TARGET_IS_TEMPEST_RC3) || \
  4376. defined(TARGET_IS_TEMPEST_RC5) || \
  4377. defined(TARGET_IS_FIRESTORM_RA2) || \
  4378. defined(TARGET_IS_BLIZZARD_RA1)
  4379. #define ROM_TimerIntClear \
  4380. ((void (*)(unsigned long ulBase, \
  4381. unsigned long ulIntFlags))ROM_TIMERTABLE[0])
  4382. #endif
  4383. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4384. defined(TARGET_IS_TEMPEST_RB1) || \
  4385. defined(TARGET_IS_TEMPEST_RC1) || \
  4386. defined(TARGET_IS_TEMPEST_RC3) || \
  4387. defined(TARGET_IS_TEMPEST_RC5) || \
  4388. defined(TARGET_IS_FIRESTORM_RA2) || \
  4389. defined(TARGET_IS_BLIZZARD_RA1)
  4390. #define ROM_TimerEnable \
  4391. ((void (*)(unsigned long ulBase, \
  4392. unsigned long ulTimer))ROM_TIMERTABLE[1])
  4393. #endif
  4394. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4395. defined(TARGET_IS_TEMPEST_RB1) || \
  4396. defined(TARGET_IS_TEMPEST_RC1) || \
  4397. defined(TARGET_IS_TEMPEST_RC3) || \
  4398. defined(TARGET_IS_TEMPEST_RC5) || \
  4399. defined(TARGET_IS_FIRESTORM_RA2) || \
  4400. defined(TARGET_IS_BLIZZARD_RA1)
  4401. #define ROM_TimerDisable \
  4402. ((void (*)(unsigned long ulBase, \
  4403. unsigned long ulTimer))ROM_TIMERTABLE[2])
  4404. #endif
  4405. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4406. defined(TARGET_IS_TEMPEST_RB1) || \
  4407. defined(TARGET_IS_TEMPEST_RC1) || \
  4408. defined(TARGET_IS_TEMPEST_RC3) || \
  4409. defined(TARGET_IS_TEMPEST_RC5) || \
  4410. defined(TARGET_IS_FIRESTORM_RA2) || \
  4411. defined(TARGET_IS_BLIZZARD_RA1)
  4412. #define ROM_TimerConfigure \
  4413. ((void (*)(unsigned long ulBase, \
  4414. unsigned long ulConfig))ROM_TIMERTABLE[3])
  4415. #endif
  4416. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4417. defined(TARGET_IS_TEMPEST_RB1) || \
  4418. defined(TARGET_IS_TEMPEST_RC1) || \
  4419. defined(TARGET_IS_TEMPEST_RC3) || \
  4420. defined(TARGET_IS_TEMPEST_RC5) || \
  4421. defined(TARGET_IS_FIRESTORM_RA2) || \
  4422. defined(TARGET_IS_BLIZZARD_RA1)
  4423. #define ROM_TimerControlLevel \
  4424. ((void (*)(unsigned long ulBase, \
  4425. unsigned long ulTimer, \
  4426. tBoolean bInvert))ROM_TIMERTABLE[4])
  4427. #endif
  4428. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4429. defined(TARGET_IS_TEMPEST_RB1) || \
  4430. defined(TARGET_IS_TEMPEST_RC1) || \
  4431. defined(TARGET_IS_TEMPEST_RC3) || \
  4432. defined(TARGET_IS_TEMPEST_RC5) || \
  4433. defined(TARGET_IS_FIRESTORM_RA2) || \
  4434. defined(TARGET_IS_BLIZZARD_RA1)
  4435. #define ROM_TimerControlTrigger \
  4436. ((void (*)(unsigned long ulBase, \
  4437. unsigned long ulTimer, \
  4438. tBoolean bEnable))ROM_TIMERTABLE[5])
  4439. #endif
  4440. #if defined(TARGET_IS_BLIZZARD_RA1)
  4441. #define ROM_TimerControlEvent \
  4442. ((void (*)(unsigned long ulBase, \
  4443. unsigned long ulTimer, \
  4444. unsigned long ulEvent))ROM_TIMERTABLE[6])
  4445. #endif
  4446. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4447. defined(TARGET_IS_TEMPEST_RB1) || \
  4448. defined(TARGET_IS_TEMPEST_RC1) || \
  4449. defined(TARGET_IS_TEMPEST_RC3) || \
  4450. defined(TARGET_IS_TEMPEST_RC5) || \
  4451. defined(TARGET_IS_FIRESTORM_RA2) || \
  4452. defined(TARGET_IS_BLIZZARD_RA1)
  4453. #define ROM_TimerControlStall \
  4454. ((void (*)(unsigned long ulBase, \
  4455. unsigned long ulTimer, \
  4456. tBoolean bStall))ROM_TIMERTABLE[7])
  4457. #endif
  4458. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4459. defined(TARGET_IS_TEMPEST_RB1) || \
  4460. defined(TARGET_IS_TEMPEST_RC1) || \
  4461. defined(TARGET_IS_TEMPEST_RC3) || \
  4462. defined(TARGET_IS_TEMPEST_RC5) || \
  4463. defined(TARGET_IS_FIRESTORM_RA2) || \
  4464. defined(TARGET_IS_BLIZZARD_RA1)
  4465. #define ROM_TimerRTCEnable \
  4466. ((void (*)(unsigned long ulBase))ROM_TIMERTABLE[8])
  4467. #endif
  4468. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4469. defined(TARGET_IS_TEMPEST_RB1) || \
  4470. defined(TARGET_IS_TEMPEST_RC1) || \
  4471. defined(TARGET_IS_TEMPEST_RC3) || \
  4472. defined(TARGET_IS_TEMPEST_RC5) || \
  4473. defined(TARGET_IS_FIRESTORM_RA2) || \
  4474. defined(TARGET_IS_BLIZZARD_RA1)
  4475. #define ROM_TimerRTCDisable \
  4476. ((void (*)(unsigned long ulBase))ROM_TIMERTABLE[9])
  4477. #endif
  4478. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4479. defined(TARGET_IS_TEMPEST_RB1) || \
  4480. defined(TARGET_IS_TEMPEST_RC1) || \
  4481. defined(TARGET_IS_TEMPEST_RC3) || \
  4482. defined(TARGET_IS_TEMPEST_RC5) || \
  4483. defined(TARGET_IS_FIRESTORM_RA2) || \
  4484. defined(TARGET_IS_BLIZZARD_RA1)
  4485. #define ROM_TimerPrescaleSet \
  4486. ((void (*)(unsigned long ulBase, \
  4487. unsigned long ulTimer, \
  4488. unsigned long ulValue))ROM_TIMERTABLE[10])
  4489. #endif
  4490. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4491. defined(TARGET_IS_TEMPEST_RB1) || \
  4492. defined(TARGET_IS_TEMPEST_RC1) || \
  4493. defined(TARGET_IS_TEMPEST_RC3) || \
  4494. defined(TARGET_IS_TEMPEST_RC5) || \
  4495. defined(TARGET_IS_FIRESTORM_RA2) || \
  4496. defined(TARGET_IS_BLIZZARD_RA1)
  4497. #define ROM_TimerPrescaleGet \
  4498. ((unsigned long (*)(unsigned long ulBase, \
  4499. unsigned long ulTimer))ROM_TIMERTABLE[11])
  4500. #endif
  4501. #if defined(TARGET_IS_TEMPEST_RC3) || \
  4502. defined(TARGET_IS_TEMPEST_RC5) || \
  4503. defined(TARGET_IS_FIRESTORM_RA2) || \
  4504. defined(TARGET_IS_BLIZZARD_RA1)
  4505. #define ROM_TimerPrescaleMatchSet \
  4506. ((void (*)(unsigned long ulBase, \
  4507. unsigned long ulTimer, \
  4508. unsigned long ulValue))ROM_TIMERTABLE[12])
  4509. #endif
  4510. #if defined(TARGET_IS_TEMPEST_RC3) || \
  4511. defined(TARGET_IS_TEMPEST_RC5) || \
  4512. defined(TARGET_IS_FIRESTORM_RA2) || \
  4513. defined(TARGET_IS_BLIZZARD_RA1)
  4514. #define ROM_TimerPrescaleMatchGet \
  4515. ((unsigned long (*)(unsigned long ulBase, \
  4516. unsigned long ulTimer))ROM_TIMERTABLE[13])
  4517. #endif
  4518. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4519. defined(TARGET_IS_TEMPEST_RB1) || \
  4520. defined(TARGET_IS_TEMPEST_RC1) || \
  4521. defined(TARGET_IS_TEMPEST_RC3) || \
  4522. defined(TARGET_IS_TEMPEST_RC5) || \
  4523. defined(TARGET_IS_FIRESTORM_RA2) || \
  4524. defined(TARGET_IS_BLIZZARD_RA1)
  4525. #define ROM_TimerLoadSet \
  4526. ((void (*)(unsigned long ulBase, \
  4527. unsigned long ulTimer, \
  4528. unsigned long ulValue))ROM_TIMERTABLE[14])
  4529. #endif
  4530. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4531. defined(TARGET_IS_TEMPEST_RB1) || \
  4532. defined(TARGET_IS_TEMPEST_RC1) || \
  4533. defined(TARGET_IS_TEMPEST_RC3) || \
  4534. defined(TARGET_IS_TEMPEST_RC5) || \
  4535. defined(TARGET_IS_FIRESTORM_RA2) || \
  4536. defined(TARGET_IS_BLIZZARD_RA1)
  4537. #define ROM_TimerLoadGet \
  4538. ((unsigned long (*)(unsigned long ulBase, \
  4539. unsigned long ulTimer))ROM_TIMERTABLE[15])
  4540. #endif
  4541. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4542. defined(TARGET_IS_TEMPEST_RB1) || \
  4543. defined(TARGET_IS_TEMPEST_RC1) || \
  4544. defined(TARGET_IS_TEMPEST_RC3) || \
  4545. defined(TARGET_IS_TEMPEST_RC5) || \
  4546. defined(TARGET_IS_FIRESTORM_RA2) || \
  4547. defined(TARGET_IS_BLIZZARD_RA1)
  4548. #define ROM_TimerValueGet \
  4549. ((unsigned long (*)(unsigned long ulBase, \
  4550. unsigned long ulTimer))ROM_TIMERTABLE[16])
  4551. #endif
  4552. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4553. defined(TARGET_IS_TEMPEST_RB1) || \
  4554. defined(TARGET_IS_TEMPEST_RC1) || \
  4555. defined(TARGET_IS_TEMPEST_RC3) || \
  4556. defined(TARGET_IS_TEMPEST_RC5) || \
  4557. defined(TARGET_IS_FIRESTORM_RA2) || \
  4558. defined(TARGET_IS_BLIZZARD_RA1)
  4559. #define ROM_TimerMatchSet \
  4560. ((void (*)(unsigned long ulBase, \
  4561. unsigned long ulTimer, \
  4562. unsigned long ulValue))ROM_TIMERTABLE[17])
  4563. #endif
  4564. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4565. defined(TARGET_IS_TEMPEST_RB1) || \
  4566. defined(TARGET_IS_TEMPEST_RC1) || \
  4567. defined(TARGET_IS_TEMPEST_RC3) || \
  4568. defined(TARGET_IS_TEMPEST_RC5) || \
  4569. defined(TARGET_IS_FIRESTORM_RA2) || \
  4570. defined(TARGET_IS_BLIZZARD_RA1)
  4571. #define ROM_TimerMatchGet \
  4572. ((unsigned long (*)(unsigned long ulBase, \
  4573. unsigned long ulTimer))ROM_TIMERTABLE[18])
  4574. #endif
  4575. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4576. defined(TARGET_IS_TEMPEST_RB1) || \
  4577. defined(TARGET_IS_TEMPEST_RC1) || \
  4578. defined(TARGET_IS_TEMPEST_RC3) || \
  4579. defined(TARGET_IS_TEMPEST_RC5) || \
  4580. defined(TARGET_IS_FIRESTORM_RA2) || \
  4581. defined(TARGET_IS_BLIZZARD_RA1)
  4582. #define ROM_TimerIntEnable \
  4583. ((void (*)(unsigned long ulBase, \
  4584. unsigned long ulIntFlags))ROM_TIMERTABLE[19])
  4585. #endif
  4586. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4587. defined(TARGET_IS_TEMPEST_RB1) || \
  4588. defined(TARGET_IS_TEMPEST_RC1) || \
  4589. defined(TARGET_IS_TEMPEST_RC3) || \
  4590. defined(TARGET_IS_TEMPEST_RC5) || \
  4591. defined(TARGET_IS_FIRESTORM_RA2) || \
  4592. defined(TARGET_IS_BLIZZARD_RA1)
  4593. #define ROM_TimerIntDisable \
  4594. ((void (*)(unsigned long ulBase, \
  4595. unsigned long ulIntFlags))ROM_TIMERTABLE[20])
  4596. #endif
  4597. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4598. defined(TARGET_IS_TEMPEST_RB1) || \
  4599. defined(TARGET_IS_TEMPEST_RC1) || \
  4600. defined(TARGET_IS_TEMPEST_RC3) || \
  4601. defined(TARGET_IS_TEMPEST_RC5) || \
  4602. defined(TARGET_IS_FIRESTORM_RA2) || \
  4603. defined(TARGET_IS_BLIZZARD_RA1)
  4604. #define ROM_TimerIntStatus \
  4605. ((unsigned long (*)(unsigned long ulBase, \
  4606. tBoolean bMasked))ROM_TIMERTABLE[21])
  4607. #endif
  4608. #if defined(TARGET_IS_TEMPEST_RC3) || \
  4609. defined(TARGET_IS_TEMPEST_RC5) || \
  4610. defined(TARGET_IS_FIRESTORM_RA2) || \
  4611. defined(TARGET_IS_BLIZZARD_RA1)
  4612. #define ROM_TimerControlWaitOnTrigger \
  4613. ((void (*)(unsigned long ulBase, \
  4614. unsigned long ulTimer, \
  4615. tBoolean bWait))ROM_TIMERTABLE[22])
  4616. #endif
  4617. #if defined(TARGET_IS_BLIZZARD_RA1)
  4618. #define ROM_TimerLoadSet64 \
  4619. ((void (*)(unsigned long ulBase, \
  4620. unsigned long long ullValue))ROM_TIMERTABLE[23])
  4621. #endif
  4622. #if defined(TARGET_IS_BLIZZARD_RA1)
  4623. #define ROM_TimerLoadGet64 \
  4624. ((unsigned long long (*)(unsigned long ulBase))ROM_TIMERTABLE[24])
  4625. #endif
  4626. #if defined(TARGET_IS_BLIZZARD_RA1)
  4627. #define ROM_TimerValueGet64 \
  4628. ((unsigned long long (*)(unsigned long ulBase))ROM_TIMERTABLE[25])
  4629. #endif
  4630. #if defined(TARGET_IS_BLIZZARD_RA1)
  4631. #define ROM_TimerMatchSet64 \
  4632. ((void (*)(unsigned long ulBase, \
  4633. unsigned long long ullValue))ROM_TIMERTABLE[26])
  4634. #endif
  4635. #if defined(TARGET_IS_BLIZZARD_RA1)
  4636. #define ROM_TimerMatchGet64 \
  4637. ((unsigned long long (*)(unsigned long ulBase))ROM_TIMERTABLE[27])
  4638. #endif
  4639. //*****************************************************************************
  4640. //
  4641. // Macros for calling ROM functions in the UART API.
  4642. //
  4643. //*****************************************************************************
  4644. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4645. defined(TARGET_IS_TEMPEST_RB1) || \
  4646. defined(TARGET_IS_TEMPEST_RC1) || \
  4647. defined(TARGET_IS_TEMPEST_RC3) || \
  4648. defined(TARGET_IS_TEMPEST_RC5) || \
  4649. defined(TARGET_IS_FIRESTORM_RA2) || \
  4650. defined(TARGET_IS_BLIZZARD_RA1)
  4651. #define ROM_UARTCharPut \
  4652. ((void (*)(unsigned long ulBase, \
  4653. unsigned char ucData))ROM_UARTTABLE[0])
  4654. #endif
  4655. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4656. defined(TARGET_IS_TEMPEST_RB1) || \
  4657. defined(TARGET_IS_TEMPEST_RC1) || \
  4658. defined(TARGET_IS_TEMPEST_RC3) || \
  4659. defined(TARGET_IS_TEMPEST_RC5) || \
  4660. defined(TARGET_IS_FIRESTORM_RA2) || \
  4661. defined(TARGET_IS_BLIZZARD_RA1)
  4662. #define ROM_UARTParityModeSet \
  4663. ((void (*)(unsigned long ulBase, \
  4664. unsigned long ulParity))ROM_UARTTABLE[1])
  4665. #endif
  4666. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4667. defined(TARGET_IS_TEMPEST_RB1) || \
  4668. defined(TARGET_IS_TEMPEST_RC1) || \
  4669. defined(TARGET_IS_TEMPEST_RC3) || \
  4670. defined(TARGET_IS_TEMPEST_RC5) || \
  4671. defined(TARGET_IS_FIRESTORM_RA2) || \
  4672. defined(TARGET_IS_BLIZZARD_RA1)
  4673. #define ROM_UARTParityModeGet \
  4674. ((unsigned long (*)(unsigned long ulBase))ROM_UARTTABLE[2])
  4675. #endif
  4676. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4677. defined(TARGET_IS_TEMPEST_RB1) || \
  4678. defined(TARGET_IS_TEMPEST_RC1) || \
  4679. defined(TARGET_IS_TEMPEST_RC3) || \
  4680. defined(TARGET_IS_TEMPEST_RC5) || \
  4681. defined(TARGET_IS_FIRESTORM_RA2) || \
  4682. defined(TARGET_IS_BLIZZARD_RA1)
  4683. #define ROM_UARTFIFOLevelSet \
  4684. ((void (*)(unsigned long ulBase, \
  4685. unsigned long ulTxLevel, \
  4686. unsigned long ulRxLevel))ROM_UARTTABLE[3])
  4687. #endif
  4688. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4689. defined(TARGET_IS_TEMPEST_RB1) || \
  4690. defined(TARGET_IS_TEMPEST_RC1) || \
  4691. defined(TARGET_IS_TEMPEST_RC3) || \
  4692. defined(TARGET_IS_TEMPEST_RC5) || \
  4693. defined(TARGET_IS_FIRESTORM_RA2) || \
  4694. defined(TARGET_IS_BLIZZARD_RA1)
  4695. #define ROM_UARTFIFOLevelGet \
  4696. ((void (*)(unsigned long ulBase, \
  4697. unsigned long *pulTxLevel, \
  4698. unsigned long *pulRxLevel))ROM_UARTTABLE[4])
  4699. #endif
  4700. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4701. defined(TARGET_IS_TEMPEST_RB1) || \
  4702. defined(TARGET_IS_TEMPEST_RC1) || \
  4703. defined(TARGET_IS_TEMPEST_RC3) || \
  4704. defined(TARGET_IS_TEMPEST_RC5) || \
  4705. defined(TARGET_IS_FIRESTORM_RA2) || \
  4706. defined(TARGET_IS_BLIZZARD_RA1)
  4707. #define ROM_UARTConfigSetExpClk \
  4708. ((void (*)(unsigned long ulBase, \
  4709. unsigned long ulUARTClk, \
  4710. unsigned long ulBaud, \
  4711. unsigned long ulConfig))ROM_UARTTABLE[5])
  4712. #endif
  4713. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4714. defined(TARGET_IS_TEMPEST_RB1) || \
  4715. defined(TARGET_IS_TEMPEST_RC1) || \
  4716. defined(TARGET_IS_TEMPEST_RC3) || \
  4717. defined(TARGET_IS_TEMPEST_RC5) || \
  4718. defined(TARGET_IS_FIRESTORM_RA2) || \
  4719. defined(TARGET_IS_BLIZZARD_RA1)
  4720. #define ROM_UARTConfigGetExpClk \
  4721. ((void (*)(unsigned long ulBase, \
  4722. unsigned long ulUARTClk, \
  4723. unsigned long *pulBaud, \
  4724. unsigned long *pulConfig))ROM_UARTTABLE[6])
  4725. #endif
  4726. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4727. defined(TARGET_IS_TEMPEST_RB1) || \
  4728. defined(TARGET_IS_TEMPEST_RC1) || \
  4729. defined(TARGET_IS_TEMPEST_RC3) || \
  4730. defined(TARGET_IS_TEMPEST_RC5) || \
  4731. defined(TARGET_IS_FIRESTORM_RA2) || \
  4732. defined(TARGET_IS_BLIZZARD_RA1)
  4733. #define ROM_UARTEnable \
  4734. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[7])
  4735. #endif
  4736. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4737. defined(TARGET_IS_TEMPEST_RB1) || \
  4738. defined(TARGET_IS_TEMPEST_RC1) || \
  4739. defined(TARGET_IS_TEMPEST_RC3) || \
  4740. defined(TARGET_IS_TEMPEST_RC5) || \
  4741. defined(TARGET_IS_FIRESTORM_RA2) || \
  4742. defined(TARGET_IS_BLIZZARD_RA1)
  4743. #define ROM_UARTDisable \
  4744. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[8])
  4745. #endif
  4746. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4747. defined(TARGET_IS_TEMPEST_RB1) || \
  4748. defined(TARGET_IS_TEMPEST_RC1) || \
  4749. defined(TARGET_IS_TEMPEST_RC3) || \
  4750. defined(TARGET_IS_TEMPEST_RC5) || \
  4751. defined(TARGET_IS_FIRESTORM_RA2) || \
  4752. defined(TARGET_IS_BLIZZARD_RA1)
  4753. #define ROM_UARTEnableSIR \
  4754. ((void (*)(unsigned long ulBase, \
  4755. tBoolean bLowPower))ROM_UARTTABLE[9])
  4756. #endif
  4757. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4758. defined(TARGET_IS_TEMPEST_RB1) || \
  4759. defined(TARGET_IS_TEMPEST_RC1) || \
  4760. defined(TARGET_IS_TEMPEST_RC3) || \
  4761. defined(TARGET_IS_TEMPEST_RC5) || \
  4762. defined(TARGET_IS_FIRESTORM_RA2) || \
  4763. defined(TARGET_IS_BLIZZARD_RA1)
  4764. #define ROM_UARTDisableSIR \
  4765. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[10])
  4766. #endif
  4767. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4768. defined(TARGET_IS_TEMPEST_RB1) || \
  4769. defined(TARGET_IS_TEMPEST_RC1) || \
  4770. defined(TARGET_IS_TEMPEST_RC3) || \
  4771. defined(TARGET_IS_TEMPEST_RC5) || \
  4772. defined(TARGET_IS_FIRESTORM_RA2) || \
  4773. defined(TARGET_IS_BLIZZARD_RA1)
  4774. #define ROM_UARTCharsAvail \
  4775. ((tBoolean (*)(unsigned long ulBase))ROM_UARTTABLE[11])
  4776. #endif
  4777. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4778. defined(TARGET_IS_TEMPEST_RB1) || \
  4779. defined(TARGET_IS_TEMPEST_RC1) || \
  4780. defined(TARGET_IS_TEMPEST_RC3) || \
  4781. defined(TARGET_IS_TEMPEST_RC5) || \
  4782. defined(TARGET_IS_FIRESTORM_RA2) || \
  4783. defined(TARGET_IS_BLIZZARD_RA1)
  4784. #define ROM_UARTSpaceAvail \
  4785. ((tBoolean (*)(unsigned long ulBase))ROM_UARTTABLE[12])
  4786. #endif
  4787. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4788. defined(TARGET_IS_TEMPEST_RB1) || \
  4789. defined(TARGET_IS_TEMPEST_RC1) || \
  4790. defined(TARGET_IS_TEMPEST_RC3) || \
  4791. defined(TARGET_IS_TEMPEST_RC5) || \
  4792. defined(TARGET_IS_FIRESTORM_RA2) || \
  4793. defined(TARGET_IS_BLIZZARD_RA1)
  4794. #define ROM_UARTCharGetNonBlocking \
  4795. ((long (*)(unsigned long ulBase))ROM_UARTTABLE[13])
  4796. #endif
  4797. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4798. defined(TARGET_IS_TEMPEST_RB1) || \
  4799. defined(TARGET_IS_TEMPEST_RC1) || \
  4800. defined(TARGET_IS_TEMPEST_RC3) || \
  4801. defined(TARGET_IS_TEMPEST_RC5) || \
  4802. defined(TARGET_IS_FIRESTORM_RA2) || \
  4803. defined(TARGET_IS_BLIZZARD_RA1)
  4804. #define ROM_UARTCharGet \
  4805. ((long (*)(unsigned long ulBase))ROM_UARTTABLE[14])
  4806. #endif
  4807. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4808. defined(TARGET_IS_TEMPEST_RB1) || \
  4809. defined(TARGET_IS_TEMPEST_RC1) || \
  4810. defined(TARGET_IS_TEMPEST_RC3) || \
  4811. defined(TARGET_IS_TEMPEST_RC5) || \
  4812. defined(TARGET_IS_FIRESTORM_RA2) || \
  4813. defined(TARGET_IS_BLIZZARD_RA1)
  4814. #define ROM_UARTCharPutNonBlocking \
  4815. ((tBoolean (*)(unsigned long ulBase, \
  4816. unsigned char ucData))ROM_UARTTABLE[15])
  4817. #endif
  4818. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4819. defined(TARGET_IS_TEMPEST_RB1) || \
  4820. defined(TARGET_IS_TEMPEST_RC1) || \
  4821. defined(TARGET_IS_TEMPEST_RC3) || \
  4822. defined(TARGET_IS_TEMPEST_RC5) || \
  4823. defined(TARGET_IS_FIRESTORM_RA2) || \
  4824. defined(TARGET_IS_BLIZZARD_RA1)
  4825. #define ROM_UARTBreakCtl \
  4826. ((void (*)(unsigned long ulBase, \
  4827. tBoolean bBreakState))ROM_UARTTABLE[16])
  4828. #endif
  4829. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4830. defined(TARGET_IS_TEMPEST_RB1) || \
  4831. defined(TARGET_IS_TEMPEST_RC1) || \
  4832. defined(TARGET_IS_TEMPEST_RC3) || \
  4833. defined(TARGET_IS_TEMPEST_RC5) || \
  4834. defined(TARGET_IS_FIRESTORM_RA2) || \
  4835. defined(TARGET_IS_BLIZZARD_RA1)
  4836. #define ROM_UARTIntEnable \
  4837. ((void (*)(unsigned long ulBase, \
  4838. unsigned long ulIntFlags))ROM_UARTTABLE[17])
  4839. #endif
  4840. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4841. defined(TARGET_IS_TEMPEST_RB1) || \
  4842. defined(TARGET_IS_TEMPEST_RC1) || \
  4843. defined(TARGET_IS_TEMPEST_RC3) || \
  4844. defined(TARGET_IS_TEMPEST_RC5) || \
  4845. defined(TARGET_IS_FIRESTORM_RA2) || \
  4846. defined(TARGET_IS_BLIZZARD_RA1)
  4847. #define ROM_UARTIntDisable \
  4848. ((void (*)(unsigned long ulBase, \
  4849. unsigned long ulIntFlags))ROM_UARTTABLE[18])
  4850. #endif
  4851. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4852. defined(TARGET_IS_TEMPEST_RB1) || \
  4853. defined(TARGET_IS_TEMPEST_RC1) || \
  4854. defined(TARGET_IS_TEMPEST_RC3) || \
  4855. defined(TARGET_IS_TEMPEST_RC5) || \
  4856. defined(TARGET_IS_FIRESTORM_RA2) || \
  4857. defined(TARGET_IS_BLIZZARD_RA1)
  4858. #define ROM_UARTIntStatus \
  4859. ((unsigned long (*)(unsigned long ulBase, \
  4860. tBoolean bMasked))ROM_UARTTABLE[19])
  4861. #endif
  4862. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4863. defined(TARGET_IS_TEMPEST_RB1) || \
  4864. defined(TARGET_IS_TEMPEST_RC1) || \
  4865. defined(TARGET_IS_TEMPEST_RC3) || \
  4866. defined(TARGET_IS_TEMPEST_RC5) || \
  4867. defined(TARGET_IS_FIRESTORM_RA2) || \
  4868. defined(TARGET_IS_BLIZZARD_RA1)
  4869. #define ROM_UARTIntClear \
  4870. ((void (*)(unsigned long ulBase, \
  4871. unsigned long ulIntFlags))ROM_UARTTABLE[20])
  4872. #endif
  4873. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  4874. defined(TARGET_IS_TEMPEST_RB1) || \
  4875. defined(TARGET_IS_TEMPEST_RC1) || \
  4876. defined(TARGET_IS_TEMPEST_RC3) || \
  4877. defined(TARGET_IS_TEMPEST_RC5) || \
  4878. defined(TARGET_IS_FIRESTORM_RA2) || \
  4879. defined(TARGET_IS_BLIZZARD_RA1)
  4880. #define ROM_UpdateUART \
  4881. ((void (*)(void))ROM_UARTTABLE[21])
  4882. #endif
  4883. #if defined(TARGET_IS_TEMPEST_RB1) || \
  4884. defined(TARGET_IS_TEMPEST_RC1) || \
  4885. defined(TARGET_IS_TEMPEST_RC3) || \
  4886. defined(TARGET_IS_TEMPEST_RC5) || \
  4887. defined(TARGET_IS_FIRESTORM_RA2) || \
  4888. defined(TARGET_IS_BLIZZARD_RA1)
  4889. #define ROM_UARTDMAEnable \
  4890. ((void (*)(unsigned long ulBase, \
  4891. unsigned long ulDMAFlags))ROM_UARTTABLE[22])
  4892. #endif
  4893. #if defined(TARGET_IS_TEMPEST_RB1) || \
  4894. defined(TARGET_IS_TEMPEST_RC1) || \
  4895. defined(TARGET_IS_TEMPEST_RC3) || \
  4896. defined(TARGET_IS_TEMPEST_RC5) || \
  4897. defined(TARGET_IS_FIRESTORM_RA2) || \
  4898. defined(TARGET_IS_BLIZZARD_RA1)
  4899. #define ROM_UARTDMADisable \
  4900. ((void (*)(unsigned long ulBase, \
  4901. unsigned long ulDMAFlags))ROM_UARTTABLE[23])
  4902. #endif
  4903. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4904. defined(TARGET_IS_TEMPEST_RC3) || \
  4905. defined(TARGET_IS_TEMPEST_RC5) || \
  4906. defined(TARGET_IS_FIRESTORM_RA2) || \
  4907. defined(TARGET_IS_BLIZZARD_RA1)
  4908. #define ROM_UARTFIFOEnable \
  4909. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[24])
  4910. #endif
  4911. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4912. defined(TARGET_IS_TEMPEST_RC3) || \
  4913. defined(TARGET_IS_TEMPEST_RC5) || \
  4914. defined(TARGET_IS_FIRESTORM_RA2) || \
  4915. defined(TARGET_IS_BLIZZARD_RA1)
  4916. #define ROM_UARTFIFODisable \
  4917. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[25])
  4918. #endif
  4919. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4920. defined(TARGET_IS_TEMPEST_RC3) || \
  4921. defined(TARGET_IS_TEMPEST_RC5) || \
  4922. defined(TARGET_IS_FIRESTORM_RA2) || \
  4923. defined(TARGET_IS_BLIZZARD_RA1)
  4924. #define ROM_UARTBusy \
  4925. ((tBoolean (*)(unsigned long ulBase))ROM_UARTTABLE[26])
  4926. #endif
  4927. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4928. defined(TARGET_IS_TEMPEST_RC3) || \
  4929. defined(TARGET_IS_TEMPEST_RC5) || \
  4930. defined(TARGET_IS_FIRESTORM_RA2) || \
  4931. defined(TARGET_IS_BLIZZARD_RA1)
  4932. #define ROM_UARTTxIntModeSet \
  4933. ((void (*)(unsigned long ulBase, \
  4934. unsigned long ulMode))ROM_UARTTABLE[27])
  4935. #endif
  4936. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4937. defined(TARGET_IS_TEMPEST_RC3) || \
  4938. defined(TARGET_IS_TEMPEST_RC5) || \
  4939. defined(TARGET_IS_FIRESTORM_RA2) || \
  4940. defined(TARGET_IS_BLIZZARD_RA1)
  4941. #define ROM_UARTTxIntModeGet \
  4942. ((unsigned long (*)(unsigned long ulBase))ROM_UARTTABLE[28])
  4943. #endif
  4944. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4945. defined(TARGET_IS_TEMPEST_RC3) || \
  4946. defined(TARGET_IS_TEMPEST_RC5) || \
  4947. defined(TARGET_IS_FIRESTORM_RA2) || \
  4948. defined(TARGET_IS_BLIZZARD_RA1)
  4949. #define ROM_UARTRxErrorGet \
  4950. ((unsigned long (*)(unsigned long ulBase))ROM_UARTTABLE[29])
  4951. #endif
  4952. #if defined(TARGET_IS_TEMPEST_RC1) || \
  4953. defined(TARGET_IS_TEMPEST_RC3) || \
  4954. defined(TARGET_IS_TEMPEST_RC5) || \
  4955. defined(TARGET_IS_FIRESTORM_RA2) || \
  4956. defined(TARGET_IS_BLIZZARD_RA1)
  4957. #define ROM_UARTRxErrorClear \
  4958. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[30])
  4959. #endif
  4960. #if defined(TARGET_IS_BLIZZARD_RA1)
  4961. #define ROM_UARTClockSourceSet \
  4962. ((void (*)(unsigned long ulBase, \
  4963. unsigned long ulSource))ROM_UARTTABLE[31])
  4964. #endif
  4965. #if defined(TARGET_IS_BLIZZARD_RA1)
  4966. #define ROM_UARTClockSourceGet \
  4967. ((unsigned long (*)(unsigned long ulBase))ROM_UARTTABLE[32])
  4968. #endif
  4969. #if defined(TARGET_IS_BLIZZARD_RA1)
  4970. #define ROM_UART9BitEnable \
  4971. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[33])
  4972. #endif
  4973. #if defined(TARGET_IS_BLIZZARD_RA1)
  4974. #define ROM_UART9BitDisable \
  4975. ((void (*)(unsigned long ulBase))ROM_UARTTABLE[34])
  4976. #endif
  4977. #if defined(TARGET_IS_BLIZZARD_RA1)
  4978. #define ROM_UART9BitAddrSet \
  4979. ((void (*)(unsigned long ulBase, \
  4980. unsigned char ucAddr, \
  4981. unsigned char ucMask))ROM_UARTTABLE[35])
  4982. #endif
  4983. #if defined(TARGET_IS_BLIZZARD_RA1)
  4984. #define ROM_UART9BitAddrSend \
  4985. ((void (*)(unsigned long ulBase, \
  4986. unsigned char ucAddr))ROM_UARTTABLE[36])
  4987. #endif
  4988. //*****************************************************************************
  4989. //
  4990. // Macros for calling ROM functions in the uDMA API.
  4991. //
  4992. //*****************************************************************************
  4993. #if defined(TARGET_IS_TEMPEST_RB1) || \
  4994. defined(TARGET_IS_TEMPEST_RC1) || \
  4995. defined(TARGET_IS_TEMPEST_RC3) || \
  4996. defined(TARGET_IS_TEMPEST_RC5) || \
  4997. defined(TARGET_IS_FIRESTORM_RA2) || \
  4998. defined(TARGET_IS_BLIZZARD_RA1)
  4999. #define ROM_uDMAChannelTransferSet \
  5000. ((void (*)(unsigned long ulChannelStructIndex, \
  5001. unsigned long ulMode, \
  5002. void *pvSrcAddr, \
  5003. void *pvDstAddr, \
  5004. unsigned long ulTransferSize))ROM_UDMATABLE[0])
  5005. #endif
  5006. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5007. defined(TARGET_IS_TEMPEST_RC1) || \
  5008. defined(TARGET_IS_TEMPEST_RC3) || \
  5009. defined(TARGET_IS_TEMPEST_RC5) || \
  5010. defined(TARGET_IS_FIRESTORM_RA2) || \
  5011. defined(TARGET_IS_BLIZZARD_RA1)
  5012. #define ROM_uDMAEnable \
  5013. ((void (*)(void))ROM_UDMATABLE[1])
  5014. #endif
  5015. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5016. defined(TARGET_IS_TEMPEST_RC1) || \
  5017. defined(TARGET_IS_TEMPEST_RC3) || \
  5018. defined(TARGET_IS_TEMPEST_RC5) || \
  5019. defined(TARGET_IS_FIRESTORM_RA2) || \
  5020. defined(TARGET_IS_BLIZZARD_RA1)
  5021. #define ROM_uDMADisable \
  5022. ((void (*)(void))ROM_UDMATABLE[2])
  5023. #endif
  5024. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5025. defined(TARGET_IS_TEMPEST_RC1) || \
  5026. defined(TARGET_IS_TEMPEST_RC3) || \
  5027. defined(TARGET_IS_TEMPEST_RC5) || \
  5028. defined(TARGET_IS_FIRESTORM_RA2) || \
  5029. defined(TARGET_IS_BLIZZARD_RA1)
  5030. #define ROM_uDMAErrorStatusGet \
  5031. ((unsigned long (*)(void))ROM_UDMATABLE[3])
  5032. #endif
  5033. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5034. defined(TARGET_IS_TEMPEST_RC1) || \
  5035. defined(TARGET_IS_TEMPEST_RC3) || \
  5036. defined(TARGET_IS_TEMPEST_RC5) || \
  5037. defined(TARGET_IS_FIRESTORM_RA2) || \
  5038. defined(TARGET_IS_BLIZZARD_RA1)
  5039. #define ROM_uDMAErrorStatusClear \
  5040. ((void (*)(void))ROM_UDMATABLE[4])
  5041. #endif
  5042. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5043. defined(TARGET_IS_TEMPEST_RC1) || \
  5044. defined(TARGET_IS_TEMPEST_RC3) || \
  5045. defined(TARGET_IS_TEMPEST_RC5) || \
  5046. defined(TARGET_IS_FIRESTORM_RA2) || \
  5047. defined(TARGET_IS_BLIZZARD_RA1)
  5048. #define ROM_uDMAChannelEnable \
  5049. ((void (*)(unsigned long ulChannelNum))ROM_UDMATABLE[5])
  5050. #endif
  5051. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5052. defined(TARGET_IS_TEMPEST_RC1) || \
  5053. defined(TARGET_IS_TEMPEST_RC3) || \
  5054. defined(TARGET_IS_TEMPEST_RC5) || \
  5055. defined(TARGET_IS_FIRESTORM_RA2) || \
  5056. defined(TARGET_IS_BLIZZARD_RA1)
  5057. #define ROM_uDMAChannelDisable \
  5058. ((void (*)(unsigned long ulChannelNum))ROM_UDMATABLE[6])
  5059. #endif
  5060. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5061. defined(TARGET_IS_TEMPEST_RC1) || \
  5062. defined(TARGET_IS_TEMPEST_RC3) || \
  5063. defined(TARGET_IS_TEMPEST_RC5) || \
  5064. defined(TARGET_IS_FIRESTORM_RA2) || \
  5065. defined(TARGET_IS_BLIZZARD_RA1)
  5066. #define ROM_uDMAChannelIsEnabled \
  5067. ((tBoolean (*)(unsigned long ulChannelNum))ROM_UDMATABLE[7])
  5068. #endif
  5069. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5070. defined(TARGET_IS_TEMPEST_RC1) || \
  5071. defined(TARGET_IS_TEMPEST_RC3) || \
  5072. defined(TARGET_IS_TEMPEST_RC5) || \
  5073. defined(TARGET_IS_FIRESTORM_RA2) || \
  5074. defined(TARGET_IS_BLIZZARD_RA1)
  5075. #define ROM_uDMAControlBaseSet \
  5076. ((void (*)(void *pControlTable))ROM_UDMATABLE[8])
  5077. #endif
  5078. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5079. defined(TARGET_IS_TEMPEST_RC1) || \
  5080. defined(TARGET_IS_TEMPEST_RC3) || \
  5081. defined(TARGET_IS_TEMPEST_RC5) || \
  5082. defined(TARGET_IS_FIRESTORM_RA2) || \
  5083. defined(TARGET_IS_BLIZZARD_RA1)
  5084. #define ROM_uDMAControlBaseGet \
  5085. ((void * (*)(void))ROM_UDMATABLE[9])
  5086. #endif
  5087. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5088. defined(TARGET_IS_TEMPEST_RC1) || \
  5089. defined(TARGET_IS_TEMPEST_RC3) || \
  5090. defined(TARGET_IS_TEMPEST_RC5) || \
  5091. defined(TARGET_IS_FIRESTORM_RA2) || \
  5092. defined(TARGET_IS_BLIZZARD_RA1)
  5093. #define ROM_uDMAChannelRequest \
  5094. ((void (*)(unsigned long ulChannelNum))ROM_UDMATABLE[10])
  5095. #endif
  5096. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5097. defined(TARGET_IS_TEMPEST_RC1) || \
  5098. defined(TARGET_IS_TEMPEST_RC3) || \
  5099. defined(TARGET_IS_TEMPEST_RC5) || \
  5100. defined(TARGET_IS_FIRESTORM_RA2) || \
  5101. defined(TARGET_IS_BLIZZARD_RA1)
  5102. #define ROM_uDMAChannelAttributeEnable \
  5103. ((void (*)(unsigned long ulChannelNum, \
  5104. unsigned long ulAttr))ROM_UDMATABLE[11])
  5105. #endif
  5106. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5107. defined(TARGET_IS_TEMPEST_RC1) || \
  5108. defined(TARGET_IS_TEMPEST_RC3) || \
  5109. defined(TARGET_IS_TEMPEST_RC5) || \
  5110. defined(TARGET_IS_FIRESTORM_RA2) || \
  5111. defined(TARGET_IS_BLIZZARD_RA1)
  5112. #define ROM_uDMAChannelAttributeDisable \
  5113. ((void (*)(unsigned long ulChannelNum, \
  5114. unsigned long ulAttr))ROM_UDMATABLE[12])
  5115. #endif
  5116. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5117. defined(TARGET_IS_TEMPEST_RC1) || \
  5118. defined(TARGET_IS_TEMPEST_RC3) || \
  5119. defined(TARGET_IS_TEMPEST_RC5) || \
  5120. defined(TARGET_IS_FIRESTORM_RA2) || \
  5121. defined(TARGET_IS_BLIZZARD_RA1)
  5122. #define ROM_uDMAChannelAttributeGet \
  5123. ((unsigned long (*)(unsigned long ulChannelNum))ROM_UDMATABLE[13])
  5124. #endif
  5125. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5126. defined(TARGET_IS_TEMPEST_RC1) || \
  5127. defined(TARGET_IS_TEMPEST_RC3) || \
  5128. defined(TARGET_IS_TEMPEST_RC5) || \
  5129. defined(TARGET_IS_FIRESTORM_RA2) || \
  5130. defined(TARGET_IS_BLIZZARD_RA1)
  5131. #define ROM_uDMAChannelControlSet \
  5132. ((void (*)(unsigned long ulChannelStructIndex, \
  5133. unsigned long ulControl))ROM_UDMATABLE[14])
  5134. #endif
  5135. #if defined(TARGET_IS_TEMPEST_RC3) || \
  5136. defined(TARGET_IS_TEMPEST_RC5) || \
  5137. defined(TARGET_IS_FIRESTORM_RA2) || \
  5138. defined(TARGET_IS_BLIZZARD_RA1)
  5139. #define ROM_uDMAChannelSizeGet \
  5140. ((unsigned long (*)(unsigned long ulChannelStructIndex))ROM_UDMATABLE[15])
  5141. #endif
  5142. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5143. defined(TARGET_IS_TEMPEST_RC1) || \
  5144. defined(TARGET_IS_TEMPEST_RC3) || \
  5145. defined(TARGET_IS_TEMPEST_RC5) || \
  5146. defined(TARGET_IS_FIRESTORM_RA2) || \
  5147. defined(TARGET_IS_BLIZZARD_RA1)
  5148. #define ROM_uDMAChannelModeGet \
  5149. ((unsigned long (*)(unsigned long ulChannelStructIndex))ROM_UDMATABLE[16])
  5150. #endif
  5151. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5152. defined(TARGET_IS_TEMPEST_RC3) || \
  5153. defined(TARGET_IS_TEMPEST_RC5) || \
  5154. defined(TARGET_IS_FIRESTORM_RA2) || \
  5155. defined(TARGET_IS_BLIZZARD_RA1)
  5156. #define ROM_uDMAChannelSelectSecondary \
  5157. ((void (*)(unsigned long ulSecPeriphs))ROM_UDMATABLE[17])
  5158. #endif
  5159. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5160. defined(TARGET_IS_TEMPEST_RC3) || \
  5161. defined(TARGET_IS_TEMPEST_RC5) || \
  5162. defined(TARGET_IS_FIRESTORM_RA2) || \
  5163. defined(TARGET_IS_BLIZZARD_RA1)
  5164. #define ROM_uDMAChannelSelectDefault \
  5165. ((void (*)(unsigned long ulDefPeriphs))ROM_UDMATABLE[18])
  5166. #endif
  5167. #if defined(TARGET_IS_BLIZZARD_RA1)
  5168. #define ROM_uDMAIntStatus \
  5169. ((unsigned long (*)(void))ROM_UDMATABLE[19])
  5170. #endif
  5171. #if defined(TARGET_IS_BLIZZARD_RA1)
  5172. #define ROM_uDMAIntClear \
  5173. ((void (*)(unsigned long ulChanMask))ROM_UDMATABLE[20])
  5174. #endif
  5175. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5176. defined(TARGET_IS_FIRESTORM_RA2) || \
  5177. defined(TARGET_IS_BLIZZARD_RA1)
  5178. #define ROM_uDMAControlAlternateBaseGet \
  5179. ((void * (*)(void))ROM_UDMATABLE[21])
  5180. #endif
  5181. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5182. defined(TARGET_IS_FIRESTORM_RA2) || \
  5183. defined(TARGET_IS_BLIZZARD_RA1)
  5184. #define ROM_uDMAChannelScatterGatherSet \
  5185. ((void (*)(unsigned long ulChannelNum, \
  5186. unsigned ulTaskCount, \
  5187. void *pvTaskList, \
  5188. unsigned long ulIsPeriphSG))ROM_UDMATABLE[22])
  5189. #endif
  5190. #if defined(TARGET_IS_BLIZZARD_RA1)
  5191. #define ROM_uDMAChannelAssign \
  5192. ((void (*)(unsigned long ulMapping))ROM_UDMATABLE[23])
  5193. #endif
  5194. //*****************************************************************************
  5195. //
  5196. // Macros for calling ROM functions in the USB API.
  5197. //
  5198. //*****************************************************************************
  5199. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5200. defined(TARGET_IS_TEMPEST_RC1) || \
  5201. defined(TARGET_IS_TEMPEST_RC3) || \
  5202. defined(TARGET_IS_TEMPEST_RC5) || \
  5203. defined(TARGET_IS_FIRESTORM_RA2) || \
  5204. defined(TARGET_IS_BLIZZARD_RA1)
  5205. #define ROM_USBIntStatus \
  5206. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[0])
  5207. #endif
  5208. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5209. defined(TARGET_IS_TEMPEST_RC1) || \
  5210. defined(TARGET_IS_TEMPEST_RC3) || \
  5211. defined(TARGET_IS_TEMPEST_RC5) || \
  5212. defined(TARGET_IS_FIRESTORM_RA2) || \
  5213. defined(TARGET_IS_BLIZZARD_RA1)
  5214. #define ROM_USBDevAddrGet \
  5215. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[1])
  5216. #endif
  5217. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5218. defined(TARGET_IS_TEMPEST_RC1) || \
  5219. defined(TARGET_IS_TEMPEST_RC3) || \
  5220. defined(TARGET_IS_TEMPEST_RC5) || \
  5221. defined(TARGET_IS_FIRESTORM_RA2) || \
  5222. defined(TARGET_IS_BLIZZARD_RA1)
  5223. #define ROM_USBDevAddrSet \
  5224. ((void (*)(unsigned long ulBase, \
  5225. unsigned long ulAddress))ROM_USBTABLE[2])
  5226. #endif
  5227. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5228. defined(TARGET_IS_TEMPEST_RC1) || \
  5229. defined(TARGET_IS_TEMPEST_RC3) || \
  5230. defined(TARGET_IS_TEMPEST_RC5) || \
  5231. defined(TARGET_IS_FIRESTORM_RA2) || \
  5232. defined(TARGET_IS_BLIZZARD_RA1)
  5233. #define ROM_USBDevConnect \
  5234. ((void (*)(unsigned long ulBase))ROM_USBTABLE[3])
  5235. #endif
  5236. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5237. defined(TARGET_IS_TEMPEST_RC1) || \
  5238. defined(TARGET_IS_TEMPEST_RC3) || \
  5239. defined(TARGET_IS_TEMPEST_RC5) || \
  5240. defined(TARGET_IS_FIRESTORM_RA2) || \
  5241. defined(TARGET_IS_BLIZZARD_RA1)
  5242. #define ROM_USBDevDisconnect \
  5243. ((void (*)(unsigned long ulBase))ROM_USBTABLE[4])
  5244. #endif
  5245. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5246. defined(TARGET_IS_TEMPEST_RC1) || \
  5247. defined(TARGET_IS_TEMPEST_RC3) || \
  5248. defined(TARGET_IS_TEMPEST_RC5) || \
  5249. defined(TARGET_IS_FIRESTORM_RA2) || \
  5250. defined(TARGET_IS_BLIZZARD_RA1)
  5251. #define ROM_USBDevEndpointConfigSet \
  5252. ((void (*)(unsigned long ulBase, \
  5253. unsigned long ulEndpoint, \
  5254. unsigned long ulMaxPacketSize, \
  5255. unsigned long ulFlags))ROM_USBTABLE[5])
  5256. #endif
  5257. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5258. defined(TARGET_IS_TEMPEST_RC1) || \
  5259. defined(TARGET_IS_TEMPEST_RC3) || \
  5260. defined(TARGET_IS_TEMPEST_RC5) || \
  5261. defined(TARGET_IS_FIRESTORM_RA2) || \
  5262. defined(TARGET_IS_BLIZZARD_RA1)
  5263. #define ROM_USBDevEndpointDataAck \
  5264. ((void (*)(unsigned long ulBase, \
  5265. unsigned long ulEndpoint, \
  5266. tBoolean bIsLastPacket))ROM_USBTABLE[6])
  5267. #endif
  5268. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5269. defined(TARGET_IS_TEMPEST_RC1) || \
  5270. defined(TARGET_IS_TEMPEST_RC3) || \
  5271. defined(TARGET_IS_TEMPEST_RC5) || \
  5272. defined(TARGET_IS_FIRESTORM_RA2) || \
  5273. defined(TARGET_IS_BLIZZARD_RA1)
  5274. #define ROM_USBDevEndpointStall \
  5275. ((void (*)(unsigned long ulBase, \
  5276. unsigned long ulEndpoint, \
  5277. unsigned long ulFlags))ROM_USBTABLE[7])
  5278. #endif
  5279. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5280. defined(TARGET_IS_FIRESTORM_RA2) || \
  5281. defined(TARGET_IS_BLIZZARD_RA1)
  5282. #define ROM_USBDevEndpointStallClear \
  5283. ((void (*)(unsigned long ulBase, \
  5284. unsigned long ulEndpoint, \
  5285. unsigned long ulFlags))ROM_USBTABLE[8])
  5286. #endif
  5287. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5288. defined(TARGET_IS_TEMPEST_RC1) || \
  5289. defined(TARGET_IS_TEMPEST_RC3) || \
  5290. defined(TARGET_IS_TEMPEST_RC5) || \
  5291. defined(TARGET_IS_FIRESTORM_RA2) || \
  5292. defined(TARGET_IS_BLIZZARD_RA1)
  5293. #define ROM_USBDevEndpointStatusClear \
  5294. ((void (*)(unsigned long ulBase, \
  5295. unsigned long ulEndpoint, \
  5296. unsigned long ulFlags))ROM_USBTABLE[9])
  5297. #endif
  5298. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5299. defined(TARGET_IS_TEMPEST_RC1) || \
  5300. defined(TARGET_IS_TEMPEST_RC3) || \
  5301. defined(TARGET_IS_TEMPEST_RC5) || \
  5302. defined(TARGET_IS_FIRESTORM_RA2) || \
  5303. defined(TARGET_IS_BLIZZARD_RA1)
  5304. #define ROM_USBEndpointDataGet \
  5305. ((long (*)(unsigned long ulBase, \
  5306. unsigned long ulEndpoint, \
  5307. unsigned char *pucData, \
  5308. unsigned long *pulSize))ROM_USBTABLE[10])
  5309. #endif
  5310. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5311. defined(TARGET_IS_TEMPEST_RC1) || \
  5312. defined(TARGET_IS_TEMPEST_RC3) || \
  5313. defined(TARGET_IS_TEMPEST_RC5) || \
  5314. defined(TARGET_IS_FIRESTORM_RA2) || \
  5315. defined(TARGET_IS_BLIZZARD_RA1)
  5316. #define ROM_USBEndpointDataPut \
  5317. ((long (*)(unsigned long ulBase, \
  5318. unsigned long ulEndpoint, \
  5319. unsigned char *pucData, \
  5320. unsigned long ulSize))ROM_USBTABLE[11])
  5321. #endif
  5322. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5323. defined(TARGET_IS_TEMPEST_RC1) || \
  5324. defined(TARGET_IS_TEMPEST_RC3) || \
  5325. defined(TARGET_IS_TEMPEST_RC5) || \
  5326. defined(TARGET_IS_FIRESTORM_RA2) || \
  5327. defined(TARGET_IS_BLIZZARD_RA1)
  5328. #define ROM_USBEndpointDataSend \
  5329. ((long (*)(unsigned long ulBase, \
  5330. unsigned long ulEndpoint, \
  5331. unsigned long ulTransType))ROM_USBTABLE[12])
  5332. #endif
  5333. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5334. defined(TARGET_IS_TEMPEST_RC1) || \
  5335. defined(TARGET_IS_TEMPEST_RC3) || \
  5336. defined(TARGET_IS_TEMPEST_RC5) || \
  5337. defined(TARGET_IS_FIRESTORM_RA2) || \
  5338. defined(TARGET_IS_BLIZZARD_RA1)
  5339. #define ROM_USBEndpointDataToggleClear \
  5340. ((void (*)(unsigned long ulBase, \
  5341. unsigned long ulEndpoint, \
  5342. unsigned long ulFlags))ROM_USBTABLE[13])
  5343. #endif
  5344. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5345. defined(TARGET_IS_TEMPEST_RC1) || \
  5346. defined(TARGET_IS_TEMPEST_RC3) || \
  5347. defined(TARGET_IS_TEMPEST_RC5) || \
  5348. defined(TARGET_IS_FIRESTORM_RA2) || \
  5349. defined(TARGET_IS_BLIZZARD_RA1)
  5350. #define ROM_USBEndpointStatus \
  5351. ((unsigned long (*)(unsigned long ulBase, \
  5352. unsigned long ulEndpoint))ROM_USBTABLE[14])
  5353. #endif
  5354. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5355. defined(TARGET_IS_TEMPEST_RC1) || \
  5356. defined(TARGET_IS_TEMPEST_RC3) || \
  5357. defined(TARGET_IS_TEMPEST_RC5) || \
  5358. defined(TARGET_IS_FIRESTORM_RA2) || \
  5359. defined(TARGET_IS_BLIZZARD_RA1)
  5360. #define ROM_USBFIFOAddrGet \
  5361. ((unsigned long (*)(unsigned long ulBase, \
  5362. unsigned long ulEndpoint))ROM_USBTABLE[15])
  5363. #endif
  5364. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5365. defined(TARGET_IS_TEMPEST_RC1) || \
  5366. defined(TARGET_IS_TEMPEST_RC3) || \
  5367. defined(TARGET_IS_TEMPEST_RC5) || \
  5368. defined(TARGET_IS_FIRESTORM_RA2) || \
  5369. defined(TARGET_IS_BLIZZARD_RA1)
  5370. #define ROM_USBFIFOConfigGet \
  5371. ((void (*)(unsigned long ulBase, \
  5372. unsigned long ulEndpoint, \
  5373. unsigned long *pulFIFOAddress, \
  5374. unsigned long *pulFIFOSize, \
  5375. unsigned long ulFlags))ROM_USBTABLE[16])
  5376. #endif
  5377. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5378. defined(TARGET_IS_TEMPEST_RC1) || \
  5379. defined(TARGET_IS_TEMPEST_RC3) || \
  5380. defined(TARGET_IS_TEMPEST_RC5) || \
  5381. defined(TARGET_IS_FIRESTORM_RA2) || \
  5382. defined(TARGET_IS_BLIZZARD_RA1)
  5383. #define ROM_USBFIFOConfigSet \
  5384. ((void (*)(unsigned long ulBase, \
  5385. unsigned long ulEndpoint, \
  5386. unsigned long ulFIFOAddress, \
  5387. unsigned long ulFIFOSize, \
  5388. unsigned long ulFlags))ROM_USBTABLE[17])
  5389. #endif
  5390. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5391. defined(TARGET_IS_FIRESTORM_RA2) || \
  5392. defined(TARGET_IS_BLIZZARD_RA1)
  5393. #define ROM_USBFIFOFlush \
  5394. ((void (*)(unsigned long ulBase, \
  5395. unsigned long ulEndpoint, \
  5396. unsigned long ulFlags))ROM_USBTABLE[18])
  5397. #endif
  5398. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5399. defined(TARGET_IS_TEMPEST_RC1) || \
  5400. defined(TARGET_IS_TEMPEST_RC3) || \
  5401. defined(TARGET_IS_TEMPEST_RC5) || \
  5402. defined(TARGET_IS_FIRESTORM_RA2) || \
  5403. defined(TARGET_IS_BLIZZARD_RA1)
  5404. #define ROM_USBFrameNumberGet \
  5405. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[19])
  5406. #endif
  5407. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5408. defined(TARGET_IS_TEMPEST_RC1) || \
  5409. defined(TARGET_IS_TEMPEST_RC3) || \
  5410. defined(TARGET_IS_TEMPEST_RC5) || \
  5411. defined(TARGET_IS_FIRESTORM_RA2) || \
  5412. defined(TARGET_IS_BLIZZARD_RA1)
  5413. #define ROM_USBHostAddrGet \
  5414. ((unsigned long (*)(unsigned long ulBase, \
  5415. unsigned long ulEndpoint, \
  5416. unsigned long ulFlags))ROM_USBTABLE[20])
  5417. #endif
  5418. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5419. defined(TARGET_IS_TEMPEST_RC1) || \
  5420. defined(TARGET_IS_TEMPEST_RC3) || \
  5421. defined(TARGET_IS_TEMPEST_RC5) || \
  5422. defined(TARGET_IS_FIRESTORM_RA2) || \
  5423. defined(TARGET_IS_BLIZZARD_RA1)
  5424. #define ROM_USBHostAddrSet \
  5425. ((void (*)(unsigned long ulBase, \
  5426. unsigned long ulEndpoint, \
  5427. unsigned long ulAddr, \
  5428. unsigned long ulFlags))ROM_USBTABLE[21])
  5429. #endif
  5430. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5431. defined(TARGET_IS_TEMPEST_RC1) || \
  5432. defined(TARGET_IS_TEMPEST_RC3) || \
  5433. defined(TARGET_IS_TEMPEST_RC5) || \
  5434. defined(TARGET_IS_FIRESTORM_RA2) || \
  5435. defined(TARGET_IS_BLIZZARD_RA1)
  5436. #define ROM_USBHostEndpointDataAck \
  5437. ((void (*)(unsigned long ulBase, \
  5438. unsigned long ulEndpoint))ROM_USBTABLE[23])
  5439. #endif
  5440. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5441. defined(TARGET_IS_TEMPEST_RC1) || \
  5442. defined(TARGET_IS_TEMPEST_RC3) || \
  5443. defined(TARGET_IS_TEMPEST_RC5) || \
  5444. defined(TARGET_IS_FIRESTORM_RA2) || \
  5445. defined(TARGET_IS_BLIZZARD_RA1)
  5446. #define ROM_USBHostEndpointDataToggle \
  5447. ((void (*)(unsigned long ulBase, \
  5448. unsigned long ulEndpoint, \
  5449. tBoolean bDataToggle, \
  5450. unsigned long ulFlags))ROM_USBTABLE[24])
  5451. #endif
  5452. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5453. defined(TARGET_IS_TEMPEST_RC1) || \
  5454. defined(TARGET_IS_TEMPEST_RC3) || \
  5455. defined(TARGET_IS_TEMPEST_RC5) || \
  5456. defined(TARGET_IS_FIRESTORM_RA2) || \
  5457. defined(TARGET_IS_BLIZZARD_RA1)
  5458. #define ROM_USBHostEndpointStatusClear \
  5459. ((void (*)(unsigned long ulBase, \
  5460. unsigned long ulEndpoint, \
  5461. unsigned long ulFlags))ROM_USBTABLE[25])
  5462. #endif
  5463. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5464. defined(TARGET_IS_TEMPEST_RC1) || \
  5465. defined(TARGET_IS_TEMPEST_RC3) || \
  5466. defined(TARGET_IS_TEMPEST_RC5) || \
  5467. defined(TARGET_IS_FIRESTORM_RA2) || \
  5468. defined(TARGET_IS_BLIZZARD_RA1)
  5469. #define ROM_USBHostHubAddrGet \
  5470. ((unsigned long (*)(unsigned long ulBase, \
  5471. unsigned long ulEndpoint, \
  5472. unsigned long ulFlags))ROM_USBTABLE[26])
  5473. #endif
  5474. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5475. defined(TARGET_IS_TEMPEST_RC1) || \
  5476. defined(TARGET_IS_TEMPEST_RC3) || \
  5477. defined(TARGET_IS_TEMPEST_RC5) || \
  5478. defined(TARGET_IS_FIRESTORM_RA2) || \
  5479. defined(TARGET_IS_BLIZZARD_RA1)
  5480. #define ROM_USBHostHubAddrSet \
  5481. ((void (*)(unsigned long ulBase, \
  5482. unsigned long ulEndpoint, \
  5483. unsigned long ulAddr, \
  5484. unsigned long ulFlags))ROM_USBTABLE[27])
  5485. #endif
  5486. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5487. defined(TARGET_IS_TEMPEST_RC1) || \
  5488. defined(TARGET_IS_TEMPEST_RC3) || \
  5489. defined(TARGET_IS_TEMPEST_RC5) || \
  5490. defined(TARGET_IS_FIRESTORM_RA2) || \
  5491. defined(TARGET_IS_BLIZZARD_RA1)
  5492. #define ROM_USBHostPwrDisable \
  5493. ((void (*)(unsigned long ulBase))ROM_USBTABLE[28])
  5494. #endif
  5495. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5496. defined(TARGET_IS_TEMPEST_RC1) || \
  5497. defined(TARGET_IS_TEMPEST_RC3) || \
  5498. defined(TARGET_IS_TEMPEST_RC5) || \
  5499. defined(TARGET_IS_FIRESTORM_RA2) || \
  5500. defined(TARGET_IS_BLIZZARD_RA1)
  5501. #define ROM_USBHostPwrEnable \
  5502. ((void (*)(unsigned long ulBase))ROM_USBTABLE[29])
  5503. #endif
  5504. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5505. defined(TARGET_IS_TEMPEST_RC1) || \
  5506. defined(TARGET_IS_TEMPEST_RC3) || \
  5507. defined(TARGET_IS_TEMPEST_RC5) || \
  5508. defined(TARGET_IS_FIRESTORM_RA2) || \
  5509. defined(TARGET_IS_BLIZZARD_RA1)
  5510. #define ROM_USBHostPwrConfig \
  5511. ((void (*)(unsigned long ulBase, \
  5512. unsigned long ulFlags))ROM_USBTABLE[30])
  5513. #endif
  5514. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5515. defined(TARGET_IS_TEMPEST_RC1) || \
  5516. defined(TARGET_IS_TEMPEST_RC3) || \
  5517. defined(TARGET_IS_TEMPEST_RC5) || \
  5518. defined(TARGET_IS_FIRESTORM_RA2) || \
  5519. defined(TARGET_IS_BLIZZARD_RA1)
  5520. #define ROM_USBHostPwrFaultDisable \
  5521. ((void (*)(unsigned long ulBase))ROM_USBTABLE[31])
  5522. #endif
  5523. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5524. defined(TARGET_IS_TEMPEST_RC1) || \
  5525. defined(TARGET_IS_TEMPEST_RC3) || \
  5526. defined(TARGET_IS_TEMPEST_RC5) || \
  5527. defined(TARGET_IS_FIRESTORM_RA2) || \
  5528. defined(TARGET_IS_BLIZZARD_RA1)
  5529. #define ROM_USBHostPwrFaultEnable \
  5530. ((void (*)(unsigned long ulBase))ROM_USBTABLE[32])
  5531. #endif
  5532. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5533. defined(TARGET_IS_TEMPEST_RC1) || \
  5534. defined(TARGET_IS_TEMPEST_RC3) || \
  5535. defined(TARGET_IS_TEMPEST_RC5) || \
  5536. defined(TARGET_IS_FIRESTORM_RA2) || \
  5537. defined(TARGET_IS_BLIZZARD_RA1)
  5538. #define ROM_USBHostRequestIN \
  5539. ((void (*)(unsigned long ulBase, \
  5540. unsigned long ulEndpoint))ROM_USBTABLE[33])
  5541. #endif
  5542. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5543. defined(TARGET_IS_TEMPEST_RC1) || \
  5544. defined(TARGET_IS_TEMPEST_RC3) || \
  5545. defined(TARGET_IS_TEMPEST_RC5) || \
  5546. defined(TARGET_IS_FIRESTORM_RA2) || \
  5547. defined(TARGET_IS_BLIZZARD_RA1)
  5548. #define ROM_USBHostRequestStatus \
  5549. ((void (*)(unsigned long ulBase))ROM_USBTABLE[34])
  5550. #endif
  5551. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5552. defined(TARGET_IS_TEMPEST_RC1) || \
  5553. defined(TARGET_IS_TEMPEST_RC3) || \
  5554. defined(TARGET_IS_TEMPEST_RC5) || \
  5555. defined(TARGET_IS_FIRESTORM_RA2) || \
  5556. defined(TARGET_IS_BLIZZARD_RA1)
  5557. #define ROM_USBHostReset \
  5558. ((void (*)(unsigned long ulBase, \
  5559. tBoolean bStart))ROM_USBTABLE[35])
  5560. #endif
  5561. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5562. defined(TARGET_IS_TEMPEST_RC1) || \
  5563. defined(TARGET_IS_TEMPEST_RC3) || \
  5564. defined(TARGET_IS_TEMPEST_RC5) || \
  5565. defined(TARGET_IS_FIRESTORM_RA2) || \
  5566. defined(TARGET_IS_BLIZZARD_RA1)
  5567. #define ROM_USBHostResume \
  5568. ((void (*)(unsigned long ulBase, \
  5569. tBoolean bStart))ROM_USBTABLE[36])
  5570. #endif
  5571. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5572. defined(TARGET_IS_TEMPEST_RC1) || \
  5573. defined(TARGET_IS_TEMPEST_RC3) || \
  5574. defined(TARGET_IS_TEMPEST_RC5) || \
  5575. defined(TARGET_IS_FIRESTORM_RA2) || \
  5576. defined(TARGET_IS_BLIZZARD_RA1)
  5577. #define ROM_USBHostSpeedGet \
  5578. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[37])
  5579. #endif
  5580. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5581. defined(TARGET_IS_TEMPEST_RC1) || \
  5582. defined(TARGET_IS_TEMPEST_RC3) || \
  5583. defined(TARGET_IS_TEMPEST_RC5) || \
  5584. defined(TARGET_IS_FIRESTORM_RA2) || \
  5585. defined(TARGET_IS_BLIZZARD_RA1)
  5586. #define ROM_USBHostSuspend \
  5587. ((void (*)(unsigned long ulBase))ROM_USBTABLE[38])
  5588. #endif
  5589. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5590. defined(TARGET_IS_TEMPEST_RC1) || \
  5591. defined(TARGET_IS_TEMPEST_RC3) || \
  5592. defined(TARGET_IS_TEMPEST_RC5) || \
  5593. defined(TARGET_IS_FIRESTORM_RA2) || \
  5594. defined(TARGET_IS_BLIZZARD_RA1)
  5595. #define ROM_USBIntDisable \
  5596. ((void (*)(unsigned long ulBase, \
  5597. unsigned long ulIntFlags))ROM_USBTABLE[39])
  5598. #endif
  5599. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5600. defined(TARGET_IS_TEMPEST_RC1) || \
  5601. defined(TARGET_IS_TEMPEST_RC3) || \
  5602. defined(TARGET_IS_TEMPEST_RC5) || \
  5603. defined(TARGET_IS_FIRESTORM_RA2) || \
  5604. defined(TARGET_IS_BLIZZARD_RA1)
  5605. #define ROM_USBIntEnable \
  5606. ((void (*)(unsigned long ulBase, \
  5607. unsigned long ulIntFlags))ROM_USBTABLE[40])
  5608. #endif
  5609. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5610. defined(TARGET_IS_TEMPEST_RC3) || \
  5611. defined(TARGET_IS_TEMPEST_RC5) || \
  5612. defined(TARGET_IS_FIRESTORM_RA2) || \
  5613. defined(TARGET_IS_BLIZZARD_RA1)
  5614. #define ROM_USBDevEndpointConfigGet \
  5615. ((void (*)(unsigned long ulBase, \
  5616. unsigned long ulEndpoint, \
  5617. unsigned long *pulMaxPacketSize, \
  5618. unsigned long *pulFlags))ROM_USBTABLE[41])
  5619. #endif
  5620. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5621. defined(TARGET_IS_FIRESTORM_RA2) || \
  5622. defined(TARGET_IS_BLIZZARD_RA1)
  5623. #define ROM_USBEndpointDMAEnable \
  5624. ((void (*)(unsigned long ulBase, \
  5625. unsigned long ulEndpoint, \
  5626. unsigned long ulFlags))ROM_USBTABLE[42])
  5627. #endif
  5628. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5629. defined(TARGET_IS_FIRESTORM_RA2) || \
  5630. defined(TARGET_IS_BLIZZARD_RA1)
  5631. #define ROM_USBEndpointDMADisable \
  5632. ((void (*)(unsigned long ulBase, \
  5633. unsigned long ulEndpoint, \
  5634. unsigned long ulFlags))ROM_USBTABLE[43])
  5635. #endif
  5636. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5637. defined(TARGET_IS_TEMPEST_RC3) || \
  5638. defined(TARGET_IS_TEMPEST_RC5) || \
  5639. defined(TARGET_IS_FIRESTORM_RA2) || \
  5640. defined(TARGET_IS_BLIZZARD_RA1)
  5641. #define ROM_USBEndpointDataAvail \
  5642. ((unsigned long (*)(unsigned long ulBase, \
  5643. unsigned long ulEndpoint))ROM_USBTABLE[44])
  5644. #endif
  5645. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5646. defined(TARGET_IS_TEMPEST_RC3) || \
  5647. defined(TARGET_IS_TEMPEST_RC5) || \
  5648. defined(TARGET_IS_FIRESTORM_RA2) || \
  5649. defined(TARGET_IS_BLIZZARD_RA1)
  5650. #define ROM_USBOTGHostRequest \
  5651. ((void (*)(unsigned long ulBase, \
  5652. tBoolean bHNP))ROM_USBTABLE[45])
  5653. #endif
  5654. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5655. defined(TARGET_IS_TEMPEST_RC3) || \
  5656. defined(TARGET_IS_TEMPEST_RC5) || \
  5657. defined(TARGET_IS_FIRESTORM_RA2) || \
  5658. defined(TARGET_IS_BLIZZARD_RA1)
  5659. #define ROM_USBModeGet \
  5660. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[46])
  5661. #endif
  5662. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5663. defined(TARGET_IS_TEMPEST_RC3) || \
  5664. defined(TARGET_IS_TEMPEST_RC5) || \
  5665. defined(TARGET_IS_FIRESTORM_RA2) || \
  5666. defined(TARGET_IS_BLIZZARD_RA1)
  5667. #define ROM_USBEndpointDMAChannel \
  5668. ((void (*)(unsigned long ulBase, \
  5669. unsigned long ulEndpoint, \
  5670. unsigned long ulChannel))ROM_USBTABLE[47])
  5671. #endif
  5672. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5673. defined(TARGET_IS_TEMPEST_RC3) || \
  5674. defined(TARGET_IS_TEMPEST_RC5) || \
  5675. defined(TARGET_IS_FIRESTORM_RA2) || \
  5676. defined(TARGET_IS_BLIZZARD_RA1)
  5677. #define ROM_USBIntDisableControl \
  5678. ((void (*)(unsigned long ulBase, \
  5679. unsigned long ulIntFlags))ROM_USBTABLE[48])
  5680. #endif
  5681. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5682. defined(TARGET_IS_TEMPEST_RC3) || \
  5683. defined(TARGET_IS_TEMPEST_RC5) || \
  5684. defined(TARGET_IS_FIRESTORM_RA2) || \
  5685. defined(TARGET_IS_BLIZZARD_RA1)
  5686. #define ROM_USBIntEnableControl \
  5687. ((void (*)(unsigned long ulBase, \
  5688. unsigned long ulIntFlags))ROM_USBTABLE[49])
  5689. #endif
  5690. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5691. defined(TARGET_IS_TEMPEST_RC3) || \
  5692. defined(TARGET_IS_TEMPEST_RC5) || \
  5693. defined(TARGET_IS_FIRESTORM_RA2) || \
  5694. defined(TARGET_IS_BLIZZARD_RA1)
  5695. #define ROM_USBIntStatusControl \
  5696. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[50])
  5697. #endif
  5698. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5699. defined(TARGET_IS_TEMPEST_RC3) || \
  5700. defined(TARGET_IS_TEMPEST_RC5) || \
  5701. defined(TARGET_IS_FIRESTORM_RA2) || \
  5702. defined(TARGET_IS_BLIZZARD_RA1)
  5703. #define ROM_USBIntDisableEndpoint \
  5704. ((void (*)(unsigned long ulBase, \
  5705. unsigned long ulIntFlags))ROM_USBTABLE[51])
  5706. #endif
  5707. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5708. defined(TARGET_IS_TEMPEST_RC3) || \
  5709. defined(TARGET_IS_TEMPEST_RC5) || \
  5710. defined(TARGET_IS_FIRESTORM_RA2) || \
  5711. defined(TARGET_IS_BLIZZARD_RA1)
  5712. #define ROM_USBIntEnableEndpoint \
  5713. ((void (*)(unsigned long ulBase, \
  5714. unsigned long ulIntFlags))ROM_USBTABLE[52])
  5715. #endif
  5716. #if defined(TARGET_IS_TEMPEST_RC1) || \
  5717. defined(TARGET_IS_TEMPEST_RC3) || \
  5718. defined(TARGET_IS_TEMPEST_RC5) || \
  5719. defined(TARGET_IS_FIRESTORM_RA2) || \
  5720. defined(TARGET_IS_BLIZZARD_RA1)
  5721. #define ROM_USBIntStatusEndpoint \
  5722. ((unsigned long (*)(unsigned long ulBase))ROM_USBTABLE[53])
  5723. #endif
  5724. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5725. defined(TARGET_IS_FIRESTORM_RA2) || \
  5726. defined(TARGET_IS_BLIZZARD_RA1)
  5727. #define ROM_USBHostMode \
  5728. ((void (*)(unsigned long ulBase))ROM_USBTABLE[54])
  5729. #endif
  5730. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5731. defined(TARGET_IS_FIRESTORM_RA2) || \
  5732. defined(TARGET_IS_BLIZZARD_RA1)
  5733. #define ROM_USBDevMode \
  5734. ((void (*)(unsigned long ulBase))ROM_USBTABLE[55])
  5735. #endif
  5736. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5737. defined(TARGET_IS_FIRESTORM_RA2) || \
  5738. defined(TARGET_IS_BLIZZARD_RA1)
  5739. #define ROM_USBPHYPowerOff \
  5740. ((void (*)(unsigned long ulBase))ROM_USBTABLE[56])
  5741. #endif
  5742. #if defined(TARGET_IS_TEMPEST_RC5) || \
  5743. defined(TARGET_IS_FIRESTORM_RA2) || \
  5744. defined(TARGET_IS_BLIZZARD_RA1)
  5745. #define ROM_USBPHYPowerOn \
  5746. ((void (*)(unsigned long ulBase))ROM_USBTABLE[57])
  5747. #endif
  5748. #if defined(TARGET_IS_BLIZZARD_RA1)
  5749. #define ROM_USBOTGMode \
  5750. ((void (*)(unsigned long ulBase))ROM_USBTABLE[59])
  5751. #endif
  5752. //*****************************************************************************
  5753. //
  5754. // Macros for calling ROM functions in the Watchdog API.
  5755. //
  5756. //*****************************************************************************
  5757. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5758. defined(TARGET_IS_TEMPEST_RB1) || \
  5759. defined(TARGET_IS_TEMPEST_RC1) || \
  5760. defined(TARGET_IS_TEMPEST_RC3) || \
  5761. defined(TARGET_IS_TEMPEST_RC5) || \
  5762. defined(TARGET_IS_FIRESTORM_RA2) || \
  5763. defined(TARGET_IS_BLIZZARD_RA1)
  5764. #define ROM_WatchdogIntClear \
  5765. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[0])
  5766. #endif
  5767. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5768. defined(TARGET_IS_TEMPEST_RB1) || \
  5769. defined(TARGET_IS_TEMPEST_RC1) || \
  5770. defined(TARGET_IS_TEMPEST_RC3) || \
  5771. defined(TARGET_IS_TEMPEST_RC5) || \
  5772. defined(TARGET_IS_FIRESTORM_RA2) || \
  5773. defined(TARGET_IS_BLIZZARD_RA1)
  5774. #define ROM_WatchdogRunning \
  5775. ((tBoolean (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[1])
  5776. #endif
  5777. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5778. defined(TARGET_IS_TEMPEST_RB1) || \
  5779. defined(TARGET_IS_TEMPEST_RC1) || \
  5780. defined(TARGET_IS_TEMPEST_RC3) || \
  5781. defined(TARGET_IS_TEMPEST_RC5) || \
  5782. defined(TARGET_IS_FIRESTORM_RA2) || \
  5783. defined(TARGET_IS_BLIZZARD_RA1)
  5784. #define ROM_WatchdogEnable \
  5785. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[2])
  5786. #endif
  5787. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5788. defined(TARGET_IS_TEMPEST_RB1) || \
  5789. defined(TARGET_IS_TEMPEST_RC1) || \
  5790. defined(TARGET_IS_TEMPEST_RC3) || \
  5791. defined(TARGET_IS_TEMPEST_RC5) || \
  5792. defined(TARGET_IS_FIRESTORM_RA2) || \
  5793. defined(TARGET_IS_BLIZZARD_RA1)
  5794. #define ROM_WatchdogResetEnable \
  5795. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[3])
  5796. #endif
  5797. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5798. defined(TARGET_IS_TEMPEST_RB1) || \
  5799. defined(TARGET_IS_TEMPEST_RC1) || \
  5800. defined(TARGET_IS_TEMPEST_RC3) || \
  5801. defined(TARGET_IS_TEMPEST_RC5) || \
  5802. defined(TARGET_IS_FIRESTORM_RA2) || \
  5803. defined(TARGET_IS_BLIZZARD_RA1)
  5804. #define ROM_WatchdogResetDisable \
  5805. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[4])
  5806. #endif
  5807. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5808. defined(TARGET_IS_TEMPEST_RB1) || \
  5809. defined(TARGET_IS_TEMPEST_RC1) || \
  5810. defined(TARGET_IS_TEMPEST_RC3) || \
  5811. defined(TARGET_IS_TEMPEST_RC5) || \
  5812. defined(TARGET_IS_FIRESTORM_RA2) || \
  5813. defined(TARGET_IS_BLIZZARD_RA1)
  5814. #define ROM_WatchdogLock \
  5815. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[5])
  5816. #endif
  5817. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5818. defined(TARGET_IS_TEMPEST_RB1) || \
  5819. defined(TARGET_IS_TEMPEST_RC1) || \
  5820. defined(TARGET_IS_TEMPEST_RC3) || \
  5821. defined(TARGET_IS_TEMPEST_RC5) || \
  5822. defined(TARGET_IS_FIRESTORM_RA2) || \
  5823. defined(TARGET_IS_BLIZZARD_RA1)
  5824. #define ROM_WatchdogUnlock \
  5825. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[6])
  5826. #endif
  5827. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5828. defined(TARGET_IS_TEMPEST_RB1) || \
  5829. defined(TARGET_IS_TEMPEST_RC1) || \
  5830. defined(TARGET_IS_TEMPEST_RC3) || \
  5831. defined(TARGET_IS_TEMPEST_RC5) || \
  5832. defined(TARGET_IS_FIRESTORM_RA2) || \
  5833. defined(TARGET_IS_BLIZZARD_RA1)
  5834. #define ROM_WatchdogLockState \
  5835. ((tBoolean (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[7])
  5836. #endif
  5837. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5838. defined(TARGET_IS_TEMPEST_RB1) || \
  5839. defined(TARGET_IS_TEMPEST_RC1) || \
  5840. defined(TARGET_IS_TEMPEST_RC3) || \
  5841. defined(TARGET_IS_TEMPEST_RC5) || \
  5842. defined(TARGET_IS_FIRESTORM_RA2) || \
  5843. defined(TARGET_IS_BLIZZARD_RA1)
  5844. #define ROM_WatchdogReloadSet \
  5845. ((void (*)(unsigned long ulBase, \
  5846. unsigned long ulLoadVal))ROM_WATCHDOGTABLE[8])
  5847. #endif
  5848. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5849. defined(TARGET_IS_TEMPEST_RB1) || \
  5850. defined(TARGET_IS_TEMPEST_RC1) || \
  5851. defined(TARGET_IS_TEMPEST_RC3) || \
  5852. defined(TARGET_IS_TEMPEST_RC5) || \
  5853. defined(TARGET_IS_FIRESTORM_RA2) || \
  5854. defined(TARGET_IS_BLIZZARD_RA1)
  5855. #define ROM_WatchdogReloadGet \
  5856. ((unsigned long (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[9])
  5857. #endif
  5858. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5859. defined(TARGET_IS_TEMPEST_RB1) || \
  5860. defined(TARGET_IS_TEMPEST_RC1) || \
  5861. defined(TARGET_IS_TEMPEST_RC3) || \
  5862. defined(TARGET_IS_TEMPEST_RC5) || \
  5863. defined(TARGET_IS_FIRESTORM_RA2) || \
  5864. defined(TARGET_IS_BLIZZARD_RA1)
  5865. #define ROM_WatchdogValueGet \
  5866. ((unsigned long (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[10])
  5867. #endif
  5868. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5869. defined(TARGET_IS_TEMPEST_RB1) || \
  5870. defined(TARGET_IS_TEMPEST_RC1) || \
  5871. defined(TARGET_IS_TEMPEST_RC3) || \
  5872. defined(TARGET_IS_TEMPEST_RC5) || \
  5873. defined(TARGET_IS_FIRESTORM_RA2) || \
  5874. defined(TARGET_IS_BLIZZARD_RA1)
  5875. #define ROM_WatchdogIntEnable \
  5876. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[11])
  5877. #endif
  5878. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5879. defined(TARGET_IS_TEMPEST_RB1) || \
  5880. defined(TARGET_IS_TEMPEST_RC1) || \
  5881. defined(TARGET_IS_TEMPEST_RC3) || \
  5882. defined(TARGET_IS_TEMPEST_RC5) || \
  5883. defined(TARGET_IS_FIRESTORM_RA2) || \
  5884. defined(TARGET_IS_BLIZZARD_RA1)
  5885. #define ROM_WatchdogIntStatus \
  5886. ((unsigned long (*)(unsigned long ulBase, \
  5887. tBoolean bMasked))ROM_WATCHDOGTABLE[12])
  5888. #endif
  5889. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5890. defined(TARGET_IS_TEMPEST_RB1) || \
  5891. defined(TARGET_IS_TEMPEST_RC1) || \
  5892. defined(TARGET_IS_TEMPEST_RC3) || \
  5893. defined(TARGET_IS_TEMPEST_RC5) || \
  5894. defined(TARGET_IS_FIRESTORM_RA2) || \
  5895. defined(TARGET_IS_BLIZZARD_RA1)
  5896. #define ROM_WatchdogStallEnable \
  5897. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[13])
  5898. #endif
  5899. #if defined(TARGET_IS_DUSTDEVIL_RA0) || \
  5900. defined(TARGET_IS_TEMPEST_RB1) || \
  5901. defined(TARGET_IS_TEMPEST_RC1) || \
  5902. defined(TARGET_IS_TEMPEST_RC3) || \
  5903. defined(TARGET_IS_TEMPEST_RC5) || \
  5904. defined(TARGET_IS_FIRESTORM_RA2) || \
  5905. defined(TARGET_IS_BLIZZARD_RA1)
  5906. #define ROM_WatchdogStallDisable \
  5907. ((void (*)(unsigned long ulBase))ROM_WATCHDOGTABLE[14])
  5908. #endif
  5909. #if defined(TARGET_IS_BLIZZARD_RA1)
  5910. #define ROM_WatchdogIntTypeSet \
  5911. ((void (*)(unsigned long ulBase, \
  5912. unsigned long ulType))ROM_WATCHDOGTABLE[15])
  5913. #endif
  5914. //*****************************************************************************
  5915. //
  5916. // Macros for calling ROM functions in the Software API.
  5917. //
  5918. //*****************************************************************************
  5919. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5920. defined(TARGET_IS_TEMPEST_RC1) || \
  5921. defined(TARGET_IS_TEMPEST_RC3) || \
  5922. defined(TARGET_IS_TEMPEST_RC5) || \
  5923. defined(TARGET_IS_FIRESTORM_RA2) || \
  5924. defined(TARGET_IS_BLIZZARD_RA1)
  5925. #define ROM_Crc16Array \
  5926. ((unsigned short (*)(unsigned long ulWordLen, \
  5927. const unsigned long *pulData))ROM_SOFTWARETABLE[1])
  5928. #endif
  5929. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5930. defined(TARGET_IS_TEMPEST_RC1) || \
  5931. defined(TARGET_IS_TEMPEST_RC3) || \
  5932. defined(TARGET_IS_TEMPEST_RC5) || \
  5933. defined(TARGET_IS_FIRESTORM_RA2) || \
  5934. defined(TARGET_IS_BLIZZARD_RA1)
  5935. #define ROM_Crc16Array3 \
  5936. ((void (*)(unsigned long ulWordLen, \
  5937. const unsigned long *pulData, \
  5938. unsigned short *pusCrc3))ROM_SOFTWARETABLE[2])
  5939. #endif
  5940. #if defined(TARGET_IS_BLIZZARD_RA1)
  5941. #define ROM_Crc16 \
  5942. ((unsigned short (*)(unsigned short usCrc, \
  5943. const unsigned char *pucData, \
  5944. unsigned long ulCount))ROM_SOFTWARETABLE[3])
  5945. #endif
  5946. #if defined(TARGET_IS_BLIZZARD_RA1)
  5947. #define ROM_Crc8CCITT \
  5948. ((unsigned char (*)(unsigned char ucCrc, \
  5949. const unsigned char *pucData, \
  5950. unsigned long ulCount))ROM_SOFTWARETABLE[4])
  5951. #endif
  5952. #if defined(TARGET_IS_TEMPEST_RB1) || \
  5953. defined(TARGET_IS_TEMPEST_RC1) || \
  5954. defined(TARGET_IS_TEMPEST_RC3) || \
  5955. defined(TARGET_IS_TEMPEST_RC5) || \
  5956. defined(TARGET_IS_FIRESTORM_RA2) || \
  5957. defined(TARGET_IS_BLIZZARD_RA1)
  5958. #define ROM_pvAESTable \
  5959. ((void *)&(ROM_SOFTWARETABLE[7]))
  5960. #endif
  5961. //*****************************************************************************
  5962. //
  5963. // Deprecated ROM functions.
  5964. //
  5965. //*****************************************************************************
  5966. #ifndef DEPRECATED
  5967. #ifdef ROM_FlashIntStatus
  5968. #define ROM_FlashIntGetStatus \
  5969. ROM_FlashIntStatus
  5970. #endif
  5971. #ifdef ROM_USBDevEndpointConfigSet
  5972. #define ROM_USBDevEndpointConfig \
  5973. ROM_USBDevEndpointConfigSet
  5974. #endif
  5975. #ifdef ROM_USBHostPwrConfig
  5976. #define ROM_USBHostPwrFaultConfig \
  5977. ROM_USBHostPwrConfig
  5978. #endif
  5979. #endif
  5980. #endif // __ROM_H__