Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

imxrt.h 281KB

6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
6 år sedan
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862
  1. #pragma once
  2. #include <stdint.h>
  3. // Definitions based these documents:
  4. // i.MX RT1050 Reference Manual, Rev. 1, 03/2018
  5. // ARM v7-M Architecture Reference Manual (DDI 0403E.b)
  6. #if !defined(KINETISL) && !defined(KINETISK)
  7. enum IRQ_NUMBER_t {
  8. IRQ_DMA_CH0 = 0,
  9. IRQ_DMA_CH1 = 1,
  10. IRQ_DMA_CH2 = 2,
  11. IRQ_DMA_CH3 = 3,
  12. IRQ_DMA_CH4 = 4,
  13. IRQ_DMA_CH5 = 5,
  14. IRQ_DMA_CH6 = 6,
  15. IRQ_DMA_CH7 = 7,
  16. IRQ_DMA_CH8 = 8,
  17. IRQ_DMA_CH9 = 9,
  18. IRQ_DMA_CH10 = 10,
  19. IRQ_DMA_CH11 = 11,
  20. IRQ_DMA_CH12 = 12,
  21. IRQ_DMA_CH13 = 13,
  22. IRQ_DMA_CH14 = 14,
  23. IRQ_DMA_CH15 = 15,
  24. IRQ_DMA_ERROR = 16,
  25. IRQ_CTI0 = 17,
  26. IRQ_CTI1 = 18,
  27. IRQ_CORE_ERROR = 19, // TODO - name?
  28. IRQ_LPUART1 = 20,
  29. IRQ_LPUART2 = 21,
  30. IRQ_LPUART3 = 22,
  31. IRQ_LPUART4 = 23,
  32. IRQ_LPUART5 = 24,
  33. IRQ_LPUART6 = 25,
  34. IRQ_LPUART7 = 26,
  35. IRQ_LPUART8 = 27,
  36. IRQ_LPI2C1 = 28,
  37. IRQ_LPI2C2 = 29,
  38. IRQ_LPI2C3 = 30,
  39. IRQ_LPI2C4 = 31,
  40. IRQ_LPSPI1 = 32,
  41. IRQ_LPSPI2 = 33,
  42. IRQ_LPSPI3 = 34,
  43. IRQ_LPSPI4 = 35,
  44. IRQ_CAN1 = 36,
  45. IRQ_CAN2 = 37,
  46. IRQ_ADDR_ERR = 38, // TODO: name?
  47. IRQ_KPP = 39,
  48. IRQ_TSC_DIG = 40,
  49. IRQ_GPR_IRQ = 41,
  50. IRQ_LCDIF = 42,
  51. IRQ_CSI = 43,
  52. IRQ_PXP = 44,
  53. IRQ_WDOG2 = 45,
  54. IRQ_SNVS_IRQ = 46,
  55. IRQ_SNVS_SECURITY = 47,
  56. IRQ_SNVS_ONOFF = 48,
  57. IRQ_CSU = 49,
  58. IRQ_DCP0 = 50, // TODO: ???
  59. IRQ_DCP1 = 51, // TODO: ???
  60. IRQ_DCP2 = 52, // TODO: ???
  61. IRQ_TRNG = 53,
  62. IRQ_SJC_IRQ = 54,
  63. IRQ_BEE = 55,
  64. IRQ_SAI1 = 56,
  65. IRQ_SAI2 = 57,
  66. IRQ_SAI3_RX = 58,
  67. IRQ_SAI3_TX = 59,
  68. IRQ_SPDIF = 60,
  69. IRQ_BROWNOUT0 = 61,
  70. IRQ_BROWNOUT1 = 62,
  71. IRQ_TEMPERATURE = 63,
  72. IRQ_TEMPERATURE_PANIC = 64,
  73. IRQ_USBPHY0 = 65,
  74. IRQ_USBPHY1 = 66,
  75. IRQ_ADC1 = 67,
  76. IRQ_ADC2 = 68,
  77. IRQ_DCDC = 69,
  78. IRQ_Reserved1 = 70,
  79. IRQ_Reserved2 = 71,
  80. IRQ_GPIO1_INT0 = 72,
  81. IRQ_GPIO1_INT1 = 73,
  82. IRQ_GPIO1_INT2 = 74,
  83. IRQ_GPIO1_INT3 = 75,
  84. IRQ_GPIO1_INT4 = 76,
  85. IRQ_GPIO1_INT5 = 77,
  86. IRQ_GPIO1_INT6 = 78,
  87. IRQ_GPIO1_INT7 = 79,
  88. IRQ_GPI01_0_15 = 80,
  89. IRQ_GPIO1_16_31 = 81,
  90. IRQ_GPI02_0_15 = 82,
  91. IRQ_GPIO2_16_31 = 83,
  92. IRQ_GPI03_0_15 = 84,
  93. IRQ_GPIO3_16_31 = 85,
  94. IRQ_GPI04_0_15 = 86,
  95. IRQ_GPIO4_16_31 = 87,
  96. IRQ_GPI05_0_15 = 88,
  97. IRQ_GPIO5_16_31 = 89,
  98. IRQ_FLEXIO1 = 90,
  99. IRQ_FLEXIO2 = 91,
  100. IRQ_WDOG1 = 92,
  101. IRQ_WDOG3 = 93,
  102. IRQ_EWM = 94,
  103. IRQ_CCM1 = 95,
  104. IRQ_CCM2 = 96,
  105. IRQ_GPC = 97,
  106. IRQ_SRC = 98,
  107. IRQ_Reserved3 = 99,
  108. IRQ_GPT1 = 100,
  109. IRQ_GPT2 = 101,
  110. IRQ_FLEXPWM1_0 = 102,
  111. IRQ_FLEXPWM1_1 = 103,
  112. IRQ_FLEXPWM1_2 = 104,
  113. IRQ_FLEXPWM1_3 = 105,
  114. IRQ_FLEXPWM1_FAULT = 106,
  115. IRQ_Reserved4 = 107,
  116. IRQ_FLEXSPI = 108,
  117. IRQ_SEMC = 109,
  118. IRQ_SDHC1 = 110,
  119. IRQ_SDHC2 = 111,
  120. IRQ_USB2 = 112,
  121. IRQ_USB1 = 113,
  122. IRQ_ENET = 114,
  123. IRQ_ENET_TIMER = 115,
  124. IRQ_XBAR1_01 = 116,
  125. IRQ_XBAR1_23 = 117,
  126. IRQ_ADC_ETC0 = 118,
  127. IRQ_ADC_ETC1 = 119,
  128. IRQ_ADC_ETC2 = 120,
  129. IRQ_ADC_ETC_ERR = 121,
  130. IRQ_PIT = 122,
  131. IRQ_ACMP0 = 123,
  132. IRQ_ACMP1 = 124,
  133. IRQ_ACMP2 = 125,
  134. IRQ_ACMP3 = 126,
  135. IRQ_Reserved5 = 127,
  136. IRQ_Reserved6 = 128,
  137. IRQ_ENC1 = 129,
  138. IRQ_ENC2 = 130,
  139. IRQ_ENC3 = 131,
  140. IRQ_ENC4 = 132,
  141. IRQ_QTIMER1 = 133,
  142. IRQ_QTIMER2 = 134,
  143. IRQ_QTIMER3 = 135,
  144. IRQ_QTIMER4 = 136,
  145. IRQ_FLEXPWM2_0 = 137,
  146. IRQ_FLEXPWM2_1 = 138,
  147. IRQ_FLEXPWM2_2 = 139,
  148. IRQ_FLEXPWM2_3 = 140,
  149. IRQ_FLEXPWM2_FAULT = 141,
  150. IRQ_FLEXPWM3_0 = 142,
  151. IRQ_FLEXPWM3_1 = 143,
  152. IRQ_FLEXPWM3_2 = 144,
  153. IRQ_FLEXPWM3_3 = 145,
  154. IRQ_FLEXPWM3_FAULT = 146,
  155. IRQ_FLEXPWM4_0 = 147,
  156. IRQ_FLEXPWM4_1 = 148,
  157. IRQ_FLEXPWM4_2 = 149,
  158. IRQ_FLEXPWM4_3 = 150,
  159. IRQ_FLEXPWM4_FAULT = 151,
  160. IRQ_Reserved7 = 152,
  161. IRQ_Reserved8 = 153,
  162. IRQ_Reserved9 = 154,
  163. IRQ_Reserved10 = 155,
  164. IRQ_Reserved11 = 156,
  165. IRQ_Reserved12 = 157,
  166. IRQ_SJC_DEBUG = 158,
  167. IRQ_NMI_WAKEUP = 159
  168. };
  169. #endif
  170. typedef struct {
  171. volatile uint32_t offset000;
  172. volatile uint32_t offset004;
  173. volatile uint32_t offset008;
  174. volatile uint32_t offset00C;
  175. volatile uint32_t offset010;
  176. volatile uint32_t offset014;
  177. volatile uint32_t offset018;
  178. volatile uint32_t offset01C;
  179. volatile uint32_t offset020;
  180. volatile uint32_t offset024;
  181. volatile uint32_t offset028;
  182. volatile uint32_t offset02C;
  183. volatile uint32_t offset030;
  184. volatile uint32_t offset034;
  185. volatile uint32_t offset038;
  186. volatile uint32_t offset03C;
  187. volatile uint32_t offset040;
  188. volatile uint32_t offset044;
  189. volatile uint32_t offset048;
  190. volatile uint32_t offset04C;
  191. volatile uint32_t offset050;
  192. volatile uint32_t offset054;
  193. volatile uint32_t offset058;
  194. volatile uint32_t offset05C;
  195. volatile uint32_t offset060;
  196. volatile uint32_t offset064;
  197. volatile uint32_t offset068;
  198. volatile uint32_t offset06C;
  199. volatile uint32_t offset070;
  200. volatile uint32_t offset074;
  201. volatile uint32_t offset078;
  202. volatile uint32_t offset07C;
  203. volatile uint32_t offset080;
  204. volatile uint32_t offset084;
  205. volatile uint32_t offset088;
  206. volatile uint32_t offset08C;
  207. volatile uint32_t offset090;
  208. volatile uint32_t offset094;
  209. volatile uint32_t offset098;
  210. volatile uint32_t offset09C;
  211. volatile uint32_t offset0A0;
  212. volatile uint32_t offset0A4;
  213. volatile uint32_t offset0A8;
  214. volatile uint32_t offset0AC;
  215. volatile uint32_t offset0B0;
  216. volatile uint32_t offset0B4;
  217. volatile uint32_t offset0B8;
  218. volatile uint32_t offset0BC;
  219. volatile uint32_t offset0C0;
  220. volatile uint32_t offset0C4;
  221. volatile uint32_t offset0C8;
  222. volatile uint32_t offset0CC;
  223. volatile uint32_t offset0D0;
  224. volatile uint32_t offset0D4;
  225. volatile uint32_t offset0D8;
  226. volatile uint32_t offset0DC;
  227. volatile uint32_t offset0E0;
  228. volatile uint32_t offset0E4;
  229. volatile uint32_t offset0E8;
  230. volatile uint32_t offset0EC;
  231. volatile uint32_t offset0F0;
  232. volatile uint32_t offset0F4;
  233. volatile uint32_t offset0F8;
  234. volatile uint32_t offset0FC;
  235. volatile uint32_t offset100;
  236. volatile uint32_t offset104;
  237. volatile uint32_t offset108;
  238. volatile uint32_t offset10C;
  239. volatile uint32_t offset110;
  240. volatile uint32_t offset114;
  241. volatile uint32_t offset118;
  242. volatile uint32_t offset11C;
  243. volatile uint32_t offset120;
  244. volatile uint32_t offset124;
  245. volatile uint32_t offset128;
  246. volatile uint32_t offset12C;
  247. volatile uint32_t offset130;
  248. volatile uint32_t offset134;
  249. volatile uint32_t offset138;
  250. volatile uint32_t offset13C;
  251. volatile uint32_t offset140;
  252. volatile uint32_t offset144;
  253. volatile uint32_t offset148;
  254. volatile uint32_t offset14C;
  255. volatile uint32_t offset150;
  256. volatile uint32_t offset154;
  257. volatile uint32_t offset158;
  258. volatile uint32_t offset15C;
  259. volatile uint32_t offset160;
  260. volatile uint32_t offset164;
  261. volatile uint32_t offset168;
  262. volatile uint32_t offset16C;
  263. volatile uint32_t offset170;
  264. volatile uint32_t offset174;
  265. volatile uint32_t offset178;
  266. volatile uint32_t offset17C;
  267. volatile uint32_t offset180;
  268. volatile uint32_t offset184;
  269. volatile uint32_t offset188;
  270. volatile uint32_t offset18C;
  271. volatile uint32_t offset190;
  272. volatile uint32_t offset194;
  273. volatile uint32_t offset198;
  274. volatile uint32_t offset19C;
  275. volatile uint32_t offset1A0;
  276. volatile uint32_t offset1A4;
  277. volatile uint32_t offset1A8;
  278. volatile uint32_t offset1AC;
  279. volatile uint32_t offset1B0;
  280. volatile uint32_t offset1B4;
  281. volatile uint32_t offset1B8;
  282. volatile uint32_t offset1BC;
  283. volatile uint32_t offset1C0;
  284. volatile uint32_t offset1C4;
  285. volatile uint32_t offset1C8;
  286. volatile uint32_t offset1CC;
  287. volatile uint32_t offset1D0;
  288. volatile uint32_t offset1D4;
  289. volatile uint32_t offset1D8;
  290. volatile uint32_t offset1DC;
  291. volatile uint32_t offset1E0;
  292. volatile uint32_t offset1E4;
  293. volatile uint32_t offset1E8;
  294. volatile uint32_t offset1EC;
  295. volatile uint32_t offset1F0;
  296. volatile uint32_t offset1F4;
  297. volatile uint32_t offset1F8;
  298. volatile uint32_t offset1FC;
  299. volatile uint32_t offset200;
  300. volatile uint32_t offset204;
  301. volatile uint32_t offset208;
  302. volatile uint32_t offset20C;
  303. volatile uint32_t offset210;
  304. volatile uint32_t offset214;
  305. volatile uint32_t offset218;
  306. volatile uint32_t offset21C;
  307. volatile uint32_t offset220;
  308. volatile uint32_t offset224;
  309. volatile uint32_t offset228;
  310. volatile uint32_t offset22C;
  311. volatile uint32_t offset230;
  312. volatile uint32_t offset234;
  313. volatile uint32_t offset238;
  314. volatile uint32_t offset23C;
  315. volatile uint32_t offset240;
  316. volatile uint32_t offset244;
  317. volatile uint32_t offset248;
  318. volatile uint32_t offset24C;
  319. volatile uint32_t offset250;
  320. volatile uint32_t offset254;
  321. volatile uint32_t offset258;
  322. volatile uint32_t offset25C;
  323. volatile uint32_t offset260;
  324. volatile uint32_t offset264;
  325. volatile uint32_t offset268;
  326. volatile uint32_t offset26C;
  327. volatile uint32_t offset270;
  328. volatile uint32_t offset274;
  329. volatile uint32_t offset278;
  330. volatile uint32_t offset27C;
  331. volatile uint32_t offset280;
  332. volatile uint32_t offset284;
  333. volatile uint32_t offset288;
  334. volatile uint32_t offset28C;
  335. volatile uint32_t offset290;
  336. volatile uint32_t offset294;
  337. volatile uint32_t offset298;
  338. volatile uint32_t offset29C;
  339. volatile uint32_t offset2A0;
  340. volatile uint32_t offset2A4;
  341. volatile uint32_t offset2A8;
  342. volatile uint32_t offset2AC;
  343. volatile uint32_t offset2B0;
  344. volatile uint32_t offset2B4;
  345. volatile uint32_t offset2B8;
  346. volatile uint32_t offset2BC;
  347. volatile uint32_t offset2C0;
  348. volatile uint32_t offset2C4;
  349. volatile uint32_t offset2C8;
  350. volatile uint32_t offset2CC;
  351. volatile uint32_t offset2D0;
  352. volatile uint32_t offset2D4;
  353. volatile uint32_t offset2D8;
  354. volatile uint32_t offset2DC;
  355. volatile uint32_t offset2E0;
  356. volatile uint32_t offset2E4;
  357. volatile uint32_t offset2E8;
  358. volatile uint32_t offset2EC;
  359. volatile uint32_t offset2F0;
  360. volatile uint32_t offset2F4;
  361. volatile uint32_t offset2F8;
  362. volatile uint32_t offset2FC;
  363. volatile uint32_t offset300;
  364. volatile uint32_t offset304;
  365. volatile uint32_t offset308;
  366. volatile uint32_t offset30C;
  367. volatile uint32_t offset310;
  368. volatile uint32_t offset314;
  369. volatile uint32_t offset318;
  370. volatile uint32_t offset31C;
  371. volatile uint32_t offset320;
  372. volatile uint32_t offset324;
  373. volatile uint32_t offset328;
  374. volatile uint32_t offset32C;
  375. volatile uint32_t offset330;
  376. volatile uint32_t offset334;
  377. volatile uint32_t offset338;
  378. volatile uint32_t offset33C;
  379. volatile uint32_t offset340;
  380. volatile uint32_t offset344;
  381. volatile uint32_t offset348;
  382. volatile uint32_t offset34C;
  383. volatile uint32_t offset350;
  384. volatile uint32_t offset354;
  385. volatile uint32_t offset358;
  386. volatile uint32_t offset35C;
  387. volatile uint32_t offset360;
  388. volatile uint32_t offset364;
  389. volatile uint32_t offset368;
  390. volatile uint32_t offset36C;
  391. volatile uint32_t offset370;
  392. volatile uint32_t offset374;
  393. volatile uint32_t offset378;
  394. volatile uint32_t offset37C;
  395. volatile uint32_t offset380;
  396. volatile uint32_t offset384;
  397. volatile uint32_t offset388;
  398. volatile uint32_t offset38C;
  399. volatile uint32_t offset390;
  400. volatile uint32_t offset394;
  401. volatile uint32_t offset398;
  402. volatile uint32_t offset39C;
  403. volatile uint32_t offset3A0;
  404. volatile uint32_t offset3A4;
  405. volatile uint32_t offset3A8;
  406. volatile uint32_t offset3AC;
  407. volatile uint32_t offset3B0;
  408. volatile uint32_t offset3B4;
  409. volatile uint32_t offset3B8;
  410. volatile uint32_t offset3BC;
  411. volatile uint32_t offset3C0;
  412. volatile uint32_t offset3C4;
  413. volatile uint32_t offset3C8;
  414. volatile uint32_t offset3CC;
  415. volatile uint32_t offset3D0;
  416. volatile uint32_t offset3D4;
  417. volatile uint32_t offset3D8;
  418. volatile uint32_t offset3DC;
  419. volatile uint32_t offset3E0;
  420. volatile uint32_t offset3E4;
  421. volatile uint32_t offset3E8;
  422. volatile uint32_t offset3EC;
  423. volatile uint32_t offset3F0;
  424. volatile uint32_t offset3F4;
  425. volatile uint32_t offset3F8;
  426. volatile uint32_t offset3FC;
  427. } IMXRT_REGISTER32_t;
  428. typedef struct {
  429. volatile uint16_t offset000;
  430. volatile uint16_t offset002;
  431. volatile uint16_t offset004;
  432. volatile uint16_t offset006;
  433. volatile uint16_t offset008;
  434. volatile uint16_t offset00A;
  435. volatile uint16_t offset00C;
  436. volatile uint16_t offset00E;
  437. volatile uint16_t offset010;
  438. volatile uint16_t offset012;
  439. volatile uint16_t offset014;
  440. volatile uint16_t offset016;
  441. volatile uint16_t offset018;
  442. volatile uint16_t offset01A;
  443. volatile uint16_t offset01C;
  444. volatile uint16_t offset01E;
  445. volatile uint16_t offset020;
  446. volatile uint16_t offset022;
  447. volatile uint16_t offset024;
  448. volatile uint16_t offset026;
  449. volatile uint16_t offset028;
  450. volatile uint16_t offset02A;
  451. volatile uint16_t offset02C;
  452. volatile uint16_t offset02E;
  453. volatile uint16_t offset030;
  454. volatile uint16_t offset032;
  455. volatile uint16_t offset034;
  456. volatile uint16_t offset036;
  457. volatile uint16_t offset038;
  458. volatile uint16_t offset03A;
  459. volatile uint16_t offset03C;
  460. volatile uint16_t offset03E;
  461. volatile uint16_t offset040;
  462. volatile uint16_t offset042;
  463. volatile uint16_t offset044;
  464. volatile uint16_t offset046;
  465. volatile uint16_t offset048;
  466. volatile uint16_t offset04A;
  467. volatile uint16_t offset04C;
  468. volatile uint16_t offset04E;
  469. volatile uint16_t offset050;
  470. volatile uint16_t offset052;
  471. volatile uint16_t offset054;
  472. volatile uint16_t offset056;
  473. volatile uint16_t offset058;
  474. volatile uint16_t offset05A;
  475. volatile uint16_t offset05C;
  476. volatile uint16_t offset05E;
  477. volatile uint16_t offset060;
  478. volatile uint16_t offset062;
  479. volatile uint16_t offset064;
  480. volatile uint16_t offset066;
  481. volatile uint16_t offset068;
  482. volatile uint16_t offset06A;
  483. volatile uint16_t offset06C;
  484. volatile uint16_t offset06E;
  485. volatile uint16_t offset070;
  486. volatile uint16_t offset072;
  487. volatile uint16_t offset074;
  488. volatile uint16_t offset076;
  489. volatile uint16_t offset078;
  490. volatile uint16_t offset07A;
  491. volatile uint16_t offset07C;
  492. volatile uint16_t offset07E;
  493. volatile uint16_t offset080;
  494. volatile uint16_t offset082;
  495. volatile uint16_t offset084;
  496. volatile uint16_t offset086;
  497. volatile uint16_t offset088;
  498. volatile uint16_t offset08A;
  499. volatile uint16_t offset08C;
  500. volatile uint16_t offset08E;
  501. volatile uint16_t offset090;
  502. volatile uint16_t offset092;
  503. volatile uint16_t offset094;
  504. volatile uint16_t offset096;
  505. volatile uint16_t offset098;
  506. volatile uint16_t offset09A;
  507. volatile uint16_t offset09C;
  508. volatile uint16_t offset09E;
  509. volatile uint16_t offset0A0;
  510. volatile uint16_t offset0A2;
  511. volatile uint16_t offset0A4;
  512. volatile uint16_t offset0A6;
  513. volatile uint16_t offset0A8;
  514. volatile uint16_t offset0AA;
  515. volatile uint16_t offset0AC;
  516. volatile uint16_t offset0AE;
  517. volatile uint16_t offset0B0;
  518. volatile uint16_t offset0B2;
  519. volatile uint16_t offset0B4;
  520. volatile uint16_t offset0B6;
  521. volatile uint16_t offset0B8;
  522. volatile uint16_t offset0BA;
  523. volatile uint16_t offset0BC;
  524. volatile uint16_t offset0BE;
  525. volatile uint16_t offset0C0;
  526. volatile uint16_t offset0C2;
  527. volatile uint16_t offset0C4;
  528. volatile uint16_t offset0C6;
  529. volatile uint16_t offset0C8;
  530. volatile uint16_t offset0CA;
  531. volatile uint16_t offset0CC;
  532. volatile uint16_t offset0CE;
  533. volatile uint16_t offset0D0;
  534. volatile uint16_t offset0D2;
  535. volatile uint16_t offset0D4;
  536. volatile uint16_t offset0D6;
  537. volatile uint16_t offset0D8;
  538. volatile uint16_t offset0DA;
  539. volatile uint16_t offset0DC;
  540. volatile uint16_t offset0DE;
  541. volatile uint16_t offset0E0;
  542. volatile uint16_t offset0E2;
  543. volatile uint16_t offset0E4;
  544. volatile uint16_t offset0E6;
  545. volatile uint16_t offset0E8;
  546. volatile uint16_t offset0EA;
  547. volatile uint16_t offset0EC;
  548. volatile uint16_t offset0EE;
  549. volatile uint16_t offset0F0;
  550. volatile uint16_t offset0F2;
  551. volatile uint16_t offset0F4;
  552. volatile uint16_t offset0F6;
  553. volatile uint16_t offset0F8;
  554. volatile uint16_t offset0FA;
  555. volatile uint16_t offset0FC;
  556. volatile uint16_t offset0FE;
  557. volatile uint16_t offset100;
  558. volatile uint16_t offset102;
  559. volatile uint16_t offset104;
  560. volatile uint16_t offset106;
  561. volatile uint16_t offset108;
  562. volatile uint16_t offset10A;
  563. volatile uint16_t offset10C;
  564. volatile uint16_t offset10E;
  565. volatile uint16_t offset110;
  566. volatile uint16_t offset112;
  567. volatile uint16_t offset114;
  568. volatile uint16_t offset116;
  569. volatile uint16_t offset118;
  570. volatile uint16_t offset11A;
  571. volatile uint16_t offset11C;
  572. volatile uint16_t offset11E;
  573. volatile uint16_t offset120;
  574. volatile uint16_t offset122;
  575. volatile uint16_t offset124;
  576. volatile uint16_t offset126;
  577. volatile uint16_t offset128;
  578. volatile uint16_t offset12A;
  579. volatile uint16_t offset12C;
  580. volatile uint16_t offset12E;
  581. volatile uint16_t offset130;
  582. volatile uint16_t offset132;
  583. volatile uint16_t offset134;
  584. volatile uint16_t offset136;
  585. volatile uint16_t offset138;
  586. volatile uint16_t offset13A;
  587. volatile uint16_t offset13C;
  588. volatile uint16_t offset13E;
  589. volatile uint16_t offset140;
  590. volatile uint16_t offset142;
  591. volatile uint16_t offset144;
  592. volatile uint16_t offset146;
  593. volatile uint16_t offset148;
  594. volatile uint16_t offset14A;
  595. volatile uint16_t offset14C;
  596. volatile uint16_t offset14E;
  597. volatile uint16_t offset150;
  598. volatile uint16_t offset152;
  599. volatile uint16_t offset154;
  600. volatile uint16_t offset156;
  601. volatile uint16_t offset158;
  602. volatile uint16_t offset15A;
  603. volatile uint16_t offset15C;
  604. volatile uint16_t offset15E;
  605. volatile uint16_t offset160;
  606. volatile uint16_t offset162;
  607. volatile uint16_t offset164;
  608. volatile uint16_t offset166;
  609. volatile uint16_t offset168;
  610. volatile uint16_t offset16A;
  611. volatile uint16_t offset16C;
  612. volatile uint16_t offset16E;
  613. volatile uint16_t offset170;
  614. volatile uint16_t offset172;
  615. volatile uint16_t offset174;
  616. volatile uint16_t offset176;
  617. volatile uint16_t offset178;
  618. volatile uint16_t offset17A;
  619. volatile uint16_t offset17C;
  620. volatile uint16_t offset17E;
  621. volatile uint16_t offset180;
  622. volatile uint16_t offset182;
  623. volatile uint16_t offset184;
  624. volatile uint16_t offset186;
  625. volatile uint16_t offset188;
  626. volatile uint16_t offset18A;
  627. volatile uint16_t offset18C;
  628. volatile uint16_t offset18E;
  629. volatile uint16_t offset190;
  630. volatile uint16_t offset192;
  631. volatile uint16_t offset194;
  632. volatile uint16_t offset196;
  633. volatile uint16_t offset198;
  634. volatile uint16_t offset19A;
  635. volatile uint16_t offset19C;
  636. volatile uint16_t offset19E;
  637. volatile uint16_t offset1A0;
  638. volatile uint16_t offset1A2;
  639. volatile uint16_t offset1A4;
  640. volatile uint16_t offset1A6;
  641. volatile uint16_t offset1A8;
  642. volatile uint16_t offset1AA;
  643. volatile uint16_t offset1AC;
  644. volatile uint16_t offset1AE;
  645. volatile uint16_t offset1B0;
  646. volatile uint16_t offset1B2;
  647. volatile uint16_t offset1B4;
  648. volatile uint16_t offset1B6;
  649. volatile uint16_t offset1B8;
  650. volatile uint16_t offset1BA;
  651. volatile uint16_t offset1BC;
  652. volatile uint16_t offset1BE;
  653. volatile uint16_t offset1C0;
  654. volatile uint16_t offset1C2;
  655. volatile uint16_t offset1C4;
  656. volatile uint16_t offset1C6;
  657. volatile uint16_t offset1C8;
  658. volatile uint16_t offset1CA;
  659. volatile uint16_t offset1CC;
  660. volatile uint16_t offset1CE;
  661. volatile uint16_t offset1D0;
  662. volatile uint16_t offset1D2;
  663. volatile uint16_t offset1D4;
  664. volatile uint16_t offset1D6;
  665. volatile uint16_t offset1D8;
  666. volatile uint16_t offset1DA;
  667. volatile uint16_t offset1DC;
  668. volatile uint16_t offset1DE;
  669. volatile uint16_t offset1E0;
  670. volatile uint16_t offset1E2;
  671. volatile uint16_t offset1E4;
  672. volatile uint16_t offset1E6;
  673. volatile uint16_t offset1E8;
  674. volatile uint16_t offset1EA;
  675. volatile uint16_t offset1EC;
  676. volatile uint16_t offset1EE;
  677. volatile uint16_t offset1F0;
  678. volatile uint16_t offset1F2;
  679. volatile uint16_t offset1F4;
  680. volatile uint16_t offset1F6;
  681. volatile uint16_t offset1F8;
  682. volatile uint16_t offset1FA;
  683. volatile uint16_t offset1FC;
  684. volatile uint16_t offset1FE;
  685. } IMXRT_REGISTER16_t;
  686. typedef struct {
  687. volatile uint8_t offset00;
  688. volatile uint8_t offset01;
  689. volatile uint8_t offset02;
  690. volatile uint8_t offset03;
  691. volatile uint8_t offset04;
  692. volatile uint8_t offset05;
  693. volatile uint8_t offset06;
  694. volatile uint8_t offset07;
  695. volatile uint8_t offset08;
  696. volatile uint8_t offset09;
  697. volatile uint8_t offset0A;
  698. volatile uint8_t offset0B;
  699. volatile uint8_t offset0C;
  700. volatile uint8_t offset0D;
  701. volatile uint8_t offset0E;
  702. volatile uint8_t offset0F;
  703. } IMXRT_REGISTER8_t;
  704. // 13.3: page 456
  705. #define IMXRT_CMP1 (*(IMXRT_REGISTER8_t *)0x40094000)
  706. #define CMP1_CR0 (IMXRT_CMP1.offset00)
  707. #define CMP1_CR1 (IMXRT_CMP1.offset01)
  708. #define CMP1_FPR (IMXRT_CMP1.offset02)
  709. #define CMP1_SCR (IMXRT_CMP1.offset03)
  710. #define CMP1_DACCR (IMXRT_CMP1.offset04)
  711. #define CMP1_MUXCR (IMXRT_CMP1.offset05)
  712. #define IMXRT_CMP2 (*(IMXRT_REGISTER8_t *)0x40094008)
  713. #define CMP2_CR0 (IMXRT_CMP2.offset00)
  714. #define CMP2_CR1 (IMXRT_CMP2.offset01)
  715. #define CMP2_FPR (IMXRT_CMP2.offset02)
  716. #define CMP2_SCR (IMXRT_CMP2.offset03)
  717. #define CMP2_DACCR (IMXRT_CMP2.offset04)
  718. #define CMP2_MUXCR (IMXRT_CMP2.offset05)
  719. #define IMXRT_CMP3 (*(IMXRT_REGISTER8_t *)0x40094010)
  720. #define CMP3_CR0 (IMXRT_CMP3.offset00)
  721. #define CMP3_CR1 (IMXRT_CMP3.offset01)
  722. #define CMP3_FPR (IMXRT_CMP3.offset02)
  723. #define CMP3_SCR (IMXRT_CMP3.offset03)
  724. #define CMP3_DACCR (IMXRT_CMP3.offset04)
  725. #define CMP3_MUXCR (IMXRT_CMP3.offset05)
  726. #define IMXRT_CMP4 (*(IMXRT_REGISTER8_t *)0x40094018)
  727. #define CMP4_CR0 (IMXRT_CMP4.offset00)
  728. #define CMP4_CR1 (IMXRT_CMP4.offset01)
  729. #define CMP4_FPR (IMXRT_CMP4.offset02)
  730. #define CMP4_SCR (IMXRT_CMP4.offset03)
  731. #define CMP4_DACCR (IMXRT_CMP4.offset04)
  732. #define CMP4_MUXCR (IMXRT_CMP4.offset05)
  733. // 14.6: page 505
  734. #define IMXRT_ADC1 (*(IMXRT_REGISTER32_t *)0x400C4000)
  735. #define ADC1_HC0 (IMXRT_ADC1.offset000)
  736. #define ADC1_HC1 (IMXRT_ADC1.offset004)
  737. #define ADC1_HC2 (IMXRT_ADC1.offset008)
  738. #define ADC1_HC3 (IMXRT_ADC1.offset00C)
  739. #define ADC1_HC4 (IMXRT_ADC1.offset010)
  740. #define ADC1_HC5 (IMXRT_ADC1.offset014)
  741. #define ADC1_HC6 (IMXRT_ADC1.offset018)
  742. #define ADC1_HC7 (IMXRT_ADC1.offset01C)
  743. #define ADC1_HS (IMXRT_ADC1.offset020)
  744. #define ADC1_R0 (IMXRT_ADC1.offset024)
  745. #define ADC1_R1 (IMXRT_ADC1.offset028)
  746. #define ADC1_R2 (IMXRT_ADC1.offset02C)
  747. #define ADC1_R3 (IMXRT_ADC1.offset030)
  748. #define ADC1_R4 (IMXRT_ADC1.offset034)
  749. #define ADC1_R5 (IMXRT_ADC1.offset038)
  750. #define ADC1_R6 (IMXRT_ADC1.offset03C)
  751. #define ADC1_R7 (IMXRT_ADC1.offset040)
  752. #define ADC1_CFG (IMXRT_ADC1.offset044)
  753. #define ADC1_GC (IMXRT_ADC1.offset048)
  754. #define ADC1_GS (IMXRT_ADC1.offset04C)
  755. #define ADC1_CV (IMXRT_ADC1.offset050)
  756. #define ADC1_OFS (IMXRT_ADC1.offset054)
  757. #define ADC1_CAL (IMXRT_ADC1.offset058)
  758. #define IMXRT_ADC2 (*(IMXRT_REGISTER32_t *)0x400C8000)
  759. #define ADC2_HC0 (IMXRT_ADC2.offset000)
  760. #define ADC2_HC1 (IMXRT_ADC2.offset004)
  761. #define ADC2_HC2 (IMXRT_ADC2.offset008)
  762. #define ADC2_HC3 (IMXRT_ADC2.offset00C)
  763. #define ADC2_HC4 (IMXRT_ADC2.offset010)
  764. #define ADC2_HC5 (IMXRT_ADC2.offset014)
  765. #define ADC2_HC6 (IMXRT_ADC2.offset018)
  766. #define ADC2_HC7 (IMXRT_ADC2.offset01C)
  767. #define ADC2_HS (IMXRT_ADC2.offset020)
  768. #define ADC2_R0 (IMXRT_ADC2.offset024)
  769. #define ADC2_R1 (IMXRT_ADC2.offset028)
  770. #define ADC2_R2 (IMXRT_ADC2.offset02C)
  771. #define ADC2_R3 (IMXRT_ADC2.offset030)
  772. #define ADC2_R4 (IMXRT_ADC2.offset034)
  773. #define ADC2_R5 (IMXRT_ADC2.offset038)
  774. #define ADC2_R6 (IMXRT_ADC2.offset03C)
  775. #define ADC2_R7 (IMXRT_ADC2.offset040)
  776. #define ADC2_CFG (IMXRT_ADC2.offset044)
  777. #define ADC2_GC (IMXRT_ADC2.offset048)
  778. #define ADC2_GS (IMXRT_ADC2.offset04C)
  779. #define ADC2_CV (IMXRT_ADC2.offset050)
  780. #define ADC2_OFS (IMXRT_ADC2.offset054)
  781. #define ADC2_CAL (IMXRT_ADC2.offset058)
  782. // 15.4.1.1: page 527
  783. #define IMXRT_ADC_ETC (*(IMXRT_REGISTER32_t *)0x403B0000)
  784. #define ADC_ETC_CTRL (IMXRT_ADC_ETC.offset000)
  785. #define ADC_ETC_DONE0_1_IRQ (IMXRT_ADC_ETC.offset004)
  786. #define ADC_ETC_DONE2_ERR_IRQ (IMXRT_ADC_ETC.offset008)
  787. #define ADC_ETC_DMA_CTRL (IMXRT_ADC_ETC.offset00C)
  788. #define ADC_ETC_TRIG0_CTRL (IMXRT_ADC_ETC.offset010)
  789. #define ADC_ETC_TRIG0_COUNTER (IMXRT_ADC_ETC.offset014)
  790. #define ADC_ETC_TRIG0_CHAIN_1_0 (IMXRT_ADC_ETC.offset018)
  791. #define ADC_ETC_TRIG0_CHAIN_3_2 (IMXRT_ADC_ETC.offset01C)
  792. #define ADC_ETC_TRIG0_CHAIN_5_4 (IMXRT_ADC_ETC.offset020)
  793. #define ADC_ETC_TRIG0_CHAIN_7_6 (IMXRT_ADC_ETC.offset024)
  794. #define ADC_ETC_TRIG0_RESULT_1_0 (IMXRT_ADC_ETC.offset028)
  795. #define ADC_ETC_TRIG0_RESULT_3_2 (IMXRT_ADC_ETC.offset02C)
  796. #define ADC_ETC_TRIG0_RESULT_5_4 (IMXRT_ADC_ETC.offset030)
  797. #define ADC_ETC_TRIG0_RESULT_7_6 (IMXRT_ADC_ETC.offset034)
  798. #define ADC_ETC_TRIG1_CTRL (IMXRT_ADC_ETC.offset038)
  799. #define ADC_ETC_TRIG1_COUNTER (IMXRT_ADC_ETC.offset03C)
  800. #define ADC_ETC_TRIG1_CHAIN_1_0 (IMXRT_ADC_ETC.offset040)
  801. #define ADC_ETC_TRIG1_CHAIN_3_2 (IMXRT_ADC_ETC.offset044)
  802. #define ADC_ETC_TRIG1_CHAIN_5_4 (IMXRT_ADC_ETC.offset048)
  803. #define ADC_ETC_TRIG1_CHAIN_7_6 (IMXRT_ADC_ETC.offset04C)
  804. #define ADC_ETC_TRIG1_RESULT_1_0 (IMXRT_ADC_ETC.offset050)
  805. #define ADC_ETC_TRIG1_RESULT_3_2 (IMXRT_ADC_ETC.offset054)
  806. #define ADC_ETC_TRIG1_RESULT_5_4 (IMXRT_ADC_ETC.offset058)
  807. #define ADC_ETC_TRIG1_RESULT_7_6 (IMXRT_ADC_ETC.offset05C)
  808. #define ADC_ETC_TRIG2_CTRL (IMXRT_ADC_ETC.offset060)
  809. #define ADC_ETC_TRIG2_COUNTER (IMXRT_ADC_ETC.offset064)
  810. #define ADC_ETC_TRIG2_CHAIN_1_0 (IMXRT_ADC_ETC.offset068)
  811. #define ADC_ETC_TRIG2_CHAIN_3_2 (IMXRT_ADC_ETC.offset06C)
  812. #define ADC_ETC_TRIG2_CHAIN_5_4 (IMXRT_ADC_ETC.offset070)
  813. #define ADC_ETC_TRIG2_CHAIN_7_6 (IMXRT_ADC_ETC.offset074)
  814. #define ADC_ETC_TRIG2_RESULT_1_0 (IMXRT_ADC_ETC.offset078)
  815. #define ADC_ETC_TRIG2_RESULT_3_2 (IMXRT_ADC_ETC.offset07C)
  816. #define ADC_ETC_TRIG2_RESULT_5_4 (IMXRT_ADC_ETC.offset080)
  817. #define ADC_ETC_TRIG2_RESULT_7_6 (IMXRT_ADC_ETC.offset084)
  818. #define ADC_ETC_TRIG3_CTRL (IMXRT_ADC_ETC.offset088)
  819. #define ADC_ETC_TRIG3_COUNTER (IMXRT_ADC_ETC.offset08C)
  820. #define ADC_ETC_TRIG3_CHAIN_1_0 (IMXRT_ADC_ETC.offset090)
  821. #define ADC_ETC_TRIG3_CHAIN_3_2 (IMXRT_ADC_ETC.offset094)
  822. #define ADC_ETC_TRIG3_CHAIN_5_4 (IMXRT_ADC_ETC.offset098)
  823. #define ADC_ETC_TRIG3_CHAIN_7_6 (IMXRT_ADC_ETC.offset09C)
  824. #define ADC_ETC_TRIG3_RESULT_1_0 (IMXRT_ADC_ETC.offset0A0)
  825. #define ADC_ETC_TRIG3_RESULT_3_2 (IMXRT_ADC_ETC.offset0A4)
  826. #define ADC_ETC_TRIG3_RESULT_5_4 (IMXRT_ADC_ETC.offset0A8)
  827. #define ADC_ETC_TRIG3_RESULT_7_6 (IMXRT_ADC_ETC.offset0AC)
  828. #define ADC_ETC_TRIG4_CTRL (IMXRT_ADC_ETC.offset0B0)
  829. #define ADC_ETC_TRIG4_COUNTER (IMXRT_ADC_ETC.offset0B4)
  830. #define ADC_ETC_TRIG4_CHAIN_1_0 (IMXRT_ADC_ETC.offset0B8)
  831. #define ADC_ETC_TRIG4_CHAIN_3_2 (IMXRT_ADC_ETC.offset0BC)
  832. #define ADC_ETC_TRIG4_CHAIN_5_4 (IMXRT_ADC_ETC.offset0C0)
  833. #define ADC_ETC_TRIG4_CHAIN_7_6 (IMXRT_ADC_ETC.offset0C4)
  834. #define ADC_ETC_TRIG4_RESULT_1_0 (IMXRT_ADC_ETC.offset0C8)
  835. #define ADC_ETC_TRIG4_RESULT_3_2 (IMXRT_ADC_ETC.offset0CC)
  836. #define ADC_ETC_TRIG4_RESULT_5_4 (IMXRT_ADC_ETC.offset0D0)
  837. #define ADC_ETC_TRIG4_RESULT_7_6 (IMXRT_ADC_ETC.offset0D4)
  838. #define ADC_ETC_TRIG5_CTRL (IMXRT_ADC_ETC.offset0D8)
  839. #define ADC_ETC_TRIG5_COUNTER (IMXRT_ADC_ETC.offset0DC)
  840. #define ADC_ETC_TRIG5_CHAIN_1_0 (IMXRT_ADC_ETC.offset0E0)
  841. #define ADC_ETC_TRIG5_CHAIN_3_2 (IMXRT_ADC_ETC.offset0E4)
  842. #define ADC_ETC_TRIG5_CHAIN_5_4 (IMXRT_ADC_ETC.offset0E8)
  843. #define ADC_ETC_TRIG5_CHAIN_7_6 (IMXRT_ADC_ETC.offset0EC)
  844. #define ADC_ETC_TRIG5_RESULT_1_0 (IMXRT_ADC_ETC.offset0F0)
  845. #define ADC_ETC_TRIG5_RESULT_3_2 (IMXRT_ADC_ETC.offset0F4)
  846. #define ADC_ETC_TRIG5_RESULT_5_4 (IMXRT_ADC_ETC.offset0F8)
  847. #define ADC_ETC_TRIG5_RESULT_7_6 (IMXRT_ADC_ETC.offset0FC)
  848. #define ADC_ETC_TRIG6_CTRL (IMXRT_ADC_ETC.offset100)
  849. #define ADC_ETC_TRIG6_COUNTER (IMXRT_ADC_ETC.offset104)
  850. #define ADC_ETC_TRIG6_CHAIN_1_0 (IMXRT_ADC_ETC.offset108)
  851. #define ADC_ETC_TRIG6_CHAIN_3_2 (IMXRT_ADC_ETC.offset10C)
  852. #define ADC_ETC_TRIG6_CHAIN_5_4 (IMXRT_ADC_ETC.offset110)
  853. #define ADC_ETC_TRIG6_CHAIN_7_6 (IMXRT_ADC_ETC.offset114)
  854. #define ADC_ETC_TRIG6_RESULT_1_0 (IMXRT_ADC_ETC.offset118)
  855. #define ADC_ETC_TRIG6_RESULT_3_2 (IMXRT_ADC_ETC.offset11C)
  856. #define ADC_ETC_TRIG6_RESULT_5_4 (IMXRT_ADC_ETC.offset120)
  857. #define ADC_ETC_TRIG6_RESULT_7_6 (IMXRT_ADC_ETC.offset124)
  858. #define ADC_ETC_TRIG7_CTRL (IMXRT_ADC_ETC.offset128)
  859. #define ADC_ETC_TRIG7_COUNTER (IMXRT_ADC_ETC.offset12C)
  860. #define ADC_ETC_TRIG7_CHAIN_1_0 (IMXRT_ADC_ETC.offset130)
  861. #define ADC_ETC_TRIG7_CHAIN_3_2 (IMXRT_ADC_ETC.offset134)
  862. #define ADC_ETC_TRIG7_CHAIN_5_4 (IMXRT_ADC_ETC.offset138)
  863. #define ADC_ETC_TRIG7_CHAIN_7_6 (IMXRT_ADC_ETC.offset13C)
  864. #define ADC_ETC_TRIG7_RESULT_1_0 (IMXRT_ADC_ETC.offset140)
  865. #define ADC_ETC_TRIG7_RESULT_3_2 (IMXRT_ADC_ETC.offset144)
  866. #define ADC_ETC_TRIG7_RESULT_5_4 (IMXRT_ADC_ETC.offset148)
  867. #define ADC_ETC_TRIG7_RESULT_7_6 (IMXRT_ADC_ETC.offset14C)
  868. // 16.7: page 640
  869. #define IMXRT_AIPSTZ1 (*(IMXRT_REGISTER32_t *)0x4007C000)
  870. #define AIPSTZ1_MPR (IMXRT_AIPSTZ1.offset000)
  871. #define AIPSTZ1_OPACR (IMXRT_AIPSTZ1.offset040)
  872. #define AIPSTZ1_OPACR1 (IMXRT_AIPSTZ1.offset044)
  873. #define AIPSTZ1_OPACR2 (IMXRT_AIPSTZ1.offset048)
  874. #define AIPSTZ1_OPACR3 (IMXRT_AIPSTZ1.offset04C)
  875. #define AIPSTZ1_OPACR4 (IMXRT_AIPSTZ1.offset050)
  876. #define IMXRT_AIPSTZ2 (*(IMXRT_REGISTER32_t *)0x4017C000)
  877. #define AIPSTZ2_MPR (IMXRT_AIPSTZ2.offset000)
  878. #define AIPSTZ2_OPACR (IMXRT_AIPSTZ2.offset040)
  879. #define AIPSTZ2_OPACR1 (IMXRT_AIPSTZ2.offset044)
  880. #define AIPSTZ2_OPACR2 (IMXRT_AIPSTZ2.offset048)
  881. #define AIPSTZ2_OPACR3 (IMXRT_AIPSTZ2.offset04C)
  882. #define AIPSTZ2_OPACR4 (IMXRT_AIPSTZ2.offset050)
  883. #define IMXRT_AIPSTZ3 (*(IMXRT_REGISTER32_t *)0x4027C000)
  884. #define AIPSTZ3_MPR (IMXRT_AIPSTZ3.offset000)
  885. #define AIPSTZ3_OPACR (IMXRT_AIPSTZ3.offset040)
  886. #define AIPSTZ3_OPACR1 (IMXRT_AIPSTZ3.offset044)
  887. #define AIPSTZ3_OPACR2 (IMXRT_AIPSTZ3.offset048)
  888. #define AIPSTZ3_OPACR3 (IMXRT_AIPSTZ3.offset04C)
  889. #define AIPSTZ3_OPACR4 (IMXRT_AIPSTZ3.offset050)
  890. #define IMXRT_AIPSTZ4 (*(IMXRT_REGISTER32_t *)0x4037C000)
  891. #define AIPSTZ4_MPR (IMXRT_AIPSTZ4.offset000)
  892. #define AIPSTZ4_OPACR (IMXRT_AIPSTZ4.offset040)
  893. #define AIPSTZ4_OPACR1 (IMXRT_AIPSTZ4.offset044)
  894. #define AIPSTZ4_OPACR2 (IMXRT_AIPSTZ4.offset048)
  895. #define AIPSTZ4_OPACR3 (IMXRT_AIPSTZ4.offset04C)
  896. #define AIPSTZ4_OPACR4 (IMXRT_AIPSTZ4.offset050)
  897. // 17.3: page 662
  898. #define IMXRT_AOI1 (*(IMXRT_REGISTER16_t *)0x403B4000)
  899. #define AOI1_BFCRT010 (IMXRT_AOI1.offset000)
  900. #define AOI1_BFCRT230 (IMXRT_AOI1.offset002)
  901. #define AOI1_BFCRT011 (IMXRT_AOI1.offset004)
  902. #define AOI1_BFCRT231 (IMXRT_AOI1.offset006)
  903. #define AOI1_BFCRT012 (IMXRT_AOI1.offset008)
  904. #define AOI1_BFCRT232 (IMXRT_AOI1.offset00A)
  905. #define AOI1_BFCRT013 (IMXRT_AOI1.offset00C)
  906. #define AOI1_BFCRT233 (IMXRT_AOI1.offset00E)
  907. #define IMXRT_AOI2 (*(IMXRT_REGISTER16_t *)0x403B8000)
  908. #define AOI2_BFCRT010 (IMXRT_AOI2.offset000)
  909. #define AOI2_BFCRT230 (IMXRT_AOI2.offset002)
  910. #define AOI2_BFCRT011 (IMXRT_AOI2.offset004)
  911. #define AOI2_BFCRT231 (IMXRT_AOI2.offset006)
  912. #define AOI2_BFCRT012 (IMXRT_AOI2.offset008)
  913. #define AOI2_BFCRT232 (IMXRT_AOI2.offset00A)
  914. #define AOI2_BFCRT013 (IMXRT_AOI2.offset00C)
  915. #define AOI2_BFCRT233 (IMXRT_AOI2.offset00E)
  916. // 18.7: page 703
  917. #define IMXRT_CCM (*(IMXRT_REGISTER32_t *)0x400FC000)
  918. #define CCM_CCR (IMXRT_CCM.offset000)
  919. #define CCM_CSR (IMXRT_CCM.offset008)
  920. #define CCM_CCSR (IMXRT_CCM.offset00C)
  921. #define CCM_CACRR (IMXRT_CCM.offset010)
  922. #define CCM_CBCDR (IMXRT_CCM.offset014)
  923. #define CCM_CBCMR (IMXRT_CCM.offset018)
  924. #define CCM_CSCMR1 (IMXRT_CCM.offset01C)
  925. #define CCM_CSCMR2 (IMXRT_CCM.offset020)
  926. #define CCM_CSCDR1 (IMXRT_CCM.offset024)
  927. #define CCM_CS1CDR (IMXRT_CCM.offset028)
  928. #define CCM_CS2CDR (IMXRT_CCM.offset02C)
  929. #define CCM_CDCDR (IMXRT_CCM.offset030)
  930. #define CCM_CSCDR2 (IMXRT_CCM.offset038)
  931. #define CCM_CSCDR3 (IMXRT_CCM.offset03C)
  932. #define CCM_CDHIPR (IMXRT_CCM.offset048)
  933. #define CCM_CLPCR (IMXRT_CCM.offset054)
  934. #define CCM_CISR (IMXRT_CCM.offset058)
  935. #define CCM_CIMR (IMXRT_CCM.offset05C)
  936. #define CCM_CCOSR (IMXRT_CCM.offset060)
  937. #define CCM_CGPR (IMXRT_CCM.offset064)
  938. #define CCM_CCGR0 (IMXRT_CCM.offset068)
  939. #define CCM_CCGR1 (IMXRT_CCM.offset06C)
  940. #define CCM_CCGR2 (IMXRT_CCM.offset070)
  941. #define CCM_CCGR3 (IMXRT_CCM.offset074)
  942. #define CCM_CCGR4 (IMXRT_CCM.offset078)
  943. #define CCM_CCGR5 (IMXRT_CCM.offset07C)
  944. #define CCM_CCGR6 (IMXRT_CCM.offset080)
  945. #define CCM_CMEOR (IMXRT_CCM.offset088)
  946. #define CCM_CCR_RBC_EN ((uint32_t)(1<<27))
  947. #define CCM_CCR_REG_BYPASS_COUNT(n) ((uint32_t)(((n) & 0x3F) << 21))
  948. #define CCM_CCR_COSC_EN ((uint32_t)(1<<12))
  949. #define CCM_CCR_OSCNT(n) ((uint32_t)(((n) & 0xFF) << 0))
  950. #define CCM_CSR_COSC_READY ((uint32_t)(1<<5))
  951. #define CCM_CSR_CAMP2_READY ((uint32_t)(1<<3))
  952. #define CCM_CSR_REF_EN_B ((uint32_t)(1<<0))
  953. #define CCM_CCSR_PLL3_SW_CLK_SEL ((uint32_t)(1<<0))
  954. #define CCM_CACRR_ARM_PODF(n) ((uint32_t)(((n) & 0x07) << 0))
  955. #define CCM_CBCDR_PERIPH_CLK2_PODF(n) ((uint32_t)(((n) & 0x07) << 27))
  956. #define CCM_CBCDR_PERIPH_CLK_SEL ((uint32_t)(1<<25))
  957. #define CCM_CBCDR_SEMC_PODF(n) ((uint32_t)(((n) & 0x07) << 16))
  958. #define CCM_CBCDR_AHB_PODF(n) ((uint32_t)(((n) & 0x07) << 10))
  959. #define CCM_CBCDR_IPG_PODF(n) ((uint32_t)(((n) & 0x03) << 8))
  960. #define CCM_CBCDR_SEMC_ALT_CLK_SEL ((uint32_t)(1<<7))
  961. #define CCM_CBCDR_SEMC_CLK_SEL ((uint32_t)(1<<6))
  962. #define CCM_CBCMR_LPSPI_PODF(n) ((uint32_t)(((n) & 0x07) << 26))
  963. #define CCM_CBCMR_LCDIF_PODF(n) ((uint32_t)(((n) & 0x07) << 23))
  964. #define CCM_CBCMR_PRE_PERIPH_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 18))
  965. #define CCM_CBCMR_TRACE_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 14))
  966. #define CCM_CBCMR_PERIPH_CLK2_SEL(n) ((uint32_t)(((n) & 0x03) << 12))
  967. #define CCM_CBCMR_LPSPI_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 5))
  968. #define CCM_CSCMR1_FLEXSPI_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 29))
  969. #define CCM_CSCMR1_FLEXSPI_PODF(n) ((uint32_t)(((n) & 0x07) << 23))
  970. #define CCM_CSCMR1_USDHC2_CLK_SEL ((uint32_t)(1<<17))
  971. #define CCM_CSCMR1_USDHC1_CLK_SEL ((uint32_t)(1<<16))
  972. #define CCM_CSCMR1_SAI3_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 14))
  973. #define CCM_CSCMR1_SAI2_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 12))
  974. #define CCM_CSCMR1_SAI1_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 10))
  975. #define CCM_CSCMR1_PERCLK_CLK_SEL ((uint32_t)(1<<6))
  976. #define CCM_CSCMR1_PERCLK_PODF(n) ((uint32_t)(((n) & 0x3F) << 0))
  977. #define CCM_CSCMR2_FLEXIO2_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 19))
  978. #define CCM_CSCMR2_CAN_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 8))
  979. #define CCM_CSCMR2_CAN_CLK_PODF(n) ((uint32_t)(((n) & 0x3F) << 2))
  980. #define CCM_CSCDR1_TRACE_PODF(n) ((uint32_t)(((n) & 0x07) << 25))
  981. #define CCM_CSCDR1_USDHC2_PODF(n) ((uint32_t)(((n) & 0x07) << 16))
  982. #define CCM_CSCDR1_USDHC1_PODF(n) ((uint32_t)(((n) & 0x07) << 11))
  983. #define CCM_CSCDR1_UART_CLK_SEL ((uint32_t)(1<<6))
  984. #define CCM_CSCDR1_UART_CLK_PODF(n) ((uint32_t)(((n) & 0x3F) << 0))
  985. #define CCM_CS1CDR_FLEXIO2_CLK_PODF(n) ((uint32_t)(((n) & 0x07) << 25))
  986. #define CCM_CS1CDR_SAI3_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 22))
  987. #define CCM_CS1CDR_SAI3_CLK_PODF(n) ((uint32_t)(((n) & 0x1F) << 16))
  988. #define CCM_CS1CDR_FLEXIO2_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 9))
  989. #define CCM_CS1CDR_SAI1_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 6))
  990. #define CCM_CS1CDR_SAI1_CLK_PODF(n) ((uint32_t)(((n) & 0x1F) << 0))
  991. #define CCM_CS2CDR_SAI2_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 6))
  992. #define CCM_CS2CDR_SAI2_CLK_PODF(n) ((uint32_t)(((n) & 0x3F) << 0))
  993. #define CCM_CDCDR_SPDIF0_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 25))
  994. #define CCM_CDCDR_SPDIF0_CLK_PODF(n) ((uint32_t)(((n) & 0x07) << 22))
  995. #define CCM_CDCDR_SPDIF0_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 20))
  996. #define CCM_CDCDR_FLEXIO1_CLK_PRED(n) ((uint32_t)(((n) & 0x07) << 12))
  997. #define CCM_CDCDR_FLEXIO1_CLK_PODF(n) ((uint32_t)(((n) & 0x07) << 9))
  998. #define CCM_CDCDR_FLEXIO1_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 7))
  999. #define CCM_CSCDR2_LPI2C_CLK_PODF(n) ((uint32_t)(((n) & 0x1F) << 19))
  1000. #define CCM_CSCDR2_LPI2C_CLK_SEL ((uint32_t)(1<<18))
  1001. #define CCM_CSCDR2_LCDIF_PRE_CLK_SEL(n) ((uint32_t)(((n) & 0x07) << 15))
  1002. #define CCM_CSCDR2_LCDIF_PRED(n) ((uint32_t)(((n) & 0x07) << 12))
  1003. #define CCM_CSCDR2_LCDIF_CLK_SEL(n) ((uint32_t)(((n) & 0x07) << 9))
  1004. #define CCM_CSCDR3_CSI_PODF(n) ((uint32_t)(((n) & 0x07) << 11))
  1005. #define CCM_CSCDR3_CSI_CLK_SEL(n) ((uint32_t)(((n) & 0x03) << 9))
  1006. #define CCM_CDHIPR_ARM_PODF_BUSY ((uint32_t)(1<<16))
  1007. #define CCM_CDHIPR_PERIPH_CLK_SEL_BUSY ((uint32_t)(1<<5))
  1008. #define CCM_CDHIPR_PERIPH2_CLK_SEL_BUSY ((uint32_t)(1<<3))
  1009. #define CCM_CDHIPR_AHB_PODF_BUSY ((uint32_t)(1<<1))
  1010. #define CCM_CDHIPR_SEMC_PODF_BUSY ((uint32_t)(1<<0))
  1011. #define CCM_CLPCR_MASK_L2CC_IDLE ((uint32_t)(1<<27))
  1012. #define CCM_CLPCR_MASK_SCU_IDLE ((uint32_t)(1<<26))
  1013. #define CCM_CLPCR_MASK_CORE0_WFI ((uint32_t)(1<<22))
  1014. #define CCM_CLPCR_BYPASS_LPM_HS0 ((uint32_t)(1<<21))
  1015. #define CCM_CLPCR_BYPASS_LPM_HS1 ((uint32_t)(1<<19))
  1016. #define CCM_CLPCR_COSC_PWRDOWN ((uint32_t)(1<<11))
  1017. #define CCM_CLPCR_STBY_COUNT(n) ((uint32_t)(((n) & 0x03) << 9))
  1018. #define CCM_CLPCR_VSTBY ((uint32_t)(1<<8))
  1019. #define CCM_CLPCR_DIS_REF_OSC ((uint32_t)(1<<7))
  1020. #define CCM_CLPCR_SBYOS ((uint32_t)(1<<6))
  1021. #define CCM_CLPCR_ARM_CLK_DIS_ON_LPM ((uint32_t)(1<<5))
  1022. #define CCM_CLPCR_LPM(n) ((uint32_t)(((n) & 0x03) << 0))
  1023. #define CCM_CISR_ARM_PODF_LOADED ((uint32_t)(1<<26))
  1024. #define CCM_CISR_PERIPH_CLK_SEL_LOADED ((uint32_t)(1<<22))
  1025. #define CCM_CISR_AHB_PODF_LOADED ((uint32_t)(1<<20))
  1026. #define CCM_CISR_PERIPH2_CLK_SEL_LOADED ((uint32_t)(1<<19))
  1027. #define CCM_CISR_SEMC_PODF_LOADED ((uint32_t)(1<<17))
  1028. #define CCM_CISR_COSC_READY ((uint32_t)(1<<6))
  1029. #define CCM_CISR_LRF_PLL ((uint32_t)(1<<0))
  1030. #define CCM_CIMR_ARM_PODF_LOADED ((uint32_t)(1<<26))
  1031. #define CCM_CIMR_MASK_PERIPH_CLK_SEL_LOADED ((uint32_t)(1<<22))
  1032. #define CCM_CIMR_MASK_AHB_PODF_LOADED ((uint32_t)(1<<20))
  1033. #define CCM_CIMR_MASK_PERIPH2_CLK_SEL_LOADED ((uint32_t)(1<<19))
  1034. #define CCM_CIMR_MASK_SEMC_PODF_LOADED ((uint32_t)(1<<17))
  1035. #define CCM_CIMR_MASK_COSC_READY ((uint32_t)(1<<6))
  1036. #define CCM_CIMR_MASK_LRF_PLL ((uint32_t)(1<<0))
  1037. #define CCM_CCOSR_CLKO2_EN ((uint32_t)(1<<24))
  1038. #define CCM_CCOSR_CLKO2_DIV(n) ((uint32_t)(((n) & 0x07) << 21))
  1039. #define CCM_CCOSR_CLKO2_SEL(n) ((uint32_t)(((n) & 0x1F) << 16))
  1040. #define CCM_CCOSR_CLK_OUT_SEL ((uint32_t)(1<<8))
  1041. #define CCM_CCOSR_CLKO1_EN ((uint32_t)(1<<7))
  1042. #define CCM_CCOSR_CLKO1_DIV(n) ((uint32_t)(((n) & 0x07) << 4))
  1043. #define CCM_CCOSR_CLKO1_SEL(n) ((uint32_t)(((n) & 0x0F) << 0))
  1044. #define CCM_CGPR_INT_MEM_CLK_LPM ((uint32_t)(1<<17))
  1045. #define CCM_CGPR_FPL ((uint32_t)(1<<16))
  1046. #define CCM_CGPR_SYS_MEM_DS_CTRL(n) ((uint32_t)(((n) & 0x03) << 14))
  1047. #define CCM_CGPR_EFUSE_PROG_SUPPLY_GATE ((uint32_t)(1<<4))
  1048. #define CCM_CGPR_PMIC_DELAY_SCALER ((uint32_t)(1<<0))
  1049. #define CCM_CCGR_OFF 0
  1050. #define CCM_CCGR_ON_RUNONLY 1
  1051. #define CCM_CCGR_ON 3
  1052. #define CCM_CCGR0_GPIO2(n) ((uint32_t)(((n) & 0x03) << 30))
  1053. #define CCM_CCGR0_LPUART2(n) ((uint32_t)(((n) & 0x03) << 28))
  1054. #define CCM_CCGR0_GPT2_SERIAL(n) ((uint32_t)(((n) & 0x03) << 26))
  1055. #define CCM_CCGR0_GPT2_BUS(n) ((uint32_t)(((n) & 0x03) << 24))
  1056. #define CCM_CCGR0_TRACE(n) ((uint32_t)(((n) & 0x03) << 22))
  1057. #define CCM_CCGR0_CAN2_SERIAL(n) ((uint32_t)(((n) & 0x03) << 20))
  1058. #define CCM_CCGR0_CAN2(n) ((uint32_t)(((n) & 0x03) << 18))
  1059. #define CCM_CCGR0_CAN1_SERIAl(n) ((uint32_t)(((n) & 0x03) << 16))
  1060. #define CCM_CCGR0_CAN1(n) ((uint32_t)(((n) & 0x03) << 14))
  1061. #define CCM_CCGR0_LPUART3(n) ((uint32_t)(((n) & 0x03) << 12))
  1062. #define CCM_CCGR0_DCP(n) ((uint32_t)(((n) & 0x03) << 10))
  1063. #define CCM_CCGR0_MQS_HMCLK(n) ((uint32_t)(((n) & 0x03) << 4))
  1064. #define CCM_CCGR0_AIPS_TZ2(n) ((uint32_t)(((n) & 0x03) << 2))
  1065. #define CCM_CCGR0_AIPS_TZ1(n) ((uint32_t)(((n) & 0x03) << 0))
  1066. #define CCM_CCGR1_CSU(n) ((uint32_t)(((n) & 0x03) << 28))
  1067. #define CCM_CCGR1_GPIO1(n) ((uint32_t)(((n) & 0x03) << 26))
  1068. #define CCM_CCGR1_LPUART4(n) ((uint32_t)(((n) & 0x03) << 24))
  1069. #define CCM_CCGR1_GPT_SERIAL(n) ((uint32_t)(((n) & 0x03) << 22))
  1070. #define CCM_CCGR1_GPT(n) ((uint32_t)(((n) & 0x03) << 20))
  1071. #define CCM_CCGR1_ADC1(n) ((uint32_t)(((n) & 0x03) << 16))
  1072. #define CCM_CCGR1_AOI2(n) ((uint32_t)(((n) & 0x03) << 14))
  1073. #define CCM_CCGR1_PIT(n) ((uint32_t)(((n) & 0x03) << 12))
  1074. #define CCM_CCGR1_ENET(n) ((uint32_t)(((n) & 0x03) << 10))
  1075. #define CCM_CCGR1_ADC2(n) ((uint32_t)(((n) & 0x03) << 8))
  1076. #define CCM_CCGR1_LPSPI4(n) ((uint32_t)(((n) & 0x03) << 6))
  1077. #define CCM_CCGR1_LPSPI3(n) ((uint32_t)(((n) & 0x03) << 4))
  1078. #define CCM_CCGR1_LPSPI2(n) ((uint32_t)(((n) & 0x03) << 2))
  1079. #define CCM_CCGR1_LPSPI1(n) ((uint32_t)(((n) & 0x03) << 0))
  1080. #define CCM_CCGR2_PXP(n) ((uint32_t)(((n) & 0x03) << 30))
  1081. #define CCM_CCGR2_LCD(n) ((uint32_t)(((n) & 0x03) << 28))
  1082. #define CCM_CCGR2_GPIO3(n) ((uint32_t)(((n) & 0x03) << 26))
  1083. #define CCM_CCGR2_XBAR2(n) ((uint32_t)(((n) & 0x03) << 24))
  1084. #define CCM_CCGR2_XBAR1(n) ((uint32_t)(((n) & 0x03) << 22))
  1085. #define CCM_CCGR2_IPMUX3(n) ((uint32_t)(((n) & 0x03) << 20))
  1086. #define CCM_CCGR2_IPMUX2(n) ((uint32_t)(((n) & 0x03) << 18))
  1087. #define CCM_CCGR2_IPMUX1(n) ((uint32_t)(((n) & 0x03) << 16))
  1088. #define CCM_CCGR2_XBAR3(n) ((uint32_t)(((n) & 0x03) << 14))
  1089. #define CCM_CCGR2_IIM(n) ((uint32_t)(((n) & 0x03) << 12))
  1090. #define CCM_CCGR2_LPI2C3(n) ((uint32_t)(((n) & 0x03) << 10))
  1091. #define CCM_CCGR2_LPI2C2(n) ((uint32_t)(((n) & 0x03) << 8))
  1092. #define CCM_CCGR2_LPI2C1(n) ((uint32_t)(((n) & 0x03) << 6))
  1093. #define CCM_CCGR2_IOMUXC_SNVS(n) ((uint32_t)(((n) & 0x03) << 4))
  1094. #define CCM_CCGR2_CSI(n) ((uint32_t)(((n) & 0x03) << 2))
  1095. #define CCM_CCGR3_IOMUXC_SNVS_GPR(n) ((uint32_t)(((n) & 0x03) << 30))
  1096. #define CCM_CCGR3_OCRAM(n) ((uint32_t)(((n) & 0x03) << 28))
  1097. #define CCM_CCGR3_ACMP4(n) ((uint32_t)(((n) & 0x03) << 26))
  1098. #define CCM_CCGR3_ACMP3(n) ((uint32_t)(((n) & 0x03) << 24))
  1099. #define CCM_CCGR3_ACMP2(n) ((uint32_t)(((n) & 0x03) << 22))
  1100. #define CCM_CCGR3_ACMP1(n) ((uint32_t)(((n) & 0x03) << 20))
  1101. #define CCM_CCGR3_FLEXRAM(n) ((uint32_t)(((n) & 0x03) << 18))
  1102. #define CCM_CCGR3_WDOG1(n) ((uint32_t)(((n) & 0x03) << 16))
  1103. #define CCM_CCGR3_EWM(n) ((uint32_t)(((n) & 0x03) << 14))
  1104. #define CCM_CCGR3_GPIO4(n) ((uint32_t)(((n) & 0x03) << 12))
  1105. #define CCM_CCGR3_LCDIF_PIX(n) ((uint32_t)(((n) & 0x03) << 10))
  1106. #define CCM_CCGR3_AOI1(n) ((uint32_t)(((n) & 0x03) << 8))
  1107. #define CCM_CCGR3_LPUART6(n) ((uint32_t)(((n) & 0x03) << 6))
  1108. #define CCM_CCGR3_SEMC(n) ((uint32_t)(((n) & 0x03) << 4))
  1109. #define CCM_CCGR3_LPUART5(n) ((uint32_t)(((n) & 0x03) << 2))
  1110. #define CCM_CCGR3_FLEXIO2(n) ((uint32_t)(((n) & 0x03) << 0))
  1111. #define CCM_CCGR4_ENC4(n) ((uint32_t)(((n) & 0x03) << 30))
  1112. #define CCM_CCGR4_ENC3(n) ((uint32_t)(((n) & 0x03) << 28))
  1113. #define CCM_CCGR4_ENC2(n) ((uint32_t)(((n) & 0x03) << 26))
  1114. #define CCM_CCGR4_ENC1(n) ((uint32_t)(((n) & 0x03) << 24))
  1115. #define CCM_CCGR4_PWM4(n) ((uint32_t)(((n) & 0x03) << 22))
  1116. #define CCM_CCGR4_PWM3(n) ((uint32_t)(((n) & 0x03) << 20))
  1117. #define CCM_CCGR4_PWM2(n) ((uint32_t)(((n) & 0x03) << 18))
  1118. #define CCM_CCGR4_PWM1(n) ((uint32_t)(((n) & 0x03) << 16))
  1119. #define CCM_CCGR4_SIM_EMS(n) ((uint32_t)(((n) & 0x03) << 14))
  1120. #define CCM_CCGR4_SIM_M(n) ((uint32_t)(((n) & 0x03) << 12))
  1121. #define CCM_CCGR4_TSC(n) ((uint32_t)(((n) & 0x03) << 10))
  1122. #define CCM_CCGR4_SIM_M7(n) ((uint32_t)(((n) & 0x03) << 8))
  1123. #define CCM_CCGR4_BEE(n) ((uint32_t)(((n) & 0x03) << 6))
  1124. #define CCM_CCGR4_IOMUXC_GPR(n) ((uint32_t)(((n) & 0x03) << 4))
  1125. #define CCM_CCGR4_IOMUXC(n) ((uint32_t)(((n) & 0x03) << 2))
  1126. #define CCM_CCGR5_SNVS_LP(n) ((uint32_t)(((n) & 0x03) << 30))
  1127. #define CCM_CCGR5_SNVS_HP(n) ((uint32_t)(((n) & 0x03) << 28))
  1128. #define CCM_CCGR5_LPUART7(n) ((uint32_t)(((n) & 0x03) << 26))
  1129. #define CCM_CCGR5_LPUART1(n) ((uint32_t)(((n) & 0x03) << 24))
  1130. #define CCM_CCGR5_SAI3(n) ((uint32_t)(((n) & 0x03) << 22))
  1131. #define CCM_CCGR5_SAI2(n) ((uint32_t)(((n) & 0x03) << 20))
  1132. #define CCM_CCGR5_SAI1(n) ((uint32_t)(((n) & 0x03) << 18))
  1133. #define CCM_CCGR5_SIM_MAIN(n) ((uint32_t)(((n) & 0x03) << 16))
  1134. #define CCM_CCGR5_SPDIF(n) ((uint32_t)(((n) & 0x03) << 14))
  1135. #define CCM_CCGR5_AIPS_TZ4(n) ((uint32_t)(((n) & 0x03) << 12))
  1136. #define CCM_CCGR5_WDOG2(n) ((uint32_t)(((n) & 0x03) << 10))
  1137. #define CCM_CCGR5_KPP(n) ((uint32_t)(((n) & 0x03) << 8))
  1138. #define CCM_CCGR5_DMA(n) ((uint32_t)(((n) & 0x03) << 6))
  1139. #define CCM_CCGR5_WDOG3(n) ((uint32_t)(((n) & 0x03) << 4))
  1140. #define CCM_CCGR5_FLEXIO1(n) ((uint32_t)(((n) & 0x03) << 2))
  1141. #define CCM_CCGR5_ROM(n) ((uint32_t)(((n) & 0x03) << 0))
  1142. #define CCM_CCGR6_TIMER3(n) ((uint32_t)(((n) & 0x03) << 30))
  1143. #define CCM_CCGR6_TIMER2(n) ((uint32_t)(((n) & 0x03) << 28))
  1144. #define CCM_CCGR6_TIMER1(n) ((uint32_t)(((n) & 0x03) << 26))
  1145. #define CCM_CCGR6_LPI2C4_SERIAL(n) ((uint32_t)(((n) & 0x03) << 24))
  1146. #define CCM_CCGR6_ANADIG(n) ((uint32_t)(((n) & 0x03) << 22))
  1147. #define CCM_CCGR6_SIM_PER(n) ((uint32_t)(((n) & 0x03) << 20))
  1148. #define CCM_CCGR6_AIPS_TZ3(n) ((uint32_t)(((n) & 0x03) << 18))
  1149. #define CCM_CCGR6_TIMER4(n) ((uint32_t)(((n) & 0x03) << 16))
  1150. #define CCM_CCGR6_LPUART8(n) ((uint32_t)(((n) & 0x03) << 14))
  1151. #define CCM_CCGR6_TRNG(n) ((uint32_t)(((n) & 0x03) << 12))
  1152. #define CCM_CCGR6_FLEXSPI(n) ((uint32_t)(((n) & 0x03) << 10))
  1153. #define CCM_CCGR6_IPMUX4(n) ((uint32_t)(((n) & 0x03) << 8))
  1154. #define CCM_CCGR6_DCDC(n) ((uint32_t)(((n) & 0x03) << 6))
  1155. #define CCM_CCGR6_USDHC2(n) ((uint32_t)(((n) & 0x03) << 4))
  1156. #define CCM_CCGR6_USDHC1(n) ((uint32_t)(((n) & 0x03) << 2))
  1157. #define CCM_CCGR6_USBOH3(n) ((uint32_t)(((n) & 0x03) << 0))
  1158. #define CCM_CMEOR_MOD_EN_OV_CAN1_CPI ((uint32_t)(1<<30))
  1159. #define CCM_CMEOR_MOD_EN_OV_CAN2_CPI ((uint32_t)(1<<28))
  1160. #define CCM_CMEOR_MOD_EN_OV_TRNG ((uint32_t)(1<<9))
  1161. #define CCM_CMEOR_MOD_EN_USDHC ((uint32_t)(1<<7))
  1162. #define CCM_CMEOR_MOD_EN_OV_PIT ((uint32_t)(1<<6))
  1163. #define CCM_CMEOR_MOD_EN_OV_GPT ((uint32_t)(1<<5))
  1164. // 18.8: page 752
  1165. #define IMXRT_CCM_ANALOG (*(IMXRT_REGISTER32_t *)0x400D8000)
  1166. #define CCM_ANALOG_PLL_ARM (IMXRT_CCM_ANALOG.offset000)
  1167. #define CCM_ANALOG_PLL_ARM_SET (IMXRT_CCM_ANALOG.offset004)
  1168. #define CCM_ANALOG_PLL_ARM_CLR (IMXRT_CCM_ANALOG.offset008)
  1169. #define CCM_ANALOG_PLL_ARM_TOG (IMXRT_CCM_ANALOG.offset00C)
  1170. #define CCM_ANALOG_PLL_USB1 (IMXRT_CCM_ANALOG.offset010)
  1171. #define CCM_ANALOG_PLL_USB1_SET (IMXRT_CCM_ANALOG.offset014)
  1172. #define CCM_ANALOG_PLL_USB1_CLR (IMXRT_CCM_ANALOG.offset018)
  1173. #define CCM_ANALOG_PLL_USB1_TOG (IMXRT_CCM_ANALOG.offset01C)
  1174. #define CCM_ANALOG_PLL_USB2 (IMXRT_CCM_ANALOG.offset020)
  1175. #define CCM_ANALOG_PLL_USB2_SET (IMXRT_CCM_ANALOG.offset024)
  1176. #define CCM_ANALOG_PLL_USB2_CLR (IMXRT_CCM_ANALOG.offset028)
  1177. #define CCM_ANALOG_PLL_USB2_TOG (IMXRT_CCM_ANALOG.offset02C)
  1178. #define CCM_ANALOG_PLL_SYS (IMXRT_CCM_ANALOG.offset030)
  1179. #define CCM_ANALOG_PLL_SYS_SET (IMXRT_CCM_ANALOG.offset034)
  1180. #define CCM_ANALOG_PLL_SYS_CLR (IMXRT_CCM_ANALOG.offset038)
  1181. #define CCM_ANALOG_PLL_SYS_TOG (IMXRT_CCM_ANALOG.offset03C)
  1182. #define CCM_ANALOG_PLL_SYS_SS (IMXRT_CCM_ANALOG.offset040)
  1183. #define CCM_ANALOG_PLL_SYS_NUM (IMXRT_CCM_ANALOG.offset050)
  1184. #define CCM_ANALOG_PLL_SYS_DENOM (IMXRT_CCM_ANALOG.offset060)
  1185. #define CCM_ANALOG_PLL_AUDIO (IMXRT_CCM_ANALOG.offset070)
  1186. #define CCM_ANALOG_PLL_AUDIO_SET (IMXRT_CCM_ANALOG.offset074)
  1187. #define CCM_ANALOG_PLL_AUDIO_CLR (IMXRT_CCM_ANALOG.offset078)
  1188. #define CCM_ANALOG_PLL_AUDIO_TOG (IMXRT_CCM_ANALOG.offset07C)
  1189. #define CCM_ANALOG_PLL_AUDIO_NUM (IMXRT_CCM_ANALOG.offset080)
  1190. #define CCM_ANALOG_PLL_AUDIO_DENOM (IMXRT_CCM_ANALOG.offset090)
  1191. #define CCM_ANALOG_PLL_VIDEO (IMXRT_CCM_ANALOG.offset0A0)
  1192. #define CCM_ANALOG_PLL_VIDEO_SET (IMXRT_CCM_ANALOG.offset0A4)
  1193. #define CCM_ANALOG_PLL_VIDEO_CLR (IMXRT_CCM_ANALOG.offset0A8)
  1194. #define CCM_ANALOG_PLL_VIDEO_TOG (IMXRT_CCM_ANALOG.offset0AC)
  1195. #define CCM_ANALOG_PLL_VIDEO_NUM (IMXRT_CCM_ANALOG.offset0B0)
  1196. #define CCM_ANALOG_PLL_VIDEO_DENOM (IMXRT_CCM_ANALOG.offset0C0)
  1197. #define CCM_ANALOG_PLL_ENET (IMXRT_CCM_ANALOG.offset0EC)
  1198. #define CCM_ANALOG_PLL_ENET_SET (IMXRT_CCM_ANALOG.offset0E4)
  1199. #define CCM_ANALOG_PLL_ENET_CLR (IMXRT_CCM_ANALOG.offset0E8)
  1200. #define CCM_ANALOG_PLL_ENET_TOG (IMXRT_CCM_ANALOG.offset0EC)
  1201. #define CCM_ANALOG_PFD_480 (IMXRT_CCM_ANALOG.offset0F0)
  1202. #define CCM_ANALOG_PFD_480_SET (IMXRT_CCM_ANALOG.offset0F4)
  1203. #define CCM_ANALOG_PFD_480_CLR (IMXRT_CCM_ANALOG.offset0F8)
  1204. #define CCM_ANALOG_PFD_480_TOG (IMXRT_CCM_ANALOG.offset0FC)
  1205. #define CCM_ANALOG_PFD_528 (IMXRT_CCM_ANALOG.offset100)
  1206. #define CCM_ANALOG_PFD_528_SET (IMXRT_CCM_ANALOG.offset104)
  1207. #define CCM_ANALOG_PFD_528_CLR (IMXRT_CCM_ANALOG.offset108)
  1208. #define CCM_ANALOG_PFD_528_TOG (IMXRT_CCM_ANALOG.offset10C)
  1209. #define CCM_ANALOG_MISC0 (IMXRT_CCM_ANALOG.offset150)
  1210. #define CCM_ANALOG_MISC0_SET (IMXRT_CCM_ANALOG.offset154)
  1211. #define CCM_ANALOG_MISC0_CLR (IMXRT_CCM_ANALOG.offset158)
  1212. #define CCM_ANALOG_MISC0_TOG (IMXRT_CCM_ANALOG.offset15C)
  1213. #define CCM_ANALOG_MISC1 (IMXRT_CCM_ANALOG.offset160)
  1214. #define CCM_ANALOG_MISC1_SET (IMXRT_CCM_ANALOG.offset164)
  1215. #define CCM_ANALOG_MISC1_CLR (IMXRT_CCM_ANALOG.offset168)
  1216. #define CCM_ANALOG_MISC1_TOG (IMXRT_CCM_ANALOG.offset16C)
  1217. #define CCM_ANALOG_MISC2 (IMXRT_CCM_ANALOG.offset170)
  1218. #define CCM_ANALOG_MISC2_SET (IMXRT_CCM_ANALOG.offset174)
  1219. #define CCM_ANALOG_MISC2_CLR (IMXRT_CCM_ANALOG.offset178)
  1220. #define CCM_ANALOG_MISC2_TOG (IMXRT_CCM_ANALOG.offset17C)
  1221. // 19.7: page 810
  1222. #define IMXRT_CSI (*(IMXRT_REGISTER32_t *)0x402BC000)
  1223. #define CSI_CSICR1 (IMXRT_CSI.offset000)
  1224. #define CSI_CSICR2 (IMXRT_CSI.offset004)
  1225. #define CSI_CSICR3 (IMXRT_CSI.offset008)
  1226. #define CSI_CSISTATFIFO (IMXRT_CSI.offset00C)
  1227. #define CSI_CSIRFIFO (IMXRT_CSI.offset010)
  1228. #define CSI_CSIRXCNT (IMXRT_CSI.offset014)
  1229. #define CSI_CSISR (IMXRT_CSI.offset018)
  1230. #define CSI_CSIDMASA_STATFIFO (IMXRT_CSI.offset020)
  1231. #define CSI_CSIDMATS_STATFIFO (IMXRT_CSI.offset024)
  1232. #define CSI_CSIDMASA_FB1 (IMXRT_CSI.offset028)
  1233. #define CSI_CSIDMASA_FB2 (IMXRT_CSI.offset02C)
  1234. #define CSI_CSIFBUF_PARA (IMXRT_CSI.offset030)
  1235. #define CSI_CSIIMAG_PARA (IMXRT_CSI.offset034)
  1236. #define CSI_CSICR18 (IMXRT_CSI.offset048)
  1237. #define CSI_CSICR19 (IMXRT_CSI.offset04C)
  1238. // 20.6.1.1: page 837
  1239. #define IMXRT_DCDC (*(IMXRT_REGISTER32_t *)0x40080000)
  1240. #define DCDC_REG0 (IMXRT_DCDC.offset000)
  1241. #define DCDC_REG1 (IMXRT_DCDC.offset004)
  1242. #define DCDC_REG2 (IMXRT_DCDC.offset008)
  1243. #define DCDC_REG3 (IMXRT_DCDC.offset00C)
  1244. // 21.4.1.1: page 849
  1245. #define IMXRT_DMAMUX (*(IMXRT_REGISTER32_t *)0x400EC000)
  1246. #define DMAMUX_CHCFG0 (IMXRT_DMAMUX.offset000)
  1247. #define DMAMUX_CHCFG1 (IMXRT_DMAMUX.offset004)
  1248. #define DMAMUX_CHCFG2 (IMXRT_DMAMUX.offset008)
  1249. #define DMAMUX_CHCFG3 (IMXRT_DMAMUX.offset00C)
  1250. #define DMAMUX_CHCFG4 (IMXRT_DMAMUX.offset010)
  1251. #define DMAMUX_CHCFG5 (IMXRT_DMAMUX.offset014)
  1252. #define DMAMUX_CHCFG6 (IMXRT_DMAMUX.offset018)
  1253. #define DMAMUX_CHCFG7 (IMXRT_DMAMUX.offset01C)
  1254. #define DMAMUX_CHCFG8 (IMXRT_DMAMUX.offset020)
  1255. #define DMAMUX_CHCFG9 (IMXRT_DMAMUX.offset024)
  1256. #define DMAMUX_CHCFG10 (IMXRT_DMAMUX.offset028)
  1257. #define DMAMUX_CHCFG11 (IMXRT_DMAMUX.offset02C)
  1258. #define DMAMUX_CHCFG12 (IMXRT_DMAMUX.offset030)
  1259. #define DMAMUX_CHCFG13 (IMXRT_DMAMUX.offset034)
  1260. #define DMAMUX_CHCFG14 (IMXRT_DMAMUX.offset038)
  1261. #define DMAMUX_CHCFG15 (IMXRT_DMAMUX.offset03C)
  1262. #define DMAMUX_CHCFG16 (IMXRT_DMAMUX.offset040)
  1263. #define DMAMUX_CHCFG17 (IMXRT_DMAMUX.offset044)
  1264. #define DMAMUX_CHCFG18 (IMXRT_DMAMUX.offset048)
  1265. #define DMAMUX_CHCFG19 (IMXRT_DMAMUX.offset04C)
  1266. #define DMAMUX_CHCFG20 (IMXRT_DMAMUX.offset050)
  1267. #define DMAMUX_CHCFG21 (IMXRT_DMAMUX.offset054)
  1268. #define DMAMUX_CHCFG22 (IMXRT_DMAMUX.offset058)
  1269. #define DMAMUX_CHCFG23 (IMXRT_DMAMUX.offset05C)
  1270. #define DMAMUX_CHCFG24 (IMXRT_DMAMUX.offset060)
  1271. #define DMAMUX_CHCFG25 (IMXRT_DMAMUX.offset064)
  1272. #define DMAMUX_CHCFG26 (IMXRT_DMAMUX.offset068)
  1273. #define DMAMUX_CHCFG27 (IMXRT_DMAMUX.offset06C)
  1274. #define DMAMUX_CHCFG28 (IMXRT_DMAMUX.offset070)
  1275. #define DMAMUX_CHCFG29 (IMXRT_DMAMUX.offset074)
  1276. #define DMAMUX_CHCFG30 (IMXRT_DMAMUX.offset078)
  1277. #define DMAMUX_CHCFG31 (IMXRT_DMAMUX.offset07C)
  1278. // 22.3.5.1: page 864
  1279. // TODO: DMA is complicated...
  1280. // 23.7.1: page 1023
  1281. #define IMXRT_ENC1 (*(IMXRT_REGISTER16_t *)0x403C8000)
  1282. #define ENC1_CTRL (IMXRT_ENC1.offset000)
  1283. #define ENC1_FILT (IMXRT_ENC1.offset002)
  1284. #define ENC1_WTR (IMXRT_ENC1.offset004)
  1285. #define ENC1_POSD (IMXRT_ENC1.offset006)
  1286. #define ENC1_POSDH (IMXRT_ENC1.offset008)
  1287. #define ENC1_REV (IMXRT_ENC1.offset00A)
  1288. #define ENC1_REVH (IMXRT_ENC1.offset00C)
  1289. #define ENC1_UPOS (IMXRT_ENC1.offset00E)
  1290. #define ENC1_LPOS (IMXRT_ENC1.offset010)
  1291. #define ENC1_UPOSH (IMXRT_ENC1.offset012)
  1292. #define ENC1_LPOSH (IMXRT_ENC1.offset014)
  1293. #define ENC1_UINIT (IMXRT_ENC1.offset016)
  1294. #define ENC1_LINIT (IMXRT_ENC1.offset018)
  1295. #define ENC1_IMR (IMXRT_ENC1.offset01A)
  1296. #define ENC1_TST (IMXRT_ENC1.offset01C)
  1297. #define ENC1_CTRL2 (IMXRT_ENC1.offset01E)
  1298. #define ENC1_UMOD (IMXRT_ENC1.offset020)
  1299. #define ENC1_LMOD (IMXRT_ENC1.offset022)
  1300. #define ENC1_UCOMP (IMXRT_ENC1.offset024)
  1301. #define ENC1_LCOMP (IMXRT_ENC1.offset026)
  1302. #define IMXRT_ENC2 (*(IMXRT_REGISTER16_t *)0x403CC000)
  1303. #define ENC2_CTRL (IMXRT_ENC2.offset000)
  1304. #define ENC2_FILT (IMXRT_ENC2.offset002)
  1305. #define ENC2_WTR (IMXRT_ENC2.offset004)
  1306. #define ENC2_POSD (IMXRT_ENC2.offset006)
  1307. #define ENC2_POSDH (IMXRT_ENC2.offset008)
  1308. #define ENC2_REV (IMXRT_ENC2.offset00A)
  1309. #define ENC2_REVH (IMXRT_ENC2.offset00C)
  1310. #define ENC2_UPOS (IMXRT_ENC2.offset00E)
  1311. #define ENC2_LPOS (IMXRT_ENC2.offset010)
  1312. #define ENC2_UPOSH (IMXRT_ENC2.offset012)
  1313. #define ENC2_LPOSH (IMXRT_ENC2.offset014)
  1314. #define ENC2_UINIT (IMXRT_ENC2.offset016)
  1315. #define ENC2_LINIT (IMXRT_ENC2.offset018)
  1316. #define ENC2_IMR (IMXRT_ENC2.offset01A)
  1317. #define ENC2_TST (IMXRT_ENC2.offset01C)
  1318. #define ENC2_CTRL2 (IMXRT_ENC2.offset01E)
  1319. #define ENC2_UMOD (IMXRT_ENC2.offset020)
  1320. #define ENC2_LMOD (IMXRT_ENC2.offset022)
  1321. #define ENC2_UCOMP (IMXRT_ENC2.offset024)
  1322. #define ENC2_LCOMP (IMXRT_ENC2.offset026)
  1323. #define IMXRT_ENC3 (*(IMXRT_REGISTER16_t *)0x403D0000)
  1324. #define ENC3_CTRL (IMXRT_ENC3.offset000)
  1325. #define ENC3_FILT (IMXRT_ENC3.offset002)
  1326. #define ENC3_WTR (IMXRT_ENC3.offset004)
  1327. #define ENC3_POSD (IMXRT_ENC3.offset006)
  1328. #define ENC3_POSDH (IMXRT_ENC3.offset008)
  1329. #define ENC3_REV (IMXRT_ENC3.offset00A)
  1330. #define ENC3_REVH (IMXRT_ENC3.offset00C)
  1331. #define ENC3_UPOS (IMXRT_ENC3.offset00E)
  1332. #define ENC3_LPOS (IMXRT_ENC3.offset010)
  1333. #define ENC3_UPOSH (IMXRT_ENC3.offset012)
  1334. #define ENC3_LPOSH (IMXRT_ENC3.offset014)
  1335. #define ENC3_UINIT (IMXRT_ENC3.offset016)
  1336. #define ENC3_LINIT (IMXRT_ENC3.offset018)
  1337. #define ENC3_IMR (IMXRT_ENC3.offset01A)
  1338. #define ENC3_TST (IMXRT_ENC3.offset01C)
  1339. #define ENC3_CTRL2 (IMXRT_ENC3.offset01E)
  1340. #define ENC3_UMOD (IMXRT_ENC3.offset020)
  1341. #define ENC3_LMOD (IMXRT_ENC3.offset022)
  1342. #define ENC3_UCOMP (IMXRT_ENC3.offset024)
  1343. #define ENC3_LCOMP (IMXRT_ENC3.offset026)
  1344. #define IMXRT_ENC4 (*(IMXRT_REGISTER16_t *)0x403D4000)
  1345. #define ENC4_CTRL (IMXRT_ENC4.offset000)
  1346. #define ENC4_FILT (IMXRT_ENC4.offset002)
  1347. #define ENC4_WTR (IMXRT_ENC4.offset004)
  1348. #define ENC4_POSD (IMXRT_ENC4.offset006)
  1349. #define ENC4_POSDH (IMXRT_ENC4.offset008)
  1350. #define ENC4_REV (IMXRT_ENC4.offset00A)
  1351. #define ENC4_REVH (IMXRT_ENC4.offset00C)
  1352. #define ENC4_UPOS (IMXRT_ENC4.offset00E)
  1353. #define ENC4_LPOS (IMXRT_ENC4.offset010)
  1354. #define ENC4_UPOSH (IMXRT_ENC4.offset012)
  1355. #define ENC4_LPOSH (IMXRT_ENC4.offset014)
  1356. #define ENC4_UINIT (IMXRT_ENC4.offset016)
  1357. #define ENC4_LINIT (IMXRT_ENC4.offset018)
  1358. #define ENC4_IMR (IMXRT_ENC4.offset01A)
  1359. #define ENC4_TST (IMXRT_ENC4.offset01C)
  1360. #define ENC4_CTRL2 (IMXRT_ENC4.offset01E)
  1361. #define ENC4_UMOD (IMXRT_ENC4.offset020)
  1362. #define ENC4_LMOD (IMXRT_ENC4.offset022)
  1363. #define ENC4_UCOMP (IMXRT_ENC4.offset024)
  1364. #define ENC4_LCOMP (IMXRT_ENC4.offset026)
  1365. // 24.5: page 1060
  1366. #define IMXRT_ENET (*(IMXRT_REGISTER32_t *)0x402D8000)
  1367. #define IMXRT_ENET_TIMER (*(IMXRT_REGISTER32_t *)0x402D8400)
  1368. #define ENET_EIR (IMXRT_ENET.offset004)
  1369. #define ENET_EIMR (IMXRT_ENET.offset008)
  1370. #define ENET_RDAR (IMXRT_ENET.offset010)
  1371. #define ENET_TDAR (IMXRT_ENET.offset014)
  1372. #define ENET_ECR (IMXRT_ENET.offset024)
  1373. #define ENET_MMFR (IMXRT_ENET.offset040)
  1374. #define ENET_MSCR (IMXRT_ENET.offset044)
  1375. #define ENET_MIBC (IMXRT_ENET.offset064)
  1376. #define ENET_RCR (IMXRT_ENET.offset084)
  1377. #define ENET_TCR (IMXRT_ENET.offset0C4)
  1378. #define ENET_PALR (IMXRT_ENET.offset0E4)
  1379. #define ENET_PAUR (IMXRT_ENET.offset0E8)
  1380. #define ENET_OPD (IMXRT_ENET.offset0EC)
  1381. #define ENET_TXIC (IMXRT_ENET.offset0F0)
  1382. #define ENET_RXIC (IMXRT_ENET.offset100)
  1383. #define ENET_IAUR (IMXRT_ENET.offset118)
  1384. #define ENET_IALR (IMXRT_ENET.offset11C)
  1385. #define ENET_GAUR (IMXRT_ENET.offset120)
  1386. #define ENET_GALR (IMXRT_ENET.offset124)
  1387. #define ENET_TFWR (IMXRT_ENET.offset144)
  1388. #define ENET_RDSR (IMXRT_ENET.offset180)
  1389. #define ENET_TDSR (IMXRT_ENET.offset184)
  1390. #define ENET_MRBR (IMXRT_ENET.offset188)
  1391. #define ENET_RSFL (IMXRT_ENET.offset190)
  1392. #define ENET_RSEM (IMXRT_ENET.offset194)
  1393. #define ENET_RAEM (IMXRT_ENET.offset198)
  1394. #define ENET_RAFL (IMXRT_ENET.offset19C)
  1395. #define ENET_TSEM (IMXRT_ENET.offset1A0)
  1396. #define ENET_TAEM (IMXRT_ENET.offset1A4)
  1397. #define ENET_TAFL (IMXRT_ENET.offset1A8)
  1398. #define ENET_TIPG (IMXRT_ENET.offset1AC)
  1399. #define ENET_FTRL (IMXRT_ENET.offset1B0)
  1400. #define ENET_TACC (IMXRT_ENET.offset1C0)
  1401. #define ENET_RACC (IMXRT_ENET.offset1C4)
  1402. #define ENET_RMON_T_DROP (IMXRT_ENET.offset200)
  1403. #define ENET_RMON_T_PACKETS (IMXRT_ENET.offset204)
  1404. #define ENET_RMON_T_BC_PKT (IMXRT_ENET.offset208)
  1405. #define ENET_RMON_T_MC_PKT (IMXRT_ENET.offset20C)
  1406. #define ENET_RMON_T_CRC_ALIGN (IMXRT_ENET.offset210)
  1407. #define ENET_RMON_T_UNDERSIZE (IMXRT_ENET.offset214)
  1408. #define ENET_RMON_T_OVERSIZE (IMXRT_ENET.offset218)
  1409. #define ENET_RMON_T_FRAG (IMXRT_ENET.offset21C)
  1410. #define ENET_RMON_T_JAB (IMXRT_ENET.offset220)
  1411. #define ENET_RMON_T_COL (IMXRT_ENET.offset224)
  1412. #define ENET_RMON_T_P64 (IMXRT_ENET.offset228)
  1413. #define ENET_RMON_T_P65TO127 (IMXRT_ENET.offset22C)
  1414. #define ENET_RMON_T_P128TO255 (IMXRT_ENET.offset230)
  1415. #define ENET_RMON_T_P256TO511 (IMXRT_ENET.offset234)
  1416. #define ENET_RMON_T_P512TO1023 (IMXRT_ENET.offset238)
  1417. #define ENET_RMON_T_P1024TO2047 (IMXRT_ENET.offset23C)
  1418. #define ENET_RMON_T_P_GTE2048 (IMXRT_ENET.offset240)
  1419. #define ENET_RMON_T_OCTETS (IMXRT_ENET.offset244)
  1420. #define ENET_IEEE_T_DROP (IMXRT_ENET.offset248)
  1421. #define ENET_IEEE_T_FRAME_OK (IMXRT_ENET.offset24C)
  1422. #define ENET_IEEE_T_1COL (IMXRT_ENET.offset250)
  1423. #define ENET_IEEE_T_MCOL (IMXRT_ENET.offset254)
  1424. #define ENET_IEEE_T_DEF (IMXRT_ENET.offset258)
  1425. #define ENET_IEEE_T_LCOL (IMXRT_ENET.offset25C)
  1426. #define ENET_IEEE_T_EXCOL (IMXRT_ENET.offset260)
  1427. #define ENET_IEEE_T_MACERR (IMXRT_ENET.offset264)
  1428. #define ENET_IEEE_T_CSERR (IMXRT_ENET.offset268)
  1429. #define ENET_IEEE_T_SQE (IMXRT_ENET.offset26C)
  1430. #define ENET_IEEE_T_FDXFC (IMXRT_ENET.offset270)
  1431. #define ENET_IEEE_T_OCTETS_OK (IMXRT_ENET.offset274)
  1432. #define ENET_RMON_R_PACKETS (IMXRT_ENET.offset284)
  1433. #define ENET_RMON_R_BC_PKT (IMXRT_ENET.offset288)
  1434. #define ENET_RMON_R_MC_PKT (IMXRT_ENET.offset28C)
  1435. #define ENET_RMON_R_CRC_ALIGN (IMXRT_ENET.offset290)
  1436. #define ENET_RMON_R_UNDERSIZE (IMXRT_ENET.offset294)
  1437. #define ENET_RMON_R_OVERSIZE (IMXRT_ENET.offset298)
  1438. #define ENET_RMON_R_FRAG (IMXRT_ENET.offset29C)
  1439. #define ENET_RMON_R_JAB (IMXRT_ENET.offset2A0)
  1440. #define ENET_RMON_R_RESVD_0 (IMXRT_ENET.offset2A4)
  1441. #define ENET_RMON_R_P64 (IMXRT_ENET.offset2A8)
  1442. #define ENET_RMON_R_P65TO127 (IMXRT_ENET.offset2AC)
  1443. #define ENET_RMON_R_P128TO255 (IMXRT_ENET.offset2B0)
  1444. #define ENET_RMON_R_P256TO511 (IMXRT_ENET.offset2B4)
  1445. #define ENET_RMON_R_P512TO1023 (IMXRT_ENET.offset2B8)
  1446. #define ENET_RMON_R_P1024TO2047 (IMXRT_ENET.offset2BC)
  1447. #define ENET_RMON_R_P_GTE2048 (IMXRT_ENET.offset2C0)
  1448. #define ENET_RMON_R_OCTETS (IMXRT_ENET.offset2C4)
  1449. #define ENET_IEEE_R_DROP (IMXRT_ENET.offset2C8)
  1450. #define ENET_IEEE_R_FRAME_OK (IMXRT_ENET.offset2CC)
  1451. #define ENET_IEEE_R_CRC (IMXRT_ENET.offset2D0)
  1452. #define ENET_IEEE_R_ALIGN (IMXRT_ENET.offset2D4)
  1453. #define ENET_IEEE_R_MACERR (IMXRT_ENET.offset2D8)
  1454. #define ENET_IEEE_R_FDXFC (IMXRT_ENET.offset2DC)
  1455. #define ENET_IEEE_R_OCTETS_OK (IMXRT_ENET.offset2E0)
  1456. #define ENET_ATCR (IMXRT_ENET_TIMER.offset000)
  1457. #define ENET_ATVR (IMXRT_ENET_TIMER.offset004)
  1458. #define ENET_ATOFF (IMXRT_ENET_TIMER.offset008)
  1459. #define ENET_ATPER (IMXRT_ENET_TIMER.offset00C)
  1460. #define ENET_ATCOR (IMXRT_ENET_TIMER.offset010)
  1461. #define ENET_ATINC (IMXRT_ENET_TIMER.offset014)
  1462. #define ENET_ATSTMP (IMXRT_ENET_TIMER.offset018)
  1463. #define ENET_TGSR (IMXRT_ENET_TIMER.offset204)
  1464. #define ENET_TCSR0 (IMXRT_ENET_TIMER.offset208)
  1465. #define ENET_TCCR0 (IMXRT_ENET_TIMER.offset20C)
  1466. #define ENET_TCSR1 (IMXRT_ENET_TIMER.offset210)
  1467. #define ENET_TCCR1 (IMXRT_ENET_TIMER.offset214)
  1468. #define ENET_TCSR2 (IMXRT_ENET_TIMER.offset218)
  1469. #define ENET_TCCR2 (IMXRT_ENET_TIMER.offset21C)
  1470. #define ENET_TCSR3 (IMXRT_ENET_TIMER.offset220)
  1471. #define ENET_TCCR3 (IMXRT_ENET_TIMER.offset224)
  1472. // 25.3.1.1: page 1199
  1473. #define IMXRT_EWM (*(IMXRT_REGISTER8_t *)0x402D8000)
  1474. #define EWM_CTRL (IMXRT_EWM.offset00)
  1475. #define EWM_SERV (IMXRT_EWM.offset01)
  1476. #define EWM_CMPL (IMXRT_EWM.offset02)
  1477. #define EWM_CMPH (IMXRT_EWM.offset03)
  1478. #define EWM_CLKCTRL (IMXRT_EWM.offset04)
  1479. #define EWM_CLKPRESCALER (IMXRT_EWM.offset05)
  1480. // 26.8: page 1249
  1481. #define IMXRT_FLEXCAN1 (*(IMXRT_REGISTER32_t *)0x401D0000)
  1482. #define IMXRT_FLEXCAN1_MASK (*(IMXRT_REGISTER32_t *)0x401D0800)
  1483. #define FLEXCAN1_MCR (IMXRT_FLEXCAN1.offset000)
  1484. #define FLEXCAN1_CTRL1 (IMXRT_FLEXCAN1.offset004)
  1485. #define FLEXCAN1_TIMER (IMXRT_FLEXCAN1.offset008)
  1486. #define FLEXCAN1_RXMGMASK (IMXRT_FLEXCAN1.offset010)
  1487. #define FLEXCAN1_RX14MASK (IMXRT_FLEXCAN1.offset014)
  1488. #define FLEXCAN1_RX15MASK (IMXRT_FLEXCAN1.offset018)
  1489. #define FLEXCAN1_ECR (IMXRT_FLEXCAN1.offset01C)
  1490. #define FLEXCAN1_ESR1 (IMXRT_FLEXCAN1.offset020)
  1491. #define FLEXCAN1_IMASK2 (IMXRT_FLEXCAN1.offset024)
  1492. #define FLEXCAN1_IMASK1 (IMXRT_FLEXCAN1.offset028)
  1493. #define FLEXCAN1_IFLAG2 (IMXRT_FLEXCAN1.offset02C)
  1494. #define FLEXCAN1_IFLAG1 (IMXRT_FLEXCAN1.offset030)
  1495. #define FLEXCAN1_CTRL2 (IMXRT_FLEXCAN1.offset034)
  1496. #define FLEXCAN1_ESR2 (IMXRT_FLEXCAN1.offset038)
  1497. #define FLEXCAN1_CRCR (IMXRT_FLEXCAN1.offset044)
  1498. #define FLEXCAN1_RXFGMASK (IMXRT_FLEXCAN1.offset048)
  1499. #define FLEXCAN1_RXFIR (IMXRT_FLEXCAN1.offset04C)
  1500. #define FLEXCAN1_RXIMR0 (IMXRT_FLEXCAN1_MASK.offset080)
  1501. #define FLEXCAN1_RXIMR1 (IMXRT_FLEXCAN1_MASK.offset084)
  1502. #define FLEXCAN1_RXIMR2 (IMXRT_FLEXCAN1_MASK.offset088)
  1503. #define FLEXCAN1_RXIMR3 (IMXRT_FLEXCAN1_MASK.offset08C)
  1504. #define FLEXCAN1_RXIMR4 (IMXRT_FLEXCAN1_MASK.offset090)
  1505. #define FLEXCAN1_RXIMR5 (IMXRT_FLEXCAN1_MASK.offset094)
  1506. #define FLEXCAN1_RXIMR6 (IMXRT_FLEXCAN1_MASK.offset098)
  1507. #define FLEXCAN1_RXIMR7 (IMXRT_FLEXCAN1_MASK.offset09C)
  1508. #define FLEXCAN1_RXIMR8 (IMXRT_FLEXCAN1_MASK.offset0A0)
  1509. #define FLEXCAN1_RXIMR9 (IMXRT_FLEXCAN1_MASK.offset0A4)
  1510. #define FLEXCAN1_RXIMR10 (IMXRT_FLEXCAN1_MASK.offset0A8)
  1511. #define FLEXCAN1_RXIMR11 (IMXRT_FLEXCAN1_MASK.offset0AC)
  1512. #define FLEXCAN1_RXIMR12 (IMXRT_FLEXCAN1_MASK.offset0B0)
  1513. #define FLEXCAN1_RXIMR13 (IMXRT_FLEXCAN1_MASK.offset0B4)
  1514. #define FLEXCAN1_RXIMR14 (IMXRT_FLEXCAN1_MASK.offset0B8)
  1515. #define FLEXCAN1_RXIMR15 (IMXRT_FLEXCAN1_MASK.offset0BC)
  1516. #define FLEXCAN1_RXIMR16 (IMXRT_FLEXCAN1_MASK.offset0C0)
  1517. #define FLEXCAN1_RXIMR17 (IMXRT_FLEXCAN1_MASK.offset0C4)
  1518. #define FLEXCAN1_RXIMR18 (IMXRT_FLEXCAN1_MASK.offset0C8)
  1519. #define FLEXCAN1_RXIMR19 (IMXRT_FLEXCAN1_MASK.offset0CC)
  1520. #define FLEXCAN1_RXIMR20 (IMXRT_FLEXCAN1_MASK.offset0D0)
  1521. #define FLEXCAN1_RXIMR21 (IMXRT_FLEXCAN1_MASK.offset0D4)
  1522. #define FLEXCAN1_RXIMR22 (IMXRT_FLEXCAN1_MASK.offset0D8)
  1523. #define FLEXCAN1_RXIMR23 (IMXRT_FLEXCAN1_MASK.offset0DC)
  1524. #define FLEXCAN1_RXIMR24 (IMXRT_FLEXCAN1_MASK.offset0E0)
  1525. #define FLEXCAN1_RXIMR25 (IMXRT_FLEXCAN1_MASK.offset0E4)
  1526. #define FLEXCAN1_RXIMR26 (IMXRT_FLEXCAN1_MASK.offset0E8)
  1527. #define FLEXCAN1_RXIMR27 (IMXRT_FLEXCAN1_MASK.offset0EC)
  1528. #define FLEXCAN1_RXIMR28 (IMXRT_FLEXCAN1_MASK.offset0F0)
  1529. #define FLEXCAN1_RXIMR29 (IMXRT_FLEXCAN1_MASK.offset0F4)
  1530. #define FLEXCAN1_RXIMR30 (IMXRT_FLEXCAN1_MASK.offset0F8)
  1531. #define FLEXCAN1_RXIMR31 (IMXRT_FLEXCAN1_MASK.offset0FC)
  1532. #define FLEXCAN1_RXIMR32 (IMXRT_FLEXCAN1_MASK.offset100)
  1533. #define FLEXCAN1_RXIMR33 (IMXRT_FLEXCAN1_MASK.offset104)
  1534. #define FLEXCAN1_RXIMR34 (IMXRT_FLEXCAN1_MASK.offset108)
  1535. #define FLEXCAN1_RXIMR35 (IMXRT_FLEXCAN1_MASK.offset10C)
  1536. #define FLEXCAN1_RXIMR36 (IMXRT_FLEXCAN1_MASK.offset110)
  1537. #define FLEXCAN1_RXIMR37 (IMXRT_FLEXCAN1_MASK.offset114)
  1538. #define FLEXCAN1_RXIMR38 (IMXRT_FLEXCAN1_MASK.offset118)
  1539. #define FLEXCAN1_RXIMR39 (IMXRT_FLEXCAN1_MASK.offset11C)
  1540. #define FLEXCAN1_RXIMR40 (IMXRT_FLEXCAN1_MASK.offset120)
  1541. #define FLEXCAN1_RXIMR41 (IMXRT_FLEXCAN1_MASK.offset124)
  1542. #define FLEXCAN1_RXIMR42 (IMXRT_FLEXCAN1_MASK.offset128)
  1543. #define FLEXCAN1_RXIMR43 (IMXRT_FLEXCAN1_MASK.offset12C)
  1544. #define FLEXCAN1_RXIMR44 (IMXRT_FLEXCAN1_MASK.offset130)
  1545. #define FLEXCAN1_RXIMR45 (IMXRT_FLEXCAN1_MASK.offset134)
  1546. #define FLEXCAN1_RXIMR46 (IMXRT_FLEXCAN1_MASK.offset138)
  1547. #define FLEXCAN1_RXIMR47 (IMXRT_FLEXCAN1_MASK.offset13C)
  1548. #define FLEXCAN1_RXIMR48 (IMXRT_FLEXCAN1_MASK.offset140)
  1549. #define FLEXCAN1_RXIMR49 (IMXRT_FLEXCAN1_MASK.offset144)
  1550. #define FLEXCAN1_RXIMR50 (IMXRT_FLEXCAN1_MASK.offset148)
  1551. #define FLEXCAN1_RXIMR51 (IMXRT_FLEXCAN1_MASK.offset14C)
  1552. #define FLEXCAN1_RXIMR52 (IMXRT_FLEXCAN1_MASK.offset150)
  1553. #define FLEXCAN1_RXIMR53 (IMXRT_FLEXCAN1_MASK.offset154)
  1554. #define FLEXCAN1_RXIMR54 (IMXRT_FLEXCAN1_MASK.offset158)
  1555. #define FLEXCAN1_RXIMR55 (IMXRT_FLEXCAN1_MASK.offset15C)
  1556. #define FLEXCAN1_RXIMR56 (IMXRT_FLEXCAN1_MASK.offset160)
  1557. #define FLEXCAN1_RXIMR57 (IMXRT_FLEXCAN1_MASK.offset164)
  1558. #define FLEXCAN1_RXIMR58 (IMXRT_FLEXCAN1_MASK.offset168)
  1559. #define FLEXCAN1_RXIMR59 (IMXRT_FLEXCAN1_MASK.offset16C)
  1560. #define FLEXCAN1_RXIMR60 (IMXRT_FLEXCAN1_MASK.offset170)
  1561. #define FLEXCAN1_RXIMR61 (IMXRT_FLEXCAN1_MASK.offset174)
  1562. #define FLEXCAN1_RXIMR62 (IMXRT_FLEXCAN1_MASK.offset178)
  1563. #define FLEXCAN1_RXIMR63 (IMXRT_FLEXCAN1_MASK.offset17C)
  1564. #define FLEXCAN1_GFWR (IMXRT_FLEXCAN1_MASK.offset1E0)
  1565. #define IMXRT_FLEXCAN2 (*(IMXRT_REGISTER32_t *)0x401D4000)
  1566. #define IMXRT_FLEXCAN2_MASK (*(IMXRT_REGISTER32_t *)0x401D4800)
  1567. #define FLEXCAN2_MCR (IMXRT_FLEXCAN2.offset000)
  1568. #define FLEXCAN2_CTRL1 (IMXRT_FLEXCAN2.offset004)
  1569. #define FLEXCAN2_TIMER (IMXRT_FLEXCAN2.offset008)
  1570. #define FLEXCAN2_RXMGMASK (IMXRT_FLEXCAN2.offset010)
  1571. #define FLEXCAN2_RX14MASK (IMXRT_FLEXCAN2.offset014)
  1572. #define FLEXCAN2_RX15MASK (IMXRT_FLEXCAN2.offset018)
  1573. #define FLEXCAN2_ECR (IMXRT_FLEXCAN2.offset01C)
  1574. #define FLEXCAN2_ESR1 (IMXRT_FLEXCAN2.offset020)
  1575. #define FLEXCAN2_IMASK2 (IMXRT_FLEXCAN2.offset024)
  1576. #define FLEXCAN2_IMASK1 (IMXRT_FLEXCAN2.offset028)
  1577. #define FLEXCAN2_IFLAG2 (IMXRT_FLEXCAN2.offset02C)
  1578. #define FLEXCAN2_IFLAG1 (IMXRT_FLEXCAN2.offset030)
  1579. #define FLEXCAN2_CTRL2 (IMXRT_FLEXCAN2.offset034)
  1580. #define FLEXCAN2_ESR2 (IMXRT_FLEXCAN2.offset038)
  1581. #define FLEXCAN2_CRCR (IMXRT_FLEXCAN2.offset044)
  1582. #define FLEXCAN2_RXFGMASK (IMXRT_FLEXCAN2.offset048)
  1583. #define FLEXCAN2_RXFIR (IMXRT_FLEXCAN2.offset04C)
  1584. #define FLEXCAN2_RXIMR0 (IMXRT_FLEXCAN2_MASK.offset080)
  1585. #define FLEXCAN2_RXIMR1 (IMXRT_FLEXCAN2_MASK.offset084)
  1586. #define FLEXCAN2_RXIMR2 (IMXRT_FLEXCAN2_MASK.offset088)
  1587. #define FLEXCAN2_RXIMR3 (IMXRT_FLEXCAN2_MASK.offset08C)
  1588. #define FLEXCAN2_RXIMR4 (IMXRT_FLEXCAN2_MASK.offset090)
  1589. #define FLEXCAN2_RXIMR5 (IMXRT_FLEXCAN2_MASK.offset094)
  1590. #define FLEXCAN2_RXIMR6 (IMXRT_FLEXCAN2_MASK.offset098)
  1591. #define FLEXCAN2_RXIMR7 (IMXRT_FLEXCAN2_MASK.offset09C)
  1592. #define FLEXCAN2_RXIMR8 (IMXRT_FLEXCAN2_MASK.offset0A0)
  1593. #define FLEXCAN2_RXIMR9 (IMXRT_FLEXCAN2_MASK.offset0A4)
  1594. #define FLEXCAN2_RXIMR10 (IMXRT_FLEXCAN2_MASK.offset0A8)
  1595. #define FLEXCAN2_RXIMR11 (IMXRT_FLEXCAN2_MASK.offset0AC)
  1596. #define FLEXCAN2_RXIMR12 (IMXRT_FLEXCAN2_MASK.offset0B0)
  1597. #define FLEXCAN2_RXIMR13 (IMXRT_FLEXCAN2_MASK.offset0B4)
  1598. #define FLEXCAN2_RXIMR14 (IMXRT_FLEXCAN2_MASK.offset0B8)
  1599. #define FLEXCAN2_RXIMR15 (IMXRT_FLEXCAN2_MASK.offset0BC)
  1600. #define FLEXCAN2_RXIMR16 (IMXRT_FLEXCAN2_MASK.offset0C0)
  1601. #define FLEXCAN2_RXIMR17 (IMXRT_FLEXCAN2_MASK.offset0C4)
  1602. #define FLEXCAN2_RXIMR18 (IMXRT_FLEXCAN2_MASK.offset0C8)
  1603. #define FLEXCAN2_RXIMR19 (IMXRT_FLEXCAN2_MASK.offset0CC)
  1604. #define FLEXCAN2_RXIMR20 (IMXRT_FLEXCAN2_MASK.offset0D0)
  1605. #define FLEXCAN2_RXIMR21 (IMXRT_FLEXCAN2_MASK.offset0D4)
  1606. #define FLEXCAN2_RXIMR22 (IMXRT_FLEXCAN2_MASK.offset0D8)
  1607. #define FLEXCAN2_RXIMR23 (IMXRT_FLEXCAN2_MASK.offset0DC)
  1608. #define FLEXCAN2_RXIMR24 (IMXRT_FLEXCAN2_MASK.offset0E0)
  1609. #define FLEXCAN2_RXIMR25 (IMXRT_FLEXCAN2_MASK.offset0E4)
  1610. #define FLEXCAN2_RXIMR26 (IMXRT_FLEXCAN2_MASK.offset0E8)
  1611. #define FLEXCAN2_RXIMR27 (IMXRT_FLEXCAN2_MASK.offset0EC)
  1612. #define FLEXCAN2_RXIMR28 (IMXRT_FLEXCAN2_MASK.offset0F0)
  1613. #define FLEXCAN2_RXIMR29 (IMXRT_FLEXCAN2_MASK.offset0F4)
  1614. #define FLEXCAN2_RXIMR30 (IMXRT_FLEXCAN2_MASK.offset0F8)
  1615. #define FLEXCAN2_RXIMR31 (IMXRT_FLEXCAN2_MASK.offset0FC)
  1616. #define FLEXCAN2_RXIMR32 (IMXRT_FLEXCAN2_MASK.offset100)
  1617. #define FLEXCAN2_RXIMR33 (IMXRT_FLEXCAN2_MASK.offset104)
  1618. #define FLEXCAN2_RXIMR34 (IMXRT_FLEXCAN2_MASK.offset108)
  1619. #define FLEXCAN2_RXIMR35 (IMXRT_FLEXCAN2_MASK.offset10C)
  1620. #define FLEXCAN2_RXIMR36 (IMXRT_FLEXCAN2_MASK.offset110)
  1621. #define FLEXCAN2_RXIMR37 (IMXRT_FLEXCAN2_MASK.offset114)
  1622. #define FLEXCAN2_RXIMR38 (IMXRT_FLEXCAN2_MASK.offset118)
  1623. #define FLEXCAN2_RXIMR39 (IMXRT_FLEXCAN2_MASK.offset11C)
  1624. #define FLEXCAN2_RXIMR40 (IMXRT_FLEXCAN2_MASK.offset120)
  1625. #define FLEXCAN2_RXIMR41 (IMXRT_FLEXCAN2_MASK.offset124)
  1626. #define FLEXCAN2_RXIMR42 (IMXRT_FLEXCAN2_MASK.offset128)
  1627. #define FLEXCAN2_RXIMR43 (IMXRT_FLEXCAN2_MASK.offset12C)
  1628. #define FLEXCAN2_RXIMR44 (IMXRT_FLEXCAN2_MASK.offset130)
  1629. #define FLEXCAN2_RXIMR45 (IMXRT_FLEXCAN2_MASK.offset134)
  1630. #define FLEXCAN2_RXIMR46 (IMXRT_FLEXCAN2_MASK.offset138)
  1631. #define FLEXCAN2_RXIMR47 (IMXRT_FLEXCAN2_MASK.offset13C)
  1632. #define FLEXCAN2_RXIMR48 (IMXRT_FLEXCAN2_MASK.offset140)
  1633. #define FLEXCAN2_RXIMR49 (IMXRT_FLEXCAN2_MASK.offset144)
  1634. #define FLEXCAN2_RXIMR50 (IMXRT_FLEXCAN2_MASK.offset148)
  1635. #define FLEXCAN2_RXIMR51 (IMXRT_FLEXCAN2_MASK.offset14C)
  1636. #define FLEXCAN2_RXIMR52 (IMXRT_FLEXCAN2_MASK.offset150)
  1637. #define FLEXCAN2_RXIMR53 (IMXRT_FLEXCAN2_MASK.offset154)
  1638. #define FLEXCAN2_RXIMR54 (IMXRT_FLEXCAN2_MASK.offset158)
  1639. #define FLEXCAN2_RXIMR55 (IMXRT_FLEXCAN2_MASK.offset15C)
  1640. #define FLEXCAN2_RXIMR56 (IMXRT_FLEXCAN2_MASK.offset160)
  1641. #define FLEXCAN2_RXIMR57 (IMXRT_FLEXCAN2_MASK.offset164)
  1642. #define FLEXCAN2_RXIMR58 (IMXRT_FLEXCAN2_MASK.offset168)
  1643. #define FLEXCAN2_RXIMR59 (IMXRT_FLEXCAN2_MASK.offset16C)
  1644. #define FLEXCAN2_RXIMR60 (IMXRT_FLEXCAN2_MASK.offset170)
  1645. #define FLEXCAN2_RXIMR61 (IMXRT_FLEXCAN2_MASK.offset174)
  1646. #define FLEXCAN2_RXIMR62 (IMXRT_FLEXCAN2_MASK.offset178)
  1647. #define FLEXCAN2_RXIMR63 (IMXRT_FLEXCAN2_MASK.offset17C)
  1648. #define FLEXCAN2_GFWR (IMXRT_FLEXCAN2_MASK.offset1E0)
  1649. // 27.3.1.1: page 1292
  1650. #define IMXRT_FLEXIO1 (*(IMXRT_REGISTER32_t *)0x401AC000)
  1651. #define IMXRT_FLEXIO1_b (*(IMXRT_REGISTER32_t *)0x401AC400)
  1652. #define FLEXIO1_VERID (IMXRT_FLEXIO1.offset000)
  1653. #define FLEXIO1_PARAM (IMXRT_FLEXIO1.offset004)
  1654. #define FLEXIO1_CTRL (IMXRT_FLEXIO1.offset008)
  1655. #define FLEXIO1_PIN (IMXRT_FLEXIO1.offset00C)
  1656. #define FLEXIO1_SHIFTSTAT (IMXRT_FLEXIO1.offset010)
  1657. #define FLEXIO1_SHIFTERR (IMXRT_FLEXIO1.offset014)
  1658. #define FLEXIO1_TIMSTAT (IMXRT_FLEXIO1.offset018)
  1659. #define FLEXIO1_SHIFTSIEN (IMXRT_FLEXIO1.offset020)
  1660. #define FLEXIO1_SHIFTEIEN (IMXRT_FLEXIO1.offset024)
  1661. #define FLEXIO1_TIMIEN (IMXRT_FLEXIO1.offset028)
  1662. #define FLEXIO1_SHIFTSDEN (IMXRT_FLEXIO1.offset030)
  1663. #define FLEXIO1_SHIFTSTATE (IMXRT_FLEXIO1.offset040)
  1664. #define FLEXIO1_SHIFTCTL0 (IMXRT_FLEXIO1.offset080)
  1665. #define FLEXIO1_SHIFTCTL1 (IMXRT_FLEXIO1.offset084)
  1666. #define FLEXIO1_SHIFTCTL2 (IMXRT_FLEXIO1.offset088)
  1667. #define FLEXIO1_SHIFTCTL3 (IMXRT_FLEXIO1.offset08C)
  1668. #define FLEXIO1_SHIFTCFG0 (IMXRT_FLEXIO1.offset100)
  1669. #define FLEXIO1_SHIFTCFG1 (IMXRT_FLEXIO1.offset104)
  1670. #define FLEXIO1_SHIFTCFG2 (IMXRT_FLEXIO1.offset108)
  1671. #define FLEXIO1_SHIFTCFG3 (IMXRT_FLEXIO1.offset10C)
  1672. #define FLEXIO1_SHIFTBUF0 (IMXRT_FLEXIO1.offset200)
  1673. #define FLEXIO1_SHIFTBUF1 (IMXRT_FLEXIO1.offset204)
  1674. #define FLEXIO1_SHIFTBUF2 (IMXRT_FLEXIO1.offset208)
  1675. #define FLEXIO1_SHIFTBUF3 (IMXRT_FLEXIO1.offset20C)
  1676. #define FLEXIO1_SHIFTBUFBIS0 (IMXRT_FLEXIO1.offset280)
  1677. #define FLEXIO1_SHIFTBUFBIS1 (IMXRT_FLEXIO1.offset284)
  1678. #define FLEXIO1_SHIFTBUFBIS2 (IMXRT_FLEXIO1.offset288)
  1679. #define FLEXIO1_SHIFTBUFBIS3 (IMXRT_FLEXIO1.offset28C)
  1680. #define FLEXIO1_SHIFTBUFBYS0 (IMXRT_FLEXIO1.offset300)
  1681. #define FLEXIO1_SHIFTBUFBYS1 (IMXRT_FLEXIO1.offset304)
  1682. #define FLEXIO1_SHIFTBUFBYS2 (IMXRT_FLEXIO1.offset308)
  1683. #define FLEXIO1_SHIFTBUFBYS3 (IMXRT_FLEXIO1.offset30C)
  1684. #define FLEXIO1_SHIFTBUFBBS0 (IMXRT_FLEXIO1.offset380)
  1685. #define FLEXIO1_SHIFTBUFBBS1 (IMXRT_FLEXIO1.offset384)
  1686. #define FLEXIO1_SHIFTBUFBBS2 (IMXRT_FLEXIO1.offset388)
  1687. #define FLEXIO1_SHIFTBUFBBS3 (IMXRT_FLEXIO1.offset38C)
  1688. #define FLEXIO1_TIMCTL0 (IMXRT_FLEXIO1_b.offset000)
  1689. #define FLEXIO1_TIMCTL1 (IMXRT_FLEXIO1_b.offset004)
  1690. #define FLEXIO1_TIMCTL2 (IMXRT_FLEXIO1_b.offset008)
  1691. #define FLEXIO1_TIMCTL3 (IMXRT_FLEXIO1_b.offset00C)
  1692. #define FLEXIO1_TIMCFG0 (IMXRT_FLEXIO1_b.offset080)
  1693. #define FLEXIO1_TIMCFG1 (IMXRT_FLEXIO1_b.offset084)
  1694. #define FLEXIO1_TIMCFG2 (IMXRT_FLEXIO1_b.offset088)
  1695. #define FLEXIO1_TIMCFG3 (IMXRT_FLEXIO1_b.offset08C)
  1696. #define FLEXIO1_TIMCMP0 (IMXRT_FLEXIO1_b.offset100)
  1697. #define FLEXIO1_TIMCMP1 (IMXRT_FLEXIO1_b.offset104)
  1698. #define FLEXIO1_TIMCMP2 (IMXRT_FLEXIO1_b.offset108)
  1699. #define FLEXIO1_TIMCMP3 (IMXRT_FLEXIO1_b.offset10C)
  1700. #define FLEXIO1_SHIFTBUFNBS0 (IMXRT_FLEXIO1_b.offset280)
  1701. #define FLEXIO1_SHIFTBUFNBS1 (IMXRT_FLEXIO1_b.offset284)
  1702. #define FLEXIO1_SHIFTBUFNBS2 (IMXRT_FLEXIO1_b.offset288)
  1703. #define FLEXIO1_SHIFTBUFNBS3 (IMXRT_FLEXIO1_b.offset28C)
  1704. #define FLEXIO1_SHIFTBUFHWS0 (IMXRT_FLEXIO1_b.offset300)
  1705. #define FLEXIO1_SHIFTBUFHWS1 (IMXRT_FLEXIO1_b.offset304)
  1706. #define FLEXIO1_SHIFTBUFHWS2 (IMXRT_FLEXIO1_b.offset308)
  1707. #define FLEXIO1_SHIFTBUFHWS3 (IMXRT_FLEXIO1_b.offset30C)
  1708. #define FLEXIO1_SHIFTBUFNIS0 (IMXRT_FLEXIO1_b.offset380)
  1709. #define FLEXIO1_SHIFTBUFNIS1 (IMXRT_FLEXIO1_b.offset384)
  1710. #define FLEXIO1_SHIFTBUFNIS2 (IMXRT_FLEXIO1_b.offset388)
  1711. #define FLEXIO1_SHIFTBUFNIS3 (IMXRT_FLEXIO1_b.offset38C)
  1712. #define IMXRT_FLEXIO2 (*(IMXRT_REGISTER32_t *)0x401B0000)
  1713. #define IMXRT_FLEXIO2_b (*(IMXRT_REGISTER32_t *)0x401B0400)
  1714. #define FLEXIO2_VERID (IMXRT_FLEXIO2.offset000)
  1715. #define FLEXIO2_PARAM (IMXRT_FLEXIO2.offset004)
  1716. #define FLEXIO2_CTRL (IMXRT_FLEXIO2.offset008)
  1717. #define FLEXIO2_PIN (IMXRT_FLEXIO2.offset00C)
  1718. #define FLEXIO2_SHIFTSTAT (IMXRT_FLEXIO2.offset010)
  1719. #define FLEXIO2_SHIFTERR (IMXRT_FLEXIO2.offset014)
  1720. #define FLEXIO2_TIMSTAT (IMXRT_FLEXIO2.offset018)
  1721. #define FLEXIO2_SHIFTSIEN (IMXRT_FLEXIO2.offset020)
  1722. #define FLEXIO2_SHIFTEIEN (IMXRT_FLEXIO2.offset024)
  1723. #define FLEXIO2_TIMIEN (IMXRT_FLEXIO2.offset028)
  1724. #define FLEXIO2_SHIFTSDEN (IMXRT_FLEXIO2.offset030)
  1725. #define FLEXIO2_SHIFTSTATE (IMXRT_FLEXIO2.offset040)
  1726. #define FLEXIO2_SHIFTCTL0 (IMXRT_FLEXIO2.offset080)
  1727. #define FLEXIO2_SHIFTCTL1 (IMXRT_FLEXIO2.offset084)
  1728. #define FLEXIO2_SHIFTCTL2 (IMXRT_FLEXIO2.offset088)
  1729. #define FLEXIO2_SHIFTCTL3 (IMXRT_FLEXIO2.offset08C)
  1730. #define FLEXIO2_SHIFTCFG0 (IMXRT_FLEXIO2.offset100)
  1731. #define FLEXIO2_SHIFTCFG1 (IMXRT_FLEXIO2.offset104)
  1732. #define FLEXIO2_SHIFTCFG2 (IMXRT_FLEXIO2.offset108)
  1733. #define FLEXIO2_SHIFTCFG3 (IMXRT_FLEXIO2.offset10C)
  1734. #define FLEXIO2_SHIFTBUF0 (IMXRT_FLEXIO2.offset200)
  1735. #define FLEXIO2_SHIFTBUF1 (IMXRT_FLEXIO2.offset204)
  1736. #define FLEXIO2_SHIFTBUF2 (IMXRT_FLEXIO2.offset208)
  1737. #define FLEXIO2_SHIFTBUF3 (IMXRT_FLEXIO2.offset20C)
  1738. #define FLEXIO2_SHIFTBUFBIS0 (IMXRT_FLEXIO2.offset280)
  1739. #define FLEXIO2_SHIFTBUFBIS1 (IMXRT_FLEXIO2.offset284)
  1740. #define FLEXIO2_SHIFTBUFBIS2 (IMXRT_FLEXIO2.offset288)
  1741. #define FLEXIO2_SHIFTBUFBIS3 (IMXRT_FLEXIO2.offset28C)
  1742. #define FLEXIO2_SHIFTBUFBYS0 (IMXRT_FLEXIO2.offset300)
  1743. #define FLEXIO2_SHIFTBUFBYS1 (IMXRT_FLEXIO2.offset304)
  1744. #define FLEXIO2_SHIFTBUFBYS2 (IMXRT_FLEXIO2.offset308)
  1745. #define FLEXIO2_SHIFTBUFBYS3 (IMXRT_FLEXIO2.offset30C)
  1746. #define FLEXIO2_SHIFTBUFBBS0 (IMXRT_FLEXIO2.offset380)
  1747. #define FLEXIO2_SHIFTBUFBBS1 (IMXRT_FLEXIO2.offset384)
  1748. #define FLEXIO2_SHIFTBUFBBS2 (IMXRT_FLEXIO2.offset388)
  1749. #define FLEXIO2_SHIFTBUFBBS3 (IMXRT_FLEXIO2.offset38C)
  1750. #define FLEXIO2_TIMCTL0 (IMXRT_FLEXIO2_b.offset000)
  1751. #define FLEXIO2_TIMCTL1 (IMXRT_FLEXIO2_b.offset004)
  1752. #define FLEXIO2_TIMCTL2 (IMXRT_FLEXIO2_b.offset008)
  1753. #define FLEXIO2_TIMCTL3 (IMXRT_FLEXIO2_b.offset00C)
  1754. #define FLEXIO2_TIMCFG0 (IMXRT_FLEXIO2_b.offset080)
  1755. #define FLEXIO2_TIMCFG1 (IMXRT_FLEXIO2_b.offset084)
  1756. #define FLEXIO2_TIMCFG2 (IMXRT_FLEXIO2_b.offset088)
  1757. #define FLEXIO2_TIMCFG3 (IMXRT_FLEXIO2_b.offset08C)
  1758. #define FLEXIO2_TIMCMP0 (IMXRT_FLEXIO2_b.offset100)
  1759. #define FLEXIO2_TIMCMP1 (IMXRT_FLEXIO2_b.offset104)
  1760. #define FLEXIO2_TIMCMP2 (IMXRT_FLEXIO2_b.offset108)
  1761. #define FLEXIO2_TIMCMP3 (IMXRT_FLEXIO2_b.offset10C)
  1762. #define FLEXIO2_SHIFTBUFNBS0 (IMXRT_FLEXIO2_b.offset280)
  1763. #define FLEXIO2_SHIFTBUFNBS1 (IMXRT_FLEXIO2_b.offset284)
  1764. #define FLEXIO2_SHIFTBUFNBS2 (IMXRT_FLEXIO2_b.offset288)
  1765. #define FLEXIO2_SHIFTBUFNBS3 (IMXRT_FLEXIO2_b.offset28C)
  1766. #define FLEXIO2_SHIFTBUFHWS0 (IMXRT_FLEXIO2_b.offset300)
  1767. #define FLEXIO2_SHIFTBUFHWS1 (IMXRT_FLEXIO2_b.offset304)
  1768. #define FLEXIO2_SHIFTBUFHWS2 (IMXRT_FLEXIO2_b.offset308)
  1769. #define FLEXIO2_SHIFTBUFHWS3 (IMXRT_FLEXIO2_b.offset30C)
  1770. #define FLEXIO2_SHIFTBUFNIS0 (IMXRT_FLEXIO2_b.offset380)
  1771. #define FLEXIO2_SHIFTBUFNIS1 (IMXRT_FLEXIO2_b.offset384)
  1772. #define FLEXIO2_SHIFTBUFNIS2 (IMXRT_FLEXIO2_b.offset388)
  1773. #define FLEXIO2_SHIFTBUFNIS3 (IMXRT_FLEXIO2_b.offset38C)
  1774. // 28.4.1: page 1354
  1775. #define IMXRT_FLEXPWM1 (*(IMXRT_REGISTER16_t *)0x403DC000)
  1776. #define FLEXPWM1_SM0CNT (IMXRT_FLEXPWM1.offset000)
  1777. #define FLEXPWM1_SM0INIT (IMXRT_FLEXPWM1.offset002)
  1778. #define FLEXPWM1_SM0CTRL2 (IMXRT_FLEXPWM1.offset004)
  1779. #define FLEXPWM1_SM0CTRL (IMXRT_FLEXPWM1.offset006)
  1780. #define FLEXPWM1_SM0VAL0 (IMXRT_FLEXPWM1.offset008)
  1781. #define FLEXPWM1_SM0FRACVAL1 (IMXRT_FLEXPWM1.offset00A)
  1782. #define FLEXPWM1_SM0VAL1 (IMXRT_FLEXPWM1.offset00C)
  1783. #define FLEXPWM1_SM0FRACVAL2 (IMXRT_FLEXPWM1.offset00E)
  1784. #define FLEXPWM1_SM0VAL2 (IMXRT_FLEXPWM1.offset010)
  1785. #define FLEXPWM1_SM0FRACVAL3 (IMXRT_FLEXPWM1.offset012)
  1786. #define FLEXPWM1_SM0VAL3 (IMXRT_FLEXPWM1.offset014)
  1787. #define FLEXPWM1_SM0FRACVAL4 (IMXRT_FLEXPWM1.offset016)
  1788. #define FLEXPWM1_SM0VAL4 (IMXRT_FLEXPWM1.offset018)
  1789. #define FLEXPWM1_SM0FRACVAL5 (IMXRT_FLEXPWM1.offset01A)
  1790. #define FLEXPWM1_SM0VAL5 (IMXRT_FLEXPWM1.offset01C)
  1791. #define FLEXPWM1_SM0FRCTRL (IMXRT_FLEXPWM1.offset01E)
  1792. #define FLEXPWM1_SM0OCTRL (IMXRT_FLEXPWM1.offset020)
  1793. #define FLEXPWM1_SM0STS (IMXRT_FLEXPWM1.offset022)
  1794. #define FLEXPWM1_SM0INTEN (IMXRT_FLEXPWM1.offset024)
  1795. #define FLEXPWM1_SM0DMAEN (IMXRT_FLEXPWM1.offset026)
  1796. #define FLEXPWM1_SM0TCTRL (IMXRT_FLEXPWM1.offset028)
  1797. #define FLEXPWM1_SM0DISMAP0 (IMXRT_FLEXPWM1.offset02A)
  1798. #define FLEXPWM1_SM0DISMAP1 (IMXRT_FLEXPWM1.offset02C)
  1799. #define FLEXPWM1_SM0DTCNT0 (IMXRT_FLEXPWM1.offset02E)
  1800. #define FLEXPWM1_SM0DTCNT1 (IMXRT_FLEXPWM1.offset030)
  1801. #define FLEXPWM1_SM0CAPTCTRLA (IMXRT_FLEXPWM1.offset032)
  1802. #define FLEXPWM1_SM0CAPTCOMPA (IMXRT_FLEXPWM1.offset034)
  1803. #define FLEXPWM1_SM0CAPTCTRLB (IMXRT_FLEXPWM1.offset036)
  1804. #define FLEXPWM1_SM0CAPTCOMPB (IMXRT_FLEXPWM1.offset038)
  1805. #define FLEXPWM1_SM0CAPTCTRLX (IMXRT_FLEXPWM1.offset03A)
  1806. #define FLEXPWM1_SM0CAPTCOMPX (IMXRT_FLEXPWM1.offset03C)
  1807. #define FLEXPWM1_SM0CVAL0 (IMXRT_FLEXPWM1.offset03E)
  1808. #define FLEXPWM1_SM0CVAL0CYC (IMXRT_FLEXPWM1.offset040)
  1809. #define FLEXPWM1_SM0CVAL1 (IMXRT_FLEXPWM1.offset042)
  1810. #define FLEXPWM1_SM0CVAL1CYC (IMXRT_FLEXPWM1.offset044)
  1811. #define FLEXPWM1_SM0CVAL2 (IMXRT_FLEXPWM1.offset046)
  1812. #define FLEXPWM1_SM0CVAL2CYC (IMXRT_FLEXPWM1.offset048)
  1813. #define FLEXPWM1_SM0CVAL3 (IMXRT_FLEXPWM1.offset04A)
  1814. #define FLEXPWM1_SM0CVAL3CYC (IMXRT_FLEXPWM1.offset04C)
  1815. #define FLEXPWM1_SM0CVAL4 (IMXRT_FLEXPWM1.offset04E)
  1816. #define FLEXPWM1_SM0CVAL4CYC (IMXRT_FLEXPWM1.offset050)
  1817. #define FLEXPWM1_SM0CVAL5 (IMXRT_FLEXPWM1.offset052)
  1818. #define FLEXPWM1_SM0CVAL5CYC (IMXRT_FLEXPWM1.offset054)
  1819. #define FLEXPWM1_SM1CNT (IMXRT_FLEXPWM1.offset060)
  1820. #define FLEXPWM1_SM1INIT (IMXRT_FLEXPWM1.offset062)
  1821. #define FLEXPWM1_SM1CTRL2 (IMXRT_FLEXPWM1.offset064)
  1822. #define FLEXPWM1_SM1CTRL (IMXRT_FLEXPWM1.offset066)
  1823. #define FLEXPWM1_SM1VAL0 (IMXRT_FLEXPWM1.offset068)
  1824. #define FLEXPWM1_SM1FRACVAL1 (IMXRT_FLEXPWM1.offset06A)
  1825. #define FLEXPWM1_SM1VAL1 (IMXRT_FLEXPWM1.offset06C)
  1826. #define FLEXPWM1_SM1FRACVAL2 (IMXRT_FLEXPWM1.offset06E)
  1827. #define FLEXPWM1_SM1VAL2 (IMXRT_FLEXPWM1.offset070)
  1828. #define FLEXPWM1_SM1FRACVAL3 (IMXRT_FLEXPWM1.offset072)
  1829. #define FLEXPWM1_SM1VAL3 (IMXRT_FLEXPWM1.offset074)
  1830. #define FLEXPWM1_SM1FRACVAL4 (IMXRT_FLEXPWM1.offset076)
  1831. #define FLEXPWM1_SM1VAL4 (IMXRT_FLEXPWM1.offset078)
  1832. #define FLEXPWM1_SM1FRACVAL5 (IMXRT_FLEXPWM1.offset07A)
  1833. #define FLEXPWM1_SM1VAL5 (IMXRT_FLEXPWM1.offset07C)
  1834. #define FLEXPWM1_SM1FRCTRL (IMXRT_FLEXPWM1.offset07E)
  1835. #define FLEXPWM1_SM1OCTRL (IMXRT_FLEXPWM1.offset080)
  1836. #define FLEXPWM1_SM1STS (IMXRT_FLEXPWM1.offset082)
  1837. #define FLEXPWM1_SM1INTEN (IMXRT_FLEXPWM1.offset084)
  1838. #define FLEXPWM1_SM1DMAEN (IMXRT_FLEXPWM1.offset086)
  1839. #define FLEXPWM1_SM1TCTRL (IMXRT_FLEXPWM1.offset088)
  1840. #define FLEXPWM1_SM1DISMAP0 (IMXRT_FLEXPWM1.offset08A)
  1841. #define FLEXPWM1_SM1DISMAP1 (IMXRT_FLEXPWM1.offset08C)
  1842. #define FLEXPWM1_SM1DTCNT0 (IMXRT_FLEXPWM1.offset08E)
  1843. #define FLEXPWM1_SM1DTCNT1 (IMXRT_FLEXPWM1.offset090)
  1844. #define FLEXPWM1_SM1CAPTCTRLA (IMXRT_FLEXPWM1.offset092)
  1845. #define FLEXPWM1_SM1CAPTCOMPA (IMXRT_FLEXPWM1.offset094)
  1846. #define FLEXPWM1_SM1CAPTCTRLB (IMXRT_FLEXPWM1.offset096)
  1847. #define FLEXPWM1_SM1CAPTCOMPB (IMXRT_FLEXPWM1.offset098)
  1848. #define FLEXPWM1_SM1CAPTCTRLX (IMXRT_FLEXPWM1.offset09A)
  1849. #define FLEXPWM1_SM1CAPTCOMPX (IMXRT_FLEXPWM1.offset09C)
  1850. #define FLEXPWM1_SM1CVAL0 (IMXRT_FLEXPWM1.offset09E)
  1851. #define FLEXPWM1_SM1CVAL0CYC (IMXRT_FLEXPWM1.offset0A0)
  1852. #define FLEXPWM1_SM1CVAL1 (IMXRT_FLEXPWM1.offset0A2)
  1853. #define FLEXPWM1_SM1CVAL1CYC (IMXRT_FLEXPWM1.offset0A4)
  1854. #define FLEXPWM1_SM1CVAL2 (IMXRT_FLEXPWM1.offset0A6)
  1855. #define FLEXPWM1_SM1CVAL2CYC (IMXRT_FLEXPWM1.offset0A8)
  1856. #define FLEXPWM1_SM1CVAL3 (IMXRT_FLEXPWM1.offset0AA)
  1857. #define FLEXPWM1_SM1CVAL3CYC (IMXRT_FLEXPWM1.offset0AC)
  1858. #define FLEXPWM1_SM1CVAL4 (IMXRT_FLEXPWM1.offset0AE)
  1859. #define FLEXPWM1_SM1CVAL4CYC (IMXRT_FLEXPWM1.offset0B0)
  1860. #define FLEXPWM1_SM1CVAL5 (IMXRT_FLEXPWM1.offset0B2)
  1861. #define FLEXPWM1_SM1CVAL5CYC (IMXRT_FLEXPWM1.offset0B4)
  1862. #define FLEXPWM1_SM2CNT (IMXRT_FLEXPWM1.offset0C0)
  1863. #define FLEXPWM1_SM2INIT (IMXRT_FLEXPWM1.offset0C2)
  1864. #define FLEXPWM1_SM2CTRL2 (IMXRT_FLEXPWM1.offset0C4)
  1865. #define FLEXPWM1_SM2CTRL (IMXRT_FLEXPWM1.offset0C6)
  1866. #define FLEXPWM1_SM2VAL0 (IMXRT_FLEXPWM1.offset0C8)
  1867. #define FLEXPWM1_SM2FRACVAL1 (IMXRT_FLEXPWM1.offset0CA)
  1868. #define FLEXPWM1_SM2VAL1 (IMXRT_FLEXPWM1.offset0CC)
  1869. #define FLEXPWM1_SM2FRACVAL2 (IMXRT_FLEXPWM1.offset0CE)
  1870. #define FLEXPWM1_SM2VAL2 (IMXRT_FLEXPWM1.offset0D0)
  1871. #define FLEXPWM1_SM2FRACVAL3 (IMXRT_FLEXPWM1.offset0D2)
  1872. #define FLEXPWM1_SM2VAL3 (IMXRT_FLEXPWM1.offset0D4)
  1873. #define FLEXPWM1_SM2FRACVAL4 (IMXRT_FLEXPWM1.offset0D6)
  1874. #define FLEXPWM1_SM2VAL4 (IMXRT_FLEXPWM1.offset0D8)
  1875. #define FLEXPWM1_SM2FRACVAL5 (IMXRT_FLEXPWM1.offset0DA)
  1876. #define FLEXPWM1_SM2VAL5 (IMXRT_FLEXPWM1.offset0DC)
  1877. #define FLEXPWM1_SM2FRCTRL (IMXRT_FLEXPWM1.offset0DE)
  1878. #define FLEXPWM1_SM2OCTRL (IMXRT_FLEXPWM1.offset0E0)
  1879. #define FLEXPWM1_SM2STS (IMXRT_FLEXPWM1.offset0E2)
  1880. #define FLEXPWM1_SM2INTEN (IMXRT_FLEXPWM1.offset0E4)
  1881. #define FLEXPWM1_SM2DMAEN (IMXRT_FLEXPWM1.offset0E6)
  1882. #define FLEXPWM1_SM2TCTRL (IMXRT_FLEXPWM1.offset0E8)
  1883. #define FLEXPWM1_SM2DISMAP0 (IMXRT_FLEXPWM1.offset0EA)
  1884. #define FLEXPWM1_SM2DISMAP1 (IMXRT_FLEXPWM1.offset0EC)
  1885. #define FLEXPWM1_SM2DTCNT0 (IMXRT_FLEXPWM1.offset0EE)
  1886. #define FLEXPWM1_SM2DTCNT1 (IMXRT_FLEXPWM1.offset0F0)
  1887. #define FLEXPWM1_SM2CAPTCTRLA (IMXRT_FLEXPWM1.offset0F2)
  1888. #define FLEXPWM1_SM2CAPTCOMPA (IMXRT_FLEXPWM1.offset0F4)
  1889. #define FLEXPWM1_SM2CAPTCTRLB (IMXRT_FLEXPWM1.offset0F6)
  1890. #define FLEXPWM1_SM2CAPTCOMPB (IMXRT_FLEXPWM1.offset0F8)
  1891. #define FLEXPWM1_SM2CAPTCTRLX (IMXRT_FLEXPWM1.offset0FA)
  1892. #define FLEXPWM1_SM2CAPTCOMPX (IMXRT_FLEXPWM1.offset0FC)
  1893. #define FLEXPWM1_SM2CVAL0 (IMXRT_FLEXPWM1.offset0FE)
  1894. #define FLEXPWM1_SM2CVAL0CYC (IMXRT_FLEXPWM1.offset100)
  1895. #define FLEXPWM1_SM2CVAL1 (IMXRT_FLEXPWM1.offset102)
  1896. #define FLEXPWM1_SM2CVAL1CYC (IMXRT_FLEXPWM1.offset104)
  1897. #define FLEXPWM1_SM2CVAL2 (IMXRT_FLEXPWM1.offset106)
  1898. #define FLEXPWM1_SM2CVAL2CYC (IMXRT_FLEXPWM1.offset108)
  1899. #define FLEXPWM1_SM2CVAL3 (IMXRT_FLEXPWM1.offset10A)
  1900. #define FLEXPWM1_SM2CVAL3CYC (IMXRT_FLEXPWM1.offset10C)
  1901. #define FLEXPWM1_SM2CVAL4 (IMXRT_FLEXPWM1.offset10E)
  1902. #define FLEXPWM1_SM2CVAL4CYC (IMXRT_FLEXPWM1.offset110)
  1903. #define FLEXPWM1_SM2CVAL5 (IMXRT_FLEXPWM1.offset112)
  1904. #define FLEXPWM1_SM2CVAL5CYC (IMXRT_FLEXPWM1.offset114)
  1905. #define FLEXPWM1_SM3CNT (IMXRT_FLEXPWM1.offset120)
  1906. #define FLEXPWM1_SM3INIT (IMXRT_FLEXPWM1.offset122)
  1907. #define FLEXPWM1_SM3CTRL2 (IMXRT_FLEXPWM1.offset124)
  1908. #define FLEXPWM1_SM3CTRL (IMXRT_FLEXPWM1.offset126)
  1909. #define FLEXPWM1_SM3VAL0 (IMXRT_FLEXPWM1.offset128)
  1910. #define FLEXPWM1_SM3FRACVAL1 (IMXRT_FLEXPWM1.offset12A)
  1911. #define FLEXPWM1_SM3VAL1 (IMXRT_FLEXPWM1.offset12C)
  1912. #define FLEXPWM1_SM3FRACVAL2 (IMXRT_FLEXPWM1.offset12E)
  1913. #define FLEXPWM1_SM3VAL2 (IMXRT_FLEXPWM1.offset130)
  1914. #define FLEXPWM1_SM3FRACVAL3 (IMXRT_FLEXPWM1.offset132)
  1915. #define FLEXPWM1_SM3VAL3 (IMXRT_FLEXPWM1.offset134)
  1916. #define FLEXPWM1_SM3FRACVAL4 (IMXRT_FLEXPWM1.offset136)
  1917. #define FLEXPWM1_SM3VAL4 (IMXRT_FLEXPWM1.offset138)
  1918. #define FLEXPWM1_SM3FRACVAL5 (IMXRT_FLEXPWM1.offset13A)
  1919. #define FLEXPWM1_SM3VAL5 (IMXRT_FLEXPWM1.offset13C)
  1920. #define FLEXPWM1_SM3FRCTRL (IMXRT_FLEXPWM1.offset13E)
  1921. #define FLEXPWM1_SM3OCTRL (IMXRT_FLEXPWM1.offset140)
  1922. #define FLEXPWM1_SM3STS (IMXRT_FLEXPWM1.offset142)
  1923. #define FLEXPWM1_SM3INTEN (IMXRT_FLEXPWM1.offset144)
  1924. #define FLEXPWM1_SM3DMAEN (IMXRT_FLEXPWM1.offset146)
  1925. #define FLEXPWM1_SM3TCTRL (IMXRT_FLEXPWM1.offset148)
  1926. #define FLEXPWM1_SM3DISMAP0 (IMXRT_FLEXPWM1.offset14A)
  1927. #define FLEXPWM1_SM3DISMAP1 (IMXRT_FLEXPWM1.offset14C)
  1928. #define FLEXPWM1_SM3DTCNT0 (IMXRT_FLEXPWM1.offset15E)
  1929. #define FLEXPWM1_SM3DTCNT1 (IMXRT_FLEXPWM1.offset150)
  1930. #define FLEXPWM1_SM3CAPTCTRLA (IMXRT_FLEXPWM1.offset152)
  1931. #define FLEXPWM1_SM3CAPTCOMPA (IMXRT_FLEXPWM1.offset154)
  1932. #define FLEXPWM1_SM3CAPTCTRLB (IMXRT_FLEXPWM1.offset156)
  1933. #define FLEXPWM1_SM3CAPTCOMPB (IMXRT_FLEXPWM1.offset158)
  1934. #define FLEXPWM1_SM3CAPTCTRLX (IMXRT_FLEXPWM1.offset15A)
  1935. #define FLEXPWM1_SM3CAPTCOMPX (IMXRT_FLEXPWM1.offset15C)
  1936. #define FLEXPWM1_SM3CVAL0 (IMXRT_FLEXPWM1.offset15E)
  1937. #define FLEXPWM1_SM3CVAL0CYC (IMXRT_FLEXPWM1.offset160)
  1938. #define FLEXPWM1_SM3CVAL1 (IMXRT_FLEXPWM1.offset162)
  1939. #define FLEXPWM1_SM3CVAL1CYC (IMXRT_FLEXPWM1.offset164)
  1940. #define FLEXPWM1_SM3CVAL2 (IMXRT_FLEXPWM1.offset166)
  1941. #define FLEXPWM1_SM3CVAL2CYC (IMXRT_FLEXPWM1.offset168)
  1942. #define FLEXPWM1_SM3CVAL3 (IMXRT_FLEXPWM1.offset16A)
  1943. #define FLEXPWM1_SM3CVAL3CYC (IMXRT_FLEXPWM1.offset16C)
  1944. #define FLEXPWM1_SM3CVAL4 (IMXRT_FLEXPWM1.offset16E)
  1945. #define FLEXPWM1_SM3CVAL4CYC (IMXRT_FLEXPWM1.offset170)
  1946. #define FLEXPWM1_SM3CVAL5 (IMXRT_FLEXPWM1.offset172)
  1947. #define FLEXPWM1_SM3CVAL5CYC (IMXRT_FLEXPWM1.offset174)
  1948. #define FLEXPWM1_OUTEN (IMXRT_FLEXPWM1.offset180)
  1949. #define FLEXPWM1_MASK (IMXRT_FLEXPWM1.offset182)
  1950. #define FLEXPWM1_SWCOUT (IMXRT_FLEXPWM1.offset184)
  1951. #define FLEXPWM1_DTSRCSEL (IMXRT_FLEXPWM1.offset186)
  1952. #define FLEXPWM1_MCTRL (IMXRT_FLEXPWM1.offset188)
  1953. #define FLEXPWM1_MCTRL2 (IMXRT_FLEXPWM1.offset18A)
  1954. #define FLEXPWM1_FCTRL0 (IMXRT_FLEXPWM1.offset18C)
  1955. #define FLEXPWM1_FSTS0 (IMXRT_FLEXPWM1.offset18E)
  1956. #define FLEXPWM1_FFILT0 (IMXRT_FLEXPWM1.offset190)
  1957. #define FLEXPWM1_FTST0 (IMXRT_FLEXPWM1.offset192)
  1958. #define FLEXPWM1_FCTRL20 (IMXRT_FLEXPWM1.offset194)
  1959. #define IMXRT_FLEXPWM2 (*(IMXRT_REGISTER16_t *)0x403E0000)
  1960. #define FLEXPWM2_SM0CNT (IMXRT_FLEXPWM2.offset000)
  1961. #define FLEXPWM2_SM0INIT (IMXRT_FLEXPWM2.offset002)
  1962. #define FLEXPWM2_SM0CTRL2 (IMXRT_FLEXPWM2.offset004)
  1963. #define FLEXPWM2_SM0CTRL (IMXRT_FLEXPWM2.offset006)
  1964. #define FLEXPWM2_SM0VAL0 (IMXRT_FLEXPWM2.offset008)
  1965. #define FLEXPWM2_SM0FRACVAL1 (IMXRT_FLEXPWM2.offset00A)
  1966. #define FLEXPWM2_SM0VAL1 (IMXRT_FLEXPWM2.offset00C)
  1967. #define FLEXPWM2_SM0FRACVAL2 (IMXRT_FLEXPWM2.offset00E)
  1968. #define FLEXPWM2_SM0VAL2 (IMXRT_FLEXPWM2.offset010)
  1969. #define FLEXPWM2_SM0FRACVAL3 (IMXRT_FLEXPWM2.offset012)
  1970. #define FLEXPWM2_SM0VAL3 (IMXRT_FLEXPWM2.offset014)
  1971. #define FLEXPWM2_SM0FRACVAL4 (IMXRT_FLEXPWM2.offset016)
  1972. #define FLEXPWM2_SM0VAL4 (IMXRT_FLEXPWM2.offset018)
  1973. #define FLEXPWM2_SM0FRACVAL5 (IMXRT_FLEXPWM2.offset01A)
  1974. #define FLEXPWM2_SM0VAL5 (IMXRT_FLEXPWM2.offset01C)
  1975. #define FLEXPWM2_SM0FRCTRL (IMXRT_FLEXPWM2.offset01E)
  1976. #define FLEXPWM2_SM0OCTRL (IMXRT_FLEXPWM2.offset020)
  1977. #define FLEXPWM2_SM0STS (IMXRT_FLEXPWM2.offset022)
  1978. #define FLEXPWM2_SM0INTEN (IMXRT_FLEXPWM2.offset024)
  1979. #define FLEXPWM2_SM0DMAEN (IMXRT_FLEXPWM2.offset026)
  1980. #define FLEXPWM2_SM0TCTRL (IMXRT_FLEXPWM2.offset028)
  1981. #define FLEXPWM2_SM0DISMAP0 (IMXRT_FLEXPWM2.offset02A)
  1982. #define FLEXPWM2_SM0DISMAP1 (IMXRT_FLEXPWM2.offset02C)
  1983. #define FLEXPWM2_SM0DTCNT0 (IMXRT_FLEXPWM2.offset02E)
  1984. #define FLEXPWM2_SM0DTCNT1 (IMXRT_FLEXPWM2.offset030)
  1985. #define FLEXPWM2_SM0CAPTCTRLA (IMXRT_FLEXPWM2.offset032)
  1986. #define FLEXPWM2_SM0CAPTCOMPA (IMXRT_FLEXPWM2.offset034)
  1987. #define FLEXPWM2_SM0CAPTCTRLB (IMXRT_FLEXPWM2.offset036)
  1988. #define FLEXPWM2_SM0CAPTCOMPB (IMXRT_FLEXPWM2.offset038)
  1989. #define FLEXPWM2_SM0CAPTCTRLX (IMXRT_FLEXPWM2.offset03A)
  1990. #define FLEXPWM2_SM0CAPTCOMPX (IMXRT_FLEXPWM2.offset03C)
  1991. #define FLEXPWM2_SM0CVAL0 (IMXRT_FLEXPWM2.offset03E)
  1992. #define FLEXPWM2_SM0CVAL0CYC (IMXRT_FLEXPWM2.offset040)
  1993. #define FLEXPWM2_SM0CVAL1 (IMXRT_FLEXPWM2.offset042)
  1994. #define FLEXPWM2_SM0CVAL1CYC (IMXRT_FLEXPWM2.offset044)
  1995. #define FLEXPWM2_SM0CVAL2 (IMXRT_FLEXPWM2.offset046)
  1996. #define FLEXPWM2_SM0CVAL2CYC (IMXRT_FLEXPWM2.offset048)
  1997. #define FLEXPWM2_SM0CVAL3 (IMXRT_FLEXPWM2.offset04A)
  1998. #define FLEXPWM2_SM0CVAL3CYC (IMXRT_FLEXPWM2.offset04C)
  1999. #define FLEXPWM2_SM0CVAL4 (IMXRT_FLEXPWM2.offset04E)
  2000. #define FLEXPWM2_SM0CVAL4CYC (IMXRT_FLEXPWM2.offset050)
  2001. #define FLEXPWM2_SM0CVAL5 (IMXRT_FLEXPWM2.offset052)
  2002. #define FLEXPWM2_SM0CVAL5CYC (IMXRT_FLEXPWM2.offset054)
  2003. #define FLEXPWM2_SM1CNT (IMXRT_FLEXPWM2.offset060)
  2004. #define FLEXPWM2_SM1INIT (IMXRT_FLEXPWM2.offset062)
  2005. #define FLEXPWM2_SM1CTRL2 (IMXRT_FLEXPWM2.offset064)
  2006. #define FLEXPWM2_SM1CTRL (IMXRT_FLEXPWM2.offset066)
  2007. #define FLEXPWM2_SM1VAL0 (IMXRT_FLEXPWM2.offset068)
  2008. #define FLEXPWM2_SM1FRACVAL1 (IMXRT_FLEXPWM2.offset06A)
  2009. #define FLEXPWM2_SM1VAL1 (IMXRT_FLEXPWM2.offset06C)
  2010. #define FLEXPWM2_SM1FRACVAL2 (IMXRT_FLEXPWM2.offset06E)
  2011. #define FLEXPWM2_SM1VAL2 (IMXRT_FLEXPWM2.offset070)
  2012. #define FLEXPWM2_SM1FRACVAL3 (IMXRT_FLEXPWM2.offset072)
  2013. #define FLEXPWM2_SM1VAL3 (IMXRT_FLEXPWM2.offset074)
  2014. #define FLEXPWM2_SM1FRACVAL4 (IMXRT_FLEXPWM2.offset076)
  2015. #define FLEXPWM2_SM1VAL4 (IMXRT_FLEXPWM2.offset078)
  2016. #define FLEXPWM2_SM1FRACVAL5 (IMXRT_FLEXPWM2.offset07A)
  2017. #define FLEXPWM2_SM1VAL5 (IMXRT_FLEXPWM2.offset07C)
  2018. #define FLEXPWM2_SM1FRCTRL (IMXRT_FLEXPWM2.offset07E)
  2019. #define FLEXPWM2_SM1OCTRL (IMXRT_FLEXPWM2.offset080)
  2020. #define FLEXPWM2_SM1STS (IMXRT_FLEXPWM2.offset082)
  2021. #define FLEXPWM2_SM1INTEN (IMXRT_FLEXPWM2.offset084)
  2022. #define FLEXPWM2_SM1DMAEN (IMXRT_FLEXPWM2.offset086)
  2023. #define FLEXPWM2_SM1TCTRL (IMXRT_FLEXPWM2.offset088)
  2024. #define FLEXPWM2_SM1DISMAP0 (IMXRT_FLEXPWM2.offset08A)
  2025. #define FLEXPWM2_SM1DISMAP1 (IMXRT_FLEXPWM2.offset08C)
  2026. #define FLEXPWM2_SM1DTCNT0 (IMXRT_FLEXPWM2.offset08E)
  2027. #define FLEXPWM2_SM1DTCNT1 (IMXRT_FLEXPWM2.offset090)
  2028. #define FLEXPWM2_SM1CAPTCTRLA (IMXRT_FLEXPWM2.offset092)
  2029. #define FLEXPWM2_SM1CAPTCOMPA (IMXRT_FLEXPWM2.offset094)
  2030. #define FLEXPWM2_SM1CAPTCTRLB (IMXRT_FLEXPWM2.offset096)
  2031. #define FLEXPWM2_SM1CAPTCOMPB (IMXRT_FLEXPWM2.offset098)
  2032. #define FLEXPWM2_SM1CAPTCTRLX (IMXRT_FLEXPWM2.offset09A)
  2033. #define FLEXPWM2_SM1CAPTCOMPX (IMXRT_FLEXPWM2.offset09C)
  2034. #define FLEXPWM2_SM1CVAL0 (IMXRT_FLEXPWM2.offset09E)
  2035. #define FLEXPWM2_SM1CVAL0CYC (IMXRT_FLEXPWM2.offset0A0)
  2036. #define FLEXPWM2_SM1CVAL1 (IMXRT_FLEXPWM2.offset0A2)
  2037. #define FLEXPWM2_SM1CVAL1CYC (IMXRT_FLEXPWM2.offset0A4)
  2038. #define FLEXPWM2_SM1CVAL2 (IMXRT_FLEXPWM2.offset0A6)
  2039. #define FLEXPWM2_SM1CVAL2CYC (IMXRT_FLEXPWM2.offset0A8)
  2040. #define FLEXPWM2_SM1CVAL3 (IMXRT_FLEXPWM2.offset0AA)
  2041. #define FLEXPWM2_SM1CVAL3CYC (IMXRT_FLEXPWM2.offset0AC)
  2042. #define FLEXPWM2_SM1CVAL4 (IMXRT_FLEXPWM2.offset0AE)
  2043. #define FLEXPWM2_SM1CVAL4CYC (IMXRT_FLEXPWM2.offset0B0)
  2044. #define FLEXPWM2_SM1CVAL5 (IMXRT_FLEXPWM2.offset0B2)
  2045. #define FLEXPWM2_SM1CVAL5CYC (IMXRT_FLEXPWM2.offset0B4)
  2046. #define FLEXPWM2_SM2CNT (IMXRT_FLEXPWM2.offset0C0)
  2047. #define FLEXPWM2_SM2INIT (IMXRT_FLEXPWM2.offset0C2)
  2048. #define FLEXPWM2_SM2CTRL2 (IMXRT_FLEXPWM2.offset0C4)
  2049. #define FLEXPWM2_SM2CTRL (IMXRT_FLEXPWM2.offset0C6)
  2050. #define FLEXPWM2_SM2VAL0 (IMXRT_FLEXPWM2.offset0C8)
  2051. #define FLEXPWM2_SM2FRACVAL1 (IMXRT_FLEXPWM2.offset0CA)
  2052. #define FLEXPWM2_SM2VAL1 (IMXRT_FLEXPWM2.offset0CC)
  2053. #define FLEXPWM2_SM2FRACVAL2 (IMXRT_FLEXPWM2.offset0CE)
  2054. #define FLEXPWM2_SM2VAL2 (IMXRT_FLEXPWM2.offset0D0)
  2055. #define FLEXPWM2_SM2FRACVAL3 (IMXRT_FLEXPWM2.offset0D2)
  2056. #define FLEXPWM2_SM2VAL3 (IMXRT_FLEXPWM2.offset0D4)
  2057. #define FLEXPWM2_SM2FRACVAL4 (IMXRT_FLEXPWM2.offset0D6)
  2058. #define FLEXPWM2_SM2VAL4 (IMXRT_FLEXPWM2.offset0D8)
  2059. #define FLEXPWM2_SM2FRACVAL5 (IMXRT_FLEXPWM2.offset0DA)
  2060. #define FLEXPWM2_SM2VAL5 (IMXRT_FLEXPWM2.offset0DC)
  2061. #define FLEXPWM2_SM2FRCTRL (IMXRT_FLEXPWM2.offset0DE)
  2062. #define FLEXPWM2_SM2OCTRL (IMXRT_FLEXPWM2.offset0E0)
  2063. #define FLEXPWM2_SM2STS (IMXRT_FLEXPWM2.offset0E2)
  2064. #define FLEXPWM2_SM2INTEN (IMXRT_FLEXPWM2.offset0E4)
  2065. #define FLEXPWM2_SM2DMAEN (IMXRT_FLEXPWM2.offset0E6)
  2066. #define FLEXPWM2_SM2TCTRL (IMXRT_FLEXPWM2.offset0E8)
  2067. #define FLEXPWM2_SM2DISMAP0 (IMXRT_FLEXPWM2.offset0EA)
  2068. #define FLEXPWM2_SM2DISMAP1 (IMXRT_FLEXPWM2.offset0EC)
  2069. #define FLEXPWM2_SM2DTCNT0 (IMXRT_FLEXPWM2.offset0EE)
  2070. #define FLEXPWM2_SM2DTCNT1 (IMXRT_FLEXPWM2.offset0F0)
  2071. #define FLEXPWM2_SM2CAPTCTRLA (IMXRT_FLEXPWM2.offset0F2)
  2072. #define FLEXPWM2_SM2CAPTCOMPA (IMXRT_FLEXPWM2.offset0F4)
  2073. #define FLEXPWM2_SM2CAPTCTRLB (IMXRT_FLEXPWM2.offset0F6)
  2074. #define FLEXPWM2_SM2CAPTCOMPB (IMXRT_FLEXPWM2.offset0F8)
  2075. #define FLEXPWM2_SM2CAPTCTRLX (IMXRT_FLEXPWM2.offset0FA)
  2076. #define FLEXPWM2_SM2CAPTCOMPX (IMXRT_FLEXPWM2.offset0FC)
  2077. #define FLEXPWM2_SM2CVAL0 (IMXRT_FLEXPWM2.offset0FE)
  2078. #define FLEXPWM2_SM2CVAL0CYC (IMXRT_FLEXPWM2.offset100)
  2079. #define FLEXPWM2_SM2CVAL1 (IMXRT_FLEXPWM2.offset102)
  2080. #define FLEXPWM2_SM2CVAL1CYC (IMXRT_FLEXPWM2.offset104)
  2081. #define FLEXPWM2_SM2CVAL2 (IMXRT_FLEXPWM2.offset106)
  2082. #define FLEXPWM2_SM2CVAL2CYC (IMXRT_FLEXPWM2.offset108)
  2083. #define FLEXPWM2_SM2CVAL3 (IMXRT_FLEXPWM2.offset10A)
  2084. #define FLEXPWM2_SM2CVAL3CYC (IMXRT_FLEXPWM2.offset10C)
  2085. #define FLEXPWM2_SM2CVAL4 (IMXRT_FLEXPWM2.offset10E)
  2086. #define FLEXPWM2_SM2CVAL4CYC (IMXRT_FLEXPWM2.offset110)
  2087. #define FLEXPWM2_SM2CVAL5 (IMXRT_FLEXPWM2.offset112)
  2088. #define FLEXPWM2_SM2CVAL5CYC (IMXRT_FLEXPWM2.offset114)
  2089. #define FLEXPWM2_SM3CNT (IMXRT_FLEXPWM2.offset120)
  2090. #define FLEXPWM2_SM3INIT (IMXRT_FLEXPWM2.offset122)
  2091. #define FLEXPWM2_SM3CTRL2 (IMXRT_FLEXPWM2.offset124)
  2092. #define FLEXPWM2_SM3CTRL (IMXRT_FLEXPWM2.offset126)
  2093. #define FLEXPWM2_SM3VAL0 (IMXRT_FLEXPWM2.offset128)
  2094. #define FLEXPWM2_SM3FRACVAL1 (IMXRT_FLEXPWM2.offset12A)
  2095. #define FLEXPWM2_SM3VAL1 (IMXRT_FLEXPWM2.offset12C)
  2096. #define FLEXPWM2_SM3FRACVAL2 (IMXRT_FLEXPWM2.offset12E)
  2097. #define FLEXPWM2_SM3VAL2 (IMXRT_FLEXPWM2.offset130)
  2098. #define FLEXPWM2_SM3FRACVAL3 (IMXRT_FLEXPWM2.offset132)
  2099. #define FLEXPWM2_SM3VAL3 (IMXRT_FLEXPWM2.offset134)
  2100. #define FLEXPWM2_SM3FRACVAL4 (IMXRT_FLEXPWM2.offset136)
  2101. #define FLEXPWM2_SM3VAL4 (IMXRT_FLEXPWM2.offset138)
  2102. #define FLEXPWM2_SM3FRACVAL5 (IMXRT_FLEXPWM2.offset13A)
  2103. #define FLEXPWM2_SM3VAL5 (IMXRT_FLEXPWM2.offset13C)
  2104. #define FLEXPWM2_SM3FRCTRL (IMXRT_FLEXPWM2.offset13E)
  2105. #define FLEXPWM2_SM3OCTRL (IMXRT_FLEXPWM2.offset140)
  2106. #define FLEXPWM2_SM3STS (IMXRT_FLEXPWM2.offset142)
  2107. #define FLEXPWM2_SM3INTEN (IMXRT_FLEXPWM2.offset144)
  2108. #define FLEXPWM2_SM3DMAEN (IMXRT_FLEXPWM2.offset146)
  2109. #define FLEXPWM2_SM3TCTRL (IMXRT_FLEXPWM2.offset148)
  2110. #define FLEXPWM2_SM3DISMAP0 (IMXRT_FLEXPWM2.offset14A)
  2111. #define FLEXPWM2_SM3DISMAP1 (IMXRT_FLEXPWM2.offset14C)
  2112. #define FLEXPWM2_SM3DTCNT0 (IMXRT_FLEXPWM2.offset15E)
  2113. #define FLEXPWM2_SM3DTCNT1 (IMXRT_FLEXPWM2.offset150)
  2114. #define FLEXPWM2_SM3CAPTCTRLA (IMXRT_FLEXPWM2.offset152)
  2115. #define FLEXPWM2_SM3CAPTCOMPA (IMXRT_FLEXPWM2.offset154)
  2116. #define FLEXPWM2_SM3CAPTCTRLB (IMXRT_FLEXPWM2.offset156)
  2117. #define FLEXPWM2_SM3CAPTCOMPB (IMXRT_FLEXPWM2.offset158)
  2118. #define FLEXPWM2_SM3CAPTCTRLX (IMXRT_FLEXPWM2.offset15A)
  2119. #define FLEXPWM2_SM3CAPTCOMPX (IMXRT_FLEXPWM2.offset15C)
  2120. #define FLEXPWM2_SM3CVAL0 (IMXRT_FLEXPWM2.offset15E)
  2121. #define FLEXPWM2_SM3CVAL0CYC (IMXRT_FLEXPWM2.offset160)
  2122. #define FLEXPWM2_SM3CVAL1 (IMXRT_FLEXPWM2.offset162)
  2123. #define FLEXPWM2_SM3CVAL1CYC (IMXRT_FLEXPWM2.offset164)
  2124. #define FLEXPWM2_SM3CVAL2 (IMXRT_FLEXPWM2.offset166)
  2125. #define FLEXPWM2_SM3CVAL2CYC (IMXRT_FLEXPWM2.offset168)
  2126. #define FLEXPWM2_SM3CVAL3 (IMXRT_FLEXPWM2.offset16A)
  2127. #define FLEXPWM2_SM3CVAL3CYC (IMXRT_FLEXPWM2.offset16C)
  2128. #define FLEXPWM2_SM3CVAL4 (IMXRT_FLEXPWM2.offset16E)
  2129. #define FLEXPWM2_SM3CVAL4CYC (IMXRT_FLEXPWM2.offset170)
  2130. #define FLEXPWM2_SM3CVAL5 (IMXRT_FLEXPWM2.offset172)
  2131. #define FLEXPWM2_SM3CVAL5CYC (IMXRT_FLEXPWM2.offset174)
  2132. #define FLEXPWM2_OUTEN (IMXRT_FLEXPWM2.offset180)
  2133. #define FLEXPWM2_MASK (IMXRT_FLEXPWM2.offset182)
  2134. #define FLEXPWM2_SWCOUT (IMXRT_FLEXPWM2.offset184)
  2135. #define FLEXPWM2_DTSRCSEL (IMXRT_FLEXPWM2.offset186)
  2136. #define FLEXPWM2_MCTRL (IMXRT_FLEXPWM2.offset188)
  2137. #define FLEXPWM2_MCTRL2 (IMXRT_FLEXPWM2.offset18A)
  2138. #define FLEXPWM2_FCTRL0 (IMXRT_FLEXPWM2.offset18C)
  2139. #define FLEXPWM2_FSTS0 (IMXRT_FLEXPWM2.offset18E)
  2140. #define FLEXPWM2_FFILT0 (IMXRT_FLEXPWM2.offset190)
  2141. #define FLEXPWM2_FTST0 (IMXRT_FLEXPWM2.offset192)
  2142. #define FLEXPWM2_FCTRL20 (IMXRT_FLEXPWM2.offset194)
  2143. #define IMXRT_FLEXPWM3 (*(IMXRT_REGISTER16_t *)0x403E4000)
  2144. #define FLEXPWM3_SM0CNT (IMXRT_FLEXPWM3.offset000)
  2145. #define FLEXPWM3_SM0INIT (IMXRT_FLEXPWM3.offset002)
  2146. #define FLEXPWM3_SM0CTRL2 (IMXRT_FLEXPWM3.offset004)
  2147. #define FLEXPWM3_SM0CTRL (IMXRT_FLEXPWM3.offset006)
  2148. #define FLEXPWM3_SM0VAL0 (IMXRT_FLEXPWM3.offset008)
  2149. #define FLEXPWM3_SM0FRACVAL1 (IMXRT_FLEXPWM3.offset00A)
  2150. #define FLEXPWM3_SM0VAL1 (IMXRT_FLEXPWM3.offset00C)
  2151. #define FLEXPWM3_SM0FRACVAL2 (IMXRT_FLEXPWM3.offset00E)
  2152. #define FLEXPWM3_SM0VAL2 (IMXRT_FLEXPWM3.offset010)
  2153. #define FLEXPWM3_SM0FRACVAL3 (IMXRT_FLEXPWM3.offset012)
  2154. #define FLEXPWM3_SM0VAL3 (IMXRT_FLEXPWM3.offset014)
  2155. #define FLEXPWM3_SM0FRACVAL4 (IMXRT_FLEXPWM3.offset016)
  2156. #define FLEXPWM3_SM0VAL4 (IMXRT_FLEXPWM3.offset018)
  2157. #define FLEXPWM3_SM0FRACVAL5 (IMXRT_FLEXPWM3.offset01A)
  2158. #define FLEXPWM3_SM0VAL5 (IMXRT_FLEXPWM3.offset01C)
  2159. #define FLEXPWM3_SM0FRCTRL (IMXRT_FLEXPWM3.offset01E)
  2160. #define FLEXPWM3_SM0OCTRL (IMXRT_FLEXPWM3.offset020)
  2161. #define FLEXPWM3_SM0STS (IMXRT_FLEXPWM3.offset022)
  2162. #define FLEXPWM3_SM0INTEN (IMXRT_FLEXPWM3.offset024)
  2163. #define FLEXPWM3_SM0DMAEN (IMXRT_FLEXPWM3.offset026)
  2164. #define FLEXPWM3_SM0TCTRL (IMXRT_FLEXPWM3.offset028)
  2165. #define FLEXPWM3_SM0DISMAP0 (IMXRT_FLEXPWM3.offset02A)
  2166. #define FLEXPWM3_SM0DISMAP1 (IMXRT_FLEXPWM3.offset02C)
  2167. #define FLEXPWM3_SM0DTCNT0 (IMXRT_FLEXPWM3.offset02E)
  2168. #define FLEXPWM3_SM0DTCNT1 (IMXRT_FLEXPWM3.offset030)
  2169. #define FLEXPWM3_SM0CAPTCTRLA (IMXRT_FLEXPWM3.offset032)
  2170. #define FLEXPWM3_SM0CAPTCOMPA (IMXRT_FLEXPWM3.offset034)
  2171. #define FLEXPWM3_SM0CAPTCTRLB (IMXRT_FLEXPWM3.offset036)
  2172. #define FLEXPWM3_SM0CAPTCOMPB (IMXRT_FLEXPWM3.offset038)
  2173. #define FLEXPWM3_SM0CAPTCTRLX (IMXRT_FLEXPWM3.offset03A)
  2174. #define FLEXPWM3_SM0CAPTCOMPX (IMXRT_FLEXPWM3.offset03C)
  2175. #define FLEXPWM3_SM0CVAL0 (IMXRT_FLEXPWM3.offset03E)
  2176. #define FLEXPWM3_SM0CVAL0CYC (IMXRT_FLEXPWM3.offset040)
  2177. #define FLEXPWM3_SM0CVAL1 (IMXRT_FLEXPWM3.offset042)
  2178. #define FLEXPWM3_SM0CVAL1CYC (IMXRT_FLEXPWM3.offset044)
  2179. #define FLEXPWM3_SM0CVAL2 (IMXRT_FLEXPWM3.offset046)
  2180. #define FLEXPWM3_SM0CVAL2CYC (IMXRT_FLEXPWM3.offset048)
  2181. #define FLEXPWM3_SM0CVAL3 (IMXRT_FLEXPWM3.offset04A)
  2182. #define FLEXPWM3_SM0CVAL3CYC (IMXRT_FLEXPWM3.offset04C)
  2183. #define FLEXPWM3_SM0CVAL4 (IMXRT_FLEXPWM3.offset04E)
  2184. #define FLEXPWM3_SM0CVAL4CYC (IMXRT_FLEXPWM3.offset050)
  2185. #define FLEXPWM3_SM0CVAL5 (IMXRT_FLEXPWM3.offset052)
  2186. #define FLEXPWM3_SM0CVAL5CYC (IMXRT_FLEXPWM3.offset054)
  2187. #define FLEXPWM3_SM1CNT (IMXRT_FLEXPWM3.offset060)
  2188. #define FLEXPWM3_SM1INIT (IMXRT_FLEXPWM3.offset062)
  2189. #define FLEXPWM3_SM1CTRL2 (IMXRT_FLEXPWM3.offset064)
  2190. #define FLEXPWM3_SM1CTRL (IMXRT_FLEXPWM3.offset066)
  2191. #define FLEXPWM3_SM1VAL0 (IMXRT_FLEXPWM3.offset068)
  2192. #define FLEXPWM3_SM1FRACVAL1 (IMXRT_FLEXPWM3.offset06A)
  2193. #define FLEXPWM3_SM1VAL1 (IMXRT_FLEXPWM3.offset06C)
  2194. #define FLEXPWM3_SM1FRACVAL2 (IMXRT_FLEXPWM3.offset06E)
  2195. #define FLEXPWM3_SM1VAL2 (IMXRT_FLEXPWM3.offset070)
  2196. #define FLEXPWM3_SM1FRACVAL3 (IMXRT_FLEXPWM3.offset072)
  2197. #define FLEXPWM3_SM1VAL3 (IMXRT_FLEXPWM3.offset074)
  2198. #define FLEXPWM3_SM1FRACVAL4 (IMXRT_FLEXPWM3.offset076)
  2199. #define FLEXPWM3_SM1VAL4 (IMXRT_FLEXPWM3.offset078)
  2200. #define FLEXPWM3_SM1FRACVAL5 (IMXRT_FLEXPWM3.offset07A)
  2201. #define FLEXPWM3_SM1VAL5 (IMXRT_FLEXPWM3.offset07C)
  2202. #define FLEXPWM3_SM1FRCTRL (IMXRT_FLEXPWM3.offset07E)
  2203. #define FLEXPWM3_SM1OCTRL (IMXRT_FLEXPWM3.offset080)
  2204. #define FLEXPWM3_SM1STS (IMXRT_FLEXPWM3.offset082)
  2205. #define FLEXPWM3_SM1INTEN (IMXRT_FLEXPWM3.offset084)
  2206. #define FLEXPWM3_SM1DMAEN (IMXRT_FLEXPWM3.offset086)
  2207. #define FLEXPWM3_SM1TCTRL (IMXRT_FLEXPWM3.offset088)
  2208. #define FLEXPWM3_SM1DISMAP0 (IMXRT_FLEXPWM3.offset08A)
  2209. #define FLEXPWM3_SM1DISMAP1 (IMXRT_FLEXPWM3.offset08C)
  2210. #define FLEXPWM3_SM1DTCNT0 (IMXRT_FLEXPWM3.offset08E)
  2211. #define FLEXPWM3_SM1DTCNT1 (IMXRT_FLEXPWM3.offset090)
  2212. #define FLEXPWM3_SM1CAPTCTRLA (IMXRT_FLEXPWM3.offset092)
  2213. #define FLEXPWM3_SM1CAPTCOMPA (IMXRT_FLEXPWM3.offset094)
  2214. #define FLEXPWM3_SM1CAPTCTRLB (IMXRT_FLEXPWM3.offset096)
  2215. #define FLEXPWM3_SM1CAPTCOMPB (IMXRT_FLEXPWM3.offset098)
  2216. #define FLEXPWM3_SM1CAPTCTRLX (IMXRT_FLEXPWM3.offset09A)
  2217. #define FLEXPWM3_SM1CAPTCOMPX (IMXRT_FLEXPWM3.offset09C)
  2218. #define FLEXPWM3_SM1CVAL0 (IMXRT_FLEXPWM3.offset09E)
  2219. #define FLEXPWM3_SM1CVAL0CYC (IMXRT_FLEXPWM3.offset0A0)
  2220. #define FLEXPWM3_SM1CVAL1 (IMXRT_FLEXPWM3.offset0A2)
  2221. #define FLEXPWM3_SM1CVAL1CYC (IMXRT_FLEXPWM3.offset0A4)
  2222. #define FLEXPWM3_SM1CVAL2 (IMXRT_FLEXPWM3.offset0A6)
  2223. #define FLEXPWM3_SM1CVAL2CYC (IMXRT_FLEXPWM3.offset0A8)
  2224. #define FLEXPWM3_SM1CVAL3 (IMXRT_FLEXPWM3.offset0AA)
  2225. #define FLEXPWM3_SM1CVAL3CYC (IMXRT_FLEXPWM3.offset0AC)
  2226. #define FLEXPWM3_SM1CVAL4 (IMXRT_FLEXPWM3.offset0AE)
  2227. #define FLEXPWM3_SM1CVAL4CYC (IMXRT_FLEXPWM3.offset0B0)
  2228. #define FLEXPWM3_SM1CVAL5 (IMXRT_FLEXPWM3.offset0B2)
  2229. #define FLEXPWM3_SM1CVAL5CYC (IMXRT_FLEXPWM3.offset0B4)
  2230. #define FLEXPWM3_SM2CNT (IMXRT_FLEXPWM3.offset0C0)
  2231. #define FLEXPWM3_SM2INIT (IMXRT_FLEXPWM3.offset0C2)
  2232. #define FLEXPWM3_SM2CTRL2 (IMXRT_FLEXPWM3.offset0C4)
  2233. #define FLEXPWM3_SM2CTRL (IMXRT_FLEXPWM3.offset0C6)
  2234. #define FLEXPWM3_SM2VAL0 (IMXRT_FLEXPWM3.offset0C8)
  2235. #define FLEXPWM3_SM2FRACVAL1 (IMXRT_FLEXPWM3.offset0CA)
  2236. #define FLEXPWM3_SM2VAL1 (IMXRT_FLEXPWM3.offset0CC)
  2237. #define FLEXPWM3_SM2FRACVAL2 (IMXRT_FLEXPWM3.offset0CE)
  2238. #define FLEXPWM3_SM2VAL2 (IMXRT_FLEXPWM3.offset0D0)
  2239. #define FLEXPWM3_SM2FRACVAL3 (IMXRT_FLEXPWM3.offset0D2)
  2240. #define FLEXPWM3_SM2VAL3 (IMXRT_FLEXPWM3.offset0D4)
  2241. #define FLEXPWM3_SM2FRACVAL4 (IMXRT_FLEXPWM3.offset0D6)
  2242. #define FLEXPWM3_SM2VAL4 (IMXRT_FLEXPWM3.offset0D8)
  2243. #define FLEXPWM3_SM2FRACVAL5 (IMXRT_FLEXPWM3.offset0DA)
  2244. #define FLEXPWM3_SM2VAL5 (IMXRT_FLEXPWM3.offset0DC)
  2245. #define FLEXPWM3_SM2FRCTRL (IMXRT_FLEXPWM3.offset0DE)
  2246. #define FLEXPWM3_SM2OCTRL (IMXRT_FLEXPWM3.offset0E0)
  2247. #define FLEXPWM3_SM2STS (IMXRT_FLEXPWM3.offset0E2)
  2248. #define FLEXPWM3_SM2INTEN (IMXRT_FLEXPWM3.offset0E4)
  2249. #define FLEXPWM3_SM2DMAEN (IMXRT_FLEXPWM3.offset0E6)
  2250. #define FLEXPWM3_SM2TCTRL (IMXRT_FLEXPWM3.offset0E8)
  2251. #define FLEXPWM3_SM2DISMAP0 (IMXRT_FLEXPWM3.offset0EA)
  2252. #define FLEXPWM3_SM2DISMAP1 (IMXRT_FLEXPWM3.offset0EC)
  2253. #define FLEXPWM3_SM2DTCNT0 (IMXRT_FLEXPWM3.offset0EE)
  2254. #define FLEXPWM3_SM2DTCNT1 (IMXRT_FLEXPWM3.offset0F0)
  2255. #define FLEXPWM3_SM2CAPTCTRLA (IMXRT_FLEXPWM3.offset0F2)
  2256. #define FLEXPWM3_SM2CAPTCOMPA (IMXRT_FLEXPWM3.offset0F4)
  2257. #define FLEXPWM3_SM2CAPTCTRLB (IMXRT_FLEXPWM3.offset0F6)
  2258. #define FLEXPWM3_SM2CAPTCOMPB (IMXRT_FLEXPWM3.offset0F8)
  2259. #define FLEXPWM3_SM2CAPTCTRLX (IMXRT_FLEXPWM3.offset0FA)
  2260. #define FLEXPWM3_SM2CAPTCOMPX (IMXRT_FLEXPWM3.offset0FC)
  2261. #define FLEXPWM3_SM2CVAL0 (IMXRT_FLEXPWM3.offset0FE)
  2262. #define FLEXPWM3_SM2CVAL0CYC (IMXRT_FLEXPWM3.offset100)
  2263. #define FLEXPWM3_SM2CVAL1 (IMXRT_FLEXPWM3.offset102)
  2264. #define FLEXPWM3_SM2CVAL1CYC (IMXRT_FLEXPWM3.offset104)
  2265. #define FLEXPWM3_SM2CVAL2 (IMXRT_FLEXPWM3.offset106)
  2266. #define FLEXPWM3_SM2CVAL2CYC (IMXRT_FLEXPWM3.offset108)
  2267. #define FLEXPWM3_SM2CVAL3 (IMXRT_FLEXPWM3.offset10A)
  2268. #define FLEXPWM3_SM2CVAL3CYC (IMXRT_FLEXPWM3.offset10C)
  2269. #define FLEXPWM3_SM2CVAL4 (IMXRT_FLEXPWM3.offset10E)
  2270. #define FLEXPWM3_SM2CVAL4CYC (IMXRT_FLEXPWM3.offset110)
  2271. #define FLEXPWM3_SM2CVAL5 (IMXRT_FLEXPWM3.offset112)
  2272. #define FLEXPWM3_SM2CVAL5CYC (IMXRT_FLEXPWM3.offset114)
  2273. #define FLEXPWM3_SM3CNT (IMXRT_FLEXPWM3.offset120)
  2274. #define FLEXPWM3_SM3INIT (IMXRT_FLEXPWM3.offset122)
  2275. #define FLEXPWM3_SM3CTRL2 (IMXRT_FLEXPWM3.offset124)
  2276. #define FLEXPWM3_SM3CTRL (IMXRT_FLEXPWM3.offset126)
  2277. #define FLEXPWM3_SM3VAL0 (IMXRT_FLEXPWM3.offset128)
  2278. #define FLEXPWM3_SM3FRACVAL1 (IMXRT_FLEXPWM3.offset12A)
  2279. #define FLEXPWM3_SM3VAL1 (IMXRT_FLEXPWM3.offset12C)
  2280. #define FLEXPWM3_SM3FRACVAL2 (IMXRT_FLEXPWM3.offset12E)
  2281. #define FLEXPWM3_SM3VAL2 (IMXRT_FLEXPWM3.offset130)
  2282. #define FLEXPWM3_SM3FRACVAL3 (IMXRT_FLEXPWM3.offset132)
  2283. #define FLEXPWM3_SM3VAL3 (IMXRT_FLEXPWM3.offset134)
  2284. #define FLEXPWM3_SM3FRACVAL4 (IMXRT_FLEXPWM3.offset136)
  2285. #define FLEXPWM3_SM3VAL4 (IMXRT_FLEXPWM3.offset138)
  2286. #define FLEXPWM3_SM3FRACVAL5 (IMXRT_FLEXPWM3.offset13A)
  2287. #define FLEXPWM3_SM3VAL5 (IMXRT_FLEXPWM3.offset13C)
  2288. #define FLEXPWM3_SM3FRCTRL (IMXRT_FLEXPWM3.offset13E)
  2289. #define FLEXPWM3_SM3OCTRL (IMXRT_FLEXPWM3.offset140)
  2290. #define FLEXPWM3_SM3STS (IMXRT_FLEXPWM3.offset142)
  2291. #define FLEXPWM3_SM3INTEN (IMXRT_FLEXPWM3.offset144)
  2292. #define FLEXPWM3_SM3DMAEN (IMXRT_FLEXPWM3.offset146)
  2293. #define FLEXPWM3_SM3TCTRL (IMXRT_FLEXPWM3.offset148)
  2294. #define FLEXPWM3_SM3DISMAP0 (IMXRT_FLEXPWM3.offset14A)
  2295. #define FLEXPWM3_SM3DISMAP1 (IMXRT_FLEXPWM3.offset14C)
  2296. #define FLEXPWM3_SM3DTCNT0 (IMXRT_FLEXPWM3.offset15E)
  2297. #define FLEXPWM3_SM3DTCNT1 (IMXRT_FLEXPWM3.offset150)
  2298. #define FLEXPWM3_SM3CAPTCTRLA (IMXRT_FLEXPWM3.offset152)
  2299. #define FLEXPWM3_SM3CAPTCOMPA (IMXRT_FLEXPWM3.offset154)
  2300. #define FLEXPWM3_SM3CAPTCTRLB (IMXRT_FLEXPWM3.offset156)
  2301. #define FLEXPWM3_SM3CAPTCOMPB (IMXRT_FLEXPWM3.offset158)
  2302. #define FLEXPWM3_SM3CAPTCTRLX (IMXRT_FLEXPWM3.offset15A)
  2303. #define FLEXPWM3_SM3CAPTCOMPX (IMXRT_FLEXPWM3.offset15C)
  2304. #define FLEXPWM3_SM3CVAL0 (IMXRT_FLEXPWM3.offset15E)
  2305. #define FLEXPWM3_SM3CVAL0CYC (IMXRT_FLEXPWM3.offset160)
  2306. #define FLEXPWM3_SM3CVAL1 (IMXRT_FLEXPWM3.offset162)
  2307. #define FLEXPWM3_SM3CVAL1CYC (IMXRT_FLEXPWM3.offset164)
  2308. #define FLEXPWM3_SM3CVAL2 (IMXRT_FLEXPWM3.offset166)
  2309. #define FLEXPWM3_SM3CVAL2CYC (IMXRT_FLEXPWM3.offset168)
  2310. #define FLEXPWM3_SM3CVAL3 (IMXRT_FLEXPWM3.offset16A)
  2311. #define FLEXPWM3_SM3CVAL3CYC (IMXRT_FLEXPWM3.offset16C)
  2312. #define FLEXPWM3_SM3CVAL4 (IMXRT_FLEXPWM3.offset16E)
  2313. #define FLEXPWM3_SM3CVAL4CYC (IMXRT_FLEXPWM3.offset170)
  2314. #define FLEXPWM3_SM3CVAL5 (IMXRT_FLEXPWM3.offset172)
  2315. #define FLEXPWM3_SM3CVAL5CYC (IMXRT_FLEXPWM3.offset174)
  2316. #define FLEXPWM3_OUTEN (IMXRT_FLEXPWM3.offset180)
  2317. #define FLEXPWM3_MASK (IMXRT_FLEXPWM3.offset182)
  2318. #define FLEXPWM3_SWCOUT (IMXRT_FLEXPWM3.offset184)
  2319. #define FLEXPWM3_DTSRCSEL (IMXRT_FLEXPWM3.offset186)
  2320. #define FLEXPWM3_MCTRL (IMXRT_FLEXPWM3.offset188)
  2321. #define FLEXPWM3_MCTRL2 (IMXRT_FLEXPWM3.offset18A)
  2322. #define FLEXPWM3_FCTRL0 (IMXRT_FLEXPWM3.offset18C)
  2323. #define FLEXPWM3_FSTS0 (IMXRT_FLEXPWM3.offset18E)
  2324. #define FLEXPWM3_FFILT0 (IMXRT_FLEXPWM3.offset190)
  2325. #define FLEXPWM3_FTST0 (IMXRT_FLEXPWM3.offset192)
  2326. #define FLEXPWM3_FCTRL20 (IMXRT_FLEXPWM3.offset194)
  2327. #define IMXRT_FLEXPWM4 (*(IMXRT_REGISTER16_t *)0x403E8000)
  2328. #define FLEXPWM4_SM0CNT (IMXRT_FLEXPWM4.offset000)
  2329. #define FLEXPWM4_SM0INIT (IMXRT_FLEXPWM4.offset002)
  2330. #define FLEXPWM4_SM0CTRL2 (IMXRT_FLEXPWM4.offset004)
  2331. #define FLEXPWM4_SM0CTRL (IMXRT_FLEXPWM4.offset006)
  2332. #define FLEXPWM4_SM0VAL0 (IMXRT_FLEXPWM4.offset008)
  2333. #define FLEXPWM4_SM0FRACVAL1 (IMXRT_FLEXPWM4.offset00A)
  2334. #define FLEXPWM4_SM0VAL1 (IMXRT_FLEXPWM4.offset00C)
  2335. #define FLEXPWM4_SM0FRACVAL2 (IMXRT_FLEXPWM4.offset00E)
  2336. #define FLEXPWM4_SM0VAL2 (IMXRT_FLEXPWM4.offset010)
  2337. #define FLEXPWM4_SM0FRACVAL3 (IMXRT_FLEXPWM4.offset012)
  2338. #define FLEXPWM4_SM0VAL3 (IMXRT_FLEXPWM4.offset014)
  2339. #define FLEXPWM4_SM0FRACVAL4 (IMXRT_FLEXPWM4.offset016)
  2340. #define FLEXPWM4_SM0VAL4 (IMXRT_FLEXPWM4.offset018)
  2341. #define FLEXPWM4_SM0FRACVAL5 (IMXRT_FLEXPWM4.offset01A)
  2342. #define FLEXPWM4_SM0VAL5 (IMXRT_FLEXPWM4.offset01C)
  2343. #define FLEXPWM4_SM0FRCTRL (IMXRT_FLEXPWM4.offset01E)
  2344. #define FLEXPWM4_SM0OCTRL (IMXRT_FLEXPWM4.offset020)
  2345. #define FLEXPWM4_SM0STS (IMXRT_FLEXPWM4.offset022)
  2346. #define FLEXPWM4_SM0INTEN (IMXRT_FLEXPWM4.offset024)
  2347. #define FLEXPWM4_SM0DMAEN (IMXRT_FLEXPWM4.offset026)
  2348. #define FLEXPWM4_SM0TCTRL (IMXRT_FLEXPWM4.offset028)
  2349. #define FLEXPWM4_SM0DISMAP0 (IMXRT_FLEXPWM4.offset02A)
  2350. #define FLEXPWM4_SM0DISMAP1 (IMXRT_FLEXPWM4.offset02C)
  2351. #define FLEXPWM4_SM0DTCNT0 (IMXRT_FLEXPWM4.offset02E)
  2352. #define FLEXPWM4_SM0DTCNT1 (IMXRT_FLEXPWM4.offset030)
  2353. #define FLEXPWM4_SM0CAPTCTRLA (IMXRT_FLEXPWM4.offset032)
  2354. #define FLEXPWM4_SM0CAPTCOMPA (IMXRT_FLEXPWM4.offset034)
  2355. #define FLEXPWM4_SM0CAPTCTRLB (IMXRT_FLEXPWM4.offset036)
  2356. #define FLEXPWM4_SM0CAPTCOMPB (IMXRT_FLEXPWM4.offset038)
  2357. #define FLEXPWM4_SM0CAPTCTRLX (IMXRT_FLEXPWM4.offset03A)
  2358. #define FLEXPWM4_SM0CAPTCOMPX (IMXRT_FLEXPWM4.offset03C)
  2359. #define FLEXPWM4_SM0CVAL0 (IMXRT_FLEXPWM4.offset03E)
  2360. #define FLEXPWM4_SM0CVAL0CYC (IMXRT_FLEXPWM4.offset040)
  2361. #define FLEXPWM4_SM0CVAL1 (IMXRT_FLEXPWM4.offset042)
  2362. #define FLEXPWM4_SM0CVAL1CYC (IMXRT_FLEXPWM4.offset044)
  2363. #define FLEXPWM4_SM0CVAL2 (IMXRT_FLEXPWM4.offset046)
  2364. #define FLEXPWM4_SM0CVAL2CYC (IMXRT_FLEXPWM4.offset048)
  2365. #define FLEXPWM4_SM0CVAL3 (IMXRT_FLEXPWM4.offset04A)
  2366. #define FLEXPWM4_SM0CVAL3CYC (IMXRT_FLEXPWM4.offset04C)
  2367. #define FLEXPWM4_SM0CVAL4 (IMXRT_FLEXPWM4.offset04E)
  2368. #define FLEXPWM4_SM0CVAL4CYC (IMXRT_FLEXPWM4.offset050)
  2369. #define FLEXPWM4_SM0CVAL5 (IMXRT_FLEXPWM4.offset052)
  2370. #define FLEXPWM4_SM0CVAL5CYC (IMXRT_FLEXPWM4.offset054)
  2371. #define FLEXPWM4_SM1CNT (IMXRT_FLEXPWM4.offset060)
  2372. #define FLEXPWM4_SM1INIT (IMXRT_FLEXPWM4.offset062)
  2373. #define FLEXPWM4_SM1CTRL2 (IMXRT_FLEXPWM4.offset064)
  2374. #define FLEXPWM4_SM1CTRL (IMXRT_FLEXPWM4.offset066)
  2375. #define FLEXPWM4_SM1VAL0 (IMXRT_FLEXPWM4.offset068)
  2376. #define FLEXPWM4_SM1FRACVAL1 (IMXRT_FLEXPWM4.offset06A)
  2377. #define FLEXPWM4_SM1VAL1 (IMXRT_FLEXPWM4.offset06C)
  2378. #define FLEXPWM4_SM1FRACVAL2 (IMXRT_FLEXPWM4.offset06E)
  2379. #define FLEXPWM4_SM1VAL2 (IMXRT_FLEXPWM4.offset070)
  2380. #define FLEXPWM4_SM1FRACVAL3 (IMXRT_FLEXPWM4.offset072)
  2381. #define FLEXPWM4_SM1VAL3 (IMXRT_FLEXPWM4.offset074)
  2382. #define FLEXPWM4_SM1FRACVAL4 (IMXRT_FLEXPWM4.offset076)
  2383. #define FLEXPWM4_SM1VAL4 (IMXRT_FLEXPWM4.offset078)
  2384. #define FLEXPWM4_SM1FRACVAL5 (IMXRT_FLEXPWM4.offset07A)
  2385. #define FLEXPWM4_SM1VAL5 (IMXRT_FLEXPWM4.offset07C)
  2386. #define FLEXPWM4_SM1FRCTRL (IMXRT_FLEXPWM4.offset07E)
  2387. #define FLEXPWM4_SM1OCTRL (IMXRT_FLEXPWM4.offset080)
  2388. #define FLEXPWM4_SM1STS (IMXRT_FLEXPWM4.offset082)
  2389. #define FLEXPWM4_SM1INTEN (IMXRT_FLEXPWM4.offset084)
  2390. #define FLEXPWM4_SM1DMAEN (IMXRT_FLEXPWM4.offset086)
  2391. #define FLEXPWM4_SM1TCTRL (IMXRT_FLEXPWM4.offset088)
  2392. #define FLEXPWM4_SM1DISMAP0 (IMXRT_FLEXPWM4.offset08A)
  2393. #define FLEXPWM4_SM1DISMAP1 (IMXRT_FLEXPWM4.offset08C)
  2394. #define FLEXPWM4_SM1DTCNT0 (IMXRT_FLEXPWM4.offset08E)
  2395. #define FLEXPWM4_SM1DTCNT1 (IMXRT_FLEXPWM4.offset090)
  2396. #define FLEXPWM4_SM1CAPTCTRLA (IMXRT_FLEXPWM4.offset092)
  2397. #define FLEXPWM4_SM1CAPTCOMPA (IMXRT_FLEXPWM4.offset094)
  2398. #define FLEXPWM4_SM1CAPTCTRLB (IMXRT_FLEXPWM4.offset096)
  2399. #define FLEXPWM4_SM1CAPTCOMPB (IMXRT_FLEXPWM4.offset098)
  2400. #define FLEXPWM4_SM1CAPTCTRLX (IMXRT_FLEXPWM4.offset09A)
  2401. #define FLEXPWM4_SM1CAPTCOMPX (IMXRT_FLEXPWM4.offset09C)
  2402. #define FLEXPWM4_SM1CVAL0 (IMXRT_FLEXPWM4.offset09E)
  2403. #define FLEXPWM4_SM1CVAL0CYC (IMXRT_FLEXPWM4.offset0A0)
  2404. #define FLEXPWM4_SM1CVAL1 (IMXRT_FLEXPWM4.offset0A2)
  2405. #define FLEXPWM4_SM1CVAL1CYC (IMXRT_FLEXPWM4.offset0A4)
  2406. #define FLEXPWM4_SM1CVAL2 (IMXRT_FLEXPWM4.offset0A6)
  2407. #define FLEXPWM4_SM1CVAL2CYC (IMXRT_FLEXPWM4.offset0A8)
  2408. #define FLEXPWM4_SM1CVAL3 (IMXRT_FLEXPWM4.offset0AA)
  2409. #define FLEXPWM4_SM1CVAL3CYC (IMXRT_FLEXPWM4.offset0AC)
  2410. #define FLEXPWM4_SM1CVAL4 (IMXRT_FLEXPWM4.offset0AE)
  2411. #define FLEXPWM4_SM1CVAL4CYC (IMXRT_FLEXPWM4.offset0B0)
  2412. #define FLEXPWM4_SM1CVAL5 (IMXRT_FLEXPWM4.offset0B2)
  2413. #define FLEXPWM4_SM1CVAL5CYC (IMXRT_FLEXPWM4.offset0B4)
  2414. #define FLEXPWM4_SM2CNT (IMXRT_FLEXPWM4.offset0C0)
  2415. #define FLEXPWM4_SM2INIT (IMXRT_FLEXPWM4.offset0C2)
  2416. #define FLEXPWM4_SM2CTRL2 (IMXRT_FLEXPWM4.offset0C4)
  2417. #define FLEXPWM4_SM2CTRL (IMXRT_FLEXPWM4.offset0C6)
  2418. #define FLEXPWM4_SM2VAL0 (IMXRT_FLEXPWM4.offset0C8)
  2419. #define FLEXPWM4_SM2FRACVAL1 (IMXRT_FLEXPWM4.offset0CA)
  2420. #define FLEXPWM4_SM2VAL1 (IMXRT_FLEXPWM4.offset0CC)
  2421. #define FLEXPWM4_SM2FRACVAL2 (IMXRT_FLEXPWM4.offset0CE)
  2422. #define FLEXPWM4_SM2VAL2 (IMXRT_FLEXPWM4.offset0D0)
  2423. #define FLEXPWM4_SM2FRACVAL3 (IMXRT_FLEXPWM4.offset0D2)
  2424. #define FLEXPWM4_SM2VAL3 (IMXRT_FLEXPWM4.offset0D4)
  2425. #define FLEXPWM4_SM2FRACVAL4 (IMXRT_FLEXPWM4.offset0D6)
  2426. #define FLEXPWM4_SM2VAL4 (IMXRT_FLEXPWM4.offset0D8)
  2427. #define FLEXPWM4_SM2FRACVAL5 (IMXRT_FLEXPWM4.offset0DA)
  2428. #define FLEXPWM4_SM2VAL5 (IMXRT_FLEXPWM4.offset0DC)
  2429. #define FLEXPWM4_SM2FRCTRL (IMXRT_FLEXPWM4.offset0DE)
  2430. #define FLEXPWM4_SM2OCTRL (IMXRT_FLEXPWM4.offset0E0)
  2431. #define FLEXPWM4_SM2STS (IMXRT_FLEXPWM4.offset0E2)
  2432. #define FLEXPWM4_SM2INTEN (IMXRT_FLEXPWM4.offset0E4)
  2433. #define FLEXPWM4_SM2DMAEN (IMXRT_FLEXPWM4.offset0E6)
  2434. #define FLEXPWM4_SM2TCTRL (IMXRT_FLEXPWM4.offset0E8)
  2435. #define FLEXPWM4_SM2DISMAP0 (IMXRT_FLEXPWM4.offset0EA)
  2436. #define FLEXPWM4_SM2DISMAP1 (IMXRT_FLEXPWM4.offset0EC)
  2437. #define FLEXPWM4_SM2DTCNT0 (IMXRT_FLEXPWM4.offset0EE)
  2438. #define FLEXPWM4_SM2DTCNT1 (IMXRT_FLEXPWM4.offset0F0)
  2439. #define FLEXPWM4_SM2CAPTCTRLA (IMXRT_FLEXPWM4.offset0F2)
  2440. #define FLEXPWM4_SM2CAPTCOMPA (IMXRT_FLEXPWM4.offset0F4)
  2441. #define FLEXPWM4_SM2CAPTCTRLB (IMXRT_FLEXPWM4.offset0F6)
  2442. #define FLEXPWM4_SM2CAPTCOMPB (IMXRT_FLEXPWM4.offset0F8)
  2443. #define FLEXPWM4_SM2CAPTCTRLX (IMXRT_FLEXPWM4.offset0FA)
  2444. #define FLEXPWM4_SM2CAPTCOMPX (IMXRT_FLEXPWM4.offset0FC)
  2445. #define FLEXPWM4_SM2CVAL0 (IMXRT_FLEXPWM4.offset0FE)
  2446. #define FLEXPWM4_SM2CVAL0CYC (IMXRT_FLEXPWM4.offset100)
  2447. #define FLEXPWM4_SM2CVAL1 (IMXRT_FLEXPWM4.offset102)
  2448. #define FLEXPWM4_SM2CVAL1CYC (IMXRT_FLEXPWM4.offset104)
  2449. #define FLEXPWM4_SM2CVAL2 (IMXRT_FLEXPWM4.offset106)
  2450. #define FLEXPWM4_SM2CVAL2CYC (IMXRT_FLEXPWM4.offset108)
  2451. #define FLEXPWM4_SM2CVAL3 (IMXRT_FLEXPWM4.offset10A)
  2452. #define FLEXPWM4_SM2CVAL3CYC (IMXRT_FLEXPWM4.offset10C)
  2453. #define FLEXPWM4_SM2CVAL4 (IMXRT_FLEXPWM4.offset10E)
  2454. #define FLEXPWM4_SM2CVAL4CYC (IMXRT_FLEXPWM4.offset110)
  2455. #define FLEXPWM4_SM2CVAL5 (IMXRT_FLEXPWM4.offset112)
  2456. #define FLEXPWM4_SM2CVAL5CYC (IMXRT_FLEXPWM4.offset114)
  2457. #define FLEXPWM4_SM3CNT (IMXRT_FLEXPWM4.offset120)
  2458. #define FLEXPWM4_SM3INIT (IMXRT_FLEXPWM4.offset122)
  2459. #define FLEXPWM4_SM3CTRL2 (IMXRT_FLEXPWM4.offset124)
  2460. #define FLEXPWM4_SM3CTRL (IMXRT_FLEXPWM4.offset126)
  2461. #define FLEXPWM4_SM3VAL0 (IMXRT_FLEXPWM4.offset128)
  2462. #define FLEXPWM4_SM3FRACVAL1 (IMXRT_FLEXPWM4.offset12A)
  2463. #define FLEXPWM4_SM3VAL1 (IMXRT_FLEXPWM4.offset12C)
  2464. #define FLEXPWM4_SM3FRACVAL2 (IMXRT_FLEXPWM4.offset12E)
  2465. #define FLEXPWM4_SM3VAL2 (IMXRT_FLEXPWM4.offset130)
  2466. #define FLEXPWM4_SM3FRACVAL3 (IMXRT_FLEXPWM4.offset132)
  2467. #define FLEXPWM4_SM3VAL3 (IMXRT_FLEXPWM4.offset134)
  2468. #define FLEXPWM4_SM3FRACVAL4 (IMXRT_FLEXPWM4.offset136)
  2469. #define FLEXPWM4_SM3VAL4 (IMXRT_FLEXPWM4.offset138)
  2470. #define FLEXPWM4_SM3FRACVAL5 (IMXRT_FLEXPWM4.offset13A)
  2471. #define FLEXPWM4_SM3VAL5 (IMXRT_FLEXPWM4.offset13C)
  2472. #define FLEXPWM4_SM3FRCTRL (IMXRT_FLEXPWM4.offset13E)
  2473. #define FLEXPWM4_SM3OCTRL (IMXRT_FLEXPWM4.offset140)
  2474. #define FLEXPWM4_SM3STS (IMXRT_FLEXPWM4.offset142)
  2475. #define FLEXPWM4_SM3INTEN (IMXRT_FLEXPWM4.offset144)
  2476. #define FLEXPWM4_SM3DMAEN (IMXRT_FLEXPWM4.offset146)
  2477. #define FLEXPWM4_SM3TCTRL (IMXRT_FLEXPWM4.offset148)
  2478. #define FLEXPWM4_SM3DISMAP0 (IMXRT_FLEXPWM4.offset14A)
  2479. #define FLEXPWM4_SM3DISMAP1 (IMXRT_FLEXPWM4.offset14C)
  2480. #define FLEXPWM4_SM3DTCNT0 (IMXRT_FLEXPWM4.offset15E)
  2481. #define FLEXPWM4_SM3DTCNT1 (IMXRT_FLEXPWM4.offset150)
  2482. #define FLEXPWM4_SM3CAPTCTRLA (IMXRT_FLEXPWM4.offset152)
  2483. #define FLEXPWM4_SM3CAPTCOMPA (IMXRT_FLEXPWM4.offset154)
  2484. #define FLEXPWM4_SM3CAPTCTRLB (IMXRT_FLEXPWM4.offset156)
  2485. #define FLEXPWM4_SM3CAPTCOMPB (IMXRT_FLEXPWM4.offset158)
  2486. #define FLEXPWM4_SM3CAPTCTRLX (IMXRT_FLEXPWM4.offset15A)
  2487. #define FLEXPWM4_SM3CAPTCOMPX (IMXRT_FLEXPWM4.offset15C)
  2488. #define FLEXPWM4_SM3CVAL0 (IMXRT_FLEXPWM4.offset15E)
  2489. #define FLEXPWM4_SM3CVAL0CYC (IMXRT_FLEXPWM4.offset160)
  2490. #define FLEXPWM4_SM3CVAL1 (IMXRT_FLEXPWM4.offset162)
  2491. #define FLEXPWM4_SM3CVAL1CYC (IMXRT_FLEXPWM4.offset164)
  2492. #define FLEXPWM4_SM3CVAL2 (IMXRT_FLEXPWM4.offset166)
  2493. #define FLEXPWM4_SM3CVAL2CYC (IMXRT_FLEXPWM4.offset168)
  2494. #define FLEXPWM4_SM3CVAL3 (IMXRT_FLEXPWM4.offset16A)
  2495. #define FLEXPWM4_SM3CVAL3CYC (IMXRT_FLEXPWM4.offset16C)
  2496. #define FLEXPWM4_SM3CVAL4 (IMXRT_FLEXPWM4.offset16E)
  2497. #define FLEXPWM4_SM3CVAL4CYC (IMXRT_FLEXPWM4.offset170)
  2498. #define FLEXPWM4_SM3CVAL5 (IMXRT_FLEXPWM4.offset172)
  2499. #define FLEXPWM4_SM3CVAL5CYC (IMXRT_FLEXPWM4.offset174)
  2500. #define FLEXPWM4_OUTEN (IMXRT_FLEXPWM4.offset180)
  2501. #define FLEXPWM4_MASK (IMXRT_FLEXPWM4.offset182)
  2502. #define FLEXPWM4_SWCOUT (IMXRT_FLEXPWM4.offset184)
  2503. #define FLEXPWM4_DTSRCSEL (IMXRT_FLEXPWM4.offset186)
  2504. #define FLEXPWM4_MCTRL (IMXRT_FLEXPWM4.offset188)
  2505. #define FLEXPWM4_MCTRL2 (IMXRT_FLEXPWM4.offset18A)
  2506. #define FLEXPWM4_FCTRL0 (IMXRT_FLEXPWM4.offset18C)
  2507. #define FLEXPWM4_FSTS0 (IMXRT_FLEXPWM4.offset18E)
  2508. #define FLEXPWM4_FFILT0 (IMXRT_FLEXPWM4.offset190)
  2509. #define FLEXPWM4_FTST0 (IMXRT_FLEXPWM4.offset192)
  2510. #define FLEXPWM4_FCTRL20 (IMXRT_FLEXPWM4.offset194)
  2511. // 29.3.1.1: page 1468
  2512. #define IMXRT_FLEXRAM (*(IMXRT_REGISTER32_t *)0x400B0000)
  2513. #define FLEXRAM_TCM_CTRL (IMXRT_FLEXRAM.offset000)
  2514. #define FLEXRAM_INT_STATUS (IMXRT_FLEXRAM.offset010)
  2515. #define FLEXRAM_INT_STAT_EN (IMXRT_FLEXRAM.offset014)
  2516. #define FLEXRAM_INT_SIG_EN (IMXRT_FLEXRAM.offset018)
  2517. #define FLEXRAM_TCM_CTRL_FORCE_CLK_ON ((uint32_t)(1<<2))
  2518. #define FLEXRAM_TCM_CTRL_TCM_RWAIT_EN ((uint32_t)(1<<1))
  2519. #define FLEXRAM_TCM_CTRL_TCM_WWAIT_EN ((uint32_t)(1<<0))
  2520. #define FLEXRAM_INT_STATUS_OCRAM_ERR_STATUS ((uint32_t)(1<<5))
  2521. #define FLEXRAM_INT_STATUS_DTCM_ERR_STATUS ((uint32_t)(1<<4))
  2522. #define FLEXRAM_INT_STATUS_ITCM_ERR_STATUS ((uint32_t)(1<<3))
  2523. #define FLEXRAM_INT_STAT_EN_OCRAM_ERR_STAT_EN ((uint32_t)(1<<5))
  2524. #define FLEXRAM_INT_STAT_EN_DTCM_ERR_STAT_EN ((uint32_t)(1<<4))
  2525. #define FLEXRAM_INT_STAT_EN_ITCM_ERR_STAT_EN ((uint32_t)(1<<3))
  2526. #define FLEXRAM_INT_SIG_EN_OCRAM_ERR_SIG_EN ((uint32_t)(1<<5))
  2527. #define FLEXRAM_INT_SIG_EN_DTCM_ERR_SIG_EN ((uint32_t)(1<<4))
  2528. #define FLEXRAM_INT_SIG_EN_ITCM_ERR_SIG_EN ((uint32_t)(1<<3))
  2529. // 30.5.2.1: page 1481
  2530. #define IMXRT_FLEXSPI (*(IMXRT_REGISTER32_t *)0x402A8000)
  2531. #define FLEXSPI_MCR0 (IMXRT_FLEXSPI.offset000)
  2532. #define FLEXSPI_MCR0_AHBGRANTWAIT(n) ((uint32_t)(((n) & 0xFF) << 24))
  2533. #define FLEXSPI_MCR0_AHBGRANTWAIT_MASK ((uint32_t)(0xFF << 24))
  2534. #define FLEXSPI_MCR0_IPGRANTWAIT(n) ((uint32_t)(((n) & 0xFF) << 16))
  2535. #define FLEXSPI_MCR0_IPGRANTWAIT_MASK ((uint32_t)(0xFF << 16))
  2536. #define FLEXSPI_MCR0_SCKFREERUNEN ((uint32_t)(1<<14))
  2537. #define FLEXSPI_MCR0_COMBINATIONEN ((uint32_t)(1<<13))
  2538. #define FLEXSPI_MCR0_DOZEEN ((uint32_t)(1<<12))
  2539. #define FLEXSPI_MCR0_HSEN ((uint32_t)(1<<11))
  2540. #define FLEXSPI_MCR0_ATDFEN ((uint32_t)(1<<7))
  2541. #define FLEXSPI_MCR0_ARDFEN ((uint32_t)(1<<6))
  2542. #define FLEXSPI_MCR0_RXCLKSRC(n) ((uint32_t)(((n) & 0x03) << 4))
  2543. #define FLEXSPI_MCR0_RXCLKSRC_MASK ((uint32_t)(0x03 << 4))
  2544. #define FLEXSPI_MCR0_MDIS ((uint32_t)(1<<1))
  2545. #define FLEXSPI_MCR0_SWRESET ((uint32_t)(1<<0))
  2546. #define FLEXSPI_MCR1 (IMXRT_FLEXSPI.offset004)
  2547. #define FLEXSPI_MCR1_SEQWAIT(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  2548. #define FLEXSPI_MCR1_AHBBUSWAIT(n) ((uint32_t)(((n) & 0xFFFF) << 0))
  2549. #define FLEXSPI_MCR2 (IMXRT_FLEXSPI.offset008)
  2550. #define FLEXSPI_MCR2_RESUMEWAIT(n) ((uint32_t)(((n) & 0xFF) << 24))
  2551. #define FLEXSPI_MCR2_RESUMEWAIT_MASK ((uint32_t)(0xFF << 24))
  2552. #define FLEXSPI_MCR2_SCKBDIFFOPT ((uint32_t)(1<<19))
  2553. #define FLEXSPI_MCR2_SAMEDEVICEEN ((uint32_t)(1<<15))
  2554. #define FLEXSPI_MCR2_CLRLEARNPHASE ((uint32_t)(1<<14))
  2555. #define FLEXSPI_MCR2_CLRAHBBUFOPT ((uint32_t)(1<<11))
  2556. #define FLEXSPI_AHBCR (IMXRT_FLEXSPI.offset00C)
  2557. #define FLEXSPI_AHBCR_READADDROPT ((uint32_t)(1<<6))
  2558. #define FLEXSPI_AHBCR_PREFETCHEN ((uint32_t)(1<<5))
  2559. #define FLEXSPI_AHBCR_BUFFERABLEEN ((uint32_t)(1<<4))
  2560. #define FLEXSPI_AHBCR_CACHABLEEN ((uint32_t)(1<<3))
  2561. #define FLEXSPI_AHBCR_APAREN ((uint32_t)(1<<0))
  2562. #define FLEXSPI_INTEN (IMXRT_FLEXSPI.offset010)
  2563. #define FLEXSPI_INTEN_SEQTIMEOUTEN ((uint32_t)(1<<11))
  2564. #define FLEXSPI_INTEN_AHBBUSTIMEOUTEN ((uint32_t)(1<<10))
  2565. #define FLEXSPI_INTEN_SCKSTOPBYWREN ((uint32_t)(1<<9))
  2566. #define FLEXSPI_INTEN_SCKSTOPBYRDEN ((uint32_t)(1<<8))
  2567. #define FLEXSPI_INTEN_IPTXWEEN ((uint32_t)(1<<6))
  2568. #define FLEXSPI_INTEN_IPRXWAEN ((uint32_t)(1<<5))
  2569. #define FLEXSPI_INTEN_AHBCMDERREN ((uint32_t)(1<<4))
  2570. #define FLEXSPI_INTEN_IPCMDERREN ((uint32_t)(1<<3))
  2571. #define FLEXSPI_INTEN_AHBCMDGEEN ((uint32_t)(1<<2))
  2572. #define FLEXSPI_INTEN_IPCMDGEEN ((uint32_t)(1<<1))
  2573. #define FLEXSPI_INTEN_IPCMDDONEEN ((uint32_t)(1<<0))
  2574. #define FLEXSPI_INTR (IMXRT_FLEXSPI.offset014)
  2575. #define FLEXSPI_INTR_SEQTIMEOUT ((uint32_t)(1<<11))
  2576. #define FLEXSPI_INTR_AHBBUSTIMEOUT ((uint32_t)(1<<10))
  2577. #define FLEXSPI_INTR_SCKSTOPBYWR ((uint32_t)(1<<9))
  2578. #define FLEXSPI_INTR_SCKSTOPBYRD ((uint32_t)(1<<8))
  2579. #define FLEXSPI_INTR_IPTXWE ((uint32_t)(1<<6))
  2580. #define FLEXSPI_INTR_IPRXWA ((uint32_t)(1<<5))
  2581. #define FLEXSPI_INTR_AHBCMDERR ((uint32_t)(1<<4))
  2582. #define FLEXSPI_INTR_IPCMDERR ((uint32_t)(1<<3))
  2583. #define FLEXSPI_INTR_AHBCMDGE ((uint32_t)(1<<2))
  2584. #define FLEXSPI_INTR_IPCMDGE ((uint32_t)(1<<1))
  2585. #define FLEXSPI_INTR_IPCMDDONE ((uint32_t)(1<<0))
  2586. #define FLEXSPI_LUTKEY (IMXRT_FLEXSPI.offset018)
  2587. #define FLEXSPI_LUTKEY_VALUE ((uint32_t)0x5AF05AF0)
  2588. #define FLEXSPI_LUTCR (IMXRT_FLEXSPI.offset01C)
  2589. #define FLEXSPI_LUTCR_UNLOCK ((uint32_t)(1<<1))
  2590. #define FLEXSPI_LUTCR_LOCK ((uint32_t)(1<<0))
  2591. #define FLEXSPI_AHBRXBUF0CR0 (IMXRT_FLEXSPI.offset020)
  2592. #define FLEXSPI_AHBRXBUF1CR0 (IMXRT_FLEXSPI.offset024)
  2593. #define FLEXSPI_AHBRXBUF2CR0 (IMXRT_FLEXSPI.offset028)
  2594. #define FLEXSPI_AHBRXBUF3CR0 (IMXRT_FLEXSPI.offset02C)
  2595. #define FLEXSPI_AHBRXBUFCR0_PREFETCHEN ((uint32_t)(1<<31))
  2596. #define FLEXSPI_AHBRXBUFCR0_PRIORITY(n) ((uint32_t)(((n) & 0x03) << 24))
  2597. #define FLEXSPI_AHBRXBUFCR0_PRIORITY_MASK ((uint32_t)((0x03) << 24))
  2598. #define FLEXSPI_AHBRXBUFCR0_MSTRID(n) ((uint32_t)(((n) & 0x0F) << 16))
  2599. #define FLEXSPI_AHBRXBUFCR0_MSTRID_MASK ((uint32_t)((0x0F) << 16))
  2600. #define FLEXSPI_AHBRXBUFCR0_BUFSZ(n) ((uint32_t)(((n) & 0xFF) << 0))
  2601. #define FLEXSPI_AHBRXBUFCR0_BUFSZ_MASK ((uint32_t)((0xFF) << 0))
  2602. #define FLEXSPI_FLSHA1CR0 (IMXRT_FLEXSPI.offset060)
  2603. #define FLEXSPI_FLSHA2CR0 (IMXRT_FLEXSPI.offset064)
  2604. #define FLEXSPI_FLSHB1CR0 (IMXRT_FLEXSPI.offset068)
  2605. #define FLEXSPI_FLSHB2CR0 (IMXRT_FLEXSPI.offset06C)
  2606. #define FLEXSPI_FLSHCR0_FLSHSZ(n) ((uint32_t)(((n) & 0x7FFFFF) << 0))
  2607. #define FLEXSPI_FLSHCR0_FLSHSZ_MASK ((uint32_t)((0x7FFFFF) << 0))
  2608. #define FLEXSPI_FLSHA1CR1 (IMXRT_FLEXSPI.offset070)
  2609. #define FLEXSPI_FLSHA2CR1 (IMXRT_FLEXSPI.offset074)
  2610. #define FLEXSPI_FLSHB1CR1 (IMXRT_FLEXSPI.offset078)
  2611. #define FLEXSPI_FLSHB2CR1 (IMXRT_FLEXSPI.offset07C)
  2612. #define FLEXSPI_FLSHCR1_CSINTERVAL(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  2613. #define FLEXSPI_FLSHCR1_CSINTERVAL_MASK ((uint32_t)((0xFFFF) << 16))
  2614. #define FLEXSPI_FLSHCR1_CSINTERVALUNIT ((uint32_t)(1<<15))
  2615. #define FLEXSPI_FLSHCR1_CAS(n) ((uint32_t)(((n) & 0x0F) << 11))
  2616. #define FLEXSPI_FLSHCR1_WA ((uint32_t)(1<<10))
  2617. #define FLEXSPI_FLSHCR1_TCSH(n) ((uint32_t)(((n) & 0x1F) << 5))
  2618. #define FLEXSPI_FLSHCR1_TCSH_MASK ((uint32_t)((0x1F) << 5))
  2619. #define FLEXSPI_FLSHCR1_TCSS(n) ((uint32_t)(((n) & 0x1F) << 0))
  2620. #define FLEXSPI_FLSHCR1_TCSS_MASK ((uint32_t)((0x1F) << 0))
  2621. #define FLEXSPI_FLSHA1CR2 (IMXRT_FLEXSPI.offset080)
  2622. #define FLEXSPI_FLSHA2CR2 (IMXRT_FLEXSPI.offset084)
  2623. #define FLEXSPI_FLSHB1CR2 (IMXRT_FLEXSPI.offset088)
  2624. #define FLEXSPI_FLSHB2CR2 (IMXRT_FLEXSPI.offset08C)
  2625. #define FLEXSPI_FLSHCR2_CLRINSTRPTR ((uint32_t)(1<<31))
  2626. #define FLEXSPI_FLSHCR2_AWRWAITUNIT(n) ((uint32_t)(((n) & 0x07) << 28))
  2627. #define FLEXSPI_FLSHCR2_AWRWAIT(n) ((uint32_t)(((n) & 0xFFF) << 16))
  2628. #define FLEXSPI_FLSHCR2_AWRSEQNUM(n) ((uint32_t)(((n) & 0x07) << 13))
  2629. #define FLEXSPI_FLSHCR2_AWRSEQID(n) ((uint32_t)(((n) & 0x0F) << 8))
  2630. #define FLEXSPI_FLSHCR2_ARDSEQNUM(n) ((uint32_t)(((n) & 0x07) << 5))
  2631. #define FLEXSPI_FLSHCR2_ARDSEQID(n) ((uint32_t)(((n) & 0x0F) << 0))
  2632. #define FLEXSPI_FLSHCR4 (IMXRT_FLEXSPI.offset094)
  2633. #define FLEXSPI_FLSHCR4_WMENB ((uint32_t)(1<<3))
  2634. #define FLEXSPI_FLSHCR4_WMENA ((uint32_t)(1<<2))
  2635. #define FLEXSPI_FLSHCR4_WMOPT1 ((uint32_t)(1<<0))
  2636. #define FLEXSPI_IPCR0 (IMXRT_FLEXSPI.offset0A0)
  2637. #define FLEXSPI_IPCR0_SFAR(n) ((uint32_t)(n))
  2638. #define FLEXSPI_IPCR1 (IMXRT_FLEXSPI.offset0A4)
  2639. #define FLEXSPI_IPCR1_IPAREN ((uint32_t)(1<<31))
  2640. #define FLEXSPI_IPCR1_ISEQNUM(n) ((uint32_t)(((n) & 0x07) << 24))
  2641. #define FLEXSPI_IPCR1_ISEQID(n) ((uint32_t)(((n) & 0x0F) << 16))
  2642. #define FLEXSPI_IPCR1_IDATSZ(n) ((uint32_t)(((n) & 0xFFFF) << 0))
  2643. #define FLEXSPI_IPCMD (IMXRT_FLEXSPI.offset0B0)
  2644. #define FLEXSPI_IPCMD_TRG ((uint32_t)(1<<0))
  2645. #define FLEXSPI_IPRXFCR (IMXRT_FLEXSPI.offset0B8)
  2646. #define FLEXSPI_IPRXFCR_RXWMRK(n) ((uint32_t)(((n) & 0x0F) << 2))
  2647. #define FLEXSPI_IPRXFCR_RXDMAEN ((uint32_t)(1<<1))
  2648. #define FLEXSPI_IPRXFCR_CLRIPRXF ((uint32_t)(1<<0))
  2649. #define FLEXSPI_IPTXFCR (IMXRT_FLEXSPI.offset0BC)
  2650. #define FLEXSPI_IPTXFCR_TXWMRK(n) ((uint32_t)(((n) & 0x0F) << 2))
  2651. #define FLEXSPI_IPTXFCR_TXDMAEN ((uint32_t)(1<<1))
  2652. #define FLEXSPI_IPTXFCR_CLRIPTXF ((uint32_t)(1<<0))
  2653. #define FLEXSPI_DLLACR (IMXRT_FLEXSPI.offset0C0)
  2654. #define FLEXSPI_DLLBCR (IMXRT_FLEXSPI.offset0C4)
  2655. #define FLEXSPI_DLLCR_OVRDVAL(n) ((uint32_t)(((n) & 0x3F) << 9))
  2656. #define FLEXSPI_DLLCR_OVRDEN ((uint32_t)(1<<8))
  2657. #define FLEXSPI_DLLCR_SLVDLYTARGET(n) ((uint32_t)(((n) & 0x0F) << 3))
  2658. #define FLEXSPI_DLLCR_DLLRESET ((uint32_t)(1<<1))
  2659. #define FLEXSPI_DLLCR_DLLEN ((uint32_t)(1<<0))
  2660. #define FLEXSPI_STS0 (IMXRT_FLEXSPI.offset0E0)
  2661. #define FLEXSPI_STS0_ARBCMDSRC(n) ((uint32_t)(((n) & 0x03) << 2))
  2662. #define FLEXSPI_STS0_ARBIDLE ((uint32_t)(1<<1))
  2663. #define FLEXSPI_STS0_SEQIDLE ((uint32_t)(1<<0))
  2664. #define FLEXSPI_STS1 (IMXRT_FLEXSPI.offset0E4)
  2665. #define FLEXSPI_STS1_IPCMDERRCODE(n) ((uint32_t)(((n) & 0x0F) << 24))
  2666. #define FLEXSPI_STS1_IPCMDERRID(n) ((uint32_t)(((n) & 0x0F) << 16))
  2667. #define FLEXSPI_STS1_AHBCMDERRCODE(n) ((uint32_t)(((n) & 0x0F) << 8))
  2668. #define FLEXSPI_STS1_AHBCMDERRID(n) ((uint32_t)(((n) & 0x0F) << 0))
  2669. #define FLEXSPI_STS2 (IMXRT_FLEXSPI.offset0E8)
  2670. #define FLEXSPI_STS2_BREFSEL(n) ((uint32_t)(((n) & 0x3F) << 24))
  2671. #define FLEXSPI_STS2_BSLVSEL(n) ((uint32_t)(((n) & 0x3F) << 18))
  2672. #define FLEXSPI_STS2_BREFLOCK ((uint32_t)(1<<17))
  2673. #define FLEXSPI_STS2_BSLVLOCK ((uint32_t)(1<<16))
  2674. #define FLEXSPI_STS2_AREFSEL(n) ((uint32_t)(((n) & 0x3F) << 8))
  2675. #define FLEXSPI_STS2_ASLVSEL(n) ((uint32_t)(((n) & 0x3F) << 2))
  2676. #define FLEXSPI_STS2_AREFLOCK ((uint32_t)(1<<1))
  2677. #define FLEXSPI_STS2_ASLVLOCK ((uint32_t)(1<<0))
  2678. #define FLEXSPI_AHBSPNDSTS (IMXRT_FLEXSPI.offset0EC)
  2679. #define FLEXSPI_AHBSPNDSTS_DATLFT(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  2680. #define FLEXSPI_AHBSPNDSTS_BUFID(n) ((uint32_t)(((n) & 0x7) << 1))
  2681. #define FLEXSPI_AHBSPNDSTS_ACTIVE ((uint32_t)(1<<0))
  2682. #define FLEXSPI_IPRXFSTS (IMXRT_FLEXSPI.offset0F0)
  2683. #define FLEXSPI_IPRXFSTS_RDCNTR(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  2684. #define FLEXSPI_IPRXFSTS_FILL(n) ((uint32_t)(((n) & 0xFF) << 0))
  2685. #define FLEXSPI_IPTXFSTS (IMXRT_FLEXSPI.offset0F4)
  2686. #define FLEXSPI_IPTXFSTS_WRCNTR(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  2687. #define FLEXSPI_IPTXFSTS_FILL(n) ((uint32_t)(((n) & 0xFF) << 0))
  2688. #define FLEXSPI_RFDR0 (IMXRT_FLEXSPI.offset100)
  2689. #define FLEXSPI_RFDR1 (IMXRT_FLEXSPI.offset104)
  2690. #define FLEXSPI_RFDR2 (IMXRT_FLEXSPI.offset108)
  2691. #define FLEXSPI_RFDR3 (IMXRT_FLEXSPI.offset10C)
  2692. #define FLEXSPI_RFDR4 (IMXRT_FLEXSPI.offset110)
  2693. #define FLEXSPI_RFDR5 (IMXRT_FLEXSPI.offset114)
  2694. #define FLEXSPI_RFDR6 (IMXRT_FLEXSPI.offset118)
  2695. #define FLEXSPI_RFDR7 (IMXRT_FLEXSPI.offset11C)
  2696. #define FLEXSPI_RFDR8 (IMXRT_FLEXSPI.offset120)
  2697. #define FLEXSPI_RFDR9 (IMXRT_FLEXSPI.offset124)
  2698. #define FLEXSPI_RFDR10 (IMXRT_FLEXSPI.offset128)
  2699. #define FLEXSPI_RFDR11 (IMXRT_FLEXSPI.offset12C)
  2700. #define FLEXSPI_RFDR12 (IMXRT_FLEXSPI.offset130)
  2701. #define FLEXSPI_RFDR13 (IMXRT_FLEXSPI.offset134)
  2702. #define FLEXSPI_RFDR14 (IMXRT_FLEXSPI.offset138)
  2703. #define FLEXSPI_RFDR15 (IMXRT_FLEXSPI.offset13C)
  2704. #define FLEXSPI_RFDR16 (IMXRT_FLEXSPI.offset140)
  2705. #define FLEXSPI_RFDR17 (IMXRT_FLEXSPI.offset144)
  2706. #define FLEXSPI_RFDR18 (IMXRT_FLEXSPI.offset148)
  2707. #define FLEXSPI_RFDR19 (IMXRT_FLEXSPI.offset14C)
  2708. #define FLEXSPI_RFDR20 (IMXRT_FLEXSPI.offset150)
  2709. #define FLEXSPI_RFDR21 (IMXRT_FLEXSPI.offset154)
  2710. #define FLEXSPI_RFDR22 (IMXRT_FLEXSPI.offset158)
  2711. #define FLEXSPI_RFDR23 (IMXRT_FLEXSPI.offset15C)
  2712. #define FLEXSPI_RFDR24 (IMXRT_FLEXSPI.offset160)
  2713. #define FLEXSPI_RFDR25 (IMXRT_FLEXSPI.offset164)
  2714. #define FLEXSPI_RFDR26 (IMXRT_FLEXSPI.offset168)
  2715. #define FLEXSPI_RFDR27 (IMXRT_FLEXSPI.offset16C)
  2716. #define FLEXSPI_RFDR28 (IMXRT_FLEXSPI.offset170)
  2717. #define FLEXSPI_RFDR29 (IMXRT_FLEXSPI.offset174)
  2718. #define FLEXSPI_RFDR30 (IMXRT_FLEXSPI.offset178)
  2719. #define FLEXSPI_RFDR31 (IMXRT_FLEXSPI.offset17C)
  2720. #define FLEXSPI_TFDR0 (IMXRT_FLEXSPI.offset180)
  2721. #define FLEXSPI_TFDR1 (IMXRT_FLEXSPI.offset184)
  2722. #define FLEXSPI_TFDR2 (IMXRT_FLEXSPI.offset188)
  2723. #define FLEXSPI_TFDR3 (IMXRT_FLEXSPI.offset18C)
  2724. #define FLEXSPI_TFDR4 (IMXRT_FLEXSPI.offset190)
  2725. #define FLEXSPI_TFDR5 (IMXRT_FLEXSPI.offset194)
  2726. #define FLEXSPI_TFDR6 (IMXRT_FLEXSPI.offset198)
  2727. #define FLEXSPI_TFDR7 (IMXRT_FLEXSPI.offset19C)
  2728. #define FLEXSPI_TFDR8 (IMXRT_FLEXSPI.offset1A0)
  2729. #define FLEXSPI_TFDR9 (IMXRT_FLEXSPI.offset1A4)
  2730. #define FLEXSPI_TFDR10 (IMXRT_FLEXSPI.offset1A8)
  2731. #define FLEXSPI_TFDR11 (IMXRT_FLEXSPI.offset1AC)
  2732. #define FLEXSPI_TFDR12 (IMXRT_FLEXSPI.offset1B0)
  2733. #define FLEXSPI_TFDR13 (IMXRT_FLEXSPI.offset1B4)
  2734. #define FLEXSPI_TFDR14 (IMXRT_FLEXSPI.offset1B8)
  2735. #define FLEXSPI_TFDR15 (IMXRT_FLEXSPI.offset1BC)
  2736. #define FLEXSPI_TFDR16 (IMXRT_FLEXSPI.offset1C0)
  2737. #define FLEXSPI_TFDR17 (IMXRT_FLEXSPI.offset1C4)
  2738. #define FLEXSPI_TFDR18 (IMXRT_FLEXSPI.offset1C8)
  2739. #define FLEXSPI_TFDR19 (IMXRT_FLEXSPI.offset1CC)
  2740. #define FLEXSPI_TFDR20 (IMXRT_FLEXSPI.offset1D0)
  2741. #define FLEXSPI_TFDR21 (IMXRT_FLEXSPI.offset1D4)
  2742. #define FLEXSPI_TFDR22 (IMXRT_FLEXSPI.offset1D8)
  2743. #define FLEXSPI_TFDR23 (IMXRT_FLEXSPI.offset1DC)
  2744. #define FLEXSPI_TFDR24 (IMXRT_FLEXSPI.offset1E0)
  2745. #define FLEXSPI_TFDR25 (IMXRT_FLEXSPI.offset1E4)
  2746. #define FLEXSPI_TFDR26 (IMXRT_FLEXSPI.offset1E8)
  2747. #define FLEXSPI_TFDR27 (IMXRT_FLEXSPI.offset1EC)
  2748. #define FLEXSPI_TFDR28 (IMXRT_FLEXSPI.offset1F0)
  2749. #define FLEXSPI_TFDR29 (IMXRT_FLEXSPI.offset1F4)
  2750. #define FLEXSPI_TFDR30 (IMXRT_FLEXSPI.offset1F8)
  2751. #define FLEXSPI_TFDR31 (IMXRT_FLEXSPI.offset1FC)
  2752. #define FLEXSPI_LUT0 (IMXRT_FLEXSPI.offset200)
  2753. #define FLEXSPI_LUT1 (IMXRT_FLEXSPI.offset204)
  2754. #define FLEXSPI_LUT2 (IMXRT_FLEXSPI.offset208)
  2755. #define FLEXSPI_LUT3 (IMXRT_FLEXSPI.offset20C)
  2756. #define FLEXSPI_LUT4 (IMXRT_FLEXSPI.offset210)
  2757. #define FLEXSPI_LUT5 (IMXRT_FLEXSPI.offset214)
  2758. #define FLEXSPI_LUT6 (IMXRT_FLEXSPI.offset218)
  2759. #define FLEXSPI_LUT7 (IMXRT_FLEXSPI.offset21C)
  2760. #define FLEXSPI_LUT8 (IMXRT_FLEXSPI.offset220)
  2761. #define FLEXSPI_LUT9 (IMXRT_FLEXSPI.offset224)
  2762. #define FLEXSPI_LUT10 (IMXRT_FLEXSPI.offset228)
  2763. #define FLEXSPI_LUT11 (IMXRT_FLEXSPI.offset22C)
  2764. #define FLEXSPI_LUT12 (IMXRT_FLEXSPI.offset230)
  2765. #define FLEXSPI_LUT13 (IMXRT_FLEXSPI.offset234)
  2766. #define FLEXSPI_LUT14 (IMXRT_FLEXSPI.offset238)
  2767. #define FLEXSPI_LUT15 (IMXRT_FLEXSPI.offset23C)
  2768. #define FLEXSPI_LUT16 (IMXRT_FLEXSPI.offset240)
  2769. #define FLEXSPI_LUT17 (IMXRT_FLEXSPI.offset244)
  2770. #define FLEXSPI_LUT18 (IMXRT_FLEXSPI.offset248)
  2771. #define FLEXSPI_LUT19 (IMXRT_FLEXSPI.offset24C)
  2772. #define FLEXSPI_LUT20 (IMXRT_FLEXSPI.offset250)
  2773. #define FLEXSPI_LUT21 (IMXRT_FLEXSPI.offset254)
  2774. #define FLEXSPI_LUT22 (IMXRT_FLEXSPI.offset258)
  2775. #define FLEXSPI_LUT23 (IMXRT_FLEXSPI.offset25C)
  2776. #define FLEXSPI_LUT24 (IMXRT_FLEXSPI.offset260)
  2777. #define FLEXSPI_LUT25 (IMXRT_FLEXSPI.offset264)
  2778. #define FLEXSPI_LUT26 (IMXRT_FLEXSPI.offset268)
  2779. #define FLEXSPI_LUT27 (IMXRT_FLEXSPI.offset26C)
  2780. #define FLEXSPI_LUT28 (IMXRT_FLEXSPI.offset270)
  2781. #define FLEXSPI_LUT29 (IMXRT_FLEXSPI.offset274)
  2782. #define FLEXSPI_LUT30 (IMXRT_FLEXSPI.offset278)
  2783. #define FLEXSPI_LUT31 (IMXRT_FLEXSPI.offset27C)
  2784. #define FLEXSPI_LUT32 (IMXRT_FLEXSPI.offset280)
  2785. #define FLEXSPI_LUT33 (IMXRT_FLEXSPI.offset284)
  2786. #define FLEXSPI_LUT34 (IMXRT_FLEXSPI.offset288)
  2787. #define FLEXSPI_LUT35 (IMXRT_FLEXSPI.offset28C)
  2788. #define FLEXSPI_LUT36 (IMXRT_FLEXSPI.offset290)
  2789. #define FLEXSPI_LUT37 (IMXRT_FLEXSPI.offset294)
  2790. #define FLEXSPI_LUT38 (IMXRT_FLEXSPI.offset298)
  2791. #define FLEXSPI_LUT39 (IMXRT_FLEXSPI.offset29C)
  2792. #define FLEXSPI_LUT40 (IMXRT_FLEXSPI.offset2A0)
  2793. #define FLEXSPI_LUT41 (IMXRT_FLEXSPI.offset2A4)
  2794. #define FLEXSPI_LUT42 (IMXRT_FLEXSPI.offset2A8)
  2795. #define FLEXSPI_LUT43 (IMXRT_FLEXSPI.offset2AC)
  2796. #define FLEXSPI_LUT44 (IMXRT_FLEXSPI.offset2B0)
  2797. #define FLEXSPI_LUT45 (IMXRT_FLEXSPI.offset2B4)
  2798. #define FLEXSPI_LUT46 (IMXRT_FLEXSPI.offset2B8)
  2799. #define FLEXSPI_LUT47 (IMXRT_FLEXSPI.offset2BC)
  2800. #define FLEXSPI_LUT48 (IMXRT_FLEXSPI.offset2C0)
  2801. #define FLEXSPI_LUT49 (IMXRT_FLEXSPI.offset2C4)
  2802. #define FLEXSPI_LUT50 (IMXRT_FLEXSPI.offset2C8)
  2803. #define FLEXSPI_LUT51 (IMXRT_FLEXSPI.offset2CC)
  2804. #define FLEXSPI_LUT52 (IMXRT_FLEXSPI.offset2D0)
  2805. #define FLEXSPI_LUT53 (IMXRT_FLEXSPI.offset2D4)
  2806. #define FLEXSPI_LUT54 (IMXRT_FLEXSPI.offset2D8)
  2807. #define FLEXSPI_LUT55 (IMXRT_FLEXSPI.offset2DC)
  2808. #define FLEXSPI_LUT56 (IMXRT_FLEXSPI.offset2E0)
  2809. #define FLEXSPI_LUT57 (IMXRT_FLEXSPI.offset2E4)
  2810. #define FLEXSPI_LUT58 (IMXRT_FLEXSPI.offset2E8)
  2811. #define FLEXSPI_LUT59 (IMXRT_FLEXSPI.offset2EC)
  2812. #define FLEXSPI_LUT60 (IMXRT_FLEXSPI.offset2F0)
  2813. #define FLEXSPI_LUT61 (IMXRT_FLEXSPI.offset2F4)
  2814. #define FLEXSPI_LUT62 (IMXRT_FLEXSPI.offset2F8)
  2815. #define FLEXSPI_LUT63 (IMXRT_FLEXSPI.offset2FC)
  2816. #define FLEXSPI_LUT_OPCODE1(n) ((uint32_t)(((n) & 0x3F) << 26))
  2817. #define FLEXSPI_LUT_NUM_PADS1(n) ((uint32_t)(((n) & 0x03) << 24))
  2818. #define FLEXSPI_LUT_OPERAND1(n) ((uint32_t)(((n) & 0xFF) << 16))
  2819. #define FLEXSPI_LUT_OPCODE0(n) ((uint32_t)(((n) & 0x3F) << 10))
  2820. #define FLEXSPI_LUT_NUM_PADS0(n) ((uint32_t)(((n) & 0x03) << 8))
  2821. #define FLEXSPI_LUT_OPERAND0(n) ((uint32_t)(((n) & 0xFF) << 0))
  2822. #define FLEXSPI_LUT_INSTRUCTION(opcode, pads, operand) ((uint32_t)(\
  2823. (((opcode) & 0x3F) << 10) | (((pads) & 0x03) << 8) | ((operand) & 0xFF)))
  2824. // 30.7.8: page 1532
  2825. #define FLEXSPI_LUT_OPCODE_CMD_SDR 0x01
  2826. #define FLEXSPI_LUT_OPCODE_CMD_DDR 0x21
  2827. #define FLEXSPI_LUT_OPCODE_RADDR_SDR 0x02
  2828. #define FLEXSPI_LUT_OPCODE_RADDR_DDR 0x22
  2829. #define FLEXSPI_LUT_OPCODE_CADDR_SDR 0x03
  2830. #define FLEXSPI_LUT_OPCODE_CADDR_DDR 0x23
  2831. #define FLEXSPI_LUT_OPCODE_MODE1_SDR 0x04
  2832. #define FLEXSPI_LUT_OPCODE_MODE1_DDR 0x24
  2833. #define FLEXSPI_LUT_OPCODE_MODE2_SDR 0x05
  2834. #define FLEXSPI_LUT_OPCODE_MODE2_DDR 0x25
  2835. #define FLEXSPI_LUT_OPCODE_MODE4_SDR 0x06
  2836. #define FLEXSPI_LUT_OPCODE_MODE4_DDR 0x26
  2837. #define FLEXSPI_LUT_OPCODE_MODE8_SDR 0x07
  2838. #define FLEXSPI_LUT_OPCODE_MODE8_DDR 0x27
  2839. #define FLEXSPI_LUT_OPCODE_WRITE_SDR 0x08
  2840. #define FLEXSPI_LUT_OPCODE_WRITE_DDR 0x28
  2841. #define FLEXSPI_LUT_OPCODE_READ_SDR 0x09
  2842. #define FLEXSPI_LUT_OPCODE_READ_DDR 0x29
  2843. #define FLEXSPI_LUT_OPCODE_LEARN_SDR 0x0A
  2844. #define FLEXSPI_LUT_OPCODE_LEARN_DDR 0x2A
  2845. #define FLEXSPI_LUT_OPCODE_DATSZ_SDR 0x0B
  2846. #define FLEXSPI_LUT_OPCODE_DATSZ_DDR 0x2B
  2847. #define FLEXSPI_LUT_OPCODE_DUMMY_SDR 0x0C
  2848. #define FLEXSPI_LUT_OPCODE_DUMMY_DDR 0x2C
  2849. #define FLEXSPI_LUT_OPCODE_DUMMY_RWDS_SDR 0x0D
  2850. #define FLEXSPI_LUT_OPCODE_DUMMY_RWDS_DDR 0x2D
  2851. #define FLEXSPI_LUT_OPCODE_JMP_ON_CS 0x1F
  2852. #define FLEXSPI_LUT_OPCODE_STOP 0x00
  2853. #define FLEXSPI_LUT_NUM_PADS_1 0x00
  2854. #define FLEXSPI_LUT_NUM_PADS_2 0x01
  2855. #define FLEXSPI_LUT_NUM_PADS_4 0x02
  2856. #define FLEXSPI_LUT_NUM_PADS_8 0x03
  2857. // 31.5: page 1595
  2858. #define IMXRT_GPC (*(IMXRT_REGISTER32_t *)0x400F4000)
  2859. #define GPC_CNTR (IMXRT_GPC.offset000)
  2860. #define GPC_IMR1 (IMXRT_GPC.offset008)
  2861. #define GPC_IMR2 (IMXRT_GPC.offset00C)
  2862. #define GPC_IMR3 (IMXRT_GPC.offset010)
  2863. #define GPC_IMR4 (IMXRT_GPC.offset014)
  2864. #define GPC_ISR1 (IMXRT_GPC.offset018)
  2865. #define GPC_ISR2 (IMXRT_GPC.offset01C)
  2866. #define GPC_ISR3 (IMXRT_GPC.offset020)
  2867. #define GPC_ISR4 (IMXRT_GPC.offset024)
  2868. #define GPC_IMR5 (IMXRT_GPC.offset034)
  2869. #define GPC_ISR5 (IMXRT_GPC.offset038)
  2870. #define GPC_CNTR_PDRAM0_PGE ((uint32_t)(1<<22))
  2871. #define GPC_CNTR_MEGA_PUP_REQ ((uint32_t)(1<<3))
  2872. #define GPC_CNTR_MEGA_PDN_REQ ((uint32_t)(1<<2))
  2873. // page 1602
  2874. #define PGC_MEGA_CTRL (IMXRT_GPC.offset220)
  2875. #define PGC_MEGA_PUPSCR (IMXRT_GPC.offset224)
  2876. #define PGC_MEGA_PDNSCR (IMXRT_GPC.offset228)
  2877. #define PGC_MEGA_SR (IMXRT_GPC.offset22C)
  2878. #define PGC_CPU_CTRL (IMXRT_GPC.offset2A0)
  2879. #define PGC_CPU_PUPSCR (IMXRT_GPC.offset2A4)
  2880. #define PGC_CPU_PDNSCR (IMXRT_GPC.offset2A8)
  2881. #define PGC_CPU_SR (IMXRT_GPC.offset2AC)
  2882. #define PGC_MEGA_CTRL_PCR ((uint32_t)(1<<0))
  2883. #define PGC_MEGA_PUPSCR_SW2ISO(n) ((uint32_t)(((n) & 0x3F) << 8))
  2884. #define PGC_MEGA_PUPSCR_SW(n) ((uint32_t)(((n) & 0x3F) << 0))
  2885. #define PGC_MEGA_PDNSCR_ISO2SW(n) ((uint32_t)(((n) & 0x3F) << 8))
  2886. #define PGC_MEGA_PDNSCR_ISO(n) ((uint32_t)(((n) & 0x3F) << 0))
  2887. #define PGC_MEGA_SR_PSR ((uint32_t)(1<<0))
  2888. #define PGC_CPU_CTRL_PCR ((uint32_t)(1<<0))
  2889. #define PGC_CPU_PUPSCR_SW2ISO(n) ((uint32_t)(((n) & 0x3F) << 8))
  2890. #define PGC_CPU_PUPSCR_SW(n) ((uint32_t)(((n) & 0x3F) << 0))
  2891. #define PGC_CPU_PDNSCR_ISO2SW(n) ((uint32_t)(((n) & 0x3F) << 8))
  2892. #define PGC_CPU_PDNSCR_ISO(n) ((uint32_t)(((n) & 0x3F) << 0))
  2893. #define PGC_CPU_SR_PSR ((uint32_t)(1<<0))
  2894. // 32.4.1: page 1620
  2895. #define IMXRT_GPIO1 (*(IMXRT_REGISTER32_t *)0x401B8000)
  2896. #define GPIO1_DR (IMXRT_GPIO1.offset000)
  2897. #define GPIO1_GDIR (IMXRT_GPIO1.offset004)
  2898. #define GPIO1_PSR (IMXRT_GPIO1.offset008)
  2899. #define GPIO1_ICR1 (IMXRT_GPIO1.offset00C)
  2900. #define GPIO1_ICR2 (IMXRT_GPIO1.offset010)
  2901. #define GPIO1_IMR (IMXRT_GPIO1.offset014)
  2902. #define GPIO1_ISR (IMXRT_GPIO1.offset018)
  2903. #define GPIO1_EDGE_SEL (IMXRT_GPIO1.offset01C)
  2904. #define GPIO1_DR_SET (IMXRT_GPIO1.offset084)
  2905. #define GPIO1_DR_CLEAR (IMXRT_GPIO1.offset088)
  2906. #define GPIO1_DR_TOGGLE (IMXRT_GPIO1.offset08C)
  2907. #define IMXRT_GPIO2 (*(IMXRT_REGISTER32_t *)0x401BC000)
  2908. #define GPIO2_DR (IMXRT_GPIO2.offset000)
  2909. #define GPIO2_GDIR (IMXRT_GPIO2.offset004)
  2910. #define GPIO2_PSR (IMXRT_GPIO2.offset008)
  2911. #define GPIO2_ICR1 (IMXRT_GPIO2.offset00C)
  2912. #define GPIO2_ICR2 (IMXRT_GPIO2.offset010)
  2913. #define GPIO2_IMR (IMXRT_GPIO2.offset014)
  2914. #define GPIO2_ISR (IMXRT_GPIO2.offset018)
  2915. #define GPIO2_EDGE_SEL (IMXRT_GPIO2.offset01C)
  2916. #define GPIO2_DR_SET (IMXRT_GPIO2.offset084)
  2917. #define GPIO2_DR_CLEAR (IMXRT_GPIO2.offset088)
  2918. #define GPIO2_DR_TOGGLE (IMXRT_GPIO2.offset08C)
  2919. #define IMXRT_GPIO3 (*(IMXRT_REGISTER32_t *)0x401C0000)
  2920. #define GPIO3_DR (IMXRT_GPIO3.offset000)
  2921. #define GPIO3_GDIR (IMXRT_GPIO3.offset004)
  2922. #define GPIO3_PSR (IMXRT_GPIO3.offset008)
  2923. #define GPIO3_ICR1 (IMXRT_GPIO3.offset00C)
  2924. #define GPIO3_ICR2 (IMXRT_GPIO3.offset010)
  2925. #define GPIO3_IMR (IMXRT_GPIO3.offset014)
  2926. #define GPIO3_ISR (IMXRT_GPIO3.offset018)
  2927. #define GPIO3_EDGE_SEL (IMXRT_GPIO3.offset01C)
  2928. #define GPIO3_DR_SET (IMXRT_GPIO3.offset084)
  2929. #define GPIO3_DR_CLEAR (IMXRT_GPIO3.offset088)
  2930. #define GPIO3_DR_TOGGLE (IMXRT_GPIO3.offset08C)
  2931. #define IMXRT_GPIO4 (*(IMXRT_REGISTER32_t *)0x401C4000)
  2932. #define GPIO4_DR (IMXRT_GPIO4.offset000)
  2933. #define GPIO4_GDIR (IMXRT_GPIO4.offset004)
  2934. #define GPIO4_PSR (IMXRT_GPIO4.offset008)
  2935. #define GPIO4_ICR1 (IMXRT_GPIO4.offset00C)
  2936. #define GPIO4_ICR2 (IMXRT_GPIO4.offset010)
  2937. #define GPIO4_IMR (IMXRT_GPIO4.offset014)
  2938. #define GPIO4_ISR (IMXRT_GPIO4.offset018)
  2939. #define GPIO4_EDGE_SEL (IMXRT_GPIO4.offset01C)
  2940. #define GPIO4_DR_SET (IMXRT_GPIO4.offset084)
  2941. #define GPIO4_DR_CLEAR (IMXRT_GPIO4.offset088)
  2942. #define GPIO4_DR_TOGGLE (IMXRT_GPIO4.offset08C)
  2943. #define IMXRT_GPIO5 (*(IMXRT_REGISTER32_t *)0x400C0000)
  2944. #define GPIO5_DR (IMXRT_GPIO5.offset000)
  2945. #define GPIO5_GDIR (IMXRT_GPIO5.offset004)
  2946. #define GPIO5_PSR (IMXRT_GPIO5.offset008)
  2947. #define GPIO5_ICR1 (IMXRT_GPIO5.offset00C)
  2948. #define GPIO5_ICR2 (IMXRT_GPIO5.offset010)
  2949. #define GPIO5_IMR (IMXRT_GPIO5.offset014)
  2950. #define GPIO5_ISR (IMXRT_GPIO5.offset018)
  2951. #define GPIO5_EDGE_SEL (IMXRT_GPIO5.offset01C)
  2952. #define GPIO5_DR_SET (IMXRT_GPIO5.offset084)
  2953. #define GPIO5_DR_CLEAR (IMXRT_GPIO5.offset088)
  2954. #define GPIO5_DR_TOGGLE (IMXRT_GPIO5.offset08C)
  2955. // 33.6: page 1651
  2956. #define IMXRT_GPT1 (*(IMXRT_REGISTER32_t *)0x401EC000)
  2957. #define GPT1_CR (IMXRT_GPT1.offset000)
  2958. #define GPT1_PR (IMXRT_GPT1.offset004)
  2959. #define GPT1_SR (IMXRT_GPT1.offset008)
  2960. #define GPT1_IR (IMXRT_GPT1.offset00C)
  2961. #define GPT1_OCR1 (IMXRT_GPT1.offset010)
  2962. #define GPT1_OCR2 (IMXRT_GPT1.offset014)
  2963. #define GPT1_OCR3 (IMXRT_GPT1.offset018)
  2964. #define GPT1_ICR1 (IMXRT_GPT1.offset01C)
  2965. #define GPT1_ICR2 (IMXRT_GPT1.offset020)
  2966. #define GPT1_CNT (IMXRT_GPT1.offset024)
  2967. #define IMXRT_GPT2 (*(IMXRT_REGISTER32_t *)0x401F0000)
  2968. #define GPT2_CR (IMXRT_GPT2.offset000)
  2969. #define GPT2_PR (IMXRT_GPT2.offset004)
  2970. #define GPT2_SR (IMXRT_GPT2.offset008)
  2971. #define GPT2_IR (IMXRT_GPT2.offset00C)
  2972. #define GPT2_OCR1 (IMXRT_GPT2.offset010)
  2973. #define GPT2_OCR2 (IMXRT_GPT2.offset014)
  2974. #define GPT2_OCR3 (IMXRT_GPT2.offset018)
  2975. #define GPT2_ICR1 (IMXRT_GPT2.offset01C)
  2976. #define GPT2_ICR2 (IMXRT_GPT2.offset020)
  2977. #define GPT2_CNT (IMXRT_GPT2.offset024)
  2978. // 34.4: page 1671
  2979. #define IMXRT_IOMUXC_GPR (*(IMXRT_REGISTER32_t *)0x400AC000)
  2980. #define IOMUXC_GPR_GPR0 (IMXRT_IOMUXC_GPR.offset000)
  2981. #define IOMUXC_GPR_GPR1 (IMXRT_IOMUXC_GPR.offset004)
  2982. #define IOMUXC_GPR_GPR2 (IMXRT_IOMUXC_GPR.offset008)
  2983. #define IOMUXC_GPR_GPR3 (IMXRT_IOMUXC_GPR.offset00C)
  2984. #define IOMUXC_GPR_GPR4 (IMXRT_IOMUXC_GPR.offset010)
  2985. #define IOMUXC_GPR_GPR5 (IMXRT_IOMUXC_GPR.offset014)
  2986. #define IOMUXC_GPR_GPR6 (IMXRT_IOMUXC_GPR.offset018)
  2987. #define IOMUXC_GPR_GPR7 (IMXRT_IOMUXC_GPR.offset01C)
  2988. #define IOMUXC_GPR_GPR8 (IMXRT_IOMUXC_GPR.offset020)
  2989. #define IOMUXC_GPR_GPR9 (IMXRT_IOMUXC_GPR.offset024)
  2990. #define IOMUXC_GPR_GPR10 (IMXRT_IOMUXC_GPR.offset028)
  2991. #define IOMUXC_GPR_GPR11 (IMXRT_IOMUXC_GPR.offset02C)
  2992. #define IOMUXC_GPR_GPR12 (IMXRT_IOMUXC_GPR.offset030)
  2993. #define IOMUXC_GPR_GPR13 (IMXRT_IOMUXC_GPR.offset034)
  2994. #define IOMUXC_GPR_GPR14 (IMXRT_IOMUXC_GPR.offset038)
  2995. #define IOMUXC_GPR_GPR15 (IMXRT_IOMUXC_GPR.offset03C)
  2996. #define IOMUXC_GPR_GPR16 (IMXRT_IOMUXC_GPR.offset040)
  2997. #define IOMUXC_GPR_GPR17 (IMXRT_IOMUXC_GPR.offset044)
  2998. #define IOMUXC_GPR_GPR18 (IMXRT_IOMUXC_GPR.offset048)
  2999. #define IOMUXC_GPR_GPR19 (IMXRT_IOMUXC_GPR.offset04C)
  3000. #define IOMUXC_GPR_GPR20 (IMXRT_IOMUXC_GPR.offset050)
  3001. #define IOMUXC_GPR_GPR21 (IMXRT_IOMUXC_GPR.offset054)
  3002. #define IOMUXC_GPR_GPR22 (IMXRT_IOMUXC_GPR.offset058)
  3003. #define IOMUXC_GPR_GPR23 (IMXRT_IOMUXC_GPR.offset05C)
  3004. #define IOMUXC_GPR_GPR24 (IMXRT_IOMUXC_GPR.offset060)
  3005. #define IOMUXC_GPR_GPR25 (IMXRT_IOMUXC_GPR.offset064)
  3006. #define IOMUXC_GPR_GPR1_CM7_FORCE_HCLK_EN ((uint32_t)(1<<31))
  3007. #define IOMUXC_GPR_GPR1_ENET_IPG_CLK_S_EN ((uint32_t)(1<<23))
  3008. #define IOMUXC_GPR_GPR1_EXC_MON ((uint32_t)(1<<22))
  3009. #define IOMUXC_GPR_GPR1_SAI3_MCLK_DIR ((uint32_t)(1<<21))
  3010. #define IOMUXC_GPR_GPR1_SAI2_MCLK_DIR ((uint32_t)(1<<20))
  3011. #define IOMUXC_GPR_GPR1_SAI1_MCLK_DIR ((uint32_t)(1<<19))
  3012. #define IOMUXC_GPR_GPR1_ENET1_TX_CLK_DIR ((uint32_t)(1<<17))
  3013. #define IOMUXC_GPR_GPR1_USB_EXP_MODE ((uint32_t)(1<<15))
  3014. #define IOMUXC_GPR_GPR1_ENET1_CLK_SEL ((uint32_t)(1<<13))
  3015. #define IOMUXC_GPR_GPR1_GINT ((uint32_t)(1<<12))
  3016. #define IOMUXC_GPR_GPR1_SAI3_MCLK3_SEL(n) ((uint32_t)(((n) & 0x03) << 10))
  3017. #define IOMUXC_GPR_GPR1_SAI2_MCLK3_SEL(n) ((uint32_t)(((n) & 0x03) << 8))
  3018. #define IOMUXC_GPR_GPR1_SAI1_MCLK3_SEL(n) ((uint32_t)(((n) & 0x03) << 6))
  3019. #define IOMUXC_GPR_GPR1_SAI1_MCLK2_SEL(n) ((uint32_t)(((n) & 0x07) << 3))
  3020. #define IOMUXC_GPR_GPR1_SAI1_MCLK1_SEL(n) ((uint32_t)(((n) & 0x07) << 0))
  3021. #define IOMUXC_GPR_GPR1_SAI3_MCLK3_SEL_MASK IOMUXC_GPR_GPR1_SAI3_MCLK3_SEL(3)
  3022. #define IOMUXC_GPR_GPR1_SAI2_MCLK3_SEL_MASK IOMUXC_GPR_GPR1_SAI2_MCLK3_SEL(3)
  3023. #define IOMUXC_GPR_GPR1_SAI1_MCLK3_SEL_MASK IOMUXC_GPR_GPR1_SAI1_MCLK3_SEL(3)
  3024. #define IOMUXC_GPR_GPR1_SAI1_MCLK2_SEL_MASK IOMUXC_GPR_GPR1_SAI1_MCLK2_SEL(7)
  3025. #define IOMUXC_GPR_GPR1_SAI1_MCLK1_SEL_MASK IOMUXC_GPR_GPR1_SAI1_MCLK1_SEL(7)
  3026. #define IOMUXC_GPR_GPR2_QTIMER4_TMR_CNTS_FREEZE ((uint32_t)(1<<31))
  3027. #define IOMUXC_GPR_GPR2_QTIMER3_TMR_CNTS_FREEZE ((uint32_t)(1<<30))
  3028. #define IOMUXC_GPR_GPR2_QTIMER2_TMR_CNTS_FREEZE ((uint32_t)(1<<29))
  3029. #define IOMUXC_GPR_GPR2_QTIMER1_TMR_CNTS_FREEZE ((uint32_t)(1<<28))
  3030. #define IOMUXC_GPR_GPR2_MQS_OVERSAMPLE ((uint32_t)(1<<26))
  3031. #define IOMUXC_GPR_GPR2_MQS_EN ((uint32_t)(1<<25))
  3032. #define IOMUXC_GPR_GPR2_MQS_SW_RST ((uint32_t)(1<<24))
  3033. #define IOMUXC_GPR_GPR2_MQS_CLK_DIV(n) ((uint32_t)(((n) & 0xFF) << 16))
  3034. #define IOMUXC_GPR_GPR2_L2_MEM_DEEPSLEEP ((uint32_t)(1<<14))
  3035. #define IOMUXC_GPR_GPR2_L2_MEM_EN_POWERSAVING ((uint32_t)(1<<12))
  3036. #define IOMUXC_GPR_GPR2_MQS_CLK_DIV_MASK IOMUXC_GPR_GPR2_MQS_CLK_DIV(255)
  3037. #define IOMUXC_GPR_GPR3_OCRAM_STATUS(n) ((uint32_t)(((n) & 0x0F) << 16))
  3038. #define IOMUXC_GPR_GPR3_DCP_KEY_SEL ((uint32_t)(1<<4))
  3039. #define IOMUXC_GPR_GPR3_OCRAM_CTL(n) ((uint32_t)(((n) & 0x0F) << 0))
  3040. #define IOMUXC_GPR_GPR4_FLEXIO2_STOP_ACK ((uint32_t)(1<<29))
  3041. #define IOMUXC_GPR_GPR4_FLEXIO1_STOP_ACK ((uint32_t)(1<<28))
  3042. #define IOMUXC_GPR_GPR4_FLEXSPI_STOP_ACK ((uint32_t)(1<<27))
  3043. #define IOMUXC_GPR_GPR4_PIT_STOP_ACK ((uint32_t)(1<<26))
  3044. #define IOMUXC_GPR_GPR4_SEMC_STOP_ACK ((uint32_t)(1<<25))
  3045. #define IOMUXC_GPR_GPR4_SAI3_STOP_ACK ((uint32_t)(1<<23))
  3046. #define IOMUXC_GPR_GPR4_SAI2_STOP_ACK ((uint32_t)(1<<22))
  3047. #define IOMUXC_GPR_GPR4_SAI1_STOP_ACK ((uint32_t)(1<<21))
  3048. #define IOMUXC_GPR_GPR4_ENET_STOP_ACK ((uint32_t)(1<<20))
  3049. #define IOMUXC_GPR_GPR4_TRNG_STOP_ACK ((uint32_t)(1<<19))
  3050. #define IOMUXC_GPR_GPR4_CAN2_STOP_ACK ((uint32_t)(1<<18))
  3051. #define IOMUXC_GPR_GPR4_CAN1_STOP_ACK ((uint32_t)(1<<17))
  3052. #define IOMUXC_GPR_GPR4_EDMA_STOP_ACK ((uint32_t)(1<<16))
  3053. #define IOMUXC_GPR_GPR4_FLEXIO2_STOP_REQ ((uint32_t)(1<<13))
  3054. #define IOMUXC_GPR_GPR4_FLEXIO1_STOP_REQ ((uint32_t)(1<<12))
  3055. #define IOMUXC_GPR_GPR4_FLEXSPI_STOP_REQ ((uint32_t)(1<<11))
  3056. #define IOMUXC_GPR_GPR4_PIT_STOP_REQ ((uint32_t)(1<<10))
  3057. #define IOMUXC_GPR_GPR4_SEMC_STOP_REQ ((uint32_t)(1<<9))
  3058. #define IOMUXC_GPR_GPR4_SAI3_STOP_REQ ((uint32_t)(1<<7))
  3059. #define IOMUXC_GPR_GPR4_SAI2_STOP_REQ ((uint32_t)(1<<6))
  3060. #define IOMUXC_GPR_GPR4_SAI1_STOP_REQ ((uint32_t)(1<<5))
  3061. #define IOMUXC_GPR_GPR4_ENET_STOP_REQ ((uint32_t)(1<<4))
  3062. #define IOMUXC_GPR_GPR4_TRNG_STOP_REQ ((uint32_t)(1<<3))
  3063. #define IOMUXC_GPR_GPR4_CAN2_STOP_REQ ((uint32_t)(1<<2))
  3064. #define IOMUXC_GPR_GPR4_CAN1_STOP_REQ ((uint32_t)(1<<1))
  3065. #define IOMUXC_GPR_GPR4_EDMA_STOP_REQ ((uint32_t)(1<<0))
  3066. #define IOMUXC_GPR_GPR5_VREF_1M_CLK_GPT2 ((uint32_t)(1<<29))
  3067. #define IOMUXC_GPR_GPR5_VREF_1M_CLK_GPT1 ((uint32_t)(1<<28))
  3068. #define IOMUXC_GPR_GPR5_ENET_EVENT3IN_SEL ((uint32_t)(1<<25))
  3069. #define IOMUXC_GPR_GPR5_GPT2_CAPIN2_SEL ((uint32_t)(1<<24))
  3070. #define IOMUXC_GPR_GPR5_GPT2_CAPIN1_SEL ((uint32_t)(1<<23))
  3071. #define IOMUXC_GPR_GPR5_WDOG2_MASK ((uint32_t)(1<<7))
  3072. #define IOMUXC_GPR_GPR5_WDOG1_MASK ((uint32_t)(1<<6))
  3073. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_19 ((uint32_t)(1<<31))
  3074. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_18 ((uint32_t)(1<<30))
  3075. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_17 ((uint32_t)(1<<29))
  3076. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_16 ((uint32_t)(1<<28))
  3077. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_15 ((uint32_t)(1<<27))
  3078. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_14 ((uint32_t)(1<<26))
  3079. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_13 ((uint32_t)(1<<25))
  3080. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_12 ((uint32_t)(1<<24))
  3081. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_11 ((uint32_t)(1<<23))
  3082. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_10 ((uint32_t)(1<<22))
  3083. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_9 ((uint32_t)(1<<21))
  3084. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_8 ((uint32_t)(1<<20))
  3085. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_7 ((uint32_t)(1<<19))
  3086. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_6 ((uint32_t)(1<<18))
  3087. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_5 ((uint32_t)(1<<17))
  3088. #define IOMUXC_GPR_GPR6_IOMUXC_XBAR_DIR_SEL_4 ((uint32_t)(1<<16))
  3089. #define IOMUXC_GPR_GPR6_QTIMER4_TRM3_INPUT_SEL ((uint32_t)(1<<15))
  3090. #define IOMUXC_GPR_GPR6_QTIMER4_TRM2_INPUT_SEL ((uint32_t)(1<<14))
  3091. #define IOMUXC_GPR_GPR6_QTIMER4_TRM1_INPUT_SEL ((uint32_t)(1<<13))
  3092. #define IOMUXC_GPR_GPR6_QTIMER4_TRM0_INPUT_SEL ((uint32_t)(1<<12))
  3093. #define IOMUXC_GPR_GPR6_QTIMER3_TRM3_INPUT_SEL ((uint32_t)(1<<11))
  3094. #define IOMUXC_GPR_GPR6_QTIMER3_TRM2_INPUT_SEL ((uint32_t)(1<<10))
  3095. #define IOMUXC_GPR_GPR6_QTIMER3_TRM1_INPUT_SEL ((uint32_t)(1<<9))
  3096. #define IOMUXC_GPR_GPR6_QTIMER3_TRM0_INPUT_SEL ((uint32_t)(1<<8))
  3097. #define IOMUXC_GPR_GPR6_QTIMER2_TRM3_INPUT_SEL ((uint32_t)(1<<7))
  3098. #define IOMUXC_GPR_GPR6_QTIMER2_TRM2_INPUT_SEL ((uint32_t)(1<<6))
  3099. #define IOMUXC_GPR_GPR6_QTIMER2_TRM1_INPUT_SEL ((uint32_t)(1<<5))
  3100. #define IOMUXC_GPR_GPR6_QTIMER2_TRM0_INPUT_SEL ((uint32_t)(1<<4))
  3101. #define IOMUXC_GPR_GPR6_QTIMER1_TRM3_INPUT_SEL ((uint32_t)(1<<3))
  3102. #define IOMUXC_GPR_GPR6_QTIMER1_TRM2_INPUT_SEL ((uint32_t)(1<<2))
  3103. #define IOMUXC_GPR_GPR6_QTIMER1_TRM1_INPUT_SEL ((uint32_t)(1<<1))
  3104. #define IOMUXC_GPR_GPR6_QTIMER1_TRM0_INPUT_SEL ((uint32_t)(1<<0))
  3105. #define IOMUXC_GPR_GPR7_LPUART8_STOP_ACK ((uint32_t)(1<<31))
  3106. #define IOMUXC_GPR_GPR7_LPUART7_STOP_ACK ((uint32_t)(1<<30))
  3107. #define IOMUXC_GPR_GPR7_LPUART6_STOP_ACK ((uint32_t)(1<<29))
  3108. #define IOMUXC_GPR_GPR7_LPUART5_STOP_ACK ((uint32_t)(1<<28))
  3109. #define IOMUXC_GPR_GPR7_LPUART4_STOP_ACK ((uint32_t)(1<<27))
  3110. #define IOMUXC_GPR_GPR7_LPUART3_STOP_ACK ((uint32_t)(1<<26))
  3111. #define IOMUXC_GPR_GPR7_LPUART2_STOP_ACK ((uint32_t)(1<<25))
  3112. #define IOMUXC_GPR_GPR7_LPUART1_STOP_ACK ((uint32_t)(1<<24))
  3113. #define IOMUXC_GPR_GPR7_LPSPI4_STOP_ACK ((uint32_t)(1<<23))
  3114. #define IOMUXC_GPR_GPR7_LPSPI3_STOP_ACK ((uint32_t)(1<<22))
  3115. #define IOMUXC_GPR_GPR7_LPSPI2_STOP_ACK ((uint32_t)(1<<21))
  3116. #define IOMUXC_GPR_GPR7_LPSPI1_STOP_ACK ((uint32_t)(1<<20))
  3117. #define IOMUXC_GPR_GPR7_LPI2C4_STOP_ACK ((uint32_t)(1<<19))
  3118. #define IOMUXC_GPR_GPR7_LPI2C3_STOP_ACK ((uint32_t)(1<<18))
  3119. #define IOMUXC_GPR_GPR7_LPI2C2_STOP_ACK ((uint32_t)(1<<17))
  3120. #define IOMUXC_GPR_GPR7_LPI2C1_STOP_ACK ((uint32_t)(1<<16))
  3121. #define IOMUXC_GPR_GPR7_LPUART8_STOP_REQ ((uint32_t)(1<<15))
  3122. #define IOMUXC_GPR_GPR7_LPUART7_STOP_REQ ((uint32_t)(1<<14))
  3123. #define IOMUXC_GPR_GPR7_LPUART6_STOP_REQ ((uint32_t)(1<<13))
  3124. #define IOMUXC_GPR_GPR7_LPUART5_STOP_REQ ((uint32_t)(1<<12))
  3125. #define IOMUXC_GPR_GPR7_LPUART4_STOP_REQ ((uint32_t)(1<<11))
  3126. #define IOMUXC_GPR_GPR7_LPUART3_STOP_REQ ((uint32_t)(1<<10))
  3127. #define IOMUXC_GPR_GPR7_LPUART2_STOP_REQ ((uint32_t)(1<<9))
  3128. #define IOMUXC_GPR_GPR7_LPUART1_STOP_REQ ((uint32_t)(1<<8))
  3129. #define IOMUXC_GPR_GPR7_LPSPI4_STOP_REQ ((uint32_t)(1<<7))
  3130. #define IOMUXC_GPR_GPR7_LPSPI3_STOP_REQ ((uint32_t)(1<<6))
  3131. #define IOMUXC_GPR_GPR7_LPSPI2_STOP_REQ ((uint32_t)(1<<5))
  3132. #define IOMUXC_GPR_GPR7_LPSPI1_STOP_REQ ((uint32_t)(1<<4))
  3133. #define IOMUXC_GPR_GPR7_LPI2C4_STOP_REQ ((uint32_t)(1<<3))
  3134. #define IOMUXC_GPR_GPR7_LPI2C3_STOP_REQ ((uint32_t)(1<<2))
  3135. #define IOMUXC_GPR_GPR7_LPI2C2_STOP_REQ ((uint32_t)(1<<1))
  3136. #define IOMUXC_GPR_GPR7_LPI2C1_STOP_REQ ((uint32_t)(1<<0))
  3137. #define IOMUXC_GPR_GPR8_LPUART8_IPG_DOZE ((uint32_t)(1<<31))
  3138. #define IOMUXC_GPR_GPR8_LPUART8_IPG_STOP_MODE ((uint32_t)(1<<30))
  3139. #define IOMUXC_GPR_GPR8_LPUART7_IPG_DOZE ((uint32_t)(1<<29))
  3140. #define IOMUXC_GPR_GPR8_LPUART7_IPG_STOP_MODE ((uint32_t)(1<<28))
  3141. #define IOMUXC_GPR_GPR8_LPUART6_IPG_DOZE ((uint32_t)(1<<27))
  3142. #define IOMUXC_GPR_GPR8_LPUART6_IPG_STOP_MODE ((uint32_t)(1<<26))
  3143. #define IOMUXC_GPR_GPR8_LPUART5_IPG_DOZE ((uint32_t)(1<<25))
  3144. #define IOMUXC_GPR_GPR8_LPUART5_IPG_STOP_MODE ((uint32_t)(1<<24))
  3145. #define IOMUXC_GPR_GPR8_LPUART4_IPG_DOZE ((uint32_t)(1<<23))
  3146. #define IOMUXC_GPR_GPR8_LPUART4_IPG_STOP_MODE ((uint32_t)(1<<22))
  3147. #define IOMUXC_GPR_GPR8_LPUART3_IPG_DOZE ((uint32_t)(1<<21))
  3148. #define IOMUXC_GPR_GPR8_LPUART3_IPG_STOP_MODE ((uint32_t)(1<<20))
  3149. #define IOMUXC_GPR_GPR8_LPUART2_IPG_DOZE ((uint32_t)(1<<19))
  3150. #define IOMUXC_GPR_GPR8_LPUART2_IPG_STOP_MODE ((uint32_t)(1<<18))
  3151. #define IOMUXC_GPR_GPR8_LPUART1_IPG_DOZE ((uint32_t)(1<<17))
  3152. #define IOMUXC_GPR_GPR8_LPUART1_IPG_STOP_MODE ((uint32_t)(1<<16))
  3153. #define IOMUXC_GPR_GPR8_LPSPI4_IPG_DOZE ((uint32_t)(1<<15))
  3154. #define IOMUXC_GPR_GPR8_LPSPI4_IPG_STOP_MODE ((uint32_t)(1<<14))
  3155. #define IOMUXC_GPR_GPR8_LPSPI3_IPG_DOZE ((uint32_t)(1<<13))
  3156. #define IOMUXC_GPR_GPR8_LPSPI3_IPG_STOP_MODE ((uint32_t)(1<<12))
  3157. #define IOMUXC_GPR_GPR8_LPSPI2_IPG_DOZE ((uint32_t)(1<<11))
  3158. #define IOMUXC_GPR_GPR8_LPSPI2_IPG_STOP_MODE ((uint32_t)(1<<10))
  3159. #define IOMUXC_GPR_GPR8_LPSPI1_IPG_DOZE ((uint32_t)(1<<9))
  3160. #define IOMUXC_GPR_GPR8_LPSPI1_IPG_STOP_MODE ((uint32_t)(1<<8))
  3161. #define IOMUXC_GPR_GPR8_LPI2C4_IPG_DOZE ((uint32_t)(1<<7))
  3162. #define IOMUXC_GPR_GPR8_LPI2C4_IPG_STOP_MODE ((uint32_t)(1<<6))
  3163. #define IOMUXC_GPR_GPR8_LPI2C3_IPG_DOZE ((uint32_t)(1<<5))
  3164. #define IOMUXC_GPR_GPR8_LPI2C3_IPG_STOP_MODE ((uint32_t)(1<<4))
  3165. #define IOMUXC_GPR_GPR8_LPI2C2_IPG_DOZE ((uint32_t)(1<<3))
  3166. #define IOMUXC_GPR_GPR8_LPI2C2_IPG_STOP_MODE ((uint32_t)(1<<2))
  3167. #define IOMUXC_GPR_GPR8_LPI2C1_IPG_DOZE ((uint32_t)(1<<1))
  3168. #define IOMUXC_GPR_GPR8_LPI2C1_IPG_STOP_MODE ((uint32_t)(1<<0))
  3169. #define IOMUXC_GPR_GPR10_LOCK_OCRAM_TZ_ADDR(n) ((uint32_t)(((n) & 0x7F) << 25))
  3170. #define IOMUXC_GPR_GPR10_LOCK_OCRAM_TZ_EN ((uint32_t)(1<<24))
  3171. #define IOMUXC_GPR_GPR10_LOCK_DCPKEY_OCOTP_OR_KEYMUX ((uint32_t)(1<<20))
  3172. #define IOMUXC_GPR_GPR10_LOCK_SEC_ERR_RESP ((uint32_t)(1<<18))
  3173. #define IOMUXC_GPR_GPR10_LOCK_DBG_EN ((uint32_t)(1<<17))
  3174. #define IOMUXC_GPR_GPR10_LOCK_NIDEN ((uint32_t)(1<<16))
  3175. #define IOMUXC_GPR_GPR10_OCRAM_TZ_ADDR(n) ((uint32_t)(((n) & 0x7F) << 9))
  3176. #define IOMUXC_GPR_GPR10_OCRAM_TZ_EN ((uint32_t)(1<<8))
  3177. #define IOMUXC_GPR_GPR10_DCPKEY_OCOTP_OR_KEYMUX ((uint32_t)(1<<4))
  3178. #define IOMUXC_GPR_GPR10_SEC_ERR_RESP ((uint32_t)(1<<2))
  3179. #define IOMUXC_GPR_GPR10_DBG_EN ((uint32_t)(1<<1))
  3180. #define IOMUXC_GPR_GPR10_NIDEN ((uint32_t)(1<<0))
  3181. #define IOMUXC_GPR_GPR11_LOCK_BEE_DE_RX_EN(n) ((uint32_t)(((n) & 0x0F) << 24))
  3182. #define IOMUXC_GPR_GPR11_LOCK_M7_APC_AC_R3_CTRL(n) ((uint32_t)(((n) & 0x03) << 22))
  3183. #define IOMUXC_GPR_GPR11_LOCK_M7_APC_AC_R2_CTRL(n) ((uint32_t)(((n) & 0x03) << 20))
  3184. #define IOMUXC_GPR_GPR11_LOCK_M7_APC_AC_R1_CTRL(n) ((uint32_t)(((n) & 0x03) << 18))
  3185. #define IOMUXC_GPR_GPR11_LOCK_M7_APC_AC_R0_CTRL(n) ((uint32_t)(((n) & 0x03) << 16))
  3186. #define IOMUXC_GPR_GPR11_BEE_DE_RX_EN(n) ((uint32_t)(((n) & 0x0F) << 8))
  3187. #define IOMUXC_GPR_GPR11_M7_APC_AC_R3_CTRL(n) ((uint32_t)(((n) & 0x03) << 6))
  3188. #define IOMUXC_GPR_GPR11_M7_APC_AC_R2_CTRL(n) ((uint32_t)(((n) & 0x03) << 4))
  3189. #define IOMUXC_GPR_GPR11_M7_APC_AC_R1_CTRL(n) ((uint32_t)(((n) & 0x03) << 2))
  3190. #define IOMUXC_GPR_GPR11_M7_APC_AC_R0_CTRL(n) ((uint32_t)(((n) & 0x03) << 0))
  3191. #define IOMUXC_GPR_GPR12_ACMP_IPG_STOP_MODE ((uint32_t)(1<<4))
  3192. #define IOMUXC_GPR_GPR12_FLEXIO2_IPG_DOZE ((uint32_t)(1<<3))
  3193. #define IOMUXC_GPR_GPR12_FLEXIO2_IPG_STOP_MODE ((uint32_t)(1<<2))
  3194. #define IOMUXC_GPR_GPR12_FLEXIO1_IPG_DOZE ((uint32_t)(1<<1))
  3195. #define IOMUXC_GPR_GPR12_FLEXIO1_IPG_STOP_MODE ((uint32_t)(1<<0))
  3196. #define IOMUXC_GPR_GPR13_CACHE_USB ((uint32_t)(1<<13))
  3197. #define IOMUXC_GPR_GPR13_CACHE_ENET ((uint32_t)(1<<7))
  3198. #define IOMUXC_GPR_GPR13_AWCACHE_USDHC ((uint32_t)(1<<1))
  3199. #define IOMUXC_GPR_GPR13_ARCACHE_USDHC ((uint32_t)(1<<0))
  3200. #define IOMUXC_GPR_GPR14_CM7_MX6RT_CFGDTCMSZ(n) ((uint32_t)(((n) & 0x0F) << 20))
  3201. #define IOMUXC_GPR_GPR14_CM7_MX6RT_CFGITCMSZ(n) ((uint32_t)(((n) & 0x0F) << 16))
  3202. #define IOMUXC_GPR_GPR14_ACMP4_SAMPLE_SYNC_EN ((uint32_t)(1<<11))
  3203. #define IOMUXC_GPR_GPR14_ACMP3_SAMPLE_SYNC_EN ((uint32_t)(1<<10))
  3204. #define IOMUXC_GPR_GPR14_ACMP2_SAMPLE_SYNC_EN ((uint32_t)(1<<9))
  3205. #define IOMUXC_GPR_GPR14_ACMP1_SAMPLE_SYNC_EN ((uint32_t)(1<<8))
  3206. #define IOMUXC_GPR_GPR14_ACMP4_CMP_IGEN_TRIM_UP ((uint32_t)(1<<7))
  3207. #define IOMUXC_GPR_GPR14_ACMP3_CMP_IGEN_TRIM_UP ((uint32_t)(1<<6))
  3208. #define IOMUXC_GPR_GPR14_ACMP2_CMP_IGEN_TRIM_UP ((uint32_t)(1<<5))
  3209. #define IOMUXC_GPR_GPR14_ACMP1_CMP_IGEN_TRIM_UP ((uint32_t)(1<<4))
  3210. #define IOMUXC_GPR_GPR14_ACMP4_CMP_IGEN_TRIM_DN ((uint32_t)(1<<3))
  3211. #define IOMUXC_GPR_GPR14_ACMP3_CMP_IGEN_TRIM_DN ((uint32_t)(1<<2))
  3212. #define IOMUXC_GPR_GPR14_ACMP2_CMP_IGEN_TRIM_DN ((uint32_t)(1<<1))
  3213. #define IOMUXC_GPR_GPR14_ACMP1_CMP_IGEN_TRIM_DN ((uint32_t)(1<<0))
  3214. #define IOMUXC_GPR_GPR16_CM7_INIT_VTOR(n) ((uint32_t)(((n) & 0x1FFFFFF) << 7))
  3215. #define IOMUXC_GPR_GPR16_FLEXRAM_BANK_CFG_SEL ((uint32_t)(1<<2))
  3216. #define IOMUXC_GPR_GPR16_INIT_DTCM_EN ((uint32_t)(1<<1))
  3217. #define IOMUXC_GPR_GPR16_INIT_ITCM_EN ((uint32_t)(1<<0))
  3218. #define IOMUXC_GPR_GPR18_M7_APC_AC_R0_BOT(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3219. #define IOMUXC_GPR_GPR18_LOCK_M7_APC_AC_R0_BOT ((uint32_t)(1<<0))
  3220. #define IOMUXC_GPR_GPR19_M7_APC_AC_R0_TOP(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3221. #define IOMUXC_GPR_GPR19_LOCK_M7_APC_AC_R0_TOP ((uint32_t)(1<<0))
  3222. #define IOMUXC_GPR_GPR20_M7_APC_AC_R1_BOT(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3223. #define IOMUXC_GPR_GPR20_LOCK_M7_APC_AC_R1_BOT ((uint32_t)(1<<0))
  3224. #define IOMUXC_GPR_GPR21_M7_APC_AC_R1_TOP(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3225. #define IOMUXC_GPR_GPR21_LOCK_M7_APC_AC_R1_TOP ((uint32_t)(1<<0))
  3226. #define IOMUXC_GPR_GPR22_M7_APC_AC_R2_BOT(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3227. #define IOMUXC_GPR_GPR22_LOCK_M7_APC_AC_R2_BOT ((uint32_t)(1<<0))
  3228. #define IOMUXC_GPR_GPR23_M7_APC_AC_R2_TOP(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3229. #define IOMUXC_GPR_GPR23_LOCK_M7_APC_AC_R2_TOP ((uint32_t)(1<<0))
  3230. #define IOMUXC_GPR_GPR24_M7_APC_AC_R3_BOT(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3231. #define IOMUXC_GPR_GPR24_LOCK_M7_APC_AC_R3_BOT ((uint32_t)(1<<0))
  3232. #define IOMUXC_GPR_GPR25_M7_APC_AC_R3_TOP(n) ((uint32_t)(((n) & 0x1FFFFFFF) << 3))
  3233. #define IOMUXC_GPR_GPR25_LOCK_M7_APC_AC_R3_TOP ((uint32_t)(1<<0))
  3234. // 34.5: page 1717
  3235. #define IMXRT_IOMUXC_SNVS (*(IMXRT_REGISTER32_t *)0x400A8000)
  3236. #define IOMUXC_SNVS_SW_MUX_CTL_PAD_WAKEUP (IMXRT_IOMUXC_SNVS.offset000)
  3237. #define IOMUXC_SNVS_SW_MUX_CTL_PAD_PMIC_ON_REQ (IMXRT_IOMUXC_SNVS.offset004)
  3238. #define IOMUXC_SNVS_SW_MUX_CTL_PAD_PMIC_STBY_REQ (IMXRT_IOMUXC_SNVS.offset008)
  3239. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_TEST_MODE (IMXRT_IOMUXC_SNVS.offset00C)
  3240. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_POR_B (IMXRT_IOMUXC_SNVS.offset010)
  3241. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_ONOFF (IMXRT_IOMUXC_SNVS.offset014)
  3242. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_WAKEUP (IMXRT_IOMUXC_SNVS.offset018)
  3243. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_PMIC_ON_REQ (IMXRT_IOMUXC_SNVS.offset01C)
  3244. #define IOMUXC_SNVS_SW_PAD_CTL_PAD_PMIC_STBY_REQ (IMXRT_IOMUXC_SNVS.offset020)
  3245. // 34.6: page 1732
  3246. #define IMXRT_IOMUXC_SNVS_GPR (*(IMXRT_REGISTER32_t *)0x400A4000)
  3247. #define IOMUXC_SNVS_GPR_GPR0 (IMXRT_IOMUXC_SNVS_GPR.offset000)
  3248. #define IOMUXC_SNVS_GPR_GPR1 (IMXRT_IOMUXC_SNVS_GPR.offset004)
  3249. #define IOMUXC_SNVS_GPR_GPR2 (IMXRT_IOMUXC_SNVS_GPR.offset008)
  3250. #define IOMUXC_SNVS_GPR_GPR3 (IMXRT_IOMUXC_SNVS_GPR.offset00C)
  3251. // 34.7: page 1736
  3252. #define IMXRT_IOMUXC (*(IMXRT_REGISTER32_t *)0x401F8000)
  3253. #define IMXRT_IOMUXC_b (*(IMXRT_REGISTER32_t *)0x401F8400)
  3254. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_00 (IMXRT_IOMUXC.offset014)
  3255. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_01 (IMXRT_IOMUXC.offset018)
  3256. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_02 (IMXRT_IOMUXC.offset01C)
  3257. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_03 (IMXRT_IOMUXC.offset020)
  3258. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_04 (IMXRT_IOMUXC.offset024)
  3259. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_05 (IMXRT_IOMUXC.offset028)
  3260. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_06 (IMXRT_IOMUXC.offset02C)
  3261. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_07 (IMXRT_IOMUXC.offset030)
  3262. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_08 (IMXRT_IOMUXC.offset034)
  3263. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_09 (IMXRT_IOMUXC.offset038)
  3264. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_10 (IMXRT_IOMUXC.offset03C)
  3265. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_11 (IMXRT_IOMUXC.offset040)
  3266. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_12 (IMXRT_IOMUXC.offset044)
  3267. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_13 (IMXRT_IOMUXC.offset048)
  3268. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_14 (IMXRT_IOMUXC.offset04C)
  3269. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_15 (IMXRT_IOMUXC.offset050)
  3270. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_16 (IMXRT_IOMUXC.offset054)
  3271. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_17 (IMXRT_IOMUXC.offset058)
  3272. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_18 (IMXRT_IOMUXC.offset05C)
  3273. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_19 (IMXRT_IOMUXC.offset060)
  3274. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_20 (IMXRT_IOMUXC.offset064)
  3275. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_21 (IMXRT_IOMUXC.offset068)
  3276. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_22 (IMXRT_IOMUXC.offset06C)
  3277. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_23 (IMXRT_IOMUXC.offset070)
  3278. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_24 (IMXRT_IOMUXC.offset074)
  3279. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_25 (IMXRT_IOMUXC.offset078)
  3280. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_26 (IMXRT_IOMUXC.offset07C)
  3281. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_27 (IMXRT_IOMUXC.offset080)
  3282. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_28 (IMXRT_IOMUXC.offset084)
  3283. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_29 (IMXRT_IOMUXC.offset088)
  3284. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_30 (IMXRT_IOMUXC.offset08C)
  3285. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_31 (IMXRT_IOMUXC.offset090)
  3286. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_32 (IMXRT_IOMUXC.offset094)
  3287. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_33 (IMXRT_IOMUXC.offset098)
  3288. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_34 (IMXRT_IOMUXC.offset09C)
  3289. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_35 (IMXRT_IOMUXC.offset0A0)
  3290. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_36 (IMXRT_IOMUXC.offset0A4)
  3291. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_37 (IMXRT_IOMUXC.offset0A8)
  3292. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_38 (IMXRT_IOMUXC.offset0AC)
  3293. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_39 (IMXRT_IOMUXC.offset0B0)
  3294. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_40 (IMXRT_IOMUXC.offset0B4)
  3295. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_EMC_41 (IMXRT_IOMUXC.offset0B8)
  3296. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_00 (IMXRT_IOMUXC.offset0BC)
  3297. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_01 (IMXRT_IOMUXC.offset0C0)
  3298. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_02 (IMXRT_IOMUXC.offset0C4)
  3299. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_03 (IMXRT_IOMUXC.offset0C8)
  3300. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_04 (IMXRT_IOMUXC.offset0CC)
  3301. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_05 (IMXRT_IOMUXC.offset0D0)
  3302. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_06 (IMXRT_IOMUXC.offset0D4)
  3303. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_07 (IMXRT_IOMUXC.offset0D8)
  3304. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_08 (IMXRT_IOMUXC.offset0DC)
  3305. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_09 (IMXRT_IOMUXC.offset0E0)
  3306. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_10 (IMXRT_IOMUXC.offset0E4)
  3307. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_11 (IMXRT_IOMUXC.offset0E8)
  3308. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_12 (IMXRT_IOMUXC.offset0EC)
  3309. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_13 (IMXRT_IOMUXC.offset0F0)
  3310. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_14 (IMXRT_IOMUXC.offset0F4)
  3311. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B0_15 (IMXRT_IOMUXC.offset0F8)
  3312. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_00 (IMXRT_IOMUXC.offset0FC)
  3313. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_01 (IMXRT_IOMUXC.offset100)
  3314. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_02 (IMXRT_IOMUXC.offset104)
  3315. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_03 (IMXRT_IOMUXC.offset108)
  3316. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_04 (IMXRT_IOMUXC.offset10C)
  3317. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_05 (IMXRT_IOMUXC.offset110)
  3318. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_06 (IMXRT_IOMUXC.offset114)
  3319. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_07 (IMXRT_IOMUXC.offset118)
  3320. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_08 (IMXRT_IOMUXC.offset11C)
  3321. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_09 (IMXRT_IOMUXC.offset120)
  3322. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_10 (IMXRT_IOMUXC.offset124)
  3323. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_11 (IMXRT_IOMUXC.offset128)
  3324. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_12 (IMXRT_IOMUXC.offset12C)
  3325. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_13 (IMXRT_IOMUXC.offset130)
  3326. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_14 (IMXRT_IOMUXC.offset134)
  3327. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_AD_B1_15 (IMXRT_IOMUXC.offset138)
  3328. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_00 (IMXRT_IOMUXC.offset13C)
  3329. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_01 (IMXRT_IOMUXC.offset140)
  3330. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_02 (IMXRT_IOMUXC.offset144)
  3331. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_03 (IMXRT_IOMUXC.offset148)
  3332. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_04 (IMXRT_IOMUXC.offset14C)
  3333. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_05 (IMXRT_IOMUXC.offset150)
  3334. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_06 (IMXRT_IOMUXC.offset154)
  3335. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_07 (IMXRT_IOMUXC.offset158)
  3336. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_08 (IMXRT_IOMUXC.offset15C)
  3337. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_09 (IMXRT_IOMUXC.offset160)
  3338. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_10 (IMXRT_IOMUXC.offset164)
  3339. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_11 (IMXRT_IOMUXC.offset168)
  3340. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_12 (IMXRT_IOMUXC.offset16C)
  3341. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_13 (IMXRT_IOMUXC.offset170)
  3342. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_14 (IMXRT_IOMUXC.offset174)
  3343. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B0_15 (IMXRT_IOMUXC.offset178)
  3344. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_00 (IMXRT_IOMUXC.offset17C)
  3345. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_01 (IMXRT_IOMUXC.offset180)
  3346. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_02 (IMXRT_IOMUXC.offset184)
  3347. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_03 (IMXRT_IOMUXC.offset188)
  3348. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_04 (IMXRT_IOMUXC.offset18C)
  3349. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_05 (IMXRT_IOMUXC.offset190)
  3350. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_06 (IMXRT_IOMUXC.offset194)
  3351. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_07 (IMXRT_IOMUXC.offset198)
  3352. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_08 (IMXRT_IOMUXC.offset19C)
  3353. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_09 (IMXRT_IOMUXC.offset1A0)
  3354. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_10 (IMXRT_IOMUXC.offset1A4)
  3355. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_11 (IMXRT_IOMUXC.offset1A8)
  3356. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_12 (IMXRT_IOMUXC.offset1AC)
  3357. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_13 (IMXRT_IOMUXC.offset1B0)
  3358. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_14 (IMXRT_IOMUXC.offset1B4)
  3359. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_15 (IMXRT_IOMUXC.offset1B8)
  3360. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_00 (IMXRT_IOMUXC.offset1BC)
  3361. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_01 (IMXRT_IOMUXC.offset1C0)
  3362. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_02 (IMXRT_IOMUXC.offset1C4)
  3363. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_03 (IMXRT_IOMUXC.offset1C8)
  3364. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_04 (IMXRT_IOMUXC.offset1CC)
  3365. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B0_05 (IMXRT_IOMUXC.offset1D0)
  3366. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_00 (IMXRT_IOMUXC.offset1D4)
  3367. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_01 (IMXRT_IOMUXC.offset1D8)
  3368. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_02 (IMXRT_IOMUXC.offset1DC)
  3369. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_03 (IMXRT_IOMUXC.offset1E0)
  3370. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_04 (IMXRT_IOMUXC.offset1E4)
  3371. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_05 (IMXRT_IOMUXC.offset1E8)
  3372. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_06 (IMXRT_IOMUXC.offset1EC)
  3373. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_07 (IMXRT_IOMUXC.offset1F0)
  3374. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_08 (IMXRT_IOMUXC.offset1F4)
  3375. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_09 (IMXRT_IOMUXC.offset1F8)
  3376. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_10 (IMXRT_IOMUXC.offset1FC)
  3377. #define IOMUXC_SW_MUX_CTL_PAD_GPIO_SD_B1_11 (IMXRT_IOMUXC.offset200)
  3378. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_00 (IMXRT_IOMUXC.offset204)
  3379. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_01 (IMXRT_IOMUXC.offset208)
  3380. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_02 (IMXRT_IOMUXC.offset20C)
  3381. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_03 (IMXRT_IOMUXC.offset210)
  3382. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_04 (IMXRT_IOMUXC.offset214)
  3383. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_05 (IMXRT_IOMUXC.offset218)
  3384. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_06 (IMXRT_IOMUXC.offset21C)
  3385. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_07 (IMXRT_IOMUXC.offset220)
  3386. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_08 (IMXRT_IOMUXC.offset224)
  3387. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_09 (IMXRT_IOMUXC.offset228)
  3388. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_10 (IMXRT_IOMUXC.offset22C)
  3389. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_11 (IMXRT_IOMUXC.offset230)
  3390. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_12 (IMXRT_IOMUXC.offset234)
  3391. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_13 (IMXRT_IOMUXC.offset238)
  3392. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_14 (IMXRT_IOMUXC.offset23C)
  3393. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_15 (IMXRT_IOMUXC.offset240)
  3394. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_16 (IMXRT_IOMUXC.offset244)
  3395. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_17 (IMXRT_IOMUXC.offset248)
  3396. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_18 (IMXRT_IOMUXC.offset24C)
  3397. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_19 (IMXRT_IOMUXC.offset250)
  3398. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_20 (IMXRT_IOMUXC.offset254)
  3399. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_21 (IMXRT_IOMUXC.offset258)
  3400. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_22 (IMXRT_IOMUXC.offset25C)
  3401. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_23 (IMXRT_IOMUXC.offset260)
  3402. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_24 (IMXRT_IOMUXC.offset264)
  3403. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_25 (IMXRT_IOMUXC.offset268)
  3404. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_26 (IMXRT_IOMUXC.offset26C)
  3405. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_27 (IMXRT_IOMUXC.offset270)
  3406. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_28 (IMXRT_IOMUXC.offset274)
  3407. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_29 (IMXRT_IOMUXC.offset278)
  3408. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_30 (IMXRT_IOMUXC.offset27C)
  3409. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_31 (IMXRT_IOMUXC.offset280)
  3410. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_32 (IMXRT_IOMUXC.offset284)
  3411. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_33 (IMXRT_IOMUXC.offset288)
  3412. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_34 (IMXRT_IOMUXC.offset28C)
  3413. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_35 (IMXRT_IOMUXC.offset290)
  3414. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_36 (IMXRT_IOMUXC.offset294)
  3415. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_37 (IMXRT_IOMUXC.offset298)
  3416. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_38 (IMXRT_IOMUXC.offset29C)
  3417. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_39 (IMXRT_IOMUXC.offset2A0)
  3418. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_40 (IMXRT_IOMUXC.offset2A4)
  3419. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_41 (IMXRT_IOMUXC.offset2A8)
  3420. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_00 (IMXRT_IOMUXC.offset2AC)
  3421. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_01 (IMXRT_IOMUXC.offset2B0)
  3422. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_02 (IMXRT_IOMUXC.offset2B4)
  3423. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_03 (IMXRT_IOMUXC.offset2B8)
  3424. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_04 (IMXRT_IOMUXC.offset2BC)
  3425. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_05 (IMXRT_IOMUXC.offset2C0)
  3426. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_06 (IMXRT_IOMUXC.offset2C4)
  3427. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_07 (IMXRT_IOMUXC.offset2C8)
  3428. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_08 (IMXRT_IOMUXC.offset2CC)
  3429. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_09 (IMXRT_IOMUXC.offset2D0)
  3430. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_10 (IMXRT_IOMUXC.offset2D4)
  3431. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_11 (IMXRT_IOMUXC.offset2D8)
  3432. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_12 (IMXRT_IOMUXC.offset2DC)
  3433. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_13 (IMXRT_IOMUXC.offset2E0)
  3434. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_14 (IMXRT_IOMUXC.offset2E4)
  3435. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B0_15 (IMXRT_IOMUXC.offset2E8)
  3436. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_00 (IMXRT_IOMUXC.offset2EC)
  3437. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_01 (IMXRT_IOMUXC.offset2F0)
  3438. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_02 (IMXRT_IOMUXC.offset2F4)
  3439. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_03 (IMXRT_IOMUXC.offset2F8)
  3440. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_04 (IMXRT_IOMUXC.offset2FC)
  3441. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_05 (IMXRT_IOMUXC.offset300)
  3442. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_06 (IMXRT_IOMUXC.offset304)
  3443. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_07 (IMXRT_IOMUXC.offset308)
  3444. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_08 (IMXRT_IOMUXC.offset30C)
  3445. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_09 (IMXRT_IOMUXC.offset310)
  3446. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_10 (IMXRT_IOMUXC.offset314)
  3447. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_11 (IMXRT_IOMUXC.offset318)
  3448. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_12 (IMXRT_IOMUXC.offset31C)
  3449. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_13 (IMXRT_IOMUXC.offset320)
  3450. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_14 (IMXRT_IOMUXC.offset324)
  3451. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_AD_B1_15 (IMXRT_IOMUXC.offset328)
  3452. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_00 (IMXRT_IOMUXC.offset32C)
  3453. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_01 (IMXRT_IOMUXC.offset330)
  3454. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_02 (IMXRT_IOMUXC.offset334)
  3455. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_03 (IMXRT_IOMUXC.offset338)
  3456. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_04 (IMXRT_IOMUXC.offset33C)
  3457. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_05 (IMXRT_IOMUXC.offset340)
  3458. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_06 (IMXRT_IOMUXC.offset344)
  3459. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_07 (IMXRT_IOMUXC.offset348)
  3460. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_08 (IMXRT_IOMUXC.offset34C)
  3461. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_09 (IMXRT_IOMUXC.offset350)
  3462. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_10 (IMXRT_IOMUXC.offset354)
  3463. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_11 (IMXRT_IOMUXC.offset358)
  3464. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_12 (IMXRT_IOMUXC.offset35C)
  3465. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_13 (IMXRT_IOMUXC.offset360)
  3466. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_14 (IMXRT_IOMUXC.offset364)
  3467. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B0_15 (IMXRT_IOMUXC.offset368)
  3468. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_00 (IMXRT_IOMUXC.offset36C)
  3469. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_01 (IMXRT_IOMUXC.offset370)
  3470. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_02 (IMXRT_IOMUXC.offset374)
  3471. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_03 (IMXRT_IOMUXC.offset378)
  3472. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_04 (IMXRT_IOMUXC.offset37C)
  3473. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_05 (IMXRT_IOMUXC.offset380)
  3474. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_06 (IMXRT_IOMUXC.offset384)
  3475. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_07 (IMXRT_IOMUXC.offset388)
  3476. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_08 (IMXRT_IOMUXC.offset38C)
  3477. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_09 (IMXRT_IOMUXC.offset390)
  3478. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_10 (IMXRT_IOMUXC.offset394)
  3479. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_11 (IMXRT_IOMUXC.offset398)
  3480. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_12 (IMXRT_IOMUXC.offset39C)
  3481. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_13 (IMXRT_IOMUXC.offset3A0)
  3482. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_14 (IMXRT_IOMUXC.offset3A4)
  3483. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_B1_15 (IMXRT_IOMUXC.offset3A8)
  3484. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_00 (IMXRT_IOMUXC.offset3AC)
  3485. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_01 (IMXRT_IOMUXC.offset3B0)
  3486. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_02 (IMXRT_IOMUXC.offset3B4)
  3487. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_03 (IMXRT_IOMUXC.offset3B8)
  3488. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_04 (IMXRT_IOMUXC.offset3BC)
  3489. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B0_05 (IMXRT_IOMUXC.offset3C0)
  3490. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_00 (IMXRT_IOMUXC.offset3C4)
  3491. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_01 (IMXRT_IOMUXC.offset3C8)
  3492. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_02 (IMXRT_IOMUXC.offset3CC)
  3493. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_03 (IMXRT_IOMUXC.offset3D0)
  3494. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_04 (IMXRT_IOMUXC.offset3D4)
  3495. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_05 (IMXRT_IOMUXC.offset3D8)
  3496. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_06 (IMXRT_IOMUXC.offset3DC)
  3497. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_07 (IMXRT_IOMUXC.offset3E0)
  3498. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_08 (IMXRT_IOMUXC.offset3E4)
  3499. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_09 (IMXRT_IOMUXC.offset3E8)
  3500. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_10 (IMXRT_IOMUXC.offset3EC)
  3501. #define IOMUXC_SW_PAD_CTL_PAD_GPIO_SD_B1_11 (IMXRT_IOMUXC.offset3F0)
  3502. #define IOMUXC_ANATOP_USB_OTG_ID_SELECT_INPUT (IMXRT_IOMUXC.offset3F4)
  3503. #define IOMUXC_ANATOP_USB_UH1_ID_SELECT_INPUT (IMXRT_IOMUXC.offset3F8)
  3504. #define IOMUXC_CCM_PMIC_READY_SELECT_INPUT (IMXRT_IOMUXC.offset3FC)
  3505. #define IOMUXC_CSI_DATA02_SELECT_INPUT (IMXRT_IOMUXC_b.offset000)
  3506. #define IOMUXC_CSI_DATA03_SELECT_INPUT (IMXRT_IOMUXC_b.offset004)
  3507. #define IOMUXC_CSI_DATA04_SELECT_INPUT (IMXRT_IOMUXC_b.offset008)
  3508. #define IOMUXC_CSI_DATA05_SELECT_INPUT (IMXRT_IOMUXC_b.offset00C)
  3509. #define IOMUXC_CSI_DATA06_SELECT_INPUT (IMXRT_IOMUXC_b.offset010)
  3510. #define IOMUXC_CSI_DATA07_SELECT_INPUT (IMXRT_IOMUXC_b.offset014)
  3511. #define IOMUXC_CSI_DATA08_SELECT_INPUT (IMXRT_IOMUXC_b.offset018)
  3512. #define IOMUXC_CSI_DATA09_SELECT_INPUT (IMXRT_IOMUXC_b.offset01C)
  3513. #define IOMUXC_CSI_HSYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset020)
  3514. #define IOMUXC_CSI_PIXCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset024)
  3515. #define IOMUXC_CSI_VSYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset028)
  3516. #define IOMUXC_ENET_IPG_CLK_RMII_SELECT_INPUT (IMXRT_IOMUXC_b.offset02C)
  3517. #define IOMUXC_ENET_MDIO_SELECT_INPUT (IMXRT_IOMUXC_b.offset030)
  3518. #define IOMUXC_ENET0_RXDATA_SELECT_INPUT (IMXRT_IOMUXC_b.offset034)
  3519. #define IOMUXC_ENET1_RXDATA_SELECT_INPUT (IMXRT_IOMUXC_b.offset038)
  3520. #define IOMUXC_ENET_RXEN_SELECT_INPUT (IMXRT_IOMUXC_b.offset03C)
  3521. #define IOMUXC_ENET_RXERR_SELECT_INPUT (IMXRT_IOMUXC_b.offset040)
  3522. #define IOMUXC_ENET0_TIMER_SELECT_INPUT (IMXRT_IOMUXC_b.offset044)
  3523. #define IOMUXC_ENET_TXCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset048)
  3524. #define IOMUXC_FLEXCAN1_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset04C)
  3525. #define IOMUXC_FLEXCAN2_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset050)
  3526. #define IOMUXC_FLEXPWM1_PWMA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset054)
  3527. #define IOMUXC_FLEXPWM1_PWMA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset058)
  3528. #define IOMUXC_FLEXPWM1_PWMA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset05C)
  3529. #define IOMUXC_FLEXPWM1_PWMA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset060)
  3530. #define IOMUXC_FLEXPWM1_PWMB3_SELECT_INPUT (IMXRT_IOMUXC_b.offset064)
  3531. #define IOMUXC_FLEXPWM1_PWMB0_SELECT_INPUT (IMXRT_IOMUXC_b.offset068)
  3532. #define IOMUXC_FLEXPWM1_PWMB1_SELECT_INPUT (IMXRT_IOMUXC_b.offset06C)
  3533. #define IOMUXC_FLEXPWM1_PWMB2_SELECT_INPUT (IMXRT_IOMUXC_b.offset070)
  3534. #define IOMUXC_FLEXPWM2_PWMA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset074)
  3535. #define IOMUXC_FLEXPWM2_PWMA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset078)
  3536. #define IOMUXC_FLEXPWM2_PWMA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset07C)
  3537. #define IOMUXC_FLEXPWM2_PWMA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset080)
  3538. #define IOMUXC_FLEXPWM2_PWMB3_SELECT_INPUT (IMXRT_IOMUXC_b.offset084)
  3539. #define IOMUXC_FLEXPWM2_PWMB0_SELECT_INPUT (IMXRT_IOMUXC_b.offset088)
  3540. #define IOMUXC_FLEXPWM2_PWMB1_SELECT_INPUT (IMXRT_IOMUXC_b.offset09C)
  3541. #define IOMUXC_FLEXPWM2_PWMB2_SELECT_INPUT (IMXRT_IOMUXC_b.offset090)
  3542. #define IOMUXC_FLEXPWM4_PWMA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset094)
  3543. #define IOMUXC_FLEXPWM4_PWMA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset098)
  3544. #define IOMUXC_FLEXPWM4_PWMA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset09C)
  3545. #define IOMUXC_FLEXPWM4_PWMA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset0A0)
  3546. #define IOMUXC_FLEXSPIA_DQS_SELECT_INPUT (IMXRT_IOMUXC_b.offset0A4)
  3547. #define IOMUXC_FLEXSPIA_DATA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset0A8)
  3548. #define IOMUXC_FLEXSPIA_DATA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset0AC)
  3549. #define IOMUXC_FLEXSPIA_DATA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset0B0)
  3550. #define IOMUXC_FLEXSPIA_DATA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset0B4)
  3551. #define IOMUXC_FLEXSPIB_DATA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset0B8)
  3552. #define IOMUXC_FLEXSPIB_DATA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset0BC)
  3553. #define IOMUXC_FLEXSPIB_DATA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset0C0)
  3554. #define IOMUXC_FLEXSPIB_DATA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset0C4)
  3555. #define IOMUXC_FLEXSPIA_SCK_SELECT_INPUT (IMXRT_IOMUXC_b.offset0C8)
  3556. #define IOMUXC_LPI2C1_SCL_SELECT_INPUT (IMXRT_IOMUXC_b.offset0CC)
  3557. #define IOMUXC_LPI2C1_SDA_SELECT_INPUT (IMXRT_IOMUXC_b.offset0D0)
  3558. #define IOMUXC_LPI2C2_SCL_SELECT_INPUT (IMXRT_IOMUXC_b.offset0D4)
  3559. #define IOMUXC_LPI2C2_SDA_SELECT_INPUT (IMXRT_IOMUXC_b.offset0D8)
  3560. #define IOMUXC_LPI2C3_SCL_SELECT_INPUT (IMXRT_IOMUXC_b.offset0DC)
  3561. #define IOMUXC_LPI2C3_SDA_SELECT_INPUT (IMXRT_IOMUXC_b.offset0E0)
  3562. #define IOMUXC_LPI2C4_SCL_SELECT_INPUT (IMXRT_IOMUXC_b.offset0E4)
  3563. #define IOMUXC_LPI2C4_SDA_SELECT_INPUT (IMXRT_IOMUXC_b.offset0E8)
  3564. #define IOMUXC_LPSPI1_PCS0_SELECT_INPUT (IMXRT_IOMUXC_b.offset0EC)
  3565. #define IOMUXC_LPSPI1_SCK_SELECT_INPUT (IMXRT_IOMUXC_b.offset0F0)
  3566. #define IOMUXC_LPSPI1_SDI_SELECT_INPUT (IMXRT_IOMUXC_b.offset0F4)
  3567. #define IOMUXC_LPSPI1_SDO_SELECT_INPUT (IMXRT_IOMUXC_b.offset0F8)
  3568. #define IOMUXC_LPSPI2_PCS0_SELECT_INPUT (IMXRT_IOMUXC_b.offset0FC)
  3569. #define IOMUXC_LPSPI2_SCK_SELECT_INPUT (IMXRT_IOMUXC_b.offset100)
  3570. #define IOMUXC_LPSPI2_SDI_SELECT_INPUT (IMXRT_IOMUXC_b.offset104)
  3571. #define IOMUXC_LPSPI2_SDO_SELECT_INPUT (IMXRT_IOMUXC_b.offset108)
  3572. #define IOMUXC_LPSPI3_PCS0_SELECT_INPUT (IMXRT_IOMUXC_b.offset10C)
  3573. #define IOMUXC_LPSPI3_SCK_SELECT_INPUT (IMXRT_IOMUXC_b.offset110)
  3574. #define IOMUXC_LPSPI3_SDI_SELECT_INPUT (IMXRT_IOMUXC_b.offset114)
  3575. #define IOMUXC_LPSPI3_SDO_SELECT_INPUT (IMXRT_IOMUXC_b.offset118)
  3576. #define IOMUXC_LPSPI4_PCS0_SELECT_INPUT (IMXRT_IOMUXC_b.offset11C)
  3577. #define IOMUXC_LPSPI4_SCK_SELECT_INPUT (IMXRT_IOMUXC_b.offset120)
  3578. #define IOMUXC_LPSPI4_SDI_SELECT_INPUT (IMXRT_IOMUXC_b.offset124)
  3579. #define IOMUXC_LPSPI4_SDO_SELECT_INPUT (IMXRT_IOMUXC_b.offset128)
  3580. #define IOMUXC_LPUART2_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset12C)
  3581. #define IOMUXC_LPUART2_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset130)
  3582. #define IOMUXC_LPUART3_CTS_B_SELECT_INPUT (IMXRT_IOMUXC_b.offset134)
  3583. #define IOMUXC_LPUART3_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset138)
  3584. #define IOMUXC_LPUART3_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset13C)
  3585. #define IOMUXC_LPUART4_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset140)
  3586. #define IOMUXC_LPUART4_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset144)
  3587. #define IOMUXC_LPUART5_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset148)
  3588. #define IOMUXC_LPUART5_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset14C)
  3589. #define IOMUXC_LPUART6_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset150)
  3590. #define IOMUXC_LPUART6_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset154)
  3591. #define IOMUXC_LPUART7_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset158)
  3592. #define IOMUXC_LPUART7_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset15C)
  3593. #define IOMUXC_LPUART8_RX_SELECT_INPUT (IMXRT_IOMUXC_b.offset160)
  3594. #define IOMUXC_LPUART8_TX_SELECT_INPUT (IMXRT_IOMUXC_b.offset164)
  3595. #define IOMUXC_NMI_GLUE_NMI_SELECT_INPUT (IMXRT_IOMUXC_b.offset168)
  3596. #define IOMUXC_QTIMER2_TIMER0_SELECT_INPUT (IMXRT_IOMUXC_b.offset16C)
  3597. #define IOMUXC_QTIMER2_TIMER1_SELECT_INPUT (IMXRT_IOMUXC_b.offset170)
  3598. #define IOMUXC_QTIMER2_TIMER2_SELECT_INPUT (IMXRT_IOMUXC_b.offset174)
  3599. #define IOMUXC_QTIMER2_TIMER3_SELECT_INPUT (IMXRT_IOMUXC_b.offset178)
  3600. #define IOMUXC_QTIMER3_TIMER0_SELECT_INPUT (IMXRT_IOMUXC_b.offset17C)
  3601. #define IOMUXC_QTIMER3_TIMER1_SELECT_INPUT (IMXRT_IOMUXC_b.offset180)
  3602. #define IOMUXC_QTIMER3_TIMER2_SELECT_INPUT (IMXRT_IOMUXC_b.offset184)
  3603. #define IOMUXC_QTIMER3_TIMER3_SELECT_INPUT (IMXRT_IOMUXC_b.offset188)
  3604. #define IOMUXC_SAI1_MCLK2_SELECT_INPUT (IMXRT_IOMUXC_b.offset18C)
  3605. #define IOMUXC_SAI1_RX_BCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset190)
  3606. #define IOMUXC_SAI1_RX_DATA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset194)
  3607. #define IOMUXC_SAI1_RX_DATA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset198)
  3608. #define IOMUXC_SAI1_RX_DATA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset19C)
  3609. #define IOMUXC_SAI1_RX_DATA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset1A0)
  3610. #define IOMUXC_SAI1_RX_SYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1A4)
  3611. #define IOMUXC_SAI1_TX_BCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset1A8)
  3612. #define IOMUXC_SAI1_TX_SYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1AC)
  3613. #define IOMUXC_SAI2_MCLK2_SELECT_INPUT (IMXRT_IOMUXC_b.offset1B0)
  3614. #define IOMUXC_SAI2_RX_BCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset1B4)
  3615. #define IOMUXC_SAI2_RX_DATA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset1B8)
  3616. #define IOMUXC_SAI2_RX_SYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1BC)
  3617. #define IOMUXC_SAI2_TX_BCLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset1C0)
  3618. #define IOMUXC_SAI2_TX_SYNC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1C4)
  3619. #define IOMUXC_SPDIF_IN_SELECT_INPUT (IMXRT_IOMUXC_b.offset1C8)
  3620. #define IOMUXC_USB_OTG2_OC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1CC)
  3621. #define IOMUXC_USB_OTG1_OC_SELECT_INPUT (IMXRT_IOMUXC_b.offset1D0)
  3622. #define IOMUXC_USDHC1_CD_B_SELECT_INPUT (IMXRT_IOMUXC_b.offset1D4)
  3623. #define IOMUXC_USDHC1_WP_SELECT_INPUT (IMXRT_IOMUXC_b.offset1D8)
  3624. #define IOMUXC_USDHC2_CLK_SELECT_INPUT (IMXRT_IOMUXC_b.offset1DC)
  3625. #define IOMUXC_USDHC2_CD_B_SELECT_INPUT (IMXRT_IOMUXC_b.offset1E0)
  3626. #define IOMUXC_USDHC2_CMD_SELECT_INPUT (IMXRT_IOMUXC_b.offset1E4)
  3627. #define IOMUXC_USDHC2_DATA0_SELECT_INPUT (IMXRT_IOMUXC_b.offset1E8)
  3628. #define IOMUXC_USDHC2_DATA1_SELECT_INPUT (IMXRT_IOMUXC_b.offset1EC)
  3629. #define IOMUXC_USDHC2_DATA2_SELECT_INPUT (IMXRT_IOMUXC_b.offset1F0)
  3630. #define IOMUXC_USDHC2_DATA3_SELECT_INPUT (IMXRT_IOMUXC_b.offset1F4)
  3631. #define IOMUXC_USDHC2_DATA4_SELECT_INPUT (IMXRT_IOMUXC_b.offset1F8)
  3632. #define IOMUXC_USDHC2_DATA5_SELECT_INPUT (IMXRT_IOMUXC_b.offset1FC)
  3633. #define IOMUXC_USDHC2_DATA6_SELECT_INPUT (IMXRT_IOMUXC_b.offset200)
  3634. #define IOMUXC_USDHC2_DATA7_SELECT_INPUT (IMXRT_IOMUXC_b.offset204)
  3635. #define IOMUXC_USDHC2_WP_SELECT_INPUT (IMXRT_IOMUXC_b.offset208)
  3636. #define IOMUXC_XBAR1_IN02_SELECT_INPUT (IMXRT_IOMUXC_b.offset20C)
  3637. #define IOMUXC_XBAR1_IN03_SELECT_INPUT (IMXRT_IOMUXC_b.offset210)
  3638. #define IOMUXC_XBAR1_IN04_SELECT_INPUT (IMXRT_IOMUXC_b.offset214)
  3639. #define IOMUXC_XBAR1_IN05_SELECT_INPUT (IMXRT_IOMUXC_b.offset218)
  3640. #define IOMUXC_XBAR1_IN06_SELECT_INPUT (IMXRT_IOMUXC_b.offset21C)
  3641. #define IOMUXC_XBAR1_IN07_SELECT_INPUT (IMXRT_IOMUXC_b.offset220)
  3642. #define IOMUXC_XBAR1_IN08_SELECT_INPUT (IMXRT_IOMUXC_b.offset224)
  3643. #define IOMUXC_XBAR1_IN09_SELECT_INPUT (IMXRT_IOMUXC_b.offset228)
  3644. #define IOMUXC_XBAR1_IN17_SELECT_INPUT (IMXRT_IOMUXC_b.offset22C)
  3645. #define IOMUXC_XBAR1_IN18_SELECT_INPUT (IMXRT_IOMUXC_b.offset230)
  3646. #define IOMUXC_XBAR1_IN20_SELECT_INPUT (IMXRT_IOMUXC_b.offset234)
  3647. #define IOMUXC_XBAR1_IN22_SELECT_INPUT (IMXRT_IOMUXC_b.offset238)
  3648. #define IOMUXC_XBAR1_IN23_SELECT_INPUT (IMXRT_IOMUXC_b.offset23C)
  3649. #define IOMUXC_XBAR1_IN24_SELECT_INPUT (IMXRT_IOMUXC_b.offset240)
  3650. #define IOMUXC_XBAR1_IN14_SELECT_INPUT (IMXRT_IOMUXC_b.offset244)
  3651. #define IOMUXC_XBAR1_IN15_SELECT_INPUT (IMXRT_IOMUXC_b.offset248)
  3652. #define IOMUXC_XBAR1_IN16_SELECT_INPUT (IMXRT_IOMUXC_b.offset24C)
  3653. #define IOMUXC_XBAR1_IN25_SELECT_INPUT (IMXRT_IOMUXC_b.offset250)
  3654. #define IOMUXC_XBAR1_IN19_SELECT_INPUT (IMXRT_IOMUXC_b.offset254)
  3655. #define IOMUXC_XBAR1_IN21_SELECT_INPUT (IMXRT_IOMUXC_b.offset258)
  3656. #define IOMUXC_PAD_SRE ((uint32_t)(1<<0))
  3657. #define IOMUXC_PAD_DSE(n) ((uint32_t)(((n) & 0x07) << 3))
  3658. #define IOMUXC_PAD_SPEED(n) ((uint32_t)(((n) & 0x03) << 6))
  3659. #define IOMUXC_PAD_ODE ((uint32_t)(1<<11))
  3660. #define IOMUXC_PAD_PKE ((uint32_t)(1<<12))
  3661. #define IOMUXC_PAD_PUE ((uint32_t)(1<<13))
  3662. #define IOMUXC_PAD_PUS(n) ((uint32_t)(((n) & 0x03) << 14))
  3663. #define IOMUXC_PAD_HYS ((uint32_t)(1<<16))
  3664. // 35.6: page 2301
  3665. #define IMXRT_KPP (*(IMXRT_REGISTER16_t *)0x401FC000)
  3666. #define KPP_KPCR (IMXRT_KPP.offset000)
  3667. #define KPP_KPSR (IMXRT_KPP.offset002)
  3668. #define KPP_KDDR (IMXRT_KPP.offset004)
  3669. #define KPP_KPDR (IMXRT_KPP.offset006)
  3670. // 36.4: page 2325
  3671. #define IMXRT_LCDIF (*(IMXRT_REGISTER32_t *)0x402B8000)
  3672. #define LCDIF_CTRL (IMXRT_LCDIF.offset000)
  3673. #define LCDIF_CTRL_SET (IMXRT_LCDIF.offset004)
  3674. #define LCDIF_CTRL_CLR (IMXRT_LCDIF.offset008)
  3675. #define LCDIF_CTRL_TOG (IMXRT_LCDIF.offset00C)
  3676. #define LCDIF_CTRL1 (IMXRT_LCDIF.offset010)
  3677. #define LCDIF_CTRL1_SET (IMXRT_LCDIF.offset014)
  3678. #define LCDIF_CTRL1_CLR (IMXRT_LCDIF.offset018)
  3679. #define LCDIF_CTRL1_TOG (IMXRT_LCDIF.offset01C)
  3680. #define LCDIF_CTRL2 (IMXRT_LCDIF.offset020)
  3681. #define LCDIF_CTRL2_SET (IMXRT_LCDIF.offset024)
  3682. #define LCDIF_CTRL2_CLR (IMXRT_LCDIF.offset028)
  3683. #define LCDIF_CTRL2_TOG (IMXRT_LCDIF.offset02C)
  3684. #define LCDIF_TRANSFER_COUNT (IMXRT_LCDIF.offset030)
  3685. #define LCDIF_CUR_BUF (IMXRT_LCDIF.offset040)
  3686. #define LCDIF_NEXT_BUF (IMXRT_LCDIF.offset050)
  3687. #define LCDIF_VDCTRL0 (IMXRT_LCDIF.offset070)
  3688. #define LCDIF_VDCTRL0_SET (IMXRT_LCDIF.offset074)
  3689. #define LCDIF_VDCTRL0_CLR (IMXRT_LCDIF.offset078)
  3690. #define LCDIF_VDCTRL0_TOG (IMXRT_LCDIF.offset07C)
  3691. #define LCDIF_VDCTRL1 (IMXRT_LCDIF.offset080)
  3692. #define LCDIF_VDCTRL2 (IMXRT_LCDIF.offset090)
  3693. #define LCDIF_VDCTRL3 (IMXRT_LCDIF.offset0A0)
  3694. #define LCDIF_VDCTRL4 (IMXRT_LCDIF.offset0B0)
  3695. #define LCDIF_BM_ERROR_STAT (IMXRT_LCDIF.offset190)
  3696. #define LCDIF_CRC_STAT (IMXRT_LCDIF.offset1A0)
  3697. #define LCDIF_STAT (IMXRT_LCDIF.offset1B0)
  3698. #define LCDIF_THRES (IMXRT_LCDIF.offset200)
  3699. #define LCDIF_AS_CTRL (IMXRT_LCDIF.offset210)
  3700. #define LCDIF_AS_BUF (IMXRT_LCDIF.offset220)
  3701. #define LCDIF_AS_NEXT_BUF (IMXRT_LCDIF.offset230)
  3702. #define LCDIF_AS_CLRKEYLOW (IMXRT_LCDIF.offset240)
  3703. #define LCDIF_AS_CLRKEYHIGH (IMXRT_LCDIF.offset250)
  3704. #define LCDIF_PIGEONCTRL0 (IMXRT_LCDIF.offset380)
  3705. #define LCDIF_PIGEONCTRL0_SET (IMXRT_LCDIF.offset384)
  3706. #define LCDIF_PIGEONCTRL0_CLR (IMXRT_LCDIF.offset388)
  3707. #define LCDIF_PIGEONCTRL0_TOG (IMXRT_LCDIF.offset38C)
  3708. #define LCDIF_PIGEONCTRL1 (IMXRT_LCDIF.offset390)
  3709. #define LCDIF_PIGEONCTRL1_SET (IMXRT_LCDIF.offset394)
  3710. #define LCDIF_PIGEONCTRL1_CLR (IMXRT_LCDIF.offset398)
  3711. #define LCDIF_PIGEONCTRL1_TOG (IMXRT_LCDIF.offset39C)
  3712. #define LCDIF_PIGEONCTRL2 (IMXRT_LCDIF.offset3A0)
  3713. #define LCDIF_PIGEONCTRL2_SET (IMXRT_LCDIF.offset3A4)
  3714. #define LCDIF_PIGEONCTRL2_CLR (IMXRT_LCDIF.offset3A8)
  3715. #define LCDIF_PIGEONCTRL2_TOG (IMXRT_LCDIF.offset3AC)
  3716. #define IMXRT_LCDIF_b (*(IMXRT_REGISTER32_t *)0x402B8800)
  3717. #define LCDIF_PIGEON_0_0 (IMXRT_LCDIF_b.offset000)
  3718. #define LCDIF_PIGEON_0_1 (IMXRT_LCDIF_b.offset010)
  3719. #define LCDIF_PIGEON_0_2 (IMXRT_LCDIF_b.offset020)
  3720. #define LCDIF_PIGEON_1_0 (IMXRT_LCDIF_b.offset040)
  3721. #define LCDIF_PIGEON_1_1 (IMXRT_LCDIF_b.offset050)
  3722. #define LCDIF_PIGEON_1_2 (IMXRT_LCDIF_b.offset060)
  3723. #define LCDIF_PIGEON_2_0 (IMXRT_LCDIF_b.offset080)
  3724. #define LCDIF_PIGEON_2_1 (IMXRT_LCDIF_b.offset090)
  3725. #define LCDIF_PIGEON_2_2 (IMXRT_LCDIF_b.offset0A0)
  3726. #define LCDIF_PIGEON_3_0 (IMXRT_LCDIF_b.offset0C0)
  3727. #define LCDIF_PIGEON_3_1 (IMXRT_LCDIF_b.offset0D0)
  3728. #define LCDIF_PIGEON_3_2 (IMXRT_LCDIF_b.offset0E0)
  3729. #define LCDIF_PIGEON_4_0 (IMXRT_LCDIF_b.offset100)
  3730. #define LCDIF_PIGEON_4_1 (IMXRT_LCDIF_b.offset110)
  3731. #define LCDIF_PIGEON_4_2 (IMXRT_LCDIF_b.offset120)
  3732. #define LCDIF_PIGEON_5_0 (IMXRT_LCDIF_b.offset140)
  3733. #define LCDIF_PIGEON_5_1 (IMXRT_LCDIF_b.offset150)
  3734. #define LCDIF_PIGEON_5_2 (IMXRT_LCDIF_b.offset160)
  3735. #define LCDIF_PIGEON_6_0 (IMXRT_LCDIF_b.offset180)
  3736. #define LCDIF_PIGEON_6_1 (IMXRT_LCDIF_b.offset190)
  3737. #define LCDIF_PIGEON_6_2 (IMXRT_LCDIF_b.offset1A0)
  3738. #define LCDIF_PIGEON_7_0 (IMXRT_LCDIF_b.offset1C0)
  3739. #define LCDIF_PIGEON_7_1 (IMXRT_LCDIF_b.offset1D0)
  3740. #define LCDIF_PIGEON_7_2 (IMXRT_LCDIF_b.offset1E0)
  3741. #define LCDIF_PIGEON_8_0 (IMXRT_LCDIF_b.offset200)
  3742. #define LCDIF_PIGEON_8_1 (IMXRT_LCDIF_b.offset210)
  3743. #define LCDIF_PIGEON_8_2 (IMXRT_LCDIF_b.offset220)
  3744. #define LCDIF_PIGEON_9_0 (IMXRT_LCDIF_b.offset240)
  3745. #define LCDIF_PIGEON_9_1 (IMXRT_LCDIF_b.offset250)
  3746. #define LCDIF_PIGEON_9_2 (IMXRT_LCDIF_b.offset260)
  3747. #define LCDIF_PIGEON_10_0 (IMXRT_LCDIF_b.offset280)
  3748. #define LCDIF_PIGEON_10_1 (IMXRT_LCDIF_b.offset290)
  3749. #define LCDIF_PIGEON_10_2 (IMXRT_LCDIF_b.offset2A0)
  3750. #define LCDIF_PIGEON_11_0 (IMXRT_LCDIF_b.offset2C0)
  3751. #define LCDIF_PIGEON_11_1 (IMXRT_LCDIF_b.offset2D0)
  3752. #define LCDIF_PIGEON_11_2 (IMXRT_LCDIF_b.offset2E0)
  3753. // 37.4: page 2371
  3754. #define IMXRT_LPI2C1 (*(IMXRT_REGISTER32_t *)0x403F0000)
  3755. #define LPI2C1_VERID (IMXRT_LPI2C1.offset000)
  3756. #define LPI2C1_PARAM (IMXRT_LPI2C1.offset004)
  3757. #define LPI2C1_MCR (IMXRT_LPI2C1.offset010)
  3758. #define LPI2C1_MSR (IMXRT_LPI2C1.offset014)
  3759. #define LPI2C1_MIER (IMXRT_LPI2C1.offset018)
  3760. #define LPI2C1_MDER (IMXRT_LPI2C1.offset01C)
  3761. #define LPI2C1_MCFGR0 (IMXRT_LPI2C1.offset020)
  3762. #define LPI2C1_MCFGR1 (IMXRT_LPI2C1.offset024)
  3763. #define LPI2C1_MCFGR2 (IMXRT_LPI2C1.offset028)
  3764. #define LPI2C1_MCFGR3 (IMXRT_LPI2C1.offset02C)
  3765. #define LPI2C1_MDMR (IMXRT_LPI2C1.offset040)
  3766. #define LPI2C1_MCCR0 (IMXRT_LPI2C1.offset048)
  3767. #define LPI2C1_MCCR1 (IMXRT_LPI2C1.offset050)
  3768. #define LPI2C1_MFCR (IMXRT_LPI2C1.offset058)
  3769. #define LPI2C1_MFSR (IMXRT_LPI2C1.offset05C)
  3770. #define LPI2C1_MTDR (IMXRT_LPI2C1.offset060)
  3771. #define LPI2C1_MRDR (IMXRT_LPI2C1.offset070)
  3772. #define LPI2C1_SCR (IMXRT_LPI2C1.offset110)
  3773. #define LPI2C1_SSR (IMXRT_LPI2C1.offset114)
  3774. #define LPI2C1_SIER (IMXRT_LPI2C1.offset118)
  3775. #define LPI2C1_SDER (IMXRT_LPI2C1.offset11C)
  3776. #define LPI2C1_SCFGR1 (IMXRT_LPI2C1.offset124)
  3777. #define LPI2C1_SCFGR2 (IMXRT_LPI2C1.offset128)
  3778. #define LPI2C1_SAMR (IMXRT_LPI2C1.offset140)
  3779. #define LPI2C1_SASR (IMXRT_LPI2C1.offset150)
  3780. #define LPI2C1_STAR (IMXRT_LPI2C1.offset154)
  3781. #define LPI2C1_STDR (IMXRT_LPI2C1.offset160)
  3782. #define LPI2C1_SRDR (IMXRT_LPI2C1.offset170)
  3783. #define IMXRT_LPI2C2 (*(IMXRT_REGISTER32_t *)0x403F4000)
  3784. #define LPI2C2_VERID (IMXRT_LPI2C2.offset000)
  3785. #define LPI2C2_PARAM (IMXRT_LPI2C2.offset004)
  3786. #define LPI2C2_MCR (IMXRT_LPI2C2.offset010)
  3787. #define LPI2C2_MSR (IMXRT_LPI2C2.offset014)
  3788. #define LPI2C2_MIER (IMXRT_LPI2C2.offset018)
  3789. #define LPI2C2_MDER (IMXRT_LPI2C2.offset01C)
  3790. #define LPI2C2_MCFGR0 (IMXRT_LPI2C2.offset020)
  3791. #define LPI2C2_MCFGR1 (IMXRT_LPI2C2.offset024)
  3792. #define LPI2C2_MCFGR2 (IMXRT_LPI2C2.offset028)
  3793. #define LPI2C2_MCFGR3 (IMXRT_LPI2C2.offset02C)
  3794. #define LPI2C2_MDMR (IMXRT_LPI2C2.offset040)
  3795. #define LPI2C2_MCCR0 (IMXRT_LPI2C2.offset048)
  3796. #define LPI2C2_MCCR1 (IMXRT_LPI2C2.offset050)
  3797. #define LPI2C2_MFCR (IMXRT_LPI2C2.offset058)
  3798. #define LPI2C2_MFSR (IMXRT_LPI2C2.offset05C)
  3799. #define LPI2C2_MTDR (IMXRT_LPI2C2.offset060)
  3800. #define LPI2C2_MRDR (IMXRT_LPI2C2.offset070)
  3801. #define LPI2C2_SCR (IMXRT_LPI2C2.offset110)
  3802. #define LPI2C2_SSR (IMXRT_LPI2C2.offset114)
  3803. #define LPI2C2_SIER (IMXRT_LPI2C2.offset118)
  3804. #define LPI2C2_SDER (IMXRT_LPI2C2.offset11C)
  3805. #define LPI2C2_SCFGR1 (IMXRT_LPI2C2.offset124)
  3806. #define LPI2C2_SCFGR2 (IMXRT_LPI2C2.offset128)
  3807. #define LPI2C2_SAMR (IMXRT_LPI2C2.offset140)
  3808. #define LPI2C2_SASR (IMXRT_LPI2C2.offset150)
  3809. #define LPI2C2_STAR (IMXRT_LPI2C2.offset154)
  3810. #define LPI2C2_STDR (IMXRT_LPI2C2.offset160)
  3811. #define LPI2C2_SRDR (IMXRT_LPI2C2.offset170)
  3812. #define IMXRT_LPI2C3 (*(IMXRT_REGISTER32_t *)0x403F8000)
  3813. #define LPI2C3_VERID (IMXRT_LPI2C3.offset000)
  3814. #define LPI2C3_PARAM (IMXRT_LPI2C3.offset004)
  3815. #define LPI2C3_MCR (IMXRT_LPI2C3.offset010)
  3816. #define LPI2C3_MSR (IMXRT_LPI2C3.offset014)
  3817. #define LPI2C3_MIER (IMXRT_LPI2C3.offset018)
  3818. #define LPI2C3_MDER (IMXRT_LPI2C3.offset01C)
  3819. #define LPI2C3_MCFGR0 (IMXRT_LPI2C3.offset020)
  3820. #define LPI2C3_MCFGR1 (IMXRT_LPI2C3.offset024)
  3821. #define LPI2C3_MCFGR2 (IMXRT_LPI2C3.offset028)
  3822. #define LPI2C3_MCFGR3 (IMXRT_LPI2C3.offset02C)
  3823. #define LPI2C3_MDMR (IMXRT_LPI2C3.offset040)
  3824. #define LPI2C3_MCCR0 (IMXRT_LPI2C3.offset048)
  3825. #define LPI2C3_MCCR1 (IMXRT_LPI2C3.offset050)
  3826. #define LPI2C3_MFCR (IMXRT_LPI2C3.offset058)
  3827. #define LPI2C3_MFSR (IMXRT_LPI2C3.offset05C)
  3828. #define LPI2C3_MTDR (IMXRT_LPI2C3.offset060)
  3829. #define LPI2C3_MRDR (IMXRT_LPI2C3.offset070)
  3830. #define LPI2C3_SCR (IMXRT_LPI2C3.offset110)
  3831. #define LPI2C3_SSR (IMXRT_LPI2C3.offset114)
  3832. #define LPI2C3_SIER (IMXRT_LPI2C3.offset118)
  3833. #define LPI2C3_SDER (IMXRT_LPI2C3.offset11C)
  3834. #define LPI2C3_SCFGR1 (IMXRT_LPI2C3.offset124)
  3835. #define LPI2C3_SCFGR2 (IMXRT_LPI2C3.offset128)
  3836. #define LPI2C3_SAMR (IMXRT_LPI2C3.offset140)
  3837. #define LPI2C3_SASR (IMXRT_LPI2C3.offset150)
  3838. #define LPI2C3_STAR (IMXRT_LPI2C3.offset154)
  3839. #define LPI2C3_STDR (IMXRT_LPI2C3.offset160)
  3840. #define LPI2C3_SRDR (IMXRT_LPI2C3.offset170)
  3841. #define IMXRT_LPI2C4 (*(IMXRT_REGISTER32_t *)0x403FC000)
  3842. #define LPI2C4_VERID (IMXRT_LPI2C4.offset000)
  3843. #define LPI2C4_PARAM (IMXRT_LPI2C4.offset004)
  3844. #define LPI2C4_MCR (IMXRT_LPI2C4.offset010)
  3845. #define LPI2C4_MSR (IMXRT_LPI2C4.offset014)
  3846. #define LPI2C4_MIER (IMXRT_LPI2C4.offset018)
  3847. #define LPI2C4_MDER (IMXRT_LPI2C4.offset01C)
  3848. #define LPI2C4_MCFGR0 (IMXRT_LPI2C4.offset020)
  3849. #define LPI2C4_MCFGR1 (IMXRT_LPI2C4.offset024)
  3850. #define LPI2C4_MCFGR2 (IMXRT_LPI2C4.offset028)
  3851. #define LPI2C4_MCFGR3 (IMXRT_LPI2C4.offset02C)
  3852. #define LPI2C4_MDMR (IMXRT_LPI2C4.offset040)
  3853. #define LPI2C4_MCCR0 (IMXRT_LPI2C4.offset048)
  3854. #define LPI2C4_MCCR1 (IMXRT_LPI2C4.offset050)
  3855. #define LPI2C4_MFCR (IMXRT_LPI2C4.offset058)
  3856. #define LPI2C4_MFSR (IMXRT_LPI2C4.offset05C)
  3857. #define LPI2C4_MTDR (IMXRT_LPI2C4.offset060)
  3858. #define LPI2C4_MRDR (IMXRT_LPI2C4.offset070)
  3859. #define LPI2C4_SCR (IMXRT_LPI2C4.offset110)
  3860. #define LPI2C4_SSR (IMXRT_LPI2C4.offset114)
  3861. #define LPI2C4_SIER (IMXRT_LPI2C4.offset118)
  3862. #define LPI2C4_SDER (IMXRT_LPI2C4.offset11C)
  3863. #define LPI2C4_SCFGR1 (IMXRT_LPI2C4.offset124)
  3864. #define LPI2C4_SCFGR2 (IMXRT_LPI2C4.offset128)
  3865. #define LPI2C4_SAMR (IMXRT_LPI2C4.offset140)
  3866. #define LPI2C4_SASR (IMXRT_LPI2C4.offset150)
  3867. #define LPI2C4_STAR (IMXRT_LPI2C4.offset154)
  3868. #define LPI2C4_STDR (IMXRT_LPI2C4.offset160)
  3869. #define LPI2C4_SRDR (IMXRT_LPI2C4.offset170)
  3870. // 38.3.5.2: page 2422
  3871. #define IMXRT_LPSPI1 (*(IMXRT_REGISTER32_t *)0x40394000)
  3872. #define LPSPI1_VERID (IMXRT_LPSPI1.offset000)
  3873. #define LPSPI1_PARAM (IMXRT_LPSPI1.offset004)
  3874. #define LPSPI1_CR (IMXRT_LPSPI1.offset010)
  3875. #define LPSPI1_SR (IMXRT_LPSPI1.offset014)
  3876. #define LPSPI1_IER (IMXRT_LPSPI1.offset018)
  3877. #define LPSPI1_DER (IMXRT_LPSPI1.offset01C)
  3878. #define LPSPI1_CFGR0 (IMXRT_LPSPI1.offset020)
  3879. #define LPSPI1_CFGR1 (IMXRT_LPSPI1.offset024)
  3880. #define LPSPI1_DMR0 (IMXRT_LPSPI1.offset030)
  3881. #define LPSPI1_DMR1 (IMXRT_LPSPI1.offset034)
  3882. #define LPSPI1_CCR (IMXRT_LPSPI1.offset040)
  3883. #define LPSPI1_FCR (IMXRT_LPSPI1.offset058)
  3884. #define LPSPI1_FSR (IMXRT_LPSPI1.offset05C)
  3885. #define LPSPI1_TCR (IMXRT_LPSPI1.offset060)
  3886. #define LPSPI1_TDR (IMXRT_LPSPI1.offset064)
  3887. #define LPSPI1_RSR (IMXRT_LPSPI1.offset070)
  3888. #define LPSPI1_RDR (IMXRT_LPSPI1.offset074)
  3889. #define IMXRT_LPSPI2 (*(IMXRT_REGISTER32_t *)0x40398000)
  3890. #define LPSPI2_VERID (IMXRT_LPSPI2.offset000)
  3891. #define LPSPI2_PARAM (IMXRT_LPSPI2.offset004)
  3892. #define LPSPI2_CR (IMXRT_LPSPI2.offset010)
  3893. #define LPSPI2_SR (IMXRT_LPSPI2.offset014)
  3894. #define LPSPI2_IER (IMXRT_LPSPI2.offset018)
  3895. #define LPSPI2_DER (IMXRT_LPSPI2.offset01C)
  3896. #define LPSPI2_CFGR0 (IMXRT_LPSPI2.offset020)
  3897. #define LPSPI2_CFGR1 (IMXRT_LPSPI2.offset024)
  3898. #define LPSPI2_DMR0 (IMXRT_LPSPI2.offset030)
  3899. #define LPSPI2_DMR1 (IMXRT_LPSPI2.offset034)
  3900. #define LPSPI2_CCR (IMXRT_LPSPI2.offset040)
  3901. #define LPSPI2_FCR (IMXRT_LPSPI2.offset058)
  3902. #define LPSPI2_FSR (IMXRT_LPSPI2.offset05C)
  3903. #define LPSPI2_TCR (IMXRT_LPSPI2.offset060)
  3904. #define LPSPI2_TDR (IMXRT_LPSPI2.offset064)
  3905. #define LPSPI2_RSR (IMXRT_LPSPI2.offset070)
  3906. #define LPSPI2_RDR (IMXRT_LPSPI2.offset074)
  3907. #define IMXRT_LPSPI3 (*(IMXRT_REGISTER32_t *)0x4039C000)
  3908. #define LPSPI3_VERID (IMXRT_LPSPI3.offset000)
  3909. #define LPSPI3_PARAM (IMXRT_LPSPI3.offset004)
  3910. #define LPSPI3_CR (IMXRT_LPSPI3.offset010)
  3911. #define LPSPI3_SR (IMXRT_LPSPI3.offset014)
  3912. #define LPSPI3_IER (IMXRT_LPSPI3.offset018)
  3913. #define LPSPI3_DER (IMXRT_LPSPI3.offset01C)
  3914. #define LPSPI3_CFGR0 (IMXRT_LPSPI3.offset020)
  3915. #define LPSPI3_CFGR1 (IMXRT_LPSPI3.offset024)
  3916. #define LPSPI3_DMR0 (IMXRT_LPSPI3.offset030)
  3917. #define LPSPI3_DMR1 (IMXRT_LPSPI3.offset034)
  3918. #define LPSPI3_CCR (IMXRT_LPSPI3.offset040)
  3919. #define LPSPI3_FCR (IMXRT_LPSPI3.offset058)
  3920. #define LPSPI3_FSR (IMXRT_LPSPI3.offset05C)
  3921. #define LPSPI3_TCR (IMXRT_LPSPI3.offset060)
  3922. #define LPSPI3_TDR (IMXRT_LPSPI3.offset064)
  3923. #define LPSPI3_RSR (IMXRT_LPSPI3.offset070)
  3924. #define LPSPI3_RDR (IMXRT_LPSPI3.offset074)
  3925. #define IMXRT_LPSPI4 (*(IMXRT_REGISTER32_t *)0x403A0000)
  3926. #define LPSPI4_VERID (IMXRT_LPSPI4.offset000)
  3927. #define LPSPI4_PARAM (IMXRT_LPSPI4.offset004)
  3928. #define LPSPI4_CR (IMXRT_LPSPI4.offset010)
  3929. #define LPSPI4_SR (IMXRT_LPSPI4.offset014)
  3930. #define LPSPI4_IER (IMXRT_LPSPI4.offset018)
  3931. #define LPSPI4_DER (IMXRT_LPSPI4.offset01C)
  3932. #define LPSPI4_CFGR0 (IMXRT_LPSPI4.offset020)
  3933. #define LPSPI4_CFGR1 (IMXRT_LPSPI4.offset024)
  3934. #define LPSPI4_DMR0 (IMXRT_LPSPI4.offset030)
  3935. #define LPSPI4_DMR1 (IMXRT_LPSPI4.offset034)
  3936. #define LPSPI4_CCR (IMXRT_LPSPI4.offset040)
  3937. #define LPSPI4_FCR (IMXRT_LPSPI4.offset058)
  3938. #define LPSPI4_FSR (IMXRT_LPSPI4.offset05C)
  3939. #define LPSPI4_TCR (IMXRT_LPSPI4.offset060)
  3940. #define LPSPI4_TDR (IMXRT_LPSPI4.offset064)
  3941. #define LPSPI4_RSR (IMXRT_LPSPI4.offset070)
  3942. #define LPSPI4_RDR (IMXRT_LPSPI4.offset074)
  3943. // 39.3.1.1: page 2466
  3944. #define IMXRT_LPUART1 (*(IMXRT_REGISTER32_t *)0x40184000)
  3945. #define LPUART1_VERID (IMXRT_LPUART1.offset000)
  3946. #define LPUART1_PARAM (IMXRT_LPUART1.offset004)
  3947. #define LPUART1_GLOBAL (IMXRT_LPUART1.offset008)
  3948. #define LPUART1_PINCFG (IMXRT_LPUART1.offset00C)
  3949. #define LPUART1_BAUD (IMXRT_LPUART1.offset010)
  3950. #define LPUART1_STAT (IMXRT_LPUART1.offset014)
  3951. #define LPUART1_CTRL (IMXRT_LPUART1.offset018)
  3952. #define LPUART1_DATA (IMXRT_LPUART1.offset01C)
  3953. #define LPUART1_MATCH (IMXRT_LPUART1.offset020)
  3954. #define LPUART1_MODIR (IMXRT_LPUART1.offset024)
  3955. #define LPUART1_FIFO (IMXRT_LPUART1.offset028)
  3956. #define LPUART1_WATER (IMXRT_LPUART1.offset02C)
  3957. #define IMXRT_LPUART2 (*(IMXRT_REGISTER32_t *)0x40188000)
  3958. #define LPUART2_VERID (IMXRT_LPUART2.offset000)
  3959. #define LPUART2_PARAM (IMXRT_LPUART2.offset004)
  3960. #define LPUART2_GLOBAL (IMXRT_LPUART2.offset008)
  3961. #define LPUART2_PINCFG (IMXRT_LPUART2.offset00C)
  3962. #define LPUART2_BAUD (IMXRT_LPUART2.offset010)
  3963. #define LPUART2_STAT (IMXRT_LPUART2.offset014)
  3964. #define LPUART2_CTRL (IMXRT_LPUART2.offset018)
  3965. #define LPUART2_DATA (IMXRT_LPUART2.offset01C)
  3966. #define LPUART2_MATCH (IMXRT_LPUART2.offset020)
  3967. #define LPUART2_MODIR (IMXRT_LPUART2.offset024)
  3968. #define LPUART2_FIFO (IMXRT_LPUART2.offset028)
  3969. #define LPUART2_WATER (IMXRT_LPUART2.offset02C)
  3970. #define IMXRT_LPUART3 (*(IMXRT_REGISTER32_t *)0x4018C000)
  3971. #define LPUART3_VERID (IMXRT_LPUART3.offset000)
  3972. #define LPUART3_PARAM (IMXRT_LPUART3.offset004)
  3973. #define LPUART3_GLOBAL (IMXRT_LPUART3.offset008)
  3974. #define LPUART3_PINCFG (IMXRT_LPUART3.offset00C)
  3975. #define LPUART3_BAUD (IMXRT_LPUART3.offset010)
  3976. #define LPUART3_STAT (IMXRT_LPUART3.offset014)
  3977. #define LPUART3_CTRL (IMXRT_LPUART3.offset018)
  3978. #define LPUART3_DATA (IMXRT_LPUART3.offset01C)
  3979. #define LPUART3_MATCH (IMXRT_LPUART3.offset020)
  3980. #define LPUART3_MODIR (IMXRT_LPUART3.offset024)
  3981. #define LPUART3_FIFO (IMXRT_LPUART3.offset028)
  3982. #define LPUART3_WATER (IMXRT_LPUART3.offset02C)
  3983. #define IMXRT_LPUART4 (*(IMXRT_REGISTER32_t *)0x40190000)
  3984. #define LPUART4_VERID (IMXRT_LPUART4.offset000)
  3985. #define LPUART4_PARAM (IMXRT_LPUART4.offset004)
  3986. #define LPUART4_GLOBAL (IMXRT_LPUART4.offset008)
  3987. #define LPUART4_PINCFG (IMXRT_LPUART4.offset00C)
  3988. #define LPUART4_BAUD (IMXRT_LPUART4.offset010)
  3989. #define LPUART4_STAT (IMXRT_LPUART4.offset014)
  3990. #define LPUART4_CTRL (IMXRT_LPUART4.offset018)
  3991. #define LPUART4_DATA (IMXRT_LPUART4.offset01C)
  3992. #define LPUART4_MATCH (IMXRT_LPUART4.offset020)
  3993. #define LPUART4_MODIR (IMXRT_LPUART4.offset024)
  3994. #define LPUART4_FIFO (IMXRT_LPUART4.offset028)
  3995. #define LPUART4_WATER (IMXRT_LPUART4.offset02C)
  3996. #define IMXRT_LPUART5 (*(IMXRT_REGISTER32_t *)0x40194000)
  3997. #define LPUART5_VERID (IMXRT_LPUART5.offset000)
  3998. #define LPUART5_PARAM (IMXRT_LPUART5.offset004)
  3999. #define LPUART5_GLOBAL (IMXRT_LPUART5.offset008)
  4000. #define LPUART5_PINCFG (IMXRT_LPUART5.offset00C)
  4001. #define LPUART5_BAUD (IMXRT_LPUART5.offset010)
  4002. #define LPUART5_STAT (IMXRT_LPUART5.offset014)
  4003. #define LPUART5_CTRL (IMXRT_LPUART5.offset018)
  4004. #define LPUART5_DATA (IMXRT_LPUART5.offset01C)
  4005. #define LPUART5_MATCH (IMXRT_LPUART5.offset020)
  4006. #define LPUART5_MODIR (IMXRT_LPUART5.offset024)
  4007. #define LPUART5_FIFO (IMXRT_LPUART5.offset028)
  4008. #define LPUART5_WATER (IMXRT_LPUART5.offset02C)
  4009. #define IMXRT_LPUART6 (*(IMXRT_REGISTER32_t *)0x40198000)
  4010. #define LPUART6_VERID (IMXRT_LPUART6.offset000)
  4011. #define LPUART6_PARAM (IMXRT_LPUART6.offset004)
  4012. #define LPUART6_GLOBAL (IMXRT_LPUART6.offset008)
  4013. #define LPUART6_PINCFG (IMXRT_LPUART6.offset00C)
  4014. #define LPUART6_BAUD (IMXRT_LPUART6.offset010)
  4015. #define LPUART6_STAT (IMXRT_LPUART6.offset014)
  4016. #define LPUART6_CTRL (IMXRT_LPUART6.offset018)
  4017. #define LPUART6_DATA (IMXRT_LPUART6.offset01C)
  4018. #define LPUART6_MATCH (IMXRT_LPUART6.offset020)
  4019. #define LPUART6_MODIR (IMXRT_LPUART6.offset024)
  4020. #define LPUART6_FIFO (IMXRT_LPUART6.offset028)
  4021. #define LPUART6_WATER (IMXRT_LPUART6.offset02C)
  4022. #define IMXRT_LPUART7 (*(IMXRT_REGISTER32_t *)0x4019C000)
  4023. #define LPUART7_VERID (IMXRT_LPUART7.offset000)
  4024. #define LPUART7_PARAM (IMXRT_LPUART7.offset004)
  4025. #define LPUART7_GLOBAL (IMXRT_LPUART7.offset008)
  4026. #define LPUART7_PINCFG (IMXRT_LPUART7.offset00C)
  4027. #define LPUART7_BAUD (IMXRT_LPUART7.offset010)
  4028. #define LPUART7_STAT (IMXRT_LPUART7.offset014)
  4029. #define LPUART7_CTRL (IMXRT_LPUART7.offset018)
  4030. #define LPUART7_DATA (IMXRT_LPUART7.offset01C)
  4031. #define LPUART7_MATCH (IMXRT_LPUART7.offset020)
  4032. #define LPUART7_MODIR (IMXRT_LPUART7.offset024)
  4033. #define LPUART7_FIFO (IMXRT_LPUART7.offset028)
  4034. #define LPUART7_WATER (IMXRT_LPUART7.offset02C)
  4035. #define IMXRT_LPUART8 (*(IMXRT_REGISTER32_t *)0x401A0000)
  4036. #define LPUART8_VERID (IMXRT_LPUART8.offset000)
  4037. #define LPUART8_PARAM (IMXRT_LPUART8.offset004)
  4038. #define LPUART8_GLOBAL (IMXRT_LPUART8.offset008)
  4039. #define LPUART8_PINCFG (IMXRT_LPUART8.offset00C)
  4040. #define LPUART8_BAUD (IMXRT_LPUART8.offset010)
  4041. #define LPUART8_STAT (IMXRT_LPUART8.offset014)
  4042. #define LPUART8_CTRL (IMXRT_LPUART8.offset018)
  4043. #define LPUART8_DATA (IMXRT_LPUART8.offset01C)
  4044. #define LPUART8_MATCH (IMXRT_LPUART8.offset020)
  4045. #define LPUART8_MODIR (IMXRT_LPUART8.offset024)
  4046. #define LPUART8_FIFO (IMXRT_LPUART8.offset028)
  4047. #define LPUART8_WATER (IMXRT_LPUART8.offset02C)
  4048. #define LPUART_VERID_MAJOR(n) ((uint32_t)(((n) & 0xFF) << 24))
  4049. #define LPUART_VERID_MINOR(n) ((uint32_t)(((n) & 0xFF) << 16))
  4050. #define LPUART_VERID_FEATURE(n) ((uint32_t)(((n) & 0xFFFF) << 0))
  4051. #define LPUART_PARAM_RXFIFO(n) ((uint32_t)(((n) & 0xFF) << 8))
  4052. #define LPUART_PARAM_TXFIFO(n) ((uint32_t)(((n) & 0xFF) << 0))
  4053. #define LPUART_GLOBAL_RST ((uint32_t)(1<<1))
  4054. #define LPUART_PINCFG_TRGSEL(n) ((uint32_t)(((n) & 0x03) << 0))
  4055. #define LPUART_BAUD_MAEN1 ((uint32_t)(1<<31))
  4056. #define LPUART_BAUD_MAEN2 ((uint32_t)(1<<30))
  4057. #define LPUART_BAUD_M10 ((uint32_t)(1<<29))
  4058. #define LPUART_BAUD_OSR(n) ((uint32_t)(((n) & 0x1F) << 24))
  4059. #define LPUART_BAUD_TDMAE ((uint32_t)(1<<23))
  4060. #define LPUART_BAUD_RDMAE ((uint32_t)(1<<21))
  4061. #define LPUART_BAUD_MATCFG(n) ((uint32_t)(((n) & 0x03) << 18))
  4062. #define LPUART_BAUD_BOTHEDGE ((uint32_t)(1<<17))
  4063. #define LPUART_BAUD_RESYNCDIS ((uint32_t)(1<<16))
  4064. #define LPUART_BAUD_LBKDIE ((uint32_t)(1<<15))
  4065. #define LPUART_BAUD_RXEDGIE ((uint32_t)(1<<14))
  4066. #define LPUART_BAUD_SBNS ((uint32_t)(1<<13))
  4067. #define LPUART_BAUD_SBR(n) ((uint32_t)(((n) & 0x01FFF) << 0))
  4068. #define LPUART_STAT_LBKDIF ((uint32_t)(1<<31))
  4069. #define LPUART_STAT_RXEDGIF ((uint32_t)(1<<30))
  4070. #define LPUART_STAT_MSBF ((uint32_t)(1<<29))
  4071. #define LPUART_STAT_RXINV ((uint32_t)(1<<28))
  4072. #define LPUART_STAT_RWUID ((uint32_t)(1<<27))
  4073. #define LPUART_STAT_BRK13 ((uint32_t)(1<<26))
  4074. #define LPUART_STAT_LBKDE ((uint32_t)(1<<25))
  4075. #define LPUART_STAT_RAF ((uint32_t)(1<<24))
  4076. #define LPUART_STAT_TDRE ((uint32_t)(1<<23))
  4077. #define LPUART_STAT_TC ((uint32_t)(1<<22))
  4078. #define LPUART_STAT_RDRF ((uint32_t)(1<<21))
  4079. #define LPUART_STAT_IDLE ((uint32_t)(1<<20))
  4080. #define LPUART_STAT_OR ((uint32_t)(1<<19))
  4081. #define LPUART_STAT_NF ((uint32_t)(1<<18))
  4082. #define LPUART_STAT_FE ((uint32_t)(1<<17))
  4083. #define LPUART_STAT_PF ((uint32_t)(1<<16))
  4084. #define LPUART_STAT_MA1F ((uint32_t)(1<<15))
  4085. #define LPUART_STAT_MA2F ((uint32_t)(1<<14))
  4086. #define LPUART_CTRL_R8T9 ((uint32_t)(1<<31))
  4087. #define LPUART_CTRL_R9T8 ((uint32_t)(1<<30))
  4088. #define LPUART_CTRL_TXDIR ((uint32_t)(1<<29))
  4089. #define LPUART_CTRL_TXINV ((uint32_t)(1<<28))
  4090. #define LPUART_CTRL_ORIE ((uint32_t)(1<<27))
  4091. #define LPUART_CTRL_NEIE ((uint32_t)(1<<26))
  4092. #define LPUART_CTRL_FEIE ((uint32_t)(1<<25))
  4093. #define LPUART_CTRL_PEIE ((uint32_t)(1<<24))
  4094. #define LPUART_CTRL_TIE ((uint32_t)(1<<23))
  4095. #define LPUART_CTRL_TCIE ((uint32_t)(1<<22))
  4096. #define LPUART_CTRL_RIE ((uint32_t)(1<<21))
  4097. #define LPUART_CTRL_ILIE ((uint32_t)(1<<20))
  4098. #define LPUART_CTRL_TE ((uint32_t)(1<<19))
  4099. #define LPUART_CTRL_RE ((uint32_t)(1<<18))
  4100. #define LPUART_CTRL_RWU ((uint32_t)(1<<17))
  4101. #define LPUART_CTRL_SBK ((uint32_t)(1<<16))
  4102. #define LPUART_CTRL_MA1IE ((uint32_t)(1<<15))
  4103. #define LPUART_CTRL_MA2IE ((uint32_t)(1<<14))
  4104. #define LPUART_CTRL_M7 ((uint32_t)(1<<11))
  4105. #define LPUART_CTRL_IDLECFG(n) ((uint32_t)(((n) & 0x07) << 8))
  4106. #define LPUART_CTRL_LOOPS ((uint32_t)(1<<7))
  4107. #define LPUART_CTRL_DOZEEN ((uint32_t)(1<<6))
  4108. #define LPUART_CTRL_RSRC ((uint32_t)(1<<5))
  4109. #define LPUART_CTRL_M ((uint32_t)(1<<4))
  4110. #define LPUART_CTRL_WAKE ((uint32_t)(1<<3))
  4111. #define LPUART_CTRL_ILT ((uint32_t)(1<<2))
  4112. #define LPUART_CTRL_PE ((uint32_t)(1<<1))
  4113. #define LPUART_CTRL_PT ((uint32_t)(1<<0))
  4114. #define LPUART_DATA_NOISY ((uint32_t)(1<<15))
  4115. #define LPUART_DATA_PARITYE ((uint32_t)(1<<14))
  4116. #define LPUART_DATA_FRETSC ((uint32_t)(1<<13))
  4117. #define LPUART_DATA_RXEMPT ((uint32_t)(1<<12))
  4118. #define LPUART_DATA_IDLINE ((uint32_t)(1<<11))
  4119. #define LPUART_MATCH_MA2(n) ((uint32_t)(((n) & 0x3FF) << 16))
  4120. #define LPUART_MATCH_MA1(n) ((uint32_t)(((n) & 0x3FF) << 0))
  4121. #define LPUART_MODIR_IREN ((uint32_t)(1<<18))
  4122. #define LPUART_MODIR_TNP(n) ((uint32_t)(((n) & 0x03) << 16))
  4123. #define LPUART_MODIR_RTSWATER(n) ((uint32_t)(((n) & 0x03) << 8))
  4124. #define LPUART_MODIR_TXCTSSRC ((uint32_t)(1<<5))
  4125. #define LPUART_MODIR_TXCTSC ((uint32_t)(1<<4))
  4126. #define LPUART_MODIR_RXRTSE ((uint32_t)(1<<3))
  4127. #define LPUART_MODIR_TXRTSPOL ((uint32_t)(1<<2))
  4128. #define LPUART_MODIR_TXRTSE ((uint32_t)(1<<1))
  4129. #define LPUART_MODIR_TXCTSE ((uint32_t)(1<<0))
  4130. #define LPUART_FIFO_TXEMPT ((uint32_t)(1<<23))
  4131. #define LPUART_FIFO_RXEMPT ((uint32_t)(1<<22))
  4132. #define LPUART_FIFO_TXOF ((uint32_t)(1<<17))
  4133. #define LPUART_FIFO_RXUF ((uint32_t)(1<<16))
  4134. #define LPUART_FIFO_TXFLUSH ((uint32_t)(1<<15))
  4135. #define LPUART_FIFO_RXFLUSH ((uint32_t)(1<<14))
  4136. #define LPUART_FIFO_RXIDEN(n) ((uint32_t)(((n) & 0x07) << 10))
  4137. #define LPUART_FIFO_TXOFE ((uint32_t)(1<<9))
  4138. #define LPUART_FIFO_RXUFE ((uint32_t)(1<<8))
  4139. #define LPUART_FIFO_TXFE ((uint32_t)(1<<7))
  4140. #define LPUART_FIFO_TXFIFOSIZE(n) ((uint32_t)(((n) & 0x07) << 4))
  4141. #define LPUART_FIFO_RXFE ((uint32_t)(1<<3))
  4142. #define LPUART_FIFO_RXFIFOSIZE(n) ((uint32_t)(((n) & 0x07) << 0))
  4143. #define LPUART_WATER_RXCOUNT(n) ((uint32_t)(((n) & 0x07) << 24))
  4144. #define LPUART_WATER_RXWATER(n) ((uint32_t)(((n) & 0x03) << 16))
  4145. #define LPUART_WATER_TXCOUNT(n) ((uint32_t)(((n) & 0x07) << 8))
  4146. #define LPUART_WATER_TXWATER(n) ((uint32_t)(((n) & 0x03) << 0))
  4147. // 40.4: page 2495
  4148. // 41.3: page 2498 TODO...
  4149. // 42.5.1.1: page 2509
  4150. #define IMXRT_OCOTP (*(IMXRT_REGISTER32_t *)0x401F4000)
  4151. #define HW_OCOTP_CTRL (IMXRT_OCOTP.offset000)
  4152. #define HW_OCOTP_CTRL_SET (IMXRT_OCOTP.offset004)
  4153. #define HW_OCOTP_CTRL_CLR (IMXRT_OCOTP.offset008)
  4154. #define HW_OCOTP_CTRL_TOG (IMXRT_OCOTP.offset00C)
  4155. #define HW_OCOTP_TIMING (IMXRT_OCOTP.offset010)
  4156. #define HW_OCOTP_DATA (IMXRT_OCOTP.offset020)
  4157. #define HW_OCOTP_READ_CTRL (IMXRT_OCOTP.offset030)
  4158. #define HW_OCOTP_READ_FUSE_DATA (IMXRT_OCOTP.offset040)
  4159. #define HW_OCOTP_SW_STICKY (IMXRT_OCOTP.offset050)
  4160. #define HW_OCOTP_SCS (IMXRT_OCOTP.offset060)
  4161. #define HW_OCOTP_SCS_SET (IMXRT_OCOTP.offset064)
  4162. #define HW_OCOTP_SCS_CLR (IMXRT_OCOTP.offset068)
  4163. #define HW_OCOTP_SCS_TOG (IMXRT_OCOTP.offset06C)
  4164. #define HW_OCOTP_VERSION (IMXRT_OCOTP.offset090)
  4165. #define HW_OCOTP_TIMING2 (IMXRT_OCOTP.offset100)
  4166. #define HW_OCOTP_CTRL_WR_UNLOCK(n) ((uint32_t)(((n) & 0xFFFF) << 16))
  4167. #define HW_OCOTP_CTRL_RELOAD_SHADOWS ((uint32_t)(1<<10))
  4168. #define HW_OCOTP_CTRL_ERROR ((uint32_t)(1<<9))
  4169. #define HW_OCOTP_CTRL_BUSY ((uint32_t)(1<<8))
  4170. #define HW_OCOTP_CTRL_ADDR(n) ((uint32_t)(((n) & 0x3F) << 0))
  4171. #define HW_OCOTP_TIMING_WAIT(n) ((uint32_t)(((n) & 0x3F) << 22))
  4172. #define HW_OCOTP_TIMING_STROBE_READ(n) ((uint32_t)(((n) & 0x3F) << 16))
  4173. #define HW_OCOTP_TIMING_RELAX(n) ((uint32_t)(((n) & 0x0F) << 12))
  4174. #define HW_OCOTP_TIMING_STROBE_PROG(n) ((uint32_t)(((n) & 0xFFF) << 0))
  4175. #define HW_OCOTP_READ_CTRL_READ_FUSE ((uint32_t)(1<<0))
  4176. #define HW_OCOTP_SW_STICKY_JTAG_BLOCK_RELEASE ((uint32_t)(1<<4))
  4177. #define HW_OCOTP_SW_STICKY_BLOCK_ROM_PART ((uint32_t)(1<<3))
  4178. #define HW_OCOTP_SW_STICKY_FIELD_RETURN_LOCK ((uint32_t)(1<<2))
  4179. #define HW_OCOTP_SW_STICKY_SRK_REVOKE_LOCK ((uint32_t)(1<<1))
  4180. #define HW_OCOTP_SW_STICKY_BLOCK_DTCP_KEY ((uint32_t)(1<<0))
  4181. #define HW_OCOTP_SCS_LOCK ((uint32_t)(1<<31))
  4182. #define HW_OCOTP_SCS_HAB_JDE ((uint32_t)(1<<0))
  4183. #define HW_OCOTP_VERSION_MAJOR(n) ((uint32_t)(((n) & 0x07) << 4))
  4184. #define HW_OCOTP_VERSION_MINOR(n) ((uint32_t)(((n) & 0x07) << 4))
  4185. #define HW_OCOTP_VERSION_STEP(n) ((uint32_t)(((n) & 0x07) << 4))
  4186. #define HW_OCOTP_TIMING2_RELAX1(n) ((uint32_t)(((n) & 0x07) << 4))
  4187. #define HW_OCOTP_TIMING2_RELAX_READ(n) ((uint32_t)(((n) & 0x07) << 4))
  4188. #define HW_OCOTP_TIMING2_RELAX_PROG(n) ((uint32_t)(((n) & 0x07) << 4))
  4189. #define IMXRT_OCOTP_VALUE (*(IMXRT_REGISTER32_t *)0x401F4400)
  4190. #define HW_OCOTP_LOCK (IMXRT_OCOTP_VALUE.offset000)
  4191. #define HW_OCOTP_CFG0 (IMXRT_OCOTP_VALUE.offset010)
  4192. #define HW_OCOTP_CFG1 (IMXRT_OCOTP_VALUE.offset020)
  4193. #define HW_OCOTP_CFG2 (IMXRT_OCOTP_VALUE.offset030)
  4194. #define HW_OCOTP_CFG3 (IMXRT_OCOTP_VALUE.offset040)
  4195. #define HW_OCOTP_CFG4 (IMXRT_OCOTP_VALUE.offset050)
  4196. #define HW_OCOTP_CFG5 (IMXRT_OCOTP_VALUE.offset060)
  4197. #define HW_OCOTP_CFG6 (IMXRT_OCOTP_VALUE.offset070)
  4198. #define HW_OCOTP_MEM0 (IMXRT_OCOTP_VALUE.offset080)
  4199. #define HW_OCOTP MEM1 (IMXRT_OCOTP_VALUE.offset090)
  4200. #define HW_OCOTP_MEM2 (IMXRT_OCOTP_VALUE.offset0A0)
  4201. #define HW_OCOTP_MEM3 (IMXRT_OCOTP_VALUE.offset0B0)
  4202. #define HW_OCOTP_MEM4 (IMXRT_OCOTP_VALUE.offset0C0)
  4203. #define HW_OCOTP_ANA0 (IMXRT_OCOTP_VALUE.offset0D0)
  4204. #define HW_OCOTP_ANA1 (IMXRT_OCOTP_VALUE.offset0E0)
  4205. #define HW_OCOTP_ANA2 (IMXRT_OCOTP_VALUE.offset0F0)
  4206. #define HW_OCOTP_SRK0 (IMXRT_OCOTP_VALUE.offset180)
  4207. #define HW_OCOTP_SRK1 (IMXRT_OCOTP_VALUE.offset190)
  4208. #define HW_OCOTP_SRK2 (IMXRT_OCOTP_VALUE.offset1A0)
  4209. #define HW_OCOTP_SRK3 (IMXRT_OCOTP_VALUE.offset1B0)
  4210. #define HW_OCOTP_SRK4 (IMXRT_OCOTP_VALUE.offset1C0)
  4211. #define HW_OCOTP_SRK5 (IMXRT_OCOTP_VALUE.offset1D0)
  4212. #define HW_OCOTP_SRK6 (IMXRT_OCOTP_VALUE.offset1E0)
  4213. #define HW_OCOTP_SRK7 (IMXRT_OCOTP_VALUE.offset1F0)
  4214. #define HW_OCOTP_SJC_RESP0 (IMXRT_OCOTP_VALUE.offset200)
  4215. #define HW_OCOTP_SJC_RESP1 (IMXRT_OCOTP_VALUE.offset210)
  4216. #define HW_OCOTP_MAC0 (IMXRT_OCOTP_VALUE.offset220)
  4217. #define HW_OCOTP_MAC1 (IMXRT_OCOTP_VALUE.offset230)
  4218. #define HW_OCOTP_GP3 (IMXRT_OCOTP_VALUE.offset240)
  4219. #define HW_OCOTP_GP1 (IMXRT_OCOTP_VALUE.offset260)
  4220. #define HW_OCOTP_GP2 (IMXRT_OCOTP_VALUE.offset270)
  4221. #define HW_OCOTP_SW_GP1 (IMXRT_OCOTP_VALUE.offset280)
  4222. #define HW_OCOTP_SW_GP20 (IMXRT_OCOTP_VALUE.offset290)
  4223. #define HW_OCOTP_SW_GP21 (IMXRT_OCOTP_VALUE.offset2A0)
  4224. #define HW_OCOTP_SW_GP22 (IMXRT_OCOTP_VALUE.offset2B0)
  4225. #define HW_OCOTP_SW_GP23 (IMXRT_OCOTP_VALUE.offset2C0)
  4226. #define HW_OCOTP_MISC_CONF0 (IMXRT_OCOTP_VALUE.offset2D0)
  4227. #define HW_OCOTP_MISC_CONF1 (IMXRT_OCOTP_VALUE.offset2E0)
  4228. #define HW_OCOTP_SRK_REVOKE (IMXRT_OCOTP_VALUE.offset2F0)
  4229. // 44.8.1: page 2583
  4230. #define IMXRT_PIT (*(IMXRT_REGISTER32_t *)0x40084000)
  4231. #define PIT_MCR (IMXRT_PIT.offset000)
  4232. #define PIT_LTMR64H (IMXRT_PIT.offset0E0)
  4233. #define PIT_LTMR64L (IMXRT_PIT.offset0E4)
  4234. #define PIT_LDVAL0 (IMXRT_PIT.offset100)
  4235. #define PIT_CVAL0 (IMXRT_PIT.offset104)
  4236. #define PIT_TCTRL0 (IMXRT_PIT.offset108)
  4237. #define PIT_TFLG0 (IMXRT_PIT.offset10C)
  4238. #define PIT_LDVAL1 (IMXRT_PIT.offset110)
  4239. #define PIT_CVAL1 (IMXRT_PIT.offset114)
  4240. #define PIT_TCTRL1 (IMXRT_PIT.offset118)
  4241. #define PIT_TFLG1 (IMXRT_PIT.offset11C)
  4242. #define PIT_LDVAL2 (IMXRT_PIT.offset120)
  4243. #define PIT_CVAL2 (IMXRT_PIT.offset124)
  4244. #define PIT_TCTRL2 (IMXRT_PIT.offset128)
  4245. #define PIT_TFLG2 (IMXRT_PIT.offset12C)
  4246. #define PIT_LDVAL3 (IMXRT_PIT.offset130)
  4247. #define PIT_CVAL3 (IMXRT_PIT.offset134)
  4248. #define PIT_TCTRL3 (IMXRT_PIT.offset138)
  4249. #define PIT_TFLG3 (IMXRT_PIT.offset13C)
  4250. // 45.7: page 2598
  4251. #define IMXRT_PMU (*(IMXRT_REGISTER32_t *)0x400D8000)
  4252. #define PMU_REG_1P1 (IMXRT_PMU.offset110)
  4253. #define PMU_REG_1P1_SET (IMXRT_PMU.offset114)
  4254. #define PMU_REG_1P1_CLR (IMXRT_PMU.offset118)
  4255. #define PMU_REG_1P1_TOG (IMXRT_PMU.offset11C)
  4256. #define PMU_REG_3P0 (IMXRT_PMU.offset120)
  4257. #define PMU_REG_3P0_SET (IMXRT_PMU.offset124)
  4258. #define PMU_REG_3P0_CLR (IMXRT_PMU.offset128)
  4259. #define PMU_REG_3P0_TOG (IMXRT_PMU.offset12C)
  4260. #define PMU_REG_2P5 (IMXRT_PMU.offset130)
  4261. #define PMU_REG_2P5_SET (IMXRT_PMU.offset134)
  4262. #define PMU_REG_2P5_CLR (IMXRT_PMU.offset138)
  4263. #define PMU_REG_2P5_TOG (IMXRT_PMU.offset13C)
  4264. #define PMU_REG_CORE (IMXRT_PMU.offset140)
  4265. #define PMU_REG_CORE_SET (IMXRT_PMU.offset144)
  4266. #define PMU_REG_CORE_CLR (IMXRT_PMU.offset148)
  4267. #define PMU_REG_CORE_TOG (IMXRT_PMU.offset14C)
  4268. #define PMU_MISC0 (IMXRT_PMU.offset150)
  4269. #define PMU_MISC0_SET (IMXRT_PMU.offset154)
  4270. #define PMU_MISC0_CLR (IMXRT_PMU.offset158)
  4271. #define PMU_MISC0_TOG (IMXRT_PMU.offset15C)
  4272. #define PMU_MISC1 (IMXRT_PMU.offset160)
  4273. #define PMU_MISC1_SET (IMXRT_PMU.offset164)
  4274. #define PMU_MISC1_CLR (IMXRT_PMU.offset168)
  4275. #define PMU_MISC1_TOG (IMXRT_PMU.offset16C)
  4276. #define PMU_MISC2 (IMXRT_PMU.offset170)
  4277. #define PMU_MISC2_SET (IMXRT_PMU.offset174)
  4278. #define PMU_MISC2_CLR (IMXRT_PMU.offset178)
  4279. #define PMU_MISC2_TOG (IMXRT_PMU.offset17C)
  4280. // 46.7: page 2656
  4281. #define IMXRT_PXP (*(IMXRT_REGISTER32_t *)0x402B4000)
  4282. #define PXP_HW_PXP_CTRL
  4283. #define PXP_HW_PXP_CTRL_SET
  4284. #define PXP_HW_PXP_CTRL_CLR
  4285. #define PXP_HW_PXP_CTRL_TOG
  4286. #define PXP_HW_PXP_STAT
  4287. #define PXP_HW_PXP_STAT_SET
  4288. #define PXP_HW_PXP_STAT_CLR
  4289. #define PXP_HW_PXP_STAT_TOG
  4290. #define PXP_HW_PXP_OUT_CTRL
  4291. #define PXP_HW_PXP_OUT_CTRL_SET
  4292. #define PXP_HW_PXP_OUT_CTRL_CLR
  4293. #define PXP_HW_PXP_OUT_CTRL_TOG
  4294. #define PXP_HW_PXP_OUT_BUF
  4295. #define PXP_HW_PXP_OUT_BUF2
  4296. #define PXP_HW_PXP_OUT_PITCH
  4297. #define PXP_HW_PXP_OUT_LRC
  4298. #define PXP_HW_PXP_OUT_PS_ULC
  4299. #define PXP_HW_PXP_OUT_PS_LRC
  4300. #define PXP_HW_PXP_OUT_AS_ULC
  4301. #define PXP_HW_PXP_OUT_AS_LRC
  4302. #define PXP_HW_PXP_PS_CTRL
  4303. #define PXP_HW_PXP_PS_CTRL_SET
  4304. #define PXP_HW_PXP_PS_CTRL_CLR
  4305. #define PXP_HW_PXP_PS_CTRL_TOG
  4306. #define PXP_HW_PXP_PS_BUF
  4307. #define PXP_HW_PXP_PS_UBUF
  4308. #define PXP_HW_PXP_PS_VBUF
  4309. #define PXP_HW_PXP_PS_PITCH
  4310. #define PXP_HW_PXP_PS_BACKGROUND_0
  4311. #define PXP_HW_PXP_PS_SCALE
  4312. #define PXP_HW_PXP_PS_OFFSET
  4313. #define PXP_HW_PXP_PS_CLRKEYLOW_0
  4314. #define PXP_HW_PXP_PS_CLRKEYHIGH_0
  4315. #define PXP_HW_PXP_AS_CTRL
  4316. #define PXP_HW_PXP_AS_BUF
  4317. #define PXP_HW_PXP_AS_PITCH
  4318. #define PXP_HW_PXP_AS_CLRKEYLOW_0
  4319. #define PXP_HW_PXP_AS_CLRKEYHIGH_0
  4320. #define PXP_HW_PXP_CSC1_COEF0
  4321. #define PXP_HW_PXP_CSC1_COEF1
  4322. #define PXP_HW_PXP_CSC1_COEF2
  4323. #define PXP_HW_PXP_CSC2_CTRL
  4324. #define PXP_HW_PXP_CSC2_COEF0
  4325. #define PXP_HW_PXP_CSC2_COEF1
  4326. #define PXP_HW_PXP_CSC2_COEF2
  4327. #define PXP_HW_PXP_CSC2_COEF3
  4328. #define PXP_HW_PXP_CSC2_COEF4
  4329. #define PXP_HW_PXP_CSC2_COEF5
  4330. #define PXP_HW_PXP_LUT_CTRL
  4331. #define PXP_HW_PXP_LUT_ADDR
  4332. #define PXP_HW_PXP_LUT_DATA
  4333. #define PXP_HW_PXP_LUT_EXTMEM
  4334. #define PXP_HW_PXP_CFA
  4335. #define PXP_HW_PXP_ALPHA_A_CTRL
  4336. #define PXP_HW_PXP_PS_BACKGROUND_1
  4337. #define PXP_HW_PXP_PS_CLRKEYLOW_1
  4338. #define PXP_HW_PXP_PS_CLRKEYHIGH_1
  4339. #define PXP_HW_PXP_AS_CLRKEYLOW_1
  4340. #define PXP_HW_PXP_AS_CLRKEYHIGH_1
  4341. #define PXP_HW_PXP_CTRL2
  4342. #define PXP_HW_PXP_CTRL2_SET
  4343. #define PXP_HW_PXP_CTRL2_CLR
  4344. #define PXP_HW_PXP_CTRL2_TOG
  4345. #define PXP_HW_PXP_POWER_REG0
  4346. #define PXP_HW_PXP_POWER_REG1
  4347. #define PXP_HW_PXP_DATA_PATH_CTRL0
  4348. #define PXP_HW_PXP_DATA_PATH_CTRL0_SET
  4349. #define PXP_HW_PXP_DATA_PATH_CTRL0_CLR
  4350. #define PXP_HW_PXP_DATA_PATH_CTRL0_TOG
  4351. #define PXP_HW_PXP_DATA_PATH_CTRL1
  4352. #define PXP_HW_PXP_DATA_PATH_CTRL1_SET
  4353. #define PXP_HW_PXP_DATA_PATH_CTRL1_CLR
  4354. #define PXP_HW_PXP_DATA_PATH_CTRL1_TOG
  4355. #define PXP_HW_PXP_INIT_MEM_CTRL
  4356. #define PXP_HW_PXP_INIT_MEM_CTRL_SET
  4357. #define PXP_HW_PXP_INIT_MEM_CTRL_CLR
  4358. #define PXP_HW_PXP_INIT_MEM_CTRL_TOG
  4359. #define PXP_HW_PXP_INIT_MEM_DATA
  4360. #define PXP_HW_PXP_INIT_MEM_DATA_HIGH
  4361. #define PXP_HW_PXP_IRQ_MASK
  4362. #define PXP_HW_PXP_IRQ_MASK_SET
  4363. #define PXP_HW_PXP_IRQ_MASK_CLR
  4364. #define PXP_HW_PXP_IRQ_MASK_TOG
  4365. #define PXP_HW_PXP_IRQ
  4366. #define PXP_HW_PXP_IRQ_SET
  4367. #define PXP_HW_PXP_IRQ_CLR
  4368. #define PXP_HW_PXP_IRQ_TOG
  4369. #define PXP_HW_PXP_NEXT_EN
  4370. #define PXP_HW_PXP_NEXT_EN_SET
  4371. #define PXP_HW_PXP_NEXT_EN_CLR
  4372. #define PXP_HW_PXP_NEXT_EN_TOG
  4373. #define PXP_HW_PXP_NEXT
  4374. #define PXP_HW_PXP_DEBUGCTRL
  4375. #define PXP_HW_PXP_DEBUG
  4376. #define PXP_HW_PXP_VERSION
  4377. #define PXP_HW_PXP_DITHER_STORE_SIZE_CH0
  4378. #define PXP_HW_PXP_WFB_FETCH_CTRL
  4379. #define PXP_HW_PXP_WFB_FETCH_CTRL_SET
  4380. #define PXP_HW_PXP_WFB_FETCH_CTRL_CLR
  4381. #define PXP_HW_PXP_WFB_FETCH_CTRL_TOG
  4382. #define PXP_HW_PXP_WFB_FETCH_BUF1_ADDR
  4383. #define PXP_HW_PXP_WFB_FETCH_BUF1_PITCH
  4384. #define PXP_HW_PXP_WFB_FETCH_BUF1_SIZE
  4385. #define PXP_HW_PXP_WFB_FETCH_BUF2_ADDR
  4386. #define PXP_HW_PXP_WFB_FETCH_BUF2_PITCH
  4387. #define PXP_HW_PXP_WFB_FETCH_BUF2_SIZE
  4388. #define PXP_HW_PXP_WFB_ARRAY_PIXEL0_MASK
  4389. #define PXP_HW_PXP_WFB_ARRAY_PIXEL1_MASK
  4390. #define PXP_HW_PXP_WFB_ARRAY_PIXEL2_MASK
  4391. #define PXP_HW_PXP_WFB_ARRAY_PIXEL3_MASK
  4392. #define PXP_HW_PXP_WFB_ARRAY_PIXEL4_MASK
  4393. #define PXP_HW_PXP_WFB_ARRAY_PIXEL5_MASK
  4394. #define PXP_HW_PXP_WFB_ARRAY_PIXEL6_MASK
  4395. #define PXP_HW_PXP_WFB_ARRAY_PIXEL7_MASK
  4396. #define PXP_HW_PXP_WFB_ARRAY_FLAG0_MASK
  4397. #define PXP_HW_PXP_WFB_ARRAY_FLAG1_MASK
  4398. #define PXP_HW_PXP_WFB_ARRAY_FLAG2_MASK
  4399. #define PXP_HW_PXP_WFB_ARRAY_FLAG3_MASK
  4400. #define PXP_HW_PXP_WFB_ARRAY_FLAG4_MASK
  4401. #define PXP_HW_PXP_WFB_ARRAY_FLAG5_MASK
  4402. #define PXP_HW_PXP_WFB_ARRAY_FLAG6_MASK
  4403. #define PXP_HW_PXP_WFB_ARRAY_FLAG7_MASK
  4404. #define PXP_HW_PXP_WFB_FETCH_BUF1_CORD
  4405. #define PXP_HW_PXP_WFB_FETCH_BUF2_CORD
  4406. #define PXP_HW_PXP_WFB_ARRAY_FLAG8_MASK
  4407. #define PXP_HW_PXP_WFB_ARRAY_FLAG9_MASK
  4408. #define PXP_HW_PXP_WFB_ARRAY_FLAG10_MASK
  4409. #define PXP_HW_PXP_WFB_ARRAY_FLAG11_MASK
  4410. #define PXP_HW_PXP_WFB_ARRAY_FLAG12_MASK
  4411. #define PXP_HW_PXP_WFB_ARRAY_FLAG13_MASK
  4412. #define PXP_HW_PXP_WFB_ARRAY_FLAG14_MASK
  4413. #define PXP_HW_PXP_WFB_ARRAY_FLAG15_MASK
  4414. #define PXP_HW_PXP_WFB_ARRAY_REG0
  4415. #define PXP_HW_PXP_WFB_ARRAY_REG1
  4416. #define PXP_HW_PXP_WFB_ARRAY_REG2
  4417. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH0
  4418. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH0_SET
  4419. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH0_CLR
  4420. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH0_TOG
  4421. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH1
  4422. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH1_SET
  4423. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH1_CLR
  4424. #define PXP_HW_PXP_WFE_B_STORE_CTRL_CH1_TOG
  4425. #define PXP_HW_PXP_WFE_B_STORE_STATUS_CH0
  4426. #define PXP_HW_PXP_WFE_B_STORE_STATUS_CH1
  4427. #define PXP_HW_PXP_WFE_B_STORE_SIZE_CH0
  4428. #define PXP_HW_PXP_WFE_B_STORE_SIZE_CH1
  4429. #define PXP_HW_PXP_WFE_B_STORE_PITCH
  4430. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH0
  4431. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH0_SET
  4432. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH0_CLR
  4433. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH0_TOG
  4434. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH1
  4435. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH1_SET
  4436. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH1_CLR
  4437. #define PXP_HW_PXP_WFE_B_STORE_SHIFT_CTRL_CH1_TOG
  4438. #define PXP_HW_PXP_WFE_B_STORE_ADDR_0_CH0
  4439. #define PXP_HW_PXP_WFE_B_STORE_ADDR_1_CH0
  4440. #define PXP_HW_PXP_WFE_B_STORE_FILL_DATA_CH0
  4441. #define PXP_HW_PXP_WFE_B_STORE_ADDR_0_CH1
  4442. #define PXP_HW_PXP_WFE_B_STORE_ADDR_1_CH1
  4443. #define PXP_HW_PXP_WFE_B_STORE_D_MASK0_H_CH0
  4444. #define PXP_HW_PXP_WFE_B_STORE_D_MASK0_L_CH0
  4445. #define PXP_HW_PXP_WFE_B_STORE_D_MASK1_H_CH0
  4446. #define PXP_HW_PXP_WFE_B_STORE_D_MASK1_L_CH0
  4447. #define PXP_HW_PXP_WFE_B_STORE_D_MASK2_H_CH0
  4448. #define PXP_HW_PXP_WFE_B_STORE_D_MASK2_L_CH0
  4449. #define PXP_HW_PXP_WFE_B_STORE_D_MASK3_H_CH0
  4450. #define PXP_HW_PXP_WFE_B_STORE_D_MASK3_L_CH0
  4451. #define PXP_HW_PXP_WFE_B_STORE_D_MASK4_H_CH0
  4452. #define PXP_HW_PXP_WFE_B_STORE_D_MASK4_L_CH0
  4453. #define PXP_HW_PXP_WFE_B_STORE_D_MASK5_H_CH0
  4454. #define PXP_HW_PXP_WFE_B_STORE_D_MASK5_L_CH0
  4455. #define PXP_HW_PXP_WFE_B_STORE_D_MASK6_H_CH0
  4456. #define PXP_HW_PXP_WFE_B_STORE_D_MASK6_L_CH0
  4457. #define PXP_HW_PXP_WFE_B_STORE_D_MASK7_H_CH0
  4458. #define PXP_HW_PXP_WFE_B_STORE_D_MASK7_L_CH0
  4459. #define PXP_HW_PXP_WFE_B_STORE_D_SHIFT_L_CH0
  4460. #define PXP_HW_PXP_WFE_B_STORE_D_SHIFT_H_CH0
  4461. #define PXP_HW_PXP_WFE_B_STORE_F_SHIFT_L_CH0
  4462. #define PXP_HW_PXP_WFE_B_STORE_F_SHIFT_H_CH0
  4463. #define PXP_HW_PXP_WFE_B_STORE_F_MASK_L_CH0
  4464. #define PXP_HW_PXP_WFE_B_STORE_F_MASK_H_CH0
  4465. #define PXP_HW_PXP_FETCH_WFE_B_DEBUG
  4466. #define PXP_HW_PXP_DITHER_CTRL
  4467. #define PXP_HW_PXP_DITHER_CTRL_SET
  4468. #define PXP_HW_PXP_DITHER_CTRL_CLR
  4469. #define PXP_HW_PXP_DITHER_CTRL_TOG
  4470. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA0
  4471. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA0_SET
  4472. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA0_CLR
  4473. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA0_TOG
  4474. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA1
  4475. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA1_SET
  4476. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA1_CLR
  4477. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA1_TOG
  4478. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA2
  4479. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA2_SET
  4480. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA2_CLR
  4481. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA2_TOG
  4482. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA3
  4483. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA3_SET
  4484. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA3_CLR
  4485. #define PXP_HW_PXP_DITHER_FINAL_LUT_DATA3_TOG
  4486. #define PXP_HW_PXP_WFE_B_CTRL
  4487. #define PXP_HW_PXP_WFE_B_CTRL_SET
  4488. #define PXP_HW_PXP_WFE_B_CTRL_CLR
  4489. #define PXP_HW_PXP_WFE_B_CTRL_TOG
  4490. #define PXP_HW_PXP_WFE_B_DIMENSIONS
  4491. #define PXP_HW_PXP_WFE_B_OFFSET
  4492. #define PXP_HW_PXP_WFE_B_SW_DATA_REGS
  4493. #define PXP_HW_PXP_WFE_B_SW_FLAG_REGS
  4494. #define PXP_HW_PXP_WFE_B_STAGE1_MUX0
  4495. #define PXP_HW_PXP_WFE_B_STAGE1_MUX0_SET
  4496. #define PXP_HW_PXP_WFE_B_STAGE1_MUX0_CLR
  4497. #define PXP_HW_PXP_WFE_B_STAGE1_MUX0_TOG
  4498. #define PXP_HW_PXP_WFE_B_STAGE1_MUX1
  4499. #define PXP_HW_PXP_WFE_B_STAGE1_MUX1_SET
  4500. #define PXP_HW_PXP_WFE_B_STAGE1_MUX1_CLR
  4501. #define PXP_HW_PXP_WFE_B_STAGE1_MUX1_TOG
  4502. #define PXP_HW_PXP_WFE_B_STAGE1_MUX2
  4503. #define PXP_HW_PXP_WFE_B_STAGE1_MUX2_SET
  4504. #define PXP_HW_PXP_WFE_B_STAGE1_MUX2_CLR
  4505. #define PXP_HW_PXP_WFE_B_STAGE1_MUX2_TOG
  4506. #define PXP_HW_PXP_WFE_B_STAGE1_MUX3
  4507. #define PXP_HW_PXP_WFE_B_STAGE1_MUX3_SET
  4508. #define PXP_HW_PXP_WFE_B_STAGE1_MUX3_CLR
  4509. #define PXP_HW_PXP_WFE_B_STAGE1_MUX3_TOG
  4510. #define PXP_HW_PXP_WFE_B_STAGE1_MUX4
  4511. #define PXP_HW_PXP_WFE_B_STAGE1_MUX4_SET
  4512. #define PXP_HW_PXP_WFE_B_STAGE1_MUX4_CLR
  4513. #define PXP_HW_PXP_WFE_B_STAGE1_MUX4_TOG
  4514. #define PXP_HW_PXP_WFE_B_STAGE1_MUX5
  4515. #define PXP_HW_PXP_WFE_B_STAGE1_MUX5_SET
  4516. #define PXP_HW_PXP_WFE_B_STAGE1_MUX5_CLR
  4517. #define PXP_HW_PXP_WFE_B_STAGE1_MUX5_TOG
  4518. #define PXP_HW_PXP_WFE_B_STAGE1_MUX6
  4519. #define PXP_HW_PXP_WFE_B_STAGE1_MUX6_SET
  4520. #define PXP_HW_PXP_WFE_B_STAGE1_MUX6_CLR
  4521. #define PXP_HW_PXP_WFE_B_STAGE1_MUX6_TOG
  4522. #define PXP_HW_PXP_WFE_B_STAGE1_MUX7
  4523. #define PXP_HW_PXP_WFE_B_STAGE1_MUX7_SET
  4524. #define PXP_HW_PXP_WFE_B_STAGE1_MUX7_CLR
  4525. #define PXP_HW_PXP_WFE_B_STAGE1_MUX7_TOG
  4526. #define PXP_HW_PXP_WFE_B_STAGE1_MUX8
  4527. #define PXP_HW_PXP_WFE_B_STAGE1_MUX8_SET
  4528. #define PXP_HW_PXP_WFE_B_STAGE1_MUX8_CLR
  4529. #define PXP_HW_PXP_WFE_B_STAGE1_MUX8_TOG
  4530. #define PXP_HW_PXP_WFE_B_STAGE2_MUX0
  4531. #define PXP_HW_PXP_WFE_B_STAGE2_MUX0_SET
  4532. #define PXP_HW_PXP_WFE_B_STAGE2_MUX0_CLR
  4533. #define PXP_HW_PXP_WFE_B_STAGE2_MUX0_TOG
  4534. #define PXP_HW_PXP_WFE_B_STAGE2_MUX1
  4535. #define PXP_HW_PXP_WFE_B_STAGE2_MUX1_SET
  4536. #define PXP_HW_PXP_WFE_B_STAGE2_MUX1_CLR
  4537. #define PXP_HW_PXP_WFE_B_STAGE2_MUX1_TOG
  4538. #define PXP_HW_PXP_WFE_B_STAGE2_MUX2
  4539. #define PXP_HW_PXP_WFE_B_STAGE2_MUX2_SET
  4540. #define PXP_HW_PXP_WFE_B_STAGE2_MUX2_CLR
  4541. #define PXP_HW_PXP_WFE_B_STAGE2_MUX2_TOG
  4542. #define PXP_HW_PXP_WFE_B_STAGE2_MUX3
  4543. #define PXP_HW_PXP_WFE_B_STAGE2_MUX3_SET
  4544. #define PXP_HW_PXP_WFE_B_STAGE2_MUX3_CLR
  4545. #define PXP_HW_PXP_WFE_B_STAGE2_MUX3_TOG
  4546. #define PXP_HW_PXP_WFE_B_STAGE2_MUX4
  4547. #define PXP_HW_PXP_WFE_B_STAGE2_MUX4_SET
  4548. #define PXP_HW_PXP_WFE_B_STAGE2_MUX4_CLR
  4549. #define PXP_HW_PXP_WFE_B_STAGE2_MUX4_TOG
  4550. #define PXP_HW_PXP_WFE_B_STAGE2_MUX5
  4551. #define PXP_HW_PXP_WFE_B_STAGE2_MUX5_SET
  4552. #define PXP_HW_PXP_WFE_B_STAGE2_MUX5_CLR
  4553. #define PXP_HW_PXP_WFE_B_STAGE2_MUX5_TOG
  4554. #define PXP_HW_PXP_WFE_B_STAGE2_MUX6
  4555. #define PXP_HW_PXP_WFE_B_STAGE2_MUX6_SET
  4556. #define PXP_HW_PXP_WFE_B_STAGE2_MUX6_CLR
  4557. #define PXP_HW_PXP_WFE_B_STAGE2_MUX6_TOG
  4558. #define PXP_HW_PXP_WFE_B_STAGE2_MUX7
  4559. #define PXP_HW_PXP_WFE_B_STAGE2_MUX7_SET
  4560. #define PXP_HW_PXP_WFE_B_STAGE2_MUX7_CLR
  4561. #define PXP_HW_PXP_WFE_B_STAGE2_MUX7_TOG
  4562. #define PXP_HW_PXP_WFE_B_STAGE2_MUX8
  4563. #define PXP_HW_PXP_WFE_B_STAGE2_MUX8_SET
  4564. #define PXP_HW_PXP_WFE_B_STAGE2_MUX8_CLR
  4565. #define PXP_HW_PXP_WFE_B_STAGE2_MUX8_TOG
  4566. #define PXP_HW_PXP_WFE_B_STAGE2_MUX9
  4567. #define PXP_HW_PXP_WFE_B_STAGE2_MUX9_SET
  4568. #define PXP_HW_PXP_WFE_B_STAGE2_MUX9_CLR
  4569. #define PXP_HW_PXP_WFE_B_STAGE2_MUX9_TOG
  4570. #define PXP_HW_PXP_WFE_B_STAGE2_MUX10
  4571. #define PXP_HW_PXP_WFE_B_STAGE2_MUX10_SET
  4572. #define PXP_HW_PXP_WFE_B_STAGE2_MUX10_CLR
  4573. #define PXP_HW_PXP_WFE_B_STAGE2_MUX10_TOG
  4574. #define PXP_HW_PXP_WFE_B_STAGE2_MUX11
  4575. #define PXP_HW_PXP_WFE_B_STAGE2_MUX11_SET
  4576. #define PXP_HW_PXP_WFE_B_STAGE2_MUX11_CLR
  4577. #define PXP_HW_PXP_WFE_B_STAGE2_MUX11_TOG
  4578. #define PXP_HW_PXP_WFE_B_STAGE2_MUX12
  4579. #define PXP_HW_PXP_WFE_B_STAGE2_MUX12_SET
  4580. #define PXP_HW_PXP_WFE_B_STAGE2_MUX12_CLR
  4581. #define PXP_HW_PXP_WFE_B_STAGE2_MUX12_TOG
  4582. #define PXP_HW_PXP_WFE_B_STAGE3_MUX0
  4583. #define PXP_HW_PXP_WFE_B_STAGE3_MUX0_SET
  4584. #define PXP_HW_PXP_WFE_B_STAGE3_MUX0_CLR
  4585. #define PXP_HW_PXP_WFE_B_STAGE3_MUX0_TOG
  4586. #define PXP_HW_PXP_WFE_B_STAGE3_MUX1
  4587. #define PXP_HW_PXP_WFE_B_STAGE3_MUX1_SET
  4588. #define PXP_HW_PXP_WFE_B_STAGE3_MUX1_CLR
  4589. #define PXP_HW_PXP_WFE_B_STAGE3_MUX1_TOG
  4590. #define PXP_HW_PXP_WFE_B_STAGE3_MUX2
  4591. #define PXP_HW_PXP_WFE_B_STAGE3_MUX2_SET
  4592. #define PXP_HW_PXP_WFE_B_STAGE3_MUX2_CLR
  4593. #define PXP_HW_PXP_WFE_B_STAGE3_MUX2_TOG
  4594. #define PXP_HW_PXP_WFE_B_STAGE3_MUX3
  4595. #define PXP_HW_PXP_WFE_B_STAGE3_MUX3_SET
  4596. #define PXP_HW_PXP_WFE_B_STAGE3_MUX3_CLR
  4597. #define PXP_HW_PXP_WFE_B_STAGE3_MUX3_TOG
  4598. #define PXP_HW_PXP_WFE_B_STAGE3_MUX4
  4599. #define PXP_HW_PXP_WFE_B_STAGE3_MUX4_SET
  4600. #define PXP_HW_PXP_WFE_B_STAGE3_MUX4_CLR
  4601. #define PXP_HW_PXP_WFE_B_STAGE3_MUX4_TOG
  4602. #define PXP_HW_PXP_WFE_B_STAGE3_MUX5
  4603. #define PXP_HW_PXP_WFE_B_STAGE3_MUX5_SET
  4604. #define PXP_HW_PXP_WFE_B_STAGE3_MUX5_CLR
  4605. #define PXP_HW_PXP_WFE_B_STAGE3_MUX5_TOG
  4606. #define PXP_HW_PXP_WFE_B_STAGE3_MUX6
  4607. #define PXP_HW_PXP_WFE_B_STAGE3_MUX6_SET
  4608. #define PXP_HW_PXP_WFE_B_STAGE3_MUX6_CLR
  4609. #define PXP_HW_PXP_WFE_B_STAGE3_MUX6_TOG
  4610. #define PXP_HW_PXP_WFE_B_STAGE3_MUX7
  4611. #define PXP_HW_PXP_WFE_B_STAGE3_MUX7_SET
  4612. #define PXP_HW_PXP_WFE_B_STAGE3_MUX7_CLR
  4613. #define PXP_HW_PXP_WFE_B_STAGE3_MUX7_TOG
  4614. #define PXP_HW_PXP_WFE_B_STAGE3_MUX8
  4615. #define PXP_HW_PXP_WFE_B_STAGE3_MUX8_SET
  4616. #define PXP_HW_PXP_WFE_B_STAGE3_MUX8_CLR
  4617. #define PXP_HW_PXP_WFE_B_STAGE3_MUX8_TOG
  4618. #define PXP_HW_PXP_WFE_B_STAGE3_MUX9
  4619. #define PXP_HW_PXP_WFE_B_STAGE3_MUX9_SET
  4620. #define PXP_HW_PXP_WFE_B_STAGE3_MUX9_CLR
  4621. #define PXP_HW_PXP_WFE_B_STAGE3_MUX9_TOG
  4622. #define PXP_HW_PXP_WFE_B_STAGE3_MUX10
  4623. #define PXP_HW_PXP_WFE_B_STAGE3_MUX10_SET
  4624. #define PXP_HW_PXP_WFE_B_STAGE3_MUX10_CLR
  4625. #define PXP_HW_PXP_WFE_B_STAGE3_MUX10_TOG
  4626. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_0
  4627. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_1
  4628. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_2
  4629. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_3
  4630. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_4
  4631. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_5
  4632. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_6
  4633. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT0_7
  4634. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_0
  4635. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_1
  4636. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_2
  4637. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_3
  4638. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_4
  4639. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_5
  4640. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_6
  4641. #define PXP_HW_PXP_WFE_B_STG1_5X8_OUT1_7
  4642. #define PXP_HW_PXP_WFE_B_STAGE1_5X8_MASKS_0
  4643. #define PXP_HW_PXP_WFE_B_STG1_5X1_OUT0
  4644. #define PXP_HW_PXP_WFE_B_STG1_5X1_MASKS
  4645. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_0
  4646. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_1
  4647. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_2
  4648. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_3
  4649. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_4
  4650. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_5
  4651. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_6
  4652. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT0_7
  4653. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_0
  4654. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_1
  4655. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_2
  4656. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_3
  4657. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_4
  4658. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_5
  4659. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_6
  4660. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT1_7
  4661. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_0
  4662. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_1
  4663. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_2
  4664. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_3
  4665. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_4
  4666. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_5
  4667. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_6
  4668. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT2_7
  4669. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_0
  4670. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_1
  4671. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_2
  4672. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_3
  4673. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_4
  4674. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_5
  4675. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_6
  4676. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT3_7
  4677. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_0
  4678. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_1
  4679. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_2
  4680. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_3
  4681. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_4
  4682. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_5
  4683. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_6
  4684. #define PXP_HW_PXP_WFE_B_STG1_8X1_OUT4_7
  4685. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_0
  4686. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_1
  4687. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_2
  4688. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_3
  4689. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_4
  4690. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_5
  4691. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_6
  4692. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT0_7
  4693. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_0
  4694. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_1
  4695. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_2
  4696. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_3
  4697. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_4
  4698. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_5
  4699. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_6
  4700. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT1_7
  4701. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_0
  4702. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_1
  4703. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_2
  4704. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_3
  4705. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_4
  4706. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_5
  4707. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_6
  4708. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT2_7
  4709. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_0
  4710. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_1
  4711. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_2
  4712. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_3
  4713. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_4
  4714. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_5
  4715. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_6
  4716. #define PXP_HW_PXP_WFE_B_STG2_5X6_OUT3_7
  4717. #define PXP_HW_PXP_WFE_B_STAGE2_5X6_MASKS_0
  4718. #define PXP_HW_PXP_WFE_B_STAGE2_5X6_ADDR_0
  4719. #define PXP_HW_PXP_WFE_B_STG2_5X1_OUT0
  4720. #define PXP_HW_PXP_WFE_B_STG2_5X1_OUT1
  4721. #define PXP_HW_PXP_WFE_B_STG2_5X1_OUT2
  4722. #define PXP_HW_PXP_WFE_B_STG2_5X1_OUT3
  4723. #define PXP_HW_PXP_WFE_B_STG2_5X1_MASKS
  4724. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_0
  4725. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_1
  4726. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_2
  4727. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_3
  4728. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_4
  4729. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_5
  4730. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_6
  4731. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT0_7
  4732. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_0
  4733. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_1
  4734. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_2
  4735. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_3
  4736. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_4
  4737. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_5
  4738. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_6
  4739. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT1_7
  4740. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_0
  4741. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_1
  4742. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_2
  4743. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_3
  4744. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_4
  4745. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_5
  4746. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_6
  4747. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT2_7
  4748. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_0
  4749. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_1
  4750. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_2
  4751. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_3
  4752. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_4
  4753. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_5
  4754. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_6
  4755. #define PXP_HW_PXP_WFE_B_STG3_F8X1_OUT3_7
  4756. #define PXP_HW_PXP_WFE_B_STG3_F8X1_MASKS
  4757. #define PXP_HW_PXP_ALU_B_CTRL
  4758. #define PXP_HW_PXP_ALU_B_CTRL_SET
  4759. #define PXP_HW_PXP_ALU_B_CTRL_CLR
  4760. #define PXP_HW_PXP_ALU_B_CTRL_TOG
  4761. #define PXP_HW_PXP_ALU_B_BUF_SIZE
  4762. #define PXP_HW_PXP_ALU_B_INST_ENTRY
  4763. #define PXP_HW_PXP_ALU_B_PARAM
  4764. #define PXP_HW_PXP_ALU_B_CONFIG
  4765. #define PXP_HW_PXP_ALU_B_LUT_CONFIG
  4766. #define PXP_HW_PXP_ALU_B_LUT_CONFIG_SET
  4767. #define PXP_HW_PXP_ALU_B_LUT_CONFIG_CLR
  4768. #define PXP_HW_PXP_ALU_B_LUT_CONFIG_TOG
  4769. #define PXP_HW_PXP_ALU_B_LUT_DATA0
  4770. #define PXP_HW_PXP_ALU_B_LUT_DATA1
  4771. #define PXP_HW_PXP_ALU_B_DBG
  4772. #define PXP_HW_PXP_HIST_A_CTRL
  4773. #define PXP_HW_PXP_HIST_A_MASK
  4774. #define PXP_HW_PXP_HIST_A_BUF_SIZE
  4775. #define PXP_HW_PXP_HIST_A_TOTAL_PIXEL
  4776. #define PXP_HW_PXP_HIST_A_ACTIVE_AREA_X
  4777. #define PXP_HW_PXP_HIST_A_ACTIVE_AREA_Y
  4778. #define PXP_HW_PXP_HIST_A_RAW_STAT0
  4779. #define PXP_HW_PXP_HIST_A_RAW_STAT1
  4780. #define PXP_HW_PXP_HIST_B_CTRL
  4781. #define PXP_HW_PXP_HIST_B_MASK
  4782. #define PXP_HW_PXP_HIST_B_BUF_SIZE
  4783. #define PXP_HW_PXP_HIST_B_TOTAL_PIXEL
  4784. #define PXP_HW_PXP_HIST_B_ACTIVE_AREA_X
  4785. #define PXP_HW_PXP_HIST_B_ACTIVE_AREA_Y
  4786. #define PXP_HW_PXP_HIST_B_RAW_STAT0
  4787. #define PXP_HW_PXP_HIST_B_RAW_STAT1
  4788. #define PXP_HW_PXP_HIST2_PARAM
  4789. #define PXP_HW_PXP_HIST4_PARAM
  4790. #define PXP_HW_PXP_HIST8_PARAM0
  4791. #define PXP_HW_PXP_HIST8_PARAM1
  4792. #define PXP_HW_PXP_HIST16_PARAM0
  4793. #define PXP_HW_PXP_HIST16_PARAM1
  4794. #define PXP_HW_PXP_HIST16_PARAM2
  4795. #define PXP_HW_PXP_HIST16_PARAM3
  4796. #define PXP_HW_PXP_HIST32_PARAM0
  4797. #define PXP_HW_PXP_HIST32_PARAM1
  4798. #define PXP_HW_PXP_HIST32_PARAM2
  4799. #define PXP_HW_PXP_HIST32_PARAM3
  4800. #define PXP_HW_PXP_HIST32_PARAM4
  4801. #define PXP_HW_PXP_HIST32_PARAM5
  4802. #define PXP_HW_PXP_HIST32_PARAM6
  4803. #define PXP_HW_PXP_HIST32_PARAM7
  4804. #define PXP_HW_PXP_HANDSHAKE_READY_MUX0
  4805. #define PXP_HW_PXP_HANDSHAKE_DONE_MUX0
  4806. // 47.5: page 2695
  4807. #define IMXRT_TMR1 (*(IMXRT_REGISTER16_t *)0x401DC000)
  4808. #define TMR1_COMP10 (IMXRT_TMR1.offset000)
  4809. #define TMR1_COMP20 (IMXRT_TMR1.offset002)
  4810. #define TMR1_CAPT0 (IMXRT_TMR1.offset004)
  4811. #define TMR1_LOAD0 (IMXRT_TMR1.offset006)
  4812. #define TMR1_HOLD0 (IMXRT_TMR1.offset008)
  4813. #define TMR1_CNTR0 (IMXRT_TMR1.offset00A)
  4814. #define TMR1_CTRL0 (IMXRT_TMR1.offset00C)
  4815. #define TMR1_SCTRL0 (IMXRT_TMR1.offset00E)
  4816. #define TMR1_CMPLD10 (IMXRT_TMR1.offset010)
  4817. #define TMR1_CMPLD20 (IMXRT_TMR1.offset012)
  4818. #define TMR1_CSCTRL0 (IMXRT_TMR1.offset014)
  4819. #define TMR1_FILT0 (IMXRT_TMR1.offset016)
  4820. #define TMR1_DMA0 (IMXRT_TMR1.offset018)
  4821. #define TMR1_ENBL (IMXRT_TMR1.offset01E)
  4822. #define TMR1_COMP11 (IMXRT_TMR1.offset020)
  4823. #define TMR1_COMP21 (IMXRT_TMR1.offset022)
  4824. #define TMR1_CAPT1 (IMXRT_TMR1.offset024)
  4825. #define TMR1_LOAD1 (IMXRT_TMR1.offset026)
  4826. #define TMR1_HOLD1 (IMXRT_TMR1.offset028)
  4827. #define TMR1_CNTR1 (IMXRT_TMR1.offset02A)
  4828. #define TMR1_CTRL1 (IMXRT_TMR1.offset02C)
  4829. #define TMR1_SCTRL1 (IMXRT_TMR1.offset02E)
  4830. #define TMR1_CMPLD11 (IMXRT_TMR1.offset030)
  4831. #define TMR1_CMPLD21 (IMXRT_TMR1.offset032)
  4832. #define TMR1_CSCTRL1 (IMXRT_TMR1.offset034)
  4833. #define TMR1_FILT1 (IMXRT_TMR1.offset036)
  4834. #define TMR1_DMA1 (IMXRT_TMR1.offset038)
  4835. #define TMR1_COMP12 (IMXRT_TMR1.offset040)
  4836. #define TMR1_COMP22 (IMXRT_TMR1.offset042)
  4837. #define TMR1_CAPT2 (IMXRT_TMR1.offset044)
  4838. #define TMR1_LOAD2 (IMXRT_TMR1.offset046)
  4839. #define TMR1_HOLD2 (IMXRT_TMR1.offset048)
  4840. #define TMR1_CNTR2 (IMXRT_TMR1.offset04A)
  4841. #define TMR1_CTRL2 (IMXRT_TMR1.offset04C)
  4842. #define TMR1_SCTRL2 (IMXRT_TMR1.offset04E)
  4843. #define TMR1_CMPLD12 (IMXRT_TMR1.offset050)
  4844. #define TMR1_CMPLD22 (IMXRT_TMR1.offset052)
  4845. #define TMR1_CSCTRL2 (IMXRT_TMR1.offset054)
  4846. #define TMR1_FILT2 (IMXRT_TMR1.offset056)
  4847. #define TMR1_DMA2 (IMXRT_TMR1.offset058)
  4848. #define TMR1_COMP13 (IMXRT_TMR1.offset060)
  4849. #define TMR1_COMP23 (IMXRT_TMR1.offset062)
  4850. #define TMR1_CAPT3 (IMXRT_TMR1.offset064)
  4851. #define TMR1_LOAD3 (IMXRT_TMR1.offset066)
  4852. #define TMR1_HOLD3 (IMXRT_TMR1.offset068)
  4853. #define TMR1_CNTR3 (IMXRT_TMR1.offset06A)
  4854. #define TMR1_CTRL3 (IMXRT_TMR1.offset06C)
  4855. #define TMR1_SCTRL3 (IMXRT_TMR1.offset06E)
  4856. #define TMR1_CMPLD13 (IMXRT_TMR1.offset070)
  4857. #define TMR1_CMPLD23 (IMXRT_TMR1.offset072)
  4858. #define TMR1_CSCTRL3 (IMXRT_TMR1.offset074)
  4859. #define TMR1_FILT3 (IMXRT_TMR1.offset076)
  4860. #define TMR1_DMA3 (IMXRT_TMR1.offset078)
  4861. #define IMXRT_TMR2 (*(IMXRT_REGISTER16_t *)0x401E0000)
  4862. #define TMR2_COMP10 (IMXRT_TMR2.offset000)
  4863. #define TMR2_COMP20 (IMXRT_TMR2.offset002)
  4864. #define TMR2_CAPT0 (IMXRT_TMR2.offset004)
  4865. #define TMR2_LOAD0 (IMXRT_TMR2.offset006)
  4866. #define TMR2_HOLD0 (IMXRT_TMR2.offset008)
  4867. #define TMR2_CNTR0 (IMXRT_TMR2.offset00A)
  4868. #define TMR2_CTRL0 (IMXRT_TMR2.offset00C)
  4869. #define TMR2_SCTRL0 (IMXRT_TMR2.offset00E)
  4870. #define TMR2_CMPLD10 (IMXRT_TMR2.offset010)
  4871. #define TMR2_CMPLD20 (IMXRT_TMR2.offset012)
  4872. #define TMR2_CSCTRL0 (IMXRT_TMR2.offset014)
  4873. #define TMR2_FILT0 (IMXRT_TMR2.offset016)
  4874. #define TMR2_DMA0 (IMXRT_TMR2.offset018)
  4875. #define TMR2_ENBL (IMXRT_TMR2.offset01E)
  4876. #define TMR2_COMP11 (IMXRT_TMR2.offset020)
  4877. #define TMR2_COMP21 (IMXRT_TMR2.offset022)
  4878. #define TMR2_CAPT1 (IMXRT_TMR2.offset024)
  4879. #define TMR2_LOAD1 (IMXRT_TMR2.offset026)
  4880. #define TMR2_HOLD1 (IMXRT_TMR2.offset028)
  4881. #define TMR2_CNTR1 (IMXRT_TMR2.offset02A)
  4882. #define TMR2_CTRL1 (IMXRT_TMR2.offset02C)
  4883. #define TMR2_SCTRL1 (IMXRT_TMR2.offset02E)
  4884. #define TMR2_CMPLD11 (IMXRT_TMR2.offset030)
  4885. #define TMR2_CMPLD21 (IMXRT_TMR2.offset032)
  4886. #define TMR2_CSCTRL1 (IMXRT_TMR2.offset034)
  4887. #define TMR2_FILT1 (IMXRT_TMR2.offset036)
  4888. #define TMR2_DMA1 (IMXRT_TMR2.offset038)
  4889. #define TMR2_COMP12 (IMXRT_TMR2.offset040)
  4890. #define TMR2_COMP22 (IMXRT_TMR2.offset042)
  4891. #define TMR2_CAPT2 (IMXRT_TMR2.offset044)
  4892. #define TMR2_LOAD2 (IMXRT_TMR2.offset046)
  4893. #define TMR2_HOLD2 (IMXRT_TMR2.offset048)
  4894. #define TMR2_CNTR2 (IMXRT_TMR2.offset04A)
  4895. #define TMR2_CTRL2 (IMXRT_TMR2.offset04C)
  4896. #define TMR2_SCTRL2 (IMXRT_TMR2.offset04E)
  4897. #define TMR2_CMPLD12 (IMXRT_TMR2.offset050)
  4898. #define TMR2_CMPLD22 (IMXRT_TMR2.offset052)
  4899. #define TMR2_CSCTRL2 (IMXRT_TMR2.offset054)
  4900. #define TMR2_FILT2 (IMXRT_TMR2.offset056)
  4901. #define TMR2_DMA2 (IMXRT_TMR2.offset058)
  4902. #define TMR2_COMP13 (IMXRT_TMR2.offset060)
  4903. #define TMR2_COMP23 (IMXRT_TMR2.offset062)
  4904. #define TMR2_CAPT3 (IMXRT_TMR2.offset064)
  4905. #define TMR2_LOAD3 (IMXRT_TMR2.offset066)
  4906. #define TMR2_HOLD3 (IMXRT_TMR2.offset068)
  4907. #define TMR2_CNTR3 (IMXRT_TMR2.offset06A)
  4908. #define TMR2_CTRL3 (IMXRT_TMR2.offset06C)
  4909. #define TMR2_SCTRL3 (IMXRT_TMR2.offset06E)
  4910. #define TMR2_CMPLD13 (IMXRT_TMR2.offset070)
  4911. #define TMR2_CMPLD23 (IMXRT_TMR2.offset072)
  4912. #define TMR2_CSCTRL3 (IMXRT_TMR2.offset074)
  4913. #define TMR2_FILT3 (IMXRT_TMR2.offset076)
  4914. #define TMR2_DMA3 (IMXRT_TMR2.offset078)
  4915. #define IMXRT_TMR3 (*(IMXRT_REGISTER16_t *)0x401E4000)
  4916. #define TMR3_COMP10 (IMXRT_TMR3.offset000)
  4917. #define TMR3_COMP20 (IMXRT_TMR3.offset002)
  4918. #define TMR3_CAPT0 (IMXRT_TMR3.offset004)
  4919. #define TMR3_LOAD0 (IMXRT_TMR3.offset006)
  4920. #define TMR3_HOLD0 (IMXRT_TMR3.offset008)
  4921. #define TMR3_CNTR0 (IMXRT_TMR3.offset00A)
  4922. #define TMR3_CTRL0 (IMXRT_TMR3.offset00C)
  4923. #define TMR3_SCTRL0 (IMXRT_TMR3.offset00E)
  4924. #define TMR3_CMPLD10 (IMXRT_TMR3.offset010)
  4925. #define TMR3_CMPLD20 (IMXRT_TMR3.offset012)
  4926. #define TMR3_CSCTRL0 (IMXRT_TMR3.offset014)
  4927. #define TMR3_FILT0 (IMXRT_TMR3.offset016)
  4928. #define TMR3_DMA0 (IMXRT_TMR3.offset018)
  4929. #define TMR3_ENBL (IMXRT_TMR3.offset01E)
  4930. #define TMR3_COMP11 (IMXRT_TMR3.offset020)
  4931. #define TMR3_COMP21 (IMXRT_TMR3.offset022)
  4932. #define TMR3_CAPT1 (IMXRT_TMR3.offset024)
  4933. #define TMR3_LOAD1 (IMXRT_TMR3.offset026)
  4934. #define TMR3_HOLD1 (IMXRT_TMR3.offset028)
  4935. #define TMR3_CNTR1 (IMXRT_TMR3.offset02A)
  4936. #define TMR3_CTRL1 (IMXRT_TMR3.offset02C)
  4937. #define TMR3_SCTRL1 (IMXRT_TMR3.offset02E)
  4938. #define TMR3_CMPLD11 (IMXRT_TMR3.offset030)
  4939. #define TMR3_CMPLD21 (IMXRT_TMR3.offset032)
  4940. #define TMR3_CSCTRL1 (IMXRT_TMR3.offset034)
  4941. #define TMR3_FILT1 (IMXRT_TMR3.offset036)
  4942. #define TMR3_DMA1 (IMXRT_TMR3.offset038)
  4943. #define TMR3_COMP12 (IMXRT_TMR3.offset040)
  4944. #define TMR3_COMP22 (IMXRT_TMR3.offset042)
  4945. #define TMR3_CAPT2 (IMXRT_TMR3.offset044)
  4946. #define TMR3_LOAD2 (IMXRT_TMR3.offset046)
  4947. #define TMR3_HOLD2 (IMXRT_TMR3.offset048)
  4948. #define TMR3_CNTR2 (IMXRT_TMR3.offset04A)
  4949. #define TMR3_CTRL2 (IMXRT_TMR3.offset04C)
  4950. #define TMR3_SCTRL2 (IMXRT_TMR3.offset04E)
  4951. #define TMR3_CMPLD12 (IMXRT_TMR3.offset050)
  4952. #define TMR3_CMPLD22 (IMXRT_TMR3.offset052)
  4953. #define TMR3_CSCTRL2 (IMXRT_TMR3.offset054)
  4954. #define TMR3_FILT2 (IMXRT_TMR3.offset056)
  4955. #define TMR3_DMA2 (IMXRT_TMR3.offset058)
  4956. #define TMR3_COMP13 (IMXRT_TMR3.offset060)
  4957. #define TMR3_COMP23 (IMXRT_TMR3.offset062)
  4958. #define TMR3_CAPT3 (IMXRT_TMR3.offset064)
  4959. #define TMR3_LOAD3 (IMXRT_TMR3.offset066)
  4960. #define TMR3_HOLD3 (IMXRT_TMR3.offset068)
  4961. #define TMR3_CNTR3 (IMXRT_TMR3.offset06A)
  4962. #define TMR3_CTRL3 (IMXRT_TMR3.offset06C)
  4963. #define TMR3_SCTRL3 (IMXRT_TMR3.offset06E)
  4964. #define TMR3_CMPLD13 (IMXRT_TMR3.offset070)
  4965. #define TMR3_CMPLD23 (IMXRT_TMR3.offset072)
  4966. #define TMR3_CSCTRL3 (IMXRT_TMR3.offset074)
  4967. #define TMR3_FILT3 (IMXRT_TMR3.offset076)
  4968. #define TMR3_DMA3 (IMXRT_TMR3.offset078)
  4969. #define IMXRT_TMR4 (*(IMXRT_REGISTER16_t *)0x401E8000)
  4970. #define TMR4_COMP10 (IMXRT_TMR4.offset000)
  4971. #define TMR4_COMP20 (IMXRT_TMR4.offset002)
  4972. #define TMR4_CAPT0 (IMXRT_TMR4.offset004)
  4973. #define TMR4_LOAD0 (IMXRT_TMR4.offset006)
  4974. #define TMR4_HOLD0 (IMXRT_TMR4.offset008)
  4975. #define TMR4_CNTR0 (IMXRT_TMR4.offset00A)
  4976. #define TMR4_CTRL0 (IMXRT_TMR4.offset00C)
  4977. #define TMR4_SCTRL0 (IMXRT_TMR4.offset00E)
  4978. #define TMR4_CMPLD10 (IMXRT_TMR4.offset010)
  4979. #define TMR4_CMPLD20 (IMXRT_TMR4.offset012)
  4980. #define TMR4_CSCTRL0 (IMXRT_TMR4.offset014)
  4981. #define TMR4_FILT0 (IMXRT_TMR4.offset016)
  4982. #define TMR4_DMA0 (IMXRT_TMR4.offset018)
  4983. #define TMR4_ENBL (IMXRT_TMR4.offset01E)
  4984. #define TMR4_COMP11 (IMXRT_TMR4.offset020)
  4985. #define TMR4_COMP21 (IMXRT_TMR4.offset022)
  4986. #define TMR4_CAPT1 (IMXRT_TMR4.offset024)
  4987. #define TMR4_LOAD1 (IMXRT_TMR4.offset026)
  4988. #define TMR4_HOLD1 (IMXRT_TMR4.offset028)
  4989. #define TMR4_CNTR1 (IMXRT_TMR4.offset02A)
  4990. #define TMR4_CTRL1 (IMXRT_TMR4.offset02C)
  4991. #define TMR4_SCTRL1 (IMXRT_TMR4.offset02E)
  4992. #define TMR4_CMPLD11 (IMXRT_TMR4.offset030)
  4993. #define TMR4_CMPLD21 (IMXRT_TMR4.offset032)
  4994. #define TMR4_CSCTRL1 (IMXRT_TMR4.offset034)
  4995. #define TMR4_FILT1 (IMXRT_TMR4.offset036)
  4996. #define TMR4_DMA1 (IMXRT_TMR4.offset038)
  4997. #define TMR4_COMP12 (IMXRT_TMR4.offset040)
  4998. #define TMR4_COMP22 (IMXRT_TMR4.offset042)
  4999. #define TMR4_CAPT2 (IMXRT_TMR4.offset044)
  5000. #define TMR4_LOAD2 (IMXRT_TMR4.offset046)
  5001. #define TMR4_HOLD2 (IMXRT_TMR4.offset048)
  5002. #define TMR4_CNTR2 (IMXRT_TMR4.offset04A)
  5003. #define TMR4_CTRL2 (IMXRT_TMR4.offset04C)
  5004. #define TMR4_SCTRL2 (IMXRT_TMR4.offset04E)
  5005. #define TMR4_CMPLD12 (IMXRT_TMR4.offset050)
  5006. #define TMR4_CMPLD22 (IMXRT_TMR4.offset052)
  5007. #define TMR4_CSCTRL2 (IMXRT_TMR4.offset054)
  5008. #define TMR4_FILT2 (IMXRT_TMR4.offset056)
  5009. #define TMR4_DMA2 (IMXRT_TMR4.offset058)
  5010. #define TMR4_COMP13 (IMXRT_TMR4.offset060)
  5011. #define TMR4_COMP23 (IMXRT_TMR4.offset062)
  5012. #define TMR4_CAPT3 (IMXRT_TMR4.offset064)
  5013. #define TMR4_LOAD3 (IMXRT_TMR4.offset066)
  5014. #define TMR4_HOLD3 (IMXRT_TMR4.offset068)
  5015. #define TMR4_CNTR3 (IMXRT_TMR4.offset06A)
  5016. #define TMR4_CTRL3 (IMXRT_TMR4.offset06C)
  5017. #define TMR4_SCTRL3 (IMXRT_TMR4.offset06E)
  5018. #define TMR4_CMPLD13 (IMXRT_TMR4.offset070)
  5019. #define TMR4_CMPLD23 (IMXRT_TMR4.offset072)
  5020. #define TMR4_CSCTRL3 (IMXRT_TMR4.offset074)
  5021. #define TMR4_FILT3 (IMXRT_TMR4.offset076)
  5022. #define TMR4_DMA3 (IMXRT_TMR4.offset078)
  5023. // 48.4.1.1: page 2748
  5024. #define IMXRT_I2S1 (*(IMXRT_REGISTER32_t *)0x40384000)
  5025. #define I2S1_VERID (IMXRT_I2S1.offset000)
  5026. #define I2S1_PARAM (IMXRT_I2S1.offset004)
  5027. #define I2S1_TCSR (IMXRT_I2S1.offset008)
  5028. #define I2S1_TCR1 (IMXRT_I2S1.offset00C)
  5029. #define I2S1_TCR2 (IMXRT_I2S1.offset010)
  5030. #define I2S1_TCR3 (IMXRT_I2S1.offset014)
  5031. #define I2S1_TCR4 (IMXRT_I2S1.offset018)
  5032. #define I2S1_TCR5 (IMXRT_I2S1.offset01C)
  5033. #define I2S1_TDR0 (IMXRT_I2S1.offset020)
  5034. #define I2S1_TDR1 (IMXRT_I2S1.offset024)
  5035. #define I2S1_TDR2 (IMXRT_I2S1.offset028)
  5036. #define I2S1_TDR3 (IMXRT_I2S1.offset02C)
  5037. #define I2S1_TFR0 (IMXRT_I2S1.offset040)
  5038. #define I2S1_TFR1 (IMXRT_I2S1.offset044)
  5039. #define I2S1_TFR2 (IMXRT_I2S1.offset048)
  5040. #define I2S1_TFR3 (IMXRT_I2S1.offset04C)
  5041. #define I2S1_TMR (IMXRT_I2S1.offset060)
  5042. #define I2S1_RCSR (IMXRT_I2S1.offset088)
  5043. #define I2S1_RCR1 (IMXRT_I2S1.offset08C)
  5044. #define I2S1_RCR2 (IMXRT_I2S1.offset090)
  5045. #define I2S1_RCR3 (IMXRT_I2S1.offset094)
  5046. #define I2S1_RCR4 (IMXRT_I2S1.offset098)
  5047. #define I2S1_RCR5 (IMXRT_I2S1.offset09C)
  5048. #define I2S1_RDR0 (IMXRT_I2S1.offset0A0)
  5049. #define I2S1_RDR1 (IMXRT_I2S1.offset0A4)
  5050. #define I2S1_RDR2 (IMXRT_I2S1.offset0A8)
  5051. #define I2S1_RDR3 (IMXRT_I2S1.offset0AC)
  5052. #define I2S1_RFR0 (IMXRT_I2S1.offset0C0)
  5053. #define I2S1_RFR1 (IMXRT_I2S1.offset0C4)
  5054. #define I2S1_RFR2 (IMXRT_I2S1.offset0C8)
  5055. #define I2S1_RFR3 (IMXRT_I2S1.offset0CC)
  5056. #define I2S1_RMR (IMXRT_I2S1.offset0E0)
  5057. #define IMXRT_I2S2 (*(IMXRT_REGISTER32_t *)0x40388000)
  5058. #define I2S2_VERID (IMXRT_I2S2.offset000)
  5059. #define I2S2_PARAM (IMXRT_I2S2.offset004)
  5060. #define I2S2_TCSR (IMXRT_I2S2.offset008)
  5061. #define I2S2_TCR1 (IMXRT_I2S2.offset00C)
  5062. #define I2S2_TCR2 (IMXRT_I2S2.offset010)
  5063. #define I2S2_TCR3 (IMXRT_I2S2.offset014)
  5064. #define I2S2_TCR4 (IMXRT_I2S2.offset018)
  5065. #define I2S2_TCR5 (IMXRT_I2S2.offset01C)
  5066. #define I2S2_TDR0 (IMXRT_I2S2.offset020)
  5067. #define I2S2_TDR1 (IMXRT_I2S2.offset024)
  5068. #define I2S2_TDR2 (IMXRT_I2S2.offset028)
  5069. #define I2S2_TDR3 (IMXRT_I2S2.offset02C)
  5070. #define I2S2_TFR0 (IMXRT_I2S2.offset040)
  5071. #define I2S2_TFR1 (IMXRT_I2S2.offset044)
  5072. #define I2S2_TFR2 (IMXRT_I2S2.offset048)
  5073. #define I2S2_TFR3 (IMXRT_I2S2.offset04C)
  5074. #define I2S2_TMR (IMXRT_I2S2.offset060)
  5075. #define I2S2_RCSR (IMXRT_I2S2.offset088)
  5076. #define I2S2_RCR1 (IMXRT_I2S2.offset08C)
  5077. #define I2S2_RCR2 (IMXRT_I2S2.offset090)
  5078. #define I2S2_RCR3 (IMXRT_I2S2.offset094)
  5079. #define I2S2_RCR4 (IMXRT_I2S2.offset098)
  5080. #define I2S2_RCR5 (IMXRT_I2S2.offset09C)
  5081. #define I2S2_RDR0 (IMXRT_I2S2.offset0A0)
  5082. #define I2S2_RDR1 (IMXRT_I2S2.offset0A4)
  5083. #define I2S2_RDR2 (IMXRT_I2S2.offset0A8)
  5084. #define I2S2_RDR3 (IMXRT_I2S2.offset0AC)
  5085. #define I2S2_RFR0 (IMXRT_I2S2.offset0C0)
  5086. #define I2S2_RFR1 (IMXRT_I2S2.offset0C4)
  5087. #define I2S2_RFR2 (IMXRT_I2S2.offset0C8)
  5088. #define I2S2_RFR3 (IMXRT_I2S2.offset0CC)
  5089. #define I2S2_RMR (IMXRT_I2S2.offset0E0)
  5090. #define IMXRT_I2S3 (*(IMXRT_REGISTER32_t *)0x4038C000)
  5091. #define I2S3_VERID (IMXRT_I2S3.offset000)
  5092. #define I2S3_PARAM (IMXRT_I2S3.offset004)
  5093. #define I2S3_TCSR (IMXRT_I2S3.offset008)
  5094. #define I2S3_TCR1 (IMXRT_I2S3.offset00C)
  5095. #define I2S3_TCR2 (IMXRT_I2S3.offset010)
  5096. #define I2S3_TCR3 (IMXRT_I2S3.offset014)
  5097. #define I2S3_TCR4 (IMXRT_I2S3.offset018)
  5098. #define I2S3_TCR5 (IMXRT_I2S3.offset01C)
  5099. #define I2S3_TDR0 (IMXRT_I2S3.offset020)
  5100. #define I2S3_TDR1 (IMXRT_I2S3.offset024)
  5101. #define I2S3_TDR2 (IMXRT_I2S3.offset028)
  5102. #define I2S3_TDR3 (IMXRT_I2S3.offset02C)
  5103. #define I2S3_TFR0 (IMXRT_I2S3.offset040)
  5104. #define I2S3_TFR1 (IMXRT_I2S3.offset044)
  5105. #define I2S3_TFR2 (IMXRT_I2S3.offset048)
  5106. #define I2S3_TFR3 (IMXRT_I2S3.offset04C)
  5107. #define I2S3_TMR (IMXRT_I2S3.offset060)
  5108. #define I2S3_RCSR (IMXRT_I2S3.offset088)
  5109. #define I2S3_RCR1 (IMXRT_I2S3.offset08C)
  5110. #define I2S3_RCR2 (IMXRT_I2S3.offset090)
  5111. #define I2S3_RCR3 (IMXRT_I2S3.offset094)
  5112. #define I2S3_RCR4 (IMXRT_I2S3.offset098)
  5113. #define I2S3_RCR5 (IMXRT_I2S3.offset09C)
  5114. #define I2S3_RDR0 (IMXRT_I2S3.offset0A0)
  5115. #define I2S3_RDR1 (IMXRT_I2S3.offset0A4)
  5116. #define I2S3_RDR2 (IMXRT_I2S3.offset0A8)
  5117. #define I2S3_RDR3 (IMXRT_I2S3.offset0AC)
  5118. #define I2S3_RFR0 (IMXRT_I2S3.offset0C0)
  5119. #define I2S3_RFR1 (IMXRT_I2S3.offset0C4)
  5120. #define I2S3_RFR2 (IMXRT_I2S3.offset0C8)
  5121. #define I2S3_RFR3 (IMXRT_I2S3.offset0CC)
  5122. #define I2S3_RMR (IMXRT_I2S3.offset0E0)
  5123. // 49.3.1.1: page 2784
  5124. #define IMXRT_SEMC (*(IMXRT_REGISTER32_t *)0x402F0000)
  5125. #define SEMC_MCR (IMXRT_SEMC.offset000)
  5126. #define SEMC_IOCR (IMXRT_SEMC.offset004)
  5127. #define SEMC_BMCR0 (IMXRT_SEMC.offset008)
  5128. #define SEMC_BMCR1 (IMXRT_SEMC.offset00C)
  5129. #define SEMC_BR0 (IMXRT_SEMC.offset010)
  5130. #define SEMC_BR1 (IMXRT_SEMC.offset014)
  5131. #define SEMC_BR2 (IMXRT_SEMC.offset018)
  5132. #define SEMC_BR3 (IMXRT_SEMC.offset01C)
  5133. #define SEMC_BR4 (IMXRT_SEMC.offset020)
  5134. #define SEMC_BR5 (IMXRT_SEMC.offset024)
  5135. #define SEMC_BR6 (IMXRT_SEMC.offset028)
  5136. #define SEMC_BR7 (IMXRT_SEMC.offset02C)
  5137. #define SEMC_BR8 (IMXRT_SEMC.offset030)
  5138. #define SEMC_INTEN (IMXRT_SEMC.offset038)
  5139. #define SEMC_INTR (IMXRT_SEMC.offset03C)
  5140. #define SEMC_SDRAMCR0 (IMXRT_SEMC.offset040)
  5141. #define SEMC_SDRAMCR1 (IMXRT_SEMC.offset044)
  5142. #define SEMC_SDRAMCR2 (IMXRT_SEMC.offset048)
  5143. #define SEMC_SDRAMCR3 (IMXRT_SEMC.offset04C)
  5144. #define SEMC_NANDCR0 (IMXRT_SEMC.offset050)
  5145. #define SEMC_NANDCR1 (IMXRT_SEMC.offset054)
  5146. #define SEMC_NANDCR2 (IMXRT_SEMC.offset058)
  5147. #define SEMC_NANDCR3 (IMXRT_SEMC.offset05C)
  5148. #define SEMC_ORCR0 (IMXRT_SEMC.offset060)
  5149. #define SEMC_ORCR1 (IMXRT_SEMC.offset064)
  5150. #define SEMC_ORCR2 (IMXRT_SEMC.offset068)
  5151. #define SEMC_ORCR3 (IMXRT_SEMC.offset06C)
  5152. #define SEMC_SRAMCR0 (IMXRT_SEMC.offset070)
  5153. #define SEMC_SRAMCR1 (IMXRT_SEMC.offset074)
  5154. #define SEMC_SRAMCR2 (IMXRT_SEMC.offset078)
  5155. #define SEMC_SRAMCR3 (IMXRT_SEMC.offset07C)
  5156. #define SEMC_DBICR0 (IMXRT_SEMC.offset080)
  5157. #define SEMC_DBICR1 (IMXRT_SEMC.offset084)
  5158. #define SEMC_IPCR0 (IMXRT_SEMC.offset090)
  5159. #define SEMC_IPCR1 (IMXRT_SEMC.offset094)
  5160. #define SEMC_IPCR2 (IMXRT_SEMC.offset098)
  5161. #define SEMC_IPCMD (IMXRT_SEMC.offset09C)
  5162. #define SEMC_IPTXDAT (IMXRT_SEMC.offset0A0)
  5163. #define SEMC_IPRXDAT (IMXRT_SEMC.offset0B0)
  5164. #define SEMC_STS0 (IMXRT_SEMC.offset0C0)
  5165. #define SEMC_STS1 (IMXRT_SEMC.offset0C4)
  5166. #define SEMC_STS2 (IMXRT_SEMC.offset0C8)
  5167. #define SEMC_STS3 (IMXRT_SEMC.offset0CC)
  5168. #define SEMC_STS4 (IMXRT_SEMC.offset0D0)
  5169. #define SEMC_STS5 (IMXRT_SEMC.offset0D4)
  5170. #define SEMC_STS6 (IMXRT_SEMC.offset0D8)
  5171. #define SEMC_STS7 (IMXRT_SEMC.offset0DC)
  5172. #define SEMC_STS8 (IMXRT_SEMC.offset0E0)
  5173. #define SEMC_STS9 (IMXRT_SEMC.offset0E4)
  5174. #define SEMC_STS10 (IMXRT_SEMC.offset0E8)
  5175. #define SEMC_STS11 (IMXRT_SEMC.offset0EC)
  5176. #define SEMC_STS12 (IMXRT_SEMC.offset0F0)
  5177. #define SEMC_STS13 (IMXRT_SEMC.offset0F4)
  5178. #define SEMC_STS14 (IMXRT_SEMC.offset0F8)
  5179. #define SEMC_STS15 (IMXRT_SEMC.offset0FC)
  5180. // 50.6.1: page 2895
  5181. #define IMXRT_SNVS (*(IMXRT_REGISTER32_t *)0x400D4000)
  5182. #define SNVS_HPLR (IMXRT_SNVS.offset000)
  5183. #define SNVS_HPCOMR (IMXRT_SNVS.offset004)
  5184. #define SNVS_HPCR (IMXRT_SNVS.offset008)
  5185. #define SNVS_HPSR (IMXRT_SNVS.offset014)
  5186. #define SNVS_HPRTCMR (IMXRT_SNVS.offset024)
  5187. #define SNVS_HPRTCLR (IMXRT_SNVS.offset028)
  5188. #define SNVS_HPTAMR (IMXRT_SNVS.offset02C)
  5189. #define SNVS_HPTALR (IMXRT_SNVS.offset030)
  5190. #define SNVS_LPLR (IMXRT_SNVS.offset034)
  5191. #define SNVS_LPCR (IMXRT_SNVS.offset038)
  5192. #define SNVS_LPSR (IMXRT_SNVS.offset04C)
  5193. #define SNVS_LPSMCMR (IMXRT_SNVS.offset05C)
  5194. #define SNVS_LPSMCLR (IMXRT_SNVS.offset060)
  5195. #define SNVS_LPGPR (IMXRT_SNVS.offset068)
  5196. #define IMXRT_SNVS_b (*(IMXRT_REGISTER32_t *)0x400D4800)
  5197. #define SNVS_HPVIDR1 (IMXRT_SNVS_b.offset3F8)
  5198. #define SNVS_HPVIDR2 (IMXRT_SNVS_b.offset3FC)
  5199. // 51.5: page 2938
  5200. #define IMXRT_SPDIF (*(IMXRT_REGISTER32_t *)0x400D4000)
  5201. #define SPDIF_SCR (IMXRT_SPDIF.offset000)
  5202. #define SPDIF_SRCD (IMXRT_SPDIF.offset004)
  5203. #define SPDIF_SRPC (IMXRT_SPDIF.offset008)
  5204. #define SPDIF_SIE (IMXRT_SPDIF.offset00C)
  5205. #define SPDIF_SIS (IMXRT_SPDIF.offset010)
  5206. #define SPDIF_SIC (IMXRT_SPDIF.offset010)
  5207. #define SPDIF_SRL (IMXRT_SPDIF.offset014)
  5208. #define SPDIF_SRR (IMXRT_SPDIF.offset018)
  5209. #define SPDIF_SRCSH (IMXRT_SPDIF.offset01C)
  5210. #define SPDIF_SRCSL (IMXRT_SPDIF.offset020)
  5211. #define SPDIF_SRU (IMXRT_SPDIF.offset024)
  5212. #define SPDIF_SRQ (IMXRT_SPDIF.offset028)
  5213. #define SPDIF_STL (IMXRT_SPDIF.offset02C)
  5214. #define SPDIF_STR (IMXRT_SPDIF.offset030)
  5215. #define SPDIF_STCSCH (IMXRT_SPDIF.offset034)
  5216. #define SPDIF_STCSCL (IMXRT_SPDIF.offset038)
  5217. #define SPDIF_SRFM (IMXRT_SPDIF.offset044)
  5218. #define SPDIF_STC (IMXRT_SPDIF.offset050)
  5219. // 52.7: page 2969
  5220. #define IMXRT_SRC (*(IMXRT_REGISTER32_t *)0x400F8000)
  5221. #define SRC_SCR (IMXRT_SRC.offset000)
  5222. #define SRC_SBMR1 (IMXRT_SRC.offset004)
  5223. #define SRC_SRSR (IMXRT_SRC.offset008)
  5224. #define SRC_SBMR2 (IMXRT_SRC.offset01C)
  5225. #define SRC_GPR1 (IMXRT_SRC.offset020)
  5226. #define SRC_GPR2 (IMXRT_SRC.offset024)
  5227. #define SRC_GPR3 (IMXRT_SRC.offset028)
  5228. #define SRC_GPR4 (IMXRT_SRC.offset02C)
  5229. #define SRC_GPR5 (IMXRT_SRC.offset030)
  5230. #define SRC_GPR6 (IMXRT_SRC.offset034)
  5231. #define SRC_GPR7 (IMXRT_SRC.offset038)
  5232. #define SRC_GPR8 (IMXRT_SRC.offset03C)
  5233. #define SRC_GPR9 (IMXRT_SRC.offset040)
  5234. #define SRC_GPR10 (IMXRT_SRC.offset044)
  5235. // 53.3: page 2986 TODO...
  5236. // 54.3: page 2998
  5237. #define IMXRT_TSC (*(IMXRT_REGISTER32_t *)0x400E0000)
  5238. #define TSC_BASIC_SETTING (IMXRT_TSC.offset000)
  5239. #define TSC_PS_INPUT_BUFFER_ADDR (IMXRT_TSC.offset010)
  5240. #define TSC_FLOW_CONTROL (IMXRT_TSC.offset020)
  5241. #define TSC_MEASEURE_VALUE (IMXRT_TSC.offset030)
  5242. #define TSC_INT_EN (IMXRT_TSC.offset040)
  5243. #define TSC_INT_SIG_EN (IMXRT_TSC.offset050)
  5244. #define TSC_INT_STATUS (IMXRT_TSC.offset060)
  5245. #define TSC_DEBUG_MODE (IMXRT_TSC.offset070)
  5246. #define TSC_DEBUG_MODE2 (IMXRT_TSC.offset080)
  5247. // 55.4.1.1: page 3022
  5248. #define IMXRT_USB1 (*(IMXRT_REGISTER32_t *)0x402E0000)
  5249. #define USB1_ID (IMXRT_USB1.offset000)
  5250. #define USB1_HWGENERAL (IMXRT_USB1.offset004)
  5251. #define USB1_HWHOST (IMXRT_USB1.offset008)
  5252. #define USB1_HWDEVICE (IMXRT_USB1.offset00C)
  5253. #define USB1_HWTXBUF (IMXRT_USB1.offset010)
  5254. #define USB1_HWRXBUF (IMXRT_USB1.offset014)
  5255. #define USB1_GPTIMER0LD (IMXRT_USB1.offset080)
  5256. #define USB1_GPTIMER0CTRL (IMXRT_USB1.offset084)
  5257. #define USB1_GPTIMER1LD (IMXRT_USB1.offset088)
  5258. #define USB1_GPTIMER1CTRL (IMXRT_USB1.offset08C)
  5259. #define USB1_SBUSCFG (IMXRT_USB1.offset090)
  5260. #define USB1_HCIVERSION (IMXRT_USB1.offset100)
  5261. #define USB1_HCSPARAMS (IMXRT_USB1.offset104)
  5262. #define USB1_HCCPARAMS (IMXRT_USB1.offset108)
  5263. #define USB1_DCIVERSION (IMXRT_USB1.offset120)
  5264. #define USB1_DCCPARAMS (IMXRT_USB1.offset124)
  5265. #define USB1_USBCMD (IMXRT_USB1.offset140)
  5266. #define USB1_USBSTS (IMXRT_USB1.offset144)
  5267. #define USB1_USBINTR (IMXRT_USB1.offset148)
  5268. #define USB1_FRINDEX (IMXRT_USB1.offset14C)
  5269. #define USB1_PERIODICLISTBASE (IMXRT_USB1.offset154)
  5270. #define USB1_DEVICEADDR (IMXRT_USB1.offset154)
  5271. #define USB1_ASYNCLISTADDR (IMXRT_USB1.offset158)
  5272. #define USB1_ENDPOINTLISTADDR (IMXRT_USB1.offset158)
  5273. #define USB1_BURSTSIZE (IMXRT_USB1.offset160)
  5274. #define USB1_TXFILLTUNING (IMXRT_USB1.offset164)
  5275. #define USB1_ENDPTNAK (IMXRT_USB1.offset178)
  5276. #define USB1_ENDPTNAKEN (IMXRT_USB1.offset17C)
  5277. #define USB1_CONFIGFLAG (IMXRT_USB1.offset180)
  5278. #define USB1_PORTSC1 (IMXRT_USB1.offset184)
  5279. #define USB1_OTGSC (IMXRT_USB1.offset1A4)
  5280. #define USB1_USBMODE (IMXRT_USB1.offset1A8)
  5281. #define USB1_ENDPTSETUPSTAT (IMXRT_USB1.offset1AC)
  5282. #define USB1_ENDPTPRIME (IMXRT_USB1.offset1B0)
  5283. #define USB1_ENDPTFLUSH (IMXRT_USB1.offset1B4)
  5284. #define USB1_ENDPTSTATUS (IMXRT_USB1.offset1B8)
  5285. #define USB1_ENDPTCOMPLETE (IMXRT_USB1.offset1BC)
  5286. #define USB1_ENDPTCTRL0 (IMXRT_USB1.offset1C0)
  5287. #define USB1_ENDPTCTRL1 (IMXRT_USB1.offset1C4)
  5288. #define USB1_ENDPTCTRL2 (IMXRT_USB1.offset1C8)
  5289. #define USB1_ENDPTCTRL3 (IMXRT_USB1.offset1CC)
  5290. #define USB1_ENDPTCTRL4 (IMXRT_USB1.offset1D0)
  5291. #define USB1_ENDPTCTRL5 (IMXRT_USB1.offset1D4)
  5292. #define USB1_ENDPTCTRL6 (IMXRT_USB1.offset1D8)
  5293. #define USB1_ENDPTCTRL7 (IMXRT_USB1.offset1DC)
  5294. #define IMXRT_USB2 (*(IMXRT_REGISTER32_t *)0x402DC000)
  5295. #define USB2_ID (IMXRT_USB2.offset000)
  5296. #define USB2_HWGENERAL (IMXRT_USB2.offset004)
  5297. #define USB2_HWHOST (IMXRT_USB2.offset008)
  5298. #define USB2_HWDEVICE (IMXRT_USB2.offset00C)
  5299. #define USB2_HWTXBUF (IMXRT_USB2.offset010)
  5300. #define USB2_HWRXBUF (IMXRT_USB2.offset014)
  5301. #define USB2_GPTIMER0LD (IMXRT_USB2.offset080)
  5302. #define USB2_GPTIMER0CTRL (IMXRT_USB2.offset084)
  5303. #define USB2_GPTIMER1LD (IMXRT_USB2.offset088)
  5304. #define USB2_GPTIMER1CTRL (IMXRT_USB2.offset08C)
  5305. #define USB2_SBUSCFG (IMXRT_USB2.offset090)
  5306. #define USB2_HCIVERSION (IMXRT_USB2.offset100)
  5307. #define USB2_HCSPARAMS (IMXRT_USB2.offset104)
  5308. #define USB2_HCCPARAMS (IMXRT_USB2.offset108)
  5309. #define USB2_DCIVERSION (IMXRT_USB2.offset120)
  5310. #define USB2_DCCPARAMS (IMXRT_USB2.offset124)
  5311. #define USB2_USBCMD (IMXRT_USB2.offset140)
  5312. #define USB2_USBSTS (IMXRT_USB2.offset144)
  5313. #define USB2_USBINTR (IMXRT_USB2.offset148)
  5314. #define USB2_FRINDEX (IMXRT_USB2.offset14C)
  5315. #define USB2_PERIODICLISTBASE (IMXRT_USB2.offset154)
  5316. #define USB2_DEVICEADDR (IMXRT_USB2.offset154)
  5317. #define USB2_ASYNCLISTADDR (IMXRT_USB2.offset158)
  5318. #define USB2_ENDPOINTLISTADDR (IMXRT_USB2.offset158)
  5319. #define USB2_BURSTSIZE (IMXRT_USB2.offset160)
  5320. #define USB2_TXFILLTUNING (IMXRT_USB2.offset164)
  5321. #define USB2_ENDPTNAK (IMXRT_USB2.offset178)
  5322. #define USB2_ENDPTNAKEN (IMXRT_USB2.offset17C)
  5323. #define USB2_CONFIGFLAG (IMXRT_USB2.offset180)
  5324. #define USB2_PORTSC1 (IMXRT_USB2.offset184)
  5325. #define USB2_OTGSC (IMXRT_USB2.offset1A4)
  5326. #define USB2_USBMODE (IMXRT_USB2.offset1A8)
  5327. #define USB2_ENDPTSETUPSTAT (IMXRT_USB2.offset1AC)
  5328. #define USB2_ENDPTPRIME (IMXRT_USB2.offset1B0)
  5329. #define USB2_ENDPTFLUSH (IMXRT_USB2.offset1B4)
  5330. #define USB2_ENDPTSTATUS (IMXRT_USB2.offset1B8)
  5331. #define USB2_ENDPTCOMPLETE (IMXRT_USB2.offset1BC)
  5332. #define USB2_ENDPTCTRL0 (IMXRT_USB2.offset1C0)
  5333. #define USB2_ENDPTCTRL1 (IMXRT_USB2.offset1C4)
  5334. #define USB2_ENDPTCTRL2 (IMXRT_USB2.offset1C8)
  5335. #define USB2_ENDPTCTRL3 (IMXRT_USB2.offset1CC)
  5336. #define USB2_ENDPTCTRL4 (IMXRT_USB2.offset1D0)
  5337. #define USB2_ENDPTCTRL5 (IMXRT_USB2.offset1D4)
  5338. #define USB2_ENDPTCTRL6 (IMXRT_USB2.offset1D8)
  5339. #define USB2_ENDPTCTRL7 (IMXRT_USB2.offset1DC)
  5340. #define USB_USBCMD_ITC(n) ((uint32_t)(((n) & 0xFF) << 16))
  5341. #define USB_USBCMD_FS_2 ((uint32_t)(1<<15))
  5342. #define USB_USBCMD_SUTW ((uint32_t)(1<<13))
  5343. #define USB_USBCMD_ATDTW ((uint32_t)(1<<12))
  5344. #define USB_USBCMD_ASPE ((uint32_t)(1<<11))
  5345. #define USB_USBCMD_ASP(n) ((uint32_t)(((n) & 0x03) << 8))
  5346. #define USB_USBCMD_IAA ((uint32_t)(1<<6))
  5347. #define USB_USBCMD_ASE ((uint32_t)(1<<5))
  5348. #define USB_USBCMD_PSE ((uint32_t)(1<<4))
  5349. #define USB_USBCMD_FS_1(n) ((uint32_t)(((n) & 0x03) << 2))
  5350. #define USB_USBCMD_RST ((uint32_t)(1<<1))
  5351. #define USB_USBCMD_RS ((uint32_t)(1<<0))
  5352. #define USB_USBSTS_TI1 ((uint32_t)(1<<25))
  5353. #define USB_USBSTS_TI0 ((uint32_t)(1<<24))
  5354. #define USB_USBSTS_NAKI ((uint32_t)(1<<16))
  5355. #define USB_USBSTS_AS ((uint32_t)(1<<15))
  5356. #define USB_USBSTS_PS ((uint32_t)(1<<14))
  5357. #define USB_USBSTS_RCL ((uint32_t)(1<<13))
  5358. #define USB_USBSTS_HCH ((uint32_t)(1<<12))
  5359. #define USB_USBSTS_ULPII ((uint32_t)(1<<10))
  5360. #define USB_USBSTS_SLI ((uint32_t)(1<<8))
  5361. #define USB_USBSTS_SRI ((uint32_t)(1<<7))
  5362. #define USB_USBSTS_URI ((uint32_t)(1<<6))
  5363. #define USB_USBSTS_AAI ((uint32_t)(1<<5))
  5364. #define USB_USBSTS_SEI ((uint32_t)(1<<4))
  5365. #define USB_USBSTS_FRI ((uint32_t)(1<<3))
  5366. #define USB_USBSTS_PCI ((uint32_t)(1<<2))
  5367. #define USB_USBSTS_UEI ((uint32_t)(1<<1))
  5368. #define USB_USBSTS_UI ((uint32_t)(1<<0))
  5369. #define USB_USBINTR_TIE1 ((uint32_t)(1<<25))
  5370. #define USB_USBINTR_TIE0 ((uint32_t)(1<<24))
  5371. #define USB_USBINTR_UPIE ((uint32_t)(1<<19))
  5372. #define USB_USBINTR_UAIE ((uint32_t)(1<<18))
  5373. #define USB_USBINTR_NAKE ((uint32_t)(1<<16))
  5374. #define USB_USBINTR_ULPIE ((uint32_t)(1<<10))
  5375. #define USB_USBINTR_SLE ((uint32_t)(1<<8))
  5376. #define USB_USBINTR_SRE ((uint32_t)(1<<7))
  5377. #define USB_USBINTR_URE ((uint32_t)(1<<6))
  5378. #define USB_USBINTR_AAE ((uint32_t)(1<<5))
  5379. #define USB_USBINTR_SEE ((uint32_t)(1<<4))
  5380. #define USB_USBINTR_FRE ((uint32_t)(1<<3))
  5381. #define USB_USBINTR_PCE ((uint32_t)(1<<2))
  5382. #define USB_USBINTR_UEE ((uint32_t)(1<<1))
  5383. #define USB_USBINTR_UE ((uint32_t)(1<<0))
  5384. #define USB_DEVICEADDR_USBADR(n) ((uint32_t)(((n) & 0x7F) << 25))
  5385. #define USB_DEVICEADDR_USBADRA ((uint32_t)(1<<24))
  5386. #define USB_PORTSC1_PTS_1(n) ((uint32_t)(((n) & 0x03) << 30))
  5387. #define USB_PORTSC1_STS ((uint32_t)(1<<29))
  5388. #define USB_PORTSC1_PTW ((uint32_t)(1<<28))
  5389. #define USB_PORTSC1_PSPD(n) ((uint32_t)(((n) & 0x03) << 26))
  5390. #define USB_PORTSC1_PTS_2 ((uint32_t)(1<<25))
  5391. #define USB_PORTSC1_PFSC ((uint32_t)(1<<24))
  5392. #define USB_PORTSC1_PHCD ((uint32_t)(1<<23))
  5393. #define USB_PORTSC1_WKOC ((uint32_t)(1<<22))
  5394. #define USB_PORTSC1_WKDC ((uint32_t)(1<<21))
  5395. #define USB_PORTSC1_WKCN ((uint32_t)(1<<20))
  5396. #define USB_PORTSC1_PTC(n) ((uint32_t)(((n) & 0x0F) << 16))
  5397. #define USB_PORTSC1_PIC(n) ((uint32_t)(((n) & 0x03) << 14))
  5398. #define USB_PORTSC1_PO ((uint32_t)(1<<13))
  5399. #define USB_PORTSC1_PP ((uint32_t)(1<<12))
  5400. #define USB_PORTSC1_LS(n) ((uint32_t)(((n) & 0x03) << 10))
  5401. #define USB_PORTSC1_HSP ((uint32_t)(1<<9))
  5402. #define USB_PORTSC1_PR ((uint32_t)(1<<8))
  5403. #define USB_PORTSC1_SUSP ((uint32_t)(1<<7))
  5404. #define USB_PORTSC1_FPR ((uint32_t)(1<<6))
  5405. #define USB_PORTSC1_OCC ((uint32_t)(1<<5))
  5406. #define USB_PORTSC1_OCA ((uint32_t)(1<<4))
  5407. #define USB_PORTSC1_PEC ((uint32_t)(1<<3))
  5408. #define USB_PORTSC1_PE ((uint32_t)(1<<2))
  5409. #define USB_PORTSC1_CSC ((uint32_t)(1<<1))
  5410. #define USB_PORTSC1_CCS ((uint32_t)(1<<0))
  5411. #define USB_USBMODE_SDIS ((uint32_t)(1<<4))
  5412. #define USB_USBMODE_SLOM ((uint32_t)(1<<3))
  5413. #define USB_USBMODE_ES ((uint32_t)(1<<2))
  5414. #define USB_USBMODE_CM(n) ((uint32_t)(((n) & 0x03) << 0))
  5415. #define USB_USBMODE_CM_MASK USB_USBMODE_CM(3)
  5416. #define USB_ENDPTCTRL_TXE ((uint32_t)(1<<23))
  5417. #define USB_ENDPTCTRL_TXR ((uint32_t)(1<<22))
  5418. #define USB_ENDPTCTRL_TXI ((uint32_t)(1<<21))
  5419. #define USB_ENDPTCTRL_TXT(n) ((uint32_t)(((n) & 0x03) << 18))
  5420. #define USB_ENDPTCTRL_TXD ((uint32_t)(1<<17))
  5421. #define USB_ENDPTCTRL_TXS ((uint32_t)(1<<16))
  5422. #define USB_ENDPTCTRL_RXE ((uint32_t)(1<<7))
  5423. #define USB_ENDPTCTRL_RXR ((uint32_t)(1<<6))
  5424. #define USB_ENDPTCTRL_RXI ((uint32_t)(1<<5))
  5425. #define USB_ENDPTCTRL_RXT(n) ((uint32_t)(((n) & 0x03) << 2))
  5426. #define USB_ENDPTCTRL_RXD ((uint32_t)(1<<0))
  5427. #define USB_ENDPTCTRL_RXS ((uint32_t)(1<<1))
  5428. // 56.3: page 3283
  5429. #define IMXRT_USBPHY1 (*(IMXRT_REGISTER32_t *)0x400D9000)
  5430. #define USBPHY1_PWD (IMXRT_USBPHY1.offset000)
  5431. #define USBPHY1_PWD_SET (IMXRT_USBPHY1.offset004)
  5432. #define USBPHY1_PWD_CLR (IMXRT_USBPHY1.offset008)
  5433. #define USBPHY1_PWD_TOG (IMXRT_USBPHY1.offset00C)
  5434. #define USBPHY1_TX (IMXRT_USBPHY1.offset010)
  5435. #define USBPHY1_TX_SET (IMXRT_USBPHY1.offset014)
  5436. #define USBPHY1_TX_CLR (IMXRT_USBPHY1.offset018)
  5437. #define USBPHY1_TX_TOG (IMXRT_USBPHY1.offset01C)
  5438. #define USBPHY1_RX (IMXRT_USBPHY1.offset020)
  5439. #define USBPHY1_RX_SET (IMXRT_USBPHY1.offset024)
  5440. #define USBPHY1_RX_CLR (IMXRT_USBPHY1.offset028)
  5441. #define USBPHY1_RX_TOG (IMXRT_USBPHY1.offset02C)
  5442. #define USBPHY1_CTRL (IMXRT_USBPHY1.offset030)
  5443. #define USBPHY1_CTRL_SET (IMXRT_USBPHY1.offset034)
  5444. #define USBPHY1_CTRL_CLR (IMXRT_USBPHY1.offset038)
  5445. #define USBPHY1_CTRL_TOG (IMXRT_USBPHY1.offset03C)
  5446. #define USBPHY1_STATUS (IMXRT_USBPHY1.offset040)
  5447. #define USBPHY1_DEBUG (IMXRT_USBPHY1.offset050)
  5448. #define USBPHY1_DEBUG_SET (IMXRT_USBPHY1.offset054)
  5449. #define USBPHY1_DEBUG_CLR (IMXRT_USBPHY1.offset058)
  5450. #define USBPHY1_DEBUG_TOG (IMXRT_USBPHY1.offset05C)
  5451. #define USBPHY1_DEBUG0_STATUS (IMXRT_USBPHY1.offset060)
  5452. #define USBPHY1_DEBUG1 (IMXRT_USBPHY1.offset070)
  5453. #define USBPHY1_DEBUG1_SET (IMXRT_USBPHY1.offset074)
  5454. #define USBPHY1_DEBUG1_CLR (IMXRT_USBPHY1.offset078)
  5455. #define USBPHY1_DEBUG1_TOG (IMXRT_USBPHY1.offset07C)
  5456. #define USBPHY1_VERSION (IMXRT_USBPHY1.offset080)
  5457. #define IMXRT_USBPHY2 (*(IMXRT_REGISTER32_t *)0x400DA000)
  5458. #define USBPHY2_PWD (IMXRT_USBPHY2.offset000)
  5459. #define USBPHY2_PWD_SET (IMXRT_USBPHY2.offset004)
  5460. #define USBPHY2_PWD_CLR (IMXRT_USBPHY2.offset008)
  5461. #define USBPHY2_PWD_TOG (IMXRT_USBPHY2.offset00C)
  5462. #define USBPHY2_TX (IMXRT_USBPHY2.offset010)
  5463. #define USBPHY2_TX_SET (IMXRT_USBPHY2.offset014)
  5464. #define USBPHY2_TX_CLR (IMXRT_USBPHY2.offset018)
  5465. #define USBPHY2_TX_TOG (IMXRT_USBPHY2.offset01C)
  5466. #define USBPHY2_RX (IMXRT_USBPHY2.offset020)
  5467. #define USBPHY2_RX_SET (IMXRT_USBPHY2.offset024)
  5468. #define USBPHY2_RX_CLR (IMXRT_USBPHY2.offset028)
  5469. #define USBPHY2_RX_TOG (IMXRT_USBPHY2.offset02C)
  5470. #define USBPHY2_CTRL (IMXRT_USBPHY2.offset030)
  5471. #define USBPHY2_CTRL_SET (IMXRT_USBPHY2.offset034)
  5472. #define USBPHY2_CTRL_CLR (IMXRT_USBPHY2.offset038)
  5473. #define USBPHY2_CTRL_TOG (IMXRT_USBPHY2.offset03C)
  5474. #define USBPHY2_STATUS (IMXRT_USBPHY2.offset040)
  5475. #define USBPHY2_DEBUG (IMXRT_USBPHY2.offset050)
  5476. #define USBPHY2_DEBUG_SET (IMXRT_USBPHY2.offset054)
  5477. #define USBPHY2_DEBUG_CLR (IMXRT_USBPHY2.offset058)
  5478. #define USBPHY2_DEBUG_TOG (IMXRT_USBPHY2.offset05C)
  5479. #define USBPHY2_DEBUG0_STATUS (IMXRT_USBPHY2.offset060)
  5480. #define USBPHY2_DEBUG1 (IMXRT_USBPHY2.offset070)
  5481. #define USBPHY2_DEBUG1_SET (IMXRT_USBPHY2.offset074)
  5482. #define USBPHY2_DEBUG1_CLR (IMXRT_USBPHY2.offset078)
  5483. #define USBPHY2_DEBUG1_TOG (IMXRT_USBPHY2.offset07C)
  5484. #define USBPHY2_VERSION (IMXRT_USBPHY2.offset080)
  5485. #define USBPHY_PWD_RXPWDRX ((uint32_t)(1<<20))
  5486. #define USBPHY_PWD_RXPWDDIFF ((uint32_t)(1<<19))
  5487. #define USBPHY_PWD_RXPWD1PT1 ((uint32_t)(1<<18))
  5488. #define USBPHY_PWD_RXPWDENV ((uint32_t)(1<<17))
  5489. #define USBPHY_PWD_TXPWDV2I ((uint32_t)(1<<12))
  5490. #define USBPHY_PWD_TXPWDIBIAS ((uint32_t)(1<<11))
  5491. #define USBPHY_PWD_TXPWDFS ((uint32_t)(1<<10))
  5492. #define USBPHY_TX_USBPHY_TX_EDGECTRL(n) ((uint32_t)(((n) & 0x07) << 26))
  5493. #define USBPHY_TX_TXCAL45DP(n) ((uint32_t)(((n) & 0x0F) << 16))
  5494. #define USBPHY_TX_TXCAL45DN(n) ((uint32_t)(((n) & 0x0F) << 8))
  5495. #define USBPHY_TX_D_CAL(n) ((uint32_t)(((n) & 0x0F) << 0))
  5496. #define USBPHY_RX_RXDBYPASS ((uint32_t)(1<<22))
  5497. #define USBPHY_RX_DISCONADJ(n) ((uint32_t)(((n) & 0x07) << 4))
  5498. #define USBPHY_RX_ENVADJ(n) ((uint32_t)(((n) & 0x07) << 0))
  5499. #define USBPHY_CTRL_SFTRST ((uint32_t)(1<<31))
  5500. #define USBPHY_CTRL_CLKGATE ((uint32_t)(1<<30))
  5501. #define USBPHY_CTRL_UTMI_SUSPENDM ((uint32_t)(1<<29))
  5502. #define USBPHY_CTRL_HOST_FORCE_LS_SE0 ((uint32_t)(1<<28))
  5503. #define USBPHY_CTRL_OTG_ID_VALUE ((uint32_t)(1<<27))
  5504. #define USBPHY_CTRL_FSDLL_RST_EN ((uint32_t)(1<<24))
  5505. #define USBPHY_CTRL_ENVBUSCHG_WKUP ((uint32_t)(1<<23))
  5506. #define USBPHY_CTRL_ENIDCHG_WKUP ((uint32_t)(1<<22))
  5507. #define USBPHY_CTRL_ENDPDMCHG_WKUP ((uint32_t)(1<<21))
  5508. #define USBPHY_CTRL_ENAUTOCLR_PHY_PWD ((uint32_t)(1<<20))
  5509. #define USBPHY_CTRL_ENAUTOCLR_CLKGATE ((uint32_t)(1<<19))
  5510. #define USBPHY_CTRL_ENAUTO_PWRON_PLL ((uint32_t)(1<<18))
  5511. #define USBPHY_CTRL_WAKEUP_IRQ ((uint32_t)(1<<17))
  5512. #define USBPHY_CTRL_ENIRQWAKEUP ((uint32_t)(1<<16))
  5513. #define USBPHY_CTRL_ENUTMILEVEL3 ((uint32_t)(1<<15))
  5514. #define USBPHY_CTRL_ENUTMILEVEL2 ((uint32_t)(1<<14))
  5515. #define USBPHY_CTRL_DATA_ON_LRADC ((uint32_t)(1<<13))
  5516. #define USBPHY_CTRL_DEVPLUGIN_IRQ ((uint32_t)(1<<12))
  5517. #define USBPHY_CTRL_ENIRQDEVPLUGIN ((uint32_t)(1<<11))
  5518. #define USBPHY_CTRL_RESUME_IRQ ((uint32_t)(1<<10))
  5519. #define USBPHY_CTRL_ENIRQRESUMEDETECT ((uint32_t)(1<<9))
  5520. #define USBPHY_CTRL_RESUMEIRQSTICKY ((uint32_t)(1<<8))
  5521. #define USBPHY_CTRL_ENOTGIDDETECT ((uint32_t)(1<<7))
  5522. #define USBPHY_CTRL_OTG_ID_CHG_IRQ ((uint32_t)(1<<6))
  5523. #define USBPHY_CTRL_DEVPLUGIN_POLARITY ((uint32_t)(1<<5))
  5524. #define USBPHY_CTRL_ENDEVPLUGINDETECT ((uint32_t)(1<<4))
  5525. #define USBPHY_CTRL_HOSTDISCONDETECT_IRQ ((uint32_t)(1<<3))
  5526. #define USBPHY_CTRL_ENIRQHOSTDISCON ((uint32_t)(1<<2))
  5527. #define USBPHY_CTRL_ENHOSTDISCONDETECT ((uint32_t)(1<<1))
  5528. #define USBPHY_CTRL_ENOTG_ID_CHG_IRQ ((uint32_t)(1<<0))
  5529. // 57.9.1.1: page 3381
  5530. #define IMXRT_USDHC1 (*(IMXRT_REGISTER32_t *)0x402C0000)
  5531. #define USDHC1_DS_ADDR (IMXRT_USDHC1.offset000)
  5532. #define USDHC1_BLK_ATT (IMXRT_USDHC1.offset004)
  5533. #define USDHC1_CMD_ARG (IMXRT_USDHC1.offset008)
  5534. #define USDHC1_CMD_XFR_TYP (IMXRT_USDHC1.offset00C)
  5535. #define USDHC1_CMD_RSP0 (IMXRT_USDHC1.offset010)
  5536. #define USDHC1_CMD_RSP1 (IMXRT_USDHC1.offset014)
  5537. #define USDHC1_CMD_RSP2 (IMXRT_USDHC1.offset018)
  5538. #define USDHC1_CMD_RSP3 (IMXRT_USDHC1.offset01C)
  5539. #define USDHC1_DATA_BUFF_ACC_PORT (IMXRT_USDHC1.offset020)
  5540. #define USDHC1_PRES_STATE (IMXRT_USDHC1.offset024)
  5541. #define USDHC1_PROT_CTRL (IMXRT_USDHC1.offset028)
  5542. #define USDHC1_SYS_CTRL (IMXRT_USDHC1.offset02C)
  5543. #define USDHC1_INT_STATUS (IMXRT_USDHC1.offset030)
  5544. #define USDHC1_INT_STATUS_EN (IMXRT_USDHC1.offset034)
  5545. #define USDHC1_INT_SIGNAL_EN (IMXRT_USDHC1.offset038)
  5546. #define USDHC1_AUTOCMD12_ERR_STATUS (IMXRT_USDHC1.offset03C)
  5547. #define USDHC1_HOST_CTRL_CAP (IMXRT_USDHC1.offset040)
  5548. #define USDHC1_WTMK_LVL (IMXRT_USDHC1.offset044)
  5549. #define USDHC1_MIX_CTRL (IMXRT_USDHC1.offset048)
  5550. #define USDHC1_FORCE_EVENT (IMXRT_USDHC1.offset050)
  5551. #define USDHC1_ADMA_ERR_STATUS (IMXRT_USDHC1.offset054)
  5552. #define USDHC1_ADMA_SYS_ADDR (IMXRT_USDHC1.offset058)
  5553. #define USDHC1_DLL_CTRL (IMXRT_USDHC1.offset060)
  5554. #define USDHC1_DLL_STATUS (IMXRT_USDHC1.offset064)
  5555. #define USDHC1_CLK_TUNE_CTRL_STATUS (IMXRT_USDHC1.offset068)
  5556. #define USDHC1_VEND_SPEC (IMXRT_USDHC1.offset0C0)
  5557. #define USDHC1_MMC_BOOT (IMXRT_USDHC1.offset0C4)
  5558. #define USDHC1_VEND_SPEC2 (IMXRT_USDHC1.offset0C8)
  5559. #define USDHC1_TUNING_CTRL (IMXRT_USDHC1.offset0CC)
  5560. #define IMXRT_USDHC2 (*(IMXRT_REGISTER32_t *)0x402C4000)
  5561. #define USDHC2_DS_ADDR (IMXRT_USDHC2.offset000)
  5562. #define USDHC2_BLK_ATT (IMXRT_USDHC2.offset004)
  5563. #define USDHC2_CMD_ARG (IMXRT_USDHC2.offset008)
  5564. #define USDHC2_CMD_XFR_TYP (IMXRT_USDHC2.offset00C)
  5565. #define USDHC2_CMD_RSP0 (IMXRT_USDHC2.offset010)
  5566. #define USDHC2_CMD_RSP1 (IMXRT_USDHC2.offset014)
  5567. #define USDHC2_CMD_RSP2 (IMXRT_USDHC2.offset018)
  5568. #define USDHC2_CMD_RSP3 (IMXRT_USDHC2.offset01C)
  5569. #define USDHC2_DATA_BUFF_ACC_PORT (IMXRT_USDHC2.offset020)
  5570. #define USDHC2_PRES_STATE (IMXRT_USDHC2.offset024)
  5571. #define USDHC2_PROT_CTRL (IMXRT_USDHC2.offset028)
  5572. #define USDHC2_SYS_CTRL (IMXRT_USDHC2.offset02C)
  5573. #define USDHC2_INT_STATUS (IMXRT_USDHC2.offset030)
  5574. #define USDHC2_INT_STATUS_EN (IMXRT_USDHC2.offset034)
  5575. #define USDHC2_INT_SIGNAL_EN (IMXRT_USDHC2.offset038)
  5576. #define USDHC2_AUTOCMD12_ERR_STATUS (IMXRT_USDHC2.offset03C)
  5577. #define USDHC2_HOST_CTRL_CAP (IMXRT_USDHC2.offset040)
  5578. #define USDHC2_WTMK_LVL (IMXRT_USDHC2.offset044)
  5579. #define USDHC2_MIX_CTRL (IMXRT_USDHC2.offset048)
  5580. #define USDHC2_FORCE_EVENT (IMXRT_USDHC2.offset050)
  5581. #define USDHC2_ADMA_ERR_STATUS (IMXRT_USDHC2.offset054)
  5582. #define USDHC2_ADMA_SYS_ADDR (IMXRT_USDHC2.offset058)
  5583. #define USDHC2_DLL_CTRL (IMXRT_USDHC2.offset060)
  5584. #define USDHC2_DLL_STATUS (IMXRT_USDHC2.offset064)
  5585. #define USDHC2_CLK_TUNE_CTRL_STATUS (IMXRT_USDHC2.offset068)
  5586. #define USDHC2_VEND_SPEC (IMXRT_USDHC2.offset0C0)
  5587. #define USDHC2_MMC_BOOT (IMXRT_USDHC2.offset0C4)
  5588. #define USDHC2_VEND_SPEC2 (IMXRT_USDHC2.offset0C8)
  5589. #define USDHC2_TUNING_CTRL (IMXRT_USDHC2.offset0CC)
  5590. // 58.7.1.1: page 3461
  5591. #define IMXRT_WDOG1 (*(IMXRT_REGISTER16_t *)0x400B8000)
  5592. #define WDOG1_WCR (IMXRT_WDOG1.offset000)
  5593. #define WDOG1_WSR (IMXRT_WDOG1.offset002)
  5594. #define WDOG1_WRSR (IMXRT_WDOG1.offset004)
  5595. #define WDOG1_WICR (IMXRT_WDOG1.offset006)
  5596. #define WDOG1_WMCR (IMXRT_WDOG1.offset008)
  5597. #define IMXRT_WDOG2 (*(IMXRT_REGISTER16_t *)0x400D0000)
  5598. #define WDOG2_WCR (IMXRT_WDOG2.offset000)
  5599. #define WDOG2_WSR (IMXRT_WDOG2.offset002)
  5600. #define WDOG2_WRSR (IMXRT_WDOG2.offset004)
  5601. #define WDOG2_WICR (IMXRT_WDOG2.offset006)
  5602. #define WDOG2_WMCR (IMXRT_WDOG2.offset008)
  5603. // 59.3.1.1: page 3471
  5604. #define IMXRT_WDOG3 (*(IMXRT_REGISTER32_t *)0x400BC000)
  5605. #define WDOG3_CS (IMXRT_WDOG3.offset000)
  5606. #define WDOG3_CNT (IMXRT_WDOG3.offset004)
  5607. #define WDOG3_TOVAL (IMXRT_WDOG3.offset008)
  5608. #define WDOG3_WIN (IMXRT_WDOG3.offset00C)
  5609. // 60.4: page 3491
  5610. #define IMXRT_XBARA1 (*(IMXRT_REGISTER16_t *)0x403BC000)
  5611. #define XBARA1_SEL0 (IMXRT_XBARA1.offset000)
  5612. #define XBARA1_SEL1 (IMXRT_XBARA1.offset002)
  5613. #define XBARA1_SEL2 (IMXRT_XBARA1.offset004)
  5614. #define XBARA1_SEL3 (IMXRT_XBARA1.offset006)
  5615. #define XBARA1_SEL4 (IMXRT_XBARA1.offset008)
  5616. #define XBARA1_SEL5 (IMXRT_XBARA1.offset00A)
  5617. #define XBARA1_SEL6 (IMXRT_XBARA1.offset00C)
  5618. #define XBARA1_SEL7 (IMXRT_XBARA1.offset00E)
  5619. #define XBARA1_SEL8 (IMXRT_XBARA1.offset010)
  5620. #define XBARA1_SEL9 (IMXRT_XBARA1.offset012)
  5621. #define XBARA1_SEL10 (IMXRT_XBARA1.offset014)
  5622. #define XBARA1_SEL11 (IMXRT_XBARA1.offset016)
  5623. #define XBARA1_SEL12 (IMXRT_XBARA1.offset018)
  5624. #define XBARA1_SEL13 (IMXRT_XBARA1.offset01A)
  5625. #define XBARA1_SEL14 (IMXRT_XBARA1.offset01C)
  5626. #define XBARA1_SEL15 (IMXRT_XBARA1.offset01E)
  5627. #define XBARA1_SEL16 (IMXRT_XBARA1.offset020)
  5628. #define XBARA1_SEL17 (IMXRT_XBARA1.offset022)
  5629. #define XBARA1_SEL18 (IMXRT_XBARA1.offset024)
  5630. #define XBARA1_SEL19 (IMXRT_XBARA1.offset026)
  5631. #define XBARA1_SEL20 (IMXRT_XBARA1.offset028)
  5632. #define XBARA1_SEL21 (IMXRT_XBARA1.offset02A)
  5633. #define XBARA1_SEL22 (IMXRT_XBARA1.offset02C)
  5634. #define XBARA1_SEL23 (IMXRT_XBARA1.offset02E)
  5635. #define XBARA1_SEL24 (IMXRT_XBARA1.offset030)
  5636. #define XBARA1_SEL25 (IMXRT_XBARA1.offset032)
  5637. #define XBARA1_SEL26 (IMXRT_XBARA1.offset034)
  5638. #define XBARA1_SEL27 (IMXRT_XBARA1.offset036)
  5639. #define XBARA1_SEL28 (IMXRT_XBARA1.offset038)
  5640. #define XBARA1_SEL29 (IMXRT_XBARA1.offset03A)
  5641. #define XBARA1_CTRL0 (IMXRT_XBARA1.offset03C)
  5642. #define XBARA1_CTRL1 (IMXRT_XBARA1.offset03E)
  5643. // 61.3: page 3537
  5644. #define IMXRT_XBARB2 (*(IMXRT_REGISTER16_t *)0x403C0000)
  5645. #define XBARB2_SEL0 (IMXRT_XBARB2.offset000)
  5646. #define XBARB2_SEL1 (IMXRT_XBARB2.offset002)
  5647. #define XBARB2_SEL2 (IMXRT_XBARB2.offset004)
  5648. #define XBARB2_SEL3 (IMXRT_XBARB2.offset006)
  5649. #define XBARB2_SEL4 (IMXRT_XBARB2.offset008)
  5650. #define XBARB2_SEL5 (IMXRT_XBARB2.offset00A)
  5651. #define XBARB2_SEL6 (IMXRT_XBARB2.offset00C)
  5652. #define XBARB2_SEL7 (IMXRT_XBARB2.offset00E)
  5653. #define IMXRT_XBARB3 (*(IMXRT_REGISTER16_t *)0x403C4000)
  5654. #define XBARB3_SEL0 (IMXRT_XBARB3.offset000)
  5655. #define XBARB3_SEL1 (IMXRT_XBARB3.offset002)
  5656. #define XBARB3_SEL2 (IMXRT_XBARB3.offset004)
  5657. #define XBARB3_SEL3 (IMXRT_XBARB3.offset006)
  5658. #define XBARB3_SEL4 (IMXRT_XBARB3.offset008)
  5659. #define XBARB3_SEL5 (IMXRT_XBARB3.offset00A)
  5660. #define XBARB3_SEL6 (IMXRT_XBARB3.offset00C)
  5661. #define XBARB3_SEL7 (IMXRT_XBARB3.offset00E)
  5662. // 62.5: page 3548
  5663. #define IMXRT_XTALOSC24M (*(IMXRT_REGISTER32_t *)0x400D8000)
  5664. #define XTALOSC24M_MISC0 (IMXRT_XTALOSC24M.offset150)
  5665. #define XTALOSC24M_LOWPWR_CTRL (IMXRT_XTALOSC24M.offset270)
  5666. #define XTALOSC24M_LOWPWR_CTRL_SET (IMXRT_XTALOSC24M.offset274)
  5667. #define XTALOSC24M_LOWPWR_CTRL_CLR (IMXRT_XTALOSC24M.offset278)
  5668. #define XTALOSC24M_LOWPWR_CTRL_TOG (IMXRT_XTALOSC24M.offset27C)
  5669. #define XTALOSC24M_OSC_CONFIG0 (IMXRT_XTALOSC24M.offset2A0)
  5670. #define XTALOSC24M_OSC_CONFIG0_SET (IMXRT_XTALOSC24M.offset2A4)
  5671. #define XTALOSC24M_OSC_CONFIG0_CLR (IMXRT_XTALOSC24M.offset2A8)
  5672. #define XTALOSC24M_OSC_CONFIG0_TOG (IMXRT_XTALOSC24M.offset2AC)
  5673. #define XTALOSC24M_OSC_CONFIG1 (IMXRT_XTALOSC24M.offset2B0)
  5674. #define XTALOSC24M_OSC_CONFIG1_SET (IMXRT_XTALOSC24M.offset2B4)
  5675. #define XTALOSC24M_OSC_CONFIG1_CLR (IMXRT_XTALOSC24M.offset2B8)
  5676. #define XTALOSC24M_OSC_CONFIG1_TOG (IMXRT_XTALOSC24M.offset2BC)
  5677. #define XTALOSC24M_OSC_CONFIG2 (IMXRT_XTALOSC24M.offset2C0)
  5678. #define XTALOSC24M_OSC_CONFIG2_SET (IMXRT_XTALOSC24M.offset2C4)
  5679. #define XTALOSC24M_OSC_CONFIG2_CLR (IMXRT_XTALOSC24M.offset2C8)
  5680. #define XTALOSC24M_OSC_CONFIG2_TOG (IMXRT_XTALOSC24M.offset2CC)
  5681. #define __disable_irq() __asm__ volatile("CPSID i":::"memory");
  5682. #define __enable_irq() __asm__ volatile("CPSIE i":::"memory");
  5683. // System Control Space (SCS), ARMv7 ref manual, B3.2, page 708
  5684. #define SCB_CPUID (*(const uint32_t *)0xE000ED00) // CPUID Base Register
  5685. #define SCB_ICSR (*(volatile uint32_t *)0xE000ED04) // Interrupt Control and State
  5686. #define SCB_ICSR_NMIPENDSET ((uint32_t)(1<<31))
  5687. #define SCB_ICSR_PENDSVSET ((uint32_t)(1<<28))
  5688. #define SCB_ICSR_PENDSVCLR ((uint32_t)(1<<27))
  5689. #define SCB_ICSR_PENDSTSET ((uint32_t)(1<<26))
  5690. #define SCB_ICSR_PENDSTCLR ((uint32_t)(1<<25))
  5691. #define SCB_ICSR_ISRPREEMPT ((uint32_t)(1<<23))
  5692. #define SCB_ICSR_ISRPENDING ((uint32_t)(1<<22))
  5693. #define SCB_ICSR_RETTOBASE ((uint32_t)(1<<11))
  5694. #define SCB_VTOR (*(volatile uint32_t *)0xE000ED08) // Vector Table Offset
  5695. #define SCB_AIRCR (*(volatile uint32_t *)0xE000ED0C) // Application Interrupt and Reset Control
  5696. #define SCB_SCR (*(volatile uint32_t *)0xE000ED10) // System Control Register
  5697. #define SCB_SCR_SEVONPEND ((uint8_t)0x10) // Send Event on Pending bit
  5698. #define SCB_SCR_SLEEPDEEP ((uint8_t)0x04) // Sleep or Deep Sleep
  5699. #define SCB_SCR_SLEEPONEXIT ((uint8_t)0x02) // Sleep-on-exit
  5700. #define SCB_CCR (*(volatile uint32_t *)0xE000ED14) // Configuration and Control
  5701. #define SCB_SHPR1 (*(volatile uint32_t *)0xE000ED18) // System Handler Priority Register 1
  5702. #define SCB_SHPR2 (*(volatile uint32_t *)0xE000ED1C) // System Handler Priority Register 2
  5703. #define SCB_SHPR3 (*(volatile uint32_t *)0xE000ED20) // System Handler Priority Register 3
  5704. #define SCB_SHCSR (*(volatile uint32_t *)0xE000ED24) // System Handler Control and State
  5705. #define SCB_CFSR (*(volatile uint32_t *)0xE000ED28) // Configurable Fault Status Register
  5706. #define SCB_HFSR (*(volatile uint32_t *)0xE000ED2C) // HardFault Status
  5707. #define SCB_DFSR (*(volatile uint32_t *)0xE000ED30) // Debug Fault Status
  5708. #define SCB_MMFAR (*(volatile uint32_t *)0xE000ED34) // MemManage Fault Address
  5709. #define SCB_BFAR (*(volatile uint32_t *)0xE000ED38) // Bus Fault Address
  5710. #define SCB_AFAR (*(volatile uint32_t *)0xE000ED3C) // Aux Fault Address
  5711. #define SCB_CPACR (*(volatile uint32_t *)0xE000ED88) // Coprocessor Access Control
  5712. #define SCB_FPCCR (*(volatile uint32_t *)0xE000EF34) // FP Context Control
  5713. #define SCB_FPCAR (*(volatile uint32_t *)0xE000EF38) // FP Context Address
  5714. #define SCB_FPDSCR (*(volatile uint32_t *)0xE000EF3C) // FP Default Status Control
  5715. #define SCB_MVFR0 (*(volatile uint32_t *)0xE000EF40) // Media & FP Feature 0
  5716. #define SCB_MVFR1 (*(volatile uint32_t *)0xE000EF44) // Media & FP Feature 1
  5717. #define SCB_MVFR2 (*(volatile uint32_t *)0xE000EF48) // Media & FP Feature 2
  5718. #define SYST_CSR (*(volatile uint32_t *)0xE000E010) // SysTick Control and Status
  5719. #define SYST_CSR_COUNTFLAG ((uint32_t)(1<<16))
  5720. #define SYST_CSR_CLKSOURCE ((uint32_t)(1<<2))
  5721. #define SYST_CSR_TICKINT ((uint32_t)(1<<1))
  5722. #define SYST_CSR_ENABLE ((uint32_t)(1<<0))
  5723. #define SYST_RVR (*(volatile uint32_t *)0xE000E014) // SysTick Reload Value Register
  5724. #define SYST_CVR (*(volatile uint32_t *)0xE000E018) // SysTick Current Value Register
  5725. #define SYST_CALIB (*(const uint32_t *)0xE000E01C) // SysTick Calibration Value
  5726. // Nested Vectored Interrupt Controller, Table 3-4 & ARMv7 ref, appendix B3.4 (page 750)
  5727. #define NVIC_ISER0 (*(volatile uint32_t *)0xE000E100)
  5728. #define NVIC_ISER1 (*(volatile uint32_t *)0xE000E104)
  5729. #define NVIC_ISER2 (*(volatile uint32_t *)0xE000E108)
  5730. #define NVIC_ISER3 (*(volatile uint32_t *)0xE000E10C)
  5731. #define NVIC_ICER0 (*(volatile uint32_t *)0xE000E180)
  5732. #define NVIC_ICER1 (*(volatile uint32_t *)0xE000E184)
  5733. #define NVIC_ICER2 (*(volatile uint32_t *)0xE000E188)
  5734. #define NVIC_ICER3 (*(volatile uint32_t *)0xE000E18C)
  5735. #define NVIC_STIR (*(volatile uint32_t *)0xE000EF00)
  5736. #define NVIC_ENABLE_IRQ(n) (*(&NVIC_ISER0 + ((n) >> 5)) = (1 << ((n) & 31)))
  5737. #define NVIC_DISABLE_IRQ(n) (*(&NVIC_ICER0 + ((n) >> 5)) = (1 << ((n) & 31)))
  5738. #define NVIC_SET_PENDING(n) (*((volatile uint32_t *)0xE000E200 + ((n) >> 5)) = (1 << ((n) & 31)))
  5739. #define NVIC_CLEAR_PENDING(n) (*((volatile uint32_t *)0xE000E280 + ((n) >> 5)) = (1 << ((n) & 31)))
  5740. #define NVIC_IS_ENABLED(n) (*(&NVIC_ISER0 + ((n) >> 5)) & (1 << ((n) & 31)))
  5741. #define NVIC_IS_PENDING(n) (*((volatile uint32_t *)0xE000E200 + ((n) >> 5)) & (1 << ((n) & 31)))
  5742. #define NVIC_IS_ACTIVE(n) (*((volatile uint32_t *)0xE000E300 + ((n) >> 5)) & (1 << ((n) & 31)))
  5743. #define NVIC_TRIGGER_IRQ(n) NVIC_STIR=(n)
  5744. #define ARM_DEMCR (*(volatile uint32_t *)0xE000EDFC) // Debug Exception and Monitor Control
  5745. #define ARM_DEMCR_TRCENA (1 << 24) // Enable debugging & monitoring blocks
  5746. #define ARM_DWT_CTRL (*(volatile uint32_t *)0xE0001000) // DWT control register
  5747. #define ARM_DWT_CTRL_CYCCNTENA (1 << 0) // Enable cycle count
  5748. #define ARM_DWT_CYCCNT (*(volatile uint32_t *)0xE0001004) // Cycle count register
  5749. #define SCB_MPU_TYPE (*(volatile uint32_t *)0xE000ED90) //
  5750. #define SCB_MPU_CTRL (*(volatile uint32_t *)0xE000ED94) //
  5751. #define SCB_MPU_RNR (*(volatile uint32_t *)0xE000ED98) //
  5752. #define SCB_MPU_RBAR (*(volatile uint32_t *)0xE000ED9C) //
  5753. #define SCB_MPU_RASR (*(volatile uint32_t *)0xE000EDA0) //
  5754. #define SCB_MPU_RBAR_A1 (*(volatile uint32_t *)0xE000EDA4) //
  5755. #define SCB_MPU_RASR_A1 (*(volatile uint32_t *)0xE000EDA8) //
  5756. #define SCB_MPU_RBAR_A2 (*(volatile uint32_t *)0xE000EDAC) //
  5757. #define SCB_MPU_RASR_A2 (*(volatile uint32_t *)0xE000EDB0) //
  5758. #define SCB_MPU_RBAR_A3 (*(volatile uint32_t *)0xE000EDB4) //
  5759. #define SCB_MPU_RASR_A3 (*(volatile uint32_t *)0xE000EDB8) //
  5760. #define SCB_CACHE_ICIALLU (*(volatile uint32_t *)0xE000EF50)
  5761. #define SCB_CACHE_ICIMVAU (*(volatile uint32_t *)0xE000EF58)
  5762. #define SCB_CACHE_DCIMVAC (*(volatile uint32_t *)0xE000EF5C)
  5763. #define SCB_CACHE_DCISW (*(volatile uint32_t *)0xE000EF60)
  5764. #define SCB_CACHE_DCCMVAU (*(volatile uint32_t *)0xE000EF64)
  5765. #define SCB_CACHE_DCCMVAC (*(volatile uint32_t *)0xE000EF68)
  5766. #define SCB_CACHE_DCCSW (*(volatile uint32_t *)0xE000EF6C)
  5767. #define SCB_CACHE_DCCIMVAC (*(volatile uint32_t *)0xE000EF70)
  5768. #define SCB_CACHE_DCCISW (*(volatile uint32_t *)0xE000EF74)
  5769. #define SCB_CACHE_BPIALL (*(volatile uint32_t *)0xE000EF78)