PK40X256VLQ100.h 526 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329
  1. /*
  2. ** ###################################################################
  3. ** Processor: PK40X256VLQ100
  4. ** Compilers: ARM Compiler
  5. ** Freescale C/C++ for Embedded ARM
  6. ** GNU ARM C Compiler
  7. ** IAR ANSI C/C++ Compiler for ARM
  8. ** Reference manual: K40P144M100SF2RM, Rev. 3, 4 Nov 2010
  9. ** Version: rev. 1.6, 2011-01-14
  10. **
  11. ** Abstract:
  12. ** CMSIS Peripheral Access Layer for MK40N512MD100
  13. **
  14. ** Copyright: 1997 - 2011 Freescale Semiconductor, Inc. All Rights Reserved.
  15. **
  16. ** http: www.freescale.com
  17. ** mail: support@freescale.com
  18. **
  19. ** Revisions:
  20. ** - rev. 0.1 (2010-09-29)
  21. ** Initial version
  22. ** - rev. 1.0 (2010-10-15)
  23. ** First public version
  24. ** - rev. 1.1 (2010-10-27)
  25. ** Registers updated according to the new reference manual revision - Rev. 2, 15 Oct 2010
  26. ** ADC - Peripheral register PGA bit definition has been fixed, bits PGALP, PGACHP removed.
  27. ** CAN - Peripheral register MCR bit definition has been fixed, bit WAKSRC removed.
  28. ** CRC - Peripheral register layout structure has been extended with 8/16-bit access to shadow registers.
  29. ** CMP - Peripheral base address macro renamed from HSCMPx_BASE to CMPx_BASE.
  30. ** CMP - Peripheral base pointer macro renamed from HSCMPx to CMPx.
  31. ** DMA - Peripheral base address macro renamed from eDMA_BASE to DMA_BASE.
  32. ** DMA - Peripheral base pointer macro renamed from eDMA to DMA.
  33. ** GPIO - Port Output Enable Register (POER) has been renamed to Port Data Direction Register (PDDR), all POER related macros fixed to PDDR.
  34. ** LCD - Peripheral base address macro renamed from SLCD_BASE to LCD_BASE.
  35. ** LCD - Peripheral base pointer macro renamed from SLCD to LCD.
  36. ** PDB - Peripheral register layout structure has been extended for Channel n and DAC n register array access (#MTWX44115).
  37. ** RFSYS - System regfile registers have been added (#MTWX43999)
  38. ** RFVBAT - VBAT regfile registers have been added (#MTWX43999)
  39. ** RTC - Peripheral register CR bit definition has been fixed, bit OTE removed.
  40. ** TSI - Peripheral registers STATUS, SCANC bit definition have been fixed, bit groups CAPTRM, DELVOL and AMCLKDIV added.
  41. ** USB - Peripheral base address macro renamed from USBOTG0_BASE to USB0_BASE.
  42. ** USB - Peripheral base pointer macro renamed from USBOTG0 to USB0.
  43. ** VREF - Peripheral register TRM removed.
  44. ** - rev. 1.2 (2010-11-11)
  45. ** Registers updated according to the new reference manual revision - Rev. 3, 4 Nov 2010
  46. ** CAN - Individual Matching Element Update (IMEU) feature has been removed.
  47. ** CAN - Peripheral register layout structure has been fixed, registers IMEUR, LRFR have been removed.
  48. ** CAN - Peripheral register CTRL2 bit definition has been fixed, bits IMEUMASK, LOSTRMMSK, LOSTRLMSK, IMEUEN have been removed.
  49. ** CAN - Peripheral register ESR2 bit definition has been fixed, bits IMEUF, LOSTRMF, LOSTRLF have been removed.
  50. ** NV - Fixed offset address of BACKKEYx, FPROTx registers.
  51. ** TSI - Peripheral register layout structure has been fixed, register WUCNTR has been removed.
  52. ** - rev. 1.3 (2010-11-19)
  53. ** CAN - Support for CAN0_IMEU_IRQn, CAN0_Lost_Rx_IRQn interrupts has been removed.
  54. ** CAN - Support for CAN1_IMEU_IRQn, CAN1_Lost_Rx_IRQn interrupts has been removed.
  55. ** - rev. 1.4 (2010-11-30)
  56. ** EWM - Peripheral base address EWM_BASE definition has been fixed from 0x4005F000u to 0x40061000u (#MTWX44776).
  57. ** - rev. 1.5 (2010-12-17)
  58. ** AIPS0, AIPS1 - Fixed offset of PACRE-PACRP registers (#MTWX45259).
  59. ** - rev. 1.6 (2011-01-14)
  60. ** Added BITBAND_REG() macro to provide access to register bits using bit band region.
  61. **
  62. ** ###################################################################
  63. */
  64. /*! \file PK40X256VLQ100.h */
  65. /*! \version 1.6 */
  66. /*! \date 2011-01-14 */
  67. /*! \brief CMSIS Peripheral Access Layer for PK40X256VLQ100 */
  68. /*! \detailed CMSIS Peripheral Access Layer for PK40X256VLQ100 */
  69. #if !defined(PK40X256VLQ100)
  70. #define PK40X256VLQ100_H_ /*!< Symbol preventing repeated inclusion */
  71. /*! Memory map version 1.6 */
  72. #define MCU_MEM_MAP_VERSION 0x0106u
  73. /*!
  74. * \def BITBAND_REG(reg,bit)
  75. * \brief Macro to access a single bit of a peripheral register (bit band region 0x40000000 to 0x400FFFFF) using the bit-band alias region access.
  76. * \param Reg Register to access
  77. * \param Bit Bit number to access
  78. * \return Value of the targeted bit in the bit band region.
  79. */
  80. #define BITBAND_REG(Reg,Bit) (*((uint32_t volatile*)(0x42000000u + (32u*((uint32_t)&(Reg) - (uint32_t)0x40000000u)) + (4u*((uint32_t)(Bit))))))
  81. /* ----------------------------------------------------------------------------
  82. -- Interrupt vector numbers
  83. ---------------------------------------------------------------------------- */
  84. /*! \addtogroup Interrupt_vector_numbers Interrupt vector numbers */
  85. /*! \{ */
  86. /*! Interrupt Number Definitions */
  87. typedef enum IRQn {
  88. /* Core interrupts */
  89. NonMaskableInt_IRQn = -14, /*!< Non Maskable Interrupt */
  90. MemoryManagement_IRQn = -12, /*!< Cortex-M4 Memory Management Interrupt */
  91. BusFault_IRQn = -11, /*!< Cortex-M4 Bus Fault Interrupt */
  92. UsageFault_IRQn = -10, /*!< Cortex-M4 Usage Fault Interrupt */
  93. SVCall_IRQn = -5, /*!< Cortex-M4 SV Call Interrupt */
  94. DebugMonitor_IRQn = -4, /*!< Cortex-M4 Debug Monitor Interrupt */
  95. PendSV_IRQn = -2, /*!< Cortex-M4 Pend SV Interrupt */
  96. SysTick_IRQn = -1, /*!< Cortex-M4 System Tick Interrupt */
  97. /* Device specific interrupts */
  98. DMA0_IRQn = 0, /*!< DMA Channel 0 Transfer Complete */
  99. DMA1_IRQn = 1, /*!< DMA Channel 1 Transfer Complete */
  100. DMA2_IRQn = 2, /*!< DMA Channel 2 Transfer Complete */
  101. DMA3_IRQn = 3, /*!< DMA Channel 3 Transfer Complete */
  102. DMA4_IRQn = 4, /*!< DMA Channel 4 Transfer Complete */
  103. DMA5_IRQn = 5, /*!< DMA Channel 5 Transfer Complete */
  104. DMA6_IRQn = 6, /*!< DMA Channel 6 Transfer Complete */
  105. DMA7_IRQn = 7, /*!< DMA Channel 7 Transfer Complete */
  106. DMA8_IRQn = 8, /*!< DMA Channel 8 Transfer Complete */
  107. DMA9_IRQn = 9, /*!< DMA Channel 9 Transfer Complete */
  108. DMA10_IRQn = 10, /*!< DMA Channel 10 Transfer Complete */
  109. DMA11_IRQn = 11, /*!< DMA Channel 11 Transfer Complete */
  110. DMA12_IRQn = 12, /*!< DMA Channel 12 Transfer Complete */
  111. DMA13_IRQn = 13, /*!< DMA Channel 13 Transfer Complete */
  112. DMA14_IRQn = 14, /*!< DMA Channel 14 Transfer Complete */
  113. DMA15_IRQn = 15, /*!< DMA Channel 15 Transfer Complete */
  114. DMA_Error_IRQn = 16, /*!< DMA Error Interrupt */
  115. MCM_IRQn = 17, /*!< Normal Interrupt */
  116. FTFL_IRQn = 18, /*!< FTFL Interrupt */
  117. Read_Collision_IRQn = 19, /*!< Read Collision Interrupt */
  118. LVD_LVW_IRQn = 20, /*!< Low Voltage Detect, Low Voltage Warning */
  119. LLW_IRQn = 21, /*!< Low Leakage Wakeup */
  120. Watchdog_IRQn = 22, /*!< WDOG Interrupt */
  121. Reserved39_IRQn = 23, /*!< Reserved interrupt 39 */
  122. I2C0_IRQn = 24, /*!< I2C0 interrupt */
  123. I2C1_IRQn = 25, /*!< I2C1 interrupt */
  124. SPI0_IRQn = 26, /*!< SPI0 Interrupt */
  125. SPI1_IRQn = 27, /*!< SPI1 Interrupt */
  126. SPI2_IRQn = 28, /*!< SPI2 Interrupt */
  127. CAN0_ORed_Message_buffer_IRQn = 29, /*!< CAN0 OR'd Message Buffers Interrupt */
  128. CAN0_Bus_Off_IRQn = 30, /*!< CAN0 Bus Off Interrupt */
  129. CAN0_Error_IRQn = 31, /*!< CAN0 Error Interrupt */
  130. CAN0_Tx_Warning_IRQn = 32, /*!< CAN0 Tx Warning Interrupt */
  131. CAN0_Rx_Warning_IRQn = 33, /*!< CAN0 Rx Warning Interrupt */
  132. CAN0_Wake_Up_IRQn = 34, /*!< CAN0 Wake Up Interrupt */
  133. Reserved51_IRQn = 35, /*!< Reserved interrupt 51 */
  134. Reserved52_IRQn = 36, /*!< Reserved interrupt 52 */
  135. CAN1_ORed_Message_buffer_IRQn = 37, /*!< CAN1 OR'd Message Buffers Interrupt */
  136. CAN1_Bus_Off_IRQn = 38, /*!< CAN1 Bus Off Interrupt */
  137. CAN1_Error_IRQn = 39, /*!< CAN1 Error Interrupt */
  138. CAN1_Tx_Warning_IRQn = 40, /*!< CAN1 Tx Warning Interrupt */
  139. CAN1_Rx_Warning_IRQn = 41, /*!< CAN1 Rx Warning Interrupt */
  140. CAN1_Wake_Up_IRQn = 42, /*!< CAN1 Wake Up Interrupt */
  141. Reserved59_IRQn = 43, /*!< Reserved interrupt 59 */
  142. Reserved60_IRQn = 44, /*!< Reserved interrupt 60 */
  143. UART0_RX_TX_IRQn = 45, /*!< UART0 Receive/Transmit interrupt */
  144. UART0_ERR_IRQn = 46, /*!< UART0 Error interrupt */
  145. UART1_RX_TX_IRQn = 47, /*!< UART1 Receive/Transmit interrupt */
  146. UART1_ERR_IRQn = 48, /*!< UART1 Error interrupt */
  147. UART2_RX_TX_IRQn = 49, /*!< UART2 Receive/Transmit interrupt */
  148. UART2_ERR_IRQn = 50, /*!< UART2 Error interrupt */
  149. UART3_RX_TX_IRQn = 51, /*!< UART3 Receive/Transmit interrupt */
  150. UART3_ERR_IRQn = 52, /*!< UART3 Error interrupt */
  151. UART4_RX_TX_IRQn = 53, /*!< UART4 Receive/Transmit interrupt */
  152. UART4_ERR_IRQn = 54, /*!< UART4 Error interrupt */
  153. UART5_RX_TX_IRQn = 55, /*!< UART5 Receive/Transmit interrupt */
  154. UART5_ERR_IRQn = 56, /*!< UART5 Error interrupt */
  155. ADC0_IRQn = 57, /*!< ADC0 interrupt */
  156. ADC1_IRQn = 58, /*!< ADC1 interrupt */
  157. CMP0_IRQn = 59, /*!< CMP0 interrupt */
  158. CMP1_IRQn = 60, /*!< CMP1 interrupt */
  159. CMP2_IRQn = 61, /*!< CMP2 interrupt */
  160. FTM0_IRQn = 62, /*!< FTM0 fault, overflow and channels interrupt */
  161. FTM1_IRQn = 63, /*!< FTM1 fault, overflow and channels interrupt */
  162. FTM2_IRQn = 64, /*!< FTM2 fault, overflow and channels interrupt */
  163. CMT_IRQn = 65, /*!< CMT interrupt */
  164. RTC_IRQn = 66, /*!< RTC interrupt */
  165. Reserved83_IRQn = 67, /*!< Reserved interrupt 83 */
  166. PIT0_IRQn = 68, /*!< PIT timer channel 0 interrupt */
  167. PIT1_IRQn = 69, /*!< PIT timer channel 1 interrupt */
  168. PIT2_IRQn = 70, /*!< PIT timer channel 2 interrupt */
  169. PIT3_IRQn = 71, /*!< PIT timer channel 3 interrupt */
  170. PDB0_IRQn = 72, /*!< PDB0 Interrupt */
  171. USB0_IRQn = 73, /*!< USB0 interrupt */
  172. USBDCD_IRQn = 74, /*!< USBDCD Interrupt */
  173. Reserved91_IRQn = 75, /*!< Reserved interrupt 91 */
  174. Reserved92_IRQn = 76, /*!< Reserved interrupt 92 */
  175. Reserved93_IRQn = 77, /*!< Reserved interrupt 93 */
  176. Reserved94_IRQn = 78, /*!< Reserved interrupt 94 */
  177. I2S0_IRQn = 79, /*!< I2S0 Interrupt */
  178. SDHC_IRQn = 80, /*!< SDHC Interrupt */
  179. DAC0_IRQn = 81, /*!< DAC0 interrupt */
  180. DAC1_IRQn = 82, /*!< DAC1 interrupt */
  181. TSI0_IRQn = 83, /*!< TSI0 Interrupt */
  182. MCG_IRQn = 84, /*!< MCG Interrupt */
  183. LPTimer_IRQn = 85, /*!< LPTimer interrupt */
  184. LCD_IRQn = 86, /*!< Segment LCD Interrupt */
  185. PORTA_IRQn = 87, /*!< Port A interrupt */
  186. PORTB_IRQn = 88, /*!< Port B interrupt */
  187. PORTC_IRQn = 89, /*!< Port C interrupt */
  188. PORTD_IRQn = 90, /*!< Port D interrupt */
  189. PORTE_IRQn = 91, /*!< Port E interrupt */
  190. Reserved108_IRQn = 92, /*!< Reserved interrupt 108 */
  191. Reserved109_IRQn = 93, /*!< Reserved interrupt 109 */
  192. Reserved110_IRQn = 94, /*!< Reserved interrupt 110 */
  193. Reserved111_IRQn = 95, /*!< Reserved interrupt 111 */
  194. Reserved112_IRQn = 96, /*!< Reserved interrupt 112 */
  195. Reserved113_IRQn = 97, /*!< Reserved interrupt 113 */
  196. Reserved114_IRQn = 98, /*!< Reserved interrupt 114 */
  197. Reserved115_IRQn = 99, /*!< Reserved interrupt 115 */
  198. Reserved116_IRQn = 100, /*!< Reserved interrupt 116 */
  199. Reserved117_IRQn = 101, /*!< Reserved interrupt 117 */
  200. Reserved118_IRQn = 102, /*!< Reserved interrupt 118 */
  201. Reserved119_IRQn = 103 /*!< Reserved interrupt 119 */
  202. } IRQn_Type;
  203. /*! \} */ /* end of group Interrupt_vector_numbers */
  204. /* ----------------------------------------------------------------------------
  205. -- Cortex M4 Core Configuration
  206. ---------------------------------------------------------------------------- */
  207. /*! \addtogroup Cortex_Core_Configuration Cortex M4 Core Configuration */
  208. /*! \{ */
  209. #define __MPU_PRESENT 0 /*!< Defines if an MPU is present or not */
  210. #define __NVIC_PRIO_BITS 4 /*!< Number of priority bits implemented in the NVIC */
  211. #define __Vendor_SysTickConfig 0 /*!< Vendor specific implementation of SysTickConfig is defined */
  212. #include "core_cm4.h" /* Core Peripheral Access Layer */
  213. #include "system_PK40X256VLQ100.h" /* Device specific configuration file */
  214. /*! \} */ /* end of group Cortex_Core_Configuration */
  215. /* ----------------------------------------------------------------------------
  216. -- Device Peripheral Access Layer
  217. ---------------------------------------------------------------------------- */
  218. /*! \addtogroup Peripheral_access_layer Device Peripheral Access Layer */
  219. /*! \{ */
  220. /*
  221. ** Start of section using anonymous unions
  222. */
  223. #if defined(__ARMCC_VERSION)
  224. #pragma push
  225. #pragma anon_unions
  226. #elif defined(__CWCC__)
  227. #pragma push
  228. #pragma cpp_extensions on
  229. #elif defined(__GNUC__)
  230. /* anonymous unions are enabled by default */
  231. #elif defined(__IAR_SYSTEMS_ICC__)
  232. #pragma language=extended
  233. #else
  234. #error Not supported compiler type
  235. #endif
  236. /* ----------------------------------------------------------------------------
  237. -- ADC Peripheral Access Layer
  238. ---------------------------------------------------------------------------- */
  239. /*! \addtogroup ADC_Peripheral_Access_Layer ADC Peripheral Access Layer */
  240. /*! \{ */
  241. /*! ADC - Register Layout Typedef */
  242. typedef struct {
  243. __IO uint32_t SC1[2]; /*!< ADC status and control registers 1, array offset: 0x0, array step: 0x4 */
  244. __IO uint32_t CFG1; /*!< ADC configuration register 1, offset: 0x8 */
  245. __IO uint32_t CFG2; /*!< Configuration register 2, offset: 0xC */
  246. __I uint32_t R[2]; /*!< ADC data result register, array offset: 0x10, array step: 0x4 */
  247. __IO uint32_t CV1; /*!< Compare value registers, offset: 0x18 */
  248. __IO uint32_t CV2; /*!< Compare value registers, offset: 0x1C */
  249. __IO uint32_t SC2; /*!< Status and control register 2, offset: 0x20 */
  250. __IO uint32_t SC3; /*!< Status and control register 3, offset: 0x24 */
  251. __IO uint32_t OFS; /*!< ADC offset correction register, offset: 0x28 */
  252. __IO uint32_t PG; /*!< ADC plus-side gain register, offset: 0x2C */
  253. __IO uint32_t MG; /*!< ADC minus-side gain register, offset: 0x30 */
  254. __IO uint32_t CLPD; /*!< ADC plus-side general calibration value register, offset: 0x34 */
  255. __IO uint32_t CLPS; /*!< ADC plus-side general calibration value register, offset: 0x38 */
  256. __IO uint32_t CLP4; /*!< ADC plus-side general calibration value register, offset: 0x3C */
  257. __IO uint32_t CLP3; /*!< ADC plus-side general calibration value register, offset: 0x40 */
  258. __IO uint32_t CLP2; /*!< ADC plus-side general calibration value register, offset: 0x44 */
  259. __IO uint32_t CLP1; /*!< ADC plus-side general calibration value register, offset: 0x48 */
  260. __IO uint32_t CLP0; /*!< ADC plus-side general calibration value register, offset: 0x4C */
  261. __IO uint32_t PGA; /*!< ADC PGA register, offset: 0x50 */
  262. __IO uint32_t CLMD; /*!< ADC minus-side general calibration value register, offset: 0x54 */
  263. __IO uint32_t CLMS; /*!< ADC minus-side general calibration value register, offset: 0x58 */
  264. __IO uint32_t CLM4; /*!< ADC minus-side general calibration value register, offset: 0x5C */
  265. __IO uint32_t CLM3; /*!< ADC minus-side general calibration value register, offset: 0x60 */
  266. __IO uint32_t CLM2; /*!< ADC minus-side general calibration value register, offset: 0x64 */
  267. __IO uint32_t CLM1; /*!< ADC minus-side general calibration value register, offset: 0x68 */
  268. __IO uint32_t CLM0; /*!< ADC minus-side general calibration value register, offset: 0x6C */
  269. } ADC_Type;
  270. /* ----------------------------------------------------------------------------
  271. -- ADC Register Masks
  272. ---------------------------------------------------------------------------- */
  273. /*! \addtogroup ADC_Register_Masks ADC Register Masks */
  274. /*! \{ */
  275. /* SC1 Bit Fields */
  276. #define ADC_SC1_ADCH_MASK 0x1Fu
  277. #define ADC_SC1_ADCH_SHIFT 0
  278. #define ADC_SC1_ADCH(x) (((uint32_t)(((uint32_t)(x))<<ADC_SC1_ADCH_SHIFT))&ADC_SC1_ADCH_MASK)
  279. #define ADC_SC1_DIFF_MASK 0x20u
  280. #define ADC_SC1_DIFF_SHIFT 5
  281. #define ADC_SC1_AIEN_MASK 0x40u
  282. #define ADC_SC1_AIEN_SHIFT 6
  283. #define ADC_SC1_COCO_MASK 0x80u
  284. #define ADC_SC1_COCO_SHIFT 7
  285. /* CFG1 Bit Fields */
  286. #define ADC_CFG1_ADICLK_MASK 0x3u
  287. #define ADC_CFG1_ADICLK_SHIFT 0
  288. #define ADC_CFG1_ADICLK(x) (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_ADICLK_SHIFT))&ADC_CFG1_ADICLK_MASK)
  289. #define ADC_CFG1_MODE_MASK 0xCu
  290. #define ADC_CFG1_MODE_SHIFT 2
  291. #define ADC_CFG1_MODE(x) (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_MODE_SHIFT))&ADC_CFG1_MODE_MASK)
  292. #define ADC_CFG1_ADLSMP_MASK 0x10u
  293. #define ADC_CFG1_ADLSMP_SHIFT 4
  294. #define ADC_CFG1_ADIV_MASK 0x60u
  295. #define ADC_CFG1_ADIV_SHIFT 5
  296. #define ADC_CFG1_ADIV(x) (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_ADIV_SHIFT))&ADC_CFG1_ADIV_MASK)
  297. #define ADC_CFG1_ADLPC_MASK 0x80u
  298. #define ADC_CFG1_ADLPC_SHIFT 7
  299. /* CFG2 Bit Fields */
  300. #define ADC_CFG2_ADLSTS_MASK 0x3u
  301. #define ADC_CFG2_ADLSTS_SHIFT 0
  302. #define ADC_CFG2_ADLSTS(x) (((uint32_t)(((uint32_t)(x))<<ADC_CFG2_ADLSTS_SHIFT))&ADC_CFG2_ADLSTS_MASK)
  303. #define ADC_CFG2_ADHSC_MASK 0x4u
  304. #define ADC_CFG2_ADHSC_SHIFT 2
  305. #define ADC_CFG2_ADACKEN_MASK 0x8u
  306. #define ADC_CFG2_ADACKEN_SHIFT 3
  307. #define ADC_CFG2_MUXSEL_MASK 0x10u
  308. #define ADC_CFG2_MUXSEL_SHIFT 4
  309. /* R Bit Fields */
  310. #define ADC_R_D_MASK 0xFFFFu
  311. #define ADC_R_D_SHIFT 0
  312. #define ADC_R_D(x) (((uint32_t)(((uint32_t)(x))<<ADC_R_D_SHIFT))&ADC_R_D_MASK)
  313. /* CV1 Bit Fields */
  314. #define ADC_CV1_CV_MASK 0xFFFFu
  315. #define ADC_CV1_CV_SHIFT 0
  316. #define ADC_CV1_CV(x) (((uint32_t)(((uint32_t)(x))<<ADC_CV1_CV_SHIFT))&ADC_CV1_CV_MASK)
  317. /* CV2 Bit Fields */
  318. #define ADC_CV2_CV_MASK 0xFFFFu
  319. #define ADC_CV2_CV_SHIFT 0
  320. #define ADC_CV2_CV(x) (((uint32_t)(((uint32_t)(x))<<ADC_CV2_CV_SHIFT))&ADC_CV2_CV_MASK)
  321. /* SC2 Bit Fields */
  322. #define ADC_SC2_REFSEL_MASK 0x3u
  323. #define ADC_SC2_REFSEL_SHIFT 0
  324. #define ADC_SC2_REFSEL(x) (((uint32_t)(((uint32_t)(x))<<ADC_SC2_REFSEL_SHIFT))&ADC_SC2_REFSEL_MASK)
  325. #define ADC_SC2_DMAEN_MASK 0x4u
  326. #define ADC_SC2_DMAEN_SHIFT 2
  327. #define ADC_SC2_ACREN_MASK 0x8u
  328. #define ADC_SC2_ACREN_SHIFT 3
  329. #define ADC_SC2_ACFGT_MASK 0x10u
  330. #define ADC_SC2_ACFGT_SHIFT 4
  331. #define ADC_SC2_ACFE_MASK 0x20u
  332. #define ADC_SC2_ACFE_SHIFT 5
  333. #define ADC_SC2_ADTRG_MASK 0x40u
  334. #define ADC_SC2_ADTRG_SHIFT 6
  335. #define ADC_SC2_ADACT_MASK 0x80u
  336. #define ADC_SC2_ADACT_SHIFT 7
  337. /* SC3 Bit Fields */
  338. #define ADC_SC3_AVGS_MASK 0x3u
  339. #define ADC_SC3_AVGS_SHIFT 0
  340. #define ADC_SC3_AVGS(x) (((uint32_t)(((uint32_t)(x))<<ADC_SC3_AVGS_SHIFT))&ADC_SC3_AVGS_MASK)
  341. #define ADC_SC3_AVGE_MASK 0x4u
  342. #define ADC_SC3_AVGE_SHIFT 2
  343. #define ADC_SC3_ADCO_MASK 0x8u
  344. #define ADC_SC3_ADCO_SHIFT 3
  345. #define ADC_SC3_CALF_MASK 0x40u
  346. #define ADC_SC3_CALF_SHIFT 6
  347. #define ADC_SC3_CAL_MASK 0x80u
  348. #define ADC_SC3_CAL_SHIFT 7
  349. /* OFS Bit Fields */
  350. #define ADC_OFS_OFS_MASK 0xFFFFu
  351. #define ADC_OFS_OFS_SHIFT 0
  352. #define ADC_OFS_OFS(x) (((uint32_t)(((uint32_t)(x))<<ADC_OFS_OFS_SHIFT))&ADC_OFS_OFS_MASK)
  353. /* PG Bit Fields */
  354. #define ADC_PG_PG_MASK 0xFFFFu
  355. #define ADC_PG_PG_SHIFT 0
  356. #define ADC_PG_PG(x) (((uint32_t)(((uint32_t)(x))<<ADC_PG_PG_SHIFT))&ADC_PG_PG_MASK)
  357. /* MG Bit Fields */
  358. #define ADC_MG_MG_MASK 0xFFFFu
  359. #define ADC_MG_MG_SHIFT 0
  360. #define ADC_MG_MG(x) (((uint32_t)(((uint32_t)(x))<<ADC_MG_MG_SHIFT))&ADC_MG_MG_MASK)
  361. /* CLPD Bit Fields */
  362. #define ADC_CLPD_CLPD_MASK 0x3Fu
  363. #define ADC_CLPD_CLPD_SHIFT 0
  364. #define ADC_CLPD_CLPD(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLPD_CLPD_SHIFT))&ADC_CLPD_CLPD_MASK)
  365. /* CLPS Bit Fields */
  366. #define ADC_CLPS_CLPS_MASK 0x3Fu
  367. #define ADC_CLPS_CLPS_SHIFT 0
  368. #define ADC_CLPS_CLPS(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLPS_CLPS_SHIFT))&ADC_CLPS_CLPS_MASK)
  369. /* CLP4 Bit Fields */
  370. #define ADC_CLP4_CLP4_MASK 0x3FFu
  371. #define ADC_CLP4_CLP4_SHIFT 0
  372. #define ADC_CLP4_CLP4(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLP4_CLP4_SHIFT))&ADC_CLP4_CLP4_MASK)
  373. /* CLP3 Bit Fields */
  374. #define ADC_CLP3_CLP3_MASK 0x1FFu
  375. #define ADC_CLP3_CLP3_SHIFT 0
  376. #define ADC_CLP3_CLP3(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLP3_CLP3_SHIFT))&ADC_CLP3_CLP3_MASK)
  377. /* CLP2 Bit Fields */
  378. #define ADC_CLP2_CLP2_MASK 0xFFu
  379. #define ADC_CLP2_CLP2_SHIFT 0
  380. #define ADC_CLP2_CLP2(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLP2_CLP2_SHIFT))&ADC_CLP2_CLP2_MASK)
  381. /* CLP1 Bit Fields */
  382. #define ADC_CLP1_CLP1_MASK 0x7Fu
  383. #define ADC_CLP1_CLP1_SHIFT 0
  384. #define ADC_CLP1_CLP1(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLP1_CLP1_SHIFT))&ADC_CLP1_CLP1_MASK)
  385. /* CLP0 Bit Fields */
  386. #define ADC_CLP0_CLP0_MASK 0x3Fu
  387. #define ADC_CLP0_CLP0_SHIFT 0
  388. #define ADC_CLP0_CLP0(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLP0_CLP0_SHIFT))&ADC_CLP0_CLP0_MASK)
  389. /* PGA Bit Fields */
  390. #define ADC_PGA_PGAG_MASK 0xF0000u
  391. #define ADC_PGA_PGAG_SHIFT 16
  392. #define ADC_PGA_PGAG(x) (((uint32_t)(((uint32_t)(x))<<ADC_PGA_PGAG_SHIFT))&ADC_PGA_PGAG_MASK)
  393. #define ADC_PGA_PGAEN_MASK 0x800000u
  394. #define ADC_PGA_PGAEN_SHIFT 23
  395. /* CLMD Bit Fields */
  396. #define ADC_CLMD_CLMD_MASK 0x3Fu
  397. #define ADC_CLMD_CLMD_SHIFT 0
  398. #define ADC_CLMD_CLMD(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLMD_CLMD_SHIFT))&ADC_CLMD_CLMD_MASK)
  399. /* CLMS Bit Fields */
  400. #define ADC_CLMS_CLMS_MASK 0x3Fu
  401. #define ADC_CLMS_CLMS_SHIFT 0
  402. #define ADC_CLMS_CLMS(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLMS_CLMS_SHIFT))&ADC_CLMS_CLMS_MASK)
  403. /* CLM4 Bit Fields */
  404. #define ADC_CLM4_CLM4_MASK 0x3FFu
  405. #define ADC_CLM4_CLM4_SHIFT 0
  406. #define ADC_CLM4_CLM4(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLM4_CLM4_SHIFT))&ADC_CLM4_CLM4_MASK)
  407. /* CLM3 Bit Fields */
  408. #define ADC_CLM3_CLM3_MASK 0x1FFu
  409. #define ADC_CLM3_CLM3_SHIFT 0
  410. #define ADC_CLM3_CLM3(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLM3_CLM3_SHIFT))&ADC_CLM3_CLM3_MASK)
  411. /* CLM2 Bit Fields */
  412. #define ADC_CLM2_CLM2_MASK 0xFFu
  413. #define ADC_CLM2_CLM2_SHIFT 0
  414. #define ADC_CLM2_CLM2(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLM2_CLM2_SHIFT))&ADC_CLM2_CLM2_MASK)
  415. /* CLM1 Bit Fields */
  416. #define ADC_CLM1_CLM1_MASK 0x7Fu
  417. #define ADC_CLM1_CLM1_SHIFT 0
  418. #define ADC_CLM1_CLM1(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLM1_CLM1_SHIFT))&ADC_CLM1_CLM1_MASK)
  419. /* CLM0 Bit Fields */
  420. #define ADC_CLM0_CLM0_MASK 0x3Fu
  421. #define ADC_CLM0_CLM0_SHIFT 0
  422. #define ADC_CLM0_CLM0(x) (((uint32_t)(((uint32_t)(x))<<ADC_CLM0_CLM0_SHIFT))&ADC_CLM0_CLM0_MASK)
  423. /*! \} */ /* end of group ADC_Register_Masks */
  424. /* ADC - Peripheral instance base addresses */
  425. /*! Peripheral ADC0 base address */
  426. #define ADC0_BASE (0x4003B000u)
  427. /*! Peripheral ADC0 base pointer */
  428. #define ADC0 ((ADC_Type *)ADC0_BASE)
  429. /*! Peripheral ADC1 base address */
  430. #define ADC1_BASE (0x400BB000u)
  431. /*! Peripheral ADC1 base pointer */
  432. #define ADC1 ((ADC_Type *)ADC1_BASE)
  433. /*! \} */ /* end of group ADC_Peripheral_Access_Layer */
  434. /* ----------------------------------------------------------------------------
  435. -- AIPS Peripheral Access Layer
  436. ---------------------------------------------------------------------------- */
  437. /*! \addtogroup AIPS_Peripheral_Access_Layer AIPS Peripheral Access Layer */
  438. /*! \{ */
  439. /*! AIPS - Register Layout Typedef */
  440. typedef struct {
  441. __IO uint32_t MPRA; /*!< Master Privilege Register A, offset: 0x0 */
  442. uint8_t RESERVED_0[28];
  443. __IO uint32_t PACRA; /*!< Peripheral Access Control Register, offset: 0x20 */
  444. __IO uint32_t PACRB; /*!< Peripheral Access Control Register, offset: 0x24 */
  445. __IO uint32_t PACRC; /*!< Peripheral Access Control Register, offset: 0x28 */
  446. __IO uint32_t PACRD; /*!< Peripheral Access Control Register, offset: 0x2C */
  447. uint8_t RESERVED_1[16];
  448. __IO uint32_t PACRE; /*!< Peripheral Access Control Register, offset: 0x40 */
  449. __IO uint32_t PACRF; /*!< Peripheral Access Control Register, offset: 0x44 */
  450. __IO uint32_t PACRG; /*!< Peripheral Access Control Register, offset: 0x48 */
  451. __IO uint32_t PACRH; /*!< Peripheral Access Control Register, offset: 0x4C */
  452. __IO uint32_t PACRI; /*!< Peripheral Access Control Register, offset: 0x50 */
  453. __IO uint32_t PACRJ; /*!< Peripheral Access Control Register, offset: 0x54 */
  454. __IO uint32_t PACRK; /*!< Peripheral Access Control Register, offset: 0x58 */
  455. __IO uint32_t PACRL; /*!< Peripheral Access Control Register, offset: 0x5C */
  456. __IO uint32_t PACRM; /*!< Peripheral Access Control Register, offset: 0x60 */
  457. __IO uint32_t PACRN; /*!< Peripheral Access Control Register, offset: 0x64 */
  458. __IO uint32_t PACRO; /*!< Peripheral Access Control Register, offset: 0x68 */
  459. __IO uint32_t PACRP; /*!< Peripheral Access Control Register, offset: 0x6C */
  460. } AIPS_Type;
  461. /* ----------------------------------------------------------------------------
  462. -- AIPS Register Masks
  463. ---------------------------------------------------------------------------- */
  464. /*! \addtogroup AIPS_Register_Masks AIPS Register Masks */
  465. /*! \{ */
  466. /* MPRA Bit Fields */
  467. #define AIPS_MPRA_MPL5_MASK 0x100u
  468. #define AIPS_MPRA_MPL5_SHIFT 8
  469. #define AIPS_MPRA_MTW5_MASK 0x200u
  470. #define AIPS_MPRA_MTW5_SHIFT 9
  471. #define AIPS_MPRA_MTR5_MASK 0x400u
  472. #define AIPS_MPRA_MTR5_SHIFT 10
  473. #define AIPS_MPRA_MPL4_MASK 0x1000u
  474. #define AIPS_MPRA_MPL4_SHIFT 12
  475. #define AIPS_MPRA_MTW4_MASK 0x2000u
  476. #define AIPS_MPRA_MTW4_SHIFT 13
  477. #define AIPS_MPRA_MTR4_MASK 0x4000u
  478. #define AIPS_MPRA_MTR4_SHIFT 14
  479. #define AIPS_MPRA_MPL2_MASK 0x100000u
  480. #define AIPS_MPRA_MPL2_SHIFT 20
  481. #define AIPS_MPRA_MTW2_MASK 0x200000u
  482. #define AIPS_MPRA_MTW2_SHIFT 21
  483. #define AIPS_MPRA_MTR2_MASK 0x400000u
  484. #define AIPS_MPRA_MTR2_SHIFT 22
  485. #define AIPS_MPRA_MPL1_MASK 0x1000000u
  486. #define AIPS_MPRA_MPL1_SHIFT 24
  487. #define AIPS_MPRA_MTW1_MASK 0x2000000u
  488. #define AIPS_MPRA_MTW1_SHIFT 25
  489. #define AIPS_MPRA_MTR1_MASK 0x4000000u
  490. #define AIPS_MPRA_MTR1_SHIFT 26
  491. #define AIPS_MPRA_MPL0_MASK 0x10000000u
  492. #define AIPS_MPRA_MPL0_SHIFT 28
  493. #define AIPS_MPRA_MTW0_MASK 0x20000000u
  494. #define AIPS_MPRA_MTW0_SHIFT 29
  495. #define AIPS_MPRA_MTR0_MASK 0x40000000u
  496. #define AIPS_MPRA_MTR0_SHIFT 30
  497. /* PACRA Bit Fields */
  498. #define AIPS_PACRA_TP7_MASK 0x1u
  499. #define AIPS_PACRA_TP7_SHIFT 0
  500. #define AIPS_PACRA_WP7_MASK 0x2u
  501. #define AIPS_PACRA_WP7_SHIFT 1
  502. #define AIPS_PACRA_SP7_MASK 0x4u
  503. #define AIPS_PACRA_SP7_SHIFT 2
  504. #define AIPS_PACRA_TP6_MASK 0x10u
  505. #define AIPS_PACRA_TP6_SHIFT 4
  506. #define AIPS_PACRA_WP6_MASK 0x20u
  507. #define AIPS_PACRA_WP6_SHIFT 5
  508. #define AIPS_PACRA_SP6_MASK 0x40u
  509. #define AIPS_PACRA_SP6_SHIFT 6
  510. #define AIPS_PACRA_TP5_MASK 0x100u
  511. #define AIPS_PACRA_TP5_SHIFT 8
  512. #define AIPS_PACRA_WP5_MASK 0x200u
  513. #define AIPS_PACRA_WP5_SHIFT 9
  514. #define AIPS_PACRA_SP5_MASK 0x400u
  515. #define AIPS_PACRA_SP5_SHIFT 10
  516. #define AIPS_PACRA_TP4_MASK 0x1000u
  517. #define AIPS_PACRA_TP4_SHIFT 12
  518. #define AIPS_PACRA_WP4_MASK 0x2000u
  519. #define AIPS_PACRA_WP4_SHIFT 13
  520. #define AIPS_PACRA_SP4_MASK 0x4000u
  521. #define AIPS_PACRA_SP4_SHIFT 14
  522. #define AIPS_PACRA_TP3_MASK 0x10000u
  523. #define AIPS_PACRA_TP3_SHIFT 16
  524. #define AIPS_PACRA_WP3_MASK 0x20000u
  525. #define AIPS_PACRA_WP3_SHIFT 17
  526. #define AIPS_PACRA_SP3_MASK 0x40000u
  527. #define AIPS_PACRA_SP3_SHIFT 18
  528. #define AIPS_PACRA_TP2_MASK 0x100000u
  529. #define AIPS_PACRA_TP2_SHIFT 20
  530. #define AIPS_PACRA_WP2_MASK 0x200000u
  531. #define AIPS_PACRA_WP2_SHIFT 21
  532. #define AIPS_PACRA_SP2_MASK 0x400000u
  533. #define AIPS_PACRA_SP2_SHIFT 22
  534. #define AIPS_PACRA_TP1_MASK 0x1000000u
  535. #define AIPS_PACRA_TP1_SHIFT 24
  536. #define AIPS_PACRA_WP1_MASK 0x2000000u
  537. #define AIPS_PACRA_WP1_SHIFT 25
  538. #define AIPS_PACRA_SP1_MASK 0x4000000u
  539. #define AIPS_PACRA_SP1_SHIFT 26
  540. #define AIPS_PACRA_TP0_MASK 0x10000000u
  541. #define AIPS_PACRA_TP0_SHIFT 28
  542. #define AIPS_PACRA_WP0_MASK 0x20000000u
  543. #define AIPS_PACRA_WP0_SHIFT 29
  544. #define AIPS_PACRA_SP0_MASK 0x40000000u
  545. #define AIPS_PACRA_SP0_SHIFT 30
  546. /* PACRB Bit Fields */
  547. #define AIPS_PACRB_TP7_MASK 0x1u
  548. #define AIPS_PACRB_TP7_SHIFT 0
  549. #define AIPS_PACRB_WP7_MASK 0x2u
  550. #define AIPS_PACRB_WP7_SHIFT 1
  551. #define AIPS_PACRB_SP7_MASK 0x4u
  552. #define AIPS_PACRB_SP7_SHIFT 2
  553. #define AIPS_PACRB_TP6_MASK 0x10u
  554. #define AIPS_PACRB_TP6_SHIFT 4
  555. #define AIPS_PACRB_WP6_MASK 0x20u
  556. #define AIPS_PACRB_WP6_SHIFT 5
  557. #define AIPS_PACRB_SP6_MASK 0x40u
  558. #define AIPS_PACRB_SP6_SHIFT 6
  559. #define AIPS_PACRB_TP5_MASK 0x100u
  560. #define AIPS_PACRB_TP5_SHIFT 8
  561. #define AIPS_PACRB_WP5_MASK 0x200u
  562. #define AIPS_PACRB_WP5_SHIFT 9
  563. #define AIPS_PACRB_SP5_MASK 0x400u
  564. #define AIPS_PACRB_SP5_SHIFT 10
  565. #define AIPS_PACRB_TP4_MASK 0x1000u
  566. #define AIPS_PACRB_TP4_SHIFT 12
  567. #define AIPS_PACRB_WP4_MASK 0x2000u
  568. #define AIPS_PACRB_WP4_SHIFT 13
  569. #define AIPS_PACRB_SP4_MASK 0x4000u
  570. #define AIPS_PACRB_SP4_SHIFT 14
  571. #define AIPS_PACRB_TP3_MASK 0x10000u
  572. #define AIPS_PACRB_TP3_SHIFT 16
  573. #define AIPS_PACRB_WP3_MASK 0x20000u
  574. #define AIPS_PACRB_WP3_SHIFT 17
  575. #define AIPS_PACRB_SP3_MASK 0x40000u
  576. #define AIPS_PACRB_SP3_SHIFT 18
  577. #define AIPS_PACRB_TP2_MASK 0x100000u
  578. #define AIPS_PACRB_TP2_SHIFT 20
  579. #define AIPS_PACRB_WP2_MASK 0x200000u
  580. #define AIPS_PACRB_WP2_SHIFT 21
  581. #define AIPS_PACRB_SP2_MASK 0x400000u
  582. #define AIPS_PACRB_SP2_SHIFT 22
  583. #define AIPS_PACRB_TP1_MASK 0x1000000u
  584. #define AIPS_PACRB_TP1_SHIFT 24
  585. #define AIPS_PACRB_WP1_MASK 0x2000000u
  586. #define AIPS_PACRB_WP1_SHIFT 25
  587. #define AIPS_PACRB_SP1_MASK 0x4000000u
  588. #define AIPS_PACRB_SP1_SHIFT 26
  589. #define AIPS_PACRB_TP0_MASK 0x10000000u
  590. #define AIPS_PACRB_TP0_SHIFT 28
  591. #define AIPS_PACRB_WP0_MASK 0x20000000u
  592. #define AIPS_PACRB_WP0_SHIFT 29
  593. #define AIPS_PACRB_SP0_MASK 0x40000000u
  594. #define AIPS_PACRB_SP0_SHIFT 30
  595. /* PACRC Bit Fields */
  596. #define AIPS_PACRC_TP7_MASK 0x1u
  597. #define AIPS_PACRC_TP7_SHIFT 0
  598. #define AIPS_PACRC_WP7_MASK 0x2u
  599. #define AIPS_PACRC_WP7_SHIFT 1
  600. #define AIPS_PACRC_SP7_MASK 0x4u
  601. #define AIPS_PACRC_SP7_SHIFT 2
  602. #define AIPS_PACRC_TP6_MASK 0x10u
  603. #define AIPS_PACRC_TP6_SHIFT 4
  604. #define AIPS_PACRC_WP6_MASK 0x20u
  605. #define AIPS_PACRC_WP6_SHIFT 5
  606. #define AIPS_PACRC_SP6_MASK 0x40u
  607. #define AIPS_PACRC_SP6_SHIFT 6
  608. #define AIPS_PACRC_TP5_MASK 0x100u
  609. #define AIPS_PACRC_TP5_SHIFT 8
  610. #define AIPS_PACRC_WP5_MASK 0x200u
  611. #define AIPS_PACRC_WP5_SHIFT 9
  612. #define AIPS_PACRC_SP5_MASK 0x400u
  613. #define AIPS_PACRC_SP5_SHIFT 10
  614. #define AIPS_PACRC_TP4_MASK 0x1000u
  615. #define AIPS_PACRC_TP4_SHIFT 12
  616. #define AIPS_PACRC_WP4_MASK 0x2000u
  617. #define AIPS_PACRC_WP4_SHIFT 13
  618. #define AIPS_PACRC_SP4_MASK 0x4000u
  619. #define AIPS_PACRC_SP4_SHIFT 14
  620. #define AIPS_PACRC_TP3_MASK 0x10000u
  621. #define AIPS_PACRC_TP3_SHIFT 16
  622. #define AIPS_PACRC_WP3_MASK 0x20000u
  623. #define AIPS_PACRC_WP3_SHIFT 17
  624. #define AIPS_PACRC_SP3_MASK 0x40000u
  625. #define AIPS_PACRC_SP3_SHIFT 18
  626. #define AIPS_PACRC_TP2_MASK 0x100000u
  627. #define AIPS_PACRC_TP2_SHIFT 20
  628. #define AIPS_PACRC_WP2_MASK 0x200000u
  629. #define AIPS_PACRC_WP2_SHIFT 21
  630. #define AIPS_PACRC_SP2_MASK 0x400000u
  631. #define AIPS_PACRC_SP2_SHIFT 22
  632. #define AIPS_PACRC_TP1_MASK 0x1000000u
  633. #define AIPS_PACRC_TP1_SHIFT 24
  634. #define AIPS_PACRC_WP1_MASK 0x2000000u
  635. #define AIPS_PACRC_WP1_SHIFT 25
  636. #define AIPS_PACRC_SP1_MASK 0x4000000u
  637. #define AIPS_PACRC_SP1_SHIFT 26
  638. #define AIPS_PACRC_TP0_MASK 0x10000000u
  639. #define AIPS_PACRC_TP0_SHIFT 28
  640. #define AIPS_PACRC_WP0_MASK 0x20000000u
  641. #define AIPS_PACRC_WP0_SHIFT 29
  642. #define AIPS_PACRC_SP0_MASK 0x40000000u
  643. #define AIPS_PACRC_SP0_SHIFT 30
  644. /* PACRD Bit Fields */
  645. #define AIPS_PACRD_TP7_MASK 0x1u
  646. #define AIPS_PACRD_TP7_SHIFT 0
  647. #define AIPS_PACRD_WP7_MASK 0x2u
  648. #define AIPS_PACRD_WP7_SHIFT 1
  649. #define AIPS_PACRD_SP7_MASK 0x4u
  650. #define AIPS_PACRD_SP7_SHIFT 2
  651. #define AIPS_PACRD_TP6_MASK 0x10u
  652. #define AIPS_PACRD_TP6_SHIFT 4
  653. #define AIPS_PACRD_WP6_MASK 0x20u
  654. #define AIPS_PACRD_WP6_SHIFT 5
  655. #define AIPS_PACRD_SP6_MASK 0x40u
  656. #define AIPS_PACRD_SP6_SHIFT 6
  657. #define AIPS_PACRD_TP5_MASK 0x100u
  658. #define AIPS_PACRD_TP5_SHIFT 8
  659. #define AIPS_PACRD_WP5_MASK 0x200u
  660. #define AIPS_PACRD_WP5_SHIFT 9
  661. #define AIPS_PACRD_SP5_MASK 0x400u
  662. #define AIPS_PACRD_SP5_SHIFT 10
  663. #define AIPS_PACRD_TP4_MASK 0x1000u
  664. #define AIPS_PACRD_TP4_SHIFT 12
  665. #define AIPS_PACRD_WP4_MASK 0x2000u
  666. #define AIPS_PACRD_WP4_SHIFT 13
  667. #define AIPS_PACRD_SP4_MASK 0x4000u
  668. #define AIPS_PACRD_SP4_SHIFT 14
  669. #define AIPS_PACRD_TP3_MASK 0x10000u
  670. #define AIPS_PACRD_TP3_SHIFT 16
  671. #define AIPS_PACRD_WP3_MASK 0x20000u
  672. #define AIPS_PACRD_WP3_SHIFT 17
  673. #define AIPS_PACRD_SP3_MASK 0x40000u
  674. #define AIPS_PACRD_SP3_SHIFT 18
  675. #define AIPS_PACRD_TP2_MASK 0x100000u
  676. #define AIPS_PACRD_TP2_SHIFT 20
  677. #define AIPS_PACRD_WP2_MASK 0x200000u
  678. #define AIPS_PACRD_WP2_SHIFT 21
  679. #define AIPS_PACRD_SP2_MASK 0x400000u
  680. #define AIPS_PACRD_SP2_SHIFT 22
  681. #define AIPS_PACRD_TP1_MASK 0x1000000u
  682. #define AIPS_PACRD_TP1_SHIFT 24
  683. #define AIPS_PACRD_WP1_MASK 0x2000000u
  684. #define AIPS_PACRD_WP1_SHIFT 25
  685. #define AIPS_PACRD_SP1_MASK 0x4000000u
  686. #define AIPS_PACRD_SP1_SHIFT 26
  687. #define AIPS_PACRD_TP0_MASK 0x10000000u
  688. #define AIPS_PACRD_TP0_SHIFT 28
  689. #define AIPS_PACRD_WP0_MASK 0x20000000u
  690. #define AIPS_PACRD_WP0_SHIFT 29
  691. #define AIPS_PACRD_SP0_MASK 0x40000000u
  692. #define AIPS_PACRD_SP0_SHIFT 30
  693. /* PACRE Bit Fields */
  694. #define AIPS_PACRE_TP7_MASK 0x1u
  695. #define AIPS_PACRE_TP7_SHIFT 0
  696. #define AIPS_PACRE_WP7_MASK 0x2u
  697. #define AIPS_PACRE_WP7_SHIFT 1
  698. #define AIPS_PACRE_SP7_MASK 0x4u
  699. #define AIPS_PACRE_SP7_SHIFT 2
  700. #define AIPS_PACRE_TP6_MASK 0x10u
  701. #define AIPS_PACRE_TP6_SHIFT 4
  702. #define AIPS_PACRE_WP6_MASK 0x20u
  703. #define AIPS_PACRE_WP6_SHIFT 5
  704. #define AIPS_PACRE_SP6_MASK 0x40u
  705. #define AIPS_PACRE_SP6_SHIFT 6
  706. #define AIPS_PACRE_TP5_MASK 0x100u
  707. #define AIPS_PACRE_TP5_SHIFT 8
  708. #define AIPS_PACRE_WP5_MASK 0x200u
  709. #define AIPS_PACRE_WP5_SHIFT 9
  710. #define AIPS_PACRE_SP5_MASK 0x400u
  711. #define AIPS_PACRE_SP5_SHIFT 10
  712. #define AIPS_PACRE_TP4_MASK 0x1000u
  713. #define AIPS_PACRE_TP4_SHIFT 12
  714. #define AIPS_PACRE_WP4_MASK 0x2000u
  715. #define AIPS_PACRE_WP4_SHIFT 13
  716. #define AIPS_PACRE_SP4_MASK 0x4000u
  717. #define AIPS_PACRE_SP4_SHIFT 14
  718. #define AIPS_PACRE_TP3_MASK 0x10000u
  719. #define AIPS_PACRE_TP3_SHIFT 16
  720. #define AIPS_PACRE_WP3_MASK 0x20000u
  721. #define AIPS_PACRE_WP3_SHIFT 17
  722. #define AIPS_PACRE_SP3_MASK 0x40000u
  723. #define AIPS_PACRE_SP3_SHIFT 18
  724. #define AIPS_PACRE_TP2_MASK 0x100000u
  725. #define AIPS_PACRE_TP2_SHIFT 20
  726. #define AIPS_PACRE_WP2_MASK 0x200000u
  727. #define AIPS_PACRE_WP2_SHIFT 21
  728. #define AIPS_PACRE_SP2_MASK 0x400000u
  729. #define AIPS_PACRE_SP2_SHIFT 22
  730. #define AIPS_PACRE_TP1_MASK 0x1000000u
  731. #define AIPS_PACRE_TP1_SHIFT 24
  732. #define AIPS_PACRE_WP1_MASK 0x2000000u
  733. #define AIPS_PACRE_WP1_SHIFT 25
  734. #define AIPS_PACRE_SP1_MASK 0x4000000u
  735. #define AIPS_PACRE_SP1_SHIFT 26
  736. #define AIPS_PACRE_TP0_MASK 0x10000000u
  737. #define AIPS_PACRE_TP0_SHIFT 28
  738. #define AIPS_PACRE_WP0_MASK 0x20000000u
  739. #define AIPS_PACRE_WP0_SHIFT 29
  740. #define AIPS_PACRE_SP0_MASK 0x40000000u
  741. #define AIPS_PACRE_SP0_SHIFT 30
  742. /* PACRF Bit Fields */
  743. #define AIPS_PACRF_TP7_MASK 0x1u
  744. #define AIPS_PACRF_TP7_SHIFT 0
  745. #define AIPS_PACRF_WP7_MASK 0x2u
  746. #define AIPS_PACRF_WP7_SHIFT 1
  747. #define AIPS_PACRF_SP7_MASK 0x4u
  748. #define AIPS_PACRF_SP7_SHIFT 2
  749. #define AIPS_PACRF_TP6_MASK 0x10u
  750. #define AIPS_PACRF_TP6_SHIFT 4
  751. #define AIPS_PACRF_WP6_MASK 0x20u
  752. #define AIPS_PACRF_WP6_SHIFT 5
  753. #define AIPS_PACRF_SP6_MASK 0x40u
  754. #define AIPS_PACRF_SP6_SHIFT 6
  755. #define AIPS_PACRF_TP5_MASK 0x100u
  756. #define AIPS_PACRF_TP5_SHIFT 8
  757. #define AIPS_PACRF_WP5_MASK 0x200u
  758. #define AIPS_PACRF_WP5_SHIFT 9
  759. #define AIPS_PACRF_SP5_MASK 0x400u
  760. #define AIPS_PACRF_SP5_SHIFT 10
  761. #define AIPS_PACRF_TP4_MASK 0x1000u
  762. #define AIPS_PACRF_TP4_SHIFT 12
  763. #define AIPS_PACRF_WP4_MASK 0x2000u
  764. #define AIPS_PACRF_WP4_SHIFT 13
  765. #define AIPS_PACRF_SP4_MASK 0x4000u
  766. #define AIPS_PACRF_SP4_SHIFT 14
  767. #define AIPS_PACRF_TP3_MASK 0x10000u
  768. #define AIPS_PACRF_TP3_SHIFT 16
  769. #define AIPS_PACRF_WP3_MASK 0x20000u
  770. #define AIPS_PACRF_WP3_SHIFT 17
  771. #define AIPS_PACRF_SP3_MASK 0x40000u
  772. #define AIPS_PACRF_SP3_SHIFT 18
  773. #define AIPS_PACRF_TP2_MASK 0x100000u
  774. #define AIPS_PACRF_TP2_SHIFT 20
  775. #define AIPS_PACRF_WP2_MASK 0x200000u
  776. #define AIPS_PACRF_WP2_SHIFT 21
  777. #define AIPS_PACRF_SP2_MASK 0x400000u
  778. #define AIPS_PACRF_SP2_SHIFT 22
  779. #define AIPS_PACRF_TP1_MASK 0x1000000u
  780. #define AIPS_PACRF_TP1_SHIFT 24
  781. #define AIPS_PACRF_WP1_MASK 0x2000000u
  782. #define AIPS_PACRF_WP1_SHIFT 25
  783. #define AIPS_PACRF_SP1_MASK 0x4000000u
  784. #define AIPS_PACRF_SP1_SHIFT 26
  785. #define AIPS_PACRF_TP0_MASK 0x10000000u
  786. #define AIPS_PACRF_TP0_SHIFT 28
  787. #define AIPS_PACRF_WP0_MASK 0x20000000u
  788. #define AIPS_PACRF_WP0_SHIFT 29
  789. #define AIPS_PACRF_SP0_MASK 0x40000000u
  790. #define AIPS_PACRF_SP0_SHIFT 30
  791. /* PACRG Bit Fields */
  792. #define AIPS_PACRG_TP7_MASK 0x1u
  793. #define AIPS_PACRG_TP7_SHIFT 0
  794. #define AIPS_PACRG_WP7_MASK 0x2u
  795. #define AIPS_PACRG_WP7_SHIFT 1
  796. #define AIPS_PACRG_SP7_MASK 0x4u
  797. #define AIPS_PACRG_SP7_SHIFT 2
  798. #define AIPS_PACRG_TP6_MASK 0x10u
  799. #define AIPS_PACRG_TP6_SHIFT 4
  800. #define AIPS_PACRG_WP6_MASK 0x20u
  801. #define AIPS_PACRG_WP6_SHIFT 5
  802. #define AIPS_PACRG_SP6_MASK 0x40u
  803. #define AIPS_PACRG_SP6_SHIFT 6
  804. #define AIPS_PACRG_TP5_MASK 0x100u
  805. #define AIPS_PACRG_TP5_SHIFT 8
  806. #define AIPS_PACRG_WP5_MASK 0x200u
  807. #define AIPS_PACRG_WP5_SHIFT 9
  808. #define AIPS_PACRG_SP5_MASK 0x400u
  809. #define AIPS_PACRG_SP5_SHIFT 10
  810. #define AIPS_PACRG_TP4_MASK 0x1000u
  811. #define AIPS_PACRG_TP4_SHIFT 12
  812. #define AIPS_PACRG_WP4_MASK 0x2000u
  813. #define AIPS_PACRG_WP4_SHIFT 13
  814. #define AIPS_PACRG_SP4_MASK 0x4000u
  815. #define AIPS_PACRG_SP4_SHIFT 14
  816. #define AIPS_PACRG_TP3_MASK 0x10000u
  817. #define AIPS_PACRG_TP3_SHIFT 16
  818. #define AIPS_PACRG_WP3_MASK 0x20000u
  819. #define AIPS_PACRG_WP3_SHIFT 17
  820. #define AIPS_PACRG_SP3_MASK 0x40000u
  821. #define AIPS_PACRG_SP3_SHIFT 18
  822. #define AIPS_PACRG_TP2_MASK 0x100000u
  823. #define AIPS_PACRG_TP2_SHIFT 20
  824. #define AIPS_PACRG_WP2_MASK 0x200000u
  825. #define AIPS_PACRG_WP2_SHIFT 21
  826. #define AIPS_PACRG_SP2_MASK 0x400000u
  827. #define AIPS_PACRG_SP2_SHIFT 22
  828. #define AIPS_PACRG_TP1_MASK 0x1000000u
  829. #define AIPS_PACRG_TP1_SHIFT 24
  830. #define AIPS_PACRG_WP1_MASK 0x2000000u
  831. #define AIPS_PACRG_WP1_SHIFT 25
  832. #define AIPS_PACRG_SP1_MASK 0x4000000u
  833. #define AIPS_PACRG_SP1_SHIFT 26
  834. #define AIPS_PACRG_TP0_MASK 0x10000000u
  835. #define AIPS_PACRG_TP0_SHIFT 28
  836. #define AIPS_PACRG_WP0_MASK 0x20000000u
  837. #define AIPS_PACRG_WP0_SHIFT 29
  838. #define AIPS_PACRG_SP0_MASK 0x40000000u
  839. #define AIPS_PACRG_SP0_SHIFT 30
  840. /* PACRH Bit Fields */
  841. #define AIPS_PACRH_TP7_MASK 0x1u
  842. #define AIPS_PACRH_TP7_SHIFT 0
  843. #define AIPS_PACRH_WP7_MASK 0x2u
  844. #define AIPS_PACRH_WP7_SHIFT 1
  845. #define AIPS_PACRH_SP7_MASK 0x4u
  846. #define AIPS_PACRH_SP7_SHIFT 2
  847. #define AIPS_PACRH_TP6_MASK 0x10u
  848. #define AIPS_PACRH_TP6_SHIFT 4
  849. #define AIPS_PACRH_WP6_MASK 0x20u
  850. #define AIPS_PACRH_WP6_SHIFT 5
  851. #define AIPS_PACRH_SP6_MASK 0x40u
  852. #define AIPS_PACRH_SP6_SHIFT 6
  853. #define AIPS_PACRH_TP5_MASK 0x100u
  854. #define AIPS_PACRH_TP5_SHIFT 8
  855. #define AIPS_PACRH_WP5_MASK 0x200u
  856. #define AIPS_PACRH_WP5_SHIFT 9
  857. #define AIPS_PACRH_SP5_MASK 0x400u
  858. #define AIPS_PACRH_SP5_SHIFT 10
  859. #define AIPS_PACRH_TP4_MASK 0x1000u
  860. #define AIPS_PACRH_TP4_SHIFT 12
  861. #define AIPS_PACRH_WP4_MASK 0x2000u
  862. #define AIPS_PACRH_WP4_SHIFT 13
  863. #define AIPS_PACRH_SP4_MASK 0x4000u
  864. #define AIPS_PACRH_SP4_SHIFT 14
  865. #define AIPS_PACRH_TP3_MASK 0x10000u
  866. #define AIPS_PACRH_TP3_SHIFT 16
  867. #define AIPS_PACRH_WP3_MASK 0x20000u
  868. #define AIPS_PACRH_WP3_SHIFT 17
  869. #define AIPS_PACRH_SP3_MASK 0x40000u
  870. #define AIPS_PACRH_SP3_SHIFT 18
  871. #define AIPS_PACRH_TP2_MASK 0x100000u
  872. #define AIPS_PACRH_TP2_SHIFT 20
  873. #define AIPS_PACRH_WP2_MASK 0x200000u
  874. #define AIPS_PACRH_WP2_SHIFT 21
  875. #define AIPS_PACRH_SP2_MASK 0x400000u
  876. #define AIPS_PACRH_SP2_SHIFT 22
  877. #define AIPS_PACRH_TP1_MASK 0x1000000u
  878. #define AIPS_PACRH_TP1_SHIFT 24
  879. #define AIPS_PACRH_WP1_MASK 0x2000000u
  880. #define AIPS_PACRH_WP1_SHIFT 25
  881. #define AIPS_PACRH_SP1_MASK 0x4000000u
  882. #define AIPS_PACRH_SP1_SHIFT 26
  883. #define AIPS_PACRH_TP0_MASK 0x10000000u
  884. #define AIPS_PACRH_TP0_SHIFT 28
  885. #define AIPS_PACRH_WP0_MASK 0x20000000u
  886. #define AIPS_PACRH_WP0_SHIFT 29
  887. #define AIPS_PACRH_SP0_MASK 0x40000000u
  888. #define AIPS_PACRH_SP0_SHIFT 30
  889. /* PACRI Bit Fields */
  890. #define AIPS_PACRI_TP7_MASK 0x1u
  891. #define AIPS_PACRI_TP7_SHIFT 0
  892. #define AIPS_PACRI_WP7_MASK 0x2u
  893. #define AIPS_PACRI_WP7_SHIFT 1
  894. #define AIPS_PACRI_SP7_MASK 0x4u
  895. #define AIPS_PACRI_SP7_SHIFT 2
  896. #define AIPS_PACRI_TP6_MASK 0x10u
  897. #define AIPS_PACRI_TP6_SHIFT 4
  898. #define AIPS_PACRI_WP6_MASK 0x20u
  899. #define AIPS_PACRI_WP6_SHIFT 5
  900. #define AIPS_PACRI_SP6_MASK 0x40u
  901. #define AIPS_PACRI_SP6_SHIFT 6
  902. #define AIPS_PACRI_TP5_MASK 0x100u
  903. #define AIPS_PACRI_TP5_SHIFT 8
  904. #define AIPS_PACRI_WP5_MASK 0x200u
  905. #define AIPS_PACRI_WP5_SHIFT 9
  906. #define AIPS_PACRI_SP5_MASK 0x400u
  907. #define AIPS_PACRI_SP5_SHIFT 10
  908. #define AIPS_PACRI_TP4_MASK 0x1000u
  909. #define AIPS_PACRI_TP4_SHIFT 12
  910. #define AIPS_PACRI_WP4_MASK 0x2000u
  911. #define AIPS_PACRI_WP4_SHIFT 13
  912. #define AIPS_PACRI_SP4_MASK 0x4000u
  913. #define AIPS_PACRI_SP4_SHIFT 14
  914. #define AIPS_PACRI_TP3_MASK 0x10000u
  915. #define AIPS_PACRI_TP3_SHIFT 16
  916. #define AIPS_PACRI_WP3_MASK 0x20000u
  917. #define AIPS_PACRI_WP3_SHIFT 17
  918. #define AIPS_PACRI_SP3_MASK 0x40000u
  919. #define AIPS_PACRI_SP3_SHIFT 18
  920. #define AIPS_PACRI_TP2_MASK 0x100000u
  921. #define AIPS_PACRI_TP2_SHIFT 20
  922. #define AIPS_PACRI_WP2_MASK 0x200000u
  923. #define AIPS_PACRI_WP2_SHIFT 21
  924. #define AIPS_PACRI_SP2_MASK 0x400000u
  925. #define AIPS_PACRI_SP2_SHIFT 22
  926. #define AIPS_PACRI_TP1_MASK 0x1000000u
  927. #define AIPS_PACRI_TP1_SHIFT 24
  928. #define AIPS_PACRI_WP1_MASK 0x2000000u
  929. #define AIPS_PACRI_WP1_SHIFT 25
  930. #define AIPS_PACRI_SP1_MASK 0x4000000u
  931. #define AIPS_PACRI_SP1_SHIFT 26
  932. #define AIPS_PACRI_TP0_MASK 0x10000000u
  933. #define AIPS_PACRI_TP0_SHIFT 28
  934. #define AIPS_PACRI_WP0_MASK 0x20000000u
  935. #define AIPS_PACRI_WP0_SHIFT 29
  936. #define AIPS_PACRI_SP0_MASK 0x40000000u
  937. #define AIPS_PACRI_SP0_SHIFT 30
  938. /* PACRJ Bit Fields */
  939. #define AIPS_PACRJ_TP7_MASK 0x1u
  940. #define AIPS_PACRJ_TP7_SHIFT 0
  941. #define AIPS_PACRJ_WP7_MASK 0x2u
  942. #define AIPS_PACRJ_WP7_SHIFT 1
  943. #define AIPS_PACRJ_SP7_MASK 0x4u
  944. #define AIPS_PACRJ_SP7_SHIFT 2
  945. #define AIPS_PACRJ_TP6_MASK 0x10u
  946. #define AIPS_PACRJ_TP6_SHIFT 4
  947. #define AIPS_PACRJ_WP6_MASK 0x20u
  948. #define AIPS_PACRJ_WP6_SHIFT 5
  949. #define AIPS_PACRJ_SP6_MASK 0x40u
  950. #define AIPS_PACRJ_SP6_SHIFT 6
  951. #define AIPS_PACRJ_TP5_MASK 0x100u
  952. #define AIPS_PACRJ_TP5_SHIFT 8
  953. #define AIPS_PACRJ_WP5_MASK 0x200u
  954. #define AIPS_PACRJ_WP5_SHIFT 9
  955. #define AIPS_PACRJ_SP5_MASK 0x400u
  956. #define AIPS_PACRJ_SP5_SHIFT 10
  957. #define AIPS_PACRJ_TP4_MASK 0x1000u
  958. #define AIPS_PACRJ_TP4_SHIFT 12
  959. #define AIPS_PACRJ_WP4_MASK 0x2000u
  960. #define AIPS_PACRJ_WP4_SHIFT 13
  961. #define AIPS_PACRJ_SP4_MASK 0x4000u
  962. #define AIPS_PACRJ_SP4_SHIFT 14
  963. #define AIPS_PACRJ_TP3_MASK 0x10000u
  964. #define AIPS_PACRJ_TP3_SHIFT 16
  965. #define AIPS_PACRJ_WP3_MASK 0x20000u
  966. #define AIPS_PACRJ_WP3_SHIFT 17
  967. #define AIPS_PACRJ_SP3_MASK 0x40000u
  968. #define AIPS_PACRJ_SP3_SHIFT 18
  969. #define AIPS_PACRJ_TP2_MASK 0x100000u
  970. #define AIPS_PACRJ_TP2_SHIFT 20
  971. #define AIPS_PACRJ_WP2_MASK 0x200000u
  972. #define AIPS_PACRJ_WP2_SHIFT 21
  973. #define AIPS_PACRJ_SP2_MASK 0x400000u
  974. #define AIPS_PACRJ_SP2_SHIFT 22
  975. #define AIPS_PACRJ_TP1_MASK 0x1000000u
  976. #define AIPS_PACRJ_TP1_SHIFT 24
  977. #define AIPS_PACRJ_WP1_MASK 0x2000000u
  978. #define AIPS_PACRJ_WP1_SHIFT 25
  979. #define AIPS_PACRJ_SP1_MASK 0x4000000u
  980. #define AIPS_PACRJ_SP1_SHIFT 26
  981. #define AIPS_PACRJ_TP0_MASK 0x10000000u
  982. #define AIPS_PACRJ_TP0_SHIFT 28
  983. #define AIPS_PACRJ_WP0_MASK 0x20000000u
  984. #define AIPS_PACRJ_WP0_SHIFT 29
  985. #define AIPS_PACRJ_SP0_MASK 0x40000000u
  986. #define AIPS_PACRJ_SP0_SHIFT 30
  987. /* PACRK Bit Fields */
  988. #define AIPS_PACRK_TP7_MASK 0x1u
  989. #define AIPS_PACRK_TP7_SHIFT 0
  990. #define AIPS_PACRK_WP7_MASK 0x2u
  991. #define AIPS_PACRK_WP7_SHIFT 1
  992. #define AIPS_PACRK_SP7_MASK 0x4u
  993. #define AIPS_PACRK_SP7_SHIFT 2
  994. #define AIPS_PACRK_TP6_MASK 0x10u
  995. #define AIPS_PACRK_TP6_SHIFT 4
  996. #define AIPS_PACRK_WP6_MASK 0x20u
  997. #define AIPS_PACRK_WP6_SHIFT 5
  998. #define AIPS_PACRK_SP6_MASK 0x40u
  999. #define AIPS_PACRK_SP6_SHIFT 6
  1000. #define AIPS_PACRK_TP5_MASK 0x100u
  1001. #define AIPS_PACRK_TP5_SHIFT 8
  1002. #define AIPS_PACRK_WP5_MASK 0x200u
  1003. #define AIPS_PACRK_WP5_SHIFT 9
  1004. #define AIPS_PACRK_SP5_MASK 0x400u
  1005. #define AIPS_PACRK_SP5_SHIFT 10
  1006. #define AIPS_PACRK_TP4_MASK 0x1000u
  1007. #define AIPS_PACRK_TP4_SHIFT 12
  1008. #define AIPS_PACRK_WP4_MASK 0x2000u
  1009. #define AIPS_PACRK_WP4_SHIFT 13
  1010. #define AIPS_PACRK_SP4_MASK 0x4000u
  1011. #define AIPS_PACRK_SP4_SHIFT 14
  1012. #define AIPS_PACRK_TP3_MASK 0x10000u
  1013. #define AIPS_PACRK_TP3_SHIFT 16
  1014. #define AIPS_PACRK_WP3_MASK 0x20000u
  1015. #define AIPS_PACRK_WP3_SHIFT 17
  1016. #define AIPS_PACRK_SP3_MASK 0x40000u
  1017. #define AIPS_PACRK_SP3_SHIFT 18
  1018. #define AIPS_PACRK_TP2_MASK 0x100000u
  1019. #define AIPS_PACRK_TP2_SHIFT 20
  1020. #define AIPS_PACRK_WP2_MASK 0x200000u
  1021. #define AIPS_PACRK_WP2_SHIFT 21
  1022. #define AIPS_PACRK_SP2_MASK 0x400000u
  1023. #define AIPS_PACRK_SP2_SHIFT 22
  1024. #define AIPS_PACRK_TP1_MASK 0x1000000u
  1025. #define AIPS_PACRK_TP1_SHIFT 24
  1026. #define AIPS_PACRK_WP1_MASK 0x2000000u
  1027. #define AIPS_PACRK_WP1_SHIFT 25
  1028. #define AIPS_PACRK_SP1_MASK 0x4000000u
  1029. #define AIPS_PACRK_SP1_SHIFT 26
  1030. #define AIPS_PACRK_TP0_MASK 0x10000000u
  1031. #define AIPS_PACRK_TP0_SHIFT 28
  1032. #define AIPS_PACRK_WP0_MASK 0x20000000u
  1033. #define AIPS_PACRK_WP0_SHIFT 29
  1034. #define AIPS_PACRK_SP0_MASK 0x40000000u
  1035. #define AIPS_PACRK_SP0_SHIFT 30
  1036. /* PACRL Bit Fields */
  1037. #define AIPS_PACRL_TP7_MASK 0x1u
  1038. #define AIPS_PACRL_TP7_SHIFT 0
  1039. #define AIPS_PACRL_WP7_MASK 0x2u
  1040. #define AIPS_PACRL_WP7_SHIFT 1
  1041. #define AIPS_PACRL_SP7_MASK 0x4u
  1042. #define AIPS_PACRL_SP7_SHIFT 2
  1043. #define AIPS_PACRL_TP6_MASK 0x10u
  1044. #define AIPS_PACRL_TP6_SHIFT 4
  1045. #define AIPS_PACRL_WP6_MASK 0x20u
  1046. #define AIPS_PACRL_WP6_SHIFT 5
  1047. #define AIPS_PACRL_SP6_MASK 0x40u
  1048. #define AIPS_PACRL_SP6_SHIFT 6
  1049. #define AIPS_PACRL_TP5_MASK 0x100u
  1050. #define AIPS_PACRL_TP5_SHIFT 8
  1051. #define AIPS_PACRL_WP5_MASK 0x200u
  1052. #define AIPS_PACRL_WP5_SHIFT 9
  1053. #define AIPS_PACRL_SP5_MASK 0x400u
  1054. #define AIPS_PACRL_SP5_SHIFT 10
  1055. #define AIPS_PACRL_TP4_MASK 0x1000u
  1056. #define AIPS_PACRL_TP4_SHIFT 12
  1057. #define AIPS_PACRL_WP4_MASK 0x2000u
  1058. #define AIPS_PACRL_WP4_SHIFT 13
  1059. #define AIPS_PACRL_SP4_MASK 0x4000u
  1060. #define AIPS_PACRL_SP4_SHIFT 14
  1061. #define AIPS_PACRL_TP3_MASK 0x10000u
  1062. #define AIPS_PACRL_TP3_SHIFT 16
  1063. #define AIPS_PACRL_WP3_MASK 0x20000u
  1064. #define AIPS_PACRL_WP3_SHIFT 17
  1065. #define AIPS_PACRL_SP3_MASK 0x40000u
  1066. #define AIPS_PACRL_SP3_SHIFT 18
  1067. #define AIPS_PACRL_TP2_MASK 0x100000u
  1068. #define AIPS_PACRL_TP2_SHIFT 20
  1069. #define AIPS_PACRL_WP2_MASK 0x200000u
  1070. #define AIPS_PACRL_WP2_SHIFT 21
  1071. #define AIPS_PACRL_SP2_MASK 0x400000u
  1072. #define AIPS_PACRL_SP2_SHIFT 22
  1073. #define AIPS_PACRL_TP1_MASK 0x1000000u
  1074. #define AIPS_PACRL_TP1_SHIFT 24
  1075. #define AIPS_PACRL_WP1_MASK 0x2000000u
  1076. #define AIPS_PACRL_WP1_SHIFT 25
  1077. #define AIPS_PACRL_SP1_MASK 0x4000000u
  1078. #define AIPS_PACRL_SP1_SHIFT 26
  1079. #define AIPS_PACRL_TP0_MASK 0x10000000u
  1080. #define AIPS_PACRL_TP0_SHIFT 28
  1081. #define AIPS_PACRL_WP0_MASK 0x20000000u
  1082. #define AIPS_PACRL_WP0_SHIFT 29
  1083. #define AIPS_PACRL_SP0_MASK 0x40000000u
  1084. #define AIPS_PACRL_SP0_SHIFT 30
  1085. /* PACRM Bit Fields */
  1086. #define AIPS_PACRM_TP7_MASK 0x1u
  1087. #define AIPS_PACRM_TP7_SHIFT 0
  1088. #define AIPS_PACRM_WP7_MASK 0x2u
  1089. #define AIPS_PACRM_WP7_SHIFT 1
  1090. #define AIPS_PACRM_SP7_MASK 0x4u
  1091. #define AIPS_PACRM_SP7_SHIFT 2
  1092. #define AIPS_PACRM_TP6_MASK 0x10u
  1093. #define AIPS_PACRM_TP6_SHIFT 4
  1094. #define AIPS_PACRM_WP6_MASK 0x20u
  1095. #define AIPS_PACRM_WP6_SHIFT 5
  1096. #define AIPS_PACRM_SP6_MASK 0x40u
  1097. #define AIPS_PACRM_SP6_SHIFT 6
  1098. #define AIPS_PACRM_TP5_MASK 0x100u
  1099. #define AIPS_PACRM_TP5_SHIFT 8
  1100. #define AIPS_PACRM_WP5_MASK 0x200u
  1101. #define AIPS_PACRM_WP5_SHIFT 9
  1102. #define AIPS_PACRM_SP5_MASK 0x400u
  1103. #define AIPS_PACRM_SP5_SHIFT 10
  1104. #define AIPS_PACRM_TP4_MASK 0x1000u
  1105. #define AIPS_PACRM_TP4_SHIFT 12
  1106. #define AIPS_PACRM_WP4_MASK 0x2000u
  1107. #define AIPS_PACRM_WP4_SHIFT 13
  1108. #define AIPS_PACRM_SP4_MASK 0x4000u
  1109. #define AIPS_PACRM_SP4_SHIFT 14
  1110. #define AIPS_PACRM_TP3_MASK 0x10000u
  1111. #define AIPS_PACRM_TP3_SHIFT 16
  1112. #define AIPS_PACRM_WP3_MASK 0x20000u
  1113. #define AIPS_PACRM_WP3_SHIFT 17
  1114. #define AIPS_PACRM_SP3_MASK 0x40000u
  1115. #define AIPS_PACRM_SP3_SHIFT 18
  1116. #define AIPS_PACRM_TP2_MASK 0x100000u
  1117. #define AIPS_PACRM_TP2_SHIFT 20
  1118. #define AIPS_PACRM_WP2_MASK 0x200000u
  1119. #define AIPS_PACRM_WP2_SHIFT 21
  1120. #define AIPS_PACRM_SP2_MASK 0x400000u
  1121. #define AIPS_PACRM_SP2_SHIFT 22
  1122. #define AIPS_PACRM_TP1_MASK 0x1000000u
  1123. #define AIPS_PACRM_TP1_SHIFT 24
  1124. #define AIPS_PACRM_WP1_MASK 0x2000000u
  1125. #define AIPS_PACRM_WP1_SHIFT 25
  1126. #define AIPS_PACRM_SP1_MASK 0x4000000u
  1127. #define AIPS_PACRM_SP1_SHIFT 26
  1128. #define AIPS_PACRM_TP0_MASK 0x10000000u
  1129. #define AIPS_PACRM_TP0_SHIFT 28
  1130. #define AIPS_PACRM_WP0_MASK 0x20000000u
  1131. #define AIPS_PACRM_WP0_SHIFT 29
  1132. #define AIPS_PACRM_SP0_MASK 0x40000000u
  1133. #define AIPS_PACRM_SP0_SHIFT 30
  1134. /* PACRN Bit Fields */
  1135. #define AIPS_PACRN_TP7_MASK 0x1u
  1136. #define AIPS_PACRN_TP7_SHIFT 0
  1137. #define AIPS_PACRN_WP7_MASK 0x2u
  1138. #define AIPS_PACRN_WP7_SHIFT 1
  1139. #define AIPS_PACRN_SP7_MASK 0x4u
  1140. #define AIPS_PACRN_SP7_SHIFT 2
  1141. #define AIPS_PACRN_TP6_MASK 0x10u
  1142. #define AIPS_PACRN_TP6_SHIFT 4
  1143. #define AIPS_PACRN_WP6_MASK 0x20u
  1144. #define AIPS_PACRN_WP6_SHIFT 5
  1145. #define AIPS_PACRN_SP6_MASK 0x40u
  1146. #define AIPS_PACRN_SP6_SHIFT 6
  1147. #define AIPS_PACRN_TP5_MASK 0x100u
  1148. #define AIPS_PACRN_TP5_SHIFT 8
  1149. #define AIPS_PACRN_WP5_MASK 0x200u
  1150. #define AIPS_PACRN_WP5_SHIFT 9
  1151. #define AIPS_PACRN_SP5_MASK 0x400u
  1152. #define AIPS_PACRN_SP5_SHIFT 10
  1153. #define AIPS_PACRN_TP4_MASK 0x1000u
  1154. #define AIPS_PACRN_TP4_SHIFT 12
  1155. #define AIPS_PACRN_WP4_MASK 0x2000u
  1156. #define AIPS_PACRN_WP4_SHIFT 13
  1157. #define AIPS_PACRN_SP4_MASK 0x4000u
  1158. #define AIPS_PACRN_SP4_SHIFT 14
  1159. #define AIPS_PACRN_TP3_MASK 0x10000u
  1160. #define AIPS_PACRN_TP3_SHIFT 16
  1161. #define AIPS_PACRN_WP3_MASK 0x20000u
  1162. #define AIPS_PACRN_WP3_SHIFT 17
  1163. #define AIPS_PACRN_SP3_MASK 0x40000u
  1164. #define AIPS_PACRN_SP3_SHIFT 18
  1165. #define AIPS_PACRN_TP2_MASK 0x100000u
  1166. #define AIPS_PACRN_TP2_SHIFT 20
  1167. #define AIPS_PACRN_WP2_MASK 0x200000u
  1168. #define AIPS_PACRN_WP2_SHIFT 21
  1169. #define AIPS_PACRN_SP2_MASK 0x400000u
  1170. #define AIPS_PACRN_SP2_SHIFT 22
  1171. #define AIPS_PACRN_TP1_MASK 0x1000000u
  1172. #define AIPS_PACRN_TP1_SHIFT 24
  1173. #define AIPS_PACRN_WP1_MASK 0x2000000u
  1174. #define AIPS_PACRN_WP1_SHIFT 25
  1175. #define AIPS_PACRN_SP1_MASK 0x4000000u
  1176. #define AIPS_PACRN_SP1_SHIFT 26
  1177. #define AIPS_PACRN_TP0_MASK 0x10000000u
  1178. #define AIPS_PACRN_TP0_SHIFT 28
  1179. #define AIPS_PACRN_WP0_MASK 0x20000000u
  1180. #define AIPS_PACRN_WP0_SHIFT 29
  1181. #define AIPS_PACRN_SP0_MASK 0x40000000u
  1182. #define AIPS_PACRN_SP0_SHIFT 30
  1183. /* PACRO Bit Fields */
  1184. #define AIPS_PACRO_TP7_MASK 0x1u
  1185. #define AIPS_PACRO_TP7_SHIFT 0
  1186. #define AIPS_PACRO_WP7_MASK 0x2u
  1187. #define AIPS_PACRO_WP7_SHIFT 1
  1188. #define AIPS_PACRO_SP7_MASK 0x4u
  1189. #define AIPS_PACRO_SP7_SHIFT 2
  1190. #define AIPS_PACRO_TP6_MASK 0x10u
  1191. #define AIPS_PACRO_TP6_SHIFT 4
  1192. #define AIPS_PACRO_WP6_MASK 0x20u
  1193. #define AIPS_PACRO_WP6_SHIFT 5
  1194. #define AIPS_PACRO_SP6_MASK 0x40u
  1195. #define AIPS_PACRO_SP6_SHIFT 6
  1196. #define AIPS_PACRO_TP5_MASK 0x100u
  1197. #define AIPS_PACRO_TP5_SHIFT 8
  1198. #define AIPS_PACRO_WP5_MASK 0x200u
  1199. #define AIPS_PACRO_WP5_SHIFT 9
  1200. #define AIPS_PACRO_SP5_MASK 0x400u
  1201. #define AIPS_PACRO_SP5_SHIFT 10
  1202. #define AIPS_PACRO_TP4_MASK 0x1000u
  1203. #define AIPS_PACRO_TP4_SHIFT 12
  1204. #define AIPS_PACRO_WP4_MASK 0x2000u
  1205. #define AIPS_PACRO_WP4_SHIFT 13
  1206. #define AIPS_PACRO_SP4_MASK 0x4000u
  1207. #define AIPS_PACRO_SP4_SHIFT 14
  1208. #define AIPS_PACRO_TP3_MASK 0x10000u
  1209. #define AIPS_PACRO_TP3_SHIFT 16
  1210. #define AIPS_PACRO_WP3_MASK 0x20000u
  1211. #define AIPS_PACRO_WP3_SHIFT 17
  1212. #define AIPS_PACRO_SP3_MASK 0x40000u
  1213. #define AIPS_PACRO_SP3_SHIFT 18
  1214. #define AIPS_PACRO_TP2_MASK 0x100000u
  1215. #define AIPS_PACRO_TP2_SHIFT 20
  1216. #define AIPS_PACRO_WP2_MASK 0x200000u
  1217. #define AIPS_PACRO_WP2_SHIFT 21
  1218. #define AIPS_PACRO_SP2_MASK 0x400000u
  1219. #define AIPS_PACRO_SP2_SHIFT 22
  1220. #define AIPS_PACRO_TP1_MASK 0x1000000u
  1221. #define AIPS_PACRO_TP1_SHIFT 24
  1222. #define AIPS_PACRO_WP1_MASK 0x2000000u
  1223. #define AIPS_PACRO_WP1_SHIFT 25
  1224. #define AIPS_PACRO_SP1_MASK 0x4000000u
  1225. #define AIPS_PACRO_SP1_SHIFT 26
  1226. #define AIPS_PACRO_TP0_MASK 0x10000000u
  1227. #define AIPS_PACRO_TP0_SHIFT 28
  1228. #define AIPS_PACRO_WP0_MASK 0x20000000u
  1229. #define AIPS_PACRO_WP0_SHIFT 29
  1230. #define AIPS_PACRO_SP0_MASK 0x40000000u
  1231. #define AIPS_PACRO_SP0_SHIFT 30
  1232. /* PACRP Bit Fields */
  1233. #define AIPS_PACRP_TP7_MASK 0x1u
  1234. #define AIPS_PACRP_TP7_SHIFT 0
  1235. #define AIPS_PACRP_WP7_MASK 0x2u
  1236. #define AIPS_PACRP_WP7_SHIFT 1
  1237. #define AIPS_PACRP_SP7_MASK 0x4u
  1238. #define AIPS_PACRP_SP7_SHIFT 2
  1239. #define AIPS_PACRP_TP6_MASK 0x10u
  1240. #define AIPS_PACRP_TP6_SHIFT 4
  1241. #define AIPS_PACRP_WP6_MASK 0x20u
  1242. #define AIPS_PACRP_WP6_SHIFT 5
  1243. #define AIPS_PACRP_SP6_MASK 0x40u
  1244. #define AIPS_PACRP_SP6_SHIFT 6
  1245. #define AIPS_PACRP_TP5_MASK 0x100u
  1246. #define AIPS_PACRP_TP5_SHIFT 8
  1247. #define AIPS_PACRP_WP5_MASK 0x200u
  1248. #define AIPS_PACRP_WP5_SHIFT 9
  1249. #define AIPS_PACRP_SP5_MASK 0x400u
  1250. #define AIPS_PACRP_SP5_SHIFT 10
  1251. #define AIPS_PACRP_TP4_MASK 0x1000u
  1252. #define AIPS_PACRP_TP4_SHIFT 12
  1253. #define AIPS_PACRP_WP4_MASK 0x2000u
  1254. #define AIPS_PACRP_WP4_SHIFT 13
  1255. #define AIPS_PACRP_SP4_MASK 0x4000u
  1256. #define AIPS_PACRP_SP4_SHIFT 14
  1257. #define AIPS_PACRP_TP3_MASK 0x10000u
  1258. #define AIPS_PACRP_TP3_SHIFT 16
  1259. #define AIPS_PACRP_WP3_MASK 0x20000u
  1260. #define AIPS_PACRP_WP3_SHIFT 17
  1261. #define AIPS_PACRP_SP3_MASK 0x40000u
  1262. #define AIPS_PACRP_SP3_SHIFT 18
  1263. #define AIPS_PACRP_TP2_MASK 0x100000u
  1264. #define AIPS_PACRP_TP2_SHIFT 20
  1265. #define AIPS_PACRP_WP2_MASK 0x200000u
  1266. #define AIPS_PACRP_WP2_SHIFT 21
  1267. #define AIPS_PACRP_SP2_MASK 0x400000u
  1268. #define AIPS_PACRP_SP2_SHIFT 22
  1269. #define AIPS_PACRP_TP1_MASK 0x1000000u
  1270. #define AIPS_PACRP_TP1_SHIFT 24
  1271. #define AIPS_PACRP_WP1_MASK 0x2000000u
  1272. #define AIPS_PACRP_WP1_SHIFT 25
  1273. #define AIPS_PACRP_SP1_MASK 0x4000000u
  1274. #define AIPS_PACRP_SP1_SHIFT 26
  1275. #define AIPS_PACRP_TP0_MASK 0x10000000u
  1276. #define AIPS_PACRP_TP0_SHIFT 28
  1277. #define AIPS_PACRP_WP0_MASK 0x20000000u
  1278. #define AIPS_PACRP_WP0_SHIFT 29
  1279. #define AIPS_PACRP_SP0_MASK 0x40000000u
  1280. #define AIPS_PACRP_SP0_SHIFT 30
  1281. /*! \} */ /* end of group AIPS_Register_Masks */
  1282. /* AIPS - Peripheral instance base addresses */
  1283. /*! Peripheral AIPS0 base address */
  1284. #define AIPS0_BASE (0x40000000u)
  1285. /*! Peripheral AIPS0 base pointer */
  1286. #define AIPS0 ((AIPS_Type *)AIPS0_BASE)
  1287. /*! Peripheral AIPS1 base address */
  1288. #define AIPS1_BASE (0x40080000u)
  1289. /*! Peripheral AIPS1 base pointer */
  1290. #define AIPS1 ((AIPS_Type *)AIPS1_BASE)
  1291. /*! \} */ /* end of group AIPS_Peripheral_Access_Layer */
  1292. /* ----------------------------------------------------------------------------
  1293. -- AXBS Peripheral Access Layer
  1294. ---------------------------------------------------------------------------- */
  1295. /*! \addtogroup AXBS_Peripheral_Access_Layer AXBS Peripheral Access Layer */
  1296. /*! \{ */
  1297. /*! AXBS - Register Layout Typedef */
  1298. typedef struct {
  1299. struct { /* offset: 0x0, array step: 0x100 */
  1300. __IO uint32_t PRS; /*!< Priority Registers Slave, array offset: 0x0, array step: 0x100 */
  1301. uint8_t RESERVED_0[12];
  1302. __IO uint32_t CRS; /*!< Control Register, array offset: 0x10, array step: 0x100 */
  1303. uint8_t RESERVED_1[236];
  1304. } SLAVE[5];
  1305. uint8_t RESERVED_0[768];
  1306. __IO uint32_t MGPCR0; /*!< Master General Purpose Control Register, offset: 0x800 */
  1307. uint8_t RESERVED_1[252];
  1308. __IO uint32_t MGPCR1; /*!< Master General Purpose Control Register, offset: 0x900 */
  1309. uint8_t RESERVED_2[252];
  1310. __IO uint32_t MGPCR2; /*!< Master General Purpose Control Register, offset: 0xA00 */
  1311. uint8_t RESERVED_3[508];
  1312. __IO uint32_t MGPCR4; /*!< Master General Purpose Control Register, offset: 0xC00 */
  1313. uint8_t RESERVED_4[252];
  1314. __IO uint32_t MGPCR5; /*!< Master General Purpose Control Register, offset: 0xD00 */
  1315. } AXBS_Type;
  1316. /* ----------------------------------------------------------------------------
  1317. -- AXBS Register Masks
  1318. ---------------------------------------------------------------------------- */
  1319. /*! \addtogroup AXBS_Register_Masks AXBS Register Masks */
  1320. /*! \{ */
  1321. /* PRS Bit Fields */
  1322. #define AXBS_PRS_M0_MASK 0x7u
  1323. #define AXBS_PRS_M0_SHIFT 0
  1324. #define AXBS_PRS_M0(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M0_SHIFT))&AXBS_PRS_M0_MASK)
  1325. #define AXBS_PRS_M1_MASK 0x70u
  1326. #define AXBS_PRS_M1_SHIFT 4
  1327. #define AXBS_PRS_M1(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M1_SHIFT))&AXBS_PRS_M1_MASK)
  1328. #define AXBS_PRS_M2_MASK 0x700u
  1329. #define AXBS_PRS_M2_SHIFT 8
  1330. #define AXBS_PRS_M2(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M2_SHIFT))&AXBS_PRS_M2_MASK)
  1331. #define AXBS_PRS_M3_MASK 0x7000u
  1332. #define AXBS_PRS_M3_SHIFT 12
  1333. #define AXBS_PRS_M3(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M3_SHIFT))&AXBS_PRS_M3_MASK)
  1334. #define AXBS_PRS_M4_MASK 0x70000u
  1335. #define AXBS_PRS_M4_SHIFT 16
  1336. #define AXBS_PRS_M4(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M4_SHIFT))&AXBS_PRS_M4_MASK)
  1337. #define AXBS_PRS_M5_MASK 0x700000u
  1338. #define AXBS_PRS_M5_SHIFT 20
  1339. #define AXBS_PRS_M5(x) (((uint32_t)(((uint32_t)(x))<<AXBS_PRS_M5_SHIFT))&AXBS_PRS_M5_MASK)
  1340. /* CRS Bit Fields */
  1341. #define AXBS_CRS_PARK_MASK 0x7u
  1342. #define AXBS_CRS_PARK_SHIFT 0
  1343. #define AXBS_CRS_PARK(x) (((uint32_t)(((uint32_t)(x))<<AXBS_CRS_PARK_SHIFT))&AXBS_CRS_PARK_MASK)
  1344. #define AXBS_CRS_PCTL_MASK 0x30u
  1345. #define AXBS_CRS_PCTL_SHIFT 4
  1346. #define AXBS_CRS_PCTL(x) (((uint32_t)(((uint32_t)(x))<<AXBS_CRS_PCTL_SHIFT))&AXBS_CRS_PCTL_MASK)
  1347. #define AXBS_CRS_ARB_MASK 0x300u
  1348. #define AXBS_CRS_ARB_SHIFT 8
  1349. #define AXBS_CRS_ARB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_CRS_ARB_SHIFT))&AXBS_CRS_ARB_MASK)
  1350. #define AXBS_CRS_HLP_MASK 0x40000000u
  1351. #define AXBS_CRS_HLP_SHIFT 30
  1352. #define AXBS_CRS_RO_MASK 0x80000000u
  1353. #define AXBS_CRS_RO_SHIFT 31
  1354. /* MGPCR0 Bit Fields */
  1355. #define AXBS_MGPCR0_AULB_MASK 0x7u
  1356. #define AXBS_MGPCR0_AULB_SHIFT 0
  1357. #define AXBS_MGPCR0_AULB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_MGPCR0_AULB_SHIFT))&AXBS_MGPCR0_AULB_MASK)
  1358. /* MGPCR1 Bit Fields */
  1359. #define AXBS_MGPCR1_AULB_MASK 0x7u
  1360. #define AXBS_MGPCR1_AULB_SHIFT 0
  1361. #define AXBS_MGPCR1_AULB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_MGPCR1_AULB_SHIFT))&AXBS_MGPCR1_AULB_MASK)
  1362. /* MGPCR2 Bit Fields */
  1363. #define AXBS_MGPCR2_AULB_MASK 0x7u
  1364. #define AXBS_MGPCR2_AULB_SHIFT 0
  1365. #define AXBS_MGPCR2_AULB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_MGPCR2_AULB_SHIFT))&AXBS_MGPCR2_AULB_MASK)
  1366. /* MGPCR4 Bit Fields */
  1367. #define AXBS_MGPCR4_AULB_MASK 0x7u
  1368. #define AXBS_MGPCR4_AULB_SHIFT 0
  1369. #define AXBS_MGPCR4_AULB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_MGPCR4_AULB_SHIFT))&AXBS_MGPCR4_AULB_MASK)
  1370. /* MGPCR5 Bit Fields */
  1371. #define AXBS_MGPCR5_AULB_MASK 0x7u
  1372. #define AXBS_MGPCR5_AULB_SHIFT 0
  1373. #define AXBS_MGPCR5_AULB(x) (((uint32_t)(((uint32_t)(x))<<AXBS_MGPCR5_AULB_SHIFT))&AXBS_MGPCR5_AULB_MASK)
  1374. /*! \} */ /* end of group AXBS_Register_Masks */
  1375. /* AXBS - Peripheral instance base addresses */
  1376. /*! Peripheral AXBS base address */
  1377. #define AXBS_BASE (0x40004000u)
  1378. /*! Peripheral AXBS base pointer */
  1379. #define AXBS ((AXBS_Type *)AXBS_BASE)
  1380. /*! \} */ /* end of group AXBS_Peripheral_Access_Layer */
  1381. /* ----------------------------------------------------------------------------
  1382. -- CAN Peripheral Access Layer
  1383. ---------------------------------------------------------------------------- */
  1384. /*! \addtogroup CAN_Peripheral_Access_Layer CAN Peripheral Access Layer */
  1385. /*! \{ */
  1386. /*! CAN - Register Layout Typedef */
  1387. typedef struct {
  1388. __IO uint32_t MCR; /*!< Module Configuration Register, offset: 0x0 */
  1389. __IO uint32_t CTRL1; /*!< Control 1 Register, offset: 0x4 */
  1390. __IO uint32_t TIMER; /*!< Free Running Timer, offset: 0x8 */
  1391. uint8_t RESERVED_0[4];
  1392. __IO uint32_t RXMGMASK; /*!< Rx Mailboxes Global Mask Register, offset: 0x10 */
  1393. __IO uint32_t RX14MASK; /*!< Rx 14 Mask Register, offset: 0x14 */
  1394. __IO uint32_t RX15MASK; /*!< Rx 15 Mask Register, offset: 0x18 */
  1395. __IO uint32_t ECR; /*!< Error Counter, offset: 0x1C */
  1396. __IO uint32_t ESR1; /*!< Error and Status 1 Register, offset: 0x20 */
  1397. __IO uint32_t IMASK2; /*!< Interrupt Masks 2 Register, offset: 0x24 */
  1398. __IO uint32_t IMASK1; /*!< Interrupt Masks 1 Register, offset: 0x28 */
  1399. __IO uint32_t IFLAG2; /*!< Interrupt Flags 2 Register, offset: 0x2C */
  1400. __IO uint32_t IFLAG1; /*!< Interrupt Flags 1 Register, offset: 0x30 */
  1401. __IO uint32_t CTRL2; /*!< Control 2 Register, offset: 0x34 */
  1402. __I uint32_t ESR2; /*!< Error and Status 2 Register, offset: 0x38 */
  1403. uint8_t RESERVED_1[8];
  1404. __I uint32_t CRCR; /*!< CRC Register, offset: 0x44 */
  1405. __IO uint32_t RXFGMASK; /*!< Rx FIFO Global Mask Register, offset: 0x48 */
  1406. __I uint32_t RXFIR; /*!< Rx FIFO Information Register, offset: 0x4C */
  1407. uint8_t RESERVED_2[48];
  1408. struct { /* offset: 0x80, array step: 0x10 */
  1409. __IO uint32_t CS; /*!< Message Buffer 0 CS Register..Message Buffer 15 CS Register, array offset: 0x80, array step: 0x10 */
  1410. __IO uint32_t ID; /*!< Message Buffer 0 ID Register..Message Buffer 15 ID Register, array offset: 0x84, array step: 0x10 */
  1411. __IO uint32_t WORD0; /*!< Message Buffer 0 WORD0 Register..Message Buffer 15 WORD0 Register, array offset: 0x88, array step: 0x10 */
  1412. __IO uint32_t WORD1; /*!< Message Buffer 0 WORD1 Register..Message Buffer 15 WORD1 Register, array offset: 0x8C, array step: 0x10 */
  1413. } MB[16];
  1414. uint8_t RESERVED_3[1792];
  1415. __IO uint32_t RXIMR[16]; /*!< Rx Individual Mask Registers, array offset: 0x880, array step: 0x4 */
  1416. } CAN_Type;
  1417. /* ----------------------------------------------------------------------------
  1418. -- CAN Register Masks
  1419. ---------------------------------------------------------------------------- */
  1420. /*! \addtogroup CAN_Register_Masks CAN Register Masks */
  1421. /*! \{ */
  1422. /* MCR Bit Fields */
  1423. #define CAN_MCR_MAXMB_MASK 0x7Fu
  1424. #define CAN_MCR_MAXMB_SHIFT 0
  1425. #define CAN_MCR_MAXMB(x) (((uint32_t)(((uint32_t)(x))<<CAN_MCR_MAXMB_SHIFT))&CAN_MCR_MAXMB_MASK)
  1426. #define CAN_MCR_IDAM_MASK 0x300u
  1427. #define CAN_MCR_IDAM_SHIFT 8
  1428. #define CAN_MCR_IDAM(x) (((uint32_t)(((uint32_t)(x))<<CAN_MCR_IDAM_SHIFT))&CAN_MCR_IDAM_MASK)
  1429. #define CAN_MCR_AEN_MASK 0x1000u
  1430. #define CAN_MCR_AEN_SHIFT 12
  1431. #define CAN_MCR_LPRIOEN_MASK 0x2000u
  1432. #define CAN_MCR_LPRIOEN_SHIFT 13
  1433. #define CAN_MCR_IRMQ_MASK 0x10000u
  1434. #define CAN_MCR_IRMQ_SHIFT 16
  1435. #define CAN_MCR_SRXDIS_MASK 0x20000u
  1436. #define CAN_MCR_SRXDIS_SHIFT 17
  1437. #define CAN_MCR_DOZE_MASK 0x40000u
  1438. #define CAN_MCR_DOZE_SHIFT 18
  1439. #define CAN_MCR_LPMACK_MASK 0x100000u
  1440. #define CAN_MCR_LPMACK_SHIFT 20
  1441. #define CAN_MCR_WRNEN_MASK 0x200000u
  1442. #define CAN_MCR_WRNEN_SHIFT 21
  1443. #define CAN_MCR_SLFWAK_MASK 0x400000u
  1444. #define CAN_MCR_SLFWAK_SHIFT 22
  1445. #define CAN_MCR_SUPV_MASK 0x800000u
  1446. #define CAN_MCR_SUPV_SHIFT 23
  1447. #define CAN_MCR_FRZACK_MASK 0x1000000u
  1448. #define CAN_MCR_FRZACK_SHIFT 24
  1449. #define CAN_MCR_SOFTRST_MASK 0x2000000u
  1450. #define CAN_MCR_SOFTRST_SHIFT 25
  1451. #define CAN_MCR_WAKMSK_MASK 0x4000000u
  1452. #define CAN_MCR_WAKMSK_SHIFT 26
  1453. #define CAN_MCR_NOTRDY_MASK 0x8000000u
  1454. #define CAN_MCR_NOTRDY_SHIFT 27
  1455. #define CAN_MCR_HALT_MASK 0x10000000u
  1456. #define CAN_MCR_HALT_SHIFT 28
  1457. #define CAN_MCR_RFEN_MASK 0x20000000u
  1458. #define CAN_MCR_RFEN_SHIFT 29
  1459. #define CAN_MCR_FRZ_MASK 0x40000000u
  1460. #define CAN_MCR_FRZ_SHIFT 30
  1461. #define CAN_MCR_MDIS_MASK 0x80000000u
  1462. #define CAN_MCR_MDIS_SHIFT 31
  1463. /* CTRL1 Bit Fields */
  1464. #define CAN_CTRL1_PROPSEG_MASK 0x7u
  1465. #define CAN_CTRL1_PROPSEG_SHIFT 0
  1466. #define CAN_CTRL1_PROPSEG(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL1_PROPSEG_SHIFT))&CAN_CTRL1_PROPSEG_MASK)
  1467. #define CAN_CTRL1_LOM_MASK 0x8u
  1468. #define CAN_CTRL1_LOM_SHIFT 3
  1469. #define CAN_CTRL1_LBUF_MASK 0x10u
  1470. #define CAN_CTRL1_LBUF_SHIFT 4
  1471. #define CAN_CTRL1_TSYN_MASK 0x20u
  1472. #define CAN_CTRL1_TSYN_SHIFT 5
  1473. #define CAN_CTRL1_BOFFREC_MASK 0x40u
  1474. #define CAN_CTRL1_BOFFREC_SHIFT 6
  1475. #define CAN_CTRL1_SMP_MASK 0x80u
  1476. #define CAN_CTRL1_SMP_SHIFT 7
  1477. #define CAN_CTRL1_RWRNMSK_MASK 0x400u
  1478. #define CAN_CTRL1_RWRNMSK_SHIFT 10
  1479. #define CAN_CTRL1_TWRNMSK_MASK 0x800u
  1480. #define CAN_CTRL1_TWRNMSK_SHIFT 11
  1481. #define CAN_CTRL1_LPB_MASK 0x1000u
  1482. #define CAN_CTRL1_LPB_SHIFT 12
  1483. #define CAN_CTRL1_CLKSRC_MASK 0x2000u
  1484. #define CAN_CTRL1_CLKSRC_SHIFT 13
  1485. #define CAN_CTRL1_ERRMSK_MASK 0x4000u
  1486. #define CAN_CTRL1_ERRMSK_SHIFT 14
  1487. #define CAN_CTRL1_BOFFMSK_MASK 0x8000u
  1488. #define CAN_CTRL1_BOFFMSK_SHIFT 15
  1489. #define CAN_CTRL1_PSEG2_MASK 0x70000u
  1490. #define CAN_CTRL1_PSEG2_SHIFT 16
  1491. #define CAN_CTRL1_PSEG2(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL1_PSEG2_SHIFT))&CAN_CTRL1_PSEG2_MASK)
  1492. #define CAN_CTRL1_PSEG1_MASK 0x380000u
  1493. #define CAN_CTRL1_PSEG1_SHIFT 19
  1494. #define CAN_CTRL1_PSEG1(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL1_PSEG1_SHIFT))&CAN_CTRL1_PSEG1_MASK)
  1495. #define CAN_CTRL1_RJW_MASK 0xC00000u
  1496. #define CAN_CTRL1_RJW_SHIFT 22
  1497. #define CAN_CTRL1_RJW(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL1_RJW_SHIFT))&CAN_CTRL1_RJW_MASK)
  1498. #define CAN_CTRL1_PRESDIV_MASK 0xFF000000u
  1499. #define CAN_CTRL1_PRESDIV_SHIFT 24
  1500. #define CAN_CTRL1_PRESDIV(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL1_PRESDIV_SHIFT))&CAN_CTRL1_PRESDIV_MASK)
  1501. /* TIMER Bit Fields */
  1502. #define CAN_TIMER_TIMER_MASK 0xFFFFu
  1503. #define CAN_TIMER_TIMER_SHIFT 0
  1504. #define CAN_TIMER_TIMER(x) (((uint32_t)(((uint32_t)(x))<<CAN_TIMER_TIMER_SHIFT))&CAN_TIMER_TIMER_MASK)
  1505. /* RXMGMASK Bit Fields */
  1506. #define CAN_RXMGMASK_MG_MASK 0xFFFFFFFFu
  1507. #define CAN_RXMGMASK_MG_SHIFT 0
  1508. #define CAN_RXMGMASK_MG(x) (((uint32_t)(((uint32_t)(x))<<CAN_RXMGMASK_MG_SHIFT))&CAN_RXMGMASK_MG_MASK)
  1509. /* RX14MASK Bit Fields */
  1510. #define CAN_RX14MASK_RX14M_MASK 0xFFFFFFFFu
  1511. #define CAN_RX14MASK_RX14M_SHIFT 0
  1512. #define CAN_RX14MASK_RX14M(x) (((uint32_t)(((uint32_t)(x))<<CAN_RX14MASK_RX14M_SHIFT))&CAN_RX14MASK_RX14M_MASK)
  1513. /* RX15MASK Bit Fields */
  1514. #define CAN_RX15MASK_RX15M_MASK 0xFFFFFFFFu
  1515. #define CAN_RX15MASK_RX15M_SHIFT 0
  1516. #define CAN_RX15MASK_RX15M(x) (((uint32_t)(((uint32_t)(x))<<CAN_RX15MASK_RX15M_SHIFT))&CAN_RX15MASK_RX15M_MASK)
  1517. /* ECR Bit Fields */
  1518. #define CAN_ECR_TXERRCNT_MASK 0xFFu
  1519. #define CAN_ECR_TXERRCNT_SHIFT 0
  1520. #define CAN_ECR_TXERRCNT(x) (((uint32_t)(((uint32_t)(x))<<CAN_ECR_TXERRCNT_SHIFT))&CAN_ECR_TXERRCNT_MASK)
  1521. #define CAN_ECR_RXERRCNT_MASK 0xFF00u
  1522. #define CAN_ECR_RXERRCNT_SHIFT 8
  1523. #define CAN_ECR_RXERRCNT(x) (((uint32_t)(((uint32_t)(x))<<CAN_ECR_RXERRCNT_SHIFT))&CAN_ECR_RXERRCNT_MASK)
  1524. /* ESR1 Bit Fields */
  1525. #define CAN_ESR1_WAKINT_MASK 0x1u
  1526. #define CAN_ESR1_WAKINT_SHIFT 0
  1527. #define CAN_ESR1_ERRINT_MASK 0x2u
  1528. #define CAN_ESR1_ERRINT_SHIFT 1
  1529. #define CAN_ESR1_BOFFINT_MASK 0x4u
  1530. #define CAN_ESR1_BOFFINT_SHIFT 2
  1531. #define CAN_ESR1_RX_MASK 0x8u
  1532. #define CAN_ESR1_RX_SHIFT 3
  1533. #define CAN_ESR1_FLTCONF_MASK 0x30u
  1534. #define CAN_ESR1_FLTCONF_SHIFT 4
  1535. #define CAN_ESR1_FLTCONF(x) (((uint32_t)(((uint32_t)(x))<<CAN_ESR1_FLTCONF_SHIFT))&CAN_ESR1_FLTCONF_MASK)
  1536. #define CAN_ESR1_TX_MASK 0x40u
  1537. #define CAN_ESR1_TX_SHIFT 6
  1538. #define CAN_ESR1_IDLE_MASK 0x80u
  1539. #define CAN_ESR1_IDLE_SHIFT 7
  1540. #define CAN_ESR1_RXWRN_MASK 0x100u
  1541. #define CAN_ESR1_RXWRN_SHIFT 8
  1542. #define CAN_ESR1_TXWRN_MASK 0x200u
  1543. #define CAN_ESR1_TXWRN_SHIFT 9
  1544. #define CAN_ESR1_STFERR_MASK 0x400u
  1545. #define CAN_ESR1_STFERR_SHIFT 10
  1546. #define CAN_ESR1_FRMERR_MASK 0x800u
  1547. #define CAN_ESR1_FRMERR_SHIFT 11
  1548. #define CAN_ESR1_CRCERR_MASK 0x1000u
  1549. #define CAN_ESR1_CRCERR_SHIFT 12
  1550. #define CAN_ESR1_ACKERR_MASK 0x2000u
  1551. #define CAN_ESR1_ACKERR_SHIFT 13
  1552. #define CAN_ESR1_BIT0ERR_MASK 0x4000u
  1553. #define CAN_ESR1_BIT0ERR_SHIFT 14
  1554. #define CAN_ESR1_BIT1ERR_MASK 0x8000u
  1555. #define CAN_ESR1_BIT1ERR_SHIFT 15
  1556. #define CAN_ESR1_RWRNINT_MASK 0x10000u
  1557. #define CAN_ESR1_RWRNINT_SHIFT 16
  1558. #define CAN_ESR1_TWRNINT_MASK 0x20000u
  1559. #define CAN_ESR1_TWRNINT_SHIFT 17
  1560. #define CAN_ESR1_SYNCH_MASK 0x40000u
  1561. #define CAN_ESR1_SYNCH_SHIFT 18
  1562. /* IMASK2 Bit Fields */
  1563. #define CAN_IMASK2_BUFHM_MASK 0xFFFFFFFFu
  1564. #define CAN_IMASK2_BUFHM_SHIFT 0
  1565. #define CAN_IMASK2_BUFHM(x) (((uint32_t)(((uint32_t)(x))<<CAN_IMASK2_BUFHM_SHIFT))&CAN_IMASK2_BUFHM_MASK)
  1566. /* IMASK1 Bit Fields */
  1567. #define CAN_IMASK1_BUFLM_MASK 0xFFFFFFFFu
  1568. #define CAN_IMASK1_BUFLM_SHIFT 0
  1569. #define CAN_IMASK1_BUFLM(x) (((uint32_t)(((uint32_t)(x))<<CAN_IMASK1_BUFLM_SHIFT))&CAN_IMASK1_BUFLM_MASK)
  1570. /* IFLAG2 Bit Fields */
  1571. #define CAN_IFLAG2_BUFHI_MASK 0xFFFFFFFFu
  1572. #define CAN_IFLAG2_BUFHI_SHIFT 0
  1573. #define CAN_IFLAG2_BUFHI(x) (((uint32_t)(((uint32_t)(x))<<CAN_IFLAG2_BUFHI_SHIFT))&CAN_IFLAG2_BUFHI_MASK)
  1574. /* IFLAG1 Bit Fields */
  1575. #define CAN_IFLAG1_BUF4TO0I_MASK 0x1Fu
  1576. #define CAN_IFLAG1_BUF4TO0I_SHIFT 0
  1577. #define CAN_IFLAG1_BUF4TO0I(x) (((uint32_t)(((uint32_t)(x))<<CAN_IFLAG1_BUF4TO0I_SHIFT))&CAN_IFLAG1_BUF4TO0I_MASK)
  1578. #define CAN_IFLAG1_BUF5I_MASK 0x20u
  1579. #define CAN_IFLAG1_BUF5I_SHIFT 5
  1580. #define CAN_IFLAG1_BUF6I_MASK 0x40u
  1581. #define CAN_IFLAG1_BUF6I_SHIFT 6
  1582. #define CAN_IFLAG1_BUF7I_MASK 0x80u
  1583. #define CAN_IFLAG1_BUF7I_SHIFT 7
  1584. #define CAN_IFLAG1_BUF31TO8I_MASK 0xFFFFFF00u
  1585. #define CAN_IFLAG1_BUF31TO8I_SHIFT 8
  1586. #define CAN_IFLAG1_BUF31TO8I(x) (((uint32_t)(((uint32_t)(x))<<CAN_IFLAG1_BUF31TO8I_SHIFT))&CAN_IFLAG1_BUF31TO8I_MASK)
  1587. /* CTRL2 Bit Fields */
  1588. #define CAN_CTRL2_EACEN_MASK 0x10000u
  1589. #define CAN_CTRL2_EACEN_SHIFT 16
  1590. #define CAN_CTRL2_RRS_MASK 0x20000u
  1591. #define CAN_CTRL2_RRS_SHIFT 17
  1592. #define CAN_CTRL2_MRP_MASK 0x40000u
  1593. #define CAN_CTRL2_MRP_SHIFT 18
  1594. #define CAN_CTRL2_TASD_MASK 0xF80000u
  1595. #define CAN_CTRL2_TASD_SHIFT 19
  1596. #define CAN_CTRL2_TASD(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL2_TASD_SHIFT))&CAN_CTRL2_TASD_MASK)
  1597. #define CAN_CTRL2_RFFN_MASK 0xF000000u
  1598. #define CAN_CTRL2_RFFN_SHIFT 24
  1599. #define CAN_CTRL2_RFFN(x) (((uint32_t)(((uint32_t)(x))<<CAN_CTRL2_RFFN_SHIFT))&CAN_CTRL2_RFFN_MASK)
  1600. #define CAN_CTRL2_WRMFRZ_MASK 0x10000000u
  1601. #define CAN_CTRL2_WRMFRZ_SHIFT 28
  1602. /* ESR2 Bit Fields */
  1603. #define CAN_ESR2_IMB_MASK 0x2000u
  1604. #define CAN_ESR2_IMB_SHIFT 13
  1605. #define CAN_ESR2_VPS_MASK 0x4000u
  1606. #define CAN_ESR2_VPS_SHIFT 14
  1607. #define CAN_ESR2_LPTM_MASK 0x7F0000u
  1608. #define CAN_ESR2_LPTM_SHIFT 16
  1609. #define CAN_ESR2_LPTM(x) (((uint32_t)(((uint32_t)(x))<<CAN_ESR2_LPTM_SHIFT))&CAN_ESR2_LPTM_MASK)
  1610. /* CRCR Bit Fields */
  1611. #define CAN_CRCR_TXCRC_MASK 0x7FFFu
  1612. #define CAN_CRCR_TXCRC_SHIFT 0
  1613. #define CAN_CRCR_TXCRC(x) (((uint32_t)(((uint32_t)(x))<<CAN_CRCR_TXCRC_SHIFT))&CAN_CRCR_TXCRC_MASK)
  1614. #define CAN_CRCR_MBCRC_MASK 0x7F0000u
  1615. #define CAN_CRCR_MBCRC_SHIFT 16
  1616. #define CAN_CRCR_MBCRC(x) (((uint32_t)(((uint32_t)(x))<<CAN_CRCR_MBCRC_SHIFT))&CAN_CRCR_MBCRC_MASK)
  1617. /* RXFGMASK Bit Fields */
  1618. #define CAN_RXFGMASK_FGM_MASK 0xFFFFFFFFu
  1619. #define CAN_RXFGMASK_FGM_SHIFT 0
  1620. #define CAN_RXFGMASK_FGM(x) (((uint32_t)(((uint32_t)(x))<<CAN_RXFGMASK_FGM_SHIFT))&CAN_RXFGMASK_FGM_MASK)
  1621. /* RXFIR Bit Fields */
  1622. #define CAN_RXFIR_IDHIT_MASK 0x1FFu
  1623. #define CAN_RXFIR_IDHIT_SHIFT 0
  1624. #define CAN_RXFIR_IDHIT(x) (((uint32_t)(((uint32_t)(x))<<CAN_RXFIR_IDHIT_SHIFT))&CAN_RXFIR_IDHIT_MASK)
  1625. /* CS Bit Fields */
  1626. #define CAN_CS_TIME_STAMP_MASK 0xFFFFu
  1627. #define CAN_CS_TIME_STAMP_SHIFT 0
  1628. #define CAN_CS_TIME_STAMP(x) (((uint32_t)(((uint32_t)(x))<<CAN_CS_TIME_STAMP_SHIFT))&CAN_CS_TIME_STAMP_MASK)
  1629. #define CAN_CS_DLC_MASK 0xF0000u
  1630. #define CAN_CS_DLC_SHIFT 16
  1631. #define CAN_CS_DLC(x) (((uint32_t)(((uint32_t)(x))<<CAN_CS_DLC_SHIFT))&CAN_CS_DLC_MASK)
  1632. #define CAN_CS_RTR_MASK 0x100000u
  1633. #define CAN_CS_RTR_SHIFT 20
  1634. #define CAN_CS_IDE_MASK 0x200000u
  1635. #define CAN_CS_IDE_SHIFT 21
  1636. #define CAN_CS_SRR_MASK 0x400000u
  1637. #define CAN_CS_SRR_SHIFT 22
  1638. #define CAN_CS_CODE_MASK 0xF000000u
  1639. #define CAN_CS_CODE_SHIFT 24
  1640. #define CAN_CS_CODE(x) (((uint32_t)(((uint32_t)(x))<<CAN_CS_CODE_SHIFT))&CAN_CS_CODE_MASK)
  1641. /* ID Bit Fields */
  1642. #define CAN_ID_EXT_MASK 0x3FFFFu
  1643. #define CAN_ID_EXT_SHIFT 0
  1644. #define CAN_ID_EXT(x) (((uint32_t)(((uint32_t)(x))<<CAN_ID_EXT_SHIFT))&CAN_ID_EXT_MASK)
  1645. #define CAN_ID_STD_MASK 0x1FFC0000u
  1646. #define CAN_ID_STD_SHIFT 18
  1647. #define CAN_ID_STD(x) (((uint32_t)(((uint32_t)(x))<<CAN_ID_STD_SHIFT))&CAN_ID_STD_MASK)
  1648. #define CAN_ID_PRIO_MASK 0xE0000000u
  1649. #define CAN_ID_PRIO_SHIFT 29
  1650. #define CAN_ID_PRIO(x) (((uint32_t)(((uint32_t)(x))<<CAN_ID_PRIO_SHIFT))&CAN_ID_PRIO_MASK)
  1651. /* WORD0 Bit Fields */
  1652. #define CAN_WORD0_DATA_BYTE_3_MASK 0xFFu
  1653. #define CAN_WORD0_DATA_BYTE_3_SHIFT 0
  1654. #define CAN_WORD0_DATA_BYTE_3(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD0_DATA_BYTE_3_SHIFT))&CAN_WORD0_DATA_BYTE_3_MASK)
  1655. #define CAN_WORD0_DATA_BYTE_2_MASK 0xFF00u
  1656. #define CAN_WORD0_DATA_BYTE_2_SHIFT 8
  1657. #define CAN_WORD0_DATA_BYTE_2(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD0_DATA_BYTE_2_SHIFT))&CAN_WORD0_DATA_BYTE_2_MASK)
  1658. #define CAN_WORD0_DATA_BYTE_1_MASK 0xFF0000u
  1659. #define CAN_WORD0_DATA_BYTE_1_SHIFT 16
  1660. #define CAN_WORD0_DATA_BYTE_1(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD0_DATA_BYTE_1_SHIFT))&CAN_WORD0_DATA_BYTE_1_MASK)
  1661. #define CAN_WORD0_DATA_BYTE_0_MASK 0xFF000000u
  1662. #define CAN_WORD0_DATA_BYTE_0_SHIFT 24
  1663. #define CAN_WORD0_DATA_BYTE_0(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD0_DATA_BYTE_0_SHIFT))&CAN_WORD0_DATA_BYTE_0_MASK)
  1664. /* WORD1 Bit Fields */
  1665. #define CAN_WORD1_DATA_BYTE_7_MASK 0xFFu
  1666. #define CAN_WORD1_DATA_BYTE_7_SHIFT 0
  1667. #define CAN_WORD1_DATA_BYTE_7(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD1_DATA_BYTE_7_SHIFT))&CAN_WORD1_DATA_BYTE_7_MASK)
  1668. #define CAN_WORD1_DATA_BYTE_6_MASK 0xFF00u
  1669. #define CAN_WORD1_DATA_BYTE_6_SHIFT 8
  1670. #define CAN_WORD1_DATA_BYTE_6(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD1_DATA_BYTE_6_SHIFT))&CAN_WORD1_DATA_BYTE_6_MASK)
  1671. #define CAN_WORD1_DATA_BYTE_5_MASK 0xFF0000u
  1672. #define CAN_WORD1_DATA_BYTE_5_SHIFT 16
  1673. #define CAN_WORD1_DATA_BYTE_5(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD1_DATA_BYTE_5_SHIFT))&CAN_WORD1_DATA_BYTE_5_MASK)
  1674. #define CAN_WORD1_DATA_BYTE_4_MASK 0xFF000000u
  1675. #define CAN_WORD1_DATA_BYTE_4_SHIFT 24
  1676. #define CAN_WORD1_DATA_BYTE_4(x) (((uint32_t)(((uint32_t)(x))<<CAN_WORD1_DATA_BYTE_4_SHIFT))&CAN_WORD1_DATA_BYTE_4_MASK)
  1677. /* RXIMR Bit Fields */
  1678. #define CAN_RXIMR_MI_MASK 0xFFFFFFFFu
  1679. #define CAN_RXIMR_MI_SHIFT 0
  1680. #define CAN_RXIMR_MI(x) (((uint32_t)(((uint32_t)(x))<<CAN_RXIMR_MI_SHIFT))&CAN_RXIMR_MI_MASK)
  1681. /*! \} */ /* end of group CAN_Register_Masks */
  1682. /* CAN - Peripheral instance base addresses */
  1683. /*! Peripheral CAN0 base address */
  1684. #define CAN0_BASE (0x40024000u)
  1685. /*! Peripheral CAN0 base pointer */
  1686. #define CAN0 ((CAN_Type *)CAN0_BASE)
  1687. /*! Peripheral CAN1 base address */
  1688. #define CAN1_BASE (0x400A4000u)
  1689. /*! Peripheral CAN1 base pointer */
  1690. #define CAN1 ((CAN_Type *)CAN1_BASE)
  1691. /*! \} */ /* end of group CAN_Peripheral_Access_Layer */
  1692. /* ----------------------------------------------------------------------------
  1693. -- CMP Peripheral Access Layer
  1694. ---------------------------------------------------------------------------- */
  1695. /*! \addtogroup CMP_Peripheral_Access_Layer CMP Peripheral Access Layer */
  1696. /*! \{ */
  1697. /*! CMP - Register Layout Typedef */
  1698. typedef struct {
  1699. __IO uint8_t CR0; /*!< CMP Control Register 0, offset: 0x0 */
  1700. __IO uint8_t CR1; /*!< CMP Control Register 1, offset: 0x1 */
  1701. __IO uint8_t FPR; /*!< CMP Filter Period Register, offset: 0x2 */
  1702. __IO uint8_t SCR; /*!< CMP Status and Control Register, offset: 0x3 */
  1703. __IO uint8_t DACCR; /*!< DAC Control Register, offset: 0x4 */
  1704. __IO uint8_t MUXCR; /*!< MUX Control Register, offset: 0x5 */
  1705. } CMP_Type;
  1706. /* ----------------------------------------------------------------------------
  1707. -- CMP Register Masks
  1708. ---------------------------------------------------------------------------- */
  1709. /*! \addtogroup CMP_Register_Masks CMP Register Masks */
  1710. /*! \{ */
  1711. /* CR0 Bit Fields */
  1712. #define CMP_CR0_HYSTCTR_MASK 0x3u
  1713. #define CMP_CR0_HYSTCTR_SHIFT 0
  1714. #define CMP_CR0_HYSTCTR(x) (((uint8_t)(((uint8_t)(x))<<CMP_CR0_HYSTCTR_SHIFT))&CMP_CR0_HYSTCTR_MASK)
  1715. #define CMP_CR0_FILTER_CNT_MASK 0x70u
  1716. #define CMP_CR0_FILTER_CNT_SHIFT 4
  1717. #define CMP_CR0_FILTER_CNT(x) (((uint8_t)(((uint8_t)(x))<<CMP_CR0_FILTER_CNT_SHIFT))&CMP_CR0_FILTER_CNT_MASK)
  1718. /* CR1 Bit Fields */
  1719. #define CMP_CR1_EN_MASK 0x1u
  1720. #define CMP_CR1_EN_SHIFT 0
  1721. #define CMP_CR1_OPE_MASK 0x2u
  1722. #define CMP_CR1_OPE_SHIFT 1
  1723. #define CMP_CR1_COS_MASK 0x4u
  1724. #define CMP_CR1_COS_SHIFT 2
  1725. #define CMP_CR1_INV_MASK 0x8u
  1726. #define CMP_CR1_INV_SHIFT 3
  1727. #define CMP_CR1_PMODE_MASK 0x10u
  1728. #define CMP_CR1_PMODE_SHIFT 4
  1729. #define CMP_CR1_WE_MASK 0x40u
  1730. #define CMP_CR1_WE_SHIFT 6
  1731. #define CMP_CR1_SE_MASK 0x80u
  1732. #define CMP_CR1_SE_SHIFT 7
  1733. /* FPR Bit Fields */
  1734. #define CMP_FPR_FILT_PER_MASK 0xFFu
  1735. #define CMP_FPR_FILT_PER_SHIFT 0
  1736. #define CMP_FPR_FILT_PER(x) (((uint8_t)(((uint8_t)(x))<<CMP_FPR_FILT_PER_SHIFT))&CMP_FPR_FILT_PER_MASK)
  1737. /* SCR Bit Fields */
  1738. #define CMP_SCR_COUT_MASK 0x1u
  1739. #define CMP_SCR_COUT_SHIFT 0
  1740. #define CMP_SCR_CFF_MASK 0x2u
  1741. #define CMP_SCR_CFF_SHIFT 1
  1742. #define CMP_SCR_CFR_MASK 0x4u
  1743. #define CMP_SCR_CFR_SHIFT 2
  1744. #define CMP_SCR_IEF_MASK 0x8u
  1745. #define CMP_SCR_IEF_SHIFT 3
  1746. #define CMP_SCR_IER_MASK 0x10u
  1747. #define CMP_SCR_IER_SHIFT 4
  1748. #define CMP_SCR_SMELB_MASK 0x20u
  1749. #define CMP_SCR_SMELB_SHIFT 5
  1750. #define CMP_SCR_DMAEN_MASK 0x40u
  1751. #define CMP_SCR_DMAEN_SHIFT 6
  1752. /* DACCR Bit Fields */
  1753. #define CMP_DACCR_VOSEL_MASK 0x3Fu
  1754. #define CMP_DACCR_VOSEL_SHIFT 0
  1755. #define CMP_DACCR_VOSEL(x) (((uint8_t)(((uint8_t)(x))<<CMP_DACCR_VOSEL_SHIFT))&CMP_DACCR_VOSEL_MASK)
  1756. #define CMP_DACCR_VRSEL_MASK 0x40u
  1757. #define CMP_DACCR_VRSEL_SHIFT 6
  1758. #define CMP_DACCR_DACEN_MASK 0x80u
  1759. #define CMP_DACCR_DACEN_SHIFT 7
  1760. /* MUXCR Bit Fields */
  1761. #define CMP_MUXCR_MSEL_MASK 0x7u
  1762. #define CMP_MUXCR_MSEL_SHIFT 0
  1763. #define CMP_MUXCR_MSEL(x) (((uint8_t)(((uint8_t)(x))<<CMP_MUXCR_MSEL_SHIFT))&CMP_MUXCR_MSEL_MASK)
  1764. #define CMP_MUXCR_PSEL_MASK 0x38u
  1765. #define CMP_MUXCR_PSEL_SHIFT 3
  1766. #define CMP_MUXCR_PSEL(x) (((uint8_t)(((uint8_t)(x))<<CMP_MUXCR_PSEL_SHIFT))&CMP_MUXCR_PSEL_MASK)
  1767. #define CMP_MUXCR_MEN_MASK 0x40u
  1768. #define CMP_MUXCR_MEN_SHIFT 6
  1769. #define CMP_MUXCR_PEN_MASK 0x80u
  1770. #define CMP_MUXCR_PEN_SHIFT 7
  1771. /*! \} */ /* end of group CMP_Register_Masks */
  1772. /* CMP - Peripheral instance base addresses */
  1773. /*! Peripheral CMP0 base address */
  1774. #define CMP0_BASE (0x40073000u)
  1775. /*! Peripheral CMP0 base pointer */
  1776. #define CMP0 ((CMP_Type *)CMP0_BASE)
  1777. /*! Peripheral CMP1 base address */
  1778. #define CMP1_BASE (0x40073008u)
  1779. /*! Peripheral CMP1 base pointer */
  1780. #define CMP1 ((CMP_Type *)CMP1_BASE)
  1781. /*! Peripheral CMP2 base address */
  1782. #define CMP2_BASE (0x40073010u)
  1783. /*! Peripheral CMP2 base pointer */
  1784. #define CMP2 ((CMP_Type *)CMP2_BASE)
  1785. /*! \} */ /* end of group CMP_Peripheral_Access_Layer */
  1786. /* ----------------------------------------------------------------------------
  1787. -- CMT Peripheral Access Layer
  1788. ---------------------------------------------------------------------------- */
  1789. /*! \addtogroup CMT_Peripheral_Access_Layer CMT Peripheral Access Layer */
  1790. /*! \{ */
  1791. /*! CMT - Register Layout Typedef */
  1792. typedef struct {
  1793. __IO uint8_t CGH1; /*!< CMT Carrier Generator High Data Register 1, offset: 0x0 */
  1794. __IO uint8_t CGL1; /*!< CMT Carrier Generator Low Data Register 1, offset: 0x1 */
  1795. __IO uint8_t CGH2; /*!< CMT Carrier Generator High Data Register 2, offset: 0x2 */
  1796. __IO uint8_t CGL2; /*!< CMT Carrier Generator Low Data Register 2, offset: 0x3 */
  1797. __IO uint8_t OC; /*!< CMT Output Control Register, offset: 0x4 */
  1798. __IO uint8_t MSC; /*!< CMT Modulator Status and Control Register, offset: 0x5 */
  1799. __IO uint8_t CMD1; /*!< CMT Modulator Data Register Mark High, offset: 0x6 */
  1800. __IO uint8_t CMD2; /*!< CMT Modulator Data Register Mark Low, offset: 0x7 */
  1801. __IO uint8_t CMD3; /*!< CMT Modulator Data Register Space High, offset: 0x8 */
  1802. __IO uint8_t CMD4; /*!< CMT Modulator Data Register Space Low, offset: 0x9 */
  1803. __IO uint8_t PPS; /*!< CMT Primary Prescaler Register, offset: 0xA */
  1804. __IO uint8_t DMA; /*!< CMT Direct Memory Access, offset: 0xB */
  1805. } CMT_Type;
  1806. /* ----------------------------------------------------------------------------
  1807. -- CMT Register Masks
  1808. ---------------------------------------------------------------------------- */
  1809. /*! \addtogroup CMT_Register_Masks CMT Register Masks */
  1810. /*! \{ */
  1811. /* CGH1 Bit Fields */
  1812. #define CMT_CGH1_PH_MASK 0xFFu
  1813. #define CMT_CGH1_PH_SHIFT 0
  1814. #define CMT_CGH1_PH(x) (((uint8_t)(((uint8_t)(x))<<CMT_CGH1_PH_SHIFT))&CMT_CGH1_PH_MASK)
  1815. /* CGL1 Bit Fields */
  1816. #define CMT_CGL1_PL_MASK 0xFFu
  1817. #define CMT_CGL1_PL_SHIFT 0
  1818. #define CMT_CGL1_PL(x) (((uint8_t)(((uint8_t)(x))<<CMT_CGL1_PL_SHIFT))&CMT_CGL1_PL_MASK)
  1819. /* CGH2 Bit Fields */
  1820. #define CMT_CGH2_SH_MASK 0xFFu
  1821. #define CMT_CGH2_SH_SHIFT 0
  1822. #define CMT_CGH2_SH(x) (((uint8_t)(((uint8_t)(x))<<CMT_CGH2_SH_SHIFT))&CMT_CGH2_SH_MASK)
  1823. /* CGL2 Bit Fields */
  1824. #define CMT_CGL2_SL_MASK 0xFFu
  1825. #define CMT_CGL2_SL_SHIFT 0
  1826. #define CMT_CGL2_SL(x) (((uint8_t)(((uint8_t)(x))<<CMT_CGL2_SL_SHIFT))&CMT_CGL2_SL_MASK)
  1827. /* OC Bit Fields */
  1828. #define CMT_OC_IROPEN_MASK 0x20u
  1829. #define CMT_OC_IROPEN_SHIFT 5
  1830. #define CMT_OC_CMTPOL_MASK 0x40u
  1831. #define CMT_OC_CMTPOL_SHIFT 6
  1832. #define CMT_OC_IROL_MASK 0x80u
  1833. #define CMT_OC_IROL_SHIFT 7
  1834. /* MSC Bit Fields */
  1835. #define CMT_MSC_MCGEN_MASK 0x1u
  1836. #define CMT_MSC_MCGEN_SHIFT 0
  1837. #define CMT_MSC_EOCIE_MASK 0x2u
  1838. #define CMT_MSC_EOCIE_SHIFT 1
  1839. #define CMT_MSC_FSK_MASK 0x4u
  1840. #define CMT_MSC_FSK_SHIFT 2
  1841. #define CMT_MSC_BASE_MASK 0x8u
  1842. #define CMT_MSC_BASE_SHIFT 3
  1843. #define CMT_MSC_EXSPC_MASK 0x10u
  1844. #define CMT_MSC_EXSPC_SHIFT 4
  1845. #define CMT_MSC_CMTDIV_MASK 0x60u
  1846. #define CMT_MSC_CMTDIV_SHIFT 5
  1847. #define CMT_MSC_CMTDIV(x) (((uint8_t)(((uint8_t)(x))<<CMT_MSC_CMTDIV_SHIFT))&CMT_MSC_CMTDIV_MASK)
  1848. #define CMT_MSC_EOCF_MASK 0x80u
  1849. #define CMT_MSC_EOCF_SHIFT 7
  1850. /* CMD1 Bit Fields */
  1851. #define CMT_CMD1_MB_MASK 0xFFu
  1852. #define CMT_CMD1_MB_SHIFT 0
  1853. #define CMT_CMD1_MB(x) (((uint8_t)(((uint8_t)(x))<<CMT_CMD1_MB_SHIFT))&CMT_CMD1_MB_MASK)
  1854. /* CMD2 Bit Fields */
  1855. #define CMT_CMD2_MB_MASK 0xFFu
  1856. #define CMT_CMD2_MB_SHIFT 0
  1857. #define CMT_CMD2_MB(x) (((uint8_t)(((uint8_t)(x))<<CMT_CMD2_MB_SHIFT))&CMT_CMD2_MB_MASK)
  1858. /* CMD3 Bit Fields */
  1859. #define CMT_CMD3_SB_MASK 0xFFu
  1860. #define CMT_CMD3_SB_SHIFT 0
  1861. #define CMT_CMD3_SB(x) (((uint8_t)(((uint8_t)(x))<<CMT_CMD3_SB_SHIFT))&CMT_CMD3_SB_MASK)
  1862. /* CMD4 Bit Fields */
  1863. #define CMT_CMD4_SB_MASK 0xFFu
  1864. #define CMT_CMD4_SB_SHIFT 0
  1865. #define CMT_CMD4_SB(x) (((uint8_t)(((uint8_t)(x))<<CMT_CMD4_SB_SHIFT))&CMT_CMD4_SB_MASK)
  1866. /* PPS Bit Fields */
  1867. #define CMT_PPS_PPSDIV_MASK 0xFu
  1868. #define CMT_PPS_PPSDIV_SHIFT 0
  1869. #define CMT_PPS_PPSDIV(x) (((uint8_t)(((uint8_t)(x))<<CMT_PPS_PPSDIV_SHIFT))&CMT_PPS_PPSDIV_MASK)
  1870. /* DMA Bit Fields */
  1871. #define CMT_DMA_DMA_MASK 0x1u
  1872. #define CMT_DMA_DMA_SHIFT 0
  1873. /*! \} */ /* end of group CMT_Register_Masks */
  1874. /* CMT - Peripheral instance base addresses */
  1875. /*! Peripheral CMT base address */
  1876. #define CMT_BASE (0x40062000u)
  1877. /*! Peripheral CMT base pointer */
  1878. #define CMT ((CMT_Type *)CMT_BASE)
  1879. /*! \} */ /* end of group CMT_Peripheral_Access_Layer */
  1880. /* ----------------------------------------------------------------------------
  1881. -- CRC Peripheral Access Layer
  1882. ---------------------------------------------------------------------------- */
  1883. /*! \addtogroup CRC_Peripheral_Access_Layer CRC Peripheral Access Layer */
  1884. /*! \{ */
  1885. /*! CRC - Register Layout Typedef */
  1886. typedef struct {
  1887. union { /* offset: 0x0 */
  1888. __IO uint32_t CRC; /*!< CRC Data Register, offset: 0x0 */
  1889. struct { /* offset: 0x0 */
  1890. __IO uint16_t CRCL; /*!< CRC_CRCL register., offset: 0x0 */
  1891. __IO uint16_t CRCH; /*!< CRC_CRCH register., offset: 0x2 */
  1892. } ACCESS16BIT;
  1893. struct { /* offset: 0x0 */
  1894. __IO uint8_t CRCLL; /*!< CRC_CRCLL register., offset: 0x0 */
  1895. __IO uint8_t CRCLU; /*!< CRC_CRCLU register., offset: 0x1 */
  1896. __IO uint8_t CRCHL; /*!< CRC_CRCHL register., offset: 0x2 */
  1897. __IO uint8_t CRCHU; /*!< CRC_CRCHU register., offset: 0x3 */
  1898. } ACCESS8BIT;
  1899. };
  1900. union { /* offset: 0x4 */
  1901. __IO uint32_t GPOLY; /*!< CRC Polynomial Register, offset: 0x4 */
  1902. struct { /* offset: 0x4 */
  1903. __IO uint16_t GPOLYL; /*!< CRC_GPOLYL register., offset: 0x4 */
  1904. __IO uint16_t GPOLYH; /*!< CRC_GPOLYH register., offset: 0x6 */
  1905. } GPOLY_ACCESS16BIT;
  1906. struct { /* offset: 0x4 */
  1907. __IO uint8_t GPOLYLL; /*!< CRC_GPOLYLL register., offset: 0x4 */
  1908. __IO uint8_t GPOLYLU; /*!< CRC_GPOLYLU register., offset: 0x5 */
  1909. __IO uint8_t GPOLYHL; /*!< CRC_GPOLYHL register., offset: 0x6 */
  1910. __IO uint8_t GPOLYHU; /*!< CRC_GPOLYHU register., offset: 0x7 */
  1911. } GPOLY_ACCESS8BIT;
  1912. };
  1913. __IO uint32_t CTRL; /*!< CRC Control Register, offset: 0x8 */
  1914. } CRC_Type;
  1915. /* ----------------------------------------------------------------------------
  1916. -- CRC Register Masks
  1917. ---------------------------------------------------------------------------- */
  1918. /*! \addtogroup CRC_Register_Masks CRC Register Masks */
  1919. /*! \{ */
  1920. /* CRC Bit Fields */
  1921. #define CRC_CRC_LL_MASK 0xFFu
  1922. #define CRC_CRC_LL_SHIFT 0
  1923. #define CRC_CRC_LL(x) (((uint32_t)(((uint32_t)(x))<<CRC_CRC_LL_SHIFT))&CRC_CRC_LL_MASK)
  1924. #define CRC_CRC_LU_MASK 0xFF00u
  1925. #define CRC_CRC_LU_SHIFT 8
  1926. #define CRC_CRC_LU(x) (((uint32_t)(((uint32_t)(x))<<CRC_CRC_LU_SHIFT))&CRC_CRC_LU_MASK)
  1927. #define CRC_CRC_HL_MASK 0xFF0000u
  1928. #define CRC_CRC_HL_SHIFT 16
  1929. #define CRC_CRC_HL(x) (((uint32_t)(((uint32_t)(x))<<CRC_CRC_HL_SHIFT))&CRC_CRC_HL_MASK)
  1930. #define CRC_CRC_HU_MASK 0xFF000000u
  1931. #define CRC_CRC_HU_SHIFT 24
  1932. #define CRC_CRC_HU(x) (((uint32_t)(((uint32_t)(x))<<CRC_CRC_HU_SHIFT))&CRC_CRC_HU_MASK)
  1933. /* CRCL Bit Fields */
  1934. #define CRC_CRCL_CRCL_MASK 0xFFFFu
  1935. #define CRC_CRCL_CRCL_SHIFT 0
  1936. #define CRC_CRCL_CRCL(x) (((uint16_t)(((uint16_t)(x))<<CRC_CRCL_CRCL_SHIFT))&CRC_CRCL_CRCL_MASK)
  1937. /* CRCH Bit Fields */
  1938. #define CRC_CRCH_CRCH_MASK 0xFFFFu
  1939. #define CRC_CRCH_CRCH_SHIFT 0
  1940. #define CRC_CRCH_CRCH(x) (((uint16_t)(((uint16_t)(x))<<CRC_CRCH_CRCH_SHIFT))&CRC_CRCH_CRCH_MASK)
  1941. /* CRCLL Bit Fields */
  1942. #define CRC_CRCLL_CRCLL_MASK 0xFFu
  1943. #define CRC_CRCLL_CRCLL_SHIFT 0
  1944. #define CRC_CRCLL_CRCLL(x) (((uint8_t)(((uint8_t)(x))<<CRC_CRCLL_CRCLL_SHIFT))&CRC_CRCLL_CRCLL_MASK)
  1945. /* CRCLU Bit Fields */
  1946. #define CRC_CRCLU_CRCLU_MASK 0xFFu
  1947. #define CRC_CRCLU_CRCLU_SHIFT 0
  1948. #define CRC_CRCLU_CRCLU(x) (((uint8_t)(((uint8_t)(x))<<CRC_CRCLU_CRCLU_SHIFT))&CRC_CRCLU_CRCLU_MASK)
  1949. /* CRCHL Bit Fields */
  1950. #define CRC_CRCHL_CRCHL_MASK 0xFFu
  1951. #define CRC_CRCHL_CRCHL_SHIFT 0
  1952. #define CRC_CRCHL_CRCHL(x) (((uint8_t)(((uint8_t)(x))<<CRC_CRCHL_CRCHL_SHIFT))&CRC_CRCHL_CRCHL_MASK)
  1953. /* CRCHU Bit Fields */
  1954. #define CRC_CRCHU_CRCHU_MASK 0xFFu
  1955. #define CRC_CRCHU_CRCHU_SHIFT 0
  1956. #define CRC_CRCHU_CRCHU(x) (((uint8_t)(((uint8_t)(x))<<CRC_CRCHU_CRCHU_SHIFT))&CRC_CRCHU_CRCHU_MASK)
  1957. /* GPOLY Bit Fields */
  1958. #define CRC_GPOLY_LOW_MASK 0xFFFFu
  1959. #define CRC_GPOLY_LOW_SHIFT 0
  1960. #define CRC_GPOLY_LOW(x) (((uint32_t)(((uint32_t)(x))<<CRC_GPOLY_LOW_SHIFT))&CRC_GPOLY_LOW_MASK)
  1961. #define CRC_GPOLY_HIGH_MASK 0xFFFF0000u
  1962. #define CRC_GPOLY_HIGH_SHIFT 16
  1963. #define CRC_GPOLY_HIGH(x) (((uint32_t)(((uint32_t)(x))<<CRC_GPOLY_HIGH_SHIFT))&CRC_GPOLY_HIGH_MASK)
  1964. /* GPOLYL Bit Fields */
  1965. #define CRC_GPOLYL_GPOLYL_MASK 0xFFFFu
  1966. #define CRC_GPOLYL_GPOLYL_SHIFT 0
  1967. #define CRC_GPOLYL_GPOLYL(x) (((uint16_t)(((uint16_t)(x))<<CRC_GPOLYL_GPOLYL_SHIFT))&CRC_GPOLYL_GPOLYL_MASK)
  1968. /* GPOLYH Bit Fields */
  1969. #define CRC_GPOLYH_GPOLYH_MASK 0xFFFFu
  1970. #define CRC_GPOLYH_GPOLYH_SHIFT 0
  1971. #define CRC_GPOLYH_GPOLYH(x) (((uint16_t)(((uint16_t)(x))<<CRC_GPOLYH_GPOLYH_SHIFT))&CRC_GPOLYH_GPOLYH_MASK)
  1972. /* GPOLYLL Bit Fields */
  1973. #define CRC_GPOLYLL_GPOLYLL_MASK 0xFFu
  1974. #define CRC_GPOLYLL_GPOLYLL_SHIFT 0
  1975. #define CRC_GPOLYLL_GPOLYLL(x) (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYLL_GPOLYLL_SHIFT))&CRC_GPOLYLL_GPOLYLL_MASK)
  1976. /* GPOLYLU Bit Fields */
  1977. #define CRC_GPOLYLU_GPOLYLU_MASK 0xFFu
  1978. #define CRC_GPOLYLU_GPOLYLU_SHIFT 0
  1979. #define CRC_GPOLYLU_GPOLYLU(x) (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYLU_GPOLYLU_SHIFT))&CRC_GPOLYLU_GPOLYLU_MASK)
  1980. /* GPOLYHL Bit Fields */
  1981. #define CRC_GPOLYHL_GPOLYHL_MASK 0xFFu
  1982. #define CRC_GPOLYHL_GPOLYHL_SHIFT 0
  1983. #define CRC_GPOLYHL_GPOLYHL(x) (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYHL_GPOLYHL_SHIFT))&CRC_GPOLYHL_GPOLYHL_MASK)
  1984. /* GPOLYHU Bit Fields */
  1985. #define CRC_GPOLYHU_GPOLYHU_MASK 0xFFu
  1986. #define CRC_GPOLYHU_GPOLYHU_SHIFT 0
  1987. #define CRC_GPOLYHU_GPOLYHU(x) (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYHU_GPOLYHU_SHIFT))&CRC_GPOLYHU_GPOLYHU_MASK)
  1988. /* CTRL Bit Fields */
  1989. #define CRC_CTRL_TCRC_MASK 0x1000000u
  1990. #define CRC_CTRL_TCRC_SHIFT 24
  1991. #define CRC_CTRL_WAS_MASK 0x2000000u
  1992. #define CRC_CTRL_WAS_SHIFT 25
  1993. #define CRC_CTRL_FXOR_MASK 0x4000000u
  1994. #define CRC_CTRL_FXOR_SHIFT 26
  1995. #define CRC_CTRL_TOTR_MASK 0x30000000u
  1996. #define CRC_CTRL_TOTR_SHIFT 28
  1997. #define CRC_CTRL_TOTR(x) (((uint32_t)(((uint32_t)(x))<<CRC_CTRL_TOTR_SHIFT))&CRC_CTRL_TOTR_MASK)
  1998. #define CRC_CTRL_TOT_MASK 0xC0000000u
  1999. #define CRC_CTRL_TOT_SHIFT 30
  2000. #define CRC_CTRL_TOT(x) (((uint32_t)(((uint32_t)(x))<<CRC_CTRL_TOT_SHIFT))&CRC_CTRL_TOT_MASK)
  2001. /*! \} */ /* end of group CRC_Register_Masks */
  2002. /* CRC - Peripheral instance base addresses */
  2003. /*! Peripheral CRC base address */
  2004. #define CRC_BASE (0x40032000u)
  2005. /*! Peripheral CRC base pointer */
  2006. #define CRC ((CRC_Type *)CRC_BASE)
  2007. /*! \} */ /* end of group CRC_Peripheral_Access_Layer */
  2008. /* ----------------------------------------------------------------------------
  2009. -- DAC Peripheral Access Layer
  2010. ---------------------------------------------------------------------------- */
  2011. /*! \addtogroup DAC_Peripheral_Access_Layer DAC Peripheral Access Layer */
  2012. /*! \{ */
  2013. /*! DAC - Register Layout Typedef */
  2014. typedef struct {
  2015. struct { /* offset: 0x0, array step: 0x2 */
  2016. __IO uint8_t DATL; /*!< DAC Data Low Register, array offset: 0x0, array step: 0x2 */
  2017. __IO uint8_t DATH; /*!< DAC Data High Register, array offset: 0x1, array step: 0x2 */
  2018. } DAT[16];
  2019. __IO uint8_t SR; /*!< DAC Status Register, offset: 0x20 */
  2020. __IO uint8_t C0; /*!< DAC Control Register, offset: 0x21 */
  2021. __IO uint8_t C1; /*!< DAC Control Register 1, offset: 0x22 */
  2022. __IO uint8_t C2; /*!< DAC Control Register 2, offset: 0x23 */
  2023. } DAC_Type;
  2024. /* ----------------------------------------------------------------------------
  2025. -- DAC Register Masks
  2026. ---------------------------------------------------------------------------- */
  2027. /*! \addtogroup DAC_Register_Masks DAC Register Masks */
  2028. /*! \{ */
  2029. /* DATL Bit Fields */
  2030. #define DAC_DATL_DATA_MASK 0xFFu
  2031. #define DAC_DATL_DATA_SHIFT 0
  2032. #define DAC_DATL_DATA(x) (((uint8_t)(((uint8_t)(x))<<DAC_DATL_DATA_SHIFT))&DAC_DATL_DATA_MASK)
  2033. /* DATH Bit Fields */
  2034. #define DAC_DATH_DATA_MASK 0xFu
  2035. #define DAC_DATH_DATA_SHIFT 0
  2036. #define DAC_DATH_DATA(x) (((uint8_t)(((uint8_t)(x))<<DAC_DATH_DATA_SHIFT))&DAC_DATH_DATA_MASK)
  2037. /* SR Bit Fields */
  2038. #define DAC_SR_DACBFRPBF_MASK 0x1u
  2039. #define DAC_SR_DACBFRPBF_SHIFT 0
  2040. #define DAC_SR_DACBFRPTF_MASK 0x2u
  2041. #define DAC_SR_DACBFRPTF_SHIFT 1
  2042. #define DAC_SR_DACBFWMF_MASK 0x4u
  2043. #define DAC_SR_DACBFWMF_SHIFT 2
  2044. /* C0 Bit Fields */
  2045. #define DAC_C0_DACBBIEN_MASK 0x1u
  2046. #define DAC_C0_DACBBIEN_SHIFT 0
  2047. #define DAC_C0_DACBTIEN_MASK 0x2u
  2048. #define DAC_C0_DACBTIEN_SHIFT 1
  2049. #define DAC_C0_DACBWIEN_MASK 0x4u
  2050. #define DAC_C0_DACBWIEN_SHIFT 2
  2051. #define DAC_C0_LPEN_MASK 0x8u
  2052. #define DAC_C0_LPEN_SHIFT 3
  2053. #define DAC_C0_DACSWTRG_MASK 0x10u
  2054. #define DAC_C0_DACSWTRG_SHIFT 4
  2055. #define DAC_C0_DACTRGSEL_MASK 0x20u
  2056. #define DAC_C0_DACTRGSEL_SHIFT 5
  2057. #define DAC_C0_DACRFS_MASK 0x40u
  2058. #define DAC_C0_DACRFS_SHIFT 6
  2059. #define DAC_C0_DACEN_MASK 0x80u
  2060. #define DAC_C0_DACEN_SHIFT 7
  2061. /* C1 Bit Fields */
  2062. #define DAC_C1_DACBFEN_MASK 0x1u
  2063. #define DAC_C1_DACBFEN_SHIFT 0
  2064. #define DAC_C1_DACBFMD_MASK 0x6u
  2065. #define DAC_C1_DACBFMD_SHIFT 1
  2066. #define DAC_C1_DACBFMD(x) (((uint8_t)(((uint8_t)(x))<<DAC_C1_DACBFMD_SHIFT))&DAC_C1_DACBFMD_MASK)
  2067. #define DAC_C1_DACBFWM_MASK 0x18u
  2068. #define DAC_C1_DACBFWM_SHIFT 3
  2069. #define DAC_C1_DACBFWM(x) (((uint8_t)(((uint8_t)(x))<<DAC_C1_DACBFWM_SHIFT))&DAC_C1_DACBFWM_MASK)
  2070. #define DAC_C1_DMAEN_MASK 0x80u
  2071. #define DAC_C1_DMAEN_SHIFT 7
  2072. /* C2 Bit Fields */
  2073. #define DAC_C2_DACBFUP_MASK 0xFu
  2074. #define DAC_C2_DACBFUP_SHIFT 0
  2075. #define DAC_C2_DACBFUP(x) (((uint8_t)(((uint8_t)(x))<<DAC_C2_DACBFUP_SHIFT))&DAC_C2_DACBFUP_MASK)
  2076. #define DAC_C2_DACBFRP_MASK 0xF0u
  2077. #define DAC_C2_DACBFRP_SHIFT 4
  2078. #define DAC_C2_DACBFRP(x) (((uint8_t)(((uint8_t)(x))<<DAC_C2_DACBFRP_SHIFT))&DAC_C2_DACBFRP_MASK)
  2079. /*! \} */ /* end of group DAC_Register_Masks */
  2080. /* DAC - Peripheral instance base addresses */
  2081. /*! Peripheral DAC0 base address */
  2082. #define DAC0_BASE (0x400CC000u)
  2083. /*! Peripheral DAC0 base pointer */
  2084. #define DAC0 ((DAC_Type *)DAC0_BASE)
  2085. /*! Peripheral DAC1 base address */
  2086. #define DAC1_BASE (0x400CD000u)
  2087. /*! Peripheral DAC1 base pointer */
  2088. #define DAC1 ((DAC_Type *)DAC1_BASE)
  2089. /*! \} */ /* end of group DAC_Peripheral_Access_Layer */
  2090. /* ----------------------------------------------------------------------------
  2091. -- DMA Peripheral Access Layer
  2092. ---------------------------------------------------------------------------- */
  2093. /*! \addtogroup DMA_Peripheral_Access_Layer DMA Peripheral Access Layer */
  2094. /*! \{ */
  2095. /*! DMA - Register Layout Typedef */
  2096. typedef struct {
  2097. __IO uint32_t CR; /*!< Control Register, offset: 0x0 */
  2098. __I uint32_t ES; /*!< Error Status Register, offset: 0x4 */
  2099. uint8_t RESERVED_0[4];
  2100. __IO uint32_t ERQ; /*!< Enable Request Register, offset: 0xC */
  2101. uint8_t RESERVED_1[4];
  2102. __IO uint32_t EEI; /*!< Enable Error Interrupt Register, offset: 0x14 */
  2103. __O uint8_t CEEI; /*!< Clear Enable Error Interrupt Register, offset: 0x18 */
  2104. __O uint8_t SEEI; /*!< Set Enable Error Interrupt Register, offset: 0x19 */
  2105. __O uint8_t CERQ; /*!< Clear Enable Request Register, offset: 0x1A */
  2106. __O uint8_t SERQ; /*!< Set Enable Request Register, offset: 0x1B */
  2107. __O uint8_t CDNE; /*!< Clear DONE Status Bit Register, offset: 0x1C */
  2108. __O uint8_t SSRT; /*!< Set START Bit Register, offset: 0x1D */
  2109. __O uint8_t CERR; /*!< Clear Error Register, offset: 0x1E */
  2110. __O uint8_t CINT; /*!< Clear Interrupt Request Register, offset: 0x1F */
  2111. uint8_t RESERVED_2[4];
  2112. __IO uint32_t INT; /*!< Interrupt Request Register, offset: 0x24 */
  2113. uint8_t RESERVED_3[4];
  2114. __IO uint32_t ERR; /*!< Error Register, offset: 0x2C */
  2115. uint8_t RESERVED_4[4];
  2116. __IO uint32_t HRS; /*!< Hardware Request Status Register, offset: 0x34 */
  2117. uint8_t RESERVED_5[200];
  2118. __IO uint8_t DCHPRI3; /*!< Channel n Priority Register, offset: 0x100 */
  2119. __IO uint8_t DCHPRI2; /*!< Channel n Priority Register, offset: 0x101 */
  2120. __IO uint8_t DCHPRI1; /*!< Channel n Priority Register, offset: 0x102 */
  2121. __IO uint8_t DCHPRI0; /*!< Channel n Priority Register, offset: 0x103 */
  2122. __IO uint8_t DCHPRI7; /*!< Channel n Priority Register, offset: 0x104 */
  2123. __IO uint8_t DCHPRI6; /*!< Channel n Priority Register, offset: 0x105 */
  2124. __IO uint8_t DCHPRI5; /*!< Channel n Priority Register, offset: 0x106 */
  2125. __IO uint8_t DCHPRI4; /*!< Channel n Priority Register, offset: 0x107 */
  2126. __IO uint8_t DCHPRI11; /*!< Channel n Priority Register, offset: 0x108 */
  2127. __IO uint8_t DCHPRI10; /*!< Channel n Priority Register, offset: 0x109 */
  2128. __IO uint8_t DCHPRI9; /*!< Channel n Priority Register, offset: 0x10A */
  2129. __IO uint8_t DCHPRI8; /*!< Channel n Priority Register, offset: 0x10B */
  2130. __IO uint8_t DCHPRI15; /*!< Channel n Priority Register, offset: 0x10C */
  2131. __IO uint8_t DCHPRI14; /*!< Channel n Priority Register, offset: 0x10D */
  2132. __IO uint8_t DCHPRI13; /*!< Channel n Priority Register, offset: 0x10E */
  2133. __IO uint8_t DCHPRI12; /*!< Channel n Priority Register, offset: 0x10F */
  2134. uint8_t RESERVED_6[3824];
  2135. struct { /* offset: 0x1000, array step: 0x20 */
  2136. __IO uint32_t SADDR; /*!< TCD Source Address, array offset: 0x1000, array step: 0x20 */
  2137. __IO uint16_t SOFF; /*!< TCD Signed Source Address Offset, array offset: 0x1004, array step: 0x20 */
  2138. __IO uint16_t ATTR; /*!< TCD Transfer Attributes, array offset: 0x1006, array step: 0x20 */
  2139. union { /* offset: 0x1008, array step: 0x20 */
  2140. __IO uint32_t NBYTES_MLNO; /*!< TCD Minor Byte Count (Minor Loop Disabled), array offset: 0x1008, array step: 0x20 */
  2141. __IO uint32_t NBYTES_MLOFFNO; /*!< TCD Signed Minor Loop Offset (Minor Loop Enabled and Offset Disabled), array offset: 0x1008, array step: 0x20 */
  2142. __IO uint32_t NBYTES_MLOFFYES; /*!< TCD Signed Minor Loop Offset (Minor Loop and Offset Enabled), array offset: 0x1008, array step: 0x20 */
  2143. };
  2144. __IO uint32_t SLAST; /*!< TCD Last Source Address Adjustment, array offset: 0x100C, array step: 0x20 */
  2145. __IO uint32_t DADDR; /*!< TCD Destination Address, array offset: 0x1010, array step: 0x20 */
  2146. __IO uint16_t DOFF; /*!< TCD Signed Destination Address Offset, array offset: 0x1014, array step: 0x20 */
  2147. union { /* offset: 0x1016, array step: 0x20 */
  2148. __IO uint16_t CITER_ELINKYES; /*!< TCD Current Minor Loop Link, Major Loop Count (Channel Linking Enabled), array offset: 0x1016, array step: 0x20 */
  2149. __IO uint16_t CITER_ELINKNO; /*!< TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled), array offset: 0x1016, array step: 0x20 */
  2150. };
  2151. __IO uint32_t DLAST_SGA; /*!< TCD Last Destination Address Adjustment/Scatter Gather Address, array offset: 0x1018, array step: 0x20 */
  2152. __IO uint16_t CSR; /*!< TCD Control and Status, array offset: 0x101C, array step: 0x20 */
  2153. union { /* offset: 0x101E, array step: 0x20 */
  2154. __IO uint16_t BITER_ELINKNO; /*!< TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled), array offset: 0x101E, array step: 0x20 */
  2155. __IO uint16_t BITER_ELINKYES; /*!< TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Enabled), array offset: 0x101E, array step: 0x20 */
  2156. };
  2157. } TCD[16];
  2158. } DMA_Type;
  2159. /* ----------------------------------------------------------------------------
  2160. -- DMA Register Masks
  2161. ---------------------------------------------------------------------------- */
  2162. /*! \addtogroup DMA_Register_Masks DMA Register Masks */
  2163. /*! \{ */
  2164. /* CR Bit Fields */
  2165. #define DMA_CR_EDBG_MASK 0x2u
  2166. #define DMA_CR_EDBG_SHIFT 1
  2167. #define DMA_CR_ERCA_MASK 0x4u
  2168. #define DMA_CR_ERCA_SHIFT 2
  2169. #define DMA_CR_HOE_MASK 0x10u
  2170. #define DMA_CR_HOE_SHIFT 4
  2171. #define DMA_CR_HALT_MASK 0x20u
  2172. #define DMA_CR_HALT_SHIFT 5
  2173. #define DMA_CR_CLM_MASK 0x40u
  2174. #define DMA_CR_CLM_SHIFT 6
  2175. #define DMA_CR_EMLM_MASK 0x80u
  2176. #define DMA_CR_EMLM_SHIFT 7
  2177. #define DMA_CR_ECX_MASK 0x10000u
  2178. #define DMA_CR_ECX_SHIFT 16
  2179. #define DMA_CR_CX_MASK 0x20000u
  2180. #define DMA_CR_CX_SHIFT 17
  2181. /* ES Bit Fields */
  2182. #define DMA_ES_DBE_MASK 0x1u
  2183. #define DMA_ES_DBE_SHIFT 0
  2184. #define DMA_ES_SBE_MASK 0x2u
  2185. #define DMA_ES_SBE_SHIFT 1
  2186. #define DMA_ES_SGE_MASK 0x4u
  2187. #define DMA_ES_SGE_SHIFT 2
  2188. #define DMA_ES_NCE_MASK 0x8u
  2189. #define DMA_ES_NCE_SHIFT 3
  2190. #define DMA_ES_DOE_MASK 0x10u
  2191. #define DMA_ES_DOE_SHIFT 4
  2192. #define DMA_ES_DAE_MASK 0x20u
  2193. #define DMA_ES_DAE_SHIFT 5
  2194. #define DMA_ES_SOE_MASK 0x40u
  2195. #define DMA_ES_SOE_SHIFT 6
  2196. #define DMA_ES_SAE_MASK 0x80u
  2197. #define DMA_ES_SAE_SHIFT 7
  2198. #define DMA_ES_ERRCHN_MASK 0xF00u
  2199. #define DMA_ES_ERRCHN_SHIFT 8
  2200. #define DMA_ES_ERRCHN(x) (((uint32_t)(((uint32_t)(x))<<DMA_ES_ERRCHN_SHIFT))&DMA_ES_ERRCHN_MASK)
  2201. #define DMA_ES_CPE_MASK 0x4000u
  2202. #define DMA_ES_CPE_SHIFT 14
  2203. #define DMA_ES_ECX_MASK 0x10000u
  2204. #define DMA_ES_ECX_SHIFT 16
  2205. #define DMA_ES_VLD_MASK 0x80000000u
  2206. #define DMA_ES_VLD_SHIFT 31
  2207. /* ERQ Bit Fields */
  2208. #define DMA_ERQ_ERQ0_MASK 0x1u
  2209. #define DMA_ERQ_ERQ0_SHIFT 0
  2210. #define DMA_ERQ_ERQ1_MASK 0x2u
  2211. #define DMA_ERQ_ERQ1_SHIFT 1
  2212. #define DMA_ERQ_ERQ2_MASK 0x4u
  2213. #define DMA_ERQ_ERQ2_SHIFT 2
  2214. #define DMA_ERQ_ERQ3_MASK 0x8u
  2215. #define DMA_ERQ_ERQ3_SHIFT 3
  2216. #define DMA_ERQ_ERQ4_MASK 0x10u
  2217. #define DMA_ERQ_ERQ4_SHIFT 4
  2218. #define DMA_ERQ_ERQ5_MASK 0x20u
  2219. #define DMA_ERQ_ERQ5_SHIFT 5
  2220. #define DMA_ERQ_ERQ6_MASK 0x40u
  2221. #define DMA_ERQ_ERQ6_SHIFT 6
  2222. #define DMA_ERQ_ERQ7_MASK 0x80u
  2223. #define DMA_ERQ_ERQ7_SHIFT 7
  2224. #define DMA_ERQ_ERQ8_MASK 0x100u
  2225. #define DMA_ERQ_ERQ8_SHIFT 8
  2226. #define DMA_ERQ_ERQ9_MASK 0x200u
  2227. #define DMA_ERQ_ERQ9_SHIFT 9
  2228. #define DMA_ERQ_ERQ10_MASK 0x400u
  2229. #define DMA_ERQ_ERQ10_SHIFT 10
  2230. #define DMA_ERQ_ERQ11_MASK 0x800u
  2231. #define DMA_ERQ_ERQ11_SHIFT 11
  2232. #define DMA_ERQ_ERQ12_MASK 0x1000u
  2233. #define DMA_ERQ_ERQ12_SHIFT 12
  2234. #define DMA_ERQ_ERQ13_MASK 0x2000u
  2235. #define DMA_ERQ_ERQ13_SHIFT 13
  2236. #define DMA_ERQ_ERQ14_MASK 0x4000u
  2237. #define DMA_ERQ_ERQ14_SHIFT 14
  2238. #define DMA_ERQ_ERQ15_MASK 0x8000u
  2239. #define DMA_ERQ_ERQ15_SHIFT 15
  2240. /* EEI Bit Fields */
  2241. #define DMA_EEI_EEI0_MASK 0x1u
  2242. #define DMA_EEI_EEI0_SHIFT 0
  2243. #define DMA_EEI_EEI1_MASK 0x2u
  2244. #define DMA_EEI_EEI1_SHIFT 1
  2245. #define DMA_EEI_EEI2_MASK 0x4u
  2246. #define DMA_EEI_EEI2_SHIFT 2
  2247. #define DMA_EEI_EEI3_MASK 0x8u
  2248. #define DMA_EEI_EEI3_SHIFT 3
  2249. #define DMA_EEI_EEI4_MASK 0x10u
  2250. #define DMA_EEI_EEI4_SHIFT 4
  2251. #define DMA_EEI_EEI5_MASK 0x20u
  2252. #define DMA_EEI_EEI5_SHIFT 5
  2253. #define DMA_EEI_EEI6_MASK 0x40u
  2254. #define DMA_EEI_EEI6_SHIFT 6
  2255. #define DMA_EEI_EEI7_MASK 0x80u
  2256. #define DMA_EEI_EEI7_SHIFT 7
  2257. #define DMA_EEI_EEI8_MASK 0x100u
  2258. #define DMA_EEI_EEI8_SHIFT 8
  2259. #define DMA_EEI_EEI9_MASK 0x200u
  2260. #define DMA_EEI_EEI9_SHIFT 9
  2261. #define DMA_EEI_EEI10_MASK 0x400u
  2262. #define DMA_EEI_EEI10_SHIFT 10
  2263. #define DMA_EEI_EEI11_MASK 0x800u
  2264. #define DMA_EEI_EEI11_SHIFT 11
  2265. #define DMA_EEI_EEI12_MASK 0x1000u
  2266. #define DMA_EEI_EEI12_SHIFT 12
  2267. #define DMA_EEI_EEI13_MASK 0x2000u
  2268. #define DMA_EEI_EEI13_SHIFT 13
  2269. #define DMA_EEI_EEI14_MASK 0x4000u
  2270. #define DMA_EEI_EEI14_SHIFT 14
  2271. #define DMA_EEI_EEI15_MASK 0x8000u
  2272. #define DMA_EEI_EEI15_SHIFT 15
  2273. /* CEEI Bit Fields */
  2274. #define DMA_CEEI_CEEI_MASK 0xFu
  2275. #define DMA_CEEI_CEEI_SHIFT 0
  2276. #define DMA_CEEI_CEEI(x) (((uint8_t)(((uint8_t)(x))<<DMA_CEEI_CEEI_SHIFT))&DMA_CEEI_CEEI_MASK)
  2277. #define DMA_CEEI_CAEE_MASK 0x40u
  2278. #define DMA_CEEI_CAEE_SHIFT 6
  2279. #define DMA_CEEI_NOP_MASK 0x80u
  2280. #define DMA_CEEI_NOP_SHIFT 7
  2281. /* SEEI Bit Fields */
  2282. #define DMA_SEEI_SEEI_MASK 0xFu
  2283. #define DMA_SEEI_SEEI_SHIFT 0
  2284. #define DMA_SEEI_SEEI(x) (((uint8_t)(((uint8_t)(x))<<DMA_SEEI_SEEI_SHIFT))&DMA_SEEI_SEEI_MASK)
  2285. #define DMA_SEEI_SAEE_MASK 0x40u
  2286. #define DMA_SEEI_SAEE_SHIFT 6
  2287. #define DMA_SEEI_NOP_MASK 0x80u
  2288. #define DMA_SEEI_NOP_SHIFT 7
  2289. /* CERQ Bit Fields */
  2290. #define DMA_CERQ_CERQ_MASK 0xFu
  2291. #define DMA_CERQ_CERQ_SHIFT 0
  2292. #define DMA_CERQ_CERQ(x) (((uint8_t)(((uint8_t)(x))<<DMA_CERQ_CERQ_SHIFT))&DMA_CERQ_CERQ_MASK)
  2293. #define DMA_CERQ_CAER_MASK 0x40u
  2294. #define DMA_CERQ_CAER_SHIFT 6
  2295. #define DMA_CERQ_NOP_MASK 0x80u
  2296. #define DMA_CERQ_NOP_SHIFT 7
  2297. /* SERQ Bit Fields */
  2298. #define DMA_SERQ_SERQ_MASK 0xFu
  2299. #define DMA_SERQ_SERQ_SHIFT 0
  2300. #define DMA_SERQ_SERQ(x) (((uint8_t)(((uint8_t)(x))<<DMA_SERQ_SERQ_SHIFT))&DMA_SERQ_SERQ_MASK)
  2301. #define DMA_SERQ_SAER_MASK 0x40u
  2302. #define DMA_SERQ_SAER_SHIFT 6
  2303. #define DMA_SERQ_NOP_MASK 0x80u
  2304. #define DMA_SERQ_NOP_SHIFT 7
  2305. /* CDNE Bit Fields */
  2306. #define DMA_CDNE_CDNE_MASK 0xFu
  2307. #define DMA_CDNE_CDNE_SHIFT 0
  2308. #define DMA_CDNE_CDNE(x) (((uint8_t)(((uint8_t)(x))<<DMA_CDNE_CDNE_SHIFT))&DMA_CDNE_CDNE_MASK)
  2309. #define DMA_CDNE_CADN_MASK 0x40u
  2310. #define DMA_CDNE_CADN_SHIFT 6
  2311. #define DMA_CDNE_NOP_MASK 0x80u
  2312. #define DMA_CDNE_NOP_SHIFT 7
  2313. /* SSRT Bit Fields */
  2314. #define DMA_SSRT_SSRT_MASK 0xFu
  2315. #define DMA_SSRT_SSRT_SHIFT 0
  2316. #define DMA_SSRT_SSRT(x) (((uint8_t)(((uint8_t)(x))<<DMA_SSRT_SSRT_SHIFT))&DMA_SSRT_SSRT_MASK)
  2317. #define DMA_SSRT_SAST_MASK 0x40u
  2318. #define DMA_SSRT_SAST_SHIFT 6
  2319. #define DMA_SSRT_NOP_MASK 0x80u
  2320. #define DMA_SSRT_NOP_SHIFT 7
  2321. /* CERR Bit Fields */
  2322. #define DMA_CERR_CERR_MASK 0xFu
  2323. #define DMA_CERR_CERR_SHIFT 0
  2324. #define DMA_CERR_CERR(x) (((uint8_t)(((uint8_t)(x))<<DMA_CERR_CERR_SHIFT))&DMA_CERR_CERR_MASK)
  2325. #define DMA_CERR_CAEI_MASK 0x40u
  2326. #define DMA_CERR_CAEI_SHIFT 6
  2327. #define DMA_CERR_NOP_MASK 0x80u
  2328. #define DMA_CERR_NOP_SHIFT 7
  2329. /* CINT Bit Fields */
  2330. #define DMA_CINT_CINT_MASK 0xFu
  2331. #define DMA_CINT_CINT_SHIFT 0
  2332. #define DMA_CINT_CINT(x) (((uint8_t)(((uint8_t)(x))<<DMA_CINT_CINT_SHIFT))&DMA_CINT_CINT_MASK)
  2333. #define DMA_CINT_CAIR_MASK 0x40u
  2334. #define DMA_CINT_CAIR_SHIFT 6
  2335. #define DMA_CINT_NOP_MASK 0x80u
  2336. #define DMA_CINT_NOP_SHIFT 7
  2337. /* INT Bit Fields */
  2338. #define DMA_INT_INT0_MASK 0x1u
  2339. #define DMA_INT_INT0_SHIFT 0
  2340. #define DMA_INT_INT1_MASK 0x2u
  2341. #define DMA_INT_INT1_SHIFT 1
  2342. #define DMA_INT_INT2_MASK 0x4u
  2343. #define DMA_INT_INT2_SHIFT 2
  2344. #define DMA_INT_INT3_MASK 0x8u
  2345. #define DMA_INT_INT3_SHIFT 3
  2346. #define DMA_INT_INT4_MASK 0x10u
  2347. #define DMA_INT_INT4_SHIFT 4
  2348. #define DMA_INT_INT5_MASK 0x20u
  2349. #define DMA_INT_INT5_SHIFT 5
  2350. #define DMA_INT_INT6_MASK 0x40u
  2351. #define DMA_INT_INT6_SHIFT 6
  2352. #define DMA_INT_INT7_MASK 0x80u
  2353. #define DMA_INT_INT7_SHIFT 7
  2354. #define DMA_INT_INT8_MASK 0x100u
  2355. #define DMA_INT_INT8_SHIFT 8
  2356. #define DMA_INT_INT9_MASK 0x200u
  2357. #define DMA_INT_INT9_SHIFT 9
  2358. #define DMA_INT_INT10_MASK 0x400u
  2359. #define DMA_INT_INT10_SHIFT 10
  2360. #define DMA_INT_INT11_MASK 0x800u
  2361. #define DMA_INT_INT11_SHIFT 11
  2362. #define DMA_INT_INT12_MASK 0x1000u
  2363. #define DMA_INT_INT12_SHIFT 12
  2364. #define DMA_INT_INT13_MASK 0x2000u
  2365. #define DMA_INT_INT13_SHIFT 13
  2366. #define DMA_INT_INT14_MASK 0x4000u
  2367. #define DMA_INT_INT14_SHIFT 14
  2368. #define DMA_INT_INT15_MASK 0x8000u
  2369. #define DMA_INT_INT15_SHIFT 15
  2370. /* ERR Bit Fields */
  2371. #define DMA_ERR_ERR0_MASK 0x1u
  2372. #define DMA_ERR_ERR0_SHIFT 0
  2373. #define DMA_ERR_ERR1_MASK 0x2u
  2374. #define DMA_ERR_ERR1_SHIFT 1
  2375. #define DMA_ERR_ERR2_MASK 0x4u
  2376. #define DMA_ERR_ERR2_SHIFT 2
  2377. #define DMA_ERR_ERR3_MASK 0x8u
  2378. #define DMA_ERR_ERR3_SHIFT 3
  2379. #define DMA_ERR_ERR4_MASK 0x10u
  2380. #define DMA_ERR_ERR4_SHIFT 4
  2381. #define DMA_ERR_ERR5_MASK 0x20u
  2382. #define DMA_ERR_ERR5_SHIFT 5
  2383. #define DMA_ERR_ERR6_MASK 0x40u
  2384. #define DMA_ERR_ERR6_SHIFT 6
  2385. #define DMA_ERR_ERR7_MASK 0x80u
  2386. #define DMA_ERR_ERR7_SHIFT 7
  2387. #define DMA_ERR_ERR8_MASK 0x100u
  2388. #define DMA_ERR_ERR8_SHIFT 8
  2389. #define DMA_ERR_ERR9_MASK 0x200u
  2390. #define DMA_ERR_ERR9_SHIFT 9
  2391. #define DMA_ERR_ERR10_MASK 0x400u
  2392. #define DMA_ERR_ERR10_SHIFT 10
  2393. #define DMA_ERR_ERR11_MASK 0x800u
  2394. #define DMA_ERR_ERR11_SHIFT 11
  2395. #define DMA_ERR_ERR12_MASK 0x1000u
  2396. #define DMA_ERR_ERR12_SHIFT 12
  2397. #define DMA_ERR_ERR13_MASK 0x2000u
  2398. #define DMA_ERR_ERR13_SHIFT 13
  2399. #define DMA_ERR_ERR14_MASK 0x4000u
  2400. #define DMA_ERR_ERR14_SHIFT 14
  2401. #define DMA_ERR_ERR15_MASK 0x8000u
  2402. #define DMA_ERR_ERR15_SHIFT 15
  2403. /* HRS Bit Fields */
  2404. #define DMA_HRS_HRS0_MASK 0x1u
  2405. #define DMA_HRS_HRS0_SHIFT 0
  2406. #define DMA_HRS_HRS1_MASK 0x2u
  2407. #define DMA_HRS_HRS1_SHIFT 1
  2408. #define DMA_HRS_HRS2_MASK 0x4u
  2409. #define DMA_HRS_HRS2_SHIFT 2
  2410. #define DMA_HRS_HRS3_MASK 0x8u
  2411. #define DMA_HRS_HRS3_SHIFT 3
  2412. #define DMA_HRS_HRS4_MASK 0x10u
  2413. #define DMA_HRS_HRS4_SHIFT 4
  2414. #define DMA_HRS_HRS5_MASK 0x20u
  2415. #define DMA_HRS_HRS5_SHIFT 5
  2416. #define DMA_HRS_HRS6_MASK 0x40u
  2417. #define DMA_HRS_HRS6_SHIFT 6
  2418. #define DMA_HRS_HRS7_MASK 0x80u
  2419. #define DMA_HRS_HRS7_SHIFT 7
  2420. #define DMA_HRS_HRS8_MASK 0x100u
  2421. #define DMA_HRS_HRS8_SHIFT 8
  2422. #define DMA_HRS_HRS9_MASK 0x200u
  2423. #define DMA_HRS_HRS9_SHIFT 9
  2424. #define DMA_HRS_HRS10_MASK 0x400u
  2425. #define DMA_HRS_HRS10_SHIFT 10
  2426. #define DMA_HRS_HRS11_MASK 0x800u
  2427. #define DMA_HRS_HRS11_SHIFT 11
  2428. #define DMA_HRS_HRS12_MASK 0x1000u
  2429. #define DMA_HRS_HRS12_SHIFT 12
  2430. #define DMA_HRS_HRS13_MASK 0x2000u
  2431. #define DMA_HRS_HRS13_SHIFT 13
  2432. #define DMA_HRS_HRS14_MASK 0x4000u
  2433. #define DMA_HRS_HRS14_SHIFT 14
  2434. #define DMA_HRS_HRS15_MASK 0x8000u
  2435. #define DMA_HRS_HRS15_SHIFT 15
  2436. /* DCHPRI3 Bit Fields */
  2437. #define DMA_DCHPRI3_CHPRI_MASK 0xFu
  2438. #define DMA_DCHPRI3_CHPRI_SHIFT 0
  2439. #define DMA_DCHPRI3_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI3_CHPRI_SHIFT))&DMA_DCHPRI3_CHPRI_MASK)
  2440. #define DMA_DCHPRI3_DPA_MASK 0x40u
  2441. #define DMA_DCHPRI3_DPA_SHIFT 6
  2442. #define DMA_DCHPRI3_ECP_MASK 0x80u
  2443. #define DMA_DCHPRI3_ECP_SHIFT 7
  2444. /* DCHPRI2 Bit Fields */
  2445. #define DMA_DCHPRI2_CHPRI_MASK 0xFu
  2446. #define DMA_DCHPRI2_CHPRI_SHIFT 0
  2447. #define DMA_DCHPRI2_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI2_CHPRI_SHIFT))&DMA_DCHPRI2_CHPRI_MASK)
  2448. #define DMA_DCHPRI2_DPA_MASK 0x40u
  2449. #define DMA_DCHPRI2_DPA_SHIFT 6
  2450. #define DMA_DCHPRI2_ECP_MASK 0x80u
  2451. #define DMA_DCHPRI2_ECP_SHIFT 7
  2452. /* DCHPRI1 Bit Fields */
  2453. #define DMA_DCHPRI1_CHPRI_MASK 0xFu
  2454. #define DMA_DCHPRI1_CHPRI_SHIFT 0
  2455. #define DMA_DCHPRI1_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI1_CHPRI_SHIFT))&DMA_DCHPRI1_CHPRI_MASK)
  2456. #define DMA_DCHPRI1_DPA_MASK 0x40u
  2457. #define DMA_DCHPRI1_DPA_SHIFT 6
  2458. #define DMA_DCHPRI1_ECP_MASK 0x80u
  2459. #define DMA_DCHPRI1_ECP_SHIFT 7
  2460. /* DCHPRI0 Bit Fields */
  2461. #define DMA_DCHPRI0_CHPRI_MASK 0xFu
  2462. #define DMA_DCHPRI0_CHPRI_SHIFT 0
  2463. #define DMA_DCHPRI0_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI0_CHPRI_SHIFT))&DMA_DCHPRI0_CHPRI_MASK)
  2464. #define DMA_DCHPRI0_DPA_MASK 0x40u
  2465. #define DMA_DCHPRI0_DPA_SHIFT 6
  2466. #define DMA_DCHPRI0_ECP_MASK 0x80u
  2467. #define DMA_DCHPRI0_ECP_SHIFT 7
  2468. /* DCHPRI7 Bit Fields */
  2469. #define DMA_DCHPRI7_CHPRI_MASK 0xFu
  2470. #define DMA_DCHPRI7_CHPRI_SHIFT 0
  2471. #define DMA_DCHPRI7_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI7_CHPRI_SHIFT))&DMA_DCHPRI7_CHPRI_MASK)
  2472. #define DMA_DCHPRI7_DPA_MASK 0x40u
  2473. #define DMA_DCHPRI7_DPA_SHIFT 6
  2474. #define DMA_DCHPRI7_ECP_MASK 0x80u
  2475. #define DMA_DCHPRI7_ECP_SHIFT 7
  2476. /* DCHPRI6 Bit Fields */
  2477. #define DMA_DCHPRI6_CHPRI_MASK 0xFu
  2478. #define DMA_DCHPRI6_CHPRI_SHIFT 0
  2479. #define DMA_DCHPRI6_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI6_CHPRI_SHIFT))&DMA_DCHPRI6_CHPRI_MASK)
  2480. #define DMA_DCHPRI6_DPA_MASK 0x40u
  2481. #define DMA_DCHPRI6_DPA_SHIFT 6
  2482. #define DMA_DCHPRI6_ECP_MASK 0x80u
  2483. #define DMA_DCHPRI6_ECP_SHIFT 7
  2484. /* DCHPRI5 Bit Fields */
  2485. #define DMA_DCHPRI5_CHPRI_MASK 0xFu
  2486. #define DMA_DCHPRI5_CHPRI_SHIFT 0
  2487. #define DMA_DCHPRI5_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI5_CHPRI_SHIFT))&DMA_DCHPRI5_CHPRI_MASK)
  2488. #define DMA_DCHPRI5_DPA_MASK 0x40u
  2489. #define DMA_DCHPRI5_DPA_SHIFT 6
  2490. #define DMA_DCHPRI5_ECP_MASK 0x80u
  2491. #define DMA_DCHPRI5_ECP_SHIFT 7
  2492. /* DCHPRI4 Bit Fields */
  2493. #define DMA_DCHPRI4_CHPRI_MASK 0xFu
  2494. #define DMA_DCHPRI4_CHPRI_SHIFT 0
  2495. #define DMA_DCHPRI4_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI4_CHPRI_SHIFT))&DMA_DCHPRI4_CHPRI_MASK)
  2496. #define DMA_DCHPRI4_DPA_MASK 0x40u
  2497. #define DMA_DCHPRI4_DPA_SHIFT 6
  2498. #define DMA_DCHPRI4_ECP_MASK 0x80u
  2499. #define DMA_DCHPRI4_ECP_SHIFT 7
  2500. /* DCHPRI11 Bit Fields */
  2501. #define DMA_DCHPRI11_CHPRI_MASK 0xFu
  2502. #define DMA_DCHPRI11_CHPRI_SHIFT 0
  2503. #define DMA_DCHPRI11_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI11_CHPRI_SHIFT))&DMA_DCHPRI11_CHPRI_MASK)
  2504. #define DMA_DCHPRI11_DPA_MASK 0x40u
  2505. #define DMA_DCHPRI11_DPA_SHIFT 6
  2506. #define DMA_DCHPRI11_ECP_MASK 0x80u
  2507. #define DMA_DCHPRI11_ECP_SHIFT 7
  2508. /* DCHPRI10 Bit Fields */
  2509. #define DMA_DCHPRI10_CHPRI_MASK 0xFu
  2510. #define DMA_DCHPRI10_CHPRI_SHIFT 0
  2511. #define DMA_DCHPRI10_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI10_CHPRI_SHIFT))&DMA_DCHPRI10_CHPRI_MASK)
  2512. #define DMA_DCHPRI10_DPA_MASK 0x40u
  2513. #define DMA_DCHPRI10_DPA_SHIFT 6
  2514. #define DMA_DCHPRI10_ECP_MASK 0x80u
  2515. #define DMA_DCHPRI10_ECP_SHIFT 7
  2516. /* DCHPRI9 Bit Fields */
  2517. #define DMA_DCHPRI9_CHPRI_MASK 0xFu
  2518. #define DMA_DCHPRI9_CHPRI_SHIFT 0
  2519. #define DMA_DCHPRI9_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI9_CHPRI_SHIFT))&DMA_DCHPRI9_CHPRI_MASK)
  2520. #define DMA_DCHPRI9_DPA_MASK 0x40u
  2521. #define DMA_DCHPRI9_DPA_SHIFT 6
  2522. #define DMA_DCHPRI9_ECP_MASK 0x80u
  2523. #define DMA_DCHPRI9_ECP_SHIFT 7
  2524. /* DCHPRI8 Bit Fields */
  2525. #define DMA_DCHPRI8_CHPRI_MASK 0xFu
  2526. #define DMA_DCHPRI8_CHPRI_SHIFT 0
  2527. #define DMA_DCHPRI8_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI8_CHPRI_SHIFT))&DMA_DCHPRI8_CHPRI_MASK)
  2528. #define DMA_DCHPRI8_DPA_MASK 0x40u
  2529. #define DMA_DCHPRI8_DPA_SHIFT 6
  2530. #define DMA_DCHPRI8_ECP_MASK 0x80u
  2531. #define DMA_DCHPRI8_ECP_SHIFT 7
  2532. /* DCHPRI15 Bit Fields */
  2533. #define DMA_DCHPRI15_CHPRI_MASK 0xFu
  2534. #define DMA_DCHPRI15_CHPRI_SHIFT 0
  2535. #define DMA_DCHPRI15_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI15_CHPRI_SHIFT))&DMA_DCHPRI15_CHPRI_MASK)
  2536. #define DMA_DCHPRI15_DPA_MASK 0x40u
  2537. #define DMA_DCHPRI15_DPA_SHIFT 6
  2538. #define DMA_DCHPRI15_ECP_MASK 0x80u
  2539. #define DMA_DCHPRI15_ECP_SHIFT 7
  2540. /* DCHPRI14 Bit Fields */
  2541. #define DMA_DCHPRI14_CHPRI_MASK 0xFu
  2542. #define DMA_DCHPRI14_CHPRI_SHIFT 0
  2543. #define DMA_DCHPRI14_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI14_CHPRI_SHIFT))&DMA_DCHPRI14_CHPRI_MASK)
  2544. #define DMA_DCHPRI14_DPA_MASK 0x40u
  2545. #define DMA_DCHPRI14_DPA_SHIFT 6
  2546. #define DMA_DCHPRI14_ECP_MASK 0x80u
  2547. #define DMA_DCHPRI14_ECP_SHIFT 7
  2548. /* DCHPRI13 Bit Fields */
  2549. #define DMA_DCHPRI13_CHPRI_MASK 0xFu
  2550. #define DMA_DCHPRI13_CHPRI_SHIFT 0
  2551. #define DMA_DCHPRI13_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI13_CHPRI_SHIFT))&DMA_DCHPRI13_CHPRI_MASK)
  2552. #define DMA_DCHPRI13_DPA_MASK 0x40u
  2553. #define DMA_DCHPRI13_DPA_SHIFT 6
  2554. #define DMA_DCHPRI13_ECP_MASK 0x80u
  2555. #define DMA_DCHPRI13_ECP_SHIFT 7
  2556. /* DCHPRI12 Bit Fields */
  2557. #define DMA_DCHPRI12_CHPRI_MASK 0xFu
  2558. #define DMA_DCHPRI12_CHPRI_SHIFT 0
  2559. #define DMA_DCHPRI12_CHPRI(x) (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI12_CHPRI_SHIFT))&DMA_DCHPRI12_CHPRI_MASK)
  2560. #define DMA_DCHPRI12_DPA_MASK 0x40u
  2561. #define DMA_DCHPRI12_DPA_SHIFT 6
  2562. #define DMA_DCHPRI12_ECP_MASK 0x80u
  2563. #define DMA_DCHPRI12_ECP_SHIFT 7
  2564. /* SADDR Bit Fields */
  2565. #define DMA_SADDR_SADDR_MASK 0xFFFFFFFFu
  2566. #define DMA_SADDR_SADDR_SHIFT 0
  2567. #define DMA_SADDR_SADDR(x) (((uint32_t)(((uint32_t)(x))<<DMA_SADDR_SADDR_SHIFT))&DMA_SADDR_SADDR_MASK)
  2568. /* SOFF Bit Fields */
  2569. #define DMA_SOFF_SOFF_MASK 0xFFFFu
  2570. #define DMA_SOFF_SOFF_SHIFT 0
  2571. #define DMA_SOFF_SOFF(x) (((uint16_t)(((uint16_t)(x))<<DMA_SOFF_SOFF_SHIFT))&DMA_SOFF_SOFF_MASK)
  2572. /* ATTR Bit Fields */
  2573. #define DMA_ATTR_DSIZE_MASK 0x7u
  2574. #define DMA_ATTR_DSIZE_SHIFT 0
  2575. #define DMA_ATTR_DSIZE(x) (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_DSIZE_SHIFT))&DMA_ATTR_DSIZE_MASK)
  2576. #define DMA_ATTR_DMOD_MASK 0xF8u
  2577. #define DMA_ATTR_DMOD_SHIFT 3
  2578. #define DMA_ATTR_DMOD(x) (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_DMOD_SHIFT))&DMA_ATTR_DMOD_MASK)
  2579. #define DMA_ATTR_SSIZE_MASK 0x700u
  2580. #define DMA_ATTR_SSIZE_SHIFT 8
  2581. #define DMA_ATTR_SSIZE(x) (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_SSIZE_SHIFT))&DMA_ATTR_SSIZE_MASK)
  2582. #define DMA_ATTR_SMOD_MASK 0xF800u
  2583. #define DMA_ATTR_SMOD_SHIFT 11
  2584. #define DMA_ATTR_SMOD(x) (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_SMOD_SHIFT))&DMA_ATTR_SMOD_MASK)
  2585. /* NBYTES_MLNO Bit Fields */
  2586. #define DMA_NBYTES_MLNO_NBYTES_MASK 0xFFFFFFFFu
  2587. #define DMA_NBYTES_MLNO_NBYTES_SHIFT 0
  2588. #define DMA_NBYTES_MLNO_NBYTES(x) (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLNO_NBYTES_SHIFT))&DMA_NBYTES_MLNO_NBYTES_MASK)
  2589. /* NBYTES_MLOFFNO Bit Fields */
  2590. #define DMA_NBYTES_MLOFFNO_NBYTES_MASK 0x3FFFFFFFu
  2591. #define DMA_NBYTES_MLOFFNO_NBYTES_SHIFT 0
  2592. #define DMA_NBYTES_MLOFFNO_NBYTES(x) (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFNO_NBYTES_SHIFT))&DMA_NBYTES_MLOFFNO_NBYTES_MASK)
  2593. #define DMA_NBYTES_MLOFFNO_DMLOE_MASK 0x40000000u
  2594. #define DMA_NBYTES_MLOFFNO_DMLOE_SHIFT 30
  2595. #define DMA_NBYTES_MLOFFNO_SMLOE_MASK 0x80000000u
  2596. #define DMA_NBYTES_MLOFFNO_SMLOE_SHIFT 31
  2597. /* NBYTES_MLOFFYES Bit Fields */
  2598. #define DMA_NBYTES_MLOFFYES_NBYTES_MASK 0x3FFu
  2599. #define DMA_NBYTES_MLOFFYES_NBYTES_SHIFT 0
  2600. #define DMA_NBYTES_MLOFFYES_NBYTES(x) (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFYES_NBYTES_SHIFT))&DMA_NBYTES_MLOFFYES_NBYTES_MASK)
  2601. #define DMA_NBYTES_MLOFFYES_MLOFF_MASK 0x3FFFFC00u
  2602. #define DMA_NBYTES_MLOFFYES_MLOFF_SHIFT 10
  2603. #define DMA_NBYTES_MLOFFYES_MLOFF(x) (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFYES_MLOFF_SHIFT))&DMA_NBYTES_MLOFFYES_MLOFF_MASK)
  2604. #define DMA_NBYTES_MLOFFYES_DMLOE_MASK 0x40000000u
  2605. #define DMA_NBYTES_MLOFFYES_DMLOE_SHIFT 30
  2606. #define DMA_NBYTES_MLOFFYES_SMLOE_MASK 0x80000000u
  2607. #define DMA_NBYTES_MLOFFYES_SMLOE_SHIFT 31
  2608. /* SLAST Bit Fields */
  2609. #define DMA_SLAST_SLAST_MASK 0xFFFFFFFFu
  2610. #define DMA_SLAST_SLAST_SHIFT 0
  2611. #define DMA_SLAST_SLAST(x) (((uint32_t)(((uint32_t)(x))<<DMA_SLAST_SLAST_SHIFT))&DMA_SLAST_SLAST_MASK)
  2612. /* DADDR Bit Fields */
  2613. #define DMA_DADDR_DADDR_MASK 0xFFFFFFFFu
  2614. #define DMA_DADDR_DADDR_SHIFT 0
  2615. #define DMA_DADDR_DADDR(x) (((uint32_t)(((uint32_t)(x))<<DMA_DADDR_DADDR_SHIFT))&DMA_DADDR_DADDR_MASK)
  2616. /* DOFF Bit Fields */
  2617. #define DMA_DOFF_DOFF_MASK 0xFFFFu
  2618. #define DMA_DOFF_DOFF_SHIFT 0
  2619. #define DMA_DOFF_DOFF(x) (((uint16_t)(((uint16_t)(x))<<DMA_DOFF_DOFF_SHIFT))&DMA_DOFF_DOFF_MASK)
  2620. /* CITER_ELINKYES Bit Fields */
  2621. #define DMA_CITER_ELINKYES_CITER_MASK 0x1FFu
  2622. #define DMA_CITER_ELINKYES_CITER_SHIFT 0
  2623. #define DMA_CITER_ELINKYES_CITER(x) (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKYES_CITER_SHIFT))&DMA_CITER_ELINKYES_CITER_MASK)
  2624. #define DMA_CITER_ELINKYES_LINKCH_MASK 0x1E00u
  2625. #define DMA_CITER_ELINKYES_LINKCH_SHIFT 9
  2626. #define DMA_CITER_ELINKYES_LINKCH(x) (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKYES_LINKCH_SHIFT))&DMA_CITER_ELINKYES_LINKCH_MASK)
  2627. #define DMA_CITER_ELINKYES_ELINK_MASK 0x8000u
  2628. #define DMA_CITER_ELINKYES_ELINK_SHIFT 15
  2629. /* CITER_ELINKNO Bit Fields */
  2630. #define DMA_CITER_ELINKNO_CITER_MASK 0x7FFFu
  2631. #define DMA_CITER_ELINKNO_CITER_SHIFT 0
  2632. #define DMA_CITER_ELINKNO_CITER(x) (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKNO_CITER_SHIFT))&DMA_CITER_ELINKNO_CITER_MASK)
  2633. #define DMA_CITER_ELINKNO_ELINK_MASK 0x8000u
  2634. #define DMA_CITER_ELINKNO_ELINK_SHIFT 15
  2635. /* DLAST_SGA Bit Fields */
  2636. #define DMA_DLAST_SGA_DLASTSGA_MASK 0xFFFFFFFFu
  2637. #define DMA_DLAST_SGA_DLASTSGA_SHIFT 0
  2638. #define DMA_DLAST_SGA_DLASTSGA(x) (((uint32_t)(((uint32_t)(x))<<DMA_DLAST_SGA_DLASTSGA_SHIFT))&DMA_DLAST_SGA_DLASTSGA_MASK)
  2639. /* CSR Bit Fields */
  2640. #define DMA_CSR_START_MASK 0x1u
  2641. #define DMA_CSR_START_SHIFT 0
  2642. #define DMA_CSR_INTMAJOR_MASK 0x2u
  2643. #define DMA_CSR_INTMAJOR_SHIFT 1
  2644. #define DMA_CSR_INTHALF_MASK 0x4u
  2645. #define DMA_CSR_INTHALF_SHIFT 2
  2646. #define DMA_CSR_DREQ_MASK 0x8u
  2647. #define DMA_CSR_DREQ_SHIFT 3
  2648. #define DMA_CSR_ESG_MASK 0x10u
  2649. #define DMA_CSR_ESG_SHIFT 4
  2650. #define DMA_CSR_MAJORELINK_MASK 0x20u
  2651. #define DMA_CSR_MAJORELINK_SHIFT 5
  2652. #define DMA_CSR_ACTIVE_MASK 0x40u
  2653. #define DMA_CSR_ACTIVE_SHIFT 6
  2654. #define DMA_CSR_DONE_MASK 0x80u
  2655. #define DMA_CSR_DONE_SHIFT 7
  2656. #define DMA_CSR_MAJORLINKCH_MASK 0xF00u
  2657. #define DMA_CSR_MAJORLINKCH_SHIFT 8
  2658. #define DMA_CSR_MAJORLINKCH(x) (((uint16_t)(((uint16_t)(x))<<DMA_CSR_MAJORLINKCH_SHIFT))&DMA_CSR_MAJORLINKCH_MASK)
  2659. #define DMA_CSR_BWC_MASK 0xC000u
  2660. #define DMA_CSR_BWC_SHIFT 14
  2661. #define DMA_CSR_BWC(x) (((uint16_t)(((uint16_t)(x))<<DMA_CSR_BWC_SHIFT))&DMA_CSR_BWC_MASK)
  2662. /* BITER_ELINKNO Bit Fields */
  2663. #define DMA_BITER_ELINKNO_BITER_MASK 0x7FFFu
  2664. #define DMA_BITER_ELINKNO_BITER_SHIFT 0
  2665. #define DMA_BITER_ELINKNO_BITER(x) (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKNO_BITER_SHIFT))&DMA_BITER_ELINKNO_BITER_MASK)
  2666. #define DMA_BITER_ELINKNO_ELINK_MASK 0x8000u
  2667. #define DMA_BITER_ELINKNO_ELINK_SHIFT 15
  2668. /* BITER_ELINKYES Bit Fields */
  2669. #define DMA_BITER_ELINKYES_BITER_MASK 0x1FFu
  2670. #define DMA_BITER_ELINKYES_BITER_SHIFT 0
  2671. #define DMA_BITER_ELINKYES_BITER(x) (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKYES_BITER_SHIFT))&DMA_BITER_ELINKYES_BITER_MASK)
  2672. #define DMA_BITER_ELINKYES_LINKCH_MASK 0x1E00u
  2673. #define DMA_BITER_ELINKYES_LINKCH_SHIFT 9
  2674. #define DMA_BITER_ELINKYES_LINKCH(x) (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKYES_LINKCH_SHIFT))&DMA_BITER_ELINKYES_LINKCH_MASK)
  2675. #define DMA_BITER_ELINKYES_ELINK_MASK 0x8000u
  2676. #define DMA_BITER_ELINKYES_ELINK_SHIFT 15
  2677. /*! \} */ /* end of group DMA_Register_Masks */
  2678. /* DMA - Peripheral instance base addresses */
  2679. /*! Peripheral DMA base address */
  2680. #define DMA_BASE (0x40008000u)
  2681. /*! Peripheral DMA base pointer */
  2682. #define DMA ((DMA_Type *)DMA_BASE)
  2683. /*! \} */ /* end of group DMA_Peripheral_Access_Layer */
  2684. /* ----------------------------------------------------------------------------
  2685. -- DMAMUX Peripheral Access Layer
  2686. ---------------------------------------------------------------------------- */
  2687. /*! \addtogroup DMAMUX_Peripheral_Access_Layer DMAMUX Peripheral Access Layer */
  2688. /*! \{ */
  2689. /*! DMAMUX - Register Layout Typedef */
  2690. typedef struct {
  2691. __IO uint8_t CHCFG[16]; /*!< Channel Configuration Register, array offset: 0x0, array step: 0x1 */
  2692. } DMAMUX_Type;
  2693. /* ----------------------------------------------------------------------------
  2694. -- DMAMUX Register Masks
  2695. ---------------------------------------------------------------------------- */
  2696. /*! \addtogroup DMAMUX_Register_Masks DMAMUX Register Masks */
  2697. /*! \{ */
  2698. /* CHCFG Bit Fields */
  2699. #define DMAMUX_CHCFG_SOURCE_MASK 0x3Fu
  2700. #define DMAMUX_CHCFG_SOURCE_SHIFT 0
  2701. #define DMAMUX_CHCFG_SOURCE(x) (((uint8_t)(((uint8_t)(x))<<DMAMUX_CHCFG_SOURCE_SHIFT))&DMAMUX_CHCFG_SOURCE_MASK)
  2702. #define DMAMUX_CHCFG_TRIG_MASK 0x40u
  2703. #define DMAMUX_CHCFG_TRIG_SHIFT 6
  2704. #define DMAMUX_CHCFG_ENBL_MASK 0x80u
  2705. #define DMAMUX_CHCFG_ENBL_SHIFT 7
  2706. /*! \} */ /* end of group DMAMUX_Register_Masks */
  2707. /* DMAMUX - Peripheral instance base addresses */
  2708. /*! Peripheral DMAMUX base address */
  2709. #define DMAMUX_BASE (0x40021000u)
  2710. /*! Peripheral DMAMUX base pointer */
  2711. #define DMAMUX ((DMAMUX_Type *)DMAMUX_BASE)
  2712. /*! \} */ /* end of group DMAMUX_Peripheral_Access_Layer */
  2713. /* ----------------------------------------------------------------------------
  2714. -- EWM Peripheral Access Layer
  2715. ---------------------------------------------------------------------------- */
  2716. /*! \addtogroup EWM_Peripheral_Access_Layer EWM Peripheral Access Layer */
  2717. /*! \{ */
  2718. /*! EWM - Register Layout Typedef */
  2719. typedef struct {
  2720. __IO uint8_t CTRL; /*!< Control Register, offset: 0x0 */
  2721. __O uint8_t SERV; /*!< Service Register, offset: 0x1 */
  2722. __IO uint8_t CMPL; /*!< Compare Low Register, offset: 0x2 */
  2723. __IO uint8_t CMPH; /*!< Compare High Register, offset: 0x3 */
  2724. } EWM_Type;
  2725. /* ----------------------------------------------------------------------------
  2726. -- EWM Register Masks
  2727. ---------------------------------------------------------------------------- */
  2728. /*! \addtogroup EWM_Register_Masks EWM Register Masks */
  2729. /*! \{ */
  2730. /* CTRL Bit Fields */
  2731. #define EWM_CTRL_EWMEN_MASK 0x1u
  2732. #define EWM_CTRL_EWMEN_SHIFT 0
  2733. #define EWM_CTRL_ASSIN_MASK 0x2u
  2734. #define EWM_CTRL_ASSIN_SHIFT 1
  2735. #define EWM_CTRL_INEN_MASK 0x4u
  2736. #define EWM_CTRL_INEN_SHIFT 2
  2737. /* SERV Bit Fields */
  2738. #define EWM_SERV_SERVICE_MASK 0xFFu
  2739. #define EWM_SERV_SERVICE_SHIFT 0
  2740. #define EWM_SERV_SERVICE(x) (((uint8_t)(((uint8_t)(x))<<EWM_SERV_SERVICE_SHIFT))&EWM_SERV_SERVICE_MASK)
  2741. /* CMPL Bit Fields */
  2742. #define EWM_CMPL_COMPAREL_MASK 0xFFu
  2743. #define EWM_CMPL_COMPAREL_SHIFT 0
  2744. #define EWM_CMPL_COMPAREL(x) (((uint8_t)(((uint8_t)(x))<<EWM_CMPL_COMPAREL_SHIFT))&EWM_CMPL_COMPAREL_MASK)
  2745. /* CMPH Bit Fields */
  2746. #define EWM_CMPH_COMPAREH_MASK 0xFFu
  2747. #define EWM_CMPH_COMPAREH_SHIFT 0
  2748. #define EWM_CMPH_COMPAREH(x) (((uint8_t)(((uint8_t)(x))<<EWM_CMPH_COMPAREH_SHIFT))&EWM_CMPH_COMPAREH_MASK)
  2749. /*! \} */ /* end of group EWM_Register_Masks */
  2750. /* EWM - Peripheral instance base addresses */
  2751. /*! Peripheral EWM base address */
  2752. #define EWM_BASE (0x40061000u)
  2753. /*! Peripheral EWM base pointer */
  2754. #define EWM ((EWM_Type *)EWM_BASE)
  2755. /*! \} */ /* end of group EWM_Peripheral_Access_Layer */
  2756. /* ----------------------------------------------------------------------------
  2757. -- FB Peripheral Access Layer
  2758. ---------------------------------------------------------------------------- */
  2759. /*! \addtogroup FB_Peripheral_Access_Layer FB Peripheral Access Layer */
  2760. /*! \{ */
  2761. /*! FB - Register Layout Typedef */
  2762. typedef struct {
  2763. struct { /* offset: 0x0, array step: 0xC */
  2764. __IO uint32_t CSAR; /*!< Chip select address register, array offset: 0x0, array step: 0xC */
  2765. __IO uint32_t CSMR; /*!< Chip select mask register, array offset: 0x4, array step: 0xC */
  2766. __IO uint32_t CSCR; /*!< Chip select control register, array offset: 0x8, array step: 0xC */
  2767. } CS[6];
  2768. uint8_t RESERVED_0[24];
  2769. __IO uint32_t CSPMCR; /*!< Chip select port multiplexing control register, offset: 0x60 */
  2770. } FB_Type;
  2771. /* ----------------------------------------------------------------------------
  2772. -- FB Register Masks
  2773. ---------------------------------------------------------------------------- */
  2774. /*! \addtogroup FB_Register_Masks FB Register Masks */
  2775. /*! \{ */
  2776. /* CSAR Bit Fields */
  2777. #define FB_CSAR_BA_MASK 0xFFFF0000u
  2778. #define FB_CSAR_BA_SHIFT 16
  2779. #define FB_CSAR_BA(x) (((uint32_t)(((uint32_t)(x))<<FB_CSAR_BA_SHIFT))&FB_CSAR_BA_MASK)
  2780. /* CSMR Bit Fields */
  2781. #define FB_CSMR_V_MASK 0x1u
  2782. #define FB_CSMR_V_SHIFT 0
  2783. #define FB_CSMR_WP_MASK 0x100u
  2784. #define FB_CSMR_WP_SHIFT 8
  2785. #define FB_CSMR_BAM_MASK 0xFFFF0000u
  2786. #define FB_CSMR_BAM_SHIFT 16
  2787. #define FB_CSMR_BAM(x) (((uint32_t)(((uint32_t)(x))<<FB_CSMR_BAM_SHIFT))&FB_CSMR_BAM_MASK)
  2788. /* CSCR Bit Fields */
  2789. #define FB_CSCR_BSTW_MASK 0x8u
  2790. #define FB_CSCR_BSTW_SHIFT 3
  2791. #define FB_CSCR_BSTR_MASK 0x10u
  2792. #define FB_CSCR_BSTR_SHIFT 4
  2793. #define FB_CSCR_BEM_MASK 0x20u
  2794. #define FB_CSCR_BEM_SHIFT 5
  2795. #define FB_CSCR_PS_MASK 0xC0u
  2796. #define FB_CSCR_PS_SHIFT 6
  2797. #define FB_CSCR_PS(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_PS_SHIFT))&FB_CSCR_PS_MASK)
  2798. #define FB_CSCR_AA_MASK 0x100u
  2799. #define FB_CSCR_AA_SHIFT 8
  2800. #define FB_CSCR_BLS_MASK 0x200u
  2801. #define FB_CSCR_BLS_SHIFT 9
  2802. #define FB_CSCR_WS_MASK 0xFC00u
  2803. #define FB_CSCR_WS_SHIFT 10
  2804. #define FB_CSCR_WS(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_WS_SHIFT))&FB_CSCR_WS_MASK)
  2805. #define FB_CSCR_WRAH_MASK 0x30000u
  2806. #define FB_CSCR_WRAH_SHIFT 16
  2807. #define FB_CSCR_WRAH(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_WRAH_SHIFT))&FB_CSCR_WRAH_MASK)
  2808. #define FB_CSCR_RDAH_MASK 0xC0000u
  2809. #define FB_CSCR_RDAH_SHIFT 18
  2810. #define FB_CSCR_RDAH(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_RDAH_SHIFT))&FB_CSCR_RDAH_MASK)
  2811. #define FB_CSCR_ASET_MASK 0x300000u
  2812. #define FB_CSCR_ASET_SHIFT 20
  2813. #define FB_CSCR_ASET(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_ASET_SHIFT))&FB_CSCR_ASET_MASK)
  2814. #define FB_CSCR_EXALE_MASK 0x400000u
  2815. #define FB_CSCR_EXALE_SHIFT 22
  2816. #define FB_CSCR_SWSEN_MASK 0x800000u
  2817. #define FB_CSCR_SWSEN_SHIFT 23
  2818. #define FB_CSCR_SWS_MASK 0xFC000000u
  2819. #define FB_CSCR_SWS_SHIFT 26
  2820. #define FB_CSCR_SWS(x) (((uint32_t)(((uint32_t)(x))<<FB_CSCR_SWS_SHIFT))&FB_CSCR_SWS_MASK)
  2821. /* CSPMCR Bit Fields */
  2822. #define FB_CSPMCR_GROUP5_MASK 0xF000u
  2823. #define FB_CSPMCR_GROUP5_SHIFT 12
  2824. #define FB_CSPMCR_GROUP5(x) (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP5_SHIFT))&FB_CSPMCR_GROUP5_MASK)
  2825. #define FB_CSPMCR_GROUP4_MASK 0xF0000u
  2826. #define FB_CSPMCR_GROUP4_SHIFT 16
  2827. #define FB_CSPMCR_GROUP4(x) (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP4_SHIFT))&FB_CSPMCR_GROUP4_MASK)
  2828. #define FB_CSPMCR_GROUP3_MASK 0xF00000u
  2829. #define FB_CSPMCR_GROUP3_SHIFT 20
  2830. #define FB_CSPMCR_GROUP3(x) (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP3_SHIFT))&FB_CSPMCR_GROUP3_MASK)
  2831. #define FB_CSPMCR_GROUP2_MASK 0xF000000u
  2832. #define FB_CSPMCR_GROUP2_SHIFT 24
  2833. #define FB_CSPMCR_GROUP2(x) (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP2_SHIFT))&FB_CSPMCR_GROUP2_MASK)
  2834. #define FB_CSPMCR_GROUP1_MASK 0xF0000000u
  2835. #define FB_CSPMCR_GROUP1_SHIFT 28
  2836. #define FB_CSPMCR_GROUP1(x) (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP1_SHIFT))&FB_CSPMCR_GROUP1_MASK)
  2837. /*! \} */ /* end of group FB_Register_Masks */
  2838. /* FB - Peripheral instance base addresses */
  2839. /*! Peripheral FB base address */
  2840. #define FB_BASE (0x4000C000u)
  2841. /*! Peripheral FB base pointer */
  2842. #define FB ((FB_Type *)FB_BASE)
  2843. /*! \} */ /* end of group FB_Peripheral_Access_Layer */
  2844. /* ----------------------------------------------------------------------------
  2845. -- FMC Peripheral Access Layer
  2846. ---------------------------------------------------------------------------- */
  2847. /*! \addtogroup FMC_Peripheral_Access_Layer FMC Peripheral Access Layer */
  2848. /*! \{ */
  2849. /*! FMC - Register Layout Typedef */
  2850. typedef struct {
  2851. __IO uint32_t PFAPR; /*!< Flash Access Protection Register, offset: 0x0 */
  2852. __IO uint32_t PFB0CR; /*!< Flash Bank 0 Control Register, offset: 0x4 */
  2853. __IO uint32_t PFB1CR; /*!< Flash Bank 1 Control Register, offset: 0x8 */
  2854. uint8_t RESERVED_0[244];
  2855. __IO uint32_t TAGVD[4][8]; /*!< Cache Directory Storage, array offset: 0x100, array step: index*0x20, index2*0x4 */
  2856. uint8_t RESERVED_1[128];
  2857. struct { /* offset: 0x200, array step: index*0x40, index2*0x8 */
  2858. __IO uint32_t DATA_U; /*!< Cache Data Storage (upper word), array offset: 0x200, array step: index*0x40, index2*0x8 */
  2859. __IO uint32_t DATA_L; /*!< Cache Data Storage (lower word), array offset: 0x204, array step: index*0x40, index2*0x8 */
  2860. } SET[4][8];
  2861. } FMC_Type;
  2862. /* ----------------------------------------------------------------------------
  2863. -- FMC Register Masks
  2864. ---------------------------------------------------------------------------- */
  2865. /*! \addtogroup FMC_Register_Masks FMC Register Masks */
  2866. /*! \{ */
  2867. /* PFAPR Bit Fields */
  2868. #define FMC_PFAPR_M0AP_MASK 0x3u
  2869. #define FMC_PFAPR_M0AP_SHIFT 0
  2870. #define FMC_PFAPR_M0AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M0AP_SHIFT))&FMC_PFAPR_M0AP_MASK)
  2871. #define FMC_PFAPR_M1AP_MASK 0xCu
  2872. #define FMC_PFAPR_M1AP_SHIFT 2
  2873. #define FMC_PFAPR_M1AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M1AP_SHIFT))&FMC_PFAPR_M1AP_MASK)
  2874. #define FMC_PFAPR_M2AP_MASK 0x30u
  2875. #define FMC_PFAPR_M2AP_SHIFT 4
  2876. #define FMC_PFAPR_M2AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M2AP_SHIFT))&FMC_PFAPR_M2AP_MASK)
  2877. #define FMC_PFAPR_M3AP_MASK 0xC0u
  2878. #define FMC_PFAPR_M3AP_SHIFT 6
  2879. #define FMC_PFAPR_M3AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M3AP_SHIFT))&FMC_PFAPR_M3AP_MASK)
  2880. #define FMC_PFAPR_M4AP_MASK 0x300u
  2881. #define FMC_PFAPR_M4AP_SHIFT 8
  2882. #define FMC_PFAPR_M4AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M4AP_SHIFT))&FMC_PFAPR_M4AP_MASK)
  2883. #define FMC_PFAPR_M5AP_MASK 0xC00u
  2884. #define FMC_PFAPR_M5AP_SHIFT 10
  2885. #define FMC_PFAPR_M5AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M5AP_SHIFT))&FMC_PFAPR_M5AP_MASK)
  2886. #define FMC_PFAPR_M6AP_MASK 0x3000u
  2887. #define FMC_PFAPR_M6AP_SHIFT 12
  2888. #define FMC_PFAPR_M6AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M6AP_SHIFT))&FMC_PFAPR_M6AP_MASK)
  2889. #define FMC_PFAPR_M7AP_MASK 0xC000u
  2890. #define FMC_PFAPR_M7AP_SHIFT 14
  2891. #define FMC_PFAPR_M7AP(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M7AP_SHIFT))&FMC_PFAPR_M7AP_MASK)
  2892. #define FMC_PFAPR_M0PFD_MASK 0x10000u
  2893. #define FMC_PFAPR_M0PFD_SHIFT 16
  2894. #define FMC_PFAPR_M1PFD_MASK 0x20000u
  2895. #define FMC_PFAPR_M1PFD_SHIFT 17
  2896. #define FMC_PFAPR_M2PFD_MASK 0x40000u
  2897. #define FMC_PFAPR_M2PFD_SHIFT 18
  2898. #define FMC_PFAPR_M3PFD_MASK 0x80000u
  2899. #define FMC_PFAPR_M3PFD_SHIFT 19
  2900. #define FMC_PFAPR_M4PFD_MASK 0x100000u
  2901. #define FMC_PFAPR_M4PFD_SHIFT 20
  2902. #define FMC_PFAPR_M5PFD_MASK 0x200000u
  2903. #define FMC_PFAPR_M5PFD_SHIFT 21
  2904. #define FMC_PFAPR_M6PFD_MASK 0x400000u
  2905. #define FMC_PFAPR_M6PFD_SHIFT 22
  2906. #define FMC_PFAPR_M7PFD_MASK 0x800000u
  2907. #define FMC_PFAPR_M7PFD_SHIFT 23
  2908. /* PFB0CR Bit Fields */
  2909. #define FMC_PFB0CR_B0SEBE_MASK 0x1u
  2910. #define FMC_PFB0CR_B0SEBE_SHIFT 0
  2911. #define FMC_PFB0CR_B0IPE_MASK 0x2u
  2912. #define FMC_PFB0CR_B0IPE_SHIFT 1
  2913. #define FMC_PFB0CR_B0DPE_MASK 0x4u
  2914. #define FMC_PFB0CR_B0DPE_SHIFT 2
  2915. #define FMC_PFB0CR_B0ICE_MASK 0x8u
  2916. #define FMC_PFB0CR_B0ICE_SHIFT 3
  2917. #define FMC_PFB0CR_B0DCE_MASK 0x10u
  2918. #define FMC_PFB0CR_B0DCE_SHIFT 4
  2919. #define FMC_PFB0CR_CRC_MASK 0xE0u
  2920. #define FMC_PFB0CR_CRC_SHIFT 5
  2921. #define FMC_PFB0CR_CRC(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CRC_SHIFT))&FMC_PFB0CR_CRC_MASK)
  2922. #define FMC_PFB0CR_B0MW_MASK 0x60000u
  2923. #define FMC_PFB0CR_B0MW_SHIFT 17
  2924. #define FMC_PFB0CR_B0MW(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_B0MW_SHIFT))&FMC_PFB0CR_B0MW_MASK)
  2925. #define FMC_PFB0CR_S_B_INV_MASK 0x80000u
  2926. #define FMC_PFB0CR_S_B_INV_SHIFT 19
  2927. #define FMC_PFB0CR_CINV_WAY_MASK 0xF00000u
  2928. #define FMC_PFB0CR_CINV_WAY_SHIFT 20
  2929. #define FMC_PFB0CR_CINV_WAY(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CINV_WAY_SHIFT))&FMC_PFB0CR_CINV_WAY_MASK)
  2930. #define FMC_PFB0CR_CLCK_WAY_MASK 0xF000000u
  2931. #define FMC_PFB0CR_CLCK_WAY_SHIFT 24
  2932. #define FMC_PFB0CR_CLCK_WAY(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CLCK_WAY_SHIFT))&FMC_PFB0CR_CLCK_WAY_MASK)
  2933. #define FMC_PFB0CR_B0RWSC_MASK 0xF0000000u
  2934. #define FMC_PFB0CR_B0RWSC_SHIFT 28
  2935. #define FMC_PFB0CR_B0RWSC(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_B0RWSC_SHIFT))&FMC_PFB0CR_B0RWSC_MASK)
  2936. /* PFB1CR Bit Fields */
  2937. #define FMC_PFB1CR_B1SEBE_MASK 0x1u
  2938. #define FMC_PFB1CR_B1SEBE_SHIFT 0
  2939. #define FMC_PFB1CR_B1IPE_MASK 0x2u
  2940. #define FMC_PFB1CR_B1IPE_SHIFT 1
  2941. #define FMC_PFB1CR_B1DPE_MASK 0x4u
  2942. #define FMC_PFB1CR_B1DPE_SHIFT 2
  2943. #define FMC_PFB1CR_B1ICE_MASK 0x8u
  2944. #define FMC_PFB1CR_B1ICE_SHIFT 3
  2945. #define FMC_PFB1CR_B1DCE_MASK 0x10u
  2946. #define FMC_PFB1CR_B1DCE_SHIFT 4
  2947. #define FMC_PFB1CR_B1MW_MASK 0x60000u
  2948. #define FMC_PFB1CR_B1MW_SHIFT 17
  2949. #define FMC_PFB1CR_B1MW(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB1CR_B1MW_SHIFT))&FMC_PFB1CR_B1MW_MASK)
  2950. #define FMC_PFB1CR_B1RWSC_MASK 0xF0000000u
  2951. #define FMC_PFB1CR_B1RWSC_SHIFT 28
  2952. #define FMC_PFB1CR_B1RWSC(x) (((uint32_t)(((uint32_t)(x))<<FMC_PFB1CR_B1RWSC_SHIFT))&FMC_PFB1CR_B1RWSC_MASK)
  2953. /* TAGVD Bit Fields */
  2954. #define FMC_TAGVD_valid_MASK 0x1u
  2955. #define FMC_TAGVD_valid_SHIFT 0
  2956. #define FMC_TAGVD_tag_MASK 0x7FFC0u
  2957. #define FMC_TAGVD_tag_SHIFT 6
  2958. #define FMC_TAGVD_tag(x) (((uint32_t)(((uint32_t)(x))<<FMC_TAGVD_tag_SHIFT))&FMC_TAGVD_tag_MASK)
  2959. /* DATA_U Bit Fields */
  2960. #define FMC_DATA_U_data_MASK 0xFFFFFFFFu
  2961. #define FMC_DATA_U_data_SHIFT 0
  2962. #define FMC_DATA_U_data(x) (((uint32_t)(((uint32_t)(x))<<FMC_DATA_U_data_SHIFT))&FMC_DATA_U_data_MASK)
  2963. /* DATA_L Bit Fields */
  2964. #define FMC_DATA_L_data_MASK 0xFFFFFFFFu
  2965. #define FMC_DATA_L_data_SHIFT 0
  2966. #define FMC_DATA_L_data(x) (((uint32_t)(((uint32_t)(x))<<FMC_DATA_L_data_SHIFT))&FMC_DATA_L_data_MASK)
  2967. /*! \} */ /* end of group FMC_Register_Masks */
  2968. /* FMC - Peripheral instance base addresses */
  2969. /*! Peripheral FMC base address */
  2970. #define FMC_BASE (0x4001F000u)
  2971. /*! Peripheral FMC base pointer */
  2972. #define FMC ((FMC_Type *)FMC_BASE)
  2973. /*! \} */ /* end of group FMC_Peripheral_Access_Layer */
  2974. /* ----------------------------------------------------------------------------
  2975. -- FTFL Peripheral Access Layer
  2976. ---------------------------------------------------------------------------- */
  2977. /*! \addtogroup FTFL_Peripheral_Access_Layer FTFL Peripheral Access Layer */
  2978. /*! \{ */
  2979. /*! FTFL - Register Layout Typedef */
  2980. typedef struct {
  2981. __IO uint8_t FSTAT; /*!< Flash Status Register, offset: 0x0 */
  2982. __IO uint8_t FCNFG; /*!< Flash Configuration Register, offset: 0x1 */
  2983. __I uint8_t FSEC; /*!< Flash Security Register, offset: 0x2 */
  2984. __I uint8_t FOPT; /*!< Flash Option Register, offset: 0x3 */
  2985. __IO uint8_t FCCOB3; /*!< Flash Common Command Object Registers, offset: 0x4 */
  2986. __IO uint8_t FCCOB2; /*!< Flash Common Command Object Registers, offset: 0x5 */
  2987. __IO uint8_t FCCOB1; /*!< Flash Common Command Object Registers, offset: 0x6 */
  2988. __IO uint8_t FCCOB0; /*!< Flash Common Command Object Registers, offset: 0x7 */
  2989. __IO uint8_t FCCOB7; /*!< Flash Common Command Object Registers, offset: 0x8 */
  2990. __IO uint8_t FCCOB6; /*!< Flash Common Command Object Registers, offset: 0x9 */
  2991. __IO uint8_t FCCOB5; /*!< Flash Common Command Object Registers, offset: 0xA */
  2992. __IO uint8_t FCCOB4; /*!< Flash Common Command Object Registers, offset: 0xB */
  2993. __IO uint8_t FCCOBB; /*!< Flash Common Command Object Registers, offset: 0xC */
  2994. __IO uint8_t FCCOBA; /*!< Flash Common Command Object Registers, offset: 0xD */
  2995. __IO uint8_t FCCOB9; /*!< Flash Common Command Object Registers, offset: 0xE */
  2996. __IO uint8_t FCCOB8; /*!< Flash Common Command Object Registers, offset: 0xF */
  2997. __IO uint8_t FPROT3; /*!< Program Flash Protection Registers, offset: 0x10 */
  2998. __IO uint8_t FPROT2; /*!< Program Flash Protection Registers, offset: 0x11 */
  2999. __IO uint8_t FPROT1; /*!< Program Flash Protection Registers, offset: 0x12 */
  3000. __IO uint8_t FPROT0; /*!< Program Flash Protection Registers, offset: 0x13 */
  3001. uint8_t RESERVED_0[2];
  3002. __IO uint8_t FEPROT; /*!< EEPROM Protection Register, offset: 0x16 */
  3003. __IO uint8_t FDPROT; /*!< Data Flash Protection Register, offset: 0x17 */
  3004. } FTFL_Type;
  3005. /* ----------------------------------------------------------------------------
  3006. -- FTFL Register Masks
  3007. ---------------------------------------------------------------------------- */
  3008. /*! \addtogroup FTFL_Register_Masks FTFL Register Masks */
  3009. /*! \{ */
  3010. /* FSTAT Bit Fields */
  3011. #define FTFL_FSTAT_MGSTAT0_MASK 0x1u
  3012. #define FTFL_FSTAT_MGSTAT0_SHIFT 0
  3013. #define FTFL_FSTAT_FPVIOL_MASK 0x10u
  3014. #define FTFL_FSTAT_FPVIOL_SHIFT 4
  3015. #define FTFL_FSTAT_ACCERR_MASK 0x20u
  3016. #define FTFL_FSTAT_ACCERR_SHIFT 5
  3017. #define FTFL_FSTAT_RDCOLERR_MASK 0x40u
  3018. #define FTFL_FSTAT_RDCOLERR_SHIFT 6
  3019. #define FTFL_FSTAT_CCIF_MASK 0x80u
  3020. #define FTFL_FSTAT_CCIF_SHIFT 7
  3021. /* FCNFG Bit Fields */
  3022. #define FTFL_FCNFG_EEERDY_MASK 0x1u
  3023. #define FTFL_FCNFG_EEERDY_SHIFT 0
  3024. #define FTFL_FCNFG_RAMRDY_MASK 0x2u
  3025. #define FTFL_FCNFG_RAMRDY_SHIFT 1
  3026. #define FTFL_FCNFG_PFLSH_MASK 0x4u
  3027. #define FTFL_FCNFG_PFLSH_SHIFT 2
  3028. #define FTFL_FCNFG_SWAP_MASK 0x8u
  3029. #define FTFL_FCNFG_SWAP_SHIFT 3
  3030. #define FTFL_FCNFG_ERSSUSP_MASK 0x10u
  3031. #define FTFL_FCNFG_ERSSUSP_SHIFT 4
  3032. #define FTFL_FCNFG_ERSAREQ_MASK 0x20u
  3033. #define FTFL_FCNFG_ERSAREQ_SHIFT 5
  3034. #define FTFL_FCNFG_RDCOLLIE_MASK 0x40u
  3035. #define FTFL_FCNFG_RDCOLLIE_SHIFT 6
  3036. #define FTFL_FCNFG_CCIE_MASK 0x80u
  3037. #define FTFL_FCNFG_CCIE_SHIFT 7
  3038. /* FSEC Bit Fields */
  3039. #define FTFL_FSEC_SEC_MASK 0x3u
  3040. #define FTFL_FSEC_SEC_SHIFT 0
  3041. #define FTFL_FSEC_SEC(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FSEC_SEC_SHIFT))&FTFL_FSEC_SEC_MASK)
  3042. #define FTFL_FSEC_FSLACC_MASK 0xCu
  3043. #define FTFL_FSEC_FSLACC_SHIFT 2
  3044. #define FTFL_FSEC_FSLACC(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FSEC_FSLACC_SHIFT))&FTFL_FSEC_FSLACC_MASK)
  3045. #define FTFL_FSEC_MEEN_MASK 0x30u
  3046. #define FTFL_FSEC_MEEN_SHIFT 4
  3047. #define FTFL_FSEC_MEEN(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FSEC_MEEN_SHIFT))&FTFL_FSEC_MEEN_MASK)
  3048. #define FTFL_FSEC_KEYEN_MASK 0xC0u
  3049. #define FTFL_FSEC_KEYEN_SHIFT 6
  3050. #define FTFL_FSEC_KEYEN(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FSEC_KEYEN_SHIFT))&FTFL_FSEC_KEYEN_MASK)
  3051. /* FOPT Bit Fields */
  3052. #define FTFL_FOPT_OPT_MASK 0xFFu
  3053. #define FTFL_FOPT_OPT_SHIFT 0
  3054. #define FTFL_FOPT_OPT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FOPT_OPT_SHIFT))&FTFL_FOPT_OPT_MASK)
  3055. /* FCCOB3 Bit Fields */
  3056. #define FTFL_FCCOB3_CCOBn_MASK 0xFFu
  3057. #define FTFL_FCCOB3_CCOBn_SHIFT 0
  3058. #define FTFL_FCCOB3_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB3_CCOBn_SHIFT))&FTFL_FCCOB3_CCOBn_MASK)
  3059. /* FCCOB2 Bit Fields */
  3060. #define FTFL_FCCOB2_CCOBn_MASK 0xFFu
  3061. #define FTFL_FCCOB2_CCOBn_SHIFT 0
  3062. #define FTFL_FCCOB2_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB2_CCOBn_SHIFT))&FTFL_FCCOB2_CCOBn_MASK)
  3063. /* FCCOB1 Bit Fields */
  3064. #define FTFL_FCCOB1_CCOBn_MASK 0xFFu
  3065. #define FTFL_FCCOB1_CCOBn_SHIFT 0
  3066. #define FTFL_FCCOB1_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB1_CCOBn_SHIFT))&FTFL_FCCOB1_CCOBn_MASK)
  3067. /* FCCOB0 Bit Fields */
  3068. #define FTFL_FCCOB0_CCOBn_MASK 0xFFu
  3069. #define FTFL_FCCOB0_CCOBn_SHIFT 0
  3070. #define FTFL_FCCOB0_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB0_CCOBn_SHIFT))&FTFL_FCCOB0_CCOBn_MASK)
  3071. /* FCCOB7 Bit Fields */
  3072. #define FTFL_FCCOB7_CCOBn_MASK 0xFFu
  3073. #define FTFL_FCCOB7_CCOBn_SHIFT 0
  3074. #define FTFL_FCCOB7_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB7_CCOBn_SHIFT))&FTFL_FCCOB7_CCOBn_MASK)
  3075. /* FCCOB6 Bit Fields */
  3076. #define FTFL_FCCOB6_CCOBn_MASK 0xFFu
  3077. #define FTFL_FCCOB6_CCOBn_SHIFT 0
  3078. #define FTFL_FCCOB6_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB6_CCOBn_SHIFT))&FTFL_FCCOB6_CCOBn_MASK)
  3079. /* FCCOB5 Bit Fields */
  3080. #define FTFL_FCCOB5_CCOBn_MASK 0xFFu
  3081. #define FTFL_FCCOB5_CCOBn_SHIFT 0
  3082. #define FTFL_FCCOB5_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB5_CCOBn_SHIFT))&FTFL_FCCOB5_CCOBn_MASK)
  3083. /* FCCOB4 Bit Fields */
  3084. #define FTFL_FCCOB4_CCOBn_MASK 0xFFu
  3085. #define FTFL_FCCOB4_CCOBn_SHIFT 0
  3086. #define FTFL_FCCOB4_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB4_CCOBn_SHIFT))&FTFL_FCCOB4_CCOBn_MASK)
  3087. /* FCCOBB Bit Fields */
  3088. #define FTFL_FCCOBB_CCOBn_MASK 0xFFu
  3089. #define FTFL_FCCOBB_CCOBn_SHIFT 0
  3090. #define FTFL_FCCOBB_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOBB_CCOBn_SHIFT))&FTFL_FCCOBB_CCOBn_MASK)
  3091. /* FCCOBA Bit Fields */
  3092. #define FTFL_FCCOBA_CCOBn_MASK 0xFFu
  3093. #define FTFL_FCCOBA_CCOBn_SHIFT 0
  3094. #define FTFL_FCCOBA_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOBA_CCOBn_SHIFT))&FTFL_FCCOBA_CCOBn_MASK)
  3095. /* FCCOB9 Bit Fields */
  3096. #define FTFL_FCCOB9_CCOBn_MASK 0xFFu
  3097. #define FTFL_FCCOB9_CCOBn_SHIFT 0
  3098. #define FTFL_FCCOB9_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB9_CCOBn_SHIFT))&FTFL_FCCOB9_CCOBn_MASK)
  3099. /* FCCOB8 Bit Fields */
  3100. #define FTFL_FCCOB8_CCOBn_MASK 0xFFu
  3101. #define FTFL_FCCOB8_CCOBn_SHIFT 0
  3102. #define FTFL_FCCOB8_CCOBn(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FCCOB8_CCOBn_SHIFT))&FTFL_FCCOB8_CCOBn_MASK)
  3103. /* FPROT3 Bit Fields */
  3104. #define FTFL_FPROT3_PROT_MASK 0xFFu
  3105. #define FTFL_FPROT3_PROT_SHIFT 0
  3106. #define FTFL_FPROT3_PROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FPROT3_PROT_SHIFT))&FTFL_FPROT3_PROT_MASK)
  3107. /* FPROT2 Bit Fields */
  3108. #define FTFL_FPROT2_PROT_MASK 0xFFu
  3109. #define FTFL_FPROT2_PROT_SHIFT 0
  3110. #define FTFL_FPROT2_PROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FPROT2_PROT_SHIFT))&FTFL_FPROT2_PROT_MASK)
  3111. /* FPROT1 Bit Fields */
  3112. #define FTFL_FPROT1_PROT_MASK 0xFFu
  3113. #define FTFL_FPROT1_PROT_SHIFT 0
  3114. #define FTFL_FPROT1_PROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FPROT1_PROT_SHIFT))&FTFL_FPROT1_PROT_MASK)
  3115. /* FPROT0 Bit Fields */
  3116. #define FTFL_FPROT0_PROT_MASK 0xFFu
  3117. #define FTFL_FPROT0_PROT_SHIFT 0
  3118. #define FTFL_FPROT0_PROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FPROT0_PROT_SHIFT))&FTFL_FPROT0_PROT_MASK)
  3119. /* FEPROT Bit Fields */
  3120. #define FTFL_FEPROT_EPROT_MASK 0xFFu
  3121. #define FTFL_FEPROT_EPROT_SHIFT 0
  3122. #define FTFL_FEPROT_EPROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FEPROT_EPROT_SHIFT))&FTFL_FEPROT_EPROT_MASK)
  3123. /* FDPROT Bit Fields */
  3124. #define FTFL_FDPROT_DPROT_MASK 0xFFu
  3125. #define FTFL_FDPROT_DPROT_SHIFT 0
  3126. #define FTFL_FDPROT_DPROT(x) (((uint8_t)(((uint8_t)(x))<<FTFL_FDPROT_DPROT_SHIFT))&FTFL_FDPROT_DPROT_MASK)
  3127. /*! \} */ /* end of group FTFL_Register_Masks */
  3128. /* FTFL - Peripheral instance base addresses */
  3129. /*! Peripheral FTFL base address */
  3130. #define FTFL_BASE (0x40020000u)
  3131. /*! Peripheral FTFL base pointer */
  3132. #define FTFL ((FTFL_Type *)FTFL_BASE)
  3133. /*! \} */ /* end of group FTFL_Peripheral_Access_Layer */
  3134. /* ----------------------------------------------------------------------------
  3135. -- NV Peripheral Access Layer
  3136. ---------------------------------------------------------------------------- */
  3137. /*! \addtogroup NV_Peripheral_Access_Layer NV Peripheral Access Layer */
  3138. /*! \{ */
  3139. /*! NV - Register Layout Typedef */
  3140. typedef struct {
  3141. __I uint8_t BACKKEY3; /*!< Backdoor Comparison Key 3., offset: 0x0 */
  3142. __I uint8_t BACKKEY2; /*!< Backdoor Comparison Key 2., offset: 0x1 */
  3143. __I uint8_t BACKKEY1; /*!< Backdoor Comparison Key 1., offset: 0x2 */
  3144. __I uint8_t BACKKEY0; /*!< Backdoor Comparison Key 0., offset: 0x3 */
  3145. __I uint8_t BACKKEY7; /*!< Backdoor Comparison Key 7., offset: 0x4 */
  3146. __I uint8_t BACKKEY6; /*!< Backdoor Comparison Key 6., offset: 0x5 */
  3147. __I uint8_t BACKKEY5; /*!< Backdoor Comparison Key 5., offset: 0x6 */
  3148. __I uint8_t BACKKEY4; /*!< Backdoor Comparison Key 4., offset: 0x7 */
  3149. __I uint8_t FPROT3; /*!< Non-volatile P-Flash Protection 1 - Low Register, offset: 0x8 */
  3150. __I uint8_t FPROT2; /*!< Non-volatile P-Flash Protection 1 - High Register, offset: 0x9 */
  3151. __I uint8_t FPROT1; /*!< Non-volatile P-Flash Protection 0 - Low Register, offset: 0xA */
  3152. __I uint8_t FPROT0; /*!< Non-volatile P-Flash Protection 0 - High Register, offset: 0xB */
  3153. __I uint8_t FSEC; /*!< Non-volatile Flash Security Register, offset: 0xC */
  3154. __I uint8_t FOPT; /*!< Non-volatile Flash Option Register, offset: 0xD */
  3155. __I uint8_t FEPROT; /*!< Non-volatile EERAM Protection Register, offset: 0xE */
  3156. __I uint8_t FDPROT; /*!< Non-volatile D-Flash Protection Register, offset: 0xF */
  3157. } NV_Type;
  3158. /* ----------------------------------------------------------------------------
  3159. -- NV Register Masks
  3160. ---------------------------------------------------------------------------- */
  3161. /*! \addtogroup NV_Register_Masks NV Register Masks */
  3162. /*! \{ */
  3163. /* BACKKEY3 Bit Fields */
  3164. #define NV_BACKKEY3_KEY_MASK 0xFFu
  3165. #define NV_BACKKEY3_KEY_SHIFT 0
  3166. #define NV_BACKKEY3_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY3_KEY_SHIFT))&NV_BACKKEY3_KEY_MASK)
  3167. /* BACKKEY2 Bit Fields */
  3168. #define NV_BACKKEY2_KEY_MASK 0xFFu
  3169. #define NV_BACKKEY2_KEY_SHIFT 0
  3170. #define NV_BACKKEY2_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY2_KEY_SHIFT))&NV_BACKKEY2_KEY_MASK)
  3171. /* BACKKEY1 Bit Fields */
  3172. #define NV_BACKKEY1_KEY_MASK 0xFFu
  3173. #define NV_BACKKEY1_KEY_SHIFT 0
  3174. #define NV_BACKKEY1_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY1_KEY_SHIFT))&NV_BACKKEY1_KEY_MASK)
  3175. /* BACKKEY0 Bit Fields */
  3176. #define NV_BACKKEY0_KEY_MASK 0xFFu
  3177. #define NV_BACKKEY0_KEY_SHIFT 0
  3178. #define NV_BACKKEY0_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY0_KEY_SHIFT))&NV_BACKKEY0_KEY_MASK)
  3179. /* BACKKEY7 Bit Fields */
  3180. #define NV_BACKKEY7_KEY_MASK 0xFFu
  3181. #define NV_BACKKEY7_KEY_SHIFT 0
  3182. #define NV_BACKKEY7_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY7_KEY_SHIFT))&NV_BACKKEY7_KEY_MASK)
  3183. /* BACKKEY6 Bit Fields */
  3184. #define NV_BACKKEY6_KEY_MASK 0xFFu
  3185. #define NV_BACKKEY6_KEY_SHIFT 0
  3186. #define NV_BACKKEY6_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY6_KEY_SHIFT))&NV_BACKKEY6_KEY_MASK)
  3187. /* BACKKEY5 Bit Fields */
  3188. #define NV_BACKKEY5_KEY_MASK 0xFFu
  3189. #define NV_BACKKEY5_KEY_SHIFT 0
  3190. #define NV_BACKKEY5_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY5_KEY_SHIFT))&NV_BACKKEY5_KEY_MASK)
  3191. /* BACKKEY4 Bit Fields */
  3192. #define NV_BACKKEY4_KEY_MASK 0xFFu
  3193. #define NV_BACKKEY4_KEY_SHIFT 0
  3194. #define NV_BACKKEY4_KEY(x) (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY4_KEY_SHIFT))&NV_BACKKEY4_KEY_MASK)
  3195. /* FPROT3 Bit Fields */
  3196. #define NV_FPROT3_PROT_MASK 0xFFu
  3197. #define NV_FPROT3_PROT_SHIFT 0
  3198. #define NV_FPROT3_PROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FPROT3_PROT_SHIFT))&NV_FPROT3_PROT_MASK)
  3199. /* FPROT2 Bit Fields */
  3200. #define NV_FPROT2_PROT_MASK 0xFFu
  3201. #define NV_FPROT2_PROT_SHIFT 0
  3202. #define NV_FPROT2_PROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FPROT2_PROT_SHIFT))&NV_FPROT2_PROT_MASK)
  3203. /* FPROT1 Bit Fields */
  3204. #define NV_FPROT1_PROT_MASK 0xFFu
  3205. #define NV_FPROT1_PROT_SHIFT 0
  3206. #define NV_FPROT1_PROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FPROT1_PROT_SHIFT))&NV_FPROT1_PROT_MASK)
  3207. /* FPROT0 Bit Fields */
  3208. #define NV_FPROT0_PROT_MASK 0xFFu
  3209. #define NV_FPROT0_PROT_SHIFT 0
  3210. #define NV_FPROT0_PROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FPROT0_PROT_SHIFT))&NV_FPROT0_PROT_MASK)
  3211. /* FSEC Bit Fields */
  3212. #define NV_FSEC_SEC_MASK 0x3u
  3213. #define NV_FSEC_SEC_SHIFT 0
  3214. #define NV_FSEC_SEC(x) (((uint8_t)(((uint8_t)(x))<<NV_FSEC_SEC_SHIFT))&NV_FSEC_SEC_MASK)
  3215. #define NV_FSEC_FSLACC_MASK 0xCu
  3216. #define NV_FSEC_FSLACC_SHIFT 2
  3217. #define NV_FSEC_FSLACC(x) (((uint8_t)(((uint8_t)(x))<<NV_FSEC_FSLACC_SHIFT))&NV_FSEC_FSLACC_MASK)
  3218. #define NV_FSEC_MEEN_MASK 0x30u
  3219. #define NV_FSEC_MEEN_SHIFT 4
  3220. #define NV_FSEC_MEEN(x) (((uint8_t)(((uint8_t)(x))<<NV_FSEC_MEEN_SHIFT))&NV_FSEC_MEEN_MASK)
  3221. #define NV_FSEC_KEYEN_MASK 0xC0u
  3222. #define NV_FSEC_KEYEN_SHIFT 6
  3223. #define NV_FSEC_KEYEN(x) (((uint8_t)(((uint8_t)(x))<<NV_FSEC_KEYEN_SHIFT))&NV_FSEC_KEYEN_MASK)
  3224. /* FOPT Bit Fields */
  3225. #define NV_FOPT_LPBOOT_MASK 0x1u
  3226. #define NV_FOPT_LPBOOT_SHIFT 0
  3227. #define NV_FOPT_EZPORT_DIS_MASK 0x2u
  3228. #define NV_FOPT_EZPORT_DIS_SHIFT 1
  3229. /* FEPROT Bit Fields */
  3230. #define NV_FEPROT_EPROT_MASK 0xFFu
  3231. #define NV_FEPROT_EPROT_SHIFT 0
  3232. #define NV_FEPROT_EPROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FEPROT_EPROT_SHIFT))&NV_FEPROT_EPROT_MASK)
  3233. /* FDPROT Bit Fields */
  3234. #define NV_FDPROT_DPROT_MASK 0xFFu
  3235. #define NV_FDPROT_DPROT_SHIFT 0
  3236. #define NV_FDPROT_DPROT(x) (((uint8_t)(((uint8_t)(x))<<NV_FDPROT_DPROT_SHIFT))&NV_FDPROT_DPROT_MASK)
  3237. /*! \} */ /* end of group NV_Register_Masks */
  3238. /* NV - Peripheral instance base addresses */
  3239. /*! Peripheral FTFL_FlashConfig base address */
  3240. #define FTFL_FlashConfig_BASE (0x400u)
  3241. /*! Peripheral FTFL_FlashConfig base pointer */
  3242. #define FTFL_FlashConfig ((NV_Type *)FTFL_FlashConfig_BASE)
  3243. /*! \} */ /* end of group NV_Peripheral_Access_Layer */
  3244. /* ----------------------------------------------------------------------------
  3245. -- FTM Peripheral Access Layer
  3246. ---------------------------------------------------------------------------- */
  3247. /*! \addtogroup FTM_Peripheral_Access_Layer FTM Peripheral Access Layer */
  3248. /*! \{ */
  3249. /*! FTM - Register Layout Typedef */
  3250. typedef struct {
  3251. __IO uint32_t SC; /*!< Status and Control, offset: 0x0 */
  3252. __IO uint32_t CNT; /*!< Counter, offset: 0x4 */
  3253. __IO uint32_t MOD; /*!< Modulo, offset: 0x8 */
  3254. struct { /* offset: 0xC, array step: 0x8 */
  3255. __IO uint32_t CnSC; /*!< Channel (n) Status and Control, array offset: 0xC, array step: 0x8 */
  3256. __IO uint32_t CnV; /*!< Channel (n) Value, array offset: 0x10, array step: 0x8 */
  3257. } CONTROLS[8];
  3258. __IO uint32_t CNTIN; /*!< Counter Initial Value, offset: 0x4C */
  3259. __I uint32_t STATUS; /*!< Capture and Compare Status, offset: 0x50 */
  3260. __IO uint32_t MODE; /*!< Features Mode Selection, offset: 0x54 */
  3261. __IO uint32_t SYNC; /*!< Synchronization, offset: 0x58 */
  3262. __IO uint32_t OUTINIT; /*!< Initial State for Channels Output, offset: 0x5C */
  3263. __IO uint32_t OUTMASK; /*!< Output Mask, offset: 0x60 */
  3264. __IO uint32_t COMBINE; /*!< Function for Linked Channels, offset: 0x64 */
  3265. __IO uint32_t DEADTIME; /*!< Deadtime Insertion Control, offset: 0x68 */
  3266. __IO uint32_t EXTTRIG; /*!< FTM External Trigger, offset: 0x6C */
  3267. __IO uint32_t POL; /*!< Channels Polarity, offset: 0x70 */
  3268. __IO uint32_t FMS; /*!< Fault Mode Status, offset: 0x74 */
  3269. __IO uint32_t FILTER; /*!< Input Capture Filter Control, offset: 0x78 */
  3270. __IO uint32_t FLTCTRL; /*!< Fault Control, offset: 0x7C */
  3271. __IO uint32_t QDCTRL; /*!< Quadrature Decoder Control and Status, offset: 0x80 */
  3272. __IO uint32_t CONF; /*!< Configuration, offset: 0x84 */
  3273. __IO uint32_t FLTPOL; /*!< FTM Fault Input Polarity, offset: 0x88 */
  3274. __IO uint32_t SYNCONF; /*!< Synchronization Configuration, offset: 0x8C */
  3275. __IO uint32_t INVCTRL; /*!< FTM Inverting Control, offset: 0x90 */
  3276. __IO uint32_t SWOCTRL; /*!< FTM Software Output Control, offset: 0x94 */
  3277. __IO uint32_t PWMLOAD; /*!< FTM PWM Load, offset: 0x98 */
  3278. } FTM_Type;
  3279. /* ----------------------------------------------------------------------------
  3280. -- FTM Register Masks
  3281. ---------------------------------------------------------------------------- */
  3282. /*! \addtogroup FTM_Register_Masks FTM Register Masks */
  3283. /*! \{ */
  3284. /* SC Bit Fields */
  3285. #define FTM_SC_PS_MASK 0x7u
  3286. #define FTM_SC_PS_SHIFT 0
  3287. #define FTM_SC_PS(x) (((uint32_t)(((uint32_t)(x))<<FTM_SC_PS_SHIFT))&FTM_SC_PS_MASK)
  3288. #define FTM_SC_CLKS_MASK 0x18u
  3289. #define FTM_SC_CLKS_SHIFT 3
  3290. #define FTM_SC_CLKS(x) (((uint32_t)(((uint32_t)(x))<<FTM_SC_CLKS_SHIFT))&FTM_SC_CLKS_MASK)
  3291. #define FTM_SC_CPWMS_MASK 0x20u
  3292. #define FTM_SC_CPWMS_SHIFT 5
  3293. #define FTM_SC_TOIE_MASK 0x40u
  3294. #define FTM_SC_TOIE_SHIFT 6
  3295. #define FTM_SC_TOF_MASK 0x80u
  3296. #define FTM_SC_TOF_SHIFT 7
  3297. /* CNT Bit Fields */
  3298. #define FTM_CNT_COUNT_MASK 0xFFFFu
  3299. #define FTM_CNT_COUNT_SHIFT 0
  3300. #define FTM_CNT_COUNT(x) (((uint32_t)(((uint32_t)(x))<<FTM_CNT_COUNT_SHIFT))&FTM_CNT_COUNT_MASK)
  3301. /* MOD Bit Fields */
  3302. #define FTM_MOD_MOD_MASK 0xFFFFu
  3303. #define FTM_MOD_MOD_SHIFT 0
  3304. #define FTM_MOD_MOD(x) (((uint32_t)(((uint32_t)(x))<<FTM_MOD_MOD_SHIFT))&FTM_MOD_MOD_MASK)
  3305. /* CnSC Bit Fields */
  3306. #define FTM_CnSC_DMA_MASK 0x1u
  3307. #define FTM_CnSC_DMA_SHIFT 0
  3308. #define FTM_CnSC_ELSA_MASK 0x4u
  3309. #define FTM_CnSC_ELSA_SHIFT 2
  3310. #define FTM_CnSC_ELSB_MASK 0x8u
  3311. #define FTM_CnSC_ELSB_SHIFT 3
  3312. #define FTM_CnSC_MSA_MASK 0x10u
  3313. #define FTM_CnSC_MSA_SHIFT 4
  3314. #define FTM_CnSC_MSB_MASK 0x20u
  3315. #define FTM_CnSC_MSB_SHIFT 5
  3316. #define FTM_CnSC_CHIE_MASK 0x40u
  3317. #define FTM_CnSC_CHIE_SHIFT 6
  3318. #define FTM_CnSC_CHF_MASK 0x80u
  3319. #define FTM_CnSC_CHF_SHIFT 7
  3320. /* CnV Bit Fields */
  3321. #define FTM_CnV_VAL_MASK 0xFFFFu
  3322. #define FTM_CnV_VAL_SHIFT 0
  3323. #define FTM_CnV_VAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_CnV_VAL_SHIFT))&FTM_CnV_VAL_MASK)
  3324. /* CNTIN Bit Fields */
  3325. #define FTM_CNTIN_INIT_MASK 0xFFFFu
  3326. #define FTM_CNTIN_INIT_SHIFT 0
  3327. #define FTM_CNTIN_INIT(x) (((uint32_t)(((uint32_t)(x))<<FTM_CNTIN_INIT_SHIFT))&FTM_CNTIN_INIT_MASK)
  3328. /* STATUS Bit Fields */
  3329. #define FTM_STATUS_CH0F_MASK 0x1u
  3330. #define FTM_STATUS_CH0F_SHIFT 0
  3331. #define FTM_STATUS_CH1F_MASK 0x2u
  3332. #define FTM_STATUS_CH1F_SHIFT 1
  3333. #define FTM_STATUS_CH2F_MASK 0x4u
  3334. #define FTM_STATUS_CH2F_SHIFT 2
  3335. #define FTM_STATUS_CH3F_MASK 0x8u
  3336. #define FTM_STATUS_CH3F_SHIFT 3
  3337. #define FTM_STATUS_CH4F_MASK 0x10u
  3338. #define FTM_STATUS_CH4F_SHIFT 4
  3339. #define FTM_STATUS_CH5F_MASK 0x20u
  3340. #define FTM_STATUS_CH5F_SHIFT 5
  3341. #define FTM_STATUS_CH6F_MASK 0x40u
  3342. #define FTM_STATUS_CH6F_SHIFT 6
  3343. #define FTM_STATUS_CH7F_MASK 0x80u
  3344. #define FTM_STATUS_CH7F_SHIFT 7
  3345. /* MODE Bit Fields */
  3346. #define FTM_MODE_FTMEN_MASK 0x1u
  3347. #define FTM_MODE_FTMEN_SHIFT 0
  3348. #define FTM_MODE_INIT_MASK 0x2u
  3349. #define FTM_MODE_INIT_SHIFT 1
  3350. #define FTM_MODE_WPDIS_MASK 0x4u
  3351. #define FTM_MODE_WPDIS_SHIFT 2
  3352. #define FTM_MODE_PWMSYNC_MASK 0x8u
  3353. #define FTM_MODE_PWMSYNC_SHIFT 3
  3354. #define FTM_MODE_CAPTEST_MASK 0x10u
  3355. #define FTM_MODE_CAPTEST_SHIFT 4
  3356. #define FTM_MODE_FAULTM_MASK 0x60u
  3357. #define FTM_MODE_FAULTM_SHIFT 5
  3358. #define FTM_MODE_FAULTM(x) (((uint32_t)(((uint32_t)(x))<<FTM_MODE_FAULTM_SHIFT))&FTM_MODE_FAULTM_MASK)
  3359. #define FTM_MODE_FAULTIE_MASK 0x80u
  3360. #define FTM_MODE_FAULTIE_SHIFT 7
  3361. /* SYNC Bit Fields */
  3362. #define FTM_SYNC_CNTMIN_MASK 0x1u
  3363. #define FTM_SYNC_CNTMIN_SHIFT 0
  3364. #define FTM_SYNC_CNTMAX_MASK 0x2u
  3365. #define FTM_SYNC_CNTMAX_SHIFT 1
  3366. #define FTM_SYNC_REINIT_MASK 0x4u
  3367. #define FTM_SYNC_REINIT_SHIFT 2
  3368. #define FTM_SYNC_SYNCHOM_MASK 0x8u
  3369. #define FTM_SYNC_SYNCHOM_SHIFT 3
  3370. #define FTM_SYNC_TRIG0_MASK 0x10u
  3371. #define FTM_SYNC_TRIG0_SHIFT 4
  3372. #define FTM_SYNC_TRIG1_MASK 0x20u
  3373. #define FTM_SYNC_TRIG1_SHIFT 5
  3374. #define FTM_SYNC_TRIG2_MASK 0x40u
  3375. #define FTM_SYNC_TRIG2_SHIFT 6
  3376. #define FTM_SYNC_SWSYNC_MASK 0x80u
  3377. #define FTM_SYNC_SWSYNC_SHIFT 7
  3378. /* OUTINIT Bit Fields */
  3379. #define FTM_OUTINIT_CH0OI_MASK 0x1u
  3380. #define FTM_OUTINIT_CH0OI_SHIFT 0
  3381. #define FTM_OUTINIT_CH1OI_MASK 0x2u
  3382. #define FTM_OUTINIT_CH1OI_SHIFT 1
  3383. #define FTM_OUTINIT_CH2OI_MASK 0x4u
  3384. #define FTM_OUTINIT_CH2OI_SHIFT 2
  3385. #define FTM_OUTINIT_CH3OI_MASK 0x8u
  3386. #define FTM_OUTINIT_CH3OI_SHIFT 3
  3387. #define FTM_OUTINIT_CH4OI_MASK 0x10u
  3388. #define FTM_OUTINIT_CH4OI_SHIFT 4
  3389. #define FTM_OUTINIT_CH5OI_MASK 0x20u
  3390. #define FTM_OUTINIT_CH5OI_SHIFT 5
  3391. #define FTM_OUTINIT_CH6OI_MASK 0x40u
  3392. #define FTM_OUTINIT_CH6OI_SHIFT 6
  3393. #define FTM_OUTINIT_CH7OI_MASK 0x80u
  3394. #define FTM_OUTINIT_CH7OI_SHIFT 7
  3395. /* OUTMASK Bit Fields */
  3396. #define FTM_OUTMASK_CH0OM_MASK 0x1u
  3397. #define FTM_OUTMASK_CH0OM_SHIFT 0
  3398. #define FTM_OUTMASK_CH1OM_MASK 0x2u
  3399. #define FTM_OUTMASK_CH1OM_SHIFT 1
  3400. #define FTM_OUTMASK_CH2OM_MASK 0x4u
  3401. #define FTM_OUTMASK_CH2OM_SHIFT 2
  3402. #define FTM_OUTMASK_CH3OM_MASK 0x8u
  3403. #define FTM_OUTMASK_CH3OM_SHIFT 3
  3404. #define FTM_OUTMASK_CH4OM_MASK 0x10u
  3405. #define FTM_OUTMASK_CH4OM_SHIFT 4
  3406. #define FTM_OUTMASK_CH5OM_MASK 0x20u
  3407. #define FTM_OUTMASK_CH5OM_SHIFT 5
  3408. #define FTM_OUTMASK_CH6OM_MASK 0x40u
  3409. #define FTM_OUTMASK_CH6OM_SHIFT 6
  3410. #define FTM_OUTMASK_CH7OM_MASK 0x80u
  3411. #define FTM_OUTMASK_CH7OM_SHIFT 7
  3412. /* COMBINE Bit Fields */
  3413. #define FTM_COMBINE_COMBINE0_MASK 0x1u
  3414. #define FTM_COMBINE_COMBINE0_SHIFT 0
  3415. #define FTM_COMBINE_COMP0_MASK 0x2u
  3416. #define FTM_COMBINE_COMP0_SHIFT 1
  3417. #define FTM_COMBINE_DECAPEN0_MASK 0x4u
  3418. #define FTM_COMBINE_DECAPEN0_SHIFT 2
  3419. #define FTM_COMBINE_DECAP0_MASK 0x8u
  3420. #define FTM_COMBINE_DECAP0_SHIFT 3
  3421. #define FTM_COMBINE_DTEN0_MASK 0x10u
  3422. #define FTM_COMBINE_DTEN0_SHIFT 4
  3423. #define FTM_COMBINE_SYNCEN0_MASK 0x20u
  3424. #define FTM_COMBINE_SYNCEN0_SHIFT 5
  3425. #define FTM_COMBINE_FAULTEN0_MASK 0x40u
  3426. #define FTM_COMBINE_FAULTEN0_SHIFT 6
  3427. #define FTM_COMBINE_COMBINE1_MASK 0x100u
  3428. #define FTM_COMBINE_COMBINE1_SHIFT 8
  3429. #define FTM_COMBINE_COMP1_MASK 0x200u
  3430. #define FTM_COMBINE_COMP1_SHIFT 9
  3431. #define FTM_COMBINE_DECAPEN1_MASK 0x400u
  3432. #define FTM_COMBINE_DECAPEN1_SHIFT 10
  3433. #define FTM_COMBINE_DECAP1_MASK 0x800u
  3434. #define FTM_COMBINE_DECAP1_SHIFT 11
  3435. #define FTM_COMBINE_DTEN1_MASK 0x1000u
  3436. #define FTM_COMBINE_DTEN1_SHIFT 12
  3437. #define FTM_COMBINE_SYNCEN1_MASK 0x2000u
  3438. #define FTM_COMBINE_SYNCEN1_SHIFT 13
  3439. #define FTM_COMBINE_FAULTEN1_MASK 0x4000u
  3440. #define FTM_COMBINE_FAULTEN1_SHIFT 14
  3441. #define FTM_COMBINE_COMBINE2_MASK 0x10000u
  3442. #define FTM_COMBINE_COMBINE2_SHIFT 16
  3443. #define FTM_COMBINE_COMP2_MASK 0x20000u
  3444. #define FTM_COMBINE_COMP2_SHIFT 17
  3445. #define FTM_COMBINE_DECAPEN2_MASK 0x40000u
  3446. #define FTM_COMBINE_DECAPEN2_SHIFT 18
  3447. #define FTM_COMBINE_DECAP2_MASK 0x80000u
  3448. #define FTM_COMBINE_DECAP2_SHIFT 19
  3449. #define FTM_COMBINE_DTEN2_MASK 0x100000u
  3450. #define FTM_COMBINE_DTEN2_SHIFT 20
  3451. #define FTM_COMBINE_SYNCEN2_MASK 0x200000u
  3452. #define FTM_COMBINE_SYNCEN2_SHIFT 21
  3453. #define FTM_COMBINE_FAULTEN2_MASK 0x400000u
  3454. #define FTM_COMBINE_FAULTEN2_SHIFT 22
  3455. #define FTM_COMBINE_COMBINE3_MASK 0x1000000u
  3456. #define FTM_COMBINE_COMBINE3_SHIFT 24
  3457. #define FTM_COMBINE_COMP3_MASK 0x2000000u
  3458. #define FTM_COMBINE_COMP3_SHIFT 25
  3459. #define FTM_COMBINE_DECAPEN3_MASK 0x4000000u
  3460. #define FTM_COMBINE_DECAPEN3_SHIFT 26
  3461. #define FTM_COMBINE_DECAP3_MASK 0x8000000u
  3462. #define FTM_COMBINE_DECAP3_SHIFT 27
  3463. #define FTM_COMBINE_DTEN3_MASK 0x10000000u
  3464. #define FTM_COMBINE_DTEN3_SHIFT 28
  3465. #define FTM_COMBINE_SYNCEN3_MASK 0x20000000u
  3466. #define FTM_COMBINE_SYNCEN3_SHIFT 29
  3467. #define FTM_COMBINE_FAULTEN3_MASK 0x40000000u
  3468. #define FTM_COMBINE_FAULTEN3_SHIFT 30
  3469. /* DEADTIME Bit Fields */
  3470. #define FTM_DEADTIME_DTVAL_MASK 0x3Fu
  3471. #define FTM_DEADTIME_DTVAL_SHIFT 0
  3472. #define FTM_DEADTIME_DTVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_DEADTIME_DTVAL_SHIFT))&FTM_DEADTIME_DTVAL_MASK)
  3473. #define FTM_DEADTIME_DTPS_MASK 0xC0u
  3474. #define FTM_DEADTIME_DTPS_SHIFT 6
  3475. #define FTM_DEADTIME_DTPS(x) (((uint32_t)(((uint32_t)(x))<<FTM_DEADTIME_DTPS_SHIFT))&FTM_DEADTIME_DTPS_MASK)
  3476. /* EXTTRIG Bit Fields */
  3477. #define FTM_EXTTRIG_CH2TRIG_MASK 0x1u
  3478. #define FTM_EXTTRIG_CH2TRIG_SHIFT 0
  3479. #define FTM_EXTTRIG_CH3TRIG_MASK 0x2u
  3480. #define FTM_EXTTRIG_CH3TRIG_SHIFT 1
  3481. #define FTM_EXTTRIG_CH4TRIG_MASK 0x4u
  3482. #define FTM_EXTTRIG_CH4TRIG_SHIFT 2
  3483. #define FTM_EXTTRIG_CH5TRIG_MASK 0x8u
  3484. #define FTM_EXTTRIG_CH5TRIG_SHIFT 3
  3485. #define FTM_EXTTRIG_CH0TRIG_MASK 0x10u
  3486. #define FTM_EXTTRIG_CH0TRIG_SHIFT 4
  3487. #define FTM_EXTTRIG_CH1TRIG_MASK 0x20u
  3488. #define FTM_EXTTRIG_CH1TRIG_SHIFT 5
  3489. #define FTM_EXTTRIG_INITTRIGEN_MASK 0x40u
  3490. #define FTM_EXTTRIG_INITTRIGEN_SHIFT 6
  3491. #define FTM_EXTTRIG_TRIGF_MASK 0x80u
  3492. #define FTM_EXTTRIG_TRIGF_SHIFT 7
  3493. /* POL Bit Fields */
  3494. #define FTM_POL_POL0_MASK 0x1u
  3495. #define FTM_POL_POL0_SHIFT 0
  3496. #define FTM_POL_POL1_MASK 0x2u
  3497. #define FTM_POL_POL1_SHIFT 1
  3498. #define FTM_POL_POL2_MASK 0x4u
  3499. #define FTM_POL_POL2_SHIFT 2
  3500. #define FTM_POL_POL3_MASK 0x8u
  3501. #define FTM_POL_POL3_SHIFT 3
  3502. #define FTM_POL_POL4_MASK 0x10u
  3503. #define FTM_POL_POL4_SHIFT 4
  3504. #define FTM_POL_POL5_MASK 0x20u
  3505. #define FTM_POL_POL5_SHIFT 5
  3506. #define FTM_POL_POL6_MASK 0x40u
  3507. #define FTM_POL_POL6_SHIFT 6
  3508. #define FTM_POL_POL7_MASK 0x80u
  3509. #define FTM_POL_POL7_SHIFT 7
  3510. /* FMS Bit Fields */
  3511. #define FTM_FMS_FAULTF0_MASK 0x1u
  3512. #define FTM_FMS_FAULTF0_SHIFT 0
  3513. #define FTM_FMS_FAULTF1_MASK 0x2u
  3514. #define FTM_FMS_FAULTF1_SHIFT 1
  3515. #define FTM_FMS_FAULTF2_MASK 0x4u
  3516. #define FTM_FMS_FAULTF2_SHIFT 2
  3517. #define FTM_FMS_FAULTF3_MASK 0x8u
  3518. #define FTM_FMS_FAULTF3_SHIFT 3
  3519. #define FTM_FMS_FAULTIN_MASK 0x20u
  3520. #define FTM_FMS_FAULTIN_SHIFT 5
  3521. #define FTM_FMS_WPEN_MASK 0x40u
  3522. #define FTM_FMS_WPEN_SHIFT 6
  3523. #define FTM_FMS_FAULTF_MASK 0x80u
  3524. #define FTM_FMS_FAULTF_SHIFT 7
  3525. /* FILTER Bit Fields */
  3526. #define FTM_FILTER_CH0FVAL_MASK 0xFu
  3527. #define FTM_FILTER_CH0FVAL_SHIFT 0
  3528. #define FTM_FILTER_CH0FVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH0FVAL_SHIFT))&FTM_FILTER_CH0FVAL_MASK)
  3529. #define FTM_FILTER_CH1FVAL_MASK 0xF0u
  3530. #define FTM_FILTER_CH1FVAL_SHIFT 4
  3531. #define FTM_FILTER_CH1FVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH1FVAL_SHIFT))&FTM_FILTER_CH1FVAL_MASK)
  3532. #define FTM_FILTER_CH2FVAL_MASK 0xF00u
  3533. #define FTM_FILTER_CH2FVAL_SHIFT 8
  3534. #define FTM_FILTER_CH2FVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH2FVAL_SHIFT))&FTM_FILTER_CH2FVAL_MASK)
  3535. #define FTM_FILTER_CH3FVAL_MASK 0xF000u
  3536. #define FTM_FILTER_CH3FVAL_SHIFT 12
  3537. #define FTM_FILTER_CH3FVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH3FVAL_SHIFT))&FTM_FILTER_CH3FVAL_MASK)
  3538. /* FLTCTRL Bit Fields */
  3539. #define FTM_FLTCTRL_FAULT0EN_MASK 0x1u
  3540. #define FTM_FLTCTRL_FAULT0EN_SHIFT 0
  3541. #define FTM_FLTCTRL_FAULT1EN_MASK 0x2u
  3542. #define FTM_FLTCTRL_FAULT1EN_SHIFT 1
  3543. #define FTM_FLTCTRL_FAULT2EN_MASK 0x4u
  3544. #define FTM_FLTCTRL_FAULT2EN_SHIFT 2
  3545. #define FTM_FLTCTRL_FAULT3EN_MASK 0x8u
  3546. #define FTM_FLTCTRL_FAULT3EN_SHIFT 3
  3547. #define FTM_FLTCTRL_FFLTR0EN_MASK 0x10u
  3548. #define FTM_FLTCTRL_FFLTR0EN_SHIFT 4
  3549. #define FTM_FLTCTRL_FFLTR1EN_MASK 0x20u
  3550. #define FTM_FLTCTRL_FFLTR1EN_SHIFT 5
  3551. #define FTM_FLTCTRL_FFLTR2EN_MASK 0x40u
  3552. #define FTM_FLTCTRL_FFLTR2EN_SHIFT 6
  3553. #define FTM_FLTCTRL_FFLTR3EN_MASK 0x80u
  3554. #define FTM_FLTCTRL_FFLTR3EN_SHIFT 7
  3555. #define FTM_FLTCTRL_FFVAL_MASK 0xF00u
  3556. #define FTM_FLTCTRL_FFVAL_SHIFT 8
  3557. #define FTM_FLTCTRL_FFVAL(x) (((uint32_t)(((uint32_t)(x))<<FTM_FLTCTRL_FFVAL_SHIFT))&FTM_FLTCTRL_FFVAL_MASK)
  3558. /* QDCTRL Bit Fields */
  3559. #define FTM_QDCTRL_QUADEN_MASK 0x1u
  3560. #define FTM_QDCTRL_QUADEN_SHIFT 0
  3561. #define FTM_QDCTRL_TOFDIR_MASK 0x2u
  3562. #define FTM_QDCTRL_TOFDIR_SHIFT 1
  3563. #define FTM_QDCTRL_QUADIR_MASK 0x4u
  3564. #define FTM_QDCTRL_QUADIR_SHIFT 2
  3565. #define FTM_QDCTRL_QUADMODE_MASK 0x8u
  3566. #define FTM_QDCTRL_QUADMODE_SHIFT 3
  3567. #define FTM_QDCTRL_PHBPOL_MASK 0x10u
  3568. #define FTM_QDCTRL_PHBPOL_SHIFT 4
  3569. #define FTM_QDCTRL_PHAPOL_MASK 0x20u
  3570. #define FTM_QDCTRL_PHAPOL_SHIFT 5
  3571. #define FTM_QDCTRL_PHBFLTREN_MASK 0x40u
  3572. #define FTM_QDCTRL_PHBFLTREN_SHIFT 6
  3573. #define FTM_QDCTRL_PHAFLTREN_MASK 0x80u
  3574. #define FTM_QDCTRL_PHAFLTREN_SHIFT 7
  3575. /* CONF Bit Fields */
  3576. #define FTM_CONF_NUMTOF_MASK 0x1Fu
  3577. #define FTM_CONF_NUMTOF_SHIFT 0
  3578. #define FTM_CONF_NUMTOF(x) (((uint32_t)(((uint32_t)(x))<<FTM_CONF_NUMTOF_SHIFT))&FTM_CONF_NUMTOF_MASK)
  3579. #define FTM_CONF_BDMMODE_MASK 0xC0u
  3580. #define FTM_CONF_BDMMODE_SHIFT 6
  3581. #define FTM_CONF_BDMMODE(x) (((uint32_t)(((uint32_t)(x))<<FTM_CONF_BDMMODE_SHIFT))&FTM_CONF_BDMMODE_MASK)
  3582. #define FTM_CONF_GTBEEN_MASK 0x200u
  3583. #define FTM_CONF_GTBEEN_SHIFT 9
  3584. #define FTM_CONF_GTBEOUT_MASK 0x400u
  3585. #define FTM_CONF_GTBEOUT_SHIFT 10
  3586. /* FLTPOL Bit Fields */
  3587. #define FTM_FLTPOL_FLT0POL_MASK 0x1u
  3588. #define FTM_FLTPOL_FLT0POL_SHIFT 0
  3589. #define FTM_FLTPOL_FLT1POL_MASK 0x2u
  3590. #define FTM_FLTPOL_FLT1POL_SHIFT 1
  3591. #define FTM_FLTPOL_FLT2POL_MASK 0x4u
  3592. #define FTM_FLTPOL_FLT2POL_SHIFT 2
  3593. #define FTM_FLTPOL_FLT3POL_MASK 0x8u
  3594. #define FTM_FLTPOL_FLT3POL_SHIFT 3
  3595. /* SYNCONF Bit Fields */
  3596. #define FTM_SYNCONF_HWTRIGMODE_MASK 0x1u
  3597. #define FTM_SYNCONF_HWTRIGMODE_SHIFT 0
  3598. #define FTM_SYNCONF_CNTINC_MASK 0x4u
  3599. #define FTM_SYNCONF_CNTINC_SHIFT 2
  3600. #define FTM_SYNCONF_INVC_MASK 0x10u
  3601. #define FTM_SYNCONF_INVC_SHIFT 4
  3602. #define FTM_SYNCONF_SWOC_MASK 0x20u
  3603. #define FTM_SYNCONF_SWOC_SHIFT 5
  3604. #define FTM_SYNCONF_SYNCMODE_MASK 0x80u
  3605. #define FTM_SYNCONF_SYNCMODE_SHIFT 7
  3606. #define FTM_SYNCONF_SWRSTCNT_MASK 0x100u
  3607. #define FTM_SYNCONF_SWRSTCNT_SHIFT 8
  3608. #define FTM_SYNCONF_SWWRBUF_MASK 0x200u
  3609. #define FTM_SYNCONF_SWWRBUF_SHIFT 9
  3610. #define FTM_SYNCONF_SWOM_MASK 0x400u
  3611. #define FTM_SYNCONF_SWOM_SHIFT 10
  3612. #define FTM_SYNCONF_SWINVC_MASK 0x800u
  3613. #define FTM_SYNCONF_SWINVC_SHIFT 11
  3614. #define FTM_SYNCONF_SWSOC_MASK 0x1000u
  3615. #define FTM_SYNCONF_SWSOC_SHIFT 12
  3616. #define FTM_SYNCONF_HWRSTCNT_MASK 0x10000u
  3617. #define FTM_SYNCONF_HWRSTCNT_SHIFT 16
  3618. #define FTM_SYNCONF_HWWRBUF_MASK 0x20000u
  3619. #define FTM_SYNCONF_HWWRBUF_SHIFT 17
  3620. #define FTM_SYNCONF_HWOM_MASK 0x40000u
  3621. #define FTM_SYNCONF_HWOM_SHIFT 18
  3622. #define FTM_SYNCONF_HWINVC_MASK 0x80000u
  3623. #define FTM_SYNCONF_HWINVC_SHIFT 19
  3624. #define FTM_SYNCONF_HWSOC_MASK 0x100000u
  3625. #define FTM_SYNCONF_HWSOC_SHIFT 20
  3626. /* INVCTRL Bit Fields */
  3627. #define FTM_INVCTRL_INV0EN_MASK 0x1u
  3628. #define FTM_INVCTRL_INV0EN_SHIFT 0
  3629. #define FTM_INVCTRL_INV1EN_MASK 0x2u
  3630. #define FTM_INVCTRL_INV1EN_SHIFT 1
  3631. #define FTM_INVCTRL_INV2EN_MASK 0x4u
  3632. #define FTM_INVCTRL_INV2EN_SHIFT 2
  3633. #define FTM_INVCTRL_INV3EN_MASK 0x8u
  3634. #define FTM_INVCTRL_INV3EN_SHIFT 3
  3635. /* SWOCTRL Bit Fields */
  3636. #define FTM_SWOCTRL_CH0OC_MASK 0x1u
  3637. #define FTM_SWOCTRL_CH0OC_SHIFT 0
  3638. #define FTM_SWOCTRL_CH1OC_MASK 0x2u
  3639. #define FTM_SWOCTRL_CH1OC_SHIFT 1
  3640. #define FTM_SWOCTRL_CH2OC_MASK 0x4u
  3641. #define FTM_SWOCTRL_CH2OC_SHIFT 2
  3642. #define FTM_SWOCTRL_CH3OC_MASK 0x8u
  3643. #define FTM_SWOCTRL_CH3OC_SHIFT 3
  3644. #define FTM_SWOCTRL_CH4OC_MASK 0x10u
  3645. #define FTM_SWOCTRL_CH4OC_SHIFT 4
  3646. #define FTM_SWOCTRL_CH5OC_MASK 0x20u
  3647. #define FTM_SWOCTRL_CH5OC_SHIFT 5
  3648. #define FTM_SWOCTRL_CH6OC_MASK 0x40u
  3649. #define FTM_SWOCTRL_CH6OC_SHIFT 6
  3650. #define FTM_SWOCTRL_CH7OC_MASK 0x80u
  3651. #define FTM_SWOCTRL_CH7OC_SHIFT 7
  3652. #define FTM_SWOCTRL_CH0OCV_MASK 0x100u
  3653. #define FTM_SWOCTRL_CH0OCV_SHIFT 8
  3654. #define FTM_SWOCTRL_CH1OCV_MASK 0x200u
  3655. #define FTM_SWOCTRL_CH1OCV_SHIFT 9
  3656. #define FTM_SWOCTRL_CH2OCV_MASK 0x400u
  3657. #define FTM_SWOCTRL_CH2OCV_SHIFT 10
  3658. #define FTM_SWOCTRL_CH3OCV_MASK 0x800u
  3659. #define FTM_SWOCTRL_CH3OCV_SHIFT 11
  3660. #define FTM_SWOCTRL_CH4OCV_MASK 0x1000u
  3661. #define FTM_SWOCTRL_CH4OCV_SHIFT 12
  3662. #define FTM_SWOCTRL_CH5OCV_MASK 0x2000u
  3663. #define FTM_SWOCTRL_CH5OCV_SHIFT 13
  3664. #define FTM_SWOCTRL_CH6OCV_MASK 0x4000u
  3665. #define FTM_SWOCTRL_CH6OCV_SHIFT 14
  3666. #define FTM_SWOCTRL_CH7OCV_MASK 0x8000u
  3667. #define FTM_SWOCTRL_CH7OCV_SHIFT 15
  3668. /* PWMLOAD Bit Fields */
  3669. #define FTM_PWMLOAD_CH0SEL_MASK 0x1u
  3670. #define FTM_PWMLOAD_CH0SEL_SHIFT 0
  3671. #define FTM_PWMLOAD_CH1SEL_MASK 0x2u
  3672. #define FTM_PWMLOAD_CH1SEL_SHIFT 1
  3673. #define FTM_PWMLOAD_CH2SEL_MASK 0x4u
  3674. #define FTM_PWMLOAD_CH2SEL_SHIFT 2
  3675. #define FTM_PWMLOAD_CH3SEL_MASK 0x8u
  3676. #define FTM_PWMLOAD_CH3SEL_SHIFT 3
  3677. #define FTM_PWMLOAD_CH4SEL_MASK 0x10u
  3678. #define FTM_PWMLOAD_CH4SEL_SHIFT 4
  3679. #define FTM_PWMLOAD_CH5SEL_MASK 0x20u
  3680. #define FTM_PWMLOAD_CH5SEL_SHIFT 5
  3681. #define FTM_PWMLOAD_CH6SEL_MASK 0x40u
  3682. #define FTM_PWMLOAD_CH6SEL_SHIFT 6
  3683. #define FTM_PWMLOAD_CH7SEL_MASK 0x80u
  3684. #define FTM_PWMLOAD_CH7SEL_SHIFT 7
  3685. #define FTM_PWMLOAD_LDOK_MASK 0x200u
  3686. #define FTM_PWMLOAD_LDOK_SHIFT 9
  3687. /*! \} */ /* end of group FTM_Register_Masks */
  3688. /* FTM - Peripheral instance base addresses */
  3689. /*! Peripheral FTM0 base address */
  3690. #define FTM0_BASE (0x40038000u)
  3691. /*! Peripheral FTM0 base pointer */
  3692. #define FTM0 ((FTM_Type *)FTM0_BASE)
  3693. /*! Peripheral FTM1 base address */
  3694. #define FTM1_BASE (0x40039000u)
  3695. /*! Peripheral FTM1 base pointer */
  3696. #define FTM1 ((FTM_Type *)FTM1_BASE)
  3697. /*! Peripheral FTM2 base address */
  3698. #define FTM2_BASE (0x400B8000u)
  3699. /*! Peripheral FTM2 base pointer */
  3700. #define FTM2 ((FTM_Type *)FTM2_BASE)
  3701. /*! \} */ /* end of group FTM_Peripheral_Access_Layer */
  3702. /* ----------------------------------------------------------------------------
  3703. -- I2C Peripheral Access Layer
  3704. ---------------------------------------------------------------------------- */
  3705. /*! \addtogroup I2C_Peripheral_Access_Layer I2C Peripheral Access Layer */
  3706. /*! \{ */
  3707. /*! I2C - Register Layout Typedef */
  3708. typedef struct {
  3709. __IO uint8_t A1; /*!< I2C Address Register 1, offset: 0x0 */
  3710. __IO uint8_t F; /*!< I2C Frequency Divider register, offset: 0x1 */
  3711. __IO uint8_t C1; /*!< I2C Control Register 1, offset: 0x2 */
  3712. __IO uint8_t S; /*!< I2C Status Register, offset: 0x3 */
  3713. __IO uint8_t D; /*!< I2C Data I/O register, offset: 0x4 */
  3714. __IO uint8_t C2; /*!< I2C Control Register 2, offset: 0x5 */
  3715. __IO uint8_t FLT; /*!< I2C Programmable Input Glitch Filter register, offset: 0x6 */
  3716. __IO uint8_t RA; /*!< I2C Range Address register, offset: 0x7 */
  3717. __IO uint8_t SMB; /*!< I2C SMBus Control and Status register, offset: 0x8 */
  3718. __IO uint8_t A2; /*!< I2C Address Register 2, offset: 0x9 */
  3719. __IO uint8_t SLTH; /*!< I2C SCL Low Timeout Register High, offset: 0xA */
  3720. __IO uint8_t SLTL; /*!< I2C SCL Low Timeout Register Low, offset: 0xB */
  3721. } I2C_Type;
  3722. /* ----------------------------------------------------------------------------
  3723. -- I2C Register Masks
  3724. ---------------------------------------------------------------------------- */
  3725. /*! \addtogroup I2C_Register_Masks I2C Register Masks */
  3726. /*! \{ */
  3727. /* A1 Bit Fields */
  3728. #define I2C_A1_AD_MASK 0xFEu
  3729. #define I2C_A1_AD_SHIFT 1
  3730. #define I2C_A1_AD(x) (((uint8_t)(((uint8_t)(x))<<I2C_A1_AD_SHIFT))&I2C_A1_AD_MASK)
  3731. /* F Bit Fields */
  3732. #define I2C_F_ICR_MASK 0x3Fu
  3733. #define I2C_F_ICR_SHIFT 0
  3734. #define I2C_F_ICR(x) (((uint8_t)(((uint8_t)(x))<<I2C_F_ICR_SHIFT))&I2C_F_ICR_MASK)
  3735. #define I2C_F_MULT_MASK 0xC0u
  3736. #define I2C_F_MULT_SHIFT 6
  3737. #define I2C_F_MULT(x) (((uint8_t)(((uint8_t)(x))<<I2C_F_MULT_SHIFT))&I2C_F_MULT_MASK)
  3738. /* C1 Bit Fields */
  3739. #define I2C_C1_DMAEN_MASK 0x1u
  3740. #define I2C_C1_DMAEN_SHIFT 0
  3741. #define I2C_C1_WUEN_MASK 0x2u
  3742. #define I2C_C1_WUEN_SHIFT 1
  3743. #define I2C_C1_RSTA_MASK 0x4u
  3744. #define I2C_C1_RSTA_SHIFT 2
  3745. #define I2C_C1_TXAK_MASK 0x8u
  3746. #define I2C_C1_TXAK_SHIFT 3
  3747. #define I2C_C1_TX_MASK 0x10u
  3748. #define I2C_C1_TX_SHIFT 4
  3749. #define I2C_C1_MST_MASK 0x20u
  3750. #define I2C_C1_MST_SHIFT 5
  3751. #define I2C_C1_IICIE_MASK 0x40u
  3752. #define I2C_C1_IICIE_SHIFT 6
  3753. #define I2C_C1_IICEN_MASK 0x80u
  3754. #define I2C_C1_IICEN_SHIFT 7
  3755. /* S Bit Fields */
  3756. #define I2C_S_RXAK_MASK 0x1u
  3757. #define I2C_S_RXAK_SHIFT 0
  3758. #define I2C_S_IICIF_MASK 0x2u
  3759. #define I2C_S_IICIF_SHIFT 1
  3760. #define I2C_S_SRW_MASK 0x4u
  3761. #define I2C_S_SRW_SHIFT 2
  3762. #define I2C_S_RAM_MASK 0x8u
  3763. #define I2C_S_RAM_SHIFT 3
  3764. #define I2C_S_ARBL_MASK 0x10u
  3765. #define I2C_S_ARBL_SHIFT 4
  3766. #define I2C_S_BUSY_MASK 0x20u
  3767. #define I2C_S_BUSY_SHIFT 5
  3768. #define I2C_S_IAAS_MASK 0x40u
  3769. #define I2C_S_IAAS_SHIFT 6
  3770. #define I2C_S_TCF_MASK 0x80u
  3771. #define I2C_S_TCF_SHIFT 7
  3772. /* D Bit Fields */
  3773. #define I2C_D_DATA_MASK 0xFFu
  3774. #define I2C_D_DATA_SHIFT 0
  3775. #define I2C_D_DATA(x) (((uint8_t)(((uint8_t)(x))<<I2C_D_DATA_SHIFT))&I2C_D_DATA_MASK)
  3776. /* C2 Bit Fields */
  3777. #define I2C_C2_AD_MASK 0x7u
  3778. #define I2C_C2_AD_SHIFT 0
  3779. #define I2C_C2_AD(x) (((uint8_t)(((uint8_t)(x))<<I2C_C2_AD_SHIFT))&I2C_C2_AD_MASK)
  3780. #define I2C_C2_RMEN_MASK 0x8u
  3781. #define I2C_C2_RMEN_SHIFT 3
  3782. #define I2C_C2_SBRC_MASK 0x10u
  3783. #define I2C_C2_SBRC_SHIFT 4
  3784. #define I2C_C2_HDRS_MASK 0x20u
  3785. #define I2C_C2_HDRS_SHIFT 5
  3786. #define I2C_C2_ADEXT_MASK 0x40u
  3787. #define I2C_C2_ADEXT_SHIFT 6
  3788. #define I2C_C2_GCAEN_MASK 0x80u
  3789. #define I2C_C2_GCAEN_SHIFT 7
  3790. /* FLT Bit Fields */
  3791. #define I2C_FLT_FLT_MASK 0x1Fu
  3792. #define I2C_FLT_FLT_SHIFT 0
  3793. #define I2C_FLT_FLT(x) (((uint8_t)(((uint8_t)(x))<<I2C_FLT_FLT_SHIFT))&I2C_FLT_FLT_MASK)
  3794. /* RA Bit Fields */
  3795. #define I2C_RA_RAD_MASK 0xFEu
  3796. #define I2C_RA_RAD_SHIFT 1
  3797. #define I2C_RA_RAD(x) (((uint8_t)(((uint8_t)(x))<<I2C_RA_RAD_SHIFT))&I2C_RA_RAD_MASK)
  3798. /* SMB Bit Fields */
  3799. #define I2C_SMB_SHTF2IE_MASK 0x1u
  3800. #define I2C_SMB_SHTF2IE_SHIFT 0
  3801. #define I2C_SMB_SHTF2_MASK 0x2u
  3802. #define I2C_SMB_SHTF2_SHIFT 1
  3803. #define I2C_SMB_SHTF1_MASK 0x4u
  3804. #define I2C_SMB_SHTF1_SHIFT 2
  3805. #define I2C_SMB_SLTF_MASK 0x8u
  3806. #define I2C_SMB_SLTF_SHIFT 3
  3807. #define I2C_SMB_TCKSEL_MASK 0x10u
  3808. #define I2C_SMB_TCKSEL_SHIFT 4
  3809. #define I2C_SMB_SIICAEN_MASK 0x20u
  3810. #define I2C_SMB_SIICAEN_SHIFT 5
  3811. #define I2C_SMB_ALERTEN_MASK 0x40u
  3812. #define I2C_SMB_ALERTEN_SHIFT 6
  3813. #define I2C_SMB_FACK_MASK 0x80u
  3814. #define I2C_SMB_FACK_SHIFT 7
  3815. /* A2 Bit Fields */
  3816. #define I2C_A2_SAD_MASK 0xFEu
  3817. #define I2C_A2_SAD_SHIFT 1
  3818. #define I2C_A2_SAD(x) (((uint8_t)(((uint8_t)(x))<<I2C_A2_SAD_SHIFT))&I2C_A2_SAD_MASK)
  3819. /* SLTH Bit Fields */
  3820. #define I2C_SLTH_SSLT_MASK 0xFFu
  3821. #define I2C_SLTH_SSLT_SHIFT 0
  3822. #define I2C_SLTH_SSLT(x) (((uint8_t)(((uint8_t)(x))<<I2C_SLTH_SSLT_SHIFT))&I2C_SLTH_SSLT_MASK)
  3823. /* SLTL Bit Fields */
  3824. #define I2C_SLTL_SSLT_MASK 0xFFu
  3825. #define I2C_SLTL_SSLT_SHIFT 0
  3826. #define I2C_SLTL_SSLT(x) (((uint8_t)(((uint8_t)(x))<<I2C_SLTL_SSLT_SHIFT))&I2C_SLTL_SSLT_MASK)
  3827. /*! \} */ /* end of group I2C_Register_Masks */
  3828. /* I2C - Peripheral instance base addresses */
  3829. /*! Peripheral I2C0 base address */
  3830. #define I2C0_BASE (0x40066000u)
  3831. /*! Peripheral I2C0 base pointer */
  3832. #define I2C0 ((I2C_Type *)I2C0_BASE)
  3833. /*! Peripheral I2C1 base address */
  3834. #define I2C1_BASE (0x40067000u)
  3835. /*! Peripheral I2C1 base pointer */
  3836. #define I2C1 ((I2C_Type *)I2C1_BASE)
  3837. /*! \} */ /* end of group I2C_Peripheral_Access_Layer */
  3838. /* ----------------------------------------------------------------------------
  3839. -- I2S Peripheral Access Layer
  3840. ---------------------------------------------------------------------------- */
  3841. /*! \addtogroup I2S_Peripheral_Access_Layer I2S Peripheral Access Layer */
  3842. /*! \{ */
  3843. /*! I2S - Register Layout Typedef */
  3844. typedef struct {
  3845. __IO uint32_t TX0; /*!< I2S Transmit Data Registers 0, offset: 0x0 */
  3846. __IO uint32_t TX1; /*!< I2S Transmit Data Registers 1, offset: 0x4 */
  3847. __IO uint32_t RX0; /*!< I2S Receive Data Registers 0, offset: 0x8 */
  3848. __IO uint32_t RX1; /*!< I2S Receive Data Registers 1, offset: 0xC */
  3849. __IO uint32_t CR; /*!< I2S Control Register, offset: 0x10 */
  3850. __IO uint32_t ISR; /*!< I2S Interrupt Status Register, offset: 0x14 */
  3851. __IO uint32_t IER; /*!< I2S Interrupt Enable Register, offset: 0x18 */
  3852. __IO uint32_t TCR; /*!< I2S Transmit Configuration Register, offset: 0x1C */
  3853. __IO uint32_t RCR; /*!< I2S Receive Configuration Register, offset: 0x20 */
  3854. __IO uint32_t TCCR; /*!< I2S Transmit Clock Control Registers, offset: 0x24 */
  3855. __IO uint32_t RCCR; /*!< I2S Receive Clock Control Registers, offset: 0x28 */
  3856. __IO uint32_t FCSR; /*!< I2S FIFO Control/Status Register, offset: 0x2C */
  3857. uint8_t RESERVED_0[8];
  3858. __IO uint32_t ACNT; /*!< I2S AC97 Control Register, offset: 0x38 */
  3859. __IO uint32_t ACADD; /*!< I2S AC97 Command Address Register, offset: 0x3C */
  3860. __IO uint32_t ACDAT; /*!< I2S AC97 Command Data Register, offset: 0x40 */
  3861. __IO uint32_t ATAG; /*!< I2S AC97 Tag Register, offset: 0x44 */
  3862. __IO uint32_t TMSK; /*!< I2S Transmit Time Slot Mask Register, offset: 0x48 */
  3863. __IO uint32_t RMSK; /*!< I2S Receive Time Slot Mask Register, offset: 0x4C */
  3864. __I uint32_t ACCST; /*!< I2S AC97 Channel Status Register, offset: 0x50 */
  3865. __IO uint32_t ACCEN; /*!< I2S AC97 Channel Enable Register, offset: 0x54 */
  3866. __IO uint32_t ACCDIS; /*!< I2S AC97 Channel Disable Register, offset: 0x58 */
  3867. } I2S_Type;
  3868. /* ----------------------------------------------------------------------------
  3869. -- I2S Register Masks
  3870. ---------------------------------------------------------------------------- */
  3871. /*! \addtogroup I2S_Register_Masks I2S Register Masks */
  3872. /*! \{ */
  3873. /* TX0 Bit Fields */
  3874. #define I2S_TX0_TX0_MASK 0xFFFFFFFFu
  3875. #define I2S_TX0_TX0_SHIFT 0
  3876. #define I2S_TX0_TX0(x) (((uint32_t)(((uint32_t)(x))<<I2S_TX0_TX0_SHIFT))&I2S_TX0_TX0_MASK)
  3877. /* TX1 Bit Fields */
  3878. #define I2S_TX1_TX1_MASK 0xFFFFFFFFu
  3879. #define I2S_TX1_TX1_SHIFT 0
  3880. #define I2S_TX1_TX1(x) (((uint32_t)(((uint32_t)(x))<<I2S_TX1_TX1_SHIFT))&I2S_TX1_TX1_MASK)
  3881. /* RX0 Bit Fields */
  3882. #define I2S_RX0_RX0_MASK 0xFFFFFFFFu
  3883. #define I2S_RX0_RX0_SHIFT 0
  3884. #define I2S_RX0_RX0(x) (((uint32_t)(((uint32_t)(x))<<I2S_RX0_RX0_SHIFT))&I2S_RX0_RX0_MASK)
  3885. /* RX1 Bit Fields */
  3886. #define I2S_RX1_RX1_MASK 0xFFFFFFFFu
  3887. #define I2S_RX1_RX1_SHIFT 0
  3888. #define I2S_RX1_RX1(x) (((uint32_t)(((uint32_t)(x))<<I2S_RX1_RX1_SHIFT))&I2S_RX1_RX1_MASK)
  3889. /* CR Bit Fields */
  3890. #define I2S_CR_SSIEN_MASK 0x1u
  3891. #define I2S_CR_SSIEN_SHIFT 0
  3892. #define I2S_CR_TE_MASK 0x2u
  3893. #define I2S_CR_TE_SHIFT 1
  3894. #define I2S_CR_RE_MASK 0x4u
  3895. #define I2S_CR_RE_SHIFT 2
  3896. #define I2S_CR_NET_MASK 0x8u
  3897. #define I2S_CR_NET_SHIFT 3
  3898. #define I2S_CR_SYN_MASK 0x10u
  3899. #define I2S_CR_SYN_SHIFT 4
  3900. #define I2S_CR_I2SMODE_MASK 0x60u
  3901. #define I2S_CR_I2SMODE_SHIFT 5
  3902. #define I2S_CR_I2SMODE(x) (((uint32_t)(((uint32_t)(x))<<I2S_CR_I2SMODE_SHIFT))&I2S_CR_I2SMODE_MASK)
  3903. #define I2S_CR_SYSCLKEN_MASK 0x80u
  3904. #define I2S_CR_SYSCLKEN_SHIFT 7
  3905. #define I2S_CR_TCHEN_MASK 0x100u
  3906. #define I2S_CR_TCHEN_SHIFT 8
  3907. #define I2S_CR_CLKIST_MASK 0x200u
  3908. #define I2S_CR_CLKIST_SHIFT 9
  3909. #define I2S_CR_TFRCLKDIS_MASK 0x400u
  3910. #define I2S_CR_TFRCLKDIS_SHIFT 10
  3911. #define I2S_CR_RFRCLKDIS_MASK 0x800u
  3912. #define I2S_CR_RFRCLKDIS_SHIFT 11
  3913. #define I2S_CR_SYNCTXFS_MASK 0x1000u
  3914. #define I2S_CR_SYNCTXFS_SHIFT 12
  3915. /* ISR Bit Fields */
  3916. #define I2S_ISR_TFE0_MASK 0x1u
  3917. #define I2S_ISR_TFE0_SHIFT 0
  3918. #define I2S_ISR_TFE1_MASK 0x2u
  3919. #define I2S_ISR_TFE1_SHIFT 1
  3920. #define I2S_ISR_RFF0_MASK 0x4u
  3921. #define I2S_ISR_RFF0_SHIFT 2
  3922. #define I2S_ISR_RFF1_MASK 0x8u
  3923. #define I2S_ISR_RFF1_SHIFT 3
  3924. #define I2S_ISR_RLS_MASK 0x10u
  3925. #define I2S_ISR_RLS_SHIFT 4
  3926. #define I2S_ISR_TLS_MASK 0x20u
  3927. #define I2S_ISR_TLS_SHIFT 5
  3928. #define I2S_ISR_RFS_MASK 0x40u
  3929. #define I2S_ISR_RFS_SHIFT 6
  3930. #define I2S_ISR_TFS_MASK 0x80u
  3931. #define I2S_ISR_TFS_SHIFT 7
  3932. #define I2S_ISR_TUE0_MASK 0x100u
  3933. #define I2S_ISR_TUE0_SHIFT 8
  3934. #define I2S_ISR_TUE1_MASK 0x200u
  3935. #define I2S_ISR_TUE1_SHIFT 9
  3936. #define I2S_ISR_ROE0_MASK 0x400u
  3937. #define I2S_ISR_ROE0_SHIFT 10
  3938. #define I2S_ISR_ROE1_MASK 0x800u
  3939. #define I2S_ISR_ROE1_SHIFT 11
  3940. #define I2S_ISR_TDE0_MASK 0x1000u
  3941. #define I2S_ISR_TDE0_SHIFT 12
  3942. #define I2S_ISR_TDE1_MASK 0x2000u
  3943. #define I2S_ISR_TDE1_SHIFT 13
  3944. #define I2S_ISR_RDR0_MASK 0x4000u
  3945. #define I2S_ISR_RDR0_SHIFT 14
  3946. #define I2S_ISR_RDR1_MASK 0x8000u
  3947. #define I2S_ISR_RDR1_SHIFT 15
  3948. #define I2S_ISR_RXT_MASK 0x10000u
  3949. #define I2S_ISR_RXT_SHIFT 16
  3950. #define I2S_ISR_CMDDU_MASK 0x20000u
  3951. #define I2S_ISR_CMDDU_SHIFT 17
  3952. #define I2S_ISR_CMDAU_MASK 0x40000u
  3953. #define I2S_ISR_CMDAU_SHIFT 18
  3954. #define I2S_ISR_TRFC_MASK 0x800000u
  3955. #define I2S_ISR_TRFC_SHIFT 23
  3956. #define I2S_ISR_RFRC_MASK 0x1000000u
  3957. #define I2S_ISR_RFRC_SHIFT 24
  3958. /* IER Bit Fields */
  3959. #define I2S_IER_TFE0EN_MASK 0x1u
  3960. #define I2S_IER_TFE0EN_SHIFT 0
  3961. #define I2S_IER_TFE1EN_MASK 0x2u
  3962. #define I2S_IER_TFE1EN_SHIFT 1
  3963. #define I2S_IER_RFF0EN_MASK 0x4u
  3964. #define I2S_IER_RFF0EN_SHIFT 2
  3965. #define I2S_IER_RFF1EN_MASK 0x8u
  3966. #define I2S_IER_RFF1EN_SHIFT 3
  3967. #define I2S_IER_RLSEN_MASK 0x10u
  3968. #define I2S_IER_RLSEN_SHIFT 4
  3969. #define I2S_IER_TLSEN_MASK 0x20u
  3970. #define I2S_IER_TLSEN_SHIFT 5
  3971. #define I2S_IER_RFSEN_MASK 0x40u
  3972. #define I2S_IER_RFSEN_SHIFT 6
  3973. #define I2S_IER_TFSEN_MASK 0x80u
  3974. #define I2S_IER_TFSEN_SHIFT 7
  3975. #define I2S_IER_TUE0EN_MASK 0x100u
  3976. #define I2S_IER_TUE0EN_SHIFT 8
  3977. #define I2S_IER_TUE1EN_MASK 0x200u
  3978. #define I2S_IER_TUE1EN_SHIFT 9
  3979. #define I2S_IER_ROE0EN_MASK 0x400u
  3980. #define I2S_IER_ROE0EN_SHIFT 10
  3981. #define I2S_IER_ROE1EN_MASK 0x800u
  3982. #define I2S_IER_ROE1EN_SHIFT 11
  3983. #define I2S_IER_TDE0EN_MASK 0x1000u
  3984. #define I2S_IER_TDE0EN_SHIFT 12
  3985. #define I2S_IER_TDE1EN_MASK 0x2000u
  3986. #define I2S_IER_TDE1EN_SHIFT 13
  3987. #define I2S_IER_RDR0EN_MASK 0x4000u
  3988. #define I2S_IER_RDR0EN_SHIFT 14
  3989. #define I2S_IER_RDR1EN_MASK 0x8000u
  3990. #define I2S_IER_RDR1EN_SHIFT 15
  3991. #define I2S_IER_RXTEN_MASK 0x10000u
  3992. #define I2S_IER_RXTEN_SHIFT 16
  3993. #define I2S_IER_CMDDUEN_MASK 0x20000u
  3994. #define I2S_IER_CMDDUEN_SHIFT 17
  3995. #define I2S_IER_CMDAUEN_MASK 0x40000u
  3996. #define I2S_IER_CMDAUEN_SHIFT 18
  3997. #define I2S_IER_TIE_MASK 0x80000u
  3998. #define I2S_IER_TIE_SHIFT 19
  3999. #define I2S_IER_TDMAE_MASK 0x100000u
  4000. #define I2S_IER_TDMAE_SHIFT 20
  4001. #define I2S_IER_RIE_MASK 0x200000u
  4002. #define I2S_IER_RIE_SHIFT 21
  4003. #define I2S_IER_RDMAE_MASK 0x400000u
  4004. #define I2S_IER_RDMAE_SHIFT 22
  4005. #define I2S_IER_TFRC_EN_MASK 0x800000u
  4006. #define I2S_IER_TFRC_EN_SHIFT 23
  4007. #define I2S_IER_RFRC_EN_MASK 0x1000000u
  4008. #define I2S_IER_RFRC_EN_SHIFT 24
  4009. /* TCR Bit Fields */
  4010. #define I2S_TCR_TEFS_MASK 0x1u
  4011. #define I2S_TCR_TEFS_SHIFT 0
  4012. #define I2S_TCR_TFSL_MASK 0x2u
  4013. #define I2S_TCR_TFSL_SHIFT 1
  4014. #define I2S_TCR_TFSI_MASK 0x4u
  4015. #define I2S_TCR_TFSI_SHIFT 2
  4016. #define I2S_TCR_TSCKP_MASK 0x8u
  4017. #define I2S_TCR_TSCKP_SHIFT 3
  4018. #define I2S_TCR_TSHFD_MASK 0x10u
  4019. #define I2S_TCR_TSHFD_SHIFT 4
  4020. #define I2S_TCR_TXDIR_MASK 0x20u
  4021. #define I2S_TCR_TXDIR_SHIFT 5
  4022. #define I2S_TCR_TFDIR_MASK 0x40u
  4023. #define I2S_TCR_TFDIR_SHIFT 6
  4024. #define I2S_TCR_TFEN0_MASK 0x80u
  4025. #define I2S_TCR_TFEN0_SHIFT 7
  4026. #define I2S_TCR_TFEN1_MASK 0x100u
  4027. #define I2S_TCR_TFEN1_SHIFT 8
  4028. #define I2S_TCR_TXBIT0_MASK 0x200u
  4029. #define I2S_TCR_TXBIT0_SHIFT 9
  4030. /* RCR Bit Fields */
  4031. #define I2S_RCR_REFS_MASK 0x1u
  4032. #define I2S_RCR_REFS_SHIFT 0
  4033. #define I2S_RCR_RFSL_MASK 0x2u
  4034. #define I2S_RCR_RFSL_SHIFT 1
  4035. #define I2S_RCR_RFSI_MASK 0x4u
  4036. #define I2S_RCR_RFSI_SHIFT 2
  4037. #define I2S_RCR_RSCKP_MASK 0x8u
  4038. #define I2S_RCR_RSCKP_SHIFT 3
  4039. #define I2S_RCR_RSHFD_MASK 0x10u
  4040. #define I2S_RCR_RSHFD_SHIFT 4
  4041. #define I2S_RCR_RXDIR_MASK 0x20u
  4042. #define I2S_RCR_RXDIR_SHIFT 5
  4043. #define I2S_RCR_RFDIR_MASK 0x40u
  4044. #define I2S_RCR_RFDIR_SHIFT 6
  4045. #define I2S_RCR_RFEN0_MASK 0x80u
  4046. #define I2S_RCR_RFEN0_SHIFT 7
  4047. #define I2S_RCR_RFEN1_MASK 0x100u
  4048. #define I2S_RCR_RFEN1_SHIFT 8
  4049. #define I2S_RCR_RXBIT0_MASK 0x200u
  4050. #define I2S_RCR_RXBIT0_SHIFT 9
  4051. #define I2S_RCR_RXEXT_MASK 0x400u
  4052. #define I2S_RCR_RXEXT_SHIFT 10
  4053. /* TCCR Bit Fields */
  4054. #define I2S_TCCR_PM_MASK 0xFFu
  4055. #define I2S_TCCR_PM_SHIFT 0
  4056. #define I2S_TCCR_PM(x) (((uint32_t)(((uint32_t)(x))<<I2S_TCCR_PM_SHIFT))&I2S_TCCR_PM_MASK)
  4057. #define I2S_TCCR_DC_MASK 0x1F00u
  4058. #define I2S_TCCR_DC_SHIFT 8
  4059. #define I2S_TCCR_DC(x) (((uint32_t)(((uint32_t)(x))<<I2S_TCCR_DC_SHIFT))&I2S_TCCR_DC_MASK)
  4060. #define I2S_TCCR_WL_MASK 0x1E000u
  4061. #define I2S_TCCR_WL_SHIFT 13
  4062. #define I2S_TCCR_WL(x) (((uint32_t)(((uint32_t)(x))<<I2S_TCCR_WL_SHIFT))&I2S_TCCR_WL_MASK)
  4063. #define I2S_TCCR_PSR_MASK 0x20000u
  4064. #define I2S_TCCR_PSR_SHIFT 17
  4065. #define I2S_TCCR_DIV2_MASK 0x40000u
  4066. #define I2S_TCCR_DIV2_SHIFT 18
  4067. /* RCCR Bit Fields */
  4068. #define I2S_RCCR_PM_MASK 0xFFu
  4069. #define I2S_RCCR_PM_SHIFT 0
  4070. #define I2S_RCCR_PM(x) (((uint32_t)(((uint32_t)(x))<<I2S_RCCR_PM_SHIFT))&I2S_RCCR_PM_MASK)
  4071. #define I2S_RCCR_DC_MASK 0x1F00u
  4072. #define I2S_RCCR_DC_SHIFT 8
  4073. #define I2S_RCCR_DC(x) (((uint32_t)(((uint32_t)(x))<<I2S_RCCR_DC_SHIFT))&I2S_RCCR_DC_MASK)
  4074. #define I2S_RCCR_WL_MASK 0x1E000u
  4075. #define I2S_RCCR_WL_SHIFT 13
  4076. #define I2S_RCCR_WL(x) (((uint32_t)(((uint32_t)(x))<<I2S_RCCR_WL_SHIFT))&I2S_RCCR_WL_MASK)
  4077. #define I2S_RCCR_PSR_MASK 0x20000u
  4078. #define I2S_RCCR_PSR_SHIFT 17
  4079. #define I2S_RCCR_DIV2_MASK 0x40000u
  4080. #define I2S_RCCR_DIV2_SHIFT 18
  4081. /* FCSR Bit Fields */
  4082. #define I2S_FCSR_TFWM0_MASK 0xFu
  4083. #define I2S_FCSR_TFWM0_SHIFT 0
  4084. #define I2S_FCSR_TFWM0(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_TFWM0_SHIFT))&I2S_FCSR_TFWM0_MASK)
  4085. #define I2S_FCSR_RFWM0_MASK 0xF0u
  4086. #define I2S_FCSR_RFWM0_SHIFT 4
  4087. #define I2S_FCSR_RFWM0(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_RFWM0_SHIFT))&I2S_FCSR_RFWM0_MASK)
  4088. #define I2S_FCSR_TFCNT0_MASK 0xF00u
  4089. #define I2S_FCSR_TFCNT0_SHIFT 8
  4090. #define I2S_FCSR_TFCNT0(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_TFCNT0_SHIFT))&I2S_FCSR_TFCNT0_MASK)
  4091. #define I2S_FCSR_RFCNT0_MASK 0xF000u
  4092. #define I2S_FCSR_RFCNT0_SHIFT 12
  4093. #define I2S_FCSR_RFCNT0(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_RFCNT0_SHIFT))&I2S_FCSR_RFCNT0_MASK)
  4094. #define I2S_FCSR_TFWM1_MASK 0xF0000u
  4095. #define I2S_FCSR_TFWM1_SHIFT 16
  4096. #define I2S_FCSR_TFWM1(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_TFWM1_SHIFT))&I2S_FCSR_TFWM1_MASK)
  4097. #define I2S_FCSR_RFWM1_MASK 0xF00000u
  4098. #define I2S_FCSR_RFWM1_SHIFT 20
  4099. #define I2S_FCSR_RFWM1(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_RFWM1_SHIFT))&I2S_FCSR_RFWM1_MASK)
  4100. #define I2S_FCSR_TFCNT1_MASK 0xF000000u
  4101. #define I2S_FCSR_TFCNT1_SHIFT 24
  4102. #define I2S_FCSR_TFCNT1(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_TFCNT1_SHIFT))&I2S_FCSR_TFCNT1_MASK)
  4103. #define I2S_FCSR_RFCNT1_MASK 0xF0000000u
  4104. #define I2S_FCSR_RFCNT1_SHIFT 28
  4105. #define I2S_FCSR_RFCNT1(x) (((uint32_t)(((uint32_t)(x))<<I2S_FCSR_RFCNT1_SHIFT))&I2S_FCSR_RFCNT1_MASK)
  4106. /* ACNT Bit Fields */
  4107. #define I2S_ACNT_AC97EN_MASK 0x1u
  4108. #define I2S_ACNT_AC97EN_SHIFT 0
  4109. #define I2S_ACNT_FV_MASK 0x2u
  4110. #define I2S_ACNT_FV_SHIFT 1
  4111. #define I2S_ACNT_TIF_MASK 0x4u
  4112. #define I2S_ACNT_TIF_SHIFT 2
  4113. #define I2S_ACNT_RD_MASK 0x8u
  4114. #define I2S_ACNT_RD_SHIFT 3
  4115. #define I2S_ACNT_WR_MASK 0x10u
  4116. #define I2S_ACNT_WR_SHIFT 4
  4117. #define I2S_ACNT_FRDIV_MASK 0x7E0u
  4118. #define I2S_ACNT_FRDIV_SHIFT 5
  4119. #define I2S_ACNT_FRDIV(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACNT_FRDIV_SHIFT))&I2S_ACNT_FRDIV_MASK)
  4120. /* ACADD Bit Fields */
  4121. #define I2S_ACADD_ACADD_MASK 0x7FFFFu
  4122. #define I2S_ACADD_ACADD_SHIFT 0
  4123. #define I2S_ACADD_ACADD(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACADD_ACADD_SHIFT))&I2S_ACADD_ACADD_MASK)
  4124. /* ACDAT Bit Fields */
  4125. #define I2S_ACDAT_ACDAT_MASK 0xFFFFFu
  4126. #define I2S_ACDAT_ACDAT_SHIFT 0
  4127. #define I2S_ACDAT_ACDAT(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACDAT_ACDAT_SHIFT))&I2S_ACDAT_ACDAT_MASK)
  4128. /* ATAG Bit Fields */
  4129. #define I2S_ATAG_ATAG_MASK 0xFFFFu
  4130. #define I2S_ATAG_ATAG_SHIFT 0
  4131. #define I2S_ATAG_ATAG(x) (((uint32_t)(((uint32_t)(x))<<I2S_ATAG_ATAG_SHIFT))&I2S_ATAG_ATAG_MASK)
  4132. /* TMSK Bit Fields */
  4133. #define I2S_TMSK_TMSK_MASK 0xFFFFFFFFu
  4134. #define I2S_TMSK_TMSK_SHIFT 0
  4135. #define I2S_TMSK_TMSK(x) (((uint32_t)(((uint32_t)(x))<<I2S_TMSK_TMSK_SHIFT))&I2S_TMSK_TMSK_MASK)
  4136. /* RMSK Bit Fields */
  4137. #define I2S_RMSK_RMSK_MASK 0xFFFFFFFFu
  4138. #define I2S_RMSK_RMSK_SHIFT 0
  4139. #define I2S_RMSK_RMSK(x) (((uint32_t)(((uint32_t)(x))<<I2S_RMSK_RMSK_SHIFT))&I2S_RMSK_RMSK_MASK)
  4140. /* ACCST Bit Fields */
  4141. #define I2S_ACCST_ACCST_MASK 0x3FFu
  4142. #define I2S_ACCST_ACCST_SHIFT 0
  4143. #define I2S_ACCST_ACCST(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACCST_ACCST_SHIFT))&I2S_ACCST_ACCST_MASK)
  4144. /* ACCEN Bit Fields */
  4145. #define I2S_ACCEN_ACCEN_MASK 0x3FFu
  4146. #define I2S_ACCEN_ACCEN_SHIFT 0
  4147. #define I2S_ACCEN_ACCEN(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACCEN_ACCEN_SHIFT))&I2S_ACCEN_ACCEN_MASK)
  4148. /* ACCDIS Bit Fields */
  4149. #define I2S_ACCDIS_ACCDIS_MASK 0x3FFu
  4150. #define I2S_ACCDIS_ACCDIS_SHIFT 0
  4151. #define I2S_ACCDIS_ACCDIS(x) (((uint32_t)(((uint32_t)(x))<<I2S_ACCDIS_ACCDIS_SHIFT))&I2S_ACCDIS_ACCDIS_MASK)
  4152. /*! \} */ /* end of group I2S_Register_Masks */
  4153. /* I2S - Peripheral instance base addresses */
  4154. /*! Peripheral I2S0 base address */
  4155. #define I2S0_BASE (0x4002F000u)
  4156. /*! Peripheral I2S0 base pointer */
  4157. #define I2S0 ((I2S_Type *)I2S0_BASE)
  4158. /*! \} */ /* end of group I2S_Peripheral_Access_Layer */
  4159. /* ----------------------------------------------------------------------------
  4160. -- LCD Peripheral Access Layer
  4161. ---------------------------------------------------------------------------- */
  4162. /*! \addtogroup LCD_Peripheral_Access_Layer LCD Peripheral Access Layer */
  4163. /*! \{ */
  4164. /*! LCD - Register Layout Typedef */
  4165. typedef struct {
  4166. __IO uint32_t GCR; /*!< LCD general control register, offset: 0x0 */
  4167. __IO uint32_t AR; /*!< LCD auxiliary register, offset: 0x4 */
  4168. __IO uint32_t FDCR; /*!< LCD fault detect control register, offset: 0x8 */
  4169. __IO uint32_t FDSR; /*!< LCD fault detect status register, offset: 0xC */
  4170. __IO uint32_t PEN[2]; /*!< LCD pin enable register, array offset: 0x10, array step: 0x4 */
  4171. __IO uint32_t BPEN[2]; /*!< LCD backplane enable register, array offset: 0x18, array step: 0x4 */
  4172. union { /* offset: 0x20 */
  4173. __IO uint32_t WF[16]; /*!< LCD waveform register, array offset: 0x20, array step: 0x4 */
  4174. __IO uint8_t WF8B[64]; /*!< LCD Waveform Register 0...LCD Waveform Register 63., array offset: 0x20, array step: 0x1 */
  4175. };
  4176. } LCD_Type;
  4177. /* ----------------------------------------------------------------------------
  4178. -- LCD Register Masks
  4179. ---------------------------------------------------------------------------- */
  4180. /*! \addtogroup LCD_Register_Masks LCD Register Masks */
  4181. /*! \{ */
  4182. /* GCR Bit Fields */
  4183. #define LCD_GCR_DUTY_MASK 0x7u
  4184. #define LCD_GCR_DUTY_SHIFT 0
  4185. #define LCD_GCR_DUTY(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_DUTY_SHIFT))&LCD_GCR_DUTY_MASK)
  4186. #define LCD_GCR_LCLK_MASK 0x38u
  4187. #define LCD_GCR_LCLK_SHIFT 3
  4188. #define LCD_GCR_LCLK(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_LCLK_SHIFT))&LCD_GCR_LCLK_MASK)
  4189. #define LCD_GCR_SOURCE_MASK 0x40u
  4190. #define LCD_GCR_SOURCE_SHIFT 6
  4191. #define LCD_GCR_LCDEN_MASK 0x80u
  4192. #define LCD_GCR_LCDEN_SHIFT 7
  4193. #define LCD_GCR_LCDSTP_MASK 0x100u
  4194. #define LCD_GCR_LCDSTP_SHIFT 8
  4195. #define LCD_GCR_LCDWAIT_MASK 0x200u
  4196. #define LCD_GCR_LCDWAIT_SHIFT 9
  4197. #define LCD_GCR_ALTDIV_MASK 0x3000u
  4198. #define LCD_GCR_ALTDIV_SHIFT 12
  4199. #define LCD_GCR_ALTDIV(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_ALTDIV_SHIFT))&LCD_GCR_ALTDIV_MASK)
  4200. #define LCD_GCR_FDCIEN_MASK 0x4000u
  4201. #define LCD_GCR_FDCIEN_SHIFT 14
  4202. #define LCD_GCR_LCDIEN_MASK 0x8000u
  4203. #define LCD_GCR_LCDIEN_SHIFT 15
  4204. #define LCD_GCR_VSUPPLY_MASK 0x30000u
  4205. #define LCD_GCR_VSUPPLY_SHIFT 16
  4206. #define LCD_GCR_VSUPPLY(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_VSUPPLY_SHIFT))&LCD_GCR_VSUPPLY_MASK)
  4207. #define LCD_GCR_LADJ_MASK 0x300000u
  4208. #define LCD_GCR_LADJ_SHIFT 20
  4209. #define LCD_GCR_LADJ(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_LADJ_SHIFT))&LCD_GCR_LADJ_MASK)
  4210. #define LCD_GCR_HREFSEL_MASK 0x400000u
  4211. #define LCD_GCR_HREFSEL_SHIFT 22
  4212. #define LCD_GCR_CPSEL_MASK 0x800000u
  4213. #define LCD_GCR_CPSEL_SHIFT 23
  4214. #define LCD_GCR_RVTRIM_MASK 0xF000000u
  4215. #define LCD_GCR_RVTRIM_SHIFT 24
  4216. #define LCD_GCR_RVTRIM(x) (((uint32_t)(((uint32_t)(x))<<LCD_GCR_RVTRIM_SHIFT))&LCD_GCR_RVTRIM_MASK)
  4217. #define LCD_GCR_RVEN_MASK 0x80000000u
  4218. #define LCD_GCR_RVEN_SHIFT 31
  4219. /* AR Bit Fields */
  4220. #define LCD_AR_BRATE_MASK 0x7u
  4221. #define LCD_AR_BRATE_SHIFT 0
  4222. #define LCD_AR_BRATE(x) (((uint32_t)(((uint32_t)(x))<<LCD_AR_BRATE_SHIFT))&LCD_AR_BRATE_MASK)
  4223. #define LCD_AR_BMODE_MASK 0x8u
  4224. #define LCD_AR_BMODE_SHIFT 3
  4225. #define LCD_AR_BLANK_MASK 0x20u
  4226. #define LCD_AR_BLANK_SHIFT 5
  4227. #define LCD_AR_ALT_MASK 0x40u
  4228. #define LCD_AR_ALT_SHIFT 6
  4229. #define LCD_AR_BLINK_MASK 0x80u
  4230. #define LCD_AR_BLINK_SHIFT 7
  4231. #define LCD_AR_LCDIF_MASK 0x8000u
  4232. #define LCD_AR_LCDIF_SHIFT 15
  4233. /* FDCR Bit Fields */
  4234. #define LCD_FDCR_FDPINID_MASK 0x3Fu
  4235. #define LCD_FDCR_FDPINID_SHIFT 0
  4236. #define LCD_FDCR_FDPINID(x) (((uint32_t)(((uint32_t)(x))<<LCD_FDCR_FDPINID_SHIFT))&LCD_FDCR_FDPINID_MASK)
  4237. #define LCD_FDCR_FDBPEN_MASK 0x40u
  4238. #define LCD_FDCR_FDBPEN_SHIFT 6
  4239. #define LCD_FDCR_FDEN_MASK 0x80u
  4240. #define LCD_FDCR_FDEN_SHIFT 7
  4241. #define LCD_FDCR_FDSWW_MASK 0xE00u
  4242. #define LCD_FDCR_FDSWW_SHIFT 9
  4243. #define LCD_FDCR_FDSWW(x) (((uint32_t)(((uint32_t)(x))<<LCD_FDCR_FDSWW_SHIFT))&LCD_FDCR_FDSWW_MASK)
  4244. #define LCD_FDCR_FDPRS_MASK 0x7000u
  4245. #define LCD_FDCR_FDPRS_SHIFT 12
  4246. #define LCD_FDCR_FDPRS(x) (((uint32_t)(((uint32_t)(x))<<LCD_FDCR_FDPRS_SHIFT))&LCD_FDCR_FDPRS_MASK)
  4247. /* FDSR Bit Fields */
  4248. #define LCD_FDSR_FDCNT_MASK 0xFFu
  4249. #define LCD_FDSR_FDCNT_SHIFT 0
  4250. #define LCD_FDSR_FDCNT(x) (((uint32_t)(((uint32_t)(x))<<LCD_FDSR_FDCNT_SHIFT))&LCD_FDSR_FDCNT_MASK)
  4251. #define LCD_FDSR_FDCF_MASK 0x8000u
  4252. #define LCD_FDSR_FDCF_SHIFT 15
  4253. /* PEN Bit Fields */
  4254. #define LCD_PEN_PEN_MASK 0xFFFFFFFFu
  4255. #define LCD_PEN_PEN_SHIFT 0
  4256. #define LCD_PEN_PEN(x) (((uint32_t)(((uint32_t)(x))<<LCD_PEN_PEN_SHIFT))&LCD_PEN_PEN_MASK)
  4257. /* BPEN Bit Fields */
  4258. #define LCD_BPEN_BPEN_MASK 0xFFFFFFFFu
  4259. #define LCD_BPEN_BPEN_SHIFT 0
  4260. #define LCD_BPEN_BPEN(x) (((uint32_t)(((uint32_t)(x))<<LCD_BPEN_BPEN_SHIFT))&LCD_BPEN_BPEN_MASK)
  4261. /* WF Bit Fields */
  4262. #define LCD_WF_WF0_MASK 0xFFu
  4263. #define LCD_WF_WF0_SHIFT 0
  4264. #define LCD_WF_WF0(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF0_SHIFT))&LCD_WF_WF0_MASK)
  4265. #define LCD_WF_WF60_MASK 0xFFu
  4266. #define LCD_WF_WF60_SHIFT 0
  4267. #define LCD_WF_WF60(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF60_SHIFT))&LCD_WF_WF60_MASK)
  4268. #define LCD_WF_WF56_MASK 0xFFu
  4269. #define LCD_WF_WF56_SHIFT 0
  4270. #define LCD_WF_WF56(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF56_SHIFT))&LCD_WF_WF56_MASK)
  4271. #define LCD_WF_WF52_MASK 0xFFu
  4272. #define LCD_WF_WF52_SHIFT 0
  4273. #define LCD_WF_WF52(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF52_SHIFT))&LCD_WF_WF52_MASK)
  4274. #define LCD_WF_WF4_MASK 0xFFu
  4275. #define LCD_WF_WF4_SHIFT 0
  4276. #define LCD_WF_WF4(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF4_SHIFT))&LCD_WF_WF4_MASK)
  4277. #define LCD_WF_WF48_MASK 0xFFu
  4278. #define LCD_WF_WF48_SHIFT 0
  4279. #define LCD_WF_WF48(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF48_SHIFT))&LCD_WF_WF48_MASK)
  4280. #define LCD_WF_WF44_MASK 0xFFu
  4281. #define LCD_WF_WF44_SHIFT 0
  4282. #define LCD_WF_WF44(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF44_SHIFT))&LCD_WF_WF44_MASK)
  4283. #define LCD_WF_WF40_MASK 0xFFu
  4284. #define LCD_WF_WF40_SHIFT 0
  4285. #define LCD_WF_WF40(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF40_SHIFT))&LCD_WF_WF40_MASK)
  4286. #define LCD_WF_WF8_MASK 0xFFu
  4287. #define LCD_WF_WF8_SHIFT 0
  4288. #define LCD_WF_WF8(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF8_SHIFT))&LCD_WF_WF8_MASK)
  4289. #define LCD_WF_WF36_MASK 0xFFu
  4290. #define LCD_WF_WF36_SHIFT 0
  4291. #define LCD_WF_WF36(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF36_SHIFT))&LCD_WF_WF36_MASK)
  4292. #define LCD_WF_WF32_MASK 0xFFu
  4293. #define LCD_WF_WF32_SHIFT 0
  4294. #define LCD_WF_WF32(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF32_SHIFT))&LCD_WF_WF32_MASK)
  4295. #define LCD_WF_WF28_MASK 0xFFu
  4296. #define LCD_WF_WF28_SHIFT 0
  4297. #define LCD_WF_WF28(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF28_SHIFT))&LCD_WF_WF28_MASK)
  4298. #define LCD_WF_WF12_MASK 0xFFu
  4299. #define LCD_WF_WF12_SHIFT 0
  4300. #define LCD_WF_WF12(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF12_SHIFT))&LCD_WF_WF12_MASK)
  4301. #define LCD_WF_WF24_MASK 0xFFu
  4302. #define LCD_WF_WF24_SHIFT 0
  4303. #define LCD_WF_WF24(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF24_SHIFT))&LCD_WF_WF24_MASK)
  4304. #define LCD_WF_WF20_MASK 0xFFu
  4305. #define LCD_WF_WF20_SHIFT 0
  4306. #define LCD_WF_WF20(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF20_SHIFT))&LCD_WF_WF20_MASK)
  4307. #define LCD_WF_WF16_MASK 0xFFu
  4308. #define LCD_WF_WF16_SHIFT 0
  4309. #define LCD_WF_WF16(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF16_SHIFT))&LCD_WF_WF16_MASK)
  4310. #define LCD_WF_WF5_MASK 0xFF00u
  4311. #define LCD_WF_WF5_SHIFT 8
  4312. #define LCD_WF_WF5(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF5_SHIFT))&LCD_WF_WF5_MASK)
  4313. #define LCD_WF_WF49_MASK 0xFF00u
  4314. #define LCD_WF_WF49_SHIFT 8
  4315. #define LCD_WF_WF49(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF49_SHIFT))&LCD_WF_WF49_MASK)
  4316. #define LCD_WF_WF45_MASK 0xFF00u
  4317. #define LCD_WF_WF45_SHIFT 8
  4318. #define LCD_WF_WF45(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF45_SHIFT))&LCD_WF_WF45_MASK)
  4319. #define LCD_WF_WF61_MASK 0xFF00u
  4320. #define LCD_WF_WF61_SHIFT 8
  4321. #define LCD_WF_WF61(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF61_SHIFT))&LCD_WF_WF61_MASK)
  4322. #define LCD_WF_WF25_MASK 0xFF00u
  4323. #define LCD_WF_WF25_SHIFT 8
  4324. #define LCD_WF_WF25(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF25_SHIFT))&LCD_WF_WF25_MASK)
  4325. #define LCD_WF_WF17_MASK 0xFF00u
  4326. #define LCD_WF_WF17_SHIFT 8
  4327. #define LCD_WF_WF17(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF17_SHIFT))&LCD_WF_WF17_MASK)
  4328. #define LCD_WF_WF41_MASK 0xFF00u
  4329. #define LCD_WF_WF41_SHIFT 8
  4330. #define LCD_WF_WF41(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF41_SHIFT))&LCD_WF_WF41_MASK)
  4331. #define LCD_WF_WF13_MASK 0xFF00u
  4332. #define LCD_WF_WF13_SHIFT 8
  4333. #define LCD_WF_WF13(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF13_SHIFT))&LCD_WF_WF13_MASK)
  4334. #define LCD_WF_WF57_MASK 0xFF00u
  4335. #define LCD_WF_WF57_SHIFT 8
  4336. #define LCD_WF_WF57(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF57_SHIFT))&LCD_WF_WF57_MASK)
  4337. #define LCD_WF_WF53_MASK 0xFF00u
  4338. #define LCD_WF_WF53_SHIFT 8
  4339. #define LCD_WF_WF53(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF53_SHIFT))&LCD_WF_WF53_MASK)
  4340. #define LCD_WF_WF37_MASK 0xFF00u
  4341. #define LCD_WF_WF37_SHIFT 8
  4342. #define LCD_WF_WF37(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF37_SHIFT))&LCD_WF_WF37_MASK)
  4343. #define LCD_WF_WF9_MASK 0xFF00u
  4344. #define LCD_WF_WF9_SHIFT 8
  4345. #define LCD_WF_WF9(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF9_SHIFT))&LCD_WF_WF9_MASK)
  4346. #define LCD_WF_WF1_MASK 0xFF00u
  4347. #define LCD_WF_WF1_SHIFT 8
  4348. #define LCD_WF_WF1(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF1_SHIFT))&LCD_WF_WF1_MASK)
  4349. #define LCD_WF_WF29_MASK 0xFF00u
  4350. #define LCD_WF_WF29_SHIFT 8
  4351. #define LCD_WF_WF29(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF29_SHIFT))&LCD_WF_WF29_MASK)
  4352. #define LCD_WF_WF33_MASK 0xFF00u
  4353. #define LCD_WF_WF33_SHIFT 8
  4354. #define LCD_WF_WF33(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF33_SHIFT))&LCD_WF_WF33_MASK)
  4355. #define LCD_WF_WF21_MASK 0xFF00u
  4356. #define LCD_WF_WF21_SHIFT 8
  4357. #define LCD_WF_WF21(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF21_SHIFT))&LCD_WF_WF21_MASK)
  4358. #define LCD_WF_WF26_MASK 0xFF0000u
  4359. #define LCD_WF_WF26_SHIFT 16
  4360. #define LCD_WF_WF26(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF26_SHIFT))&LCD_WF_WF26_MASK)
  4361. #define LCD_WF_WF46_MASK 0xFF0000u
  4362. #define LCD_WF_WF46_SHIFT 16
  4363. #define LCD_WF_WF46(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF46_SHIFT))&LCD_WF_WF46_MASK)
  4364. #define LCD_WF_WF6_MASK 0xFF0000u
  4365. #define LCD_WF_WF6_SHIFT 16
  4366. #define LCD_WF_WF6(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF6_SHIFT))&LCD_WF_WF6_MASK)
  4367. #define LCD_WF_WF42_MASK 0xFF0000u
  4368. #define LCD_WF_WF42_SHIFT 16
  4369. #define LCD_WF_WF42(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF42_SHIFT))&LCD_WF_WF42_MASK)
  4370. #define LCD_WF_WF18_MASK 0xFF0000u
  4371. #define LCD_WF_WF18_SHIFT 16
  4372. #define LCD_WF_WF18(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF18_SHIFT))&LCD_WF_WF18_MASK)
  4373. #define LCD_WF_WF38_MASK 0xFF0000u
  4374. #define LCD_WF_WF38_SHIFT 16
  4375. #define LCD_WF_WF38(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF38_SHIFT))&LCD_WF_WF38_MASK)
  4376. #define LCD_WF_WF22_MASK 0xFF0000u
  4377. #define LCD_WF_WF22_SHIFT 16
  4378. #define LCD_WF_WF22(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF22_SHIFT))&LCD_WF_WF22_MASK)
  4379. #define LCD_WF_WF34_MASK 0xFF0000u
  4380. #define LCD_WF_WF34_SHIFT 16
  4381. #define LCD_WF_WF34(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF34_SHIFT))&LCD_WF_WF34_MASK)
  4382. #define LCD_WF_WF50_MASK 0xFF0000u
  4383. #define LCD_WF_WF50_SHIFT 16
  4384. #define LCD_WF_WF50(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF50_SHIFT))&LCD_WF_WF50_MASK)
  4385. #define LCD_WF_WF14_MASK 0xFF0000u
  4386. #define LCD_WF_WF14_SHIFT 16
  4387. #define LCD_WF_WF14(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF14_SHIFT))&LCD_WF_WF14_MASK)
  4388. #define LCD_WF_WF54_MASK 0xFF0000u
  4389. #define LCD_WF_WF54_SHIFT 16
  4390. #define LCD_WF_WF54(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF54_SHIFT))&LCD_WF_WF54_MASK)
  4391. #define LCD_WF_WF2_MASK 0xFF0000u
  4392. #define LCD_WF_WF2_SHIFT 16
  4393. #define LCD_WF_WF2(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF2_SHIFT))&LCD_WF_WF2_MASK)
  4394. #define LCD_WF_WF58_MASK 0xFF0000u
  4395. #define LCD_WF_WF58_SHIFT 16
  4396. #define LCD_WF_WF58(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF58_SHIFT))&LCD_WF_WF58_MASK)
  4397. #define LCD_WF_WF30_MASK 0xFF0000u
  4398. #define LCD_WF_WF30_SHIFT 16
  4399. #define LCD_WF_WF30(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF30_SHIFT))&LCD_WF_WF30_MASK)
  4400. #define LCD_WF_WF62_MASK 0xFF0000u
  4401. #define LCD_WF_WF62_SHIFT 16
  4402. #define LCD_WF_WF62(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF62_SHIFT))&LCD_WF_WF62_MASK)
  4403. #define LCD_WF_WF10_MASK 0xFF0000u
  4404. #define LCD_WF_WF10_SHIFT 16
  4405. #define LCD_WF_WF10(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF10_SHIFT))&LCD_WF_WF10_MASK)
  4406. #define LCD_WF_WF63_MASK 0xFF000000u
  4407. #define LCD_WF_WF63_SHIFT 24
  4408. #define LCD_WF_WF63(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF63_SHIFT))&LCD_WF_WF63_MASK)
  4409. #define LCD_WF_WF59_MASK 0xFF000000u
  4410. #define LCD_WF_WF59_SHIFT 24
  4411. #define LCD_WF_WF59(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF59_SHIFT))&LCD_WF_WF59_MASK)
  4412. #define LCD_WF_WF55_MASK 0xFF000000u
  4413. #define LCD_WF_WF55_SHIFT 24
  4414. #define LCD_WF_WF55(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF55_SHIFT))&LCD_WF_WF55_MASK)
  4415. #define LCD_WF_WF3_MASK 0xFF000000u
  4416. #define LCD_WF_WF3_SHIFT 24
  4417. #define LCD_WF_WF3(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF3_SHIFT))&LCD_WF_WF3_MASK)
  4418. #define LCD_WF_WF51_MASK 0xFF000000u
  4419. #define LCD_WF_WF51_SHIFT 24
  4420. #define LCD_WF_WF51(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF51_SHIFT))&LCD_WF_WF51_MASK)
  4421. #define LCD_WF_WF47_MASK 0xFF000000u
  4422. #define LCD_WF_WF47_SHIFT 24
  4423. #define LCD_WF_WF47(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF47_SHIFT))&LCD_WF_WF47_MASK)
  4424. #define LCD_WF_WF43_MASK 0xFF000000u
  4425. #define LCD_WF_WF43_SHIFT 24
  4426. #define LCD_WF_WF43(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF43_SHIFT))&LCD_WF_WF43_MASK)
  4427. #define LCD_WF_WF7_MASK 0xFF000000u
  4428. #define LCD_WF_WF7_SHIFT 24
  4429. #define LCD_WF_WF7(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF7_SHIFT))&LCD_WF_WF7_MASK)
  4430. #define LCD_WF_WF39_MASK 0xFF000000u
  4431. #define LCD_WF_WF39_SHIFT 24
  4432. #define LCD_WF_WF39(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF39_SHIFT))&LCD_WF_WF39_MASK)
  4433. #define LCD_WF_WF35_MASK 0xFF000000u
  4434. #define LCD_WF_WF35_SHIFT 24
  4435. #define LCD_WF_WF35(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF35_SHIFT))&LCD_WF_WF35_MASK)
  4436. #define LCD_WF_WF31_MASK 0xFF000000u
  4437. #define LCD_WF_WF31_SHIFT 24
  4438. #define LCD_WF_WF31(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF31_SHIFT))&LCD_WF_WF31_MASK)
  4439. #define LCD_WF_WF11_MASK 0xFF000000u
  4440. #define LCD_WF_WF11_SHIFT 24
  4441. #define LCD_WF_WF11(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF11_SHIFT))&LCD_WF_WF11_MASK)
  4442. #define LCD_WF_WF27_MASK 0xFF000000u
  4443. #define LCD_WF_WF27_SHIFT 24
  4444. #define LCD_WF_WF27(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF27_SHIFT))&LCD_WF_WF27_MASK)
  4445. #define LCD_WF_WF23_MASK 0xFF000000u
  4446. #define LCD_WF_WF23_SHIFT 24
  4447. #define LCD_WF_WF23(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF23_SHIFT))&LCD_WF_WF23_MASK)
  4448. #define LCD_WF_WF19_MASK 0xFF000000u
  4449. #define LCD_WF_WF19_SHIFT 24
  4450. #define LCD_WF_WF19(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF19_SHIFT))&LCD_WF_WF19_MASK)
  4451. #define LCD_WF_WF15_MASK 0xFF000000u
  4452. #define LCD_WF_WF15_SHIFT 24
  4453. #define LCD_WF_WF15(x) (((uint32_t)(((uint32_t)(x))<<LCD_WF_WF15_SHIFT))&LCD_WF_WF15_MASK)
  4454. /* WF8B Bit Fields */
  4455. #define LCD_WF8B_BPALCD0_MASK 0x1u
  4456. #define LCD_WF8B_BPALCD0_SHIFT 0
  4457. #define LCD_WF8B_BPALCD63_MASK 0x1u
  4458. #define LCD_WF8B_BPALCD63_SHIFT 0
  4459. #define LCD_WF8B_BPALCD62_MASK 0x1u
  4460. #define LCD_WF8B_BPALCD62_SHIFT 0
  4461. #define LCD_WF8B_BPALCD61_MASK 0x1u
  4462. #define LCD_WF8B_BPALCD61_SHIFT 0
  4463. #define LCD_WF8B_BPALCD60_MASK 0x1u
  4464. #define LCD_WF8B_BPALCD60_SHIFT 0
  4465. #define LCD_WF8B_BPALCD59_MASK 0x1u
  4466. #define LCD_WF8B_BPALCD59_SHIFT 0
  4467. #define LCD_WF8B_BPALCD58_MASK 0x1u
  4468. #define LCD_WF8B_BPALCD58_SHIFT 0
  4469. #define LCD_WF8B_BPALCD57_MASK 0x1u
  4470. #define LCD_WF8B_BPALCD57_SHIFT 0
  4471. #define LCD_WF8B_BPALCD1_MASK 0x1u
  4472. #define LCD_WF8B_BPALCD1_SHIFT 0
  4473. #define LCD_WF8B_BPALCD56_MASK 0x1u
  4474. #define LCD_WF8B_BPALCD56_SHIFT 0
  4475. #define LCD_WF8B_BPALCD55_MASK 0x1u
  4476. #define LCD_WF8B_BPALCD55_SHIFT 0
  4477. #define LCD_WF8B_BPALCD54_MASK 0x1u
  4478. #define LCD_WF8B_BPALCD54_SHIFT 0
  4479. #define LCD_WF8B_BPALCD53_MASK 0x1u
  4480. #define LCD_WF8B_BPALCD53_SHIFT 0
  4481. #define LCD_WF8B_BPALCD52_MASK 0x1u
  4482. #define LCD_WF8B_BPALCD52_SHIFT 0
  4483. #define LCD_WF8B_BPALCD51_MASK 0x1u
  4484. #define LCD_WF8B_BPALCD51_SHIFT 0
  4485. #define LCD_WF8B_BPALCD50_MASK 0x1u
  4486. #define LCD_WF8B_BPALCD50_SHIFT 0
  4487. #define LCD_WF8B_BPALCD2_MASK 0x1u
  4488. #define LCD_WF8B_BPALCD2_SHIFT 0
  4489. #define LCD_WF8B_BPALCD49_MASK 0x1u
  4490. #define LCD_WF8B_BPALCD49_SHIFT 0
  4491. #define LCD_WF8B_BPALCD48_MASK 0x1u
  4492. #define LCD_WF8B_BPALCD48_SHIFT 0
  4493. #define LCD_WF8B_BPALCD47_MASK 0x1u
  4494. #define LCD_WF8B_BPALCD47_SHIFT 0
  4495. #define LCD_WF8B_BPALCD46_MASK 0x1u
  4496. #define LCD_WF8B_BPALCD46_SHIFT 0
  4497. #define LCD_WF8B_BPALCD45_MASK 0x1u
  4498. #define LCD_WF8B_BPALCD45_SHIFT 0
  4499. #define LCD_WF8B_BPALCD44_MASK 0x1u
  4500. #define LCD_WF8B_BPALCD44_SHIFT 0
  4501. #define LCD_WF8B_BPALCD43_MASK 0x1u
  4502. #define LCD_WF8B_BPALCD43_SHIFT 0
  4503. #define LCD_WF8B_BPALCD3_MASK 0x1u
  4504. #define LCD_WF8B_BPALCD3_SHIFT 0
  4505. #define LCD_WF8B_BPALCD42_MASK 0x1u
  4506. #define LCD_WF8B_BPALCD42_SHIFT 0
  4507. #define LCD_WF8B_BPALCD41_MASK 0x1u
  4508. #define LCD_WF8B_BPALCD41_SHIFT 0
  4509. #define LCD_WF8B_BPALCD40_MASK 0x1u
  4510. #define LCD_WF8B_BPALCD40_SHIFT 0
  4511. #define LCD_WF8B_BPALCD39_MASK 0x1u
  4512. #define LCD_WF8B_BPALCD39_SHIFT 0
  4513. #define LCD_WF8B_BPALCD38_MASK 0x1u
  4514. #define LCD_WF8B_BPALCD38_SHIFT 0
  4515. #define LCD_WF8B_BPALCD37_MASK 0x1u
  4516. #define LCD_WF8B_BPALCD37_SHIFT 0
  4517. #define LCD_WF8B_BPALCD36_MASK 0x1u
  4518. #define LCD_WF8B_BPALCD36_SHIFT 0
  4519. #define LCD_WF8B_BPALCD4_MASK 0x1u
  4520. #define LCD_WF8B_BPALCD4_SHIFT 0
  4521. #define LCD_WF8B_BPALCD35_MASK 0x1u
  4522. #define LCD_WF8B_BPALCD35_SHIFT 0
  4523. #define LCD_WF8B_BPALCD34_MASK 0x1u
  4524. #define LCD_WF8B_BPALCD34_SHIFT 0
  4525. #define LCD_WF8B_BPALCD33_MASK 0x1u
  4526. #define LCD_WF8B_BPALCD33_SHIFT 0
  4527. #define LCD_WF8B_BPALCD32_MASK 0x1u
  4528. #define LCD_WF8B_BPALCD32_SHIFT 0
  4529. #define LCD_WF8B_BPALCD31_MASK 0x1u
  4530. #define LCD_WF8B_BPALCD31_SHIFT 0
  4531. #define LCD_WF8B_BPALCD30_MASK 0x1u
  4532. #define LCD_WF8B_BPALCD30_SHIFT 0
  4533. #define LCD_WF8B_BPALCD29_MASK 0x1u
  4534. #define LCD_WF8B_BPALCD29_SHIFT 0
  4535. #define LCD_WF8B_BPALCD5_MASK 0x1u
  4536. #define LCD_WF8B_BPALCD5_SHIFT 0
  4537. #define LCD_WF8B_BPALCD28_MASK 0x1u
  4538. #define LCD_WF8B_BPALCD28_SHIFT 0
  4539. #define LCD_WF8B_BPALCD27_MASK 0x1u
  4540. #define LCD_WF8B_BPALCD27_SHIFT 0
  4541. #define LCD_WF8B_BPALCD26_MASK 0x1u
  4542. #define LCD_WF8B_BPALCD26_SHIFT 0
  4543. #define LCD_WF8B_BPALCD25_MASK 0x1u
  4544. #define LCD_WF8B_BPALCD25_SHIFT 0
  4545. #define LCD_WF8B_BPALCD24_MASK 0x1u
  4546. #define LCD_WF8B_BPALCD24_SHIFT 0
  4547. #define LCD_WF8B_BPALCD23_MASK 0x1u
  4548. #define LCD_WF8B_BPALCD23_SHIFT 0
  4549. #define LCD_WF8B_BPALCD22_MASK 0x1u
  4550. #define LCD_WF8B_BPALCD22_SHIFT 0
  4551. #define LCD_WF8B_BPALCD6_MASK 0x1u
  4552. #define LCD_WF8B_BPALCD6_SHIFT 0
  4553. #define LCD_WF8B_BPALCD21_MASK 0x1u
  4554. #define LCD_WF8B_BPALCD21_SHIFT 0
  4555. #define LCD_WF8B_BPALCD20_MASK 0x1u
  4556. #define LCD_WF8B_BPALCD20_SHIFT 0
  4557. #define LCD_WF8B_BPALCD19_MASK 0x1u
  4558. #define LCD_WF8B_BPALCD19_SHIFT 0
  4559. #define LCD_WF8B_BPALCD18_MASK 0x1u
  4560. #define LCD_WF8B_BPALCD18_SHIFT 0
  4561. #define LCD_WF8B_BPALCD17_MASK 0x1u
  4562. #define LCD_WF8B_BPALCD17_SHIFT 0
  4563. #define LCD_WF8B_BPALCD16_MASK 0x1u
  4564. #define LCD_WF8B_BPALCD16_SHIFT 0
  4565. #define LCD_WF8B_BPALCD15_MASK 0x1u
  4566. #define LCD_WF8B_BPALCD15_SHIFT 0
  4567. #define LCD_WF8B_BPALCD7_MASK 0x1u
  4568. #define LCD_WF8B_BPALCD7_SHIFT 0
  4569. #define LCD_WF8B_BPALCD14_MASK 0x1u
  4570. #define LCD_WF8B_BPALCD14_SHIFT 0
  4571. #define LCD_WF8B_BPALCD13_MASK 0x1u
  4572. #define LCD_WF8B_BPALCD13_SHIFT 0
  4573. #define LCD_WF8B_BPALCD12_MASK 0x1u
  4574. #define LCD_WF8B_BPALCD12_SHIFT 0
  4575. #define LCD_WF8B_BPALCD11_MASK 0x1u
  4576. #define LCD_WF8B_BPALCD11_SHIFT 0
  4577. #define LCD_WF8B_BPALCD10_MASK 0x1u
  4578. #define LCD_WF8B_BPALCD10_SHIFT 0
  4579. #define LCD_WF8B_BPALCD9_MASK 0x1u
  4580. #define LCD_WF8B_BPALCD9_SHIFT 0
  4581. #define LCD_WF8B_BPALCD8_MASK 0x1u
  4582. #define LCD_WF8B_BPALCD8_SHIFT 0
  4583. #define LCD_WF8B_BPBLCD1_MASK 0x2u
  4584. #define LCD_WF8B_BPBLCD1_SHIFT 1
  4585. #define LCD_WF8B_BPBLCD32_MASK 0x2u
  4586. #define LCD_WF8B_BPBLCD32_SHIFT 1
  4587. #define LCD_WF8B_BPBLCD30_MASK 0x2u
  4588. #define LCD_WF8B_BPBLCD30_SHIFT 1
  4589. #define LCD_WF8B_BPBLCD60_MASK 0x2u
  4590. #define LCD_WF8B_BPBLCD60_SHIFT 1
  4591. #define LCD_WF8B_BPBLCD24_MASK 0x2u
  4592. #define LCD_WF8B_BPBLCD24_SHIFT 1
  4593. #define LCD_WF8B_BPBLCD28_MASK 0x2u
  4594. #define LCD_WF8B_BPBLCD28_SHIFT 1
  4595. #define LCD_WF8B_BPBLCD23_MASK 0x2u
  4596. #define LCD_WF8B_BPBLCD23_SHIFT 1
  4597. #define LCD_WF8B_BPBLCD48_MASK 0x2u
  4598. #define LCD_WF8B_BPBLCD48_SHIFT 1
  4599. #define LCD_WF8B_BPBLCD10_MASK 0x2u
  4600. #define LCD_WF8B_BPBLCD10_SHIFT 1
  4601. #define LCD_WF8B_BPBLCD15_MASK 0x2u
  4602. #define LCD_WF8B_BPBLCD15_SHIFT 1
  4603. #define LCD_WF8B_BPBLCD36_MASK 0x2u
  4604. #define LCD_WF8B_BPBLCD36_SHIFT 1
  4605. #define LCD_WF8B_BPBLCD44_MASK 0x2u
  4606. #define LCD_WF8B_BPBLCD44_SHIFT 1
  4607. #define LCD_WF8B_BPBLCD62_MASK 0x2u
  4608. #define LCD_WF8B_BPBLCD62_SHIFT 1
  4609. #define LCD_WF8B_BPBLCD53_MASK 0x2u
  4610. #define LCD_WF8B_BPBLCD53_SHIFT 1
  4611. #define LCD_WF8B_BPBLCD22_MASK 0x2u
  4612. #define LCD_WF8B_BPBLCD22_SHIFT 1
  4613. #define LCD_WF8B_BPBLCD47_MASK 0x2u
  4614. #define LCD_WF8B_BPBLCD47_SHIFT 1
  4615. #define LCD_WF8B_BPBLCD33_MASK 0x2u
  4616. #define LCD_WF8B_BPBLCD33_SHIFT 1
  4617. #define LCD_WF8B_BPBLCD2_MASK 0x2u
  4618. #define LCD_WF8B_BPBLCD2_SHIFT 1
  4619. #define LCD_WF8B_BPBLCD49_MASK 0x2u
  4620. #define LCD_WF8B_BPBLCD49_SHIFT 1
  4621. #define LCD_WF8B_BPBLCD0_MASK 0x2u
  4622. #define LCD_WF8B_BPBLCD0_SHIFT 1
  4623. #define LCD_WF8B_BPBLCD55_MASK 0x2u
  4624. #define LCD_WF8B_BPBLCD55_SHIFT 1
  4625. #define LCD_WF8B_BPBLCD56_MASK 0x2u
  4626. #define LCD_WF8B_BPBLCD56_SHIFT 1
  4627. #define LCD_WF8B_BPBLCD21_MASK 0x2u
  4628. #define LCD_WF8B_BPBLCD21_SHIFT 1
  4629. #define LCD_WF8B_BPBLCD6_MASK 0x2u
  4630. #define LCD_WF8B_BPBLCD6_SHIFT 1
  4631. #define LCD_WF8B_BPBLCD29_MASK 0x2u
  4632. #define LCD_WF8B_BPBLCD29_SHIFT 1
  4633. #define LCD_WF8B_BPBLCD25_MASK 0x2u
  4634. #define LCD_WF8B_BPBLCD25_SHIFT 1
  4635. #define LCD_WF8B_BPBLCD8_MASK 0x2u
  4636. #define LCD_WF8B_BPBLCD8_SHIFT 1
  4637. #define LCD_WF8B_BPBLCD54_MASK 0x2u
  4638. #define LCD_WF8B_BPBLCD54_SHIFT 1
  4639. #define LCD_WF8B_BPBLCD38_MASK 0x2u
  4640. #define LCD_WF8B_BPBLCD38_SHIFT 1
  4641. #define LCD_WF8B_BPBLCD43_MASK 0x2u
  4642. #define LCD_WF8B_BPBLCD43_SHIFT 1
  4643. #define LCD_WF8B_BPBLCD20_MASK 0x2u
  4644. #define LCD_WF8B_BPBLCD20_SHIFT 1
  4645. #define LCD_WF8B_BPBLCD9_MASK 0x2u
  4646. #define LCD_WF8B_BPBLCD9_SHIFT 1
  4647. #define LCD_WF8B_BPBLCD7_MASK 0x2u
  4648. #define LCD_WF8B_BPBLCD7_SHIFT 1
  4649. #define LCD_WF8B_BPBLCD50_MASK 0x2u
  4650. #define LCD_WF8B_BPBLCD50_SHIFT 1
  4651. #define LCD_WF8B_BPBLCD40_MASK 0x2u
  4652. #define LCD_WF8B_BPBLCD40_SHIFT 1
  4653. #define LCD_WF8B_BPBLCD63_MASK 0x2u
  4654. #define LCD_WF8B_BPBLCD63_SHIFT 1
  4655. #define LCD_WF8B_BPBLCD26_MASK 0x2u
  4656. #define LCD_WF8B_BPBLCD26_SHIFT 1
  4657. #define LCD_WF8B_BPBLCD12_MASK 0x2u
  4658. #define LCD_WF8B_BPBLCD12_SHIFT 1
  4659. #define LCD_WF8B_BPBLCD19_MASK 0x2u
  4660. #define LCD_WF8B_BPBLCD19_SHIFT 1
  4661. #define LCD_WF8B_BPBLCD34_MASK 0x2u
  4662. #define LCD_WF8B_BPBLCD34_SHIFT 1
  4663. #define LCD_WF8B_BPBLCD39_MASK 0x2u
  4664. #define LCD_WF8B_BPBLCD39_SHIFT 1
  4665. #define LCD_WF8B_BPBLCD59_MASK 0x2u
  4666. #define LCD_WF8B_BPBLCD59_SHIFT 1
  4667. #define LCD_WF8B_BPBLCD61_MASK 0x2u
  4668. #define LCD_WF8B_BPBLCD61_SHIFT 1
  4669. #define LCD_WF8B_BPBLCD37_MASK 0x2u
  4670. #define LCD_WF8B_BPBLCD37_SHIFT 1
  4671. #define LCD_WF8B_BPBLCD31_MASK 0x2u
  4672. #define LCD_WF8B_BPBLCD31_SHIFT 1
  4673. #define LCD_WF8B_BPBLCD58_MASK 0x2u
  4674. #define LCD_WF8B_BPBLCD58_SHIFT 1
  4675. #define LCD_WF8B_BPBLCD18_MASK 0x2u
  4676. #define LCD_WF8B_BPBLCD18_SHIFT 1
  4677. #define LCD_WF8B_BPBLCD45_MASK 0x2u
  4678. #define LCD_WF8B_BPBLCD45_SHIFT 1
  4679. #define LCD_WF8B_BPBLCD27_MASK 0x2u
  4680. #define LCD_WF8B_BPBLCD27_SHIFT 1
  4681. #define LCD_WF8B_BPBLCD14_MASK 0x2u
  4682. #define LCD_WF8B_BPBLCD14_SHIFT 1
  4683. #define LCD_WF8B_BPBLCD51_MASK 0x2u
  4684. #define LCD_WF8B_BPBLCD51_SHIFT 1
  4685. #define LCD_WF8B_BPBLCD52_MASK 0x2u
  4686. #define LCD_WF8B_BPBLCD52_SHIFT 1
  4687. #define LCD_WF8B_BPBLCD4_MASK 0x2u
  4688. #define LCD_WF8B_BPBLCD4_SHIFT 1
  4689. #define LCD_WF8B_BPBLCD35_MASK 0x2u
  4690. #define LCD_WF8B_BPBLCD35_SHIFT 1
  4691. #define LCD_WF8B_BPBLCD17_MASK 0x2u
  4692. #define LCD_WF8B_BPBLCD17_SHIFT 1
  4693. #define LCD_WF8B_BPBLCD41_MASK 0x2u
  4694. #define LCD_WF8B_BPBLCD41_SHIFT 1
  4695. #define LCD_WF8B_BPBLCD11_MASK 0x2u
  4696. #define LCD_WF8B_BPBLCD11_SHIFT 1
  4697. #define LCD_WF8B_BPBLCD46_MASK 0x2u
  4698. #define LCD_WF8B_BPBLCD46_SHIFT 1
  4699. #define LCD_WF8B_BPBLCD57_MASK 0x2u
  4700. #define LCD_WF8B_BPBLCD57_SHIFT 1
  4701. #define LCD_WF8B_BPBLCD42_MASK 0x2u
  4702. #define LCD_WF8B_BPBLCD42_SHIFT 1
  4703. #define LCD_WF8B_BPBLCD5_MASK 0x2u
  4704. #define LCD_WF8B_BPBLCD5_SHIFT 1
  4705. #define LCD_WF8B_BPBLCD3_MASK 0x2u
  4706. #define LCD_WF8B_BPBLCD3_SHIFT 1
  4707. #define LCD_WF8B_BPBLCD16_MASK 0x2u
  4708. #define LCD_WF8B_BPBLCD16_SHIFT 1
  4709. #define LCD_WF8B_BPBLCD13_MASK 0x2u
  4710. #define LCD_WF8B_BPBLCD13_SHIFT 1
  4711. #define LCD_WF8B_BPCLCD10_MASK 0x4u
  4712. #define LCD_WF8B_BPCLCD10_SHIFT 2
  4713. #define LCD_WF8B_BPCLCD55_MASK 0x4u
  4714. #define LCD_WF8B_BPCLCD55_SHIFT 2
  4715. #define LCD_WF8B_BPCLCD2_MASK 0x4u
  4716. #define LCD_WF8B_BPCLCD2_SHIFT 2
  4717. #define LCD_WF8B_BPCLCD23_MASK 0x4u
  4718. #define LCD_WF8B_BPCLCD23_SHIFT 2
  4719. #define LCD_WF8B_BPCLCD48_MASK 0x4u
  4720. #define LCD_WF8B_BPCLCD48_SHIFT 2
  4721. #define LCD_WF8B_BPCLCD24_MASK 0x4u
  4722. #define LCD_WF8B_BPCLCD24_SHIFT 2
  4723. #define LCD_WF8B_BPCLCD60_MASK 0x4u
  4724. #define LCD_WF8B_BPCLCD60_SHIFT 2
  4725. #define LCD_WF8B_BPCLCD47_MASK 0x4u
  4726. #define LCD_WF8B_BPCLCD47_SHIFT 2
  4727. #define LCD_WF8B_BPCLCD22_MASK 0x4u
  4728. #define LCD_WF8B_BPCLCD22_SHIFT 2
  4729. #define LCD_WF8B_BPCLCD8_MASK 0x4u
  4730. #define LCD_WF8B_BPCLCD8_SHIFT 2
  4731. #define LCD_WF8B_BPCLCD21_MASK 0x4u
  4732. #define LCD_WF8B_BPCLCD21_SHIFT 2
  4733. #define LCD_WF8B_BPCLCD49_MASK 0x4u
  4734. #define LCD_WF8B_BPCLCD49_SHIFT 2
  4735. #define LCD_WF8B_BPCLCD25_MASK 0x4u
  4736. #define LCD_WF8B_BPCLCD25_SHIFT 2
  4737. #define LCD_WF8B_BPCLCD1_MASK 0x4u
  4738. #define LCD_WF8B_BPCLCD1_SHIFT 2
  4739. #define LCD_WF8B_BPCLCD20_MASK 0x4u
  4740. #define LCD_WF8B_BPCLCD20_SHIFT 2
  4741. #define LCD_WF8B_BPCLCD50_MASK 0x4u
  4742. #define LCD_WF8B_BPCLCD50_SHIFT 2
  4743. #define LCD_WF8B_BPCLCD19_MASK 0x4u
  4744. #define LCD_WF8B_BPCLCD19_SHIFT 2
  4745. #define LCD_WF8B_BPCLCD26_MASK 0x4u
  4746. #define LCD_WF8B_BPCLCD26_SHIFT 2
  4747. #define LCD_WF8B_BPCLCD59_MASK 0x4u
  4748. #define LCD_WF8B_BPCLCD59_SHIFT 2
  4749. #define LCD_WF8B_BPCLCD61_MASK 0x4u
  4750. #define LCD_WF8B_BPCLCD61_SHIFT 2
  4751. #define LCD_WF8B_BPCLCD46_MASK 0x4u
  4752. #define LCD_WF8B_BPCLCD46_SHIFT 2
  4753. #define LCD_WF8B_BPCLCD18_MASK 0x4u
  4754. #define LCD_WF8B_BPCLCD18_SHIFT 2
  4755. #define LCD_WF8B_BPCLCD5_MASK 0x4u
  4756. #define LCD_WF8B_BPCLCD5_SHIFT 2
  4757. #define LCD_WF8B_BPCLCD63_MASK 0x4u
  4758. #define LCD_WF8B_BPCLCD63_SHIFT 2
  4759. #define LCD_WF8B_BPCLCD27_MASK 0x4u
  4760. #define LCD_WF8B_BPCLCD27_SHIFT 2
  4761. #define LCD_WF8B_BPCLCD17_MASK 0x4u
  4762. #define LCD_WF8B_BPCLCD17_SHIFT 2
  4763. #define LCD_WF8B_BPCLCD51_MASK 0x4u
  4764. #define LCD_WF8B_BPCLCD51_SHIFT 2
  4765. #define LCD_WF8B_BPCLCD9_MASK 0x4u
  4766. #define LCD_WF8B_BPCLCD9_SHIFT 2
  4767. #define LCD_WF8B_BPCLCD54_MASK 0x4u
  4768. #define LCD_WF8B_BPCLCD54_SHIFT 2
  4769. #define LCD_WF8B_BPCLCD15_MASK 0x4u
  4770. #define LCD_WF8B_BPCLCD15_SHIFT 2
  4771. #define LCD_WF8B_BPCLCD16_MASK 0x4u
  4772. #define LCD_WF8B_BPCLCD16_SHIFT 2
  4773. #define LCD_WF8B_BPCLCD14_MASK 0x4u
  4774. #define LCD_WF8B_BPCLCD14_SHIFT 2
  4775. #define LCD_WF8B_BPCLCD32_MASK 0x4u
  4776. #define LCD_WF8B_BPCLCD32_SHIFT 2
  4777. #define LCD_WF8B_BPCLCD28_MASK 0x4u
  4778. #define LCD_WF8B_BPCLCD28_SHIFT 2
  4779. #define LCD_WF8B_BPCLCD53_MASK 0x4u
  4780. #define LCD_WF8B_BPCLCD53_SHIFT 2
  4781. #define LCD_WF8B_BPCLCD33_MASK 0x4u
  4782. #define LCD_WF8B_BPCLCD33_SHIFT 2
  4783. #define LCD_WF8B_BPCLCD0_MASK 0x4u
  4784. #define LCD_WF8B_BPCLCD0_SHIFT 2
  4785. #define LCD_WF8B_BPCLCD43_MASK 0x4u
  4786. #define LCD_WF8B_BPCLCD43_SHIFT 2
  4787. #define LCD_WF8B_BPCLCD7_MASK 0x4u
  4788. #define LCD_WF8B_BPCLCD7_SHIFT 2
  4789. #define LCD_WF8B_BPCLCD4_MASK 0x4u
  4790. #define LCD_WF8B_BPCLCD4_SHIFT 2
  4791. #define LCD_WF8B_BPCLCD34_MASK 0x4u
  4792. #define LCD_WF8B_BPCLCD34_SHIFT 2
  4793. #define LCD_WF8B_BPCLCD29_MASK 0x4u
  4794. #define LCD_WF8B_BPCLCD29_SHIFT 2
  4795. #define LCD_WF8B_BPCLCD45_MASK 0x4u
  4796. #define LCD_WF8B_BPCLCD45_SHIFT 2
  4797. #define LCD_WF8B_BPCLCD57_MASK 0x4u
  4798. #define LCD_WF8B_BPCLCD57_SHIFT 2
  4799. #define LCD_WF8B_BPCLCD42_MASK 0x4u
  4800. #define LCD_WF8B_BPCLCD42_SHIFT 2
  4801. #define LCD_WF8B_BPCLCD35_MASK 0x4u
  4802. #define LCD_WF8B_BPCLCD35_SHIFT 2
  4803. #define LCD_WF8B_BPCLCD13_MASK 0x4u
  4804. #define LCD_WF8B_BPCLCD13_SHIFT 2
  4805. #define LCD_WF8B_BPCLCD36_MASK 0x4u
  4806. #define LCD_WF8B_BPCLCD36_SHIFT 2
  4807. #define LCD_WF8B_BPCLCD30_MASK 0x4u
  4808. #define LCD_WF8B_BPCLCD30_SHIFT 2
  4809. #define LCD_WF8B_BPCLCD52_MASK 0x4u
  4810. #define LCD_WF8B_BPCLCD52_SHIFT 2
  4811. #define LCD_WF8B_BPCLCD58_MASK 0x4u
  4812. #define LCD_WF8B_BPCLCD58_SHIFT 2
  4813. #define LCD_WF8B_BPCLCD41_MASK 0x4u
  4814. #define LCD_WF8B_BPCLCD41_SHIFT 2
  4815. #define LCD_WF8B_BPCLCD37_MASK 0x4u
  4816. #define LCD_WF8B_BPCLCD37_SHIFT 2
  4817. #define LCD_WF8B_BPCLCD3_MASK 0x4u
  4818. #define LCD_WF8B_BPCLCD3_SHIFT 2
  4819. #define LCD_WF8B_BPCLCD12_MASK 0x4u
  4820. #define LCD_WF8B_BPCLCD12_SHIFT 2
  4821. #define LCD_WF8B_BPCLCD11_MASK 0x4u
  4822. #define LCD_WF8B_BPCLCD11_SHIFT 2
  4823. #define LCD_WF8B_BPCLCD38_MASK 0x4u
  4824. #define LCD_WF8B_BPCLCD38_SHIFT 2
  4825. #define LCD_WF8B_BPCLCD44_MASK 0x4u
  4826. #define LCD_WF8B_BPCLCD44_SHIFT 2
  4827. #define LCD_WF8B_BPCLCD31_MASK 0x4u
  4828. #define LCD_WF8B_BPCLCD31_SHIFT 2
  4829. #define LCD_WF8B_BPCLCD40_MASK 0x4u
  4830. #define LCD_WF8B_BPCLCD40_SHIFT 2
  4831. #define LCD_WF8B_BPCLCD62_MASK 0x4u
  4832. #define LCD_WF8B_BPCLCD62_SHIFT 2
  4833. #define LCD_WF8B_BPCLCD56_MASK 0x4u
  4834. #define LCD_WF8B_BPCLCD56_SHIFT 2
  4835. #define LCD_WF8B_BPCLCD39_MASK 0x4u
  4836. #define LCD_WF8B_BPCLCD39_SHIFT 2
  4837. #define LCD_WF8B_BPCLCD6_MASK 0x4u
  4838. #define LCD_WF8B_BPCLCD6_SHIFT 2
  4839. #define LCD_WF8B_BPDLCD47_MASK 0x8u
  4840. #define LCD_WF8B_BPDLCD47_SHIFT 3
  4841. #define LCD_WF8B_BPDLCD23_MASK 0x8u
  4842. #define LCD_WF8B_BPDLCD23_SHIFT 3
  4843. #define LCD_WF8B_BPDLCD48_MASK 0x8u
  4844. #define LCD_WF8B_BPDLCD48_SHIFT 3
  4845. #define LCD_WF8B_BPDLCD24_MASK 0x8u
  4846. #define LCD_WF8B_BPDLCD24_SHIFT 3
  4847. #define LCD_WF8B_BPDLCD15_MASK 0x8u
  4848. #define LCD_WF8B_BPDLCD15_SHIFT 3
  4849. #define LCD_WF8B_BPDLCD22_MASK 0x8u
  4850. #define LCD_WF8B_BPDLCD22_SHIFT 3
  4851. #define LCD_WF8B_BPDLCD60_MASK 0x8u
  4852. #define LCD_WF8B_BPDLCD60_SHIFT 3
  4853. #define LCD_WF8B_BPDLCD10_MASK 0x8u
  4854. #define LCD_WF8B_BPDLCD10_SHIFT 3
  4855. #define LCD_WF8B_BPDLCD21_MASK 0x8u
  4856. #define LCD_WF8B_BPDLCD21_SHIFT 3
  4857. #define LCD_WF8B_BPDLCD49_MASK 0x8u
  4858. #define LCD_WF8B_BPDLCD49_SHIFT 3
  4859. #define LCD_WF8B_BPDLCD1_MASK 0x8u
  4860. #define LCD_WF8B_BPDLCD1_SHIFT 3
  4861. #define LCD_WF8B_BPDLCD25_MASK 0x8u
  4862. #define LCD_WF8B_BPDLCD25_SHIFT 3
  4863. #define LCD_WF8B_BPDLCD20_MASK 0x8u
  4864. #define LCD_WF8B_BPDLCD20_SHIFT 3
  4865. #define LCD_WF8B_BPDLCD2_MASK 0x8u
  4866. #define LCD_WF8B_BPDLCD2_SHIFT 3
  4867. #define LCD_WF8B_BPDLCD55_MASK 0x8u
  4868. #define LCD_WF8B_BPDLCD55_SHIFT 3
  4869. #define LCD_WF8B_BPDLCD59_MASK 0x8u
  4870. #define LCD_WF8B_BPDLCD59_SHIFT 3
  4871. #define LCD_WF8B_BPDLCD5_MASK 0x8u
  4872. #define LCD_WF8B_BPDLCD5_SHIFT 3
  4873. #define LCD_WF8B_BPDLCD19_MASK 0x8u
  4874. #define LCD_WF8B_BPDLCD19_SHIFT 3
  4875. #define LCD_WF8B_BPDLCD6_MASK 0x8u
  4876. #define LCD_WF8B_BPDLCD6_SHIFT 3
  4877. #define LCD_WF8B_BPDLCD26_MASK 0x8u
  4878. #define LCD_WF8B_BPDLCD26_SHIFT 3
  4879. #define LCD_WF8B_BPDLCD0_MASK 0x8u
  4880. #define LCD_WF8B_BPDLCD0_SHIFT 3
  4881. #define LCD_WF8B_BPDLCD50_MASK 0x8u
  4882. #define LCD_WF8B_BPDLCD50_SHIFT 3
  4883. #define LCD_WF8B_BPDLCD46_MASK 0x8u
  4884. #define LCD_WF8B_BPDLCD46_SHIFT 3
  4885. #define LCD_WF8B_BPDLCD18_MASK 0x8u
  4886. #define LCD_WF8B_BPDLCD18_SHIFT 3
  4887. #define LCD_WF8B_BPDLCD61_MASK 0x8u
  4888. #define LCD_WF8B_BPDLCD61_SHIFT 3
  4889. #define LCD_WF8B_BPDLCD9_MASK 0x8u
  4890. #define LCD_WF8B_BPDLCD9_SHIFT 3
  4891. #define LCD_WF8B_BPDLCD17_MASK 0x8u
  4892. #define LCD_WF8B_BPDLCD17_SHIFT 3
  4893. #define LCD_WF8B_BPDLCD27_MASK 0x8u
  4894. #define LCD_WF8B_BPDLCD27_SHIFT 3
  4895. #define LCD_WF8B_BPDLCD53_MASK 0x8u
  4896. #define LCD_WF8B_BPDLCD53_SHIFT 3
  4897. #define LCD_WF8B_BPDLCD51_MASK 0x8u
  4898. #define LCD_WF8B_BPDLCD51_SHIFT 3
  4899. #define LCD_WF8B_BPDLCD54_MASK 0x8u
  4900. #define LCD_WF8B_BPDLCD54_SHIFT 3
  4901. #define LCD_WF8B_BPDLCD13_MASK 0x8u
  4902. #define LCD_WF8B_BPDLCD13_SHIFT 3
  4903. #define LCD_WF8B_BPDLCD16_MASK 0x8u
  4904. #define LCD_WF8B_BPDLCD16_SHIFT 3
  4905. #define LCD_WF8B_BPDLCD32_MASK 0x8u
  4906. #define LCD_WF8B_BPDLCD32_SHIFT 3
  4907. #define LCD_WF8B_BPDLCD14_MASK 0x8u
  4908. #define LCD_WF8B_BPDLCD14_SHIFT 3
  4909. #define LCD_WF8B_BPDLCD28_MASK 0x8u
  4910. #define LCD_WF8B_BPDLCD28_SHIFT 3
  4911. #define LCD_WF8B_BPDLCD43_MASK 0x8u
  4912. #define LCD_WF8B_BPDLCD43_SHIFT 3
  4913. #define LCD_WF8B_BPDLCD4_MASK 0x8u
  4914. #define LCD_WF8B_BPDLCD4_SHIFT 3
  4915. #define LCD_WF8B_BPDLCD45_MASK 0x8u
  4916. #define LCD_WF8B_BPDLCD45_SHIFT 3
  4917. #define LCD_WF8B_BPDLCD8_MASK 0x8u
  4918. #define LCD_WF8B_BPDLCD8_SHIFT 3
  4919. #define LCD_WF8B_BPDLCD62_MASK 0x8u
  4920. #define LCD_WF8B_BPDLCD62_SHIFT 3
  4921. #define LCD_WF8B_BPDLCD33_MASK 0x8u
  4922. #define LCD_WF8B_BPDLCD33_SHIFT 3
  4923. #define LCD_WF8B_BPDLCD34_MASK 0x8u
  4924. #define LCD_WF8B_BPDLCD34_SHIFT 3
  4925. #define LCD_WF8B_BPDLCD29_MASK 0x8u
  4926. #define LCD_WF8B_BPDLCD29_SHIFT 3
  4927. #define LCD_WF8B_BPDLCD58_MASK 0x8u
  4928. #define LCD_WF8B_BPDLCD58_SHIFT 3
  4929. #define LCD_WF8B_BPDLCD57_MASK 0x8u
  4930. #define LCD_WF8B_BPDLCD57_SHIFT 3
  4931. #define LCD_WF8B_BPDLCD42_MASK 0x8u
  4932. #define LCD_WF8B_BPDLCD42_SHIFT 3
  4933. #define LCD_WF8B_BPDLCD35_MASK 0x8u
  4934. #define LCD_WF8B_BPDLCD35_SHIFT 3
  4935. #define LCD_WF8B_BPDLCD52_MASK 0x8u
  4936. #define LCD_WF8B_BPDLCD52_SHIFT 3
  4937. #define LCD_WF8B_BPDLCD7_MASK 0x8u
  4938. #define LCD_WF8B_BPDLCD7_SHIFT 3
  4939. #define LCD_WF8B_BPDLCD36_MASK 0x8u
  4940. #define LCD_WF8B_BPDLCD36_SHIFT 3
  4941. #define LCD_WF8B_BPDLCD30_MASK 0x8u
  4942. #define LCD_WF8B_BPDLCD30_SHIFT 3
  4943. #define LCD_WF8B_BPDLCD41_MASK 0x8u
  4944. #define LCD_WF8B_BPDLCD41_SHIFT 3
  4945. #define LCD_WF8B_BPDLCD37_MASK 0x8u
  4946. #define LCD_WF8B_BPDLCD37_SHIFT 3
  4947. #define LCD_WF8B_BPDLCD44_MASK 0x8u
  4948. #define LCD_WF8B_BPDLCD44_SHIFT 3
  4949. #define LCD_WF8B_BPDLCD63_MASK 0x8u
  4950. #define LCD_WF8B_BPDLCD63_SHIFT 3
  4951. #define LCD_WF8B_BPDLCD38_MASK 0x8u
  4952. #define LCD_WF8B_BPDLCD38_SHIFT 3
  4953. #define LCD_WF8B_BPDLCD56_MASK 0x8u
  4954. #define LCD_WF8B_BPDLCD56_SHIFT 3
  4955. #define LCD_WF8B_BPDLCD40_MASK 0x8u
  4956. #define LCD_WF8B_BPDLCD40_SHIFT 3
  4957. #define LCD_WF8B_BPDLCD31_MASK 0x8u
  4958. #define LCD_WF8B_BPDLCD31_SHIFT 3
  4959. #define LCD_WF8B_BPDLCD12_MASK 0x8u
  4960. #define LCD_WF8B_BPDLCD12_SHIFT 3
  4961. #define LCD_WF8B_BPDLCD39_MASK 0x8u
  4962. #define LCD_WF8B_BPDLCD39_SHIFT 3
  4963. #define LCD_WF8B_BPDLCD3_MASK 0x8u
  4964. #define LCD_WF8B_BPDLCD3_SHIFT 3
  4965. #define LCD_WF8B_BPDLCD11_MASK 0x8u
  4966. #define LCD_WF8B_BPDLCD11_SHIFT 3
  4967. #define LCD_WF8B_BPELCD12_MASK 0x10u
  4968. #define LCD_WF8B_BPELCD12_SHIFT 4
  4969. #define LCD_WF8B_BPELCD39_MASK 0x10u
  4970. #define LCD_WF8B_BPELCD39_SHIFT 4
  4971. #define LCD_WF8B_BPELCD3_MASK 0x10u
  4972. #define LCD_WF8B_BPELCD3_SHIFT 4
  4973. #define LCD_WF8B_BPELCD38_MASK 0x10u
  4974. #define LCD_WF8B_BPELCD38_SHIFT 4
  4975. #define LCD_WF8B_BPELCD40_MASK 0x10u
  4976. #define LCD_WF8B_BPELCD40_SHIFT 4
  4977. #define LCD_WF8B_BPELCD37_MASK 0x10u
  4978. #define LCD_WF8B_BPELCD37_SHIFT 4
  4979. #define LCD_WF8B_BPELCD41_MASK 0x10u
  4980. #define LCD_WF8B_BPELCD41_SHIFT 4
  4981. #define LCD_WF8B_BPELCD36_MASK 0x10u
  4982. #define LCD_WF8B_BPELCD36_SHIFT 4
  4983. #define LCD_WF8B_BPELCD8_MASK 0x10u
  4984. #define LCD_WF8B_BPELCD8_SHIFT 4
  4985. #define LCD_WF8B_BPELCD35_MASK 0x10u
  4986. #define LCD_WF8B_BPELCD35_SHIFT 4
  4987. #define LCD_WF8B_BPELCD42_MASK 0x10u
  4988. #define LCD_WF8B_BPELCD42_SHIFT 4
  4989. #define LCD_WF8B_BPELCD34_MASK 0x10u
  4990. #define LCD_WF8B_BPELCD34_SHIFT 4
  4991. #define LCD_WF8B_BPELCD33_MASK 0x10u
  4992. #define LCD_WF8B_BPELCD33_SHIFT 4
  4993. #define LCD_WF8B_BPELCD11_MASK 0x10u
  4994. #define LCD_WF8B_BPELCD11_SHIFT 4
  4995. #define LCD_WF8B_BPELCD43_MASK 0x10u
  4996. #define LCD_WF8B_BPELCD43_SHIFT 4
  4997. #define LCD_WF8B_BPELCD32_MASK 0x10u
  4998. #define LCD_WF8B_BPELCD32_SHIFT 4
  4999. #define LCD_WF8B_BPELCD31_MASK 0x10u
  5000. #define LCD_WF8B_BPELCD31_SHIFT 4
  5001. #define LCD_WF8B_BPELCD44_MASK 0x10u
  5002. #define LCD_WF8B_BPELCD44_SHIFT 4
  5003. #define LCD_WF8B_BPELCD30_MASK 0x10u
  5004. #define LCD_WF8B_BPELCD30_SHIFT 4
  5005. #define LCD_WF8B_BPELCD29_MASK 0x10u
  5006. #define LCD_WF8B_BPELCD29_SHIFT 4
  5007. #define LCD_WF8B_BPELCD7_MASK 0x10u
  5008. #define LCD_WF8B_BPELCD7_SHIFT 4
  5009. #define LCD_WF8B_BPELCD45_MASK 0x10u
  5010. #define LCD_WF8B_BPELCD45_SHIFT 4
  5011. #define LCD_WF8B_BPELCD28_MASK 0x10u
  5012. #define LCD_WF8B_BPELCD28_SHIFT 4
  5013. #define LCD_WF8B_BPELCD2_MASK 0x10u
  5014. #define LCD_WF8B_BPELCD2_SHIFT 4
  5015. #define LCD_WF8B_BPELCD27_MASK 0x10u
  5016. #define LCD_WF8B_BPELCD27_SHIFT 4
  5017. #define LCD_WF8B_BPELCD46_MASK 0x10u
  5018. #define LCD_WF8B_BPELCD46_SHIFT 4
  5019. #define LCD_WF8B_BPELCD26_MASK 0x10u
  5020. #define LCD_WF8B_BPELCD26_SHIFT 4
  5021. #define LCD_WF8B_BPELCD10_MASK 0x10u
  5022. #define LCD_WF8B_BPELCD10_SHIFT 4
  5023. #define LCD_WF8B_BPELCD13_MASK 0x10u
  5024. #define LCD_WF8B_BPELCD13_SHIFT 4
  5025. #define LCD_WF8B_BPELCD25_MASK 0x10u
  5026. #define LCD_WF8B_BPELCD25_SHIFT 4
  5027. #define LCD_WF8B_BPELCD5_MASK 0x10u
  5028. #define LCD_WF8B_BPELCD5_SHIFT 4
  5029. #define LCD_WF8B_BPELCD24_MASK 0x10u
  5030. #define LCD_WF8B_BPELCD24_SHIFT 4
  5031. #define LCD_WF8B_BPELCD47_MASK 0x10u
  5032. #define LCD_WF8B_BPELCD47_SHIFT 4
  5033. #define LCD_WF8B_BPELCD23_MASK 0x10u
  5034. #define LCD_WF8B_BPELCD23_SHIFT 4
  5035. #define LCD_WF8B_BPELCD22_MASK 0x10u
  5036. #define LCD_WF8B_BPELCD22_SHIFT 4
  5037. #define LCD_WF8B_BPELCD48_MASK 0x10u
  5038. #define LCD_WF8B_BPELCD48_SHIFT 4
  5039. #define LCD_WF8B_BPELCD21_MASK 0x10u
  5040. #define LCD_WF8B_BPELCD21_SHIFT 4
  5041. #define LCD_WF8B_BPELCD49_MASK 0x10u
  5042. #define LCD_WF8B_BPELCD49_SHIFT 4
  5043. #define LCD_WF8B_BPELCD20_MASK 0x10u
  5044. #define LCD_WF8B_BPELCD20_SHIFT 4
  5045. #define LCD_WF8B_BPELCD19_MASK 0x10u
  5046. #define LCD_WF8B_BPELCD19_SHIFT 4
  5047. #define LCD_WF8B_BPELCD9_MASK 0x10u
  5048. #define LCD_WF8B_BPELCD9_SHIFT 4
  5049. #define LCD_WF8B_BPELCD50_MASK 0x10u
  5050. #define LCD_WF8B_BPELCD50_SHIFT 4
  5051. #define LCD_WF8B_BPELCD18_MASK 0x10u
  5052. #define LCD_WF8B_BPELCD18_SHIFT 4
  5053. #define LCD_WF8B_BPELCD6_MASK 0x10u
  5054. #define LCD_WF8B_BPELCD6_SHIFT 4
  5055. #define LCD_WF8B_BPELCD17_MASK 0x10u
  5056. #define LCD_WF8B_BPELCD17_SHIFT 4
  5057. #define LCD_WF8B_BPELCD51_MASK 0x10u
  5058. #define LCD_WF8B_BPELCD51_SHIFT 4
  5059. #define LCD_WF8B_BPELCD16_MASK 0x10u
  5060. #define LCD_WF8B_BPELCD16_SHIFT 4
  5061. #define LCD_WF8B_BPELCD56_MASK 0x10u
  5062. #define LCD_WF8B_BPELCD56_SHIFT 4
  5063. #define LCD_WF8B_BPELCD57_MASK 0x10u
  5064. #define LCD_WF8B_BPELCD57_SHIFT 4
  5065. #define LCD_WF8B_BPELCD52_MASK 0x10u
  5066. #define LCD_WF8B_BPELCD52_SHIFT 4
  5067. #define LCD_WF8B_BPELCD1_MASK 0x10u
  5068. #define LCD_WF8B_BPELCD1_SHIFT 4
  5069. #define LCD_WF8B_BPELCD58_MASK 0x10u
  5070. #define LCD_WF8B_BPELCD58_SHIFT 4
  5071. #define LCD_WF8B_BPELCD59_MASK 0x10u
  5072. #define LCD_WF8B_BPELCD59_SHIFT 4
  5073. #define LCD_WF8B_BPELCD53_MASK 0x10u
  5074. #define LCD_WF8B_BPELCD53_SHIFT 4
  5075. #define LCD_WF8B_BPELCD14_MASK 0x10u
  5076. #define LCD_WF8B_BPELCD14_SHIFT 4
  5077. #define LCD_WF8B_BPELCD0_MASK 0x10u
  5078. #define LCD_WF8B_BPELCD0_SHIFT 4
  5079. #define LCD_WF8B_BPELCD60_MASK 0x10u
  5080. #define LCD_WF8B_BPELCD60_SHIFT 4
  5081. #define LCD_WF8B_BPELCD15_MASK 0x10u
  5082. #define LCD_WF8B_BPELCD15_SHIFT 4
  5083. #define LCD_WF8B_BPELCD61_MASK 0x10u
  5084. #define LCD_WF8B_BPELCD61_SHIFT 4
  5085. #define LCD_WF8B_BPELCD54_MASK 0x10u
  5086. #define LCD_WF8B_BPELCD54_SHIFT 4
  5087. #define LCD_WF8B_BPELCD62_MASK 0x10u
  5088. #define LCD_WF8B_BPELCD62_SHIFT 4
  5089. #define LCD_WF8B_BPELCD63_MASK 0x10u
  5090. #define LCD_WF8B_BPELCD63_SHIFT 4
  5091. #define LCD_WF8B_BPELCD55_MASK 0x10u
  5092. #define LCD_WF8B_BPELCD55_SHIFT 4
  5093. #define LCD_WF8B_BPELCD4_MASK 0x10u
  5094. #define LCD_WF8B_BPELCD4_SHIFT 4
  5095. #define LCD_WF8B_BPFLCD13_MASK 0x20u
  5096. #define LCD_WF8B_BPFLCD13_SHIFT 5
  5097. #define LCD_WF8B_BPFLCD39_MASK 0x20u
  5098. #define LCD_WF8B_BPFLCD39_SHIFT 5
  5099. #define LCD_WF8B_BPFLCD55_MASK 0x20u
  5100. #define LCD_WF8B_BPFLCD55_SHIFT 5
  5101. #define LCD_WF8B_BPFLCD47_MASK 0x20u
  5102. #define LCD_WF8B_BPFLCD47_SHIFT 5
  5103. #define LCD_WF8B_BPFLCD63_MASK 0x20u
  5104. #define LCD_WF8B_BPFLCD63_SHIFT 5
  5105. #define LCD_WF8B_BPFLCD43_MASK 0x20u
  5106. #define LCD_WF8B_BPFLCD43_SHIFT 5
  5107. #define LCD_WF8B_BPFLCD5_MASK 0x20u
  5108. #define LCD_WF8B_BPFLCD5_SHIFT 5
  5109. #define LCD_WF8B_BPFLCD62_MASK 0x20u
  5110. #define LCD_WF8B_BPFLCD62_SHIFT 5
  5111. #define LCD_WF8B_BPFLCD14_MASK 0x20u
  5112. #define LCD_WF8B_BPFLCD14_SHIFT 5
  5113. #define LCD_WF8B_BPFLCD24_MASK 0x20u
  5114. #define LCD_WF8B_BPFLCD24_SHIFT 5
  5115. #define LCD_WF8B_BPFLCD54_MASK 0x20u
  5116. #define LCD_WF8B_BPFLCD54_SHIFT 5
  5117. #define LCD_WF8B_BPFLCD15_MASK 0x20u
  5118. #define LCD_WF8B_BPFLCD15_SHIFT 5
  5119. #define LCD_WF8B_BPFLCD32_MASK 0x20u
  5120. #define LCD_WF8B_BPFLCD32_SHIFT 5
  5121. #define LCD_WF8B_BPFLCD61_MASK 0x20u
  5122. #define LCD_WF8B_BPFLCD61_SHIFT 5
  5123. #define LCD_WF8B_BPFLCD25_MASK 0x20u
  5124. #define LCD_WF8B_BPFLCD25_SHIFT 5
  5125. #define LCD_WF8B_BPFLCD60_MASK 0x20u
  5126. #define LCD_WF8B_BPFLCD60_SHIFT 5
  5127. #define LCD_WF8B_BPFLCD41_MASK 0x20u
  5128. #define LCD_WF8B_BPFLCD41_SHIFT 5
  5129. #define LCD_WF8B_BPFLCD33_MASK 0x20u
  5130. #define LCD_WF8B_BPFLCD33_SHIFT 5
  5131. #define LCD_WF8B_BPFLCD53_MASK 0x20u
  5132. #define LCD_WF8B_BPFLCD53_SHIFT 5
  5133. #define LCD_WF8B_BPFLCD59_MASK 0x20u
  5134. #define LCD_WF8B_BPFLCD59_SHIFT 5
  5135. #define LCD_WF8B_BPFLCD0_MASK 0x20u
  5136. #define LCD_WF8B_BPFLCD0_SHIFT 5
  5137. #define LCD_WF8B_BPFLCD46_MASK 0x20u
  5138. #define LCD_WF8B_BPFLCD46_SHIFT 5
  5139. #define LCD_WF8B_BPFLCD58_MASK 0x20u
  5140. #define LCD_WF8B_BPFLCD58_SHIFT 5
  5141. #define LCD_WF8B_BPFLCD26_MASK 0x20u
  5142. #define LCD_WF8B_BPFLCD26_SHIFT 5
  5143. #define LCD_WF8B_BPFLCD36_MASK 0x20u
  5144. #define LCD_WF8B_BPFLCD36_SHIFT 5
  5145. #define LCD_WF8B_BPFLCD10_MASK 0x20u
  5146. #define LCD_WF8B_BPFLCD10_SHIFT 5
  5147. #define LCD_WF8B_BPFLCD52_MASK 0x20u
  5148. #define LCD_WF8B_BPFLCD52_SHIFT 5
  5149. #define LCD_WF8B_BPFLCD57_MASK 0x20u
  5150. #define LCD_WF8B_BPFLCD57_SHIFT 5
  5151. #define LCD_WF8B_BPFLCD27_MASK 0x20u
  5152. #define LCD_WF8B_BPFLCD27_SHIFT 5
  5153. #define LCD_WF8B_BPFLCD11_MASK 0x20u
  5154. #define LCD_WF8B_BPFLCD11_SHIFT 5
  5155. #define LCD_WF8B_BPFLCD56_MASK 0x20u
  5156. #define LCD_WF8B_BPFLCD56_SHIFT 5
  5157. #define LCD_WF8B_BPFLCD1_MASK 0x20u
  5158. #define LCD_WF8B_BPFLCD1_SHIFT 5
  5159. #define LCD_WF8B_BPFLCD8_MASK 0x20u
  5160. #define LCD_WF8B_BPFLCD8_SHIFT 5
  5161. #define LCD_WF8B_BPFLCD40_MASK 0x20u
  5162. #define LCD_WF8B_BPFLCD40_SHIFT 5
  5163. #define LCD_WF8B_BPFLCD51_MASK 0x20u
  5164. #define LCD_WF8B_BPFLCD51_SHIFT 5
  5165. #define LCD_WF8B_BPFLCD16_MASK 0x20u
  5166. #define LCD_WF8B_BPFLCD16_SHIFT 5
  5167. #define LCD_WF8B_BPFLCD45_MASK 0x20u
  5168. #define LCD_WF8B_BPFLCD45_SHIFT 5
  5169. #define LCD_WF8B_BPFLCD6_MASK 0x20u
  5170. #define LCD_WF8B_BPFLCD6_SHIFT 5
  5171. #define LCD_WF8B_BPFLCD17_MASK 0x20u
  5172. #define LCD_WF8B_BPFLCD17_SHIFT 5
  5173. #define LCD_WF8B_BPFLCD28_MASK 0x20u
  5174. #define LCD_WF8B_BPFLCD28_SHIFT 5
  5175. #define LCD_WF8B_BPFLCD42_MASK 0x20u
  5176. #define LCD_WF8B_BPFLCD42_SHIFT 5
  5177. #define LCD_WF8B_BPFLCD29_MASK 0x20u
  5178. #define LCD_WF8B_BPFLCD29_SHIFT 5
  5179. #define LCD_WF8B_BPFLCD50_MASK 0x20u
  5180. #define LCD_WF8B_BPFLCD50_SHIFT 5
  5181. #define LCD_WF8B_BPFLCD18_MASK 0x20u
  5182. #define LCD_WF8B_BPFLCD18_SHIFT 5
  5183. #define LCD_WF8B_BPFLCD34_MASK 0x20u
  5184. #define LCD_WF8B_BPFLCD34_SHIFT 5
  5185. #define LCD_WF8B_BPFLCD19_MASK 0x20u
  5186. #define LCD_WF8B_BPFLCD19_SHIFT 5
  5187. #define LCD_WF8B_BPFLCD2_MASK 0x20u
  5188. #define LCD_WF8B_BPFLCD2_SHIFT 5
  5189. #define LCD_WF8B_BPFLCD9_MASK 0x20u
  5190. #define LCD_WF8B_BPFLCD9_SHIFT 5
  5191. #define LCD_WF8B_BPFLCD3_MASK 0x20u
  5192. #define LCD_WF8B_BPFLCD3_SHIFT 5
  5193. #define LCD_WF8B_BPFLCD37_MASK 0x20u
  5194. #define LCD_WF8B_BPFLCD37_SHIFT 5
  5195. #define LCD_WF8B_BPFLCD49_MASK 0x20u
  5196. #define LCD_WF8B_BPFLCD49_SHIFT 5
  5197. #define LCD_WF8B_BPFLCD20_MASK 0x20u
  5198. #define LCD_WF8B_BPFLCD20_SHIFT 5
  5199. #define LCD_WF8B_BPFLCD44_MASK 0x20u
  5200. #define LCD_WF8B_BPFLCD44_SHIFT 5
  5201. #define LCD_WF8B_BPFLCD30_MASK 0x20u
  5202. #define LCD_WF8B_BPFLCD30_SHIFT 5
  5203. #define LCD_WF8B_BPFLCD21_MASK 0x20u
  5204. #define LCD_WF8B_BPFLCD21_SHIFT 5
  5205. #define LCD_WF8B_BPFLCD35_MASK 0x20u
  5206. #define LCD_WF8B_BPFLCD35_SHIFT 5
  5207. #define LCD_WF8B_BPFLCD4_MASK 0x20u
  5208. #define LCD_WF8B_BPFLCD4_SHIFT 5
  5209. #define LCD_WF8B_BPFLCD31_MASK 0x20u
  5210. #define LCD_WF8B_BPFLCD31_SHIFT 5
  5211. #define LCD_WF8B_BPFLCD48_MASK 0x20u
  5212. #define LCD_WF8B_BPFLCD48_SHIFT 5
  5213. #define LCD_WF8B_BPFLCD7_MASK 0x20u
  5214. #define LCD_WF8B_BPFLCD7_SHIFT 5
  5215. #define LCD_WF8B_BPFLCD22_MASK 0x20u
  5216. #define LCD_WF8B_BPFLCD22_SHIFT 5
  5217. #define LCD_WF8B_BPFLCD38_MASK 0x20u
  5218. #define LCD_WF8B_BPFLCD38_SHIFT 5
  5219. #define LCD_WF8B_BPFLCD12_MASK 0x20u
  5220. #define LCD_WF8B_BPFLCD12_SHIFT 5
  5221. #define LCD_WF8B_BPFLCD23_MASK 0x20u
  5222. #define LCD_WF8B_BPFLCD23_SHIFT 5
  5223. #define LCD_WF8B_BPGLCD14_MASK 0x40u
  5224. #define LCD_WF8B_BPGLCD14_SHIFT 6
  5225. #define LCD_WF8B_BPGLCD55_MASK 0x40u
  5226. #define LCD_WF8B_BPGLCD55_SHIFT 6
  5227. #define LCD_WF8B_BPGLCD63_MASK 0x40u
  5228. #define LCD_WF8B_BPGLCD63_SHIFT 6
  5229. #define LCD_WF8B_BPGLCD15_MASK 0x40u
  5230. #define LCD_WF8B_BPGLCD15_SHIFT 6
  5231. #define LCD_WF8B_BPGLCD62_MASK 0x40u
  5232. #define LCD_WF8B_BPGLCD62_SHIFT 6
  5233. #define LCD_WF8B_BPGLCD54_MASK 0x40u
  5234. #define LCD_WF8B_BPGLCD54_SHIFT 6
  5235. #define LCD_WF8B_BPGLCD61_MASK 0x40u
  5236. #define LCD_WF8B_BPGLCD61_SHIFT 6
  5237. #define LCD_WF8B_BPGLCD60_MASK 0x40u
  5238. #define LCD_WF8B_BPGLCD60_SHIFT 6
  5239. #define LCD_WF8B_BPGLCD59_MASK 0x40u
  5240. #define LCD_WF8B_BPGLCD59_SHIFT 6
  5241. #define LCD_WF8B_BPGLCD53_MASK 0x40u
  5242. #define LCD_WF8B_BPGLCD53_SHIFT 6
  5243. #define LCD_WF8B_BPGLCD58_MASK 0x40u
  5244. #define LCD_WF8B_BPGLCD58_SHIFT 6
  5245. #define LCD_WF8B_BPGLCD0_MASK 0x40u
  5246. #define LCD_WF8B_BPGLCD0_SHIFT 6
  5247. #define LCD_WF8B_BPGLCD57_MASK 0x40u
  5248. #define LCD_WF8B_BPGLCD57_SHIFT 6
  5249. #define LCD_WF8B_BPGLCD52_MASK 0x40u
  5250. #define LCD_WF8B_BPGLCD52_SHIFT 6
  5251. #define LCD_WF8B_BPGLCD7_MASK 0x40u
  5252. #define LCD_WF8B_BPGLCD7_SHIFT 6
  5253. #define LCD_WF8B_BPGLCD56_MASK 0x40u
  5254. #define LCD_WF8B_BPGLCD56_SHIFT 6
  5255. #define LCD_WF8B_BPGLCD6_MASK 0x40u
  5256. #define LCD_WF8B_BPGLCD6_SHIFT 6
  5257. #define LCD_WF8B_BPGLCD51_MASK 0x40u
  5258. #define LCD_WF8B_BPGLCD51_SHIFT 6
  5259. #define LCD_WF8B_BPGLCD16_MASK 0x40u
  5260. #define LCD_WF8B_BPGLCD16_SHIFT 6
  5261. #define LCD_WF8B_BPGLCD1_MASK 0x40u
  5262. #define LCD_WF8B_BPGLCD1_SHIFT 6
  5263. #define LCD_WF8B_BPGLCD17_MASK 0x40u
  5264. #define LCD_WF8B_BPGLCD17_SHIFT 6
  5265. #define LCD_WF8B_BPGLCD50_MASK 0x40u
  5266. #define LCD_WF8B_BPGLCD50_SHIFT 6
  5267. #define LCD_WF8B_BPGLCD18_MASK 0x40u
  5268. #define LCD_WF8B_BPGLCD18_SHIFT 6
  5269. #define LCD_WF8B_BPGLCD19_MASK 0x40u
  5270. #define LCD_WF8B_BPGLCD19_SHIFT 6
  5271. #define LCD_WF8B_BPGLCD8_MASK 0x40u
  5272. #define LCD_WF8B_BPGLCD8_SHIFT 6
  5273. #define LCD_WF8B_BPGLCD49_MASK 0x40u
  5274. #define LCD_WF8B_BPGLCD49_SHIFT 6
  5275. #define LCD_WF8B_BPGLCD20_MASK 0x40u
  5276. #define LCD_WF8B_BPGLCD20_SHIFT 6
  5277. #define LCD_WF8B_BPGLCD9_MASK 0x40u
  5278. #define LCD_WF8B_BPGLCD9_SHIFT 6
  5279. #define LCD_WF8B_BPGLCD21_MASK 0x40u
  5280. #define LCD_WF8B_BPGLCD21_SHIFT 6
  5281. #define LCD_WF8B_BPGLCD13_MASK 0x40u
  5282. #define LCD_WF8B_BPGLCD13_SHIFT 6
  5283. #define LCD_WF8B_BPGLCD48_MASK 0x40u
  5284. #define LCD_WF8B_BPGLCD48_SHIFT 6
  5285. #define LCD_WF8B_BPGLCD22_MASK 0x40u
  5286. #define LCD_WF8B_BPGLCD22_SHIFT 6
  5287. #define LCD_WF8B_BPGLCD5_MASK 0x40u
  5288. #define LCD_WF8B_BPGLCD5_SHIFT 6
  5289. #define LCD_WF8B_BPGLCD47_MASK 0x40u
  5290. #define LCD_WF8B_BPGLCD47_SHIFT 6
  5291. #define LCD_WF8B_BPGLCD23_MASK 0x40u
  5292. #define LCD_WF8B_BPGLCD23_SHIFT 6
  5293. #define LCD_WF8B_BPGLCD24_MASK 0x40u
  5294. #define LCD_WF8B_BPGLCD24_SHIFT 6
  5295. #define LCD_WF8B_BPGLCD25_MASK 0x40u
  5296. #define LCD_WF8B_BPGLCD25_SHIFT 6
  5297. #define LCD_WF8B_BPGLCD46_MASK 0x40u
  5298. #define LCD_WF8B_BPGLCD46_SHIFT 6
  5299. #define LCD_WF8B_BPGLCD26_MASK 0x40u
  5300. #define LCD_WF8B_BPGLCD26_SHIFT 6
  5301. #define LCD_WF8B_BPGLCD27_MASK 0x40u
  5302. #define LCD_WF8B_BPGLCD27_SHIFT 6
  5303. #define LCD_WF8B_BPGLCD10_MASK 0x40u
  5304. #define LCD_WF8B_BPGLCD10_SHIFT 6
  5305. #define LCD_WF8B_BPGLCD45_MASK 0x40u
  5306. #define LCD_WF8B_BPGLCD45_SHIFT 6
  5307. #define LCD_WF8B_BPGLCD28_MASK 0x40u
  5308. #define LCD_WF8B_BPGLCD28_SHIFT 6
  5309. #define LCD_WF8B_BPGLCD29_MASK 0x40u
  5310. #define LCD_WF8B_BPGLCD29_SHIFT 6
  5311. #define LCD_WF8B_BPGLCD4_MASK 0x40u
  5312. #define LCD_WF8B_BPGLCD4_SHIFT 6
  5313. #define LCD_WF8B_BPGLCD44_MASK 0x40u
  5314. #define LCD_WF8B_BPGLCD44_SHIFT 6
  5315. #define LCD_WF8B_BPGLCD30_MASK 0x40u
  5316. #define LCD_WF8B_BPGLCD30_SHIFT 6
  5317. #define LCD_WF8B_BPGLCD2_MASK 0x40u
  5318. #define LCD_WF8B_BPGLCD2_SHIFT 6
  5319. #define LCD_WF8B_BPGLCD31_MASK 0x40u
  5320. #define LCD_WF8B_BPGLCD31_SHIFT 6
  5321. #define LCD_WF8B_BPGLCD43_MASK 0x40u
  5322. #define LCD_WF8B_BPGLCD43_SHIFT 6
  5323. #define LCD_WF8B_BPGLCD32_MASK 0x40u
  5324. #define LCD_WF8B_BPGLCD32_SHIFT 6
  5325. #define LCD_WF8B_BPGLCD33_MASK 0x40u
  5326. #define LCD_WF8B_BPGLCD33_SHIFT 6
  5327. #define LCD_WF8B_BPGLCD42_MASK 0x40u
  5328. #define LCD_WF8B_BPGLCD42_SHIFT 6
  5329. #define LCD_WF8B_BPGLCD34_MASK 0x40u
  5330. #define LCD_WF8B_BPGLCD34_SHIFT 6
  5331. #define LCD_WF8B_BPGLCD11_MASK 0x40u
  5332. #define LCD_WF8B_BPGLCD11_SHIFT 6
  5333. #define LCD_WF8B_BPGLCD35_MASK 0x40u
  5334. #define LCD_WF8B_BPGLCD35_SHIFT 6
  5335. #define LCD_WF8B_BPGLCD12_MASK 0x40u
  5336. #define LCD_WF8B_BPGLCD12_SHIFT 6
  5337. #define LCD_WF8B_BPGLCD41_MASK 0x40u
  5338. #define LCD_WF8B_BPGLCD41_SHIFT 6
  5339. #define LCD_WF8B_BPGLCD36_MASK 0x40u
  5340. #define LCD_WF8B_BPGLCD36_SHIFT 6
  5341. #define LCD_WF8B_BPGLCD3_MASK 0x40u
  5342. #define LCD_WF8B_BPGLCD3_SHIFT 6
  5343. #define LCD_WF8B_BPGLCD37_MASK 0x40u
  5344. #define LCD_WF8B_BPGLCD37_SHIFT 6
  5345. #define LCD_WF8B_BPGLCD40_MASK 0x40u
  5346. #define LCD_WF8B_BPGLCD40_SHIFT 6
  5347. #define LCD_WF8B_BPGLCD38_MASK 0x40u
  5348. #define LCD_WF8B_BPGLCD38_SHIFT 6
  5349. #define LCD_WF8B_BPGLCD39_MASK 0x40u
  5350. #define LCD_WF8B_BPGLCD39_SHIFT 6
  5351. #define LCD_WF8B_BPHLCD63_MASK 0x80u
  5352. #define LCD_WF8B_BPHLCD63_SHIFT 7
  5353. #define LCD_WF8B_BPHLCD62_MASK 0x80u
  5354. #define LCD_WF8B_BPHLCD62_SHIFT 7
  5355. #define LCD_WF8B_BPHLCD61_MASK 0x80u
  5356. #define LCD_WF8B_BPHLCD61_SHIFT 7
  5357. #define LCD_WF8B_BPHLCD60_MASK 0x80u
  5358. #define LCD_WF8B_BPHLCD60_SHIFT 7
  5359. #define LCD_WF8B_BPHLCD59_MASK 0x80u
  5360. #define LCD_WF8B_BPHLCD59_SHIFT 7
  5361. #define LCD_WF8B_BPHLCD58_MASK 0x80u
  5362. #define LCD_WF8B_BPHLCD58_SHIFT 7
  5363. #define LCD_WF8B_BPHLCD57_MASK 0x80u
  5364. #define LCD_WF8B_BPHLCD57_SHIFT 7
  5365. #define LCD_WF8B_BPHLCD0_MASK 0x80u
  5366. #define LCD_WF8B_BPHLCD0_SHIFT 7
  5367. #define LCD_WF8B_BPHLCD56_MASK 0x80u
  5368. #define LCD_WF8B_BPHLCD56_SHIFT 7
  5369. #define LCD_WF8B_BPHLCD55_MASK 0x80u
  5370. #define LCD_WF8B_BPHLCD55_SHIFT 7
  5371. #define LCD_WF8B_BPHLCD54_MASK 0x80u
  5372. #define LCD_WF8B_BPHLCD54_SHIFT 7
  5373. #define LCD_WF8B_BPHLCD53_MASK 0x80u
  5374. #define LCD_WF8B_BPHLCD53_SHIFT 7
  5375. #define LCD_WF8B_BPHLCD52_MASK 0x80u
  5376. #define LCD_WF8B_BPHLCD52_SHIFT 7
  5377. #define LCD_WF8B_BPHLCD51_MASK 0x80u
  5378. #define LCD_WF8B_BPHLCD51_SHIFT 7
  5379. #define LCD_WF8B_BPHLCD50_MASK 0x80u
  5380. #define LCD_WF8B_BPHLCD50_SHIFT 7
  5381. #define LCD_WF8B_BPHLCD1_MASK 0x80u
  5382. #define LCD_WF8B_BPHLCD1_SHIFT 7
  5383. #define LCD_WF8B_BPHLCD49_MASK 0x80u
  5384. #define LCD_WF8B_BPHLCD49_SHIFT 7
  5385. #define LCD_WF8B_BPHLCD48_MASK 0x80u
  5386. #define LCD_WF8B_BPHLCD48_SHIFT 7
  5387. #define LCD_WF8B_BPHLCD47_MASK 0x80u
  5388. #define LCD_WF8B_BPHLCD47_SHIFT 7
  5389. #define LCD_WF8B_BPHLCD46_MASK 0x80u
  5390. #define LCD_WF8B_BPHLCD46_SHIFT 7
  5391. #define LCD_WF8B_BPHLCD45_MASK 0x80u
  5392. #define LCD_WF8B_BPHLCD45_SHIFT 7
  5393. #define LCD_WF8B_BPHLCD44_MASK 0x80u
  5394. #define LCD_WF8B_BPHLCD44_SHIFT 7
  5395. #define LCD_WF8B_BPHLCD43_MASK 0x80u
  5396. #define LCD_WF8B_BPHLCD43_SHIFT 7
  5397. #define LCD_WF8B_BPHLCD2_MASK 0x80u
  5398. #define LCD_WF8B_BPHLCD2_SHIFT 7
  5399. #define LCD_WF8B_BPHLCD42_MASK 0x80u
  5400. #define LCD_WF8B_BPHLCD42_SHIFT 7
  5401. #define LCD_WF8B_BPHLCD41_MASK 0x80u
  5402. #define LCD_WF8B_BPHLCD41_SHIFT 7
  5403. #define LCD_WF8B_BPHLCD40_MASK 0x80u
  5404. #define LCD_WF8B_BPHLCD40_SHIFT 7
  5405. #define LCD_WF8B_BPHLCD39_MASK 0x80u
  5406. #define LCD_WF8B_BPHLCD39_SHIFT 7
  5407. #define LCD_WF8B_BPHLCD38_MASK 0x80u
  5408. #define LCD_WF8B_BPHLCD38_SHIFT 7
  5409. #define LCD_WF8B_BPHLCD37_MASK 0x80u
  5410. #define LCD_WF8B_BPHLCD37_SHIFT 7
  5411. #define LCD_WF8B_BPHLCD36_MASK 0x80u
  5412. #define LCD_WF8B_BPHLCD36_SHIFT 7
  5413. #define LCD_WF8B_BPHLCD3_MASK 0x80u
  5414. #define LCD_WF8B_BPHLCD3_SHIFT 7
  5415. #define LCD_WF8B_BPHLCD35_MASK 0x80u
  5416. #define LCD_WF8B_BPHLCD35_SHIFT 7
  5417. #define LCD_WF8B_BPHLCD34_MASK 0x80u
  5418. #define LCD_WF8B_BPHLCD34_SHIFT 7
  5419. #define LCD_WF8B_BPHLCD33_MASK 0x80u
  5420. #define LCD_WF8B_BPHLCD33_SHIFT 7
  5421. #define LCD_WF8B_BPHLCD32_MASK 0x80u
  5422. #define LCD_WF8B_BPHLCD32_SHIFT 7
  5423. #define LCD_WF8B_BPHLCD31_MASK 0x80u
  5424. #define LCD_WF8B_BPHLCD31_SHIFT 7
  5425. #define LCD_WF8B_BPHLCD30_MASK 0x80u
  5426. #define LCD_WF8B_BPHLCD30_SHIFT 7
  5427. #define LCD_WF8B_BPHLCD29_MASK 0x80u
  5428. #define LCD_WF8B_BPHLCD29_SHIFT 7
  5429. #define LCD_WF8B_BPHLCD4_MASK 0x80u
  5430. #define LCD_WF8B_BPHLCD4_SHIFT 7
  5431. #define LCD_WF8B_BPHLCD28_MASK 0x80u
  5432. #define LCD_WF8B_BPHLCD28_SHIFT 7
  5433. #define LCD_WF8B_BPHLCD27_MASK 0x80u
  5434. #define LCD_WF8B_BPHLCD27_SHIFT 7
  5435. #define LCD_WF8B_BPHLCD26_MASK 0x80u
  5436. #define LCD_WF8B_BPHLCD26_SHIFT 7
  5437. #define LCD_WF8B_BPHLCD25_MASK 0x80u
  5438. #define LCD_WF8B_BPHLCD25_SHIFT 7
  5439. #define LCD_WF8B_BPHLCD24_MASK 0x80u
  5440. #define LCD_WF8B_BPHLCD24_SHIFT 7
  5441. #define LCD_WF8B_BPHLCD23_MASK 0x80u
  5442. #define LCD_WF8B_BPHLCD23_SHIFT 7
  5443. #define LCD_WF8B_BPHLCD22_MASK 0x80u
  5444. #define LCD_WF8B_BPHLCD22_SHIFT 7
  5445. #define LCD_WF8B_BPHLCD5_MASK 0x80u
  5446. #define LCD_WF8B_BPHLCD5_SHIFT 7
  5447. #define LCD_WF8B_BPHLCD21_MASK 0x80u
  5448. #define LCD_WF8B_BPHLCD21_SHIFT 7
  5449. #define LCD_WF8B_BPHLCD20_MASK 0x80u
  5450. #define LCD_WF8B_BPHLCD20_SHIFT 7
  5451. #define LCD_WF8B_BPHLCD19_MASK 0x80u
  5452. #define LCD_WF8B_BPHLCD19_SHIFT 7
  5453. #define LCD_WF8B_BPHLCD18_MASK 0x80u
  5454. #define LCD_WF8B_BPHLCD18_SHIFT 7
  5455. #define LCD_WF8B_BPHLCD17_MASK 0x80u
  5456. #define LCD_WF8B_BPHLCD17_SHIFT 7
  5457. #define LCD_WF8B_BPHLCD16_MASK 0x80u
  5458. #define LCD_WF8B_BPHLCD16_SHIFT 7
  5459. #define LCD_WF8B_BPHLCD15_MASK 0x80u
  5460. #define LCD_WF8B_BPHLCD15_SHIFT 7
  5461. #define LCD_WF8B_BPHLCD6_MASK 0x80u
  5462. #define LCD_WF8B_BPHLCD6_SHIFT 7
  5463. #define LCD_WF8B_BPHLCD14_MASK 0x80u
  5464. #define LCD_WF8B_BPHLCD14_SHIFT 7
  5465. #define LCD_WF8B_BPHLCD13_MASK 0x80u
  5466. #define LCD_WF8B_BPHLCD13_SHIFT 7
  5467. #define LCD_WF8B_BPHLCD12_MASK 0x80u
  5468. #define LCD_WF8B_BPHLCD12_SHIFT 7
  5469. #define LCD_WF8B_BPHLCD11_MASK 0x80u
  5470. #define LCD_WF8B_BPHLCD11_SHIFT 7
  5471. #define LCD_WF8B_BPHLCD10_MASK 0x80u
  5472. #define LCD_WF8B_BPHLCD10_SHIFT 7
  5473. #define LCD_WF8B_BPHLCD9_MASK 0x80u
  5474. #define LCD_WF8B_BPHLCD9_SHIFT 7
  5475. #define LCD_WF8B_BPHLCD8_MASK 0x80u
  5476. #define LCD_WF8B_BPHLCD8_SHIFT 7
  5477. #define LCD_WF8B_BPHLCD7_MASK 0x80u
  5478. #define LCD_WF8B_BPHLCD7_SHIFT 7
  5479. /*! \} */ /* end of group LCD_Register_Masks */
  5480. /* LCD - Peripheral instance base addresses */
  5481. /*! Peripheral LCD base address */
  5482. #define LCD_BASE (0x400BE000u)
  5483. /*! Peripheral LCD base pointer */
  5484. #define LCD ((LCD_Type *)LCD_BASE)
  5485. /*! \} */ /* end of group LCD_Peripheral_Access_Layer */
  5486. /* ----------------------------------------------------------------------------
  5487. -- LLWU Peripheral Access Layer
  5488. ---------------------------------------------------------------------------- */
  5489. /*! \addtogroup LLWU_Peripheral_Access_Layer LLWU Peripheral Access Layer */
  5490. /*! \{ */
  5491. /*! LLWU - Register Layout Typedef */
  5492. typedef struct {
  5493. __IO uint8_t PE1; /*!< LLWU Pin Enable 1 Register, offset: 0x0 */
  5494. __IO uint8_t PE2; /*!< LLWU Pin Enable 2 Register, offset: 0x1 */
  5495. __IO uint8_t PE3; /*!< LLWU Pin Enable 3 Register, offset: 0x2 */
  5496. __IO uint8_t PE4; /*!< LLWU Pin Enable 4 Register, offset: 0x3 */
  5497. __IO uint8_t ME; /*!< LLWU Module Enable Register, offset: 0x4 */
  5498. __IO uint8_t F1; /*!< LLWU Flag 1 Register, offset: 0x5 */
  5499. __IO uint8_t F2; /*!< LLWU Flag 2 Register, offset: 0x6 */
  5500. __IO uint8_t F3; /*!< LLWU Flag 3 Register, offset: 0x7 */
  5501. __IO uint8_t CS; /*!< LLWU Control and Status Register, offset: 0x8 */
  5502. } LLWU_Type;
  5503. /* ----------------------------------------------------------------------------
  5504. -- LLWU Register Masks
  5505. ---------------------------------------------------------------------------- */
  5506. /*! \addtogroup LLWU_Register_Masks LLWU Register Masks */
  5507. /*! \{ */
  5508. /* PE1 Bit Fields */
  5509. #define LLWU_PE1_WUPE0_MASK 0x3u
  5510. #define LLWU_PE1_WUPE0_SHIFT 0
  5511. #define LLWU_PE1_WUPE0(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE0_SHIFT))&LLWU_PE1_WUPE0_MASK)
  5512. #define LLWU_PE1_WUPE1_MASK 0xCu
  5513. #define LLWU_PE1_WUPE1_SHIFT 2
  5514. #define LLWU_PE1_WUPE1(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE1_SHIFT))&LLWU_PE1_WUPE1_MASK)
  5515. #define LLWU_PE1_WUPE2_MASK 0x30u
  5516. #define LLWU_PE1_WUPE2_SHIFT 4
  5517. #define LLWU_PE1_WUPE2(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE2_SHIFT))&LLWU_PE1_WUPE2_MASK)
  5518. #define LLWU_PE1_WUPE3_MASK 0xC0u
  5519. #define LLWU_PE1_WUPE3_SHIFT 6
  5520. #define LLWU_PE1_WUPE3(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE3_SHIFT))&LLWU_PE1_WUPE3_MASK)
  5521. /* PE2 Bit Fields */
  5522. #define LLWU_PE2_WUPE4_MASK 0x3u
  5523. #define LLWU_PE2_WUPE4_SHIFT 0
  5524. #define LLWU_PE2_WUPE4(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE4_SHIFT))&LLWU_PE2_WUPE4_MASK)
  5525. #define LLWU_PE2_WUPE5_MASK 0xCu
  5526. #define LLWU_PE2_WUPE5_SHIFT 2
  5527. #define LLWU_PE2_WUPE5(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE5_SHIFT))&LLWU_PE2_WUPE5_MASK)
  5528. #define LLWU_PE2_WUPE6_MASK 0x30u
  5529. #define LLWU_PE2_WUPE6_SHIFT 4
  5530. #define LLWU_PE2_WUPE6(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE6_SHIFT))&LLWU_PE2_WUPE6_MASK)
  5531. #define LLWU_PE2_WUPE7_MASK 0xC0u
  5532. #define LLWU_PE2_WUPE7_SHIFT 6
  5533. #define LLWU_PE2_WUPE7(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE7_SHIFT))&LLWU_PE2_WUPE7_MASK)
  5534. /* PE3 Bit Fields */
  5535. #define LLWU_PE3_WUPE8_MASK 0x3u
  5536. #define LLWU_PE3_WUPE8_SHIFT 0
  5537. #define LLWU_PE3_WUPE8(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE8_SHIFT))&LLWU_PE3_WUPE8_MASK)
  5538. #define LLWU_PE3_WUPE9_MASK 0xCu
  5539. #define LLWU_PE3_WUPE9_SHIFT 2
  5540. #define LLWU_PE3_WUPE9(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE9_SHIFT))&LLWU_PE3_WUPE9_MASK)
  5541. #define LLWU_PE3_WUPE10_MASK 0x30u
  5542. #define LLWU_PE3_WUPE10_SHIFT 4
  5543. #define LLWU_PE3_WUPE10(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE10_SHIFT))&LLWU_PE3_WUPE10_MASK)
  5544. #define LLWU_PE3_WUPE11_MASK 0xC0u
  5545. #define LLWU_PE3_WUPE11_SHIFT 6
  5546. #define LLWU_PE3_WUPE11(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE11_SHIFT))&LLWU_PE3_WUPE11_MASK)
  5547. /* PE4 Bit Fields */
  5548. #define LLWU_PE4_WUPE12_MASK 0x3u
  5549. #define LLWU_PE4_WUPE12_SHIFT 0
  5550. #define LLWU_PE4_WUPE12(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE12_SHIFT))&LLWU_PE4_WUPE12_MASK)
  5551. #define LLWU_PE4_WUPE13_MASK 0xCu
  5552. #define LLWU_PE4_WUPE13_SHIFT 2
  5553. #define LLWU_PE4_WUPE13(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE13_SHIFT))&LLWU_PE4_WUPE13_MASK)
  5554. #define LLWU_PE4_WUPE14_MASK 0x30u
  5555. #define LLWU_PE4_WUPE14_SHIFT 4
  5556. #define LLWU_PE4_WUPE14(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE14_SHIFT))&LLWU_PE4_WUPE14_MASK)
  5557. #define LLWU_PE4_WUPE15_MASK 0xC0u
  5558. #define LLWU_PE4_WUPE15_SHIFT 6
  5559. #define LLWU_PE4_WUPE15(x) (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE15_SHIFT))&LLWU_PE4_WUPE15_MASK)
  5560. /* ME Bit Fields */
  5561. #define LLWU_ME_WUME0_MASK 0x1u
  5562. #define LLWU_ME_WUME0_SHIFT 0
  5563. #define LLWU_ME_WUME1_MASK 0x2u
  5564. #define LLWU_ME_WUME1_SHIFT 1
  5565. #define LLWU_ME_WUME2_MASK 0x4u
  5566. #define LLWU_ME_WUME2_SHIFT 2
  5567. #define LLWU_ME_WUME3_MASK 0x8u
  5568. #define LLWU_ME_WUME3_SHIFT 3
  5569. #define LLWU_ME_WUME4_MASK 0x10u
  5570. #define LLWU_ME_WUME4_SHIFT 4
  5571. #define LLWU_ME_WUME5_MASK 0x20u
  5572. #define LLWU_ME_WUME5_SHIFT 5
  5573. #define LLWU_ME_WUME6_MASK 0x40u
  5574. #define LLWU_ME_WUME6_SHIFT 6
  5575. #define LLWU_ME_WUME7_MASK 0x80u
  5576. #define LLWU_ME_WUME7_SHIFT 7
  5577. /* F1 Bit Fields */
  5578. #define LLWU_F1_WUF0_MASK 0x1u
  5579. #define LLWU_F1_WUF0_SHIFT 0
  5580. #define LLWU_F1_WUF1_MASK 0x2u
  5581. #define LLWU_F1_WUF1_SHIFT 1
  5582. #define LLWU_F1_WUF2_MASK 0x4u
  5583. #define LLWU_F1_WUF2_SHIFT 2
  5584. #define LLWU_F1_WUF3_MASK 0x8u
  5585. #define LLWU_F1_WUF3_SHIFT 3
  5586. #define LLWU_F1_WUF4_MASK 0x10u
  5587. #define LLWU_F1_WUF4_SHIFT 4
  5588. #define LLWU_F1_WUF5_MASK 0x20u
  5589. #define LLWU_F1_WUF5_SHIFT 5
  5590. #define LLWU_F1_WUF6_MASK 0x40u
  5591. #define LLWU_F1_WUF6_SHIFT 6
  5592. #define LLWU_F1_WUF7_MASK 0x80u
  5593. #define LLWU_F1_WUF7_SHIFT 7
  5594. /* F2 Bit Fields */
  5595. #define LLWU_F2_WUF8_MASK 0x1u
  5596. #define LLWU_F2_WUF8_SHIFT 0
  5597. #define LLWU_F2_WUF9_MASK 0x2u
  5598. #define LLWU_F2_WUF9_SHIFT 1
  5599. #define LLWU_F2_WUF10_MASK 0x4u
  5600. #define LLWU_F2_WUF10_SHIFT 2
  5601. #define LLWU_F2_WUF11_MASK 0x8u
  5602. #define LLWU_F2_WUF11_SHIFT 3
  5603. #define LLWU_F2_WUF12_MASK 0x10u
  5604. #define LLWU_F2_WUF12_SHIFT 4
  5605. #define LLWU_F2_WUF13_MASK 0x20u
  5606. #define LLWU_F2_WUF13_SHIFT 5
  5607. #define LLWU_F2_WUF14_MASK 0x40u
  5608. #define LLWU_F2_WUF14_SHIFT 6
  5609. #define LLWU_F2_WUF15_MASK 0x80u
  5610. #define LLWU_F2_WUF15_SHIFT 7
  5611. /* F3 Bit Fields */
  5612. #define LLWU_F3_MWUF0_MASK 0x1u
  5613. #define LLWU_F3_MWUF0_SHIFT 0
  5614. #define LLWU_F3_MWUF1_MASK 0x2u
  5615. #define LLWU_F3_MWUF1_SHIFT 1
  5616. #define LLWU_F3_MWUF2_MASK 0x4u
  5617. #define LLWU_F3_MWUF2_SHIFT 2
  5618. #define LLWU_F3_MWUF3_MASK 0x8u
  5619. #define LLWU_F3_MWUF3_SHIFT 3
  5620. #define LLWU_F3_MWUF4_MASK 0x10u
  5621. #define LLWU_F3_MWUF4_SHIFT 4
  5622. #define LLWU_F3_MWUF5_MASK 0x20u
  5623. #define LLWU_F3_MWUF5_SHIFT 5
  5624. #define LLWU_F3_MWUF6_MASK 0x40u
  5625. #define LLWU_F3_MWUF6_SHIFT 6
  5626. #define LLWU_F3_MWUF7_MASK 0x80u
  5627. #define LLWU_F3_MWUF7_SHIFT 7
  5628. /* CS Bit Fields */
  5629. #define LLWU_CS_FLTR_MASK 0x1u
  5630. #define LLWU_CS_FLTR_SHIFT 0
  5631. #define LLWU_CS_FLTEP_MASK 0x2u
  5632. #define LLWU_CS_FLTEP_SHIFT 1
  5633. #define LLWU_CS_ACKISO_MASK 0x80u
  5634. #define LLWU_CS_ACKISO_SHIFT 7
  5635. /*! \} */ /* end of group LLWU_Register_Masks */
  5636. /* LLWU - Peripheral instance base addresses */
  5637. /*! Peripheral LLWU base address */
  5638. #define LLWU_BASE (0x4007C000u)
  5639. /*! Peripheral LLWU base pointer */
  5640. #define LLWU ((LLWU_Type *)LLWU_BASE)
  5641. /*! \} */ /* end of group LLWU_Peripheral_Access_Layer */
  5642. /* ----------------------------------------------------------------------------
  5643. -- LPTMR Peripheral Access Layer
  5644. ---------------------------------------------------------------------------- */
  5645. /*! \addtogroup LPTMR_Peripheral_Access_Layer LPTMR Peripheral Access Layer */
  5646. /*! \{ */
  5647. /*! LPTMR - Register Layout Typedef */
  5648. typedef struct {
  5649. __IO uint32_t CSR; /*!< Low Power Timer Control Status Register, offset: 0x0 */
  5650. __IO uint32_t PSR; /*!< Low Power Timer Prescale Register, offset: 0x4 */
  5651. __IO uint32_t CMR; /*!< Low Power Timer Compare Register, offset: 0x8 */
  5652. __I uint32_t CNR; /*!< Low Power Timer Counter Register, offset: 0xC */
  5653. } LPTMR_Type;
  5654. /* ----------------------------------------------------------------------------
  5655. -- LPTMR Register Masks
  5656. ---------------------------------------------------------------------------- */
  5657. /*! \addtogroup LPTMR_Register_Masks LPTMR Register Masks */
  5658. /*! \{ */
  5659. /* CSR Bit Fields */
  5660. #define LPTMR_CSR_TEN_MASK 0x1u
  5661. #define LPTMR_CSR_TEN_SHIFT 0
  5662. #define LPTMR_CSR_TMS_MASK 0x2u
  5663. #define LPTMR_CSR_TMS_SHIFT 1
  5664. #define LPTMR_CSR_TFC_MASK 0x4u
  5665. #define LPTMR_CSR_TFC_SHIFT 2
  5666. #define LPTMR_CSR_TPP_MASK 0x8u
  5667. #define LPTMR_CSR_TPP_SHIFT 3
  5668. #define LPTMR_CSR_TPS_MASK 0x30u
  5669. #define LPTMR_CSR_TPS_SHIFT 4
  5670. #define LPTMR_CSR_TPS(x) (((uint32_t)(((uint32_t)(x))<<LPTMR_CSR_TPS_SHIFT))&LPTMR_CSR_TPS_MASK)
  5671. #define LPTMR_CSR_TIE_MASK 0x40u
  5672. #define LPTMR_CSR_TIE_SHIFT 6
  5673. #define LPTMR_CSR_TCF_MASK 0x80u
  5674. #define LPTMR_CSR_TCF_SHIFT 7
  5675. /* PSR Bit Fields */
  5676. #define LPTMR_PSR_PCS_MASK 0x3u
  5677. #define LPTMR_PSR_PCS_SHIFT 0
  5678. #define LPTMR_PSR_PCS(x) (((uint32_t)(((uint32_t)(x))<<LPTMR_PSR_PCS_SHIFT))&LPTMR_PSR_PCS_MASK)
  5679. #define LPTMR_PSR_PBYP_MASK 0x4u
  5680. #define LPTMR_PSR_PBYP_SHIFT 2
  5681. #define LPTMR_PSR_PRESCALE_MASK 0x78u
  5682. #define LPTMR_PSR_PRESCALE_SHIFT 3
  5683. #define LPTMR_PSR_PRESCALE(x) (((uint32_t)(((uint32_t)(x))<<LPTMR_PSR_PRESCALE_SHIFT))&LPTMR_PSR_PRESCALE_MASK)
  5684. /* CMR Bit Fields */
  5685. #define LPTMR_CMR_COMPARE_MASK 0xFFFFu
  5686. #define LPTMR_CMR_COMPARE_SHIFT 0
  5687. #define LPTMR_CMR_COMPARE(x) (((uint32_t)(((uint32_t)(x))<<LPTMR_CMR_COMPARE_SHIFT))&LPTMR_CMR_COMPARE_MASK)
  5688. /* CNR Bit Fields */
  5689. #define LPTMR_CNR_COUNTER_MASK 0xFFFFu
  5690. #define LPTMR_CNR_COUNTER_SHIFT 0
  5691. #define LPTMR_CNR_COUNTER(x) (((uint32_t)(((uint32_t)(x))<<LPTMR_CNR_COUNTER_SHIFT))&LPTMR_CNR_COUNTER_MASK)
  5692. /*! \} */ /* end of group LPTMR_Register_Masks */
  5693. /* LPTMR - Peripheral instance base addresses */
  5694. /*! Peripheral LPTMR0 base address */
  5695. #define LPTMR0_BASE (0x40040000u)
  5696. /*! Peripheral LPTMR0 base pointer */
  5697. #define LPTMR0 ((LPTMR_Type *)LPTMR0_BASE)
  5698. /*! \} */ /* end of group LPTMR_Peripheral_Access_Layer */
  5699. /* ----------------------------------------------------------------------------
  5700. -- MC Peripheral Access Layer
  5701. ---------------------------------------------------------------------------- */
  5702. /*! \addtogroup MC_Peripheral_Access_Layer MC Peripheral Access Layer */
  5703. /*! \{ */
  5704. /*! MC - Register Layout Typedef */
  5705. typedef struct {
  5706. __I uint8_t SRSH; /*!< System Reset Status Register High, offset: 0x0 */
  5707. __I uint8_t SRSL; /*!< System Reset Status Register Low, offset: 0x1 */
  5708. __IO uint8_t PMPROT; /*!< Power Mode Protection Register, offset: 0x2 */
  5709. __IO uint8_t PMCTRL; /*!< Power Mode Control Register, offset: 0x3 */
  5710. } MC_Type;
  5711. /* ----------------------------------------------------------------------------
  5712. -- MC Register Masks
  5713. ---------------------------------------------------------------------------- */
  5714. /*! \addtogroup MC_Register_Masks MC Register Masks */
  5715. /*! \{ */
  5716. /* SRSH Bit Fields */
  5717. #define MC_SRSH_JTAG_MASK 0x1u
  5718. #define MC_SRSH_JTAG_SHIFT 0
  5719. #define MC_SRSH_LOCKUP_MASK 0x2u
  5720. #define MC_SRSH_LOCKUP_SHIFT 1
  5721. #define MC_SRSH_SW_MASK 0x4u
  5722. #define MC_SRSH_SW_SHIFT 2
  5723. /* SRSL Bit Fields */
  5724. #define MC_SRSL_WAKEUP_MASK 0x1u
  5725. #define MC_SRSL_WAKEUP_SHIFT 0
  5726. #define MC_SRSL_LVD_MASK 0x2u
  5727. #define MC_SRSL_LVD_SHIFT 1
  5728. #define MC_SRSL_LOC_MASK 0x4u
  5729. #define MC_SRSL_LOC_SHIFT 2
  5730. #define MC_SRSL_COP_MASK 0x20u
  5731. #define MC_SRSL_COP_SHIFT 5
  5732. #define MC_SRSL_PIN_MASK 0x40u
  5733. #define MC_SRSL_PIN_SHIFT 6
  5734. #define MC_SRSL_POR_MASK 0x80u
  5735. #define MC_SRSL_POR_SHIFT 7
  5736. /* PMPROT Bit Fields */
  5737. #define MC_PMPROT_AVLLS1_MASK 0x1u
  5738. #define MC_PMPROT_AVLLS1_SHIFT 0
  5739. #define MC_PMPROT_AVLLS2_MASK 0x2u
  5740. #define MC_PMPROT_AVLLS2_SHIFT 1
  5741. #define MC_PMPROT_AVLLS3_MASK 0x4u
  5742. #define MC_PMPROT_AVLLS3_SHIFT 2
  5743. #define MC_PMPROT_ALLS_MASK 0x10u
  5744. #define MC_PMPROT_ALLS_SHIFT 4
  5745. #define MC_PMPROT_AVLP_MASK 0x20u
  5746. #define MC_PMPROT_AVLP_SHIFT 5
  5747. /* PMCTRL Bit Fields */
  5748. #define MC_PMCTRL_LPLLSM_MASK 0x7u
  5749. #define MC_PMCTRL_LPLLSM_SHIFT 0
  5750. #define MC_PMCTRL_LPLLSM(x) (((uint8_t)(((uint8_t)(x))<<MC_PMCTRL_LPLLSM_SHIFT))&MC_PMCTRL_LPLLSM_MASK)
  5751. #define MC_PMCTRL_RUNM_MASK 0x60u
  5752. #define MC_PMCTRL_RUNM_SHIFT 5
  5753. #define MC_PMCTRL_RUNM(x) (((uint8_t)(((uint8_t)(x))<<MC_PMCTRL_RUNM_SHIFT))&MC_PMCTRL_RUNM_MASK)
  5754. #define MC_PMCTRL_LPWUI_MASK 0x80u
  5755. #define MC_PMCTRL_LPWUI_SHIFT 7
  5756. /*! \} */ /* end of group MC_Register_Masks */
  5757. /* MC - Peripheral instance base addresses */
  5758. /*! Peripheral MC base address */
  5759. #define MC_BASE (0x4007E000u)
  5760. /*! Peripheral MC base pointer */
  5761. #define MC ((MC_Type *)MC_BASE)
  5762. /*! \} */ /* end of group MC_Peripheral_Access_Layer */
  5763. /* ----------------------------------------------------------------------------
  5764. -- MCG Peripheral Access Layer
  5765. ---------------------------------------------------------------------------- */
  5766. /*! \addtogroup MCG_Peripheral_Access_Layer MCG Peripheral Access Layer */
  5767. /*! \{ */
  5768. /*! MCG - Register Layout Typedef */
  5769. typedef struct {
  5770. __IO uint8_t C1; /*!< MCG Control 1 Register, offset: 0x0 */
  5771. __IO uint8_t C2; /*!< MCG Control 2 Register, offset: 0x1 */
  5772. __IO uint8_t C3; /*!< MCG Control 3 Register, offset: 0x2 */
  5773. __IO uint8_t C4; /*!< MCG Control 4 Register, offset: 0x3 */
  5774. __IO uint8_t C5; /*!< MCG Control 5 Register, offset: 0x4 */
  5775. __IO uint8_t C6; /*!< MCG Control 6 Register, offset: 0x5 */
  5776. __I uint8_t S; /*!< MCG Status Register, offset: 0x6 */
  5777. uint8_t RESERVED_0[1];
  5778. __IO uint8_t ATC; /*!< MCG Auto Trim Control Register, offset: 0x8 */
  5779. uint8_t RESERVED_1[1];
  5780. __IO uint8_t ATCVH; /*!< MCG Auto Trim Compare Value High Register, offset: 0xA */
  5781. __IO uint8_t ATCVL; /*!< MCG Auto Trim Compare Value Low Register, offset: 0xB */
  5782. } MCG_Type;
  5783. /* ----------------------------------------------------------------------------
  5784. -- MCG Register Masks
  5785. ---------------------------------------------------------------------------- */
  5786. /*! \addtogroup MCG_Register_Masks MCG Register Masks */
  5787. /*! \{ */
  5788. /* C1 Bit Fields */
  5789. #define MCG_C1_IREFSTEN_MASK 0x1u
  5790. #define MCG_C1_IREFSTEN_SHIFT 0
  5791. #define MCG_C1_IRCLKEN_MASK 0x2u
  5792. #define MCG_C1_IRCLKEN_SHIFT 1
  5793. #define MCG_C1_IREFS_MASK 0x4u
  5794. #define MCG_C1_IREFS_SHIFT 2
  5795. #define MCG_C1_FRDIV_MASK 0x38u
  5796. #define MCG_C1_FRDIV_SHIFT 3
  5797. #define MCG_C1_FRDIV(x) (((uint8_t)(((uint8_t)(x))<<MCG_C1_FRDIV_SHIFT))&MCG_C1_FRDIV_MASK)
  5798. #define MCG_C1_CLKS_MASK 0xC0u
  5799. #define MCG_C1_CLKS_SHIFT 6
  5800. #define MCG_C1_CLKS(x) (((uint8_t)(((uint8_t)(x))<<MCG_C1_CLKS_SHIFT))&MCG_C1_CLKS_MASK)
  5801. /* C2 Bit Fields */
  5802. #define MCG_C2_IRCS_MASK 0x1u
  5803. #define MCG_C2_IRCS_SHIFT 0
  5804. #define MCG_C2_LP_MASK 0x2u
  5805. #define MCG_C2_LP_SHIFT 1
  5806. #define MCG_C2_EREFS_MASK 0x4u
  5807. #define MCG_C2_EREFS_SHIFT 2
  5808. #define MCG_C2_HGO_MASK 0x8u
  5809. #define MCG_C2_HGO_SHIFT 3
  5810. #define MCG_C2_RANGE_MASK 0x30u
  5811. #define MCG_C2_RANGE_SHIFT 4
  5812. #define MCG_C2_RANGE(x) (((uint8_t)(((uint8_t)(x))<<MCG_C2_RANGE_SHIFT))&MCG_C2_RANGE_MASK)
  5813. /* C3 Bit Fields */
  5814. #define MCG_C3_SCTRIM_MASK 0xFFu
  5815. #define MCG_C3_SCTRIM_SHIFT 0
  5816. #define MCG_C3_SCTRIM(x) (((uint8_t)(((uint8_t)(x))<<MCG_C3_SCTRIM_SHIFT))&MCG_C3_SCTRIM_MASK)
  5817. /* C4 Bit Fields */
  5818. #define MCG_C4_SCFTRIM_MASK 0x1u
  5819. #define MCG_C4_SCFTRIM_SHIFT 0
  5820. #define MCG_C4_FCTRIM_MASK 0x1Eu
  5821. #define MCG_C4_FCTRIM_SHIFT 1
  5822. #define MCG_C4_FCTRIM(x) (((uint8_t)(((uint8_t)(x))<<MCG_C4_FCTRIM_SHIFT))&MCG_C4_FCTRIM_MASK)
  5823. #define MCG_C4_DRST_DRS_MASK 0x60u
  5824. #define MCG_C4_DRST_DRS_SHIFT 5
  5825. #define MCG_C4_DRST_DRS(x) (((uint8_t)(((uint8_t)(x))<<MCG_C4_DRST_DRS_SHIFT))&MCG_C4_DRST_DRS_MASK)
  5826. #define MCG_C4_DMX32_MASK 0x80u
  5827. #define MCG_C4_DMX32_SHIFT 7
  5828. /* C5 Bit Fields */
  5829. #define MCG_C5_PRDIV_MASK 0x1Fu
  5830. #define MCG_C5_PRDIV_SHIFT 0
  5831. #define MCG_C5_PRDIV(x) (((uint8_t)(((uint8_t)(x))<<MCG_C5_PRDIV_SHIFT))&MCG_C5_PRDIV_MASK)
  5832. #define MCG_C5_PLLSTEN_MASK 0x20u
  5833. #define MCG_C5_PLLSTEN_SHIFT 5
  5834. #define MCG_C5_PLLCLKEN_MASK 0x40u
  5835. #define MCG_C5_PLLCLKEN_SHIFT 6
  5836. /* C6 Bit Fields */
  5837. #define MCG_C6_VDIV_MASK 0x1Fu
  5838. #define MCG_C6_VDIV_SHIFT 0
  5839. #define MCG_C6_VDIV(x) (((uint8_t)(((uint8_t)(x))<<MCG_C6_VDIV_SHIFT))&MCG_C6_VDIV_MASK)
  5840. #define MCG_C6_CME_MASK 0x20u
  5841. #define MCG_C6_CME_SHIFT 5
  5842. #define MCG_C6_PLLS_MASK 0x40u
  5843. #define MCG_C6_PLLS_SHIFT 6
  5844. #define MCG_C6_LOLIE_MASK 0x80u
  5845. #define MCG_C6_LOLIE_SHIFT 7
  5846. /* S Bit Fields */
  5847. #define MCG_S_IRCST_MASK 0x1u
  5848. #define MCG_S_IRCST_SHIFT 0
  5849. #define MCG_S_OSCINIT_MASK 0x2u
  5850. #define MCG_S_OSCINIT_SHIFT 1
  5851. #define MCG_S_CLKST_MASK 0xCu
  5852. #define MCG_S_CLKST_SHIFT 2
  5853. #define MCG_S_CLKST(x) (((uint8_t)(((uint8_t)(x))<<MCG_S_CLKST_SHIFT))&MCG_S_CLKST_MASK)
  5854. #define MCG_S_IREFST_MASK 0x10u
  5855. #define MCG_S_IREFST_SHIFT 4
  5856. #define MCG_S_PLLST_MASK 0x20u
  5857. #define MCG_S_PLLST_SHIFT 5
  5858. #define MCG_S_LOCK_MASK 0x40u
  5859. #define MCG_S_LOCK_SHIFT 6
  5860. #define MCG_S_LOLS_MASK 0x80u
  5861. #define MCG_S_LOLS_SHIFT 7
  5862. /* ATC Bit Fields */
  5863. #define MCG_ATC_ATMF_MASK 0x20u
  5864. #define MCG_ATC_ATMF_SHIFT 5
  5865. #define MCG_ATC_ATMS_MASK 0x40u
  5866. #define MCG_ATC_ATMS_SHIFT 6
  5867. #define MCG_ATC_ATME_MASK 0x80u
  5868. #define MCG_ATC_ATME_SHIFT 7
  5869. /* ATCVH Bit Fields */
  5870. #define MCG_ATCVH_ATCVH_MASK 0xFFu
  5871. #define MCG_ATCVH_ATCVH_SHIFT 0
  5872. #define MCG_ATCVH_ATCVH(x) (((uint8_t)(((uint8_t)(x))<<MCG_ATCVH_ATCVH_SHIFT))&MCG_ATCVH_ATCVH_MASK)
  5873. /* ATCVL Bit Fields */
  5874. #define MCG_ATCVL_ATCVL_MASK 0xFFu
  5875. #define MCG_ATCVL_ATCVL_SHIFT 0
  5876. #define MCG_ATCVL_ATCVL(x) (((uint8_t)(((uint8_t)(x))<<MCG_ATCVL_ATCVL_SHIFT))&MCG_ATCVL_ATCVL_MASK)
  5877. /*! \} */ /* end of group MCG_Register_Masks */
  5878. /* MCG - Peripheral instance base addresses */
  5879. /*! Peripheral MCG base address */
  5880. #define MCG_BASE (0x40064000u)
  5881. /*! Peripheral MCG base pointer */
  5882. #define MCG ((MCG_Type *)MCG_BASE)
  5883. /*! \} */ /* end of group MCG_Peripheral_Access_Layer */
  5884. /* ----------------------------------------------------------------------------
  5885. -- MCM Peripheral Access Layer
  5886. ---------------------------------------------------------------------------- */
  5887. /*! \addtogroup MCM_Peripheral_Access_Layer MCM Peripheral Access Layer */
  5888. /*! \{ */
  5889. /*! MCM - Register Layout Typedef */
  5890. typedef struct {
  5891. uint8_t RESERVED_0[8];
  5892. __I uint16_t PLASC; /*!< Crossbar switch (AXBS) slave configuration, offset: 0x8 */
  5893. __I uint16_t PLAMC; /*!< Crossbar switch (AXBS) master configuration, offset: 0xA */
  5894. __IO uint32_t SRAMAP; /*!< SRAM arbitration and protection, offset: 0xC */
  5895. __IO uint32_t ISR; /*!< Interrupt status register, offset: 0x10 */
  5896. __IO uint32_t ETBCC; /*!< ETB counter control register, offset: 0x14 */
  5897. __IO uint32_t ETBRL; /*!< ETB reload register, offset: 0x18 */
  5898. __I uint32_t ETBCNT; /*!< ETB counter value register, offset: 0x1C */
  5899. } MCM_Type;
  5900. /* ----------------------------------------------------------------------------
  5901. -- MCM Register Masks
  5902. ---------------------------------------------------------------------------- */
  5903. /*! \addtogroup MCM_Register_Masks MCM Register Masks */
  5904. /*! \{ */
  5905. /* PLASC Bit Fields */
  5906. #define MCM_PLASC_ASC_MASK 0xFFu
  5907. #define MCM_PLASC_ASC_SHIFT 0
  5908. #define MCM_PLASC_ASC(x) (((uint16_t)(((uint16_t)(x))<<MCM_PLASC_ASC_SHIFT))&MCM_PLASC_ASC_MASK)
  5909. /* PLAMC Bit Fields */
  5910. #define MCM_PLAMC_AMC_MASK 0xFFu
  5911. #define MCM_PLAMC_AMC_SHIFT 0
  5912. #define MCM_PLAMC_AMC(x) (((uint16_t)(((uint16_t)(x))<<MCM_PLAMC_AMC_SHIFT))&MCM_PLAMC_AMC_MASK)
  5913. /* SRAMAP Bit Fields */
  5914. #define MCM_SRAMAP_SRAMUAP_MASK 0x3000000u
  5915. #define MCM_SRAMAP_SRAMUAP_SHIFT 24
  5916. #define MCM_SRAMAP_SRAMUAP(x) (((uint32_t)(((uint32_t)(x))<<MCM_SRAMAP_SRAMUAP_SHIFT))&MCM_SRAMAP_SRAMUAP_MASK)
  5917. #define MCM_SRAMAP_SRAMUWP_MASK 0x4000000u
  5918. #define MCM_SRAMAP_SRAMUWP_SHIFT 26
  5919. #define MCM_SRAMAP_SRAMLAP_MASK 0x30000000u
  5920. #define MCM_SRAMAP_SRAMLAP_SHIFT 28
  5921. #define MCM_SRAMAP_SRAMLAP(x) (((uint32_t)(((uint32_t)(x))<<MCM_SRAMAP_SRAMLAP_SHIFT))&MCM_SRAMAP_SRAMLAP_MASK)
  5922. #define MCM_SRAMAP_SRAMLWP_MASK 0x40000000u
  5923. #define MCM_SRAMAP_SRAMLWP_SHIFT 30
  5924. /* ISR Bit Fields */
  5925. #define MCM_ISR_IRQ_MASK 0x2u
  5926. #define MCM_ISR_IRQ_SHIFT 1
  5927. #define MCM_ISR_NMI_MASK 0x4u
  5928. #define MCM_ISR_NMI_SHIFT 2
  5929. /* ETBCC Bit Fields */
  5930. #define MCM_ETBCC_CNTEN_MASK 0x1u
  5931. #define MCM_ETBCC_CNTEN_SHIFT 0
  5932. #define MCM_ETBCC_RSPT_MASK 0x6u
  5933. #define MCM_ETBCC_RSPT_SHIFT 1
  5934. #define MCM_ETBCC_RSPT(x) (((uint32_t)(((uint32_t)(x))<<MCM_ETBCC_RSPT_SHIFT))&MCM_ETBCC_RSPT_MASK)
  5935. #define MCM_ETBCC_RLRQ_MASK 0x8u
  5936. #define MCM_ETBCC_RLRQ_SHIFT 3
  5937. #define MCM_ETBCC_ETDIS_MASK 0x10u
  5938. #define MCM_ETBCC_ETDIS_SHIFT 4
  5939. #define MCM_ETBCC_ITDIS_MASK 0x20u
  5940. #define MCM_ETBCC_ITDIS_SHIFT 5
  5941. /* ETBRL Bit Fields */
  5942. #define MCM_ETBRL_RELOAD_MASK 0x7FFu
  5943. #define MCM_ETBRL_RELOAD_SHIFT 0
  5944. #define MCM_ETBRL_RELOAD(x) (((uint32_t)(((uint32_t)(x))<<MCM_ETBRL_RELOAD_SHIFT))&MCM_ETBRL_RELOAD_MASK)
  5945. /* ETBCNT Bit Fields */
  5946. #define MCM_ETBCNT_COUNTER_MASK 0x7FFu
  5947. #define MCM_ETBCNT_COUNTER_SHIFT 0
  5948. #define MCM_ETBCNT_COUNTER(x) (((uint32_t)(((uint32_t)(x))<<MCM_ETBCNT_COUNTER_SHIFT))&MCM_ETBCNT_COUNTER_MASK)
  5949. /*! \} */ /* end of group MCM_Register_Masks */
  5950. /* MCM - Peripheral instance base addresses */
  5951. /*! Peripheral MCM base address */
  5952. #define MCM_BASE (0xE0080000u)
  5953. /*! Peripheral MCM base pointer */
  5954. #define MCM ((MCM_Type *)MCM_BASE)
  5955. /*! \} */ /* end of group MCM_Peripheral_Access_Layer */
  5956. /* ----------------------------------------------------------------------------
  5957. -- MPU Peripheral Access Layer
  5958. ---------------------------------------------------------------------------- */
  5959. /*! \addtogroup MPU_Peripheral_Access_Layer MPU Peripheral Access Layer */
  5960. /*! \{ */
  5961. /*! MPU - Register Layout Typedef */
  5962. typedef struct {
  5963. __IO uint32_t CESR; /*!< Control/Error Status Register, offset: 0x0 */
  5964. uint8_t RESERVED_0[12];
  5965. struct { /* offset: 0x10, array step: 0x8 */
  5966. __I uint32_t EAR; /*!< Error Address Register, Slave Port n, array offset: 0x10, array step: 0x8 */
  5967. __I uint32_t EDR; /*!< Error Detail Register, Slave Port n, array offset: 0x14, array step: 0x8 */
  5968. } SP[5];
  5969. uint8_t RESERVED_1[968];
  5970. __IO uint32_t WORD[12][4]; /*!< Region Descriptor n, Word 0..Region Descriptor n, Word 3, array offset: 0x400, array step: index*0x10, index2*0x4 */
  5971. uint8_t RESERVED_2[832];
  5972. __IO uint32_t RGDAAC[12]; /*!< Region Descriptor Alternate Access Control n, array offset: 0x800, array step: 0x4 */
  5973. } MPU_Type;
  5974. /* ----------------------------------------------------------------------------
  5975. -- MPU Register Masks
  5976. ---------------------------------------------------------------------------- */
  5977. /*! \addtogroup MPU_Register_Masks MPU Register Masks */
  5978. /*! \{ */
  5979. /* CESR Bit Fields */
  5980. #define MPU_CESR_VLD_MASK 0x1u
  5981. #define MPU_CESR_VLD_SHIFT 0
  5982. #define MPU_CESR_NRGD_MASK 0xF00u
  5983. #define MPU_CESR_NRGD_SHIFT 8
  5984. #define MPU_CESR_NRGD(x) (((uint32_t)(((uint32_t)(x))<<MPU_CESR_NRGD_SHIFT))&MPU_CESR_NRGD_MASK)
  5985. #define MPU_CESR_NSP_MASK 0xF000u
  5986. #define MPU_CESR_NSP_SHIFT 12
  5987. #define MPU_CESR_NSP(x) (((uint32_t)(((uint32_t)(x))<<MPU_CESR_NSP_SHIFT))&MPU_CESR_NSP_MASK)
  5988. #define MPU_CESR_HRL_MASK 0xF0000u
  5989. #define MPU_CESR_HRL_SHIFT 16
  5990. #define MPU_CESR_HRL(x) (((uint32_t)(((uint32_t)(x))<<MPU_CESR_HRL_SHIFT))&MPU_CESR_HRL_MASK)
  5991. #define MPU_CESR_SPERR_MASK 0xF8000000u
  5992. #define MPU_CESR_SPERR_SHIFT 27
  5993. #define MPU_CESR_SPERR(x) (((uint32_t)(((uint32_t)(x))<<MPU_CESR_SPERR_SHIFT))&MPU_CESR_SPERR_MASK)
  5994. /* EAR Bit Fields */
  5995. #define MPU_EAR_EADDR_MASK 0xFFFFFFFFu
  5996. #define MPU_EAR_EADDR_SHIFT 0
  5997. #define MPU_EAR_EADDR(x) (((uint32_t)(((uint32_t)(x))<<MPU_EAR_EADDR_SHIFT))&MPU_EAR_EADDR_MASK)
  5998. /* EDR Bit Fields */
  5999. #define MPU_EDR_ERW_MASK 0x1u
  6000. #define MPU_EDR_ERW_SHIFT 0
  6001. #define MPU_EDR_EATTR_MASK 0xEu
  6002. #define MPU_EDR_EATTR_SHIFT 1
  6003. #define MPU_EDR_EATTR(x) (((uint32_t)(((uint32_t)(x))<<MPU_EDR_EATTR_SHIFT))&MPU_EDR_EATTR_MASK)
  6004. #define MPU_EDR_EMN_MASK 0xF0u
  6005. #define MPU_EDR_EMN_SHIFT 4
  6006. #define MPU_EDR_EMN(x) (((uint32_t)(((uint32_t)(x))<<MPU_EDR_EMN_SHIFT))&MPU_EDR_EMN_MASK)
  6007. #define MPU_EDR_EACD_MASK 0xFFFF0000u
  6008. #define MPU_EDR_EACD_SHIFT 16
  6009. #define MPU_EDR_EACD(x) (((uint32_t)(((uint32_t)(x))<<MPU_EDR_EACD_SHIFT))&MPU_EDR_EACD_MASK)
  6010. /* WORD Bit Fields */
  6011. #define MPU_WORD_M0UM_MASK 0x7u
  6012. #define MPU_WORD_M0UM_SHIFT 0
  6013. #define MPU_WORD_M0UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M0UM_SHIFT))&MPU_WORD_M0UM_MASK)
  6014. #define MPU_WORD_VLD_MASK 0x1u
  6015. #define MPU_WORD_VLD_SHIFT 0
  6016. #define MPU_WORD_M0SM_MASK 0x18u
  6017. #define MPU_WORD_M0SM_SHIFT 3
  6018. #define MPU_WORD_M0SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M0SM_SHIFT))&MPU_WORD_M0SM_MASK)
  6019. #define MPU_WORD_ENDADDR_MASK 0xFFFFFFE0u
  6020. #define MPU_WORD_ENDADDR_SHIFT 5
  6021. #define MPU_WORD_ENDADDR(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_ENDADDR_SHIFT))&MPU_WORD_ENDADDR_MASK)
  6022. #define MPU_WORD_SRTADDR_MASK 0xFFFFFFE0u
  6023. #define MPU_WORD_SRTADDR_SHIFT 5
  6024. #define MPU_WORD_SRTADDR(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_SRTADDR_SHIFT))&MPU_WORD_SRTADDR_MASK)
  6025. #define MPU_WORD_M1UM_MASK 0x1C0u
  6026. #define MPU_WORD_M1UM_SHIFT 6
  6027. #define MPU_WORD_M1UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M1UM_SHIFT))&MPU_WORD_M1UM_MASK)
  6028. #define MPU_WORD_M1SM_MASK 0x600u
  6029. #define MPU_WORD_M1SM_SHIFT 9
  6030. #define MPU_WORD_M1SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M1SM_SHIFT))&MPU_WORD_M1SM_MASK)
  6031. #define MPU_WORD_M2UM_MASK 0x7000u
  6032. #define MPU_WORD_M2UM_SHIFT 12
  6033. #define MPU_WORD_M2UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M2UM_SHIFT))&MPU_WORD_M2UM_MASK)
  6034. #define MPU_WORD_M2SM_MASK 0x18000u
  6035. #define MPU_WORD_M2SM_SHIFT 15
  6036. #define MPU_WORD_M2SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M2SM_SHIFT))&MPU_WORD_M2SM_MASK)
  6037. #define MPU_WORD_M3UM_MASK 0x1C0000u
  6038. #define MPU_WORD_M3UM_SHIFT 18
  6039. #define MPU_WORD_M3UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M3UM_SHIFT))&MPU_WORD_M3UM_MASK)
  6040. #define MPU_WORD_M3SM_MASK 0x600000u
  6041. #define MPU_WORD_M3SM_SHIFT 21
  6042. #define MPU_WORD_M3SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_WORD_M3SM_SHIFT))&MPU_WORD_M3SM_MASK)
  6043. #define MPU_WORD_M4WE_MASK 0x1000000u
  6044. #define MPU_WORD_M4WE_SHIFT 24
  6045. #define MPU_WORD_M4RE_MASK 0x2000000u
  6046. #define MPU_WORD_M4RE_SHIFT 25
  6047. #define MPU_WORD_M5WE_MASK 0x4000000u
  6048. #define MPU_WORD_M5WE_SHIFT 26
  6049. #define MPU_WORD_M5RE_MASK 0x8000000u
  6050. #define MPU_WORD_M5RE_SHIFT 27
  6051. #define MPU_WORD_M6WE_MASK 0x10000000u
  6052. #define MPU_WORD_M6WE_SHIFT 28
  6053. #define MPU_WORD_M6RE_MASK 0x20000000u
  6054. #define MPU_WORD_M6RE_SHIFT 29
  6055. #define MPU_WORD_M7WE_MASK 0x40000000u
  6056. #define MPU_WORD_M7WE_SHIFT 30
  6057. #define MPU_WORD_M7RE_MASK 0x80000000u
  6058. #define MPU_WORD_M7RE_SHIFT 31
  6059. /* RGDAAC Bit Fields */
  6060. #define MPU_RGDAAC_M0UM_MASK 0x7u
  6061. #define MPU_RGDAAC_M0UM_SHIFT 0
  6062. #define MPU_RGDAAC_M0UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M0UM_SHIFT))&MPU_RGDAAC_M0UM_MASK)
  6063. #define MPU_RGDAAC_M0SM_MASK 0x18u
  6064. #define MPU_RGDAAC_M0SM_SHIFT 3
  6065. #define MPU_RGDAAC_M0SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M0SM_SHIFT))&MPU_RGDAAC_M0SM_MASK)
  6066. #define MPU_RGDAAC_M1UM_MASK 0x1C0u
  6067. #define MPU_RGDAAC_M1UM_SHIFT 6
  6068. #define MPU_RGDAAC_M1UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M1UM_SHIFT))&MPU_RGDAAC_M1UM_MASK)
  6069. #define MPU_RGDAAC_M1SM_MASK 0x600u
  6070. #define MPU_RGDAAC_M1SM_SHIFT 9
  6071. #define MPU_RGDAAC_M1SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M1SM_SHIFT))&MPU_RGDAAC_M1SM_MASK)
  6072. #define MPU_RGDAAC_M2UM_MASK 0x7000u
  6073. #define MPU_RGDAAC_M2UM_SHIFT 12
  6074. #define MPU_RGDAAC_M2UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M2UM_SHIFT))&MPU_RGDAAC_M2UM_MASK)
  6075. #define MPU_RGDAAC_M2SM_MASK 0x18000u
  6076. #define MPU_RGDAAC_M2SM_SHIFT 15
  6077. #define MPU_RGDAAC_M2SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M2SM_SHIFT))&MPU_RGDAAC_M2SM_MASK)
  6078. #define MPU_RGDAAC_M3UM_MASK 0x1C0000u
  6079. #define MPU_RGDAAC_M3UM_SHIFT 18
  6080. #define MPU_RGDAAC_M3UM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M3UM_SHIFT))&MPU_RGDAAC_M3UM_MASK)
  6081. #define MPU_RGDAAC_M3SM_MASK 0x600000u
  6082. #define MPU_RGDAAC_M3SM_SHIFT 21
  6083. #define MPU_RGDAAC_M3SM(x) (((uint32_t)(((uint32_t)(x))<<MPU_RGDAAC_M3SM_SHIFT))&MPU_RGDAAC_M3SM_MASK)
  6084. #define MPU_RGDAAC_M4WE_MASK 0x1000000u
  6085. #define MPU_RGDAAC_M4WE_SHIFT 24
  6086. #define MPU_RGDAAC_M4RE_MASK 0x2000000u
  6087. #define MPU_RGDAAC_M4RE_SHIFT 25
  6088. #define MPU_RGDAAC_M5WE_MASK 0x4000000u
  6089. #define MPU_RGDAAC_M5WE_SHIFT 26
  6090. #define MPU_RGDAAC_M5RE_MASK 0x8000000u
  6091. #define MPU_RGDAAC_M5RE_SHIFT 27
  6092. #define MPU_RGDAAC_M6WE_MASK 0x10000000u
  6093. #define MPU_RGDAAC_M6WE_SHIFT 28
  6094. #define MPU_RGDAAC_M6RE_MASK 0x20000000u
  6095. #define MPU_RGDAAC_M6RE_SHIFT 29
  6096. #define MPU_RGDAAC_M7WE_MASK 0x40000000u
  6097. #define MPU_RGDAAC_M7WE_SHIFT 30
  6098. #define MPU_RGDAAC_M7RE_MASK 0x80000000u
  6099. #define MPU_RGDAAC_M7RE_SHIFT 31
  6100. /*! \} */ /* end of group MPU_Register_Masks */
  6101. /* MPU - Peripheral instance base addresses */
  6102. /*! Peripheral MPU base address */
  6103. #define MPU_BASE (0x4000D000u)
  6104. /*! Peripheral MPU base pointer */
  6105. #define MPU ((MPU_Type *)MPU_BASE)
  6106. /*! \} */ /* end of group MPU_Peripheral_Access_Layer */
  6107. /* ----------------------------------------------------------------------------
  6108. -- OSC Peripheral Access Layer
  6109. ---------------------------------------------------------------------------- */
  6110. /*! \addtogroup OSC_Peripheral_Access_Layer OSC Peripheral Access Layer */
  6111. /*! \{ */
  6112. /*! OSC - Register Layout Typedef */
  6113. typedef struct {
  6114. __IO uint8_t CR; /*!< OSC Control Register, offset: 0x0 */
  6115. } OSC_Type;
  6116. /* ----------------------------------------------------------------------------
  6117. -- OSC Register Masks
  6118. ---------------------------------------------------------------------------- */
  6119. /*! \addtogroup OSC_Register_Masks OSC Register Masks */
  6120. /*! \{ */
  6121. /* CR Bit Fields */
  6122. #define OSC_CR_SC16P_MASK 0x1u
  6123. #define OSC_CR_SC16P_SHIFT 0
  6124. #define OSC_CR_SC8P_MASK 0x2u
  6125. #define OSC_CR_SC8P_SHIFT 1
  6126. #define OSC_CR_SC4P_MASK 0x4u
  6127. #define OSC_CR_SC4P_SHIFT 2
  6128. #define OSC_CR_SC2P_MASK 0x8u
  6129. #define OSC_CR_SC2P_SHIFT 3
  6130. #define OSC_CR_EREFSTEN_MASK 0x20u
  6131. #define OSC_CR_EREFSTEN_SHIFT 5
  6132. #define OSC_CR_ERCLKEN_MASK 0x80u
  6133. #define OSC_CR_ERCLKEN_SHIFT 7
  6134. /*! \} */ /* end of group OSC_Register_Masks */
  6135. /* OSC - Peripheral instance base addresses */
  6136. /*! Peripheral OSC base address */
  6137. #define OSC_BASE (0x40065000u)
  6138. /*! Peripheral OSC base pointer */
  6139. #define OSC ((OSC_Type *)OSC_BASE)
  6140. /*! \} */ /* end of group OSC_Peripheral_Access_Layer */
  6141. /* ----------------------------------------------------------------------------
  6142. -- PDB Peripheral Access Layer
  6143. ---------------------------------------------------------------------------- */
  6144. /*! \addtogroup PDB_Peripheral_Access_Layer PDB Peripheral Access Layer */
  6145. /*! \{ */
  6146. /*! PDB - Register Layout Typedef */
  6147. typedef struct {
  6148. __IO uint32_t SC; /*!< Status and Control Register, offset: 0x0 */
  6149. __IO uint32_t MOD; /*!< Modulus Register, offset: 0x4 */
  6150. __I uint32_t CNT; /*!< Counter Register, offset: 0x8 */
  6151. __IO uint32_t IDLY; /*!< Interrupt Delay Register, offset: 0xC */
  6152. struct { /* offset: 0x10, array step: 0x28 */
  6153. __IO uint32_t C1; /*!< Channel n Control Register 1, array offset: 0x10, array step: 0x28 */
  6154. __IO uint32_t S; /*!< Channel n Status Register, array offset: 0x14, array step: 0x28 */
  6155. __IO uint32_t DLY[2]; /*!< Channel n Delay 0 Register..Channel n Delay 1 Register, array offset: 0x18, array step: index*0x28, index2*0x4 */
  6156. uint8_t RESERVED_0[24];
  6157. } CH[2];
  6158. uint8_t RESERVED_0[240];
  6159. struct { /* offset: 0x150, array step: 0x8 */
  6160. __IO uint32_t INTC; /*!< DAC Interval Trigger n Control Register, array offset: 0x150, array step: 0x8 */
  6161. __IO uint32_t INT; /*!< DAC Interval n Register, array offset: 0x154, array step: 0x8 */
  6162. } DAC[2];
  6163. uint8_t RESERVED_1[48];
  6164. __IO uint32_t POEN; /*!< Pulse-Out n Enable Register, offset: 0x190 */
  6165. __IO uint32_t PODLY; /*!< Pulse-Out n Delay Register, offset: 0x194 */
  6166. } PDB_Type;
  6167. /* ----------------------------------------------------------------------------
  6168. -- PDB Register Masks
  6169. ---------------------------------------------------------------------------- */
  6170. /*! \addtogroup PDB_Register_Masks PDB Register Masks */
  6171. /*! \{ */
  6172. /* SC Bit Fields */
  6173. #define PDB_SC_LDOK_MASK 0x1u
  6174. #define PDB_SC_LDOK_SHIFT 0
  6175. #define PDB_SC_CONT_MASK 0x2u
  6176. #define PDB_SC_CONT_SHIFT 1
  6177. #define PDB_SC_MULT_MASK 0xCu
  6178. #define PDB_SC_MULT_SHIFT 2
  6179. #define PDB_SC_MULT(x) (((uint32_t)(((uint32_t)(x))<<PDB_SC_MULT_SHIFT))&PDB_SC_MULT_MASK)
  6180. #define PDB_SC_PDBIE_MASK 0x20u
  6181. #define PDB_SC_PDBIE_SHIFT 5
  6182. #define PDB_SC_PDBIF_MASK 0x40u
  6183. #define PDB_SC_PDBIF_SHIFT 6
  6184. #define PDB_SC_PDBEN_MASK 0x80u
  6185. #define PDB_SC_PDBEN_SHIFT 7
  6186. #define PDB_SC_TRGSEL_MASK 0xF00u
  6187. #define PDB_SC_TRGSEL_SHIFT 8
  6188. #define PDB_SC_TRGSEL(x) (((uint32_t)(((uint32_t)(x))<<PDB_SC_TRGSEL_SHIFT))&PDB_SC_TRGSEL_MASK)
  6189. #define PDB_SC_PRESCALER_MASK 0x7000u
  6190. #define PDB_SC_PRESCALER_SHIFT 12
  6191. #define PDB_SC_PRESCALER(x) (((uint32_t)(((uint32_t)(x))<<PDB_SC_PRESCALER_SHIFT))&PDB_SC_PRESCALER_MASK)
  6192. #define PDB_SC_DMAEN_MASK 0x8000u
  6193. #define PDB_SC_DMAEN_SHIFT 15
  6194. #define PDB_SC_SWTRIG_MASK 0x10000u
  6195. #define PDB_SC_SWTRIG_SHIFT 16
  6196. #define PDB_SC_PDBEIE_MASK 0x20000u
  6197. #define PDB_SC_PDBEIE_SHIFT 17
  6198. #define PDB_SC_LDMOD_MASK 0xC0000u
  6199. #define PDB_SC_LDMOD_SHIFT 18
  6200. #define PDB_SC_LDMOD(x) (((uint32_t)(((uint32_t)(x))<<PDB_SC_LDMOD_SHIFT))&PDB_SC_LDMOD_MASK)
  6201. /* MOD Bit Fields */
  6202. #define PDB_MOD_MOD_MASK 0xFFFFu
  6203. #define PDB_MOD_MOD_SHIFT 0
  6204. #define PDB_MOD_MOD(x) (((uint32_t)(((uint32_t)(x))<<PDB_MOD_MOD_SHIFT))&PDB_MOD_MOD_MASK)
  6205. /* CNT Bit Fields */
  6206. #define PDB_CNT_CNT_MASK 0xFFFFu
  6207. #define PDB_CNT_CNT_SHIFT 0
  6208. #define PDB_CNT_CNT(x) (((uint32_t)(((uint32_t)(x))<<PDB_CNT_CNT_SHIFT))&PDB_CNT_CNT_MASK)
  6209. /* IDLY Bit Fields */
  6210. #define PDB_IDLY_IDLY_MASK 0xFFFFu
  6211. #define PDB_IDLY_IDLY_SHIFT 0
  6212. #define PDB_IDLY_IDLY(x) (((uint32_t)(((uint32_t)(x))<<PDB_IDLY_IDLY_SHIFT))&PDB_IDLY_IDLY_MASK)
  6213. /* C1 Bit Fields */
  6214. #define PDB_C1_EN_MASK 0xFFu
  6215. #define PDB_C1_EN_SHIFT 0
  6216. #define PDB_C1_EN(x) (((uint32_t)(((uint32_t)(x))<<PDB_C1_EN_SHIFT))&PDB_C1_EN_MASK)
  6217. #define PDB_C1_TOS_MASK 0xFF00u
  6218. #define PDB_C1_TOS_SHIFT 8
  6219. #define PDB_C1_TOS(x) (((uint32_t)(((uint32_t)(x))<<PDB_C1_TOS_SHIFT))&PDB_C1_TOS_MASK)
  6220. #define PDB_C1_BB_MASK 0xFF0000u
  6221. #define PDB_C1_BB_SHIFT 16
  6222. #define PDB_C1_BB(x) (((uint32_t)(((uint32_t)(x))<<PDB_C1_BB_SHIFT))&PDB_C1_BB_MASK)
  6223. /* S Bit Fields */
  6224. #define PDB_S_ERR_MASK 0xFFu
  6225. #define PDB_S_ERR_SHIFT 0
  6226. #define PDB_S_ERR(x) (((uint32_t)(((uint32_t)(x))<<PDB_S_ERR_SHIFT))&PDB_S_ERR_MASK)
  6227. #define PDB_S_CF_MASK 0xFF0000u
  6228. #define PDB_S_CF_SHIFT 16
  6229. #define PDB_S_CF(x) (((uint32_t)(((uint32_t)(x))<<PDB_S_CF_SHIFT))&PDB_S_CF_MASK)
  6230. /* DLY Bit Fields */
  6231. #define PDB_DLY_DLY_MASK 0xFFFFu
  6232. #define PDB_DLY_DLY_SHIFT 0
  6233. #define PDB_DLY_DLY(x) (((uint32_t)(((uint32_t)(x))<<PDB_DLY_DLY_SHIFT))&PDB_DLY_DLY_MASK)
  6234. /* INTC Bit Fields */
  6235. #define PDB_INTC_TOE_MASK 0x1u
  6236. #define PDB_INTC_TOE_SHIFT 0
  6237. #define PDB_INTC_EXT_MASK 0x2u
  6238. #define PDB_INTC_EXT_SHIFT 1
  6239. /* INT Bit Fields */
  6240. #define PDB_INT_INT_MASK 0xFFFFu
  6241. #define PDB_INT_INT_SHIFT 0
  6242. #define PDB_INT_INT(x) (((uint32_t)(((uint32_t)(x))<<PDB_INT_INT_SHIFT))&PDB_INT_INT_MASK)
  6243. /* POEN Bit Fields */
  6244. #define PDB_POEN_POEN_MASK 0xFFu
  6245. #define PDB_POEN_POEN_SHIFT 0
  6246. #define PDB_POEN_POEN(x) (((uint32_t)(((uint32_t)(x))<<PDB_POEN_POEN_SHIFT))&PDB_POEN_POEN_MASK)
  6247. /* PODLY Bit Fields */
  6248. #define PDB_PODLY_DLY2_MASK 0xFFFFu
  6249. #define PDB_PODLY_DLY2_SHIFT 0
  6250. #define PDB_PODLY_DLY2(x) (((uint32_t)(((uint32_t)(x))<<PDB_PODLY_DLY2_SHIFT))&PDB_PODLY_DLY2_MASK)
  6251. #define PDB_PODLY_DLY1_MASK 0xFFFF0000u
  6252. #define PDB_PODLY_DLY1_SHIFT 16
  6253. #define PDB_PODLY_DLY1(x) (((uint32_t)(((uint32_t)(x))<<PDB_PODLY_DLY1_SHIFT))&PDB_PODLY_DLY1_MASK)
  6254. /*! \} */ /* end of group PDB_Register_Masks */
  6255. /* PDB - Peripheral instance base addresses */
  6256. /*! Peripheral PDB0 base address */
  6257. #define PDB0_BASE (0x40036000u)
  6258. /*! Peripheral PDB0 base pointer */
  6259. #define PDB0 ((PDB_Type *)PDB0_BASE)
  6260. /*! \} */ /* end of group PDB_Peripheral_Access_Layer */
  6261. /* ----------------------------------------------------------------------------
  6262. -- PIT Peripheral Access Layer
  6263. ---------------------------------------------------------------------------- */
  6264. /*! \addtogroup PIT_Peripheral_Access_Layer PIT Peripheral Access Layer */
  6265. /*! \{ */
  6266. /*! PIT - Register Layout Typedef */
  6267. typedef struct {
  6268. __IO uint32_t MCR; /*!< PIT Module Control Register, offset: 0x0 */
  6269. uint8_t RESERVED_0[252];
  6270. struct { /* offset: 0x100, array step: 0x10 */
  6271. __IO uint32_t LDVAL; /*!< Timer Load Value Register, array offset: 0x100, array step: 0x10 */
  6272. __I uint32_t CVAL; /*!< Current Timer Value Register, array offset: 0x104, array step: 0x10 */
  6273. __IO uint32_t TCTRL; /*!< Timer Control Register, array offset: 0x108, array step: 0x10 */
  6274. __IO uint32_t TFLG; /*!< Timer Flag Register, array offset: 0x10C, array step: 0x10 */
  6275. } CHANNEL[4];
  6276. } PIT_Type;
  6277. /* ----------------------------------------------------------------------------
  6278. -- PIT Register Masks
  6279. ---------------------------------------------------------------------------- */
  6280. /*! \addtogroup PIT_Register_Masks PIT Register Masks */
  6281. /*! \{ */
  6282. /* MCR Bit Fields */
  6283. #define PIT_MCR_FRZ_MASK 0x1u
  6284. #define PIT_MCR_FRZ_SHIFT 0
  6285. #define PIT_MCR_MDIS_MASK 0x2u
  6286. #define PIT_MCR_MDIS_SHIFT 1
  6287. /* LDVAL Bit Fields */
  6288. #define PIT_LDVAL_TSV_MASK 0xFFFFFFFFu
  6289. #define PIT_LDVAL_TSV_SHIFT 0
  6290. #define PIT_LDVAL_TSV(x) (((uint32_t)(((uint32_t)(x))<<PIT_LDVAL_TSV_SHIFT))&PIT_LDVAL_TSV_MASK)
  6291. /* CVAL Bit Fields */
  6292. #define PIT_CVAL_TVL_MASK 0xFFFFFFFFu
  6293. #define PIT_CVAL_TVL_SHIFT 0
  6294. #define PIT_CVAL_TVL(x) (((uint32_t)(((uint32_t)(x))<<PIT_CVAL_TVL_SHIFT))&PIT_CVAL_TVL_MASK)
  6295. /* TCTRL Bit Fields */
  6296. #define PIT_TCTRL_TEN_MASK 0x1u
  6297. #define PIT_TCTRL_TEN_SHIFT 0
  6298. #define PIT_TCTRL_TIE_MASK 0x2u
  6299. #define PIT_TCTRL_TIE_SHIFT 1
  6300. /* TFLG Bit Fields */
  6301. #define PIT_TFLG_TIF_MASK 0x1u
  6302. #define PIT_TFLG_TIF_SHIFT 0
  6303. /*! \} */ /* end of group PIT_Register_Masks */
  6304. /* PIT - Peripheral instance base addresses */
  6305. /*! Peripheral PIT base address */
  6306. #define PIT_BASE (0x40037000u)
  6307. /*! Peripheral PIT base pointer */
  6308. #define PIT ((PIT_Type *)PIT_BASE)
  6309. /*! \} */ /* end of group PIT_Peripheral_Access_Layer */
  6310. /* ----------------------------------------------------------------------------
  6311. -- PMC Peripheral Access Layer
  6312. ---------------------------------------------------------------------------- */
  6313. /*! \addtogroup PMC_Peripheral_Access_Layer PMC Peripheral Access Layer */
  6314. /*! \{ */
  6315. /*! PMC - Register Layout Typedef */
  6316. typedef struct {
  6317. __IO uint8_t LVDSC1; /*!< Low Voltage Detect Status and Control 1 Register, offset: 0x0 */
  6318. __IO uint8_t LVDSC2; /*!< Low Voltage Detect Status and Control 2 Register, offset: 0x1 */
  6319. __IO uint8_t REGSC; /*!< Regulator Status and Control Register, offset: 0x2 */
  6320. } PMC_Type;
  6321. /* ----------------------------------------------------------------------------
  6322. -- PMC Register Masks
  6323. ---------------------------------------------------------------------------- */
  6324. /*! \addtogroup PMC_Register_Masks PMC Register Masks */
  6325. /*! \{ */
  6326. /* LVDSC1 Bit Fields */
  6327. #define PMC_LVDSC1_LVDV_MASK 0x3u
  6328. #define PMC_LVDSC1_LVDV_SHIFT 0
  6329. #define PMC_LVDSC1_LVDV(x) (((uint8_t)(((uint8_t)(x))<<PMC_LVDSC1_LVDV_SHIFT))&PMC_LVDSC1_LVDV_MASK)
  6330. #define PMC_LVDSC1_LVDRE_MASK 0x10u
  6331. #define PMC_LVDSC1_LVDRE_SHIFT 4
  6332. #define PMC_LVDSC1_LVDIE_MASK 0x20u
  6333. #define PMC_LVDSC1_LVDIE_SHIFT 5
  6334. #define PMC_LVDSC1_LVDACK_MASK 0x40u
  6335. #define PMC_LVDSC1_LVDACK_SHIFT 6
  6336. #define PMC_LVDSC1_LVDF_MASK 0x80u
  6337. #define PMC_LVDSC1_LVDF_SHIFT 7
  6338. /* LVDSC2 Bit Fields */
  6339. #define PMC_LVDSC2_LVWV_MASK 0x3u
  6340. #define PMC_LVDSC2_LVWV_SHIFT 0
  6341. #define PMC_LVDSC2_LVWV(x) (((uint8_t)(((uint8_t)(x))<<PMC_LVDSC2_LVWV_SHIFT))&PMC_LVDSC2_LVWV_MASK)
  6342. #define PMC_LVDSC2_LVWIE_MASK 0x20u
  6343. #define PMC_LVDSC2_LVWIE_SHIFT 5
  6344. #define PMC_LVDSC2_LVWACK_MASK 0x40u
  6345. #define PMC_LVDSC2_LVWACK_SHIFT 6
  6346. #define PMC_LVDSC2_LVWF_MASK 0x80u
  6347. #define PMC_LVDSC2_LVWF_SHIFT 7
  6348. /* REGSC Bit Fields */
  6349. #define PMC_REGSC_BGBE_MASK 0x1u
  6350. #define PMC_REGSC_BGBE_SHIFT 0
  6351. #define PMC_REGSC_REGONS_MASK 0x4u
  6352. #define PMC_REGSC_REGONS_SHIFT 2
  6353. #define PMC_REGSC_VLPRS_MASK 0x8u
  6354. #define PMC_REGSC_VLPRS_SHIFT 3
  6355. #define PMC_REGSC_TRAMPO_MASK 0x10u
  6356. #define PMC_REGSC_TRAMPO_SHIFT 4
  6357. /*! \} */ /* end of group PMC_Register_Masks */
  6358. /* PMC - Peripheral instance base addresses */
  6359. /*! Peripheral PMC base address */
  6360. #define PMC_BASE (0x4007D000u)
  6361. /*! Peripheral PMC base pointer */
  6362. #define PMC ((PMC_Type *)PMC_BASE)
  6363. /*! \} */ /* end of group PMC_Peripheral_Access_Layer */
  6364. /* ----------------------------------------------------------------------------
  6365. -- PORT Peripheral Access Layer
  6366. ---------------------------------------------------------------------------- */
  6367. /*! \addtogroup PORT_Peripheral_Access_Layer PORT Peripheral Access Layer */
  6368. /*! \{ */
  6369. /*! PORT - Register Layout Typedef */
  6370. typedef struct {
  6371. __IO uint32_t PCR[32]; /*!< Pin Control Register n, array offset: 0x0, array step: 0x4 */
  6372. __O uint32_t GPCLR; /*!< Global Pin Control Low Register, offset: 0x80 */
  6373. __O uint32_t GPCHR; /*!< Global Pin Control High Register, offset: 0x84 */
  6374. uint8_t RESERVED_0[24];
  6375. __IO uint32_t ISFR; /*!< Interrupt Status Flag Register, offset: 0xA0 */
  6376. uint8_t RESERVED_1[28];
  6377. __IO uint32_t DFER; /*!< Digital Filter Enable Register, offset: 0xC0 */
  6378. __IO uint32_t DFCR; /*!< Digital Filter Clock Register, offset: 0xC4 */
  6379. __IO uint32_t DFWR; /*!< Digital Filter Width Register, offset: 0xC8 */
  6380. } PORT_Type;
  6381. /* ----------------------------------------------------------------------------
  6382. -- PORT Register Masks
  6383. ---------------------------------------------------------------------------- */
  6384. /*! \addtogroup PORT_Register_Masks PORT Register Masks */
  6385. /*! \{ */
  6386. /* PCR Bit Fields */
  6387. #define PORT_PCR_PS_MASK 0x1u
  6388. #define PORT_PCR_PS_SHIFT 0
  6389. #define PORT_PCR_PE_MASK 0x2u
  6390. #define PORT_PCR_PE_SHIFT 1
  6391. #define PORT_PCR_SRE_MASK 0x4u
  6392. #define PORT_PCR_SRE_SHIFT 2
  6393. #define PORT_PCR_PFE_MASK 0x10u
  6394. #define PORT_PCR_PFE_SHIFT 4
  6395. #define PORT_PCR_ODE_MASK 0x20u
  6396. #define PORT_PCR_ODE_SHIFT 5
  6397. #define PORT_PCR_DSE_MASK 0x40u
  6398. #define PORT_PCR_DSE_SHIFT 6
  6399. #define PORT_PCR_MUX_MASK 0x700u
  6400. #define PORT_PCR_MUX_SHIFT 8
  6401. #define PORT_PCR_MUX(x) (((uint32_t)(((uint32_t)(x))<<PORT_PCR_MUX_SHIFT))&PORT_PCR_MUX_MASK)
  6402. #define PORT_PCR_LK_MASK 0x8000u
  6403. #define PORT_PCR_LK_SHIFT 15
  6404. #define PORT_PCR_IRQC_MASK 0xF0000u
  6405. #define PORT_PCR_IRQC_SHIFT 16
  6406. #define PORT_PCR_IRQC(x) (((uint32_t)(((uint32_t)(x))<<PORT_PCR_IRQC_SHIFT))&PORT_PCR_IRQC_MASK)
  6407. #define PORT_PCR_ISF_MASK 0x1000000u
  6408. #define PORT_PCR_ISF_SHIFT 24
  6409. /* GPCLR Bit Fields */
  6410. #define PORT_GPCLR_GPWD_MASK 0xFFFFu
  6411. #define PORT_GPCLR_GPWD_SHIFT 0
  6412. #define PORT_GPCLR_GPWD(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWD_SHIFT))&PORT_GPCLR_GPWD_MASK)
  6413. #define PORT_GPCLR_GPWE_MASK 0xFFFF0000u
  6414. #define PORT_GPCLR_GPWE_SHIFT 16
  6415. #define PORT_GPCLR_GPWE(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWE_SHIFT))&PORT_GPCLR_GPWE_MASK)
  6416. /* GPCHR Bit Fields */
  6417. #define PORT_GPCHR_GPWD_MASK 0xFFFFu
  6418. #define PORT_GPCHR_GPWD_SHIFT 0
  6419. #define PORT_GPCHR_GPWD(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWD_SHIFT))&PORT_GPCHR_GPWD_MASK)
  6420. #define PORT_GPCHR_GPWE_MASK 0xFFFF0000u
  6421. #define PORT_GPCHR_GPWE_SHIFT 16
  6422. #define PORT_GPCHR_GPWE(x) (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWE_SHIFT))&PORT_GPCHR_GPWE_MASK)
  6423. /* ISFR Bit Fields */
  6424. #define PORT_ISFR_ISF_MASK 0xFFFFFFFFu
  6425. #define PORT_ISFR_ISF_SHIFT 0
  6426. #define PORT_ISFR_ISF(x) (((uint32_t)(((uint32_t)(x))<<PORT_ISFR_ISF_SHIFT))&PORT_ISFR_ISF_MASK)
  6427. /* DFER Bit Fields */
  6428. #define PORT_DFER_DFE_MASK 0xFFFFFFFFu
  6429. #define PORT_DFER_DFE_SHIFT 0
  6430. #define PORT_DFER_DFE(x) (((uint32_t)(((uint32_t)(x))<<PORT_DFER_DFE_SHIFT))&PORT_DFER_DFE_MASK)
  6431. /* DFCR Bit Fields */
  6432. #define PORT_DFCR_CS_MASK 0x1u
  6433. #define PORT_DFCR_CS_SHIFT 0
  6434. /* DFWR Bit Fields */
  6435. #define PORT_DFWR_FILT_MASK 0x1Fu
  6436. #define PORT_DFWR_FILT_SHIFT 0
  6437. #define PORT_DFWR_FILT(x) (((uint32_t)(((uint32_t)(x))<<PORT_DFWR_FILT_SHIFT))&PORT_DFWR_FILT_MASK)
  6438. /*! \} */ /* end of group PORT_Register_Masks */
  6439. /* PORT - Peripheral instance base addresses */
  6440. /*! Peripheral PORTA base address */
  6441. #define PORTA_BASE (0x40049000u)
  6442. /*! Peripheral PORTA base pointer */
  6443. #define PORTA ((PORT_Type *)PORTA_BASE)
  6444. /*! Peripheral PORTB base address */
  6445. #define PORTB_BASE (0x4004A000u)
  6446. /*! Peripheral PORTB base pointer */
  6447. #define PORTB ((PORT_Type *)PORTB_BASE)
  6448. /*! Peripheral PORTC base address */
  6449. #define PORTC_BASE (0x4004B000u)
  6450. /*! Peripheral PORTC base pointer */
  6451. #define PORTC ((PORT_Type *)PORTC_BASE)
  6452. /*! Peripheral PORTD base address */
  6453. #define PORTD_BASE (0x4004C000u)
  6454. /*! Peripheral PORTD base pointer */
  6455. #define PORTD ((PORT_Type *)PORTD_BASE)
  6456. /*! Peripheral PORTE base address */
  6457. #define PORTE_BASE (0x4004D000u)
  6458. /*! Peripheral PORTE base pointer */
  6459. #define PORTE ((PORT_Type *)PORTE_BASE)
  6460. /*! \} */ /* end of group PORT_Peripheral_Access_Layer */
  6461. /* ----------------------------------------------------------------------------
  6462. -- GPIO Peripheral Access Layer
  6463. ---------------------------------------------------------------------------- */
  6464. /*! \addtogroup GPIO_Peripheral_Access_Layer GPIO Peripheral Access Layer */
  6465. /*! \{ */
  6466. /*! GPIO - Register Layout Typedef */
  6467. typedef struct {
  6468. __IO uint32_t PDOR; /*!< Port Data Output Register, offset: 0x0 */
  6469. __O uint32_t PSOR; /*!< Port Set Output Register, offset: 0x4 */
  6470. __O uint32_t PCOR; /*!< Port Clear Output Register, offset: 0x8 */
  6471. __O uint32_t PTOR; /*!< Port Toggle Output Register, offset: 0xC */
  6472. __I uint32_t PDIR; /*!< Port Data Input Register, offset: 0x10 */
  6473. __IO uint32_t PDDR; /*!< Port Data Direction Register, offset: 0x14 */
  6474. } GPIO_Type;
  6475. /* ----------------------------------------------------------------------------
  6476. -- GPIO Register Masks
  6477. ---------------------------------------------------------------------------- */
  6478. /*! \addtogroup GPIO_Register_Masks GPIO Register Masks */
  6479. /*! \{ */
  6480. /* PDOR Bit Fields */
  6481. #define GPIO_PDOR_PDO_MASK 0xFFFFFFFFu
  6482. #define GPIO_PDOR_PDO_SHIFT 0
  6483. #define GPIO_PDOR_PDO(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PDOR_PDO_SHIFT))&GPIO_PDOR_PDO_MASK)
  6484. /* PSOR Bit Fields */
  6485. #define GPIO_PSOR_PTSO_MASK 0xFFFFFFFFu
  6486. #define GPIO_PSOR_PTSO_SHIFT 0
  6487. #define GPIO_PSOR_PTSO(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PSOR_PTSO_SHIFT))&GPIO_PSOR_PTSO_MASK)
  6488. /* PCOR Bit Fields */
  6489. #define GPIO_PCOR_PTCO_MASK 0xFFFFFFFFu
  6490. #define GPIO_PCOR_PTCO_SHIFT 0
  6491. #define GPIO_PCOR_PTCO(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PCOR_PTCO_SHIFT))&GPIO_PCOR_PTCO_MASK)
  6492. /* PTOR Bit Fields */
  6493. #define GPIO_PTOR_PTTO_MASK 0xFFFFFFFFu
  6494. #define GPIO_PTOR_PTTO_SHIFT 0
  6495. #define GPIO_PTOR_PTTO(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PTOR_PTTO_SHIFT))&GPIO_PTOR_PTTO_MASK)
  6496. /* PDIR Bit Fields */
  6497. #define GPIO_PDIR_PDI_MASK 0xFFFFFFFFu
  6498. #define GPIO_PDIR_PDI_SHIFT 0
  6499. #define GPIO_PDIR_PDI(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PDIR_PDI_SHIFT))&GPIO_PDIR_PDI_MASK)
  6500. /* PDDR Bit Fields */
  6501. #define GPIO_PDDR_PDD_MASK 0xFFFFFFFFu
  6502. #define GPIO_PDDR_PDD_SHIFT 0
  6503. #define GPIO_PDDR_PDD(x) (((uint32_t)(((uint32_t)(x))<<GPIO_PDDR_PDD_SHIFT))&GPIO_PDDR_PDD_MASK)
  6504. /*! \} */ /* end of group GPIO_Register_Masks */
  6505. /* GPIO - Peripheral instance base addresses */
  6506. /*! Peripheral PTA base address */
  6507. #define PTA_BASE (0x400FF000u)
  6508. /*! Peripheral PTA base pointer */
  6509. #define PTA ((GPIO_Type *)PTA_BASE)
  6510. /*! Peripheral PTB base address */
  6511. #define PTB_BASE (0x400FF040u)
  6512. /*! Peripheral PTB base pointer */
  6513. #define PTB ((GPIO_Type *)PTB_BASE)
  6514. /*! Peripheral PTC base address */
  6515. #define PTC_BASE (0x400FF080u)
  6516. /*! Peripheral PTC base pointer */
  6517. #define PTC ((GPIO_Type *)PTC_BASE)
  6518. /*! Peripheral PTD base address */
  6519. #define PTD_BASE (0x400FF0C0u)
  6520. /*! Peripheral PTD base pointer */
  6521. #define PTD ((GPIO_Type *)PTD_BASE)
  6522. /*! Peripheral PTE base address */
  6523. #define PTE_BASE (0x400FF100u)
  6524. /*! Peripheral PTE base pointer */
  6525. #define PTE ((GPIO_Type *)PTE_BASE)
  6526. /*! \} */ /* end of group GPIO_Peripheral_Access_Layer */
  6527. /* ----------------------------------------------------------------------------
  6528. -- RFSYS Peripheral Access Layer
  6529. ---------------------------------------------------------------------------- */
  6530. /*! \addtogroup RFSYS_Peripheral_Access_Layer RFSYS Peripheral Access Layer */
  6531. /*! \{ */
  6532. /*! RFSYS - Register Layout Typedef */
  6533. typedef struct {
  6534. __IO uint32_t REG[8]; /*!< Register file register, array offset: 0x0, array step: 0x4 */
  6535. } RFSYS_Type;
  6536. /* ----------------------------------------------------------------------------
  6537. -- RFSYS Register Masks
  6538. ---------------------------------------------------------------------------- */
  6539. /*! \addtogroup RFSYS_Register_Masks RFSYS Register Masks */
  6540. /*! \{ */
  6541. /* REG Bit Fields */
  6542. #define RFSYS_REG_LL_MASK 0xFFu
  6543. #define RFSYS_REG_LL_SHIFT 0
  6544. #define RFSYS_REG_LL(x) (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_LL_SHIFT))&RFSYS_REG_LL_MASK)
  6545. #define RFSYS_REG_LH_MASK 0xFF00u
  6546. #define RFSYS_REG_LH_SHIFT 8
  6547. #define RFSYS_REG_LH(x) (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_LH_SHIFT))&RFSYS_REG_LH_MASK)
  6548. #define RFSYS_REG_HL_MASK 0xFF0000u
  6549. #define RFSYS_REG_HL_SHIFT 16
  6550. #define RFSYS_REG_HL(x) (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_HL_SHIFT))&RFSYS_REG_HL_MASK)
  6551. #define RFSYS_REG_HH_MASK 0xFF000000u
  6552. #define RFSYS_REG_HH_SHIFT 24
  6553. #define RFSYS_REG_HH(x) (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_HH_SHIFT))&RFSYS_REG_HH_MASK)
  6554. /*! \} */ /* end of group RFSYS_Register_Masks */
  6555. /* RFSYS - Peripheral instance base addresses */
  6556. /*! Peripheral RFSYS base address */
  6557. #define RFSYS_BASE (0x40041000u)
  6558. /*! Peripheral RFSYS base pointer */
  6559. #define RFSYS ((RFSYS_Type *)RFSYS_BASE)
  6560. /*! \} */ /* end of group RFSYS_Peripheral_Access_Layer */
  6561. /* ----------------------------------------------------------------------------
  6562. -- RFVBAT Peripheral Access Layer
  6563. ---------------------------------------------------------------------------- */
  6564. /*! \addtogroup RFVBAT_Peripheral_Access_Layer RFVBAT Peripheral Access Layer */
  6565. /*! \{ */
  6566. /*! RFVBAT - Register Layout Typedef */
  6567. typedef struct {
  6568. __IO uint32_t REG[8]; /*!< VBAT register file register, array offset: 0x0, array step: 0x4 */
  6569. } RFVBAT_Type;
  6570. /* ----------------------------------------------------------------------------
  6571. -- RFVBAT Register Masks
  6572. ---------------------------------------------------------------------------- */
  6573. /*! \addtogroup RFVBAT_Register_Masks RFVBAT Register Masks */
  6574. /*! \{ */
  6575. /* REG Bit Fields */
  6576. #define RFVBAT_REG_LL_MASK 0xFFu
  6577. #define RFVBAT_REG_LL_SHIFT 0
  6578. #define RFVBAT_REG_LL(x) (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_LL_SHIFT))&RFVBAT_REG_LL_MASK)
  6579. #define RFVBAT_REG_LH_MASK 0xFF00u
  6580. #define RFVBAT_REG_LH_SHIFT 8
  6581. #define RFVBAT_REG_LH(x) (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_LH_SHIFT))&RFVBAT_REG_LH_MASK)
  6582. #define RFVBAT_REG_HL_MASK 0xFF0000u
  6583. #define RFVBAT_REG_HL_SHIFT 16
  6584. #define RFVBAT_REG_HL(x) (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_HL_SHIFT))&RFVBAT_REG_HL_MASK)
  6585. #define RFVBAT_REG_HH_MASK 0xFF000000u
  6586. #define RFVBAT_REG_HH_SHIFT 24
  6587. #define RFVBAT_REG_HH(x) (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_HH_SHIFT))&RFVBAT_REG_HH_MASK)
  6588. /*! \} */ /* end of group RFVBAT_Register_Masks */
  6589. /* RFVBAT - Peripheral instance base addresses */
  6590. /*! Peripheral RFVBAT base address */
  6591. #define RFVBAT_BASE (0x4003E000u)
  6592. /*! Peripheral RFVBAT base pointer */
  6593. #define RFVBAT ((RFVBAT_Type *)RFVBAT_BASE)
  6594. /*! \} */ /* end of group RFVBAT_Peripheral_Access_Layer */
  6595. /* ----------------------------------------------------------------------------
  6596. -- RTC Peripheral Access Layer
  6597. ---------------------------------------------------------------------------- */
  6598. /*! \addtogroup RTC_Peripheral_Access_Layer RTC Peripheral Access Layer */
  6599. /*! \{ */
  6600. /*! RTC - Register Layout Typedef */
  6601. typedef struct {
  6602. __IO uint32_t TSR; /*!< RTC Time Seconds Register, offset: 0x0 */
  6603. __IO uint32_t TPR; /*!< RTC Time Prescaler Register, offset: 0x4 */
  6604. __IO uint32_t TAR; /*!< RTC Time Alarm Register, offset: 0x8 */
  6605. __IO uint32_t TCR; /*!< RTC Time Compensation Register, offset: 0xC */
  6606. __IO uint32_t CR; /*!< RTC Control Register, offset: 0x10 */
  6607. __IO uint32_t SR; /*!< RTC Status Register, offset: 0x14 */
  6608. __IO uint32_t LR; /*!< RTC Lock Register, offset: 0x18 */
  6609. __IO uint32_t CCR; /*!< RTC Chip Configuration Register, offset: 0x1C */
  6610. uint8_t RESERVED_0[2016];
  6611. __IO uint32_t WAR; /*!< RTC Write Access Register, offset: 0x800 */
  6612. __IO uint32_t RAR; /*!< RTC Read Access Register, offset: 0x804 */
  6613. } RTC_Type;
  6614. /* ----------------------------------------------------------------------------
  6615. -- RTC Register Masks
  6616. ---------------------------------------------------------------------------- */
  6617. /*! \addtogroup RTC_Register_Masks RTC Register Masks */
  6618. /*! \{ */
  6619. /* TSR Bit Fields */
  6620. #define RTC_TSR_TSR_MASK 0xFFFFFFFFu
  6621. #define RTC_TSR_TSR_SHIFT 0
  6622. #define RTC_TSR_TSR(x) (((uint32_t)(((uint32_t)(x))<<RTC_TSR_TSR_SHIFT))&RTC_TSR_TSR_MASK)
  6623. /* TPR Bit Fields */
  6624. #define RTC_TPR_TPR_MASK 0xFFFFu
  6625. #define RTC_TPR_TPR_SHIFT 0
  6626. #define RTC_TPR_TPR(x) (((uint32_t)(((uint32_t)(x))<<RTC_TPR_TPR_SHIFT))&RTC_TPR_TPR_MASK)
  6627. /* TAR Bit Fields */
  6628. #define RTC_TAR_TAR_MASK 0xFFFFFFFFu
  6629. #define RTC_TAR_TAR_SHIFT 0
  6630. #define RTC_TAR_TAR(x) (((uint32_t)(((uint32_t)(x))<<RTC_TAR_TAR_SHIFT))&RTC_TAR_TAR_MASK)
  6631. /* TCR Bit Fields */
  6632. #define RTC_TCR_TCR_MASK 0xFFu
  6633. #define RTC_TCR_TCR_SHIFT 0
  6634. #define RTC_TCR_TCR(x) (((uint32_t)(((uint32_t)(x))<<RTC_TCR_TCR_SHIFT))&RTC_TCR_TCR_MASK)
  6635. #define RTC_TCR_CIR_MASK 0xFF00u
  6636. #define RTC_TCR_CIR_SHIFT 8
  6637. #define RTC_TCR_CIR(x) (((uint32_t)(((uint32_t)(x))<<RTC_TCR_CIR_SHIFT))&RTC_TCR_CIR_MASK)
  6638. #define RTC_TCR_TCV_MASK 0xFF0000u
  6639. #define RTC_TCR_TCV_SHIFT 16
  6640. #define RTC_TCR_TCV(x) (((uint32_t)(((uint32_t)(x))<<RTC_TCR_TCV_SHIFT))&RTC_TCR_TCV_MASK)
  6641. #define RTC_TCR_CIC_MASK 0xFF000000u
  6642. #define RTC_TCR_CIC_SHIFT 24
  6643. #define RTC_TCR_CIC(x) (((uint32_t)(((uint32_t)(x))<<RTC_TCR_CIC_SHIFT))&RTC_TCR_CIC_MASK)
  6644. /* CR Bit Fields */
  6645. #define RTC_CR_SWR_MASK 0x1u
  6646. #define RTC_CR_SWR_SHIFT 0
  6647. #define RTC_CR_WPE_MASK 0x2u
  6648. #define RTC_CR_WPE_SHIFT 1
  6649. #define RTC_CR_SUP_MASK 0x4u
  6650. #define RTC_CR_SUP_SHIFT 2
  6651. #define RTC_CR_UM_MASK 0x8u
  6652. #define RTC_CR_UM_SHIFT 3
  6653. #define RTC_CR_OSCE_MASK 0x100u
  6654. #define RTC_CR_OSCE_SHIFT 8
  6655. #define RTC_CR_CLKO_MASK 0x200u
  6656. #define RTC_CR_CLKO_SHIFT 9
  6657. #define RTC_CR_SC16P_MASK 0x400u
  6658. #define RTC_CR_SC16P_SHIFT 10
  6659. #define RTC_CR_SC8P_MASK 0x800u
  6660. #define RTC_CR_SC8P_SHIFT 11
  6661. #define RTC_CR_SC4P_MASK 0x1000u
  6662. #define RTC_CR_SC4P_SHIFT 12
  6663. #define RTC_CR_SC2P_MASK 0x2000u
  6664. #define RTC_CR_SC2P_SHIFT 13
  6665. /* SR Bit Fields */
  6666. #define RTC_SR_TIF_MASK 0x1u
  6667. #define RTC_SR_TIF_SHIFT 0
  6668. #define RTC_SR_TOF_MASK 0x2u
  6669. #define RTC_SR_TOF_SHIFT 1
  6670. #define RTC_SR_TAF_MASK 0x4u
  6671. #define RTC_SR_TAF_SHIFT 2
  6672. #define RTC_SR_TCE_MASK 0x10u
  6673. #define RTC_SR_TCE_SHIFT 4
  6674. /* LR Bit Fields */
  6675. #define RTC_LR_TCL_MASK 0x8u
  6676. #define RTC_LR_TCL_SHIFT 3
  6677. #define RTC_LR_CRL_MASK 0x10u
  6678. #define RTC_LR_CRL_SHIFT 4
  6679. #define RTC_LR_SRL_MASK 0x20u
  6680. #define RTC_LR_SRL_SHIFT 5
  6681. /* CCR Bit Fields */
  6682. #define RTC_CCR_CONFIG_MASK 0xFFu
  6683. #define RTC_CCR_CONFIG_SHIFT 0
  6684. #define RTC_CCR_CONFIG(x) (((uint32_t)(((uint32_t)(x))<<RTC_CCR_CONFIG_SHIFT))&RTC_CCR_CONFIG_MASK)
  6685. /* WAR Bit Fields */
  6686. #define RTC_WAR_TSRW_MASK 0x1u
  6687. #define RTC_WAR_TSRW_SHIFT 0
  6688. #define RTC_WAR_TPRW_MASK 0x2u
  6689. #define RTC_WAR_TPRW_SHIFT 1
  6690. #define RTC_WAR_TARW_MASK 0x4u
  6691. #define RTC_WAR_TARW_SHIFT 2
  6692. #define RTC_WAR_TCRW_MASK 0x8u
  6693. #define RTC_WAR_TCRW_SHIFT 3
  6694. #define RTC_WAR_CRW_MASK 0x10u
  6695. #define RTC_WAR_CRW_SHIFT 4
  6696. #define RTC_WAR_SRW_MASK 0x20u
  6697. #define RTC_WAR_SRW_SHIFT 5
  6698. #define RTC_WAR_LRW_MASK 0x40u
  6699. #define RTC_WAR_LRW_SHIFT 6
  6700. #define RTC_WAR_CCRW_MASK 0x80u
  6701. #define RTC_WAR_CCRW_SHIFT 7
  6702. /* RAR Bit Fields */
  6703. #define RTC_RAR_TSRR_MASK 0x1u
  6704. #define RTC_RAR_TSRR_SHIFT 0
  6705. #define RTC_RAR_TPRR_MASK 0x2u
  6706. #define RTC_RAR_TPRR_SHIFT 1
  6707. #define RTC_RAR_TARR_MASK 0x4u
  6708. #define RTC_RAR_TARR_SHIFT 2
  6709. #define RTC_RAR_TCRR_MASK 0x8u
  6710. #define RTC_RAR_TCRR_SHIFT 3
  6711. #define RTC_RAR_CRR_MASK 0x10u
  6712. #define RTC_RAR_CRR_SHIFT 4
  6713. #define RTC_RAR_SRR_MASK 0x20u
  6714. #define RTC_RAR_SRR_SHIFT 5
  6715. #define RTC_RAR_LRR_MASK 0x40u
  6716. #define RTC_RAR_LRR_SHIFT 6
  6717. #define RTC_RAR_CCRR_MASK 0x80u
  6718. #define RTC_RAR_CCRR_SHIFT 7
  6719. /*! \} */ /* end of group RTC_Register_Masks */
  6720. /* RTC - Peripheral instance base addresses */
  6721. /*! Peripheral RTC base address */
  6722. #define RTC_BASE (0x4003D000u)
  6723. /*! Peripheral RTC base pointer */
  6724. #define RTC ((RTC_Type *)RTC_BASE)
  6725. /*! \} */ /* end of group RTC_Peripheral_Access_Layer */
  6726. /* ----------------------------------------------------------------------------
  6727. -- SDHC Peripheral Access Layer
  6728. ---------------------------------------------------------------------------- */
  6729. /*! \addtogroup SDHC_Peripheral_Access_Layer SDHC Peripheral Access Layer */
  6730. /*! \{ */
  6731. /*! SDHC - Register Layout Typedef */
  6732. typedef struct {
  6733. __IO uint32_t DSADDR; /*!< DMA System Address Register, offset: 0x0 */
  6734. __IO uint32_t BLKATTR; /*!< Block Attributes Register, offset: 0x4 */
  6735. __IO uint32_t CMDARG; /*!< Command Argument Register, offset: 0x8 */
  6736. __IO uint32_t XFERTYP; /*!< Transfer Type Register, offset: 0xC */
  6737. __I uint32_t CMDRSP[4]; /*!< Command Response 0..Command Response 3, array offset: 0x10, array step: 0x4 */
  6738. __IO uint32_t DATPORT; /*!< Buffer Data Port Register, offset: 0x20 */
  6739. __I uint32_t PRSSTAT; /*!< Present State Register, offset: 0x24 */
  6740. __IO uint32_t PROCTL; /*!< Protocol Control Register, offset: 0x28 */
  6741. __IO uint32_t SYSCTL; /*!< System Control Register, offset: 0x2C */
  6742. __IO uint32_t IRQSTAT; /*!< Interrupt Status Register, offset: 0x30 */
  6743. __IO uint32_t IRQSTATEN; /*!< Interrupt Status Enable Register, offset: 0x34 */
  6744. __IO uint32_t IRQSIGEN; /*!< Interrupt Signal Enable Register, offset: 0x38 */
  6745. __I uint32_t AC12ERR; /*!< Auto CMD12 Error Status Register, offset: 0x3C */
  6746. __I uint32_t HTCAPBLT; /*!< Host Controller Capabilities, offset: 0x40 */
  6747. __IO uint32_t WML; /*!< Watermark Level Register, offset: 0x44 */
  6748. uint8_t RESERVED_0[8];
  6749. __O uint32_t FEVT; /*!< Force Event Register, offset: 0x50 */
  6750. __I uint32_t ADMAES; /*!< ADMA Error Status Register, offset: 0x54 */
  6751. __IO uint32_t ADSADDR; /*!< ADMA System Address Register, offset: 0x58 */
  6752. uint8_t RESERVED_1[100];
  6753. __IO uint32_t VENDOR; /*!< Vendor Specific Register, offset: 0xC0 */
  6754. __IO uint32_t MMCBOOT; /*!< MMC Boot Register, offset: 0xC4 */
  6755. uint8_t RESERVED_2[52];
  6756. __I uint32_t HOSTVER; /*!< Host Controller Version, offset: 0xFC */
  6757. } SDHC_Type;
  6758. /* ----------------------------------------------------------------------------
  6759. -- SDHC Register Masks
  6760. ---------------------------------------------------------------------------- */
  6761. /*! \addtogroup SDHC_Register_Masks SDHC Register Masks */
  6762. /*! \{ */
  6763. /* DSADDR Bit Fields */
  6764. #define SDHC_DSADDR_DSADDR_MASK 0xFFFFFFFCu
  6765. #define SDHC_DSADDR_DSADDR_SHIFT 2
  6766. #define SDHC_DSADDR_DSADDR(x) (((uint32_t)(((uint32_t)(x))<<SDHC_DSADDR_DSADDR_SHIFT))&SDHC_DSADDR_DSADDR_MASK)
  6767. /* BLKATTR Bit Fields */
  6768. #define SDHC_BLKATTR_BLKSIZE_MASK 0x1FFFu
  6769. #define SDHC_BLKATTR_BLKSIZE_SHIFT 0
  6770. #define SDHC_BLKATTR_BLKSIZE(x) (((uint32_t)(((uint32_t)(x))<<SDHC_BLKATTR_BLKSIZE_SHIFT))&SDHC_BLKATTR_BLKSIZE_MASK)
  6771. #define SDHC_BLKATTR_BLKCNT_MASK 0xFFFF0000u
  6772. #define SDHC_BLKATTR_BLKCNT_SHIFT 16
  6773. #define SDHC_BLKATTR_BLKCNT(x) (((uint32_t)(((uint32_t)(x))<<SDHC_BLKATTR_BLKCNT_SHIFT))&SDHC_BLKATTR_BLKCNT_MASK)
  6774. /* CMDARG Bit Fields */
  6775. #define SDHC_CMDARG_CMDARG_MASK 0xFFFFFFFFu
  6776. #define SDHC_CMDARG_CMDARG_SHIFT 0
  6777. #define SDHC_CMDARG_CMDARG(x) (((uint32_t)(((uint32_t)(x))<<SDHC_CMDARG_CMDARG_SHIFT))&SDHC_CMDARG_CMDARG_MASK)
  6778. /* XFERTYP Bit Fields */
  6779. #define SDHC_XFERTYP_DMAEN_MASK 0x1u
  6780. #define SDHC_XFERTYP_DMAEN_SHIFT 0
  6781. #define SDHC_XFERTYP_BCEN_MASK 0x2u
  6782. #define SDHC_XFERTYP_BCEN_SHIFT 1
  6783. #define SDHC_XFERTYP_AC12EN_MASK 0x4u
  6784. #define SDHC_XFERTYP_AC12EN_SHIFT 2
  6785. #define SDHC_XFERTYP_DTDSEL_MASK 0x10u
  6786. #define SDHC_XFERTYP_DTDSEL_SHIFT 4
  6787. #define SDHC_XFERTYP_MSBSEL_MASK 0x20u
  6788. #define SDHC_XFERTYP_MSBSEL_SHIFT 5
  6789. #define SDHC_XFERTYP_RSPTYP_MASK 0x30000u
  6790. #define SDHC_XFERTYP_RSPTYP_SHIFT 16
  6791. #define SDHC_XFERTYP_RSPTYP(x) (((uint32_t)(((uint32_t)(x))<<SDHC_XFERTYP_RSPTYP_SHIFT))&SDHC_XFERTYP_RSPTYP_MASK)
  6792. #define SDHC_XFERTYP_CCCEN_MASK 0x80000u
  6793. #define SDHC_XFERTYP_CCCEN_SHIFT 19
  6794. #define SDHC_XFERTYP_CICEN_MASK 0x100000u
  6795. #define SDHC_XFERTYP_CICEN_SHIFT 20
  6796. #define SDHC_XFERTYP_DPSEL_MASK 0x200000u
  6797. #define SDHC_XFERTYP_DPSEL_SHIFT 21
  6798. #define SDHC_XFERTYP_CMDTYP_MASK 0xC00000u
  6799. #define SDHC_XFERTYP_CMDTYP_SHIFT 22
  6800. #define SDHC_XFERTYP_CMDTYP(x) (((uint32_t)(((uint32_t)(x))<<SDHC_XFERTYP_CMDTYP_SHIFT))&SDHC_XFERTYP_CMDTYP_MASK)
  6801. #define SDHC_XFERTYP_CMDINX_MASK 0x3F000000u
  6802. #define SDHC_XFERTYP_CMDINX_SHIFT 24
  6803. #define SDHC_XFERTYP_CMDINX(x) (((uint32_t)(((uint32_t)(x))<<SDHC_XFERTYP_CMDINX_SHIFT))&SDHC_XFERTYP_CMDINX_MASK)
  6804. /* CMDRSP Bit Fields */
  6805. #define SDHC_CMDRSP_CMDRSP0_MASK 0xFFFFFFFFu
  6806. #define SDHC_CMDRSP_CMDRSP0_SHIFT 0
  6807. #define SDHC_CMDRSP_CMDRSP0(x) (((uint32_t)(((uint32_t)(x))<<SDHC_CMDRSP_CMDRSP0_SHIFT))&SDHC_CMDRSP_CMDRSP0_MASK)
  6808. #define SDHC_CMDRSP_CMDRSP1_MASK 0xFFFFFFFFu
  6809. #define SDHC_CMDRSP_CMDRSP1_SHIFT 0
  6810. #define SDHC_CMDRSP_CMDRSP1(x) (((uint32_t)(((uint32_t)(x))<<SDHC_CMDRSP_CMDRSP1_SHIFT))&SDHC_CMDRSP_CMDRSP1_MASK)
  6811. #define SDHC_CMDRSP_CMDRSP2_MASK 0xFFFFFFFFu
  6812. #define SDHC_CMDRSP_CMDRSP2_SHIFT 0
  6813. #define SDHC_CMDRSP_CMDRSP2(x) (((uint32_t)(((uint32_t)(x))<<SDHC_CMDRSP_CMDRSP2_SHIFT))&SDHC_CMDRSP_CMDRSP2_MASK)
  6814. #define SDHC_CMDRSP_CMDRSP3_MASK 0xFFFFFFFFu
  6815. #define SDHC_CMDRSP_CMDRSP3_SHIFT 0
  6816. #define SDHC_CMDRSP_CMDRSP3(x) (((uint32_t)(((uint32_t)(x))<<SDHC_CMDRSP_CMDRSP3_SHIFT))&SDHC_CMDRSP_CMDRSP3_MASK)
  6817. /* DATPORT Bit Fields */
  6818. #define SDHC_DATPORT_DATCONT_MASK 0xFFFFFFFFu
  6819. #define SDHC_DATPORT_DATCONT_SHIFT 0
  6820. #define SDHC_DATPORT_DATCONT(x) (((uint32_t)(((uint32_t)(x))<<SDHC_DATPORT_DATCONT_SHIFT))&SDHC_DATPORT_DATCONT_MASK)
  6821. /* PRSSTAT Bit Fields */
  6822. #define SDHC_PRSSTAT_CIHB_MASK 0x1u
  6823. #define SDHC_PRSSTAT_CIHB_SHIFT 0
  6824. #define SDHC_PRSSTAT_CDIHB_MASK 0x2u
  6825. #define SDHC_PRSSTAT_CDIHB_SHIFT 1
  6826. #define SDHC_PRSSTAT_DLA_MASK 0x4u
  6827. #define SDHC_PRSSTAT_DLA_SHIFT 2
  6828. #define SDHC_PRSSTAT_SDSTB_MASK 0x8u
  6829. #define SDHC_PRSSTAT_SDSTB_SHIFT 3
  6830. #define SDHC_PRSSTAT_IPGOFF_MASK 0x10u
  6831. #define SDHC_PRSSTAT_IPGOFF_SHIFT 4
  6832. #define SDHC_PRSSTAT_HCKOFF_MASK 0x20u
  6833. #define SDHC_PRSSTAT_HCKOFF_SHIFT 5
  6834. #define SDHC_PRSSTAT_PEROFF_MASK 0x40u
  6835. #define SDHC_PRSSTAT_PEROFF_SHIFT 6
  6836. #define SDHC_PRSSTAT_SDOFF_MASK 0x80u
  6837. #define SDHC_PRSSTAT_SDOFF_SHIFT 7
  6838. #define SDHC_PRSSTAT_WTA_MASK 0x100u
  6839. #define SDHC_PRSSTAT_WTA_SHIFT 8
  6840. #define SDHC_PRSSTAT_RTA_MASK 0x200u
  6841. #define SDHC_PRSSTAT_RTA_SHIFT 9
  6842. #define SDHC_PRSSTAT_BWEN_MASK 0x400u
  6843. #define SDHC_PRSSTAT_BWEN_SHIFT 10
  6844. #define SDHC_PRSSTAT_BREN_MASK 0x800u
  6845. #define SDHC_PRSSTAT_BREN_SHIFT 11
  6846. #define SDHC_PRSSTAT_CINS_MASK 0x10000u
  6847. #define SDHC_PRSSTAT_CINS_SHIFT 16
  6848. #define SDHC_PRSSTAT_CLSL_MASK 0x800000u
  6849. #define SDHC_PRSSTAT_CLSL_SHIFT 23
  6850. #define SDHC_PRSSTAT_DLSL_MASK 0xFF000000u
  6851. #define SDHC_PRSSTAT_DLSL_SHIFT 24
  6852. #define SDHC_PRSSTAT_DLSL(x) (((uint32_t)(((uint32_t)(x))<<SDHC_PRSSTAT_DLSL_SHIFT))&SDHC_PRSSTAT_DLSL_MASK)
  6853. /* PROCTL Bit Fields */
  6854. #define SDHC_PROCTL_LCTL_MASK 0x1u
  6855. #define SDHC_PROCTL_LCTL_SHIFT 0
  6856. #define SDHC_PROCTL_DTW_MASK 0x6u
  6857. #define SDHC_PROCTL_DTW_SHIFT 1
  6858. #define SDHC_PROCTL_DTW(x) (((uint32_t)(((uint32_t)(x))<<SDHC_PROCTL_DTW_SHIFT))&SDHC_PROCTL_DTW_MASK)
  6859. #define SDHC_PROCTL_D3CD_MASK 0x8u
  6860. #define SDHC_PROCTL_D3CD_SHIFT 3
  6861. #define SDHC_PROCTL_EMODE_MASK 0x30u
  6862. #define SDHC_PROCTL_EMODE_SHIFT 4
  6863. #define SDHC_PROCTL_EMODE(x) (((uint32_t)(((uint32_t)(x))<<SDHC_PROCTL_EMODE_SHIFT))&SDHC_PROCTL_EMODE_MASK)
  6864. #define SDHC_PROCTL_CDTL_MASK 0x40u
  6865. #define SDHC_PROCTL_CDTL_SHIFT 6
  6866. #define SDHC_PROCTL_CDSS_MASK 0x80u
  6867. #define SDHC_PROCTL_CDSS_SHIFT 7
  6868. #define SDHC_PROCTL_DMAS_MASK 0x300u
  6869. #define SDHC_PROCTL_DMAS_SHIFT 8
  6870. #define SDHC_PROCTL_DMAS(x) (((uint32_t)(((uint32_t)(x))<<SDHC_PROCTL_DMAS_SHIFT))&SDHC_PROCTL_DMAS_MASK)
  6871. #define SDHC_PROCTL_SABGREQ_MASK 0x10000u
  6872. #define SDHC_PROCTL_SABGREQ_SHIFT 16
  6873. #define SDHC_PROCTL_CREQ_MASK 0x20000u
  6874. #define SDHC_PROCTL_CREQ_SHIFT 17
  6875. #define SDHC_PROCTL_RWCTL_MASK 0x40000u
  6876. #define SDHC_PROCTL_RWCTL_SHIFT 18
  6877. #define SDHC_PROCTL_IABG_MASK 0x80000u
  6878. #define SDHC_PROCTL_IABG_SHIFT 19
  6879. #define SDHC_PROCTL_WECINT_MASK 0x1000000u
  6880. #define SDHC_PROCTL_WECINT_SHIFT 24
  6881. #define SDHC_PROCTL_WECINS_MASK 0x2000000u
  6882. #define SDHC_PROCTL_WECINS_SHIFT 25
  6883. #define SDHC_PROCTL_WECRM_MASK 0x4000000u
  6884. #define SDHC_PROCTL_WECRM_SHIFT 26
  6885. /* SYSCTL Bit Fields */
  6886. #define SDHC_SYSCTL_IPGEN_MASK 0x1u
  6887. #define SDHC_SYSCTL_IPGEN_SHIFT 0
  6888. #define SDHC_SYSCTL_HCKEN_MASK 0x2u
  6889. #define SDHC_SYSCTL_HCKEN_SHIFT 1
  6890. #define SDHC_SYSCTL_PEREN_MASK 0x4u
  6891. #define SDHC_SYSCTL_PEREN_SHIFT 2
  6892. #define SDHC_SYSCTL_SDCLKEN_MASK 0x8u
  6893. #define SDHC_SYSCTL_SDCLKEN_SHIFT 3
  6894. #define SDHC_SYSCTL_DVS_MASK 0xF0u
  6895. #define SDHC_SYSCTL_DVS_SHIFT 4
  6896. #define SDHC_SYSCTL_DVS(x) (((uint32_t)(((uint32_t)(x))<<SDHC_SYSCTL_DVS_SHIFT))&SDHC_SYSCTL_DVS_MASK)
  6897. #define SDHC_SYSCTL_SDCLKFS_MASK 0xFF00u
  6898. #define SDHC_SYSCTL_SDCLKFS_SHIFT 8
  6899. #define SDHC_SYSCTL_SDCLKFS(x) (((uint32_t)(((uint32_t)(x))<<SDHC_SYSCTL_SDCLKFS_SHIFT))&SDHC_SYSCTL_SDCLKFS_MASK)
  6900. #define SDHC_SYSCTL_DTOCV_MASK 0xF0000u
  6901. #define SDHC_SYSCTL_DTOCV_SHIFT 16
  6902. #define SDHC_SYSCTL_DTOCV(x) (((uint32_t)(((uint32_t)(x))<<SDHC_SYSCTL_DTOCV_SHIFT))&SDHC_SYSCTL_DTOCV_MASK)
  6903. #define SDHC_SYSCTL_RSTA_MASK 0x1000000u
  6904. #define SDHC_SYSCTL_RSTA_SHIFT 24
  6905. #define SDHC_SYSCTL_RSTC_MASK 0x2000000u
  6906. #define SDHC_SYSCTL_RSTC_SHIFT 25
  6907. #define SDHC_SYSCTL_RSTD_MASK 0x4000000u
  6908. #define SDHC_SYSCTL_RSTD_SHIFT 26
  6909. #define SDHC_SYSCTL_INITA_MASK 0x8000000u
  6910. #define SDHC_SYSCTL_INITA_SHIFT 27
  6911. /* IRQSTAT Bit Fields */
  6912. #define SDHC_IRQSTAT_CC_MASK 0x1u
  6913. #define SDHC_IRQSTAT_CC_SHIFT 0
  6914. #define SDHC_IRQSTAT_TC_MASK 0x2u
  6915. #define SDHC_IRQSTAT_TC_SHIFT 1
  6916. #define SDHC_IRQSTAT_BGE_MASK 0x4u
  6917. #define SDHC_IRQSTAT_BGE_SHIFT 2
  6918. #define SDHC_IRQSTAT_DINT_MASK 0x8u
  6919. #define SDHC_IRQSTAT_DINT_SHIFT 3
  6920. #define SDHC_IRQSTAT_BWR_MASK 0x10u
  6921. #define SDHC_IRQSTAT_BWR_SHIFT 4
  6922. #define SDHC_IRQSTAT_BRR_MASK 0x20u
  6923. #define SDHC_IRQSTAT_BRR_SHIFT 5
  6924. #define SDHC_IRQSTAT_CINS_MASK 0x40u
  6925. #define SDHC_IRQSTAT_CINS_SHIFT 6
  6926. #define SDHC_IRQSTAT_CRM_MASK 0x80u
  6927. #define SDHC_IRQSTAT_CRM_SHIFT 7
  6928. #define SDHC_IRQSTAT_CINT_MASK 0x100u
  6929. #define SDHC_IRQSTAT_CINT_SHIFT 8
  6930. #define SDHC_IRQSTAT_CTOE_MASK 0x10000u
  6931. #define SDHC_IRQSTAT_CTOE_SHIFT 16
  6932. #define SDHC_IRQSTAT_CCE_MASK 0x20000u
  6933. #define SDHC_IRQSTAT_CCE_SHIFT 17
  6934. #define SDHC_IRQSTAT_CEBE_MASK 0x40000u
  6935. #define SDHC_IRQSTAT_CEBE_SHIFT 18
  6936. #define SDHC_IRQSTAT_CIE_MASK 0x80000u
  6937. #define SDHC_IRQSTAT_CIE_SHIFT 19
  6938. #define SDHC_IRQSTAT_DTOE_MASK 0x100000u
  6939. #define SDHC_IRQSTAT_DTOE_SHIFT 20
  6940. #define SDHC_IRQSTAT_DCE_MASK 0x200000u
  6941. #define SDHC_IRQSTAT_DCE_SHIFT 21
  6942. #define SDHC_IRQSTAT_DEBE_MASK 0x400000u
  6943. #define SDHC_IRQSTAT_DEBE_SHIFT 22
  6944. #define SDHC_IRQSTAT_AC12E_MASK 0x1000000u
  6945. #define SDHC_IRQSTAT_AC12E_SHIFT 24
  6946. #define SDHC_IRQSTAT_DMAE_MASK 0x10000000u
  6947. #define SDHC_IRQSTAT_DMAE_SHIFT 28
  6948. /* IRQSTATEN Bit Fields */
  6949. #define SDHC_IRQSTATEN_CCSEN_MASK 0x1u
  6950. #define SDHC_IRQSTATEN_CCSEN_SHIFT 0
  6951. #define SDHC_IRQSTATEN_TCSEN_MASK 0x2u
  6952. #define SDHC_IRQSTATEN_TCSEN_SHIFT 1
  6953. #define SDHC_IRQSTATEN_BGESEN_MASK 0x4u
  6954. #define SDHC_IRQSTATEN_BGESEN_SHIFT 2
  6955. #define SDHC_IRQSTATEN_DINTSEN_MASK 0x8u
  6956. #define SDHC_IRQSTATEN_DINTSEN_SHIFT 3
  6957. #define SDHC_IRQSTATEN_BWRSEN_MASK 0x10u
  6958. #define SDHC_IRQSTATEN_BWRSEN_SHIFT 4
  6959. #define SDHC_IRQSTATEN_BRRSEN_MASK 0x20u
  6960. #define SDHC_IRQSTATEN_BRRSEN_SHIFT 5
  6961. #define SDHC_IRQSTATEN_CINSEN_MASK 0x40u
  6962. #define SDHC_IRQSTATEN_CINSEN_SHIFT 6
  6963. #define SDHC_IRQSTATEN_CRMSEN_MASK 0x80u
  6964. #define SDHC_IRQSTATEN_CRMSEN_SHIFT 7
  6965. #define SDHC_IRQSTATEN_CINTSEN_MASK 0x100u
  6966. #define SDHC_IRQSTATEN_CINTSEN_SHIFT 8
  6967. #define SDHC_IRQSTATEN_CTOESEN_MASK 0x10000u
  6968. #define SDHC_IRQSTATEN_CTOESEN_SHIFT 16
  6969. #define SDHC_IRQSTATEN_CCESEN_MASK 0x20000u
  6970. #define SDHC_IRQSTATEN_CCESEN_SHIFT 17
  6971. #define SDHC_IRQSTATEN_CEBESEN_MASK 0x40000u
  6972. #define SDHC_IRQSTATEN_CEBESEN_SHIFT 18
  6973. #define SDHC_IRQSTATEN_CIESEN_MASK 0x80000u
  6974. #define SDHC_IRQSTATEN_CIESEN_SHIFT 19
  6975. #define SDHC_IRQSTATEN_DTOESEN_MASK 0x100000u
  6976. #define SDHC_IRQSTATEN_DTOESEN_SHIFT 20
  6977. #define SDHC_IRQSTATEN_DCESEN_MASK 0x200000u
  6978. #define SDHC_IRQSTATEN_DCESEN_SHIFT 21
  6979. #define SDHC_IRQSTATEN_DEBESEN_MASK 0x400000u
  6980. #define SDHC_IRQSTATEN_DEBESEN_SHIFT 22
  6981. #define SDHC_IRQSTATEN_AC12ESEN_MASK 0x1000000u
  6982. #define SDHC_IRQSTATEN_AC12ESEN_SHIFT 24
  6983. #define SDHC_IRQSTATEN_DMAESEN_MASK 0x10000000u
  6984. #define SDHC_IRQSTATEN_DMAESEN_SHIFT 28
  6985. /* IRQSIGEN Bit Fields */
  6986. #define SDHC_IRQSIGEN_CCIEN_MASK 0x1u
  6987. #define SDHC_IRQSIGEN_CCIEN_SHIFT 0
  6988. #define SDHC_IRQSIGEN_TCIEN_MASK 0x2u
  6989. #define SDHC_IRQSIGEN_TCIEN_SHIFT 1
  6990. #define SDHC_IRQSIGEN_BGEIEN_MASK 0x4u
  6991. #define SDHC_IRQSIGEN_BGEIEN_SHIFT 2
  6992. #define SDHC_IRQSIGEN_DINTIEN_MASK 0x8u
  6993. #define SDHC_IRQSIGEN_DINTIEN_SHIFT 3
  6994. #define SDHC_IRQSIGEN_BWRIEN_MASK 0x10u
  6995. #define SDHC_IRQSIGEN_BWRIEN_SHIFT 4
  6996. #define SDHC_IRQSIGEN_BRRIEN_MASK 0x20u
  6997. #define SDHC_IRQSIGEN_BRRIEN_SHIFT 5
  6998. #define SDHC_IRQSIGEN_CINSIEN_MASK 0x40u
  6999. #define SDHC_IRQSIGEN_CINSIEN_SHIFT 6
  7000. #define SDHC_IRQSIGEN_CRMIEN_MASK 0x80u
  7001. #define SDHC_IRQSIGEN_CRMIEN_SHIFT 7
  7002. #define SDHC_IRQSIGEN_CINTIEN_MASK 0x100u
  7003. #define SDHC_IRQSIGEN_CINTIEN_SHIFT 8
  7004. #define SDHC_IRQSIGEN_CTOEIEN_MASK 0x10000u
  7005. #define SDHC_IRQSIGEN_CTOEIEN_SHIFT 16
  7006. #define SDHC_IRQSIGEN_CCEIEN_MASK 0x20000u
  7007. #define SDHC_IRQSIGEN_CCEIEN_SHIFT 17
  7008. #define SDHC_IRQSIGEN_CEBEIEN_MASK 0x40000u
  7009. #define SDHC_IRQSIGEN_CEBEIEN_SHIFT 18
  7010. #define SDHC_IRQSIGEN_CIEIEN_MASK 0x80000u
  7011. #define SDHC_IRQSIGEN_CIEIEN_SHIFT 19
  7012. #define SDHC_IRQSIGEN_DTOEIEN_MASK 0x100000u
  7013. #define SDHC_IRQSIGEN_DTOEIEN_SHIFT 20
  7014. #define SDHC_IRQSIGEN_DCEIEN_MASK 0x200000u
  7015. #define SDHC_IRQSIGEN_DCEIEN_SHIFT 21
  7016. #define SDHC_IRQSIGEN_DEBEIEN_MASK 0x400000u
  7017. #define SDHC_IRQSIGEN_DEBEIEN_SHIFT 22
  7018. #define SDHC_IRQSIGEN_AC12EIEN_MASK 0x1000000u
  7019. #define SDHC_IRQSIGEN_AC12EIEN_SHIFT 24
  7020. #define SDHC_IRQSIGEN_DMAEIEN_MASK 0x10000000u
  7021. #define SDHC_IRQSIGEN_DMAEIEN_SHIFT 28
  7022. /* AC12ERR Bit Fields */
  7023. #define SDHC_AC12ERR_AC12NE_MASK 0x1u
  7024. #define SDHC_AC12ERR_AC12NE_SHIFT 0
  7025. #define SDHC_AC12ERR_AC12TOE_MASK 0x2u
  7026. #define SDHC_AC12ERR_AC12TOE_SHIFT 1
  7027. #define SDHC_AC12ERR_AC12EBE_MASK 0x4u
  7028. #define SDHC_AC12ERR_AC12EBE_SHIFT 2
  7029. #define SDHC_AC12ERR_AC12CE_MASK 0x8u
  7030. #define SDHC_AC12ERR_AC12CE_SHIFT 3
  7031. #define SDHC_AC12ERR_AC12IE_MASK 0x10u
  7032. #define SDHC_AC12ERR_AC12IE_SHIFT 4
  7033. #define SDHC_AC12ERR_CNIBAC12E_MASK 0x80u
  7034. #define SDHC_AC12ERR_CNIBAC12E_SHIFT 7
  7035. /* HTCAPBLT Bit Fields */
  7036. #define SDHC_HTCAPBLT_MBL_MASK 0x70000u
  7037. #define SDHC_HTCAPBLT_MBL_SHIFT 16
  7038. #define SDHC_HTCAPBLT_MBL(x) (((uint32_t)(((uint32_t)(x))<<SDHC_HTCAPBLT_MBL_SHIFT))&SDHC_HTCAPBLT_MBL_MASK)
  7039. #define SDHC_HTCAPBLT_ADMAS_MASK 0x100000u
  7040. #define SDHC_HTCAPBLT_ADMAS_SHIFT 20
  7041. #define SDHC_HTCAPBLT_HSS_MASK 0x200000u
  7042. #define SDHC_HTCAPBLT_HSS_SHIFT 21
  7043. #define SDHC_HTCAPBLT_DMAS_MASK 0x400000u
  7044. #define SDHC_HTCAPBLT_DMAS_SHIFT 22
  7045. #define SDHC_HTCAPBLT_SRS_MASK 0x800000u
  7046. #define SDHC_HTCAPBLT_SRS_SHIFT 23
  7047. #define SDHC_HTCAPBLT_VS33_MASK 0x1000000u
  7048. #define SDHC_HTCAPBLT_VS33_SHIFT 24
  7049. #define SDHC_HTCAPBLT_VS30_MASK 0x2000000u
  7050. #define SDHC_HTCAPBLT_VS30_SHIFT 25
  7051. #define SDHC_HTCAPBLT_VS18_MASK 0x4000000u
  7052. #define SDHC_HTCAPBLT_VS18_SHIFT 26
  7053. /* WML Bit Fields */
  7054. #define SDHC_WML_RDWML_MASK 0xFFu
  7055. #define SDHC_WML_RDWML_SHIFT 0
  7056. #define SDHC_WML_RDWML(x) (((uint32_t)(((uint32_t)(x))<<SDHC_WML_RDWML_SHIFT))&SDHC_WML_RDWML_MASK)
  7057. #define SDHC_WML_WRWML_MASK 0xFF0000u
  7058. #define SDHC_WML_WRWML_SHIFT 16
  7059. #define SDHC_WML_WRWML(x) (((uint32_t)(((uint32_t)(x))<<SDHC_WML_WRWML_SHIFT))&SDHC_WML_WRWML_MASK)
  7060. #define SDHC_WML_WRBRSTLEN_MASK 0x1F000000u
  7061. #define SDHC_WML_WRBRSTLEN_SHIFT 24
  7062. #define SDHC_WML_WRBRSTLEN(x) (((uint32_t)(((uint32_t)(x))<<SDHC_WML_WRBRSTLEN_SHIFT))&SDHC_WML_WRBRSTLEN_MASK)
  7063. /* FEVT Bit Fields */
  7064. #define SDHC_FEVT_AC12NE_MASK 0x1u
  7065. #define SDHC_FEVT_AC12NE_SHIFT 0
  7066. #define SDHC_FEVT_AC12TOE_MASK 0x2u
  7067. #define SDHC_FEVT_AC12TOE_SHIFT 1
  7068. #define SDHC_FEVT_AC12CE_MASK 0x4u
  7069. #define SDHC_FEVT_AC12CE_SHIFT 2
  7070. #define SDHC_FEVT_AC12EBE_MASK 0x8u
  7071. #define SDHC_FEVT_AC12EBE_SHIFT 3
  7072. #define SDHC_FEVT_AC12IE_MASK 0x10u
  7073. #define SDHC_FEVT_AC12IE_SHIFT 4
  7074. #define SDHC_FEVT_CNIBAC12E_MASK 0x80u
  7075. #define SDHC_FEVT_CNIBAC12E_SHIFT 7
  7076. #define SDHC_FEVT_CTOE_MASK 0x10000u
  7077. #define SDHC_FEVT_CTOE_SHIFT 16
  7078. #define SDHC_FEVT_CCE_MASK 0x20000u
  7079. #define SDHC_FEVT_CCE_SHIFT 17
  7080. #define SDHC_FEVT_CEBE_MASK 0x40000u
  7081. #define SDHC_FEVT_CEBE_SHIFT 18
  7082. #define SDHC_FEVT_CIE_MASK 0x80000u
  7083. #define SDHC_FEVT_CIE_SHIFT 19
  7084. #define SDHC_FEVT_DTOE_MASK 0x100000u
  7085. #define SDHC_FEVT_DTOE_SHIFT 20
  7086. #define SDHC_FEVT_DCE_MASK 0x200000u
  7087. #define SDHC_FEVT_DCE_SHIFT 21
  7088. #define SDHC_FEVT_DEBE_MASK 0x400000u
  7089. #define SDHC_FEVT_DEBE_SHIFT 22
  7090. #define SDHC_FEVT_AC12E_MASK 0x1000000u
  7091. #define SDHC_FEVT_AC12E_SHIFT 24
  7092. #define SDHC_FEVT_DMAE_MASK 0x10000000u
  7093. #define SDHC_FEVT_DMAE_SHIFT 28
  7094. #define SDHC_FEVT_CINT_MASK 0x80000000u
  7095. #define SDHC_FEVT_CINT_SHIFT 31
  7096. /* ADMAES Bit Fields */
  7097. #define SDHC_ADMAES_ADMAES_MASK 0x3u
  7098. #define SDHC_ADMAES_ADMAES_SHIFT 0
  7099. #define SDHC_ADMAES_ADMAES(x) (((uint32_t)(((uint32_t)(x))<<SDHC_ADMAES_ADMAES_SHIFT))&SDHC_ADMAES_ADMAES_MASK)
  7100. #define SDHC_ADMAES_ADMALME_MASK 0x4u
  7101. #define SDHC_ADMAES_ADMALME_SHIFT 2
  7102. #define SDHC_ADMAES_ADMADCE_MASK 0x8u
  7103. #define SDHC_ADMAES_ADMADCE_SHIFT 3
  7104. /* ADSADDR Bit Fields */
  7105. #define SDHC_ADSADDR_ADSADDR_MASK 0xFFFFFFFCu
  7106. #define SDHC_ADSADDR_ADSADDR_SHIFT 2
  7107. #define SDHC_ADSADDR_ADSADDR(x) (((uint32_t)(((uint32_t)(x))<<SDHC_ADSADDR_ADSADDR_SHIFT))&SDHC_ADSADDR_ADSADDR_MASK)
  7108. /* VENDOR Bit Fields */
  7109. #define SDHC_VENDOR_EXTDMAEN_MASK 0x1u
  7110. #define SDHC_VENDOR_EXTDMAEN_SHIFT 0
  7111. #define SDHC_VENDOR_VOLTSEL_MASK 0x2u
  7112. #define SDHC_VENDOR_VOLTSEL_SHIFT 1
  7113. #define SDHC_VENDOR_INTSTVAL_MASK 0xFF0000u
  7114. #define SDHC_VENDOR_INTSTVAL_SHIFT 16
  7115. #define SDHC_VENDOR_INTSTVAL(x) (((uint32_t)(((uint32_t)(x))<<SDHC_VENDOR_INTSTVAL_SHIFT))&SDHC_VENDOR_INTSTVAL_MASK)
  7116. /* MMCBOOT Bit Fields */
  7117. #define SDHC_MMCBOOT_DTOCVACK_MASK 0xFu
  7118. #define SDHC_MMCBOOT_DTOCVACK_SHIFT 0
  7119. #define SDHC_MMCBOOT_DTOCVACK(x) (((uint32_t)(((uint32_t)(x))<<SDHC_MMCBOOT_DTOCVACK_SHIFT))&SDHC_MMCBOOT_DTOCVACK_MASK)
  7120. #define SDHC_MMCBOOT_BOOTACK_MASK 0x10u
  7121. #define SDHC_MMCBOOT_BOOTACK_SHIFT 4
  7122. #define SDHC_MMCBOOT_BOOTMODE_MASK 0x20u
  7123. #define SDHC_MMCBOOT_BOOTMODE_SHIFT 5
  7124. #define SDHC_MMCBOOT_BOOTEN_MASK 0x40u
  7125. #define SDHC_MMCBOOT_BOOTEN_SHIFT 6
  7126. #define SDHC_MMCBOOT_AUTOSABGEN_MASK 0x80u
  7127. #define SDHC_MMCBOOT_AUTOSABGEN_SHIFT 7
  7128. #define SDHC_MMCBOOT_BOOTBLKCNT_MASK 0xFFFF0000u
  7129. #define SDHC_MMCBOOT_BOOTBLKCNT_SHIFT 16
  7130. #define SDHC_MMCBOOT_BOOTBLKCNT(x) (((uint32_t)(((uint32_t)(x))<<SDHC_MMCBOOT_BOOTBLKCNT_SHIFT))&SDHC_MMCBOOT_BOOTBLKCNT_MASK)
  7131. /* HOSTVER Bit Fields */
  7132. #define SDHC_HOSTVER_SVN_MASK 0xFFu
  7133. #define SDHC_HOSTVER_SVN_SHIFT 0
  7134. #define SDHC_HOSTVER_SVN(x) (((uint32_t)(((uint32_t)(x))<<SDHC_HOSTVER_SVN_SHIFT))&SDHC_HOSTVER_SVN_MASK)
  7135. #define SDHC_HOSTVER_VVN_MASK 0xFF00u
  7136. #define SDHC_HOSTVER_VVN_SHIFT 8
  7137. #define SDHC_HOSTVER_VVN(x) (((uint32_t)(((uint32_t)(x))<<SDHC_HOSTVER_VVN_SHIFT))&SDHC_HOSTVER_VVN_MASK)
  7138. /*! \} */ /* end of group SDHC_Register_Masks */
  7139. /* SDHC - Peripheral instance base addresses */
  7140. /*! Peripheral SDHC base address */
  7141. #define SDHC_BASE (0x400B1000u)
  7142. /*! Peripheral SDHC base pointer */
  7143. #define SDHC ((SDHC_Type *)SDHC_BASE)
  7144. /*! \} */ /* end of group SDHC_Peripheral_Access_Layer */
  7145. /* ----------------------------------------------------------------------------
  7146. -- SIM Peripheral Access Layer
  7147. ---------------------------------------------------------------------------- */
  7148. /*! \addtogroup SIM_Peripheral_Access_Layer SIM Peripheral Access Layer */
  7149. /*! \{ */
  7150. /*! SIM - Register Layout Typedef */
  7151. typedef struct {
  7152. __IO uint32_t SOPT1; /*!< System Options Register 1, offset: 0x0 */
  7153. uint8_t RESERVED_0[4096];
  7154. __IO uint32_t SOPT2; /*!< System Options Register 2, offset: 0x1004 */
  7155. uint8_t RESERVED_1[4];
  7156. __IO uint32_t SOPT4; /*!< System Options Register 4, offset: 0x100C */
  7157. __IO uint32_t SOPT5; /*!< System Options Register 5, offset: 0x1010 */
  7158. __IO uint32_t SOPT6; /*!< System Options Register 6, offset: 0x1014 */
  7159. __IO uint32_t SOPT7; /*!< System Options Register 7, offset: 0x1018 */
  7160. uint8_t RESERVED_2[8];
  7161. __I uint32_t SDID; /*!< System Device Identification Register, offset: 0x1024 */
  7162. __IO uint32_t SCGC1; /*!< System Clock Gating Control Register 1, offset: 0x1028 */
  7163. __IO uint32_t SCGC2; /*!< System Clock Gating Control Register 2, offset: 0x102C */
  7164. __IO uint32_t SCGC3; /*!< System Clock Gating Control Register 3, offset: 0x1030 */
  7165. __IO uint32_t SCGC4; /*!< System Clock Gating Control Register 4, offset: 0x1034 */
  7166. __IO uint32_t SCGC5; /*!< System Clock Gating Control Register 5, offset: 0x1038 */
  7167. __IO uint32_t SCGC6; /*!< System Clock Gating Control Register 6, offset: 0x103C */
  7168. __IO uint32_t SCGC7; /*!< System Clock Gating Control Register 7, offset: 0x1040 */
  7169. __IO uint32_t CLKDIV1; /*!< System Clock Divider Register 1, offset: 0x1044 */
  7170. __IO uint32_t CLKDIV2; /*!< System Clock Divider Register 2, offset: 0x1048 */
  7171. __IO uint32_t FCFG1; /*!< Flash Configuration Register 1, offset: 0x104C */
  7172. __I uint32_t FCFG2; /*!< Flash Configuration Register 2, offset: 0x1050 */
  7173. __I uint32_t UIDH; /*!< Unique Identification Register High, offset: 0x1054 */
  7174. __I uint32_t UIDMH; /*!< Unique Identification Register Mid-High, offset: 0x1058 */
  7175. __I uint32_t UIDML; /*!< Unique Identification Register Mid Low, offset: 0x105C */
  7176. __I uint32_t UIDL; /*!< Unique Identification Register Low, offset: 0x1060 */
  7177. } SIM_Type;
  7178. /* ----------------------------------------------------------------------------
  7179. -- SIM Register Masks
  7180. ---------------------------------------------------------------------------- */
  7181. /*! \addtogroup SIM_Register_Masks SIM Register Masks */
  7182. /*! \{ */
  7183. /* SOPT1 Bit Fields */
  7184. #define SIM_SOPT1_RAMSIZE_MASK 0xF000u
  7185. #define SIM_SOPT1_RAMSIZE_SHIFT 12
  7186. #define SIM_SOPT1_RAMSIZE(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT1_RAMSIZE_SHIFT))&SIM_SOPT1_RAMSIZE_MASK)
  7187. #define SIM_SOPT1_OSC32KSEL_MASK 0x80000u
  7188. #define SIM_SOPT1_OSC32KSEL_SHIFT 19
  7189. #define SIM_SOPT1_MS_MASK 0x800000u
  7190. #define SIM_SOPT1_MS_SHIFT 23
  7191. #define SIM_SOPT1_USBSTBY_MASK 0x40000000u
  7192. #define SIM_SOPT1_USBSTBY_SHIFT 30
  7193. #define SIM_SOPT1_USBREGEN_MASK 0x80000000u
  7194. #define SIM_SOPT1_USBREGEN_SHIFT 31
  7195. /* SOPT2 Bit Fields */
  7196. #define SIM_SOPT2_MCGCLKSEL_MASK 0x1u
  7197. #define SIM_SOPT2_MCGCLKSEL_SHIFT 0
  7198. #define SIM_SOPT2_FBSL_MASK 0x300u
  7199. #define SIM_SOPT2_FBSL_SHIFT 8
  7200. #define SIM_SOPT2_FBSL(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_FBSL_SHIFT))&SIM_SOPT2_FBSL_MASK)
  7201. #define SIM_SOPT2_CMTUARTPAD_MASK 0x800u
  7202. #define SIM_SOPT2_CMTUARTPAD_SHIFT 11
  7203. #define SIM_SOPT2_TRACECLKSEL_MASK 0x1000u
  7204. #define SIM_SOPT2_TRACECLKSEL_SHIFT 12
  7205. #define SIM_SOPT2_PLLFLLSEL_MASK 0x10000u
  7206. #define SIM_SOPT2_PLLFLLSEL_SHIFT 16
  7207. #define SIM_SOPT2_USBSRC_MASK 0x40000u
  7208. #define SIM_SOPT2_USBSRC_SHIFT 18
  7209. #define SIM_SOPT2_I2SSRC_MASK 0x3000000u
  7210. #define SIM_SOPT2_I2SSRC_SHIFT 24
  7211. #define SIM_SOPT2_I2SSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_I2SSRC_SHIFT))&SIM_SOPT2_I2SSRC_MASK)
  7212. #define SIM_SOPT2_SDHCSRC_MASK 0x30000000u
  7213. #define SIM_SOPT2_SDHCSRC_SHIFT 28
  7214. #define SIM_SOPT2_SDHCSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_SDHCSRC_SHIFT))&SIM_SOPT2_SDHCSRC_MASK)
  7215. /* SOPT4 Bit Fields */
  7216. #define SIM_SOPT4_FTM0FLT0_MASK 0x1u
  7217. #define SIM_SOPT4_FTM0FLT0_SHIFT 0
  7218. #define SIM_SOPT4_FTM0FLT1_MASK 0x2u
  7219. #define SIM_SOPT4_FTM0FLT1_SHIFT 1
  7220. #define SIM_SOPT4_FTM0FLT2_MASK 0x4u
  7221. #define SIM_SOPT4_FTM0FLT2_SHIFT 2
  7222. #define SIM_SOPT4_FTM1FLT0_MASK 0x10u
  7223. #define SIM_SOPT4_FTM1FLT0_SHIFT 4
  7224. #define SIM_SOPT4_FTM2FLT0_MASK 0x100u
  7225. #define SIM_SOPT4_FTM2FLT0_SHIFT 8
  7226. #define SIM_SOPT4_FTM1CH0SRC_MASK 0xC0000u
  7227. #define SIM_SOPT4_FTM1CH0SRC_SHIFT 18
  7228. #define SIM_SOPT4_FTM1CH0SRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT4_FTM1CH0SRC_SHIFT))&SIM_SOPT4_FTM1CH0SRC_MASK)
  7229. #define SIM_SOPT4_FTM2CH0SRC_MASK 0x300000u
  7230. #define SIM_SOPT4_FTM2CH0SRC_SHIFT 20
  7231. #define SIM_SOPT4_FTM2CH0SRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT4_FTM2CH0SRC_SHIFT))&SIM_SOPT4_FTM2CH0SRC_MASK)
  7232. #define SIM_SOPT4_FTM0CLKSEL_MASK 0x1000000u
  7233. #define SIM_SOPT4_FTM0CLKSEL_SHIFT 24
  7234. #define SIM_SOPT4_FTM1CLKSEL_MASK 0x2000000u
  7235. #define SIM_SOPT4_FTM1CLKSEL_SHIFT 25
  7236. #define SIM_SOPT4_FTM2CLKSEL_MASK 0x4000000u
  7237. #define SIM_SOPT4_FTM2CLKSEL_SHIFT 26
  7238. /* SOPT5 Bit Fields */
  7239. #define SIM_SOPT5_UART0TXSRC_MASK 0x3u
  7240. #define SIM_SOPT5_UART0TXSRC_SHIFT 0
  7241. #define SIM_SOPT5_UART0TXSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART0TXSRC_SHIFT))&SIM_SOPT5_UART0TXSRC_MASK)
  7242. #define SIM_SOPT5_UART0RXSRC_MASK 0xCu
  7243. #define SIM_SOPT5_UART0RXSRC_SHIFT 2
  7244. #define SIM_SOPT5_UART0RXSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART0RXSRC_SHIFT))&SIM_SOPT5_UART0RXSRC_MASK)
  7245. #define SIM_SOPT5_UARTTXSRC_MASK 0x30u
  7246. #define SIM_SOPT5_UARTTXSRC_SHIFT 4
  7247. #define SIM_SOPT5_UARTTXSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UARTTXSRC_SHIFT))&SIM_SOPT5_UARTTXSRC_MASK)
  7248. #define SIM_SOPT5_UART1RXSRC_MASK 0xC0u
  7249. #define SIM_SOPT5_UART1RXSRC_SHIFT 6
  7250. #define SIM_SOPT5_UART1RXSRC(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART1RXSRC_SHIFT))&SIM_SOPT5_UART1RXSRC_MASK)
  7251. /* SOPT6 Bit Fields */
  7252. #define SIM_SOPT6_RSTFLTSEL_MASK 0x1F000000u
  7253. #define SIM_SOPT6_RSTFLTSEL_SHIFT 24
  7254. #define SIM_SOPT6_RSTFLTSEL(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT6_RSTFLTSEL_SHIFT))&SIM_SOPT6_RSTFLTSEL_MASK)
  7255. #define SIM_SOPT6_RSTFLTEN_MASK 0xE0000000u
  7256. #define SIM_SOPT6_RSTFLTEN_SHIFT 29
  7257. #define SIM_SOPT6_RSTFLTEN(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT6_RSTFLTEN_SHIFT))&SIM_SOPT6_RSTFLTEN_MASK)
  7258. /* SOPT7 Bit Fields */
  7259. #define SIM_SOPT7_ADC0TRGSEL_MASK 0xFu
  7260. #define SIM_SOPT7_ADC0TRGSEL_SHIFT 0
  7261. #define SIM_SOPT7_ADC0TRGSEL(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT7_ADC0TRGSEL_SHIFT))&SIM_SOPT7_ADC0TRGSEL_MASK)
  7262. #define SIM_SOPT7_ADC0PRETRGSEL_MASK 0x10u
  7263. #define SIM_SOPT7_ADC0PRETRGSEL_SHIFT 4
  7264. #define SIM_SOPT7_ADC0ALTTRGEN_MASK 0x80u
  7265. #define SIM_SOPT7_ADC0ALTTRGEN_SHIFT 7
  7266. #define SIM_SOPT7_ADC1TRGSEL_MASK 0xF00u
  7267. #define SIM_SOPT7_ADC1TRGSEL_SHIFT 8
  7268. #define SIM_SOPT7_ADC1TRGSEL(x) (((uint32_t)(((uint32_t)(x))<<SIM_SOPT7_ADC1TRGSEL_SHIFT))&SIM_SOPT7_ADC1TRGSEL_MASK)
  7269. #define SIM_SOPT7_ADC1PRETRGSEL_MASK 0x1000u
  7270. #define SIM_SOPT7_ADC1PRETRGSEL_SHIFT 12
  7271. #define SIM_SOPT7_ADC1ALTTRGEN_MASK 0x8000u
  7272. #define SIM_SOPT7_ADC1ALTTRGEN_SHIFT 15
  7273. /* SDID Bit Fields */
  7274. #define SIM_SDID_PINID_MASK 0xFu
  7275. #define SIM_SDID_PINID_SHIFT 0
  7276. #define SIM_SDID_PINID(x) (((uint32_t)(((uint32_t)(x))<<SIM_SDID_PINID_SHIFT))&SIM_SDID_PINID_MASK)
  7277. #define SIM_SDID_FAMID_MASK 0x70u
  7278. #define SIM_SDID_FAMID_SHIFT 4
  7279. #define SIM_SDID_FAMID(x) (((uint32_t)(((uint32_t)(x))<<SIM_SDID_FAMID_SHIFT))&SIM_SDID_FAMID_MASK)
  7280. #define SIM_SDID_REVID_MASK 0xF000u
  7281. #define SIM_SDID_REVID_SHIFT 12
  7282. #define SIM_SDID_REVID(x) (((uint32_t)(((uint32_t)(x))<<SIM_SDID_REVID_SHIFT))&SIM_SDID_REVID_MASK)
  7283. /* SCGC1 Bit Fields */
  7284. #define SIM_SCGC1_UART4_MASK 0x400u
  7285. #define SIM_SCGC1_UART4_SHIFT 10
  7286. #define SIM_SCGC1_UART5_MASK 0x800u
  7287. #define SIM_SCGC1_UART5_SHIFT 11
  7288. /* SCGC2 Bit Fields */
  7289. #define SIM_SCGC2_DAC0_MASK 0x1000u
  7290. #define SIM_SCGC2_DAC0_SHIFT 12
  7291. #define SIM_SCGC2_DAC1_MASK 0x2000u
  7292. #define SIM_SCGC2_DAC1_SHIFT 13
  7293. /* SCGC3 Bit Fields */
  7294. #define SIM_SCGC3_FLEXCAN1_MASK 0x10u
  7295. #define SIM_SCGC3_FLEXCAN1_SHIFT 4
  7296. #define SIM_SCGC3_SPI2_MASK 0x1000u
  7297. #define SIM_SCGC3_SPI2_SHIFT 12
  7298. #define SIM_SCGC3_SDHC_MASK 0x20000u
  7299. #define SIM_SCGC3_SDHC_SHIFT 17
  7300. #define SIM_SCGC3_FTM2_MASK 0x1000000u
  7301. #define SIM_SCGC3_FTM2_SHIFT 24
  7302. #define SIM_SCGC3_ADC1_MASK 0x8000000u
  7303. #define SIM_SCGC3_ADC1_SHIFT 27
  7304. #define SIM_SCGC3_SLCD_MASK 0x40000000u
  7305. #define SIM_SCGC3_SLCD_SHIFT 30
  7306. /* SCGC4 Bit Fields */
  7307. #define SIM_SCGC4_EWM_MASK 0x2u
  7308. #define SIM_SCGC4_EWM_SHIFT 1
  7309. #define SIM_SCGC4_CMT_MASK 0x4u
  7310. #define SIM_SCGC4_CMT_SHIFT 2
  7311. #define SIM_SCGC4_I2C0_MASK 0x40u
  7312. #define SIM_SCGC4_I2C0_SHIFT 6
  7313. #define SIM_SCGC4_I2C1_MASK 0x80u
  7314. #define SIM_SCGC4_I2C1_SHIFT 7
  7315. #define SIM_SCGC4_UART0_MASK 0x400u
  7316. #define SIM_SCGC4_UART0_SHIFT 10
  7317. #define SIM_SCGC4_UART1_MASK 0x800u
  7318. #define SIM_SCGC4_UART1_SHIFT 11
  7319. #define SIM_SCGC4_UART2_MASK 0x1000u
  7320. #define SIM_SCGC4_UART2_SHIFT 12
  7321. #define SIM_SCGC4_UART3_MASK 0x2000u
  7322. #define SIM_SCGC4_UART3_SHIFT 13
  7323. #define SIM_SCGC4_USBOTG_MASK 0x40000u
  7324. #define SIM_SCGC4_USBOTG_SHIFT 18
  7325. #define SIM_SCGC4_CMP_MASK 0x80000u
  7326. #define SIM_SCGC4_CMP_SHIFT 19
  7327. #define SIM_SCGC4_VREF_MASK 0x100000u
  7328. #define SIM_SCGC4_VREF_SHIFT 20
  7329. #define SIM_SCGC4_LLWU_MASK 0x10000000u
  7330. #define SIM_SCGC4_LLWU_SHIFT 28
  7331. /* SCGC5 Bit Fields */
  7332. #define SIM_SCGC5_LPTIMER_MASK 0x1u
  7333. #define SIM_SCGC5_LPTIMER_SHIFT 0
  7334. #define SIM_SCGC5_REGFILE_MASK 0x2u
  7335. #define SIM_SCGC5_REGFILE_SHIFT 1
  7336. #define SIM_SCGC5_TSI_MASK 0x20u
  7337. #define SIM_SCGC5_TSI_SHIFT 5
  7338. #define SIM_SCGC5_PORTA_MASK 0x200u
  7339. #define SIM_SCGC5_PORTA_SHIFT 9
  7340. #define SIM_SCGC5_PORTB_MASK 0x400u
  7341. #define SIM_SCGC5_PORTB_SHIFT 10
  7342. #define SIM_SCGC5_PORTC_MASK 0x800u
  7343. #define SIM_SCGC5_PORTC_SHIFT 11
  7344. #define SIM_SCGC5_PORTD_MASK 0x1000u
  7345. #define SIM_SCGC5_PORTD_SHIFT 12
  7346. #define SIM_SCGC5_PORTE_MASK 0x2000u
  7347. #define SIM_SCGC5_PORTE_SHIFT 13
  7348. /* SCGC6 Bit Fields */
  7349. #define SIM_SCGC6_FTFL_MASK 0x1u
  7350. #define SIM_SCGC6_FTFL_SHIFT 0
  7351. #define SIM_SCGC6_DMAMUX_MASK 0x2u
  7352. #define SIM_SCGC6_DMAMUX_SHIFT 1
  7353. #define SIM_SCGC6_FLEXCAN0_MASK 0x10u
  7354. #define SIM_SCGC6_FLEXCAN0_SHIFT 4
  7355. #define SIM_SCGC6_DSPI0_MASK 0x1000u
  7356. #define SIM_SCGC6_DSPI0_SHIFT 12
  7357. #define SIM_SCGC6_SPI1_MASK 0x2000u
  7358. #define SIM_SCGC6_SPI1_SHIFT 13
  7359. #define SIM_SCGC6_I2S_MASK 0x8000u
  7360. #define SIM_SCGC6_I2S_SHIFT 15
  7361. #define SIM_SCGC6_CRC_MASK 0x40000u
  7362. #define SIM_SCGC6_CRC_SHIFT 18
  7363. #define SIM_SCGC6_USBDCD_MASK 0x200000u
  7364. #define SIM_SCGC6_USBDCD_SHIFT 21
  7365. #define SIM_SCGC6_PDB_MASK 0x400000u
  7366. #define SIM_SCGC6_PDB_SHIFT 22
  7367. #define SIM_SCGC6_PIT_MASK 0x800000u
  7368. #define SIM_SCGC6_PIT_SHIFT 23
  7369. #define SIM_SCGC6_FTM0_MASK 0x1000000u
  7370. #define SIM_SCGC6_FTM0_SHIFT 24
  7371. #define SIM_SCGC6_FTM1_MASK 0x2000000u
  7372. #define SIM_SCGC6_FTM1_SHIFT 25
  7373. #define SIM_SCGC6_ADC0_MASK 0x8000000u
  7374. #define SIM_SCGC6_ADC0_SHIFT 27
  7375. #define SIM_SCGC6_RTC_MASK 0x20000000u
  7376. #define SIM_SCGC6_RTC_SHIFT 29
  7377. /* SCGC7 Bit Fields */
  7378. #define SIM_SCGC7_FLEXBUS_MASK 0x1u
  7379. #define SIM_SCGC7_FLEXBUS_SHIFT 0
  7380. #define SIM_SCGC7_DMA_MASK 0x2u
  7381. #define SIM_SCGC7_DMA_SHIFT 1
  7382. #define SIM_SCGC7_MPU_MASK 0x4u
  7383. #define SIM_SCGC7_MPU_SHIFT 2
  7384. /* CLKDIV1 Bit Fields */
  7385. #define SIM_CLKDIV1_OUTDIV4_MASK 0xF0000u
  7386. #define SIM_CLKDIV1_OUTDIV4_SHIFT 16
  7387. #define SIM_CLKDIV1_OUTDIV4(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV4_SHIFT))&SIM_CLKDIV1_OUTDIV4_MASK)
  7388. #define SIM_CLKDIV1_OUTDIV3_MASK 0xF00000u
  7389. #define SIM_CLKDIV1_OUTDIV3_SHIFT 20
  7390. #define SIM_CLKDIV1_OUTDIV3(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV3_SHIFT))&SIM_CLKDIV1_OUTDIV3_MASK)
  7391. #define SIM_CLKDIV1_OUTDIV2_MASK 0xF000000u
  7392. #define SIM_CLKDIV1_OUTDIV2_SHIFT 24
  7393. #define SIM_CLKDIV1_OUTDIV2(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV2_SHIFT))&SIM_CLKDIV1_OUTDIV2_MASK)
  7394. #define SIM_CLKDIV1_OUTDIV1_MASK 0xF0000000u
  7395. #define SIM_CLKDIV1_OUTDIV1_SHIFT 28
  7396. #define SIM_CLKDIV1_OUTDIV1(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV1_SHIFT))&SIM_CLKDIV1_OUTDIV1_MASK)
  7397. /* CLKDIV2 Bit Fields */
  7398. #define SIM_CLKDIV2_USBFRAC_MASK 0x1u
  7399. #define SIM_CLKDIV2_USBFRAC_SHIFT 0
  7400. #define SIM_CLKDIV2_USBDIV_MASK 0xEu
  7401. #define SIM_CLKDIV2_USBDIV_SHIFT 1
  7402. #define SIM_CLKDIV2_USBDIV(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV2_USBDIV_SHIFT))&SIM_CLKDIV2_USBDIV_MASK)
  7403. #define SIM_CLKDIV2_I2SFRAC_MASK 0xFF00u
  7404. #define SIM_CLKDIV2_I2SFRAC_SHIFT 8
  7405. #define SIM_CLKDIV2_I2SFRAC(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV2_I2SFRAC_SHIFT))&SIM_CLKDIV2_I2SFRAC_MASK)
  7406. #define SIM_CLKDIV2_I2SDIV_MASK 0xFFF00000u
  7407. #define SIM_CLKDIV2_I2SDIV_SHIFT 20
  7408. #define SIM_CLKDIV2_I2SDIV(x) (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV2_I2SDIV_SHIFT))&SIM_CLKDIV2_I2SDIV_MASK)
  7409. /* FCFG1 Bit Fields */
  7410. #define SIM_FCFG1_DEPART_MASK 0xF00u
  7411. #define SIM_FCFG1_DEPART_SHIFT 8
  7412. #define SIM_FCFG1_DEPART(x) (((uint32_t)(((uint32_t)(x))<<SIM_FCFG1_DEPART_SHIFT))&SIM_FCFG1_DEPART_MASK)
  7413. #define SIM_FCFG1_EESIZE_MASK 0xF0000u
  7414. #define SIM_FCFG1_EESIZE_SHIFT 16
  7415. #define SIM_FCFG1_EESIZE(x) (((uint32_t)(((uint32_t)(x))<<SIM_FCFG1_EESIZE_SHIFT))&SIM_FCFG1_EESIZE_MASK)
  7416. #define SIM_FCFG1_FSIZE_MASK 0xFF000000u
  7417. #define SIM_FCFG1_FSIZE_SHIFT 24
  7418. #define SIM_FCFG1_FSIZE(x) (((uint32_t)(((uint32_t)(x))<<SIM_FCFG1_FSIZE_SHIFT))&SIM_FCFG1_FSIZE_MASK)
  7419. /* FCFG2 Bit Fields */
  7420. #define SIM_FCFG2_MAXADDR1_MASK 0x3F0000u
  7421. #define SIM_FCFG2_MAXADDR1_SHIFT 16
  7422. #define SIM_FCFG2_MAXADDR1(x) (((uint32_t)(((uint32_t)(x))<<SIM_FCFG2_MAXADDR1_SHIFT))&SIM_FCFG2_MAXADDR1_MASK)
  7423. #define SIM_FCFG2_PFLSH_MASK 0x800000u
  7424. #define SIM_FCFG2_PFLSH_SHIFT 23
  7425. #define SIM_FCFG2_MAXADDR0_MASK 0x3F000000u
  7426. #define SIM_FCFG2_MAXADDR0_SHIFT 24
  7427. #define SIM_FCFG2_MAXADDR0(x) (((uint32_t)(((uint32_t)(x))<<SIM_FCFG2_MAXADDR0_SHIFT))&SIM_FCFG2_MAXADDR0_MASK)
  7428. #define SIM_FCFG2_SWAPPFLSH_MASK 0x80000000u
  7429. #define SIM_FCFG2_SWAPPFLSH_SHIFT 31
  7430. /* UIDH Bit Fields */
  7431. #define SIM_UIDH_UID_MASK 0xFFFFFFFFu
  7432. #define SIM_UIDH_UID_SHIFT 0
  7433. #define SIM_UIDH_UID(x) (((uint32_t)(((uint32_t)(x))<<SIM_UIDH_UID_SHIFT))&SIM_UIDH_UID_MASK)
  7434. /* UIDMH Bit Fields */
  7435. #define SIM_UIDMH_UID_MASK 0xFFFFFFFFu
  7436. #define SIM_UIDMH_UID_SHIFT 0
  7437. #define SIM_UIDMH_UID(x) (((uint32_t)(((uint32_t)(x))<<SIM_UIDMH_UID_SHIFT))&SIM_UIDMH_UID_MASK)
  7438. /* UIDML Bit Fields */
  7439. #define SIM_UIDML_UID_MASK 0xFFFFFFFFu
  7440. #define SIM_UIDML_UID_SHIFT 0
  7441. #define SIM_UIDML_UID(x) (((uint32_t)(((uint32_t)(x))<<SIM_UIDML_UID_SHIFT))&SIM_UIDML_UID_MASK)
  7442. /* UIDL Bit Fields */
  7443. #define SIM_UIDL_UID_MASK 0xFFFFFFFFu
  7444. #define SIM_UIDL_UID_SHIFT 0
  7445. #define SIM_UIDL_UID(x) (((uint32_t)(((uint32_t)(x))<<SIM_UIDL_UID_SHIFT))&SIM_UIDL_UID_MASK)
  7446. /*! \} */ /* end of group SIM_Register_Masks */
  7447. /* SIM - Peripheral instance base addresses */
  7448. /*! Peripheral SIM base address */
  7449. #define SIM_BASE (0x40047000u)
  7450. /*! Peripheral SIM base pointer */
  7451. #define SIM ((SIM_Type *)SIM_BASE)
  7452. /*! \} */ /* end of group SIM_Peripheral_Access_Layer */
  7453. /* ----------------------------------------------------------------------------
  7454. -- SPI Peripheral Access Layer
  7455. ---------------------------------------------------------------------------- */
  7456. /*! \addtogroup SPI_Peripheral_Access_Layer SPI Peripheral Access Layer */
  7457. /*! \{ */
  7458. /*! SPI - Register Layout Typedef */
  7459. typedef struct {
  7460. __IO uint32_t MCR; /*!< DSPI Module Configuration Register, offset: 0x0 */
  7461. uint8_t RESERVED_0[4];
  7462. __IO uint32_t TCR; /*!< DSPI Transfer Count Register, offset: 0x8 */
  7463. union { /* offset: 0xC */
  7464. __IO uint32_t CTAR[2]; /*!< DSPI Clock and Transfer Attributes Register (In Master Mode), array offset: 0xC, array step: 0x4 */
  7465. __IO uint32_t CTAR_SLAVE[1]; /*!< DSPI Clock and Transfer Attributes Register (In Slave Mode), array offset: 0xC, array step: 0x4 */
  7466. };
  7467. uint8_t RESERVED_1[24];
  7468. __IO uint32_t SR; /*!< DSPI Status Register, offset: 0x2C */
  7469. __IO uint32_t RSER; /*!< DSPI DMA/Interrupt Request Select and Enable Register, offset: 0x30 */
  7470. union { /* offset: 0x34 */
  7471. __IO uint32_t PUSHR; /*!< DSPI PUSH TX FIFO Register In Master Mode, offset: 0x34 */
  7472. __IO uint32_t PUSHR_SLAVE; /*!< DSPI PUSH TX FIFO Register In Slave Mode, offset: 0x34 */
  7473. };
  7474. __I uint32_t POPR; /*!< DSPI POP RX FIFO Register, offset: 0x38 */
  7475. __I uint32_t TXFR0; /*!< DSPI Transmit FIFO Registers, offset: 0x3C */
  7476. __I uint32_t TXFR1; /*!< DSPI Transmit FIFO Registers, offset: 0x40 */
  7477. __I uint32_t TXFR2; /*!< DSPI Transmit FIFO Registers, offset: 0x44 */
  7478. __I uint32_t TXFR3; /*!< DSPI Transmit FIFO Registers, offset: 0x48 */
  7479. uint8_t RESERVED_2[48];
  7480. __I uint32_t RXFR0; /*!< DSPI Receive FIFO Registers, offset: 0x7C */
  7481. __I uint32_t RXFR1; /*!< DSPI Receive FIFO Registers, offset: 0x80 */
  7482. __I uint32_t RXFR2; /*!< DSPI Receive FIFO Registers, offset: 0x84 */
  7483. __I uint32_t RXFR3; /*!< DSPI Receive FIFO Registers, offset: 0x88 */
  7484. } SPI_Type;
  7485. /* ----------------------------------------------------------------------------
  7486. -- SPI Register Masks
  7487. ---------------------------------------------------------------------------- */
  7488. /*! \addtogroup SPI_Register_Masks SPI Register Masks */
  7489. /*! \{ */
  7490. /* MCR Bit Fields */
  7491. #define SPI_MCR_HALT_MASK 0x1u
  7492. #define SPI_MCR_HALT_SHIFT 0
  7493. #define SPI_MCR_SMPL_PT_MASK 0x300u
  7494. #define SPI_MCR_SMPL_PT_SHIFT 8
  7495. #define SPI_MCR_SMPL_PT(x) (((uint32_t)(((uint32_t)(x))<<SPI_MCR_SMPL_PT_SHIFT))&SPI_MCR_SMPL_PT_MASK)
  7496. #define SPI_MCR_CLR_RXF_MASK 0x400u
  7497. #define SPI_MCR_CLR_RXF_SHIFT 10
  7498. #define SPI_MCR_CLR_TXF_MASK 0x800u
  7499. #define SPI_MCR_CLR_TXF_SHIFT 11
  7500. #define SPI_MCR_DIS_RXF_MASK 0x1000u
  7501. #define SPI_MCR_DIS_RXF_SHIFT 12
  7502. #define SPI_MCR_DIS_TXF_MASK 0x2000u
  7503. #define SPI_MCR_DIS_TXF_SHIFT 13
  7504. #define SPI_MCR_MDIS_MASK 0x4000u
  7505. #define SPI_MCR_MDIS_SHIFT 14
  7506. #define SPI_MCR_DOZE_MASK 0x8000u
  7507. #define SPI_MCR_DOZE_SHIFT 15
  7508. #define SPI_MCR_PCSIS_MASK 0x3F0000u
  7509. #define SPI_MCR_PCSIS_SHIFT 16
  7510. #define SPI_MCR_PCSIS(x) (((uint32_t)(((uint32_t)(x))<<SPI_MCR_PCSIS_SHIFT))&SPI_MCR_PCSIS_MASK)
  7511. #define SPI_MCR_ROOE_MASK 0x1000000u
  7512. #define SPI_MCR_ROOE_SHIFT 24
  7513. #define SPI_MCR_PCSSE_MASK 0x2000000u
  7514. #define SPI_MCR_PCSSE_SHIFT 25
  7515. #define SPI_MCR_MTFE_MASK 0x4000000u
  7516. #define SPI_MCR_MTFE_SHIFT 26
  7517. #define SPI_MCR_FRZ_MASK 0x8000000u
  7518. #define SPI_MCR_FRZ_SHIFT 27
  7519. #define SPI_MCR_DCONF_MASK 0x30000000u
  7520. #define SPI_MCR_DCONF_SHIFT 28
  7521. #define SPI_MCR_DCONF(x) (((uint32_t)(((uint32_t)(x))<<SPI_MCR_DCONF_SHIFT))&SPI_MCR_DCONF_MASK)
  7522. #define SPI_MCR_CONT_SCKE_MASK 0x40000000u
  7523. #define SPI_MCR_CONT_SCKE_SHIFT 30
  7524. #define SPI_MCR_MSTR_MASK 0x80000000u
  7525. #define SPI_MCR_MSTR_SHIFT 31
  7526. /* TCR Bit Fields */
  7527. #define SPI_TCR_SPI_TCNT_MASK 0xFFFF0000u
  7528. #define SPI_TCR_SPI_TCNT_SHIFT 16
  7529. #define SPI_TCR_SPI_TCNT(x) (((uint32_t)(((uint32_t)(x))<<SPI_TCR_SPI_TCNT_SHIFT))&SPI_TCR_SPI_TCNT_MASK)
  7530. /* CTAR Bit Fields */
  7531. #define SPI_CTAR_BR_MASK 0xFu
  7532. #define SPI_CTAR_BR_SHIFT 0
  7533. #define SPI_CTAR_BR(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_BR_SHIFT))&SPI_CTAR_BR_MASK)
  7534. #define SPI_CTAR_DT_MASK 0xF0u
  7535. #define SPI_CTAR_DT_SHIFT 4
  7536. #define SPI_CTAR_DT(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_DT_SHIFT))&SPI_CTAR_DT_MASK)
  7537. #define SPI_CTAR_ASC_MASK 0xF00u
  7538. #define SPI_CTAR_ASC_SHIFT 8
  7539. #define SPI_CTAR_ASC(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_ASC_SHIFT))&SPI_CTAR_ASC_MASK)
  7540. #define SPI_CTAR_CSSCK_MASK 0xF000u
  7541. #define SPI_CTAR_CSSCK_SHIFT 12
  7542. #define SPI_CTAR_CSSCK(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_CSSCK_SHIFT))&SPI_CTAR_CSSCK_MASK)
  7543. #define SPI_CTAR_PBR_MASK 0x30000u
  7544. #define SPI_CTAR_PBR_SHIFT 16
  7545. #define SPI_CTAR_PBR(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PBR_SHIFT))&SPI_CTAR_PBR_MASK)
  7546. #define SPI_CTAR_PDT_MASK 0xC0000u
  7547. #define SPI_CTAR_PDT_SHIFT 18
  7548. #define SPI_CTAR_PDT(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PDT_SHIFT))&SPI_CTAR_PDT_MASK)
  7549. #define SPI_CTAR_PASC_MASK 0x300000u
  7550. #define SPI_CTAR_PASC_SHIFT 20
  7551. #define SPI_CTAR_PASC(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PASC_SHIFT))&SPI_CTAR_PASC_MASK)
  7552. #define SPI_CTAR_PCSSCK_MASK 0xC00000u
  7553. #define SPI_CTAR_PCSSCK_SHIFT 22
  7554. #define SPI_CTAR_PCSSCK(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PCSSCK_SHIFT))&SPI_CTAR_PCSSCK_MASK)
  7555. #define SPI_CTAR_LSBFE_MASK 0x1000000u
  7556. #define SPI_CTAR_LSBFE_SHIFT 24
  7557. #define SPI_CTAR_CPHA_MASK 0x2000000u
  7558. #define SPI_CTAR_CPHA_SHIFT 25
  7559. #define SPI_CTAR_CPOL_MASK 0x4000000u
  7560. #define SPI_CTAR_CPOL_SHIFT 26
  7561. #define SPI_CTAR_FMSZ_MASK 0x78000000u
  7562. #define SPI_CTAR_FMSZ_SHIFT 27
  7563. #define SPI_CTAR_FMSZ(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_FMSZ_SHIFT))&SPI_CTAR_FMSZ_MASK)
  7564. #define SPI_CTAR_DBR_MASK 0x80000000u
  7565. #define SPI_CTAR_DBR_SHIFT 31
  7566. /* CTAR_SLAVE Bit Fields */
  7567. #define SPI_CTAR_SLAVE_CPHA_MASK 0x2000000u
  7568. #define SPI_CTAR_SLAVE_CPHA_SHIFT 25
  7569. #define SPI_CTAR_SLAVE_CPOL_MASK 0x4000000u
  7570. #define SPI_CTAR_SLAVE_CPOL_SHIFT 26
  7571. #define SPI_CTAR_SLAVE_FMSZ_MASK 0xF8000000u
  7572. #define SPI_CTAR_SLAVE_FMSZ_SHIFT 27
  7573. #define SPI_CTAR_SLAVE_FMSZ(x) (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_SLAVE_FMSZ_SHIFT))&SPI_CTAR_SLAVE_FMSZ_MASK)
  7574. /* SR Bit Fields */
  7575. #define SPI_SR_POPNXTPTR_MASK 0xFu
  7576. #define SPI_SR_POPNXTPTR_SHIFT 0
  7577. #define SPI_SR_POPNXTPTR(x) (((uint32_t)(((uint32_t)(x))<<SPI_SR_POPNXTPTR_SHIFT))&SPI_SR_POPNXTPTR_MASK)
  7578. #define SPI_SR_RXCTR_MASK 0xF0u
  7579. #define SPI_SR_RXCTR_SHIFT 4
  7580. #define SPI_SR_RXCTR(x) (((uint32_t)(((uint32_t)(x))<<SPI_SR_RXCTR_SHIFT))&SPI_SR_RXCTR_MASK)
  7581. #define SPI_SR_TXNXTPTR_MASK 0xF00u
  7582. #define SPI_SR_TXNXTPTR_SHIFT 8
  7583. #define SPI_SR_TXNXTPTR(x) (((uint32_t)(((uint32_t)(x))<<SPI_SR_TXNXTPTR_SHIFT))&SPI_SR_TXNXTPTR_MASK)
  7584. #define SPI_SR_TXCTR_MASK 0xF000u
  7585. #define SPI_SR_TXCTR_SHIFT 12
  7586. #define SPI_SR_TXCTR(x) (((uint32_t)(((uint32_t)(x))<<SPI_SR_TXCTR_SHIFT))&SPI_SR_TXCTR_MASK)
  7587. #define SPI_SR_RFDF_MASK 0x20000u
  7588. #define SPI_SR_RFDF_SHIFT 17
  7589. #define SPI_SR_RFOF_MASK 0x80000u
  7590. #define SPI_SR_RFOF_SHIFT 19
  7591. #define SPI_SR_TFFF_MASK 0x2000000u
  7592. #define SPI_SR_TFFF_SHIFT 25
  7593. #define SPI_SR_TFUF_MASK 0x8000000u
  7594. #define SPI_SR_TFUF_SHIFT 27
  7595. #define SPI_SR_EOQF_MASK 0x10000000u
  7596. #define SPI_SR_EOQF_SHIFT 28
  7597. #define SPI_SR_TXRXS_MASK 0x40000000u
  7598. #define SPI_SR_TXRXS_SHIFT 30
  7599. #define SPI_SR_TCF_MASK 0x80000000u
  7600. #define SPI_SR_TCF_SHIFT 31
  7601. /* RSER Bit Fields */
  7602. #define SPI_RSER_RFDF_DIRS_MASK 0x10000u
  7603. #define SPI_RSER_RFDF_DIRS_SHIFT 16
  7604. #define SPI_RSER_RFDF_RE_MASK 0x20000u
  7605. #define SPI_RSER_RFDF_RE_SHIFT 17
  7606. #define SPI_RSER_RFOF_RE_MASK 0x80000u
  7607. #define SPI_RSER_RFOF_RE_SHIFT 19
  7608. #define SPI_RSER_TFFF_DIRS_MASK 0x1000000u
  7609. #define SPI_RSER_TFFF_DIRS_SHIFT 24
  7610. #define SPI_RSER_TFFF_RE_MASK 0x2000000u
  7611. #define SPI_RSER_TFFF_RE_SHIFT 25
  7612. #define SPI_RSER_TFUF_RE_MASK 0x8000000u
  7613. #define SPI_RSER_TFUF_RE_SHIFT 27
  7614. #define SPI_RSER_EOQF_RE_MASK 0x10000000u
  7615. #define SPI_RSER_EOQF_RE_SHIFT 28
  7616. #define SPI_RSER_TCF_RE_MASK 0x80000000u
  7617. #define SPI_RSER_TCF_RE_SHIFT 31
  7618. /* PUSHR Bit Fields */
  7619. #define SPI_PUSHR_TXDATA_MASK 0xFFFFu
  7620. #define SPI_PUSHR_TXDATA_SHIFT 0
  7621. #define SPI_PUSHR_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_TXDATA_SHIFT))&SPI_PUSHR_TXDATA_MASK)
  7622. #define SPI_PUSHR_PCS_MASK 0x3F0000u
  7623. #define SPI_PUSHR_PCS_SHIFT 16
  7624. #define SPI_PUSHR_PCS(x) (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_PCS_SHIFT))&SPI_PUSHR_PCS_MASK)
  7625. #define SPI_PUSHR_CTCNT_MASK 0x4000000u
  7626. #define SPI_PUSHR_CTCNT_SHIFT 26
  7627. #define SPI_PUSHR_EOQ_MASK 0x8000000u
  7628. #define SPI_PUSHR_EOQ_SHIFT 27
  7629. #define SPI_PUSHR_CTAS_MASK 0x70000000u
  7630. #define SPI_PUSHR_CTAS_SHIFT 28
  7631. #define SPI_PUSHR_CTAS(x) (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_CTAS_SHIFT))&SPI_PUSHR_CTAS_MASK)
  7632. #define SPI_PUSHR_CONT_MASK 0x80000000u
  7633. #define SPI_PUSHR_CONT_SHIFT 31
  7634. /* PUSHR_SLAVE Bit Fields */
  7635. #define SPI_PUSHR_SLAVE_TXDATA_MASK 0xFFFFFFFFu
  7636. #define SPI_PUSHR_SLAVE_TXDATA_SHIFT 0
  7637. #define SPI_PUSHR_SLAVE_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_SLAVE_TXDATA_SHIFT))&SPI_PUSHR_SLAVE_TXDATA_MASK)
  7638. /* POPR Bit Fields */
  7639. #define SPI_POPR_RXDATA_MASK 0xFFFFFFFFu
  7640. #define SPI_POPR_RXDATA_SHIFT 0
  7641. #define SPI_POPR_RXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_POPR_RXDATA_SHIFT))&SPI_POPR_RXDATA_MASK)
  7642. /* TXFR0 Bit Fields */
  7643. #define SPI_TXFR0_TXDATA_MASK 0xFFFFu
  7644. #define SPI_TXFR0_TXDATA_SHIFT 0
  7645. #define SPI_TXFR0_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR0_TXDATA_SHIFT))&SPI_TXFR0_TXDATA_MASK)
  7646. #define SPI_TXFR0_TXCMD_TXDATA_MASK 0xFFFF0000u
  7647. #define SPI_TXFR0_TXCMD_TXDATA_SHIFT 16
  7648. #define SPI_TXFR0_TXCMD_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR0_TXCMD_TXDATA_SHIFT))&SPI_TXFR0_TXCMD_TXDATA_MASK)
  7649. /* TXFR1 Bit Fields */
  7650. #define SPI_TXFR1_TXDATA_MASK 0xFFFFu
  7651. #define SPI_TXFR1_TXDATA_SHIFT 0
  7652. #define SPI_TXFR1_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR1_TXDATA_SHIFT))&SPI_TXFR1_TXDATA_MASK)
  7653. #define SPI_TXFR1_TXCMD_TXDATA_MASK 0xFFFF0000u
  7654. #define SPI_TXFR1_TXCMD_TXDATA_SHIFT 16
  7655. #define SPI_TXFR1_TXCMD_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR1_TXCMD_TXDATA_SHIFT))&SPI_TXFR1_TXCMD_TXDATA_MASK)
  7656. /* TXFR2 Bit Fields */
  7657. #define SPI_TXFR2_TXDATA_MASK 0xFFFFu
  7658. #define SPI_TXFR2_TXDATA_SHIFT 0
  7659. #define SPI_TXFR2_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR2_TXDATA_SHIFT))&SPI_TXFR2_TXDATA_MASK)
  7660. #define SPI_TXFR2_TXCMD_TXDATA_MASK 0xFFFF0000u
  7661. #define SPI_TXFR2_TXCMD_TXDATA_SHIFT 16
  7662. #define SPI_TXFR2_TXCMD_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR2_TXCMD_TXDATA_SHIFT))&SPI_TXFR2_TXCMD_TXDATA_MASK)
  7663. /* TXFR3 Bit Fields */
  7664. #define SPI_TXFR3_TXDATA_MASK 0xFFFFu
  7665. #define SPI_TXFR3_TXDATA_SHIFT 0
  7666. #define SPI_TXFR3_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR3_TXDATA_SHIFT))&SPI_TXFR3_TXDATA_MASK)
  7667. #define SPI_TXFR3_TXCMD_TXDATA_MASK 0xFFFF0000u
  7668. #define SPI_TXFR3_TXCMD_TXDATA_SHIFT 16
  7669. #define SPI_TXFR3_TXCMD_TXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_TXFR3_TXCMD_TXDATA_SHIFT))&SPI_TXFR3_TXCMD_TXDATA_MASK)
  7670. /* RXFR0 Bit Fields */
  7671. #define SPI_RXFR0_RXDATA_MASK 0xFFFFFFFFu
  7672. #define SPI_RXFR0_RXDATA_SHIFT 0
  7673. #define SPI_RXFR0_RXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_RXFR0_RXDATA_SHIFT))&SPI_RXFR0_RXDATA_MASK)
  7674. /* RXFR1 Bit Fields */
  7675. #define SPI_RXFR1_RXDATA_MASK 0xFFFFFFFFu
  7676. #define SPI_RXFR1_RXDATA_SHIFT 0
  7677. #define SPI_RXFR1_RXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_RXFR1_RXDATA_SHIFT))&SPI_RXFR1_RXDATA_MASK)
  7678. /* RXFR2 Bit Fields */
  7679. #define SPI_RXFR2_RXDATA_MASK 0xFFFFFFFFu
  7680. #define SPI_RXFR2_RXDATA_SHIFT 0
  7681. #define SPI_RXFR2_RXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_RXFR2_RXDATA_SHIFT))&SPI_RXFR2_RXDATA_MASK)
  7682. /* RXFR3 Bit Fields */
  7683. #define SPI_RXFR3_RXDATA_MASK 0xFFFFFFFFu
  7684. #define SPI_RXFR3_RXDATA_SHIFT 0
  7685. #define SPI_RXFR3_RXDATA(x) (((uint32_t)(((uint32_t)(x))<<SPI_RXFR3_RXDATA_SHIFT))&SPI_RXFR3_RXDATA_MASK)
  7686. /*! \} */ /* end of group SPI_Register_Masks */
  7687. /* SPI - Peripheral instance base addresses */
  7688. /*! Peripheral SPI0 base address */
  7689. #define SPI0_BASE (0x4002C000u)
  7690. /*! Peripheral SPI0 base pointer */
  7691. #define SPI0 ((SPI_Type *)SPI0_BASE)
  7692. /*! Peripheral SPI1 base address */
  7693. #define SPI1_BASE (0x4002D000u)
  7694. /*! Peripheral SPI1 base pointer */
  7695. #define SPI1 ((SPI_Type *)SPI1_BASE)
  7696. /*! Peripheral SPI2 base address */
  7697. #define SPI2_BASE (0x400AC000u)
  7698. /*! Peripheral SPI2 base pointer */
  7699. #define SPI2 ((SPI_Type *)SPI2_BASE)
  7700. /*! \} */ /* end of group SPI_Peripheral_Access_Layer */
  7701. /* ----------------------------------------------------------------------------
  7702. -- TSI Peripheral Access Layer
  7703. ---------------------------------------------------------------------------- */
  7704. /*! \addtogroup TSI_Peripheral_Access_Layer TSI Peripheral Access Layer */
  7705. /*! \{ */
  7706. /*! TSI - Register Layout Typedef */
  7707. typedef struct {
  7708. __IO uint32_t GENCS; /*!< General Control and Status Register, offset: 0x0 */
  7709. __IO uint32_t SCANC; /*!< SCAN control register, offset: 0x4 */
  7710. __IO uint32_t PEN; /*!< Pin enable register, offset: 0x8 */
  7711. __IO uint32_t STATUS; /*!< Status Register, offset: 0xC */
  7712. uint8_t RESERVED_0[240];
  7713. __I uint32_t CNTR1; /*!< Counter Register, offset: 0x100 */
  7714. __I uint32_t CNTR3; /*!< Counter Register, offset: 0x104 */
  7715. __I uint32_t CNTR5; /*!< Counter Register, offset: 0x108 */
  7716. __I uint32_t CNTR7; /*!< Counter Register, offset: 0x10C */
  7717. __I uint32_t CNTR9; /*!< Counter Register, offset: 0x110 */
  7718. __I uint32_t CNTR11; /*!< Counter Register, offset: 0x114 */
  7719. __I uint32_t CNTR13; /*!< Counter Register, offset: 0x118 */
  7720. __I uint32_t CNTR15; /*!< Counter Register, offset: 0x11C */
  7721. __IO uint32_t THRESHLD[16]; /*!< Channel n threshold register, array offset: 0x120, array step: 0x4 */
  7722. } TSI_Type;
  7723. /* ----------------------------------------------------------------------------
  7724. -- TSI Register Masks
  7725. ---------------------------------------------------------------------------- */
  7726. /*! \addtogroup TSI_Register_Masks TSI Register Masks */
  7727. /*! \{ */
  7728. /* GENCS Bit Fields */
  7729. #define TSI_GENCS_STPE_MASK 0x1u
  7730. #define TSI_GENCS_STPE_SHIFT 0
  7731. #define TSI_GENCS_STM_MASK 0x2u
  7732. #define TSI_GENCS_STM_SHIFT 1
  7733. #define TSI_GENCS_ESOR_MASK 0x10u
  7734. #define TSI_GENCS_ESOR_SHIFT 4
  7735. #define TSI_GENCS_ERIE_MASK 0x20u
  7736. #define TSI_GENCS_ERIE_SHIFT 5
  7737. #define TSI_GENCS_TSIIE_MASK 0x40u
  7738. #define TSI_GENCS_TSIIE_SHIFT 6
  7739. #define TSI_GENCS_TSIEN_MASK 0x80u
  7740. #define TSI_GENCS_TSIEN_SHIFT 7
  7741. #define TSI_GENCS_SWTS_MASK 0x100u
  7742. #define TSI_GENCS_SWTS_SHIFT 8
  7743. #define TSI_GENCS_SCNIP_MASK 0x200u
  7744. #define TSI_GENCS_SCNIP_SHIFT 9
  7745. #define TSI_GENCS_OVRF_MASK 0x1000u
  7746. #define TSI_GENCS_OVRF_SHIFT 12
  7747. #define TSI_GENCS_EXTERF_MASK 0x2000u
  7748. #define TSI_GENCS_EXTERF_SHIFT 13
  7749. #define TSI_GENCS_OUTRGF_MASK 0x4000u
  7750. #define TSI_GENCS_OUTRGF_SHIFT 14
  7751. #define TSI_GENCS_EOSF_MASK 0x8000u
  7752. #define TSI_GENCS_EOSF_SHIFT 15
  7753. #define TSI_GENCS_PS_MASK 0x70000u
  7754. #define TSI_GENCS_PS_SHIFT 16
  7755. #define TSI_GENCS_PS(x) (((uint32_t)(((uint32_t)(x))<<TSI_GENCS_PS_SHIFT))&TSI_GENCS_PS_MASK)
  7756. #define TSI_GENCS_NSCN_MASK 0xF80000u
  7757. #define TSI_GENCS_NSCN_SHIFT 19
  7758. #define TSI_GENCS_NSCN(x) (((uint32_t)(((uint32_t)(x))<<TSI_GENCS_NSCN_SHIFT))&TSI_GENCS_NSCN_MASK)
  7759. #define TSI_GENCS_LPSCNITV_MASK 0xF000000u
  7760. #define TSI_GENCS_LPSCNITV_SHIFT 24
  7761. #define TSI_GENCS_LPSCNITV(x) (((uint32_t)(((uint32_t)(x))<<TSI_GENCS_LPSCNITV_SHIFT))&TSI_GENCS_LPSCNITV_MASK)
  7762. #define TSI_GENCS_LPCLKS_MASK 0x10000000u
  7763. #define TSI_GENCS_LPCLKS_SHIFT 28
  7764. /* SCANC Bit Fields */
  7765. #define TSI_SCANC_AMPSC_MASK 0x7u
  7766. #define TSI_SCANC_AMPSC_SHIFT 0
  7767. #define TSI_SCANC_AMPSC(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_AMPSC_SHIFT))&TSI_SCANC_AMPSC_MASK)
  7768. #define TSI_SCANC_AMCLKS_MASK 0x18u
  7769. #define TSI_SCANC_AMCLKS_SHIFT 3
  7770. #define TSI_SCANC_AMCLKS(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_AMCLKS_SHIFT))&TSI_SCANC_AMCLKS_MASK)
  7771. #define TSI_SCANC_AMCLKDIV_MASK 0x20u
  7772. #define TSI_SCANC_AMCLKDIV_SHIFT 5
  7773. #define TSI_SCANC_SMOD_MASK 0xFF00u
  7774. #define TSI_SCANC_SMOD_SHIFT 8
  7775. #define TSI_SCANC_SMOD(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_SMOD_SHIFT))&TSI_SCANC_SMOD_MASK)
  7776. #define TSI_SCANC_DELVOL_MASK 0x70000u
  7777. #define TSI_SCANC_DELVOL_SHIFT 16
  7778. #define TSI_SCANC_DELVOL(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_DELVOL_SHIFT))&TSI_SCANC_DELVOL_MASK)
  7779. #define TSI_SCANC_EXTCHRG_MASK 0xF80000u
  7780. #define TSI_SCANC_EXTCHRG_SHIFT 19
  7781. #define TSI_SCANC_EXTCHRG(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_EXTCHRG_SHIFT))&TSI_SCANC_EXTCHRG_MASK)
  7782. #define TSI_SCANC_CAPTRM_MASK 0x7000000u
  7783. #define TSI_SCANC_CAPTRM_SHIFT 24
  7784. #define TSI_SCANC_CAPTRM(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_CAPTRM_SHIFT))&TSI_SCANC_CAPTRM_MASK)
  7785. #define TSI_SCANC_REFCHRG_MASK 0xF8000000u
  7786. #define TSI_SCANC_REFCHRG_SHIFT 27
  7787. #define TSI_SCANC_REFCHRG(x) (((uint32_t)(((uint32_t)(x))<<TSI_SCANC_REFCHRG_SHIFT))&TSI_SCANC_REFCHRG_MASK)
  7788. /* PEN Bit Fields */
  7789. #define TSI_PEN_PEN0_MASK 0x1u
  7790. #define TSI_PEN_PEN0_SHIFT 0
  7791. #define TSI_PEN_PEN1_MASK 0x2u
  7792. #define TSI_PEN_PEN1_SHIFT 1
  7793. #define TSI_PEN_PEN2_MASK 0x4u
  7794. #define TSI_PEN_PEN2_SHIFT 2
  7795. #define TSI_PEN_PEN3_MASK 0x8u
  7796. #define TSI_PEN_PEN3_SHIFT 3
  7797. #define TSI_PEN_PEN4_MASK 0x10u
  7798. #define TSI_PEN_PEN4_SHIFT 4
  7799. #define TSI_PEN_PEN5_MASK 0x20u
  7800. #define TSI_PEN_PEN5_SHIFT 5
  7801. #define TSI_PEN_PEN6_MASK 0x40u
  7802. #define TSI_PEN_PEN6_SHIFT 6
  7803. #define TSI_PEN_PEN7_MASK 0x80u
  7804. #define TSI_PEN_PEN7_SHIFT 7
  7805. #define TSI_PEN_PEN8_MASK 0x100u
  7806. #define TSI_PEN_PEN8_SHIFT 8
  7807. #define TSI_PEN_PEN9_MASK 0x200u
  7808. #define TSI_PEN_PEN9_SHIFT 9
  7809. #define TSI_PEN_PEN10_MASK 0x400u
  7810. #define TSI_PEN_PEN10_SHIFT 10
  7811. #define TSI_PEN_PEN11_MASK 0x800u
  7812. #define TSI_PEN_PEN11_SHIFT 11
  7813. #define TSI_PEN_PEN12_MASK 0x1000u
  7814. #define TSI_PEN_PEN12_SHIFT 12
  7815. #define TSI_PEN_PEN13_MASK 0x2000u
  7816. #define TSI_PEN_PEN13_SHIFT 13
  7817. #define TSI_PEN_PEN14_MASK 0x4000u
  7818. #define TSI_PEN_PEN14_SHIFT 14
  7819. #define TSI_PEN_PEN15_MASK 0x8000u
  7820. #define TSI_PEN_PEN15_SHIFT 15
  7821. #define TSI_PEN_LPSP_MASK 0xF0000u
  7822. #define TSI_PEN_LPSP_SHIFT 16
  7823. #define TSI_PEN_LPSP(x) (((uint32_t)(((uint32_t)(x))<<TSI_PEN_LPSP_SHIFT))&TSI_PEN_LPSP_MASK)
  7824. /* STATUS Bit Fields */
  7825. #define TSI_STATUS_ORNGF0_MASK 0x1u
  7826. #define TSI_STATUS_ORNGF0_SHIFT 0
  7827. #define TSI_STATUS_ORNGF1_MASK 0x2u
  7828. #define TSI_STATUS_ORNGF1_SHIFT 1
  7829. #define TSI_STATUS_ORNGF2_MASK 0x4u
  7830. #define TSI_STATUS_ORNGF2_SHIFT 2
  7831. #define TSI_STATUS_ORNGF3_MASK 0x8u
  7832. #define TSI_STATUS_ORNGF3_SHIFT 3
  7833. #define TSI_STATUS_ORNGF4_MASK 0x10u
  7834. #define TSI_STATUS_ORNGF4_SHIFT 4
  7835. #define TSI_STATUS_ORNGF5_MASK 0x20u
  7836. #define TSI_STATUS_ORNGF5_SHIFT 5
  7837. #define TSI_STATUS_ORNGF6_MASK 0x40u
  7838. #define TSI_STATUS_ORNGF6_SHIFT 6
  7839. #define TSI_STATUS_ORNGF7_MASK 0x80u
  7840. #define TSI_STATUS_ORNGF7_SHIFT 7
  7841. #define TSI_STATUS_ORNGF8_MASK 0x100u
  7842. #define TSI_STATUS_ORNGF8_SHIFT 8
  7843. #define TSI_STATUS_ORNGF9_MASK 0x200u
  7844. #define TSI_STATUS_ORNGF9_SHIFT 9
  7845. #define TSI_STATUS_ORNGF10_MASK 0x400u
  7846. #define TSI_STATUS_ORNGF10_SHIFT 10
  7847. #define TSI_STATUS_ORNGF11_MASK 0x800u
  7848. #define TSI_STATUS_ORNGF11_SHIFT 11
  7849. #define TSI_STATUS_ORNGF12_MASK 0x1000u
  7850. #define TSI_STATUS_ORNGF12_SHIFT 12
  7851. #define TSI_STATUS_ORNGF13_MASK 0x2000u
  7852. #define TSI_STATUS_ORNGF13_SHIFT 13
  7853. #define TSI_STATUS_ORNGF14_MASK 0x4000u
  7854. #define TSI_STATUS_ORNGF14_SHIFT 14
  7855. #define TSI_STATUS_ORNGF15_MASK 0x8000u
  7856. #define TSI_STATUS_ORNGF15_SHIFT 15
  7857. #define TSI_STATUS_ERROF0_MASK 0x10000u
  7858. #define TSI_STATUS_ERROF0_SHIFT 16
  7859. #define TSI_STATUS_ERROF1_MASK 0x20000u
  7860. #define TSI_STATUS_ERROF1_SHIFT 17
  7861. #define TSI_STATUS_ERROF2_MASK 0x40000u
  7862. #define TSI_STATUS_ERROF2_SHIFT 18
  7863. #define TSI_STATUS_ERROF3_MASK 0x80000u
  7864. #define TSI_STATUS_ERROF3_SHIFT 19
  7865. #define TSI_STATUS_ERROF4_MASK 0x100000u
  7866. #define TSI_STATUS_ERROF4_SHIFT 20
  7867. #define TSI_STATUS_ERROF5_MASK 0x200000u
  7868. #define TSI_STATUS_ERROF5_SHIFT 21
  7869. #define TSI_STATUS_ERROF6_MASK 0x400000u
  7870. #define TSI_STATUS_ERROF6_SHIFT 22
  7871. #define TSI_STATUS_ERROF7_MASK 0x800000u
  7872. #define TSI_STATUS_ERROF7_SHIFT 23
  7873. #define TSI_STATUS_ERROF8_MASK 0x1000000u
  7874. #define TSI_STATUS_ERROF8_SHIFT 24
  7875. #define TSI_STATUS_ERROF9_MASK 0x2000000u
  7876. #define TSI_STATUS_ERROF9_SHIFT 25
  7877. #define TSI_STATUS_ERROF10_MASK 0x4000000u
  7878. #define TSI_STATUS_ERROF10_SHIFT 26
  7879. #define TSI_STATUS_ERROF11_MASK 0x8000000u
  7880. #define TSI_STATUS_ERROF11_SHIFT 27
  7881. #define TSI_STATUS_ERROF12_MASK 0x10000000u
  7882. #define TSI_STATUS_ERROF12_SHIFT 28
  7883. #define TSI_STATUS_ERROF13_MASK 0x20000000u
  7884. #define TSI_STATUS_ERROF13_SHIFT 29
  7885. #define TSI_STATUS_ERROF14_MASK 0x40000000u
  7886. #define TSI_STATUS_ERROF14_SHIFT 30
  7887. #define TSI_STATUS_ERROF15_MASK 0x80000000u
  7888. #define TSI_STATUS_ERROF15_SHIFT 31
  7889. /* CNTR1 Bit Fields */
  7890. #define TSI_CNTR1_CNTN_MASK 0xFFFFu
  7891. #define TSI_CNTR1_CNTN_SHIFT 0
  7892. #define TSI_CNTR1_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR1_CNTN_SHIFT))&TSI_CNTR1_CNTN_MASK)
  7893. #define TSI_CNTR1_CNTN1_MASK 0xFFFF0000u
  7894. #define TSI_CNTR1_CNTN1_SHIFT 16
  7895. #define TSI_CNTR1_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR1_CNTN1_SHIFT))&TSI_CNTR1_CNTN1_MASK)
  7896. /* CNTR3 Bit Fields */
  7897. #define TSI_CNTR3_CNTN_MASK 0xFFFFu
  7898. #define TSI_CNTR3_CNTN_SHIFT 0
  7899. #define TSI_CNTR3_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR3_CNTN_SHIFT))&TSI_CNTR3_CNTN_MASK)
  7900. #define TSI_CNTR3_CNTN1_MASK 0xFFFF0000u
  7901. #define TSI_CNTR3_CNTN1_SHIFT 16
  7902. #define TSI_CNTR3_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR3_CNTN1_SHIFT))&TSI_CNTR3_CNTN1_MASK)
  7903. /* CNTR5 Bit Fields */
  7904. #define TSI_CNTR5_CNTN_MASK 0xFFFFu
  7905. #define TSI_CNTR5_CNTN_SHIFT 0
  7906. #define TSI_CNTR5_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR5_CNTN_SHIFT))&TSI_CNTR5_CNTN_MASK)
  7907. #define TSI_CNTR5_CNTN1_MASK 0xFFFF0000u
  7908. #define TSI_CNTR5_CNTN1_SHIFT 16
  7909. #define TSI_CNTR5_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR5_CNTN1_SHIFT))&TSI_CNTR5_CNTN1_MASK)
  7910. /* CNTR7 Bit Fields */
  7911. #define TSI_CNTR7_CNTN_MASK 0xFFFFu
  7912. #define TSI_CNTR7_CNTN_SHIFT 0
  7913. #define TSI_CNTR7_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR7_CNTN_SHIFT))&TSI_CNTR7_CNTN_MASK)
  7914. #define TSI_CNTR7_CNTN1_MASK 0xFFFF0000u
  7915. #define TSI_CNTR7_CNTN1_SHIFT 16
  7916. #define TSI_CNTR7_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR7_CNTN1_SHIFT))&TSI_CNTR7_CNTN1_MASK)
  7917. /* CNTR9 Bit Fields */
  7918. #define TSI_CNTR9_CNTN_MASK 0xFFFFu
  7919. #define TSI_CNTR9_CNTN_SHIFT 0
  7920. #define TSI_CNTR9_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR9_CNTN_SHIFT))&TSI_CNTR9_CNTN_MASK)
  7921. #define TSI_CNTR9_CNTN1_MASK 0xFFFF0000u
  7922. #define TSI_CNTR9_CNTN1_SHIFT 16
  7923. #define TSI_CNTR9_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR9_CNTN1_SHIFT))&TSI_CNTR9_CNTN1_MASK)
  7924. /* CNTR11 Bit Fields */
  7925. #define TSI_CNTR11_CNTN_MASK 0xFFFFu
  7926. #define TSI_CNTR11_CNTN_SHIFT 0
  7927. #define TSI_CNTR11_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR11_CNTN_SHIFT))&TSI_CNTR11_CNTN_MASK)
  7928. #define TSI_CNTR11_CNTN1_MASK 0xFFFF0000u
  7929. #define TSI_CNTR11_CNTN1_SHIFT 16
  7930. #define TSI_CNTR11_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR11_CNTN1_SHIFT))&TSI_CNTR11_CNTN1_MASK)
  7931. /* CNTR13 Bit Fields */
  7932. #define TSI_CNTR13_CNTN_MASK 0xFFFFu
  7933. #define TSI_CNTR13_CNTN_SHIFT 0
  7934. #define TSI_CNTR13_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR13_CNTN_SHIFT))&TSI_CNTR13_CNTN_MASK)
  7935. #define TSI_CNTR13_CNTN1_MASK 0xFFFF0000u
  7936. #define TSI_CNTR13_CNTN1_SHIFT 16
  7937. #define TSI_CNTR13_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR13_CNTN1_SHIFT))&TSI_CNTR13_CNTN1_MASK)
  7938. /* CNTR15 Bit Fields */
  7939. #define TSI_CNTR15_CNTN_MASK 0xFFFFu
  7940. #define TSI_CNTR15_CNTN_SHIFT 0
  7941. #define TSI_CNTR15_CNTN(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR15_CNTN_SHIFT))&TSI_CNTR15_CNTN_MASK)
  7942. #define TSI_CNTR15_CNTN1_MASK 0xFFFF0000u
  7943. #define TSI_CNTR15_CNTN1_SHIFT 16
  7944. #define TSI_CNTR15_CNTN1(x) (((uint32_t)(((uint32_t)(x))<<TSI_CNTR15_CNTN1_SHIFT))&TSI_CNTR15_CNTN1_MASK)
  7945. /* THRESHLD Bit Fields */
  7946. #define TSI_THRESHLD_HTHH_MASK 0xFFFFu
  7947. #define TSI_THRESHLD_HTHH_SHIFT 0
  7948. #define TSI_THRESHLD_HTHH(x) (((uint32_t)(((uint32_t)(x))<<TSI_THRESHLD_HTHH_SHIFT))&TSI_THRESHLD_HTHH_MASK)
  7949. #define TSI_THRESHLD_LTHH_MASK 0xFFFF0000u
  7950. #define TSI_THRESHLD_LTHH_SHIFT 16
  7951. #define TSI_THRESHLD_LTHH(x) (((uint32_t)(((uint32_t)(x))<<TSI_THRESHLD_LTHH_SHIFT))&TSI_THRESHLD_LTHH_MASK)
  7952. /*! \} */ /* end of group TSI_Register_Masks */
  7953. /* TSI - Peripheral instance base addresses */
  7954. /*! Peripheral TSI0 base address */
  7955. #define TSI0_BASE (0x40045000u)
  7956. /*! Peripheral TSI0 base pointer */
  7957. #define TSI0 ((TSI_Type *)TSI0_BASE)
  7958. /*! \} */ /* end of group TSI_Peripheral_Access_Layer */
  7959. /* ----------------------------------------------------------------------------
  7960. -- UART Peripheral Access Layer
  7961. ---------------------------------------------------------------------------- */
  7962. /*! \addtogroup UART_Peripheral_Access_Layer UART Peripheral Access Layer */
  7963. /*! \{ */
  7964. /*! UART - Register Layout Typedef */
  7965. typedef struct {
  7966. __IO uint8_t BDH; /*!< UART Baud Rate Registers:High, offset: 0x0 */
  7967. __IO uint8_t BDL; /*!< UART Baud Rate Registers: Low, offset: 0x1 */
  7968. __IO uint8_t C1; /*!< UART Control Register 1, offset: 0x2 */
  7969. __IO uint8_t C2; /*!< UART Control Register 2, offset: 0x3 */
  7970. __I uint8_t S1; /*!< UART Status Register 1, offset: 0x4 */
  7971. __IO uint8_t S2; /*!< UART Status Register 2, offset: 0x5 */
  7972. __IO uint8_t C3; /*!< UART Control Register 3, offset: 0x6 */
  7973. __IO uint8_t D; /*!< UART Data Register, offset: 0x7 */
  7974. __IO uint8_t MA1; /*!< UART Match Address Registers 1, offset: 0x8 */
  7975. __IO uint8_t MA2; /*!< UART Match Address Registers 2, offset: 0x9 */
  7976. __IO uint8_t C4; /*!< UART Control Register 4, offset: 0xA */
  7977. __IO uint8_t C5; /*!< UART Control Register 5, offset: 0xB */
  7978. __I uint8_t ED; /*!< UART Extended Data Register, offset: 0xC */
  7979. __IO uint8_t MODEM; /*!< UART Modem Register, offset: 0xD */
  7980. __IO uint8_t IR; /*!< UART Infrared Register, offset: 0xE */
  7981. uint8_t RESERVED_0[1];
  7982. __IO uint8_t PFIFO; /*!< UART FIFO Parameters, offset: 0x10 */
  7983. __IO uint8_t CFIFO; /*!< UART FIFO Control Register, offset: 0x11 */
  7984. __IO uint8_t SFIFO; /*!< UART FIFO Status Register, offset: 0x12 */
  7985. __IO uint8_t TWFIFO; /*!< UART FIFO Transmit Watermark, offset: 0x13 */
  7986. __I uint8_t TCFIFO; /*!< UART FIFO Transmit Count, offset: 0x14 */
  7987. __IO uint8_t RWFIFO; /*!< UART FIFO Receive Watermark, offset: 0x15 */
  7988. __I uint8_t RCFIFO; /*!< UART FIFO Receive Count, offset: 0x16 */
  7989. uint8_t RESERVED_1[1];
  7990. __IO uint8_t C7816; /*!< UART 7816 Control Register, offset: 0x18 */
  7991. __IO uint8_t IE7816; /*!< UART 7816 Interrupt Enable Register, offset: 0x19 */
  7992. __IO uint8_t IS7816; /*!< UART 7816 Interrupt Status Register, offset: 0x1A */
  7993. union { /* offset: 0x1B */
  7994. __IO uint8_t WP7816_T_TYPE0; /*!< UART 7816 Wait Parameter Register, offset: 0x1B */
  7995. __IO uint8_t WP7816_T_TYPE1; /*!< UART 7816 Wait Parameter Register, offset: 0x1B */
  7996. };
  7997. __IO uint8_t WN7816; /*!< UART 7816 Wait N Register, offset: 0x1C */
  7998. __IO uint8_t WF7816; /*!< UART 7816 Wait FD Register, offset: 0x1D */
  7999. __IO uint8_t ET7816; /*!< UART 7816 Error Threshold Register, offset: 0x1E */
  8000. __IO uint8_t TL7816; /*!< UART 7816 Transmit Length Register, offset: 0x1F */
  8001. } UART_Type;
  8002. /* ----------------------------------------------------------------------------
  8003. -- UART Register Masks
  8004. ---------------------------------------------------------------------------- */
  8005. /*! \addtogroup UART_Register_Masks UART Register Masks */
  8006. /*! \{ */
  8007. /* BDH Bit Fields */
  8008. #define UART_BDH_SBR_MASK 0x1Fu
  8009. #define UART_BDH_SBR_SHIFT 0
  8010. #define UART_BDH_SBR(x) (((uint8_t)(((uint8_t)(x))<<UART_BDH_SBR_SHIFT))&UART_BDH_SBR_MASK)
  8011. #define UART_BDH_RXEDGIE_MASK 0x40u
  8012. #define UART_BDH_RXEDGIE_SHIFT 6
  8013. #define UART_BDH_LBKDIE_MASK 0x80u
  8014. #define UART_BDH_LBKDIE_SHIFT 7
  8015. /* BDL Bit Fields */
  8016. #define UART_BDL_SBR_MASK 0xFFu
  8017. #define UART_BDL_SBR_SHIFT 0
  8018. #define UART_BDL_SBR(x) (((uint8_t)(((uint8_t)(x))<<UART_BDL_SBR_SHIFT))&UART_BDL_SBR_MASK)
  8019. /* C1 Bit Fields */
  8020. #define UART_C1_PT_MASK 0x1u
  8021. #define UART_C1_PT_SHIFT 0
  8022. #define UART_C1_PE_MASK 0x2u
  8023. #define UART_C1_PE_SHIFT 1
  8024. #define UART_C1_ILT_MASK 0x4u
  8025. #define UART_C1_ILT_SHIFT 2
  8026. #define UART_C1_WAKE_MASK 0x8u
  8027. #define UART_C1_WAKE_SHIFT 3
  8028. #define UART_C1_M_MASK 0x10u
  8029. #define UART_C1_M_SHIFT 4
  8030. #define UART_C1_RSRC_MASK 0x20u
  8031. #define UART_C1_RSRC_SHIFT 5
  8032. #define UART_C1_UARTSWAI_MASK 0x40u
  8033. #define UART_C1_UARTSWAI_SHIFT 6
  8034. #define UART_C1_LOOPS_MASK 0x80u
  8035. #define UART_C1_LOOPS_SHIFT 7
  8036. /* C2 Bit Fields */
  8037. #define UART_C2_SBK_MASK 0x1u
  8038. #define UART_C2_SBK_SHIFT 0
  8039. #define UART_C2_RWU_MASK 0x2u
  8040. #define UART_C2_RWU_SHIFT 1
  8041. #define UART_C2_RE_MASK 0x4u
  8042. #define UART_C2_RE_SHIFT 2
  8043. #define UART_C2_TE_MASK 0x8u
  8044. #define UART_C2_TE_SHIFT 3
  8045. #define UART_C2_ILIE_MASK 0x10u
  8046. #define UART_C2_ILIE_SHIFT 4
  8047. #define UART_C2_RIE_MASK 0x20u
  8048. #define UART_C2_RIE_SHIFT 5
  8049. #define UART_C2_TCIE_MASK 0x40u
  8050. #define UART_C2_TCIE_SHIFT 6
  8051. #define UART_C2_TIE_MASK 0x80u
  8052. #define UART_C2_TIE_SHIFT 7
  8053. /* S1 Bit Fields */
  8054. #define UART_S1_PF_MASK 0x1u
  8055. #define UART_S1_PF_SHIFT 0
  8056. #define UART_S1_FE_MASK 0x2u
  8057. #define UART_S1_FE_SHIFT 1
  8058. #define UART_S1_NF_MASK 0x4u
  8059. #define UART_S1_NF_SHIFT 2
  8060. #define UART_S1_OR_MASK 0x8u
  8061. #define UART_S1_OR_SHIFT 3
  8062. #define UART_S1_IDLE_MASK 0x10u
  8063. #define UART_S1_IDLE_SHIFT 4
  8064. #define UART_S1_RDRF_MASK 0x20u
  8065. #define UART_S1_RDRF_SHIFT 5
  8066. #define UART_S1_TC_MASK 0x40u
  8067. #define UART_S1_TC_SHIFT 6
  8068. #define UART_S1_TDRE_MASK 0x80u
  8069. #define UART_S1_TDRE_SHIFT 7
  8070. /* S2 Bit Fields */
  8071. #define UART_S2_RAF_MASK 0x1u
  8072. #define UART_S2_RAF_SHIFT 0
  8073. #define UART_S2_LBKDE_MASK 0x2u
  8074. #define UART_S2_LBKDE_SHIFT 1
  8075. #define UART_S2_BRK13_MASK 0x4u
  8076. #define UART_S2_BRK13_SHIFT 2
  8077. #define UART_S2_RWUID_MASK 0x8u
  8078. #define UART_S2_RWUID_SHIFT 3
  8079. #define UART_S2_RXINV_MASK 0x10u
  8080. #define UART_S2_RXINV_SHIFT 4
  8081. #define UART_S2_MSBF_MASK 0x20u
  8082. #define UART_S2_MSBF_SHIFT 5
  8083. #define UART_S2_RXEDGIF_MASK 0x40u
  8084. #define UART_S2_RXEDGIF_SHIFT 6
  8085. #define UART_S2_LBKDIF_MASK 0x80u
  8086. #define UART_S2_LBKDIF_SHIFT 7
  8087. /* C3 Bit Fields */
  8088. #define UART_C3_PEIE_MASK 0x1u
  8089. #define UART_C3_PEIE_SHIFT 0
  8090. #define UART_C3_FEIE_MASK 0x2u
  8091. #define UART_C3_FEIE_SHIFT 1
  8092. #define UART_C3_NEIE_MASK 0x4u
  8093. #define UART_C3_NEIE_SHIFT 2
  8094. #define UART_C3_ORIE_MASK 0x8u
  8095. #define UART_C3_ORIE_SHIFT 3
  8096. #define UART_C3_TXINV_MASK 0x10u
  8097. #define UART_C3_TXINV_SHIFT 4
  8098. #define UART_C3_TXDIR_MASK 0x20u
  8099. #define UART_C3_TXDIR_SHIFT 5
  8100. #define UART_C3_T8_MASK 0x40u
  8101. #define UART_C3_T8_SHIFT 6
  8102. #define UART_C3_R8_MASK 0x80u
  8103. #define UART_C3_R8_SHIFT 7
  8104. /* D Bit Fields */
  8105. #define UART_D_RT_MASK 0xFFu
  8106. #define UART_D_RT_SHIFT 0
  8107. #define UART_D_RT(x) (((uint8_t)(((uint8_t)(x))<<UART_D_RT_SHIFT))&UART_D_RT_MASK)
  8108. /* MA1 Bit Fields */
  8109. #define UART_MA1_MA_MASK 0xFFu
  8110. #define UART_MA1_MA_SHIFT 0
  8111. #define UART_MA1_MA(x) (((uint8_t)(((uint8_t)(x))<<UART_MA1_MA_SHIFT))&UART_MA1_MA_MASK)
  8112. /* MA2 Bit Fields */
  8113. #define UART_MA2_MA_MASK 0xFFu
  8114. #define UART_MA2_MA_SHIFT 0
  8115. #define UART_MA2_MA(x) (((uint8_t)(((uint8_t)(x))<<UART_MA2_MA_SHIFT))&UART_MA2_MA_MASK)
  8116. /* C4 Bit Fields */
  8117. #define UART_C4_BRFA_MASK 0x1Fu
  8118. #define UART_C4_BRFA_SHIFT 0
  8119. #define UART_C4_BRFA(x) (((uint8_t)(((uint8_t)(x))<<UART_C4_BRFA_SHIFT))&UART_C4_BRFA_MASK)
  8120. #define UART_C4_M10_MASK 0x20u
  8121. #define UART_C4_M10_SHIFT 5
  8122. #define UART_C4_MAEN2_MASK 0x40u
  8123. #define UART_C4_MAEN2_SHIFT 6
  8124. #define UART_C4_MAEN1_MASK 0x80u
  8125. #define UART_C4_MAEN1_SHIFT 7
  8126. /* C5 Bit Fields */
  8127. #define UART_C5_RDMAS_MASK 0x20u
  8128. #define UART_C5_RDMAS_SHIFT 5
  8129. #define UART_C5_TDMAS_MASK 0x80u
  8130. #define UART_C5_TDMAS_SHIFT 7
  8131. /* ED Bit Fields */
  8132. #define UART_ED_PARITYE_MASK 0x40u
  8133. #define UART_ED_PARITYE_SHIFT 6
  8134. #define UART_ED_NOISY_MASK 0x80u
  8135. #define UART_ED_NOISY_SHIFT 7
  8136. /* MODEM Bit Fields */
  8137. #define UART_MODEM_TXCTSE_MASK 0x1u
  8138. #define UART_MODEM_TXCTSE_SHIFT 0
  8139. #define UART_MODEM_TXRTSE_MASK 0x2u
  8140. #define UART_MODEM_TXRTSE_SHIFT 1
  8141. #define UART_MODEM_TXRTSPOL_MASK 0x4u
  8142. #define UART_MODEM_TXRTSPOL_SHIFT 2
  8143. #define UART_MODEM_RXRTSE_MASK 0x8u
  8144. #define UART_MODEM_RXRTSE_SHIFT 3
  8145. /* IR Bit Fields */
  8146. #define UART_IR_TNP_MASK 0x3u
  8147. #define UART_IR_TNP_SHIFT 0
  8148. #define UART_IR_TNP(x) (((uint8_t)(((uint8_t)(x))<<UART_IR_TNP_SHIFT))&UART_IR_TNP_MASK)
  8149. #define UART_IR_IREN_MASK 0x4u
  8150. #define UART_IR_IREN_SHIFT 2
  8151. /* PFIFO Bit Fields */
  8152. #define UART_PFIFO_RXFIFOSIZE_MASK 0x7u
  8153. #define UART_PFIFO_RXFIFOSIZE_SHIFT 0
  8154. #define UART_PFIFO_RXFIFOSIZE(x) (((uint8_t)(((uint8_t)(x))<<UART_PFIFO_RXFIFOSIZE_SHIFT))&UART_PFIFO_RXFIFOSIZE_MASK)
  8155. #define UART_PFIFO_RXFE_MASK 0x8u
  8156. #define UART_PFIFO_RXFE_SHIFT 3
  8157. #define UART_PFIFO_TXFIFOSIZE_MASK 0x70u
  8158. #define UART_PFIFO_TXFIFOSIZE_SHIFT 4
  8159. #define UART_PFIFO_TXFIFOSIZE(x) (((uint8_t)(((uint8_t)(x))<<UART_PFIFO_TXFIFOSIZE_SHIFT))&UART_PFIFO_TXFIFOSIZE_MASK)
  8160. #define UART_PFIFO_TXFE_MASK 0x80u
  8161. #define UART_PFIFO_TXFE_SHIFT 7
  8162. /* CFIFO Bit Fields */
  8163. #define UART_CFIFO_RXUFE_MASK 0x1u
  8164. #define UART_CFIFO_RXUFE_SHIFT 0
  8165. #define UART_CFIFO_TXOFE_MASK 0x2u
  8166. #define UART_CFIFO_TXOFE_SHIFT 1
  8167. #define UART_CFIFO_RXFLUSH_MASK 0x40u
  8168. #define UART_CFIFO_RXFLUSH_SHIFT 6
  8169. #define UART_CFIFO_TXFLUSH_MASK 0x80u
  8170. #define UART_CFIFO_TXFLUSH_SHIFT 7
  8171. /* SFIFO Bit Fields */
  8172. #define UART_SFIFO_RXUF_MASK 0x1u
  8173. #define UART_SFIFO_RXUF_SHIFT 0
  8174. #define UART_SFIFO_TXOF_MASK 0x2u
  8175. #define UART_SFIFO_TXOF_SHIFT 1
  8176. #define UART_SFIFO_RXEMPT_MASK 0x40u
  8177. #define UART_SFIFO_RXEMPT_SHIFT 6
  8178. #define UART_SFIFO_TXEMPT_MASK 0x80u
  8179. #define UART_SFIFO_TXEMPT_SHIFT 7
  8180. /* TWFIFO Bit Fields */
  8181. #define UART_TWFIFO_TXWATER_MASK 0xFFu
  8182. #define UART_TWFIFO_TXWATER_SHIFT 0
  8183. #define UART_TWFIFO_TXWATER(x) (((uint8_t)(((uint8_t)(x))<<UART_TWFIFO_TXWATER_SHIFT))&UART_TWFIFO_TXWATER_MASK)
  8184. /* TCFIFO Bit Fields */
  8185. #define UART_TCFIFO_TXCOUNT_MASK 0xFFu
  8186. #define UART_TCFIFO_TXCOUNT_SHIFT 0
  8187. #define UART_TCFIFO_TXCOUNT(x) (((uint8_t)(((uint8_t)(x))<<UART_TCFIFO_TXCOUNT_SHIFT))&UART_TCFIFO_TXCOUNT_MASK)
  8188. /* RWFIFO Bit Fields */
  8189. #define UART_RWFIFO_RXWATER_MASK 0xFFu
  8190. #define UART_RWFIFO_RXWATER_SHIFT 0
  8191. #define UART_RWFIFO_RXWATER(x) (((uint8_t)(((uint8_t)(x))<<UART_RWFIFO_RXWATER_SHIFT))&UART_RWFIFO_RXWATER_MASK)
  8192. /* RCFIFO Bit Fields */
  8193. #define UART_RCFIFO_RXCOUNT_MASK 0xFFu
  8194. #define UART_RCFIFO_RXCOUNT_SHIFT 0
  8195. #define UART_RCFIFO_RXCOUNT(x) (((uint8_t)(((uint8_t)(x))<<UART_RCFIFO_RXCOUNT_SHIFT))&UART_RCFIFO_RXCOUNT_MASK)
  8196. /* C7816 Bit Fields */
  8197. #define UART_C7816_ISO_7816E_MASK 0x1u
  8198. #define UART_C7816_ISO_7816E_SHIFT 0
  8199. #define UART_C7816_TTYPE_MASK 0x2u
  8200. #define UART_C7816_TTYPE_SHIFT 1
  8201. #define UART_C7816_INIT_MASK 0x4u
  8202. #define UART_C7816_INIT_SHIFT 2
  8203. #define UART_C7816_ANACK_MASK 0x8u
  8204. #define UART_C7816_ANACK_SHIFT 3
  8205. #define UART_C7816_ONACK_MASK 0x10u
  8206. #define UART_C7816_ONACK_SHIFT 4
  8207. /* IE7816 Bit Fields */
  8208. #define UART_IE7816_RXTE_MASK 0x1u
  8209. #define UART_IE7816_RXTE_SHIFT 0
  8210. #define UART_IE7816_TXTE_MASK 0x2u
  8211. #define UART_IE7816_TXTE_SHIFT 1
  8212. #define UART_IE7816_GTVE_MASK 0x4u
  8213. #define UART_IE7816_GTVE_SHIFT 2
  8214. #define UART_IE7816_INITDE_MASK 0x10u
  8215. #define UART_IE7816_INITDE_SHIFT 4
  8216. #define UART_IE7816_BWTE_MASK 0x20u
  8217. #define UART_IE7816_BWTE_SHIFT 5
  8218. #define UART_IE7816_CWTE_MASK 0x40u
  8219. #define UART_IE7816_CWTE_SHIFT 6
  8220. #define UART_IE7816_WTE_MASK 0x80u
  8221. #define UART_IE7816_WTE_SHIFT 7
  8222. /* IS7816 Bit Fields */
  8223. #define UART_IS7816_RXT_MASK 0x1u
  8224. #define UART_IS7816_RXT_SHIFT 0
  8225. #define UART_IS7816_TXT_MASK 0x2u
  8226. #define UART_IS7816_TXT_SHIFT 1
  8227. #define UART_IS7816_GTV_MASK 0x4u
  8228. #define UART_IS7816_GTV_SHIFT 2
  8229. #define UART_IS7816_INITD_MASK 0x10u
  8230. #define UART_IS7816_INITD_SHIFT 4
  8231. #define UART_IS7816_BWT_MASK 0x20u
  8232. #define UART_IS7816_BWT_SHIFT 5
  8233. #define UART_IS7816_CWT_MASK 0x40u
  8234. #define UART_IS7816_CWT_SHIFT 6
  8235. #define UART_IS7816_WT_MASK 0x80u
  8236. #define UART_IS7816_WT_SHIFT 7
  8237. /* WP7816_T_TYPE0 Bit Fields */
  8238. #define UART_WP7816_T_TYPE0_WI_MASK 0xFFu
  8239. #define UART_WP7816_T_TYPE0_WI_SHIFT 0
  8240. #define UART_WP7816_T_TYPE0_WI(x) (((uint8_t)(((uint8_t)(x))<<UART_WP7816_T_TYPE0_WI_SHIFT))&UART_WP7816_T_TYPE0_WI_MASK)
  8241. /* WP7816_T_TYPE1 Bit Fields */
  8242. #define UART_WP7816_T_TYPE1_BWI_MASK 0xFu
  8243. #define UART_WP7816_T_TYPE1_BWI_SHIFT 0
  8244. #define UART_WP7816_T_TYPE1_BWI(x) (((uint8_t)(((uint8_t)(x))<<UART_WP7816_T_TYPE1_BWI_SHIFT))&UART_WP7816_T_TYPE1_BWI_MASK)
  8245. #define UART_WP7816_T_TYPE1_CWI_MASK 0xF0u
  8246. #define UART_WP7816_T_TYPE1_CWI_SHIFT 4
  8247. #define UART_WP7816_T_TYPE1_CWI(x) (((uint8_t)(((uint8_t)(x))<<UART_WP7816_T_TYPE1_CWI_SHIFT))&UART_WP7816_T_TYPE1_CWI_MASK)
  8248. /* WN7816 Bit Fields */
  8249. #define UART_WN7816_GTN_MASK 0xFFu
  8250. #define UART_WN7816_GTN_SHIFT 0
  8251. #define UART_WN7816_GTN(x) (((uint8_t)(((uint8_t)(x))<<UART_WN7816_GTN_SHIFT))&UART_WN7816_GTN_MASK)
  8252. /* WF7816 Bit Fields */
  8253. #define UART_WF7816_GTFD_MASK 0xFFu
  8254. #define UART_WF7816_GTFD_SHIFT 0
  8255. #define UART_WF7816_GTFD(x) (((uint8_t)(((uint8_t)(x))<<UART_WF7816_GTFD_SHIFT))&UART_WF7816_GTFD_MASK)
  8256. /* ET7816 Bit Fields */
  8257. #define UART_ET7816_RXTHRESHOLD_MASK 0xFu
  8258. #define UART_ET7816_RXTHRESHOLD_SHIFT 0
  8259. #define UART_ET7816_RXTHRESHOLD(x) (((uint8_t)(((uint8_t)(x))<<UART_ET7816_RXTHRESHOLD_SHIFT))&UART_ET7816_RXTHRESHOLD_MASK)
  8260. #define UART_ET7816_TXTHRESHOLD_MASK 0xF0u
  8261. #define UART_ET7816_TXTHRESHOLD_SHIFT 4
  8262. #define UART_ET7816_TXTHRESHOLD(x) (((uint8_t)(((uint8_t)(x))<<UART_ET7816_TXTHRESHOLD_SHIFT))&UART_ET7816_TXTHRESHOLD_MASK)
  8263. /* TL7816 Bit Fields */
  8264. #define UART_TL7816_TLEN_MASK 0xFFu
  8265. #define UART_TL7816_TLEN_SHIFT 0
  8266. #define UART_TL7816_TLEN(x) (((uint8_t)(((uint8_t)(x))<<UART_TL7816_TLEN_SHIFT))&UART_TL7816_TLEN_MASK)
  8267. /*! \} */ /* end of group UART_Register_Masks */
  8268. /* UART - Peripheral instance base addresses */
  8269. /*! Peripheral UART0 base address */
  8270. #define UART0_BASE (0x4006A000u)
  8271. /*! Peripheral UART0 base pointer */
  8272. #define UART0 ((UART_Type *)UART0_BASE)
  8273. /*! Peripheral UART1 base address */
  8274. #define UART1_BASE (0x4006B000u)
  8275. /*! Peripheral UART1 base pointer */
  8276. #define UART1 ((UART_Type *)UART1_BASE)
  8277. /*! Peripheral UART2 base address */
  8278. #define UART2_BASE (0x4006C000u)
  8279. /*! Peripheral UART2 base pointer */
  8280. #define UART2 ((UART_Type *)UART2_BASE)
  8281. /*! Peripheral UART3 base address */
  8282. #define UART3_BASE (0x4006D000u)
  8283. /*! Peripheral UART3 base pointer */
  8284. #define UART3 ((UART_Type *)UART3_BASE)
  8285. /*! Peripheral UART4 base address */
  8286. #define UART4_BASE (0x400EA000u)
  8287. /*! Peripheral UART4 base pointer */
  8288. #define UART4 ((UART_Type *)UART4_BASE)
  8289. /*! Peripheral UART5 base address */
  8290. #define UART5_BASE (0x400EB000u)
  8291. /*! Peripheral UART5 base pointer */
  8292. #define UART5 ((UART_Type *)UART5_BASE)
  8293. /*! \} */ /* end of group UART_Peripheral_Access_Layer */
  8294. /* ----------------------------------------------------------------------------
  8295. -- USB Peripheral Access Layer
  8296. ---------------------------------------------------------------------------- */
  8297. /*! \addtogroup USB_Peripheral_Access_Layer USB Peripheral Access Layer */
  8298. /*! \{ */
  8299. /*! USB - Register Layout Typedef */
  8300. typedef struct {
  8301. __I uint8_t PERID; /*!< Peripheral ID Register, offset: 0x0 */
  8302. uint8_t RESERVED_0[3];
  8303. __I uint8_t IDCOMP; /*!< Peripheral ID Complement Register, offset: 0x4 */
  8304. uint8_t RESERVED_1[3];
  8305. __I uint8_t REV; /*!< Peripheral Revision Register, offset: 0x8 */
  8306. uint8_t RESERVED_2[3];
  8307. __I uint8_t ADDINFO; /*!< Peripheral Additional Info Register, offset: 0xC */
  8308. uint8_t RESERVED_3[3];
  8309. __IO uint8_t OTGISTAT; /*!< OTG Interrupt Status Register, offset: 0x10 */
  8310. uint8_t RESERVED_4[3];
  8311. __IO uint8_t OTGICR; /*!< OTG Interrupt Control Register, offset: 0x14 */
  8312. uint8_t RESERVED_5[3];
  8313. __IO uint8_t OTGSTAT; /*!< OTG Status Register, offset: 0x18 */
  8314. uint8_t RESERVED_6[3];
  8315. __IO uint8_t OTGCTL; /*!< OTG Control Register, offset: 0x1C */
  8316. uint8_t RESERVED_7[99];
  8317. __IO uint8_t ISTAT; /*!< Interrupt Status Register, offset: 0x80 */
  8318. uint8_t RESERVED_8[3];
  8319. __IO uint8_t INTEN; /*!< Interrupt Enable Register, offset: 0x84 */
  8320. uint8_t RESERVED_9[3];
  8321. __IO uint8_t ERRSTAT; /*!< Error Interrupt Status Register, offset: 0x88 */
  8322. uint8_t RESERVED_10[3];
  8323. __IO uint8_t ERREN; /*!< Error Interrupt Enable Register, offset: 0x8C */
  8324. uint8_t RESERVED_11[3];
  8325. __I uint8_t STAT; /*!< Status Register, offset: 0x90 */
  8326. uint8_t RESERVED_12[3];
  8327. __IO uint8_t CTL; /*!< Control Register, offset: 0x94 */
  8328. uint8_t RESERVED_13[3];
  8329. __IO uint8_t ADDR; /*!< Address Register, offset: 0x98 */
  8330. uint8_t RESERVED_14[3];
  8331. __IO uint8_t BDTPAGE1; /*!< BDT Page Register 1, offset: 0x9C */
  8332. uint8_t RESERVED_15[3];
  8333. __IO uint8_t FRMNUML; /*!< Frame Number Register Low, offset: 0xA0 */
  8334. uint8_t RESERVED_16[3];
  8335. __IO uint8_t FRMNUMH; /*!< Frame Number Register High, offset: 0xA4 */
  8336. uint8_t RESERVED_17[3];
  8337. __IO uint8_t TOKEN; /*!< Token Register, offset: 0xA8 */
  8338. uint8_t RESERVED_18[3];
  8339. __IO uint8_t SOFTHLD; /*!< SOF Threshold Register, offset: 0xAC */
  8340. uint8_t RESERVED_19[3];
  8341. __IO uint8_t BDTPAGE2; /*!< BDT Page Register 2, offset: 0xB0 */
  8342. uint8_t RESERVED_20[3];
  8343. __IO uint8_t BDTPAGE3; /*!< BDT Page Register 3, offset: 0xB4 */
  8344. uint8_t RESERVED_21[11];
  8345. struct { /* offset: 0xC0, array step: 0x4 */
  8346. __IO uint8_t ENDPT; /*!< Endpoint Control Register, array offset: 0xC0, array step: 0x4 */
  8347. uint8_t RESERVED_0[3];
  8348. } ENDPOINT[16];
  8349. __IO uint8_t USBCTRL; /*!< USB Control Register, offset: 0x100 */
  8350. uint8_t RESERVED_22[3];
  8351. __I uint8_t OBSERVE; /*!< USB OTG Observe Register, offset: 0x104 */
  8352. uint8_t RESERVED_23[3];
  8353. __IO uint8_t CONTROL; /*!< USB OTG Control Register, offset: 0x108 */
  8354. uint8_t RESERVED_24[3];
  8355. __IO uint8_t USBTRC0; /*!< USB Transceiver Control Register 0, offset: 0x10C */
  8356. } USB_Type;
  8357. /* ----------------------------------------------------------------------------
  8358. -- USB Register Masks
  8359. ---------------------------------------------------------------------------- */
  8360. /*! \addtogroup USB_Register_Masks USB Register Masks */
  8361. /*! \{ */
  8362. /* PERID Bit Fields */
  8363. #define USB_PERID_ID_MASK 0x3Fu
  8364. #define USB_PERID_ID_SHIFT 0
  8365. #define USB_PERID_ID(x) (((uint8_t)(((uint8_t)(x))<<USB_PERID_ID_SHIFT))&USB_PERID_ID_MASK)
  8366. /* IDCOMP Bit Fields */
  8367. #define USB_IDCOMP_NID_MASK 0x3Fu
  8368. #define USB_IDCOMP_NID_SHIFT 0
  8369. #define USB_IDCOMP_NID(x) (((uint8_t)(((uint8_t)(x))<<USB_IDCOMP_NID_SHIFT))&USB_IDCOMP_NID_MASK)
  8370. /* REV Bit Fields */
  8371. #define USB_REV_REV_MASK 0xFFu
  8372. #define USB_REV_REV_SHIFT 0
  8373. #define USB_REV_REV(x) (((uint8_t)(((uint8_t)(x))<<USB_REV_REV_SHIFT))&USB_REV_REV_MASK)
  8374. /* ADDINFO Bit Fields */
  8375. #define USB_ADDINFO_IEHOST_MASK 0x1u
  8376. #define USB_ADDINFO_IEHOST_SHIFT 0
  8377. #define USB_ADDINFO_IRQNUM_MASK 0xF8u
  8378. #define USB_ADDINFO_IRQNUM_SHIFT 3
  8379. #define USB_ADDINFO_IRQNUM(x) (((uint8_t)(((uint8_t)(x))<<USB_ADDINFO_IRQNUM_SHIFT))&USB_ADDINFO_IRQNUM_MASK)
  8380. /* OTGISTAT Bit Fields */
  8381. #define USB_OTGISTAT_AVBUSCHG_MASK 0x1u
  8382. #define USB_OTGISTAT_AVBUSCHG_SHIFT 0
  8383. #define USB_OTGISTAT_B_SESS_CHG_MASK 0x4u
  8384. #define USB_OTGISTAT_B_SESS_CHG_SHIFT 2
  8385. #define USB_OTGISTAT_SESSVLDCHG_MASK 0x8u
  8386. #define USB_OTGISTAT_SESSVLDCHG_SHIFT 3
  8387. #define USB_OTGISTAT_LINE_STATE_CHG_MASK 0x20u
  8388. #define USB_OTGISTAT_LINE_STATE_CHG_SHIFT 5
  8389. #define USB_OTGISTAT_ONEMSEC_MASK 0x40u
  8390. #define USB_OTGISTAT_ONEMSEC_SHIFT 6
  8391. #define USB_OTGISTAT_IDCHG_MASK 0x80u
  8392. #define USB_OTGISTAT_IDCHG_SHIFT 7
  8393. /* OTGICR Bit Fields */
  8394. #define USB_OTGICR_AVBUSEN_MASK 0x1u
  8395. #define USB_OTGICR_AVBUSEN_SHIFT 0
  8396. #define USB_OTGICR_BSESSEN_MASK 0x4u
  8397. #define USB_OTGICR_BSESSEN_SHIFT 2
  8398. #define USB_OTGICR_SESSVLDEN_MASK 0x8u
  8399. #define USB_OTGICR_SESSVLDEN_SHIFT 3
  8400. #define USB_OTGICR_LINESTATEEN_MASK 0x20u
  8401. #define USB_OTGICR_LINESTATEEN_SHIFT 5
  8402. #define USB_OTGICR_ONEMSECEN_MASK 0x40u
  8403. #define USB_OTGICR_ONEMSECEN_SHIFT 6
  8404. #define USB_OTGICR_IDEN_MASK 0x80u
  8405. #define USB_OTGICR_IDEN_SHIFT 7
  8406. /* OTGSTAT Bit Fields */
  8407. #define USB_OTGSTAT_AVBUSVLD_MASK 0x1u
  8408. #define USB_OTGSTAT_AVBUSVLD_SHIFT 0
  8409. #define USB_OTGSTAT_BSESSEND_MASK 0x4u
  8410. #define USB_OTGSTAT_BSESSEND_SHIFT 2
  8411. #define USB_OTGSTAT_SESS_VLD_MASK 0x8u
  8412. #define USB_OTGSTAT_SESS_VLD_SHIFT 3
  8413. #define USB_OTGSTAT_LINESTATESTABLE_MASK 0x20u
  8414. #define USB_OTGSTAT_LINESTATESTABLE_SHIFT 5
  8415. #define USB_OTGSTAT_ONEMSECEN_MASK 0x40u
  8416. #define USB_OTGSTAT_ONEMSECEN_SHIFT 6
  8417. #define USB_OTGSTAT_ID_MASK 0x80u
  8418. #define USB_OTGSTAT_ID_SHIFT 7
  8419. /* OTGCTL Bit Fields */
  8420. #define USB_OTGCTL_OTGEN_MASK 0x4u
  8421. #define USB_OTGCTL_OTGEN_SHIFT 2
  8422. #define USB_OTGCTL_DMLOW_MASK 0x10u
  8423. #define USB_OTGCTL_DMLOW_SHIFT 4
  8424. #define USB_OTGCTL_DPLOW_MASK 0x20u
  8425. #define USB_OTGCTL_DPLOW_SHIFT 5
  8426. #define USB_OTGCTL_DPHIGH_MASK 0x80u
  8427. #define USB_OTGCTL_DPHIGH_SHIFT 7
  8428. /* ISTAT Bit Fields */
  8429. #define USB_ISTAT_USBRST_MASK 0x1u
  8430. #define USB_ISTAT_USBRST_SHIFT 0
  8431. #define USB_ISTAT_ERROR_MASK 0x2u
  8432. #define USB_ISTAT_ERROR_SHIFT 1
  8433. #define USB_ISTAT_SOFTOK_MASK 0x4u
  8434. #define USB_ISTAT_SOFTOK_SHIFT 2
  8435. #define USB_ISTAT_TOKDNE_MASK 0x8u
  8436. #define USB_ISTAT_TOKDNE_SHIFT 3
  8437. #define USB_ISTAT_SLEEP_MASK 0x10u
  8438. #define USB_ISTAT_SLEEP_SHIFT 4
  8439. #define USB_ISTAT_RESUME_MASK 0x20u
  8440. #define USB_ISTAT_RESUME_SHIFT 5
  8441. #define USB_ISTAT_ATTACH_MASK 0x40u
  8442. #define USB_ISTAT_ATTACH_SHIFT 6
  8443. #define USB_ISTAT_STALL_MASK 0x80u
  8444. #define USB_ISTAT_STALL_SHIFT 7
  8445. /* INTEN Bit Fields */
  8446. #define USB_INTEN_USBRSTEN_MASK 0x1u
  8447. #define USB_INTEN_USBRSTEN_SHIFT 0
  8448. #define USB_INTEN_ERROREN_MASK 0x2u
  8449. #define USB_INTEN_ERROREN_SHIFT 1
  8450. #define USB_INTEN_SOFTOKEN_MASK 0x4u
  8451. #define USB_INTEN_SOFTOKEN_SHIFT 2
  8452. #define USB_INTEN_TOKDNEEN_MASK 0x8u
  8453. #define USB_INTEN_TOKDNEEN_SHIFT 3
  8454. #define USB_INTEN_SLEEPEN_MASK 0x10u
  8455. #define USB_INTEN_SLEEPEN_SHIFT 4
  8456. #define USB_INTEN_RESUMEEN_MASK 0x20u
  8457. #define USB_INTEN_RESUMEEN_SHIFT 5
  8458. #define USB_INTEN_ATTACHEN_MASK 0x40u
  8459. #define USB_INTEN_ATTACHEN_SHIFT 6
  8460. #define USB_INTEN_STALLEN_MASK 0x80u
  8461. #define USB_INTEN_STALLEN_SHIFT 7
  8462. /* ERRSTAT Bit Fields */
  8463. #define USB_ERRSTAT_PIDERR_MASK 0x1u
  8464. #define USB_ERRSTAT_PIDERR_SHIFT 0
  8465. #define USB_ERRSTAT_CRC5EOF_MASK 0x2u
  8466. #define USB_ERRSTAT_CRC5EOF_SHIFT 1
  8467. #define USB_ERRSTAT_CRC16_MASK 0x4u
  8468. #define USB_ERRSTAT_CRC16_SHIFT 2
  8469. #define USB_ERRSTAT_DFN8_MASK 0x8u
  8470. #define USB_ERRSTAT_DFN8_SHIFT 3
  8471. #define USB_ERRSTAT_BTOERR_MASK 0x10u
  8472. #define USB_ERRSTAT_BTOERR_SHIFT 4
  8473. #define USB_ERRSTAT_DMAERR_MASK 0x20u
  8474. #define USB_ERRSTAT_DMAERR_SHIFT 5
  8475. #define USB_ERRSTAT_BTSERR_MASK 0x80u
  8476. #define USB_ERRSTAT_BTSERR_SHIFT 7
  8477. /* ERREN Bit Fields */
  8478. #define USB_ERREN_PIDERREN_MASK 0x1u
  8479. #define USB_ERREN_PIDERREN_SHIFT 0
  8480. #define USB_ERREN_CRC5EOFEN_MASK 0x2u
  8481. #define USB_ERREN_CRC5EOFEN_SHIFT 1
  8482. #define USB_ERREN_CRC16EN_MASK 0x4u
  8483. #define USB_ERREN_CRC16EN_SHIFT 2
  8484. #define USB_ERREN_DFN8EN_MASK 0x8u
  8485. #define USB_ERREN_DFN8EN_SHIFT 3
  8486. #define USB_ERREN_BTOERREN_MASK 0x10u
  8487. #define USB_ERREN_BTOERREN_SHIFT 4
  8488. #define USB_ERREN_DMAERREN_MASK 0x20u
  8489. #define USB_ERREN_DMAERREN_SHIFT 5
  8490. #define USB_ERREN_BTSERREN_MASK 0x80u
  8491. #define USB_ERREN_BTSERREN_SHIFT 7
  8492. /* STAT Bit Fields */
  8493. #define USB_STAT_ODD_MASK 0x4u
  8494. #define USB_STAT_ODD_SHIFT 2
  8495. #define USB_STAT_TX_MASK 0x8u
  8496. #define USB_STAT_TX_SHIFT 3
  8497. #define USB_STAT_ENDP_MASK 0xF0u
  8498. #define USB_STAT_ENDP_SHIFT 4
  8499. #define USB_STAT_ENDP(x) (((uint8_t)(((uint8_t)(x))<<USB_STAT_ENDP_SHIFT))&USB_STAT_ENDP_MASK)
  8500. /* CTL Bit Fields */
  8501. #define USB_CTL_USBENSOFEN_MASK 0x1u
  8502. #define USB_CTL_USBENSOFEN_SHIFT 0
  8503. #define USB_CTL_ODDRST_MASK 0x2u
  8504. #define USB_CTL_ODDRST_SHIFT 1
  8505. #define USB_CTL_RESUME_MASK 0x4u
  8506. #define USB_CTL_RESUME_SHIFT 2
  8507. #define USB_CTL_HOSTMODEEN_MASK 0x8u
  8508. #define USB_CTL_HOSTMODEEN_SHIFT 3
  8509. #define USB_CTL_RESET_MASK 0x10u
  8510. #define USB_CTL_RESET_SHIFT 4
  8511. #define USB_CTL_TXSUSPENDTOKENBUSY_MASK 0x20u
  8512. #define USB_CTL_TXSUSPENDTOKENBUSY_SHIFT 5
  8513. #define USB_CTL_SE0_MASK 0x40u
  8514. #define USB_CTL_SE0_SHIFT 6
  8515. #define USB_CTL_JSTATE_MASK 0x80u
  8516. #define USB_CTL_JSTATE_SHIFT 7
  8517. /* ADDR Bit Fields */
  8518. #define USB_ADDR_ADDR_MASK 0x7Fu
  8519. #define USB_ADDR_ADDR_SHIFT 0
  8520. #define USB_ADDR_ADDR(x) (((uint8_t)(((uint8_t)(x))<<USB_ADDR_ADDR_SHIFT))&USB_ADDR_ADDR_MASK)
  8521. #define USB_ADDR_LSEN_MASK 0x80u
  8522. #define USB_ADDR_LSEN_SHIFT 7
  8523. /* BDTPAGE1 Bit Fields */
  8524. #define USB_BDTPAGE1_BDTBA_MASK 0xFEu
  8525. #define USB_BDTPAGE1_BDTBA_SHIFT 1
  8526. #define USB_BDTPAGE1_BDTBA(x) (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE1_BDTBA_SHIFT))&USB_BDTPAGE1_BDTBA_MASK)
  8527. /* FRMNUML Bit Fields */
  8528. #define USB_FRMNUML_FRM_MASK 0xFFu
  8529. #define USB_FRMNUML_FRM_SHIFT 0
  8530. #define USB_FRMNUML_FRM(x) (((uint8_t)(((uint8_t)(x))<<USB_FRMNUML_FRM_SHIFT))&USB_FRMNUML_FRM_MASK)
  8531. /* FRMNUMH Bit Fields */
  8532. #define USB_FRMNUMH_FRM_MASK 0x7u
  8533. #define USB_FRMNUMH_FRM_SHIFT 0
  8534. #define USB_FRMNUMH_FRM(x) (((uint8_t)(((uint8_t)(x))<<USB_FRMNUMH_FRM_SHIFT))&USB_FRMNUMH_FRM_MASK)
  8535. /* TOKEN Bit Fields */
  8536. #define USB_TOKEN_TOKENENDPT_MASK 0xFu
  8537. #define USB_TOKEN_TOKENENDPT_SHIFT 0
  8538. #define USB_TOKEN_TOKENENDPT(x) (((uint8_t)(((uint8_t)(x))<<USB_TOKEN_TOKENENDPT_SHIFT))&USB_TOKEN_TOKENENDPT_MASK)
  8539. #define USB_TOKEN_TOKENPID_MASK 0xF0u
  8540. #define USB_TOKEN_TOKENPID_SHIFT 4
  8541. #define USB_TOKEN_TOKENPID(x) (((uint8_t)(((uint8_t)(x))<<USB_TOKEN_TOKENPID_SHIFT))&USB_TOKEN_TOKENPID_MASK)
  8542. /* SOFTHLD Bit Fields */
  8543. #define USB_SOFTHLD_CNT_MASK 0xFFu
  8544. #define USB_SOFTHLD_CNT_SHIFT 0
  8545. #define USB_SOFTHLD_CNT(x) (((uint8_t)(((uint8_t)(x))<<USB_SOFTHLD_CNT_SHIFT))&USB_SOFTHLD_CNT_MASK)
  8546. /* BDTPAGE2 Bit Fields */
  8547. #define USB_BDTPAGE2_BDTBA_MASK 0xFFu
  8548. #define USB_BDTPAGE2_BDTBA_SHIFT 0
  8549. #define USB_BDTPAGE2_BDTBA(x) (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE2_BDTBA_SHIFT))&USB_BDTPAGE2_BDTBA_MASK)
  8550. /* BDTPAGE3 Bit Fields */
  8551. #define USB_BDTPAGE3_BDTBA_MASK 0xFFu
  8552. #define USB_BDTPAGE3_BDTBA_SHIFT 0
  8553. #define USB_BDTPAGE3_BDTBA(x) (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE3_BDTBA_SHIFT))&USB_BDTPAGE3_BDTBA_MASK)
  8554. /* ENDPT Bit Fields */
  8555. #define USB_ENDPT_EPHSHK_MASK 0x1u
  8556. #define USB_ENDPT_EPHSHK_SHIFT 0
  8557. #define USB_ENDPT_EPSTALL_MASK 0x2u
  8558. #define USB_ENDPT_EPSTALL_SHIFT 1
  8559. #define USB_ENDPT_EPTXEN_MASK 0x4u
  8560. #define USB_ENDPT_EPTXEN_SHIFT 2
  8561. #define USB_ENDPT_EPRXEN_MASK 0x8u
  8562. #define USB_ENDPT_EPRXEN_SHIFT 3
  8563. #define USB_ENDPT_EPCTLDIS_MASK 0x10u
  8564. #define USB_ENDPT_EPCTLDIS_SHIFT 4
  8565. #define USB_ENDPT_RETRYDIS_MASK 0x40u
  8566. #define USB_ENDPT_RETRYDIS_SHIFT 6
  8567. #define USB_ENDPT_HOSTWOHUB_MASK 0x80u
  8568. #define USB_ENDPT_HOSTWOHUB_SHIFT 7
  8569. /* USBCTRL Bit Fields */
  8570. #define USB_USBCTRL_PDE_MASK 0x40u
  8571. #define USB_USBCTRL_PDE_SHIFT 6
  8572. #define USB_USBCTRL_SUSP_MASK 0x80u
  8573. #define USB_USBCTRL_SUSP_SHIFT 7
  8574. /* OBSERVE Bit Fields */
  8575. #define USB_OBSERVE_DMPD_MASK 0x10u
  8576. #define USB_OBSERVE_DMPD_SHIFT 4
  8577. #define USB_OBSERVE_DPPD_MASK 0x40u
  8578. #define USB_OBSERVE_DPPD_SHIFT 6
  8579. #define USB_OBSERVE_DPPU_MASK 0x80u
  8580. #define USB_OBSERVE_DPPU_SHIFT 7
  8581. /* CONTROL Bit Fields */
  8582. #define USB_CONTROL_DPPULLUPNONOTG_MASK 0x10u
  8583. #define USB_CONTROL_DPPULLUPNONOTG_SHIFT 4
  8584. /* USBTRC0 Bit Fields */
  8585. #define USB_USBTRC0_USB_RESUME_INT_MASK 0x1u
  8586. #define USB_USBTRC0_USB_RESUME_INT_SHIFT 0
  8587. #define USB_USBTRC0_SYNC_DET_MASK 0x2u
  8588. #define USB_USBTRC0_SYNC_DET_SHIFT 1
  8589. #define USB_USBTRC0_USBRESMEN_MASK 0x20u
  8590. #define USB_USBTRC0_USBRESMEN_SHIFT 5
  8591. #define USB_USBTRC0_USBRESET_MASK 0x80u
  8592. #define USB_USBTRC0_USBRESET_SHIFT 7
  8593. /*! \} */ /* end of group USB_Register_Masks */
  8594. /* USB - Peripheral instance base addresses */
  8595. /*! Peripheral USB0 base address */
  8596. #define USB0_BASE (0x40072000u)
  8597. /*! Peripheral USB0 base pointer */
  8598. #define USB0 ((USB_Type *)USB0_BASE)
  8599. /*! \} */ /* end of group USB_Peripheral_Access_Layer */
  8600. /* ----------------------------------------------------------------------------
  8601. -- USBDCD Peripheral Access Layer
  8602. ---------------------------------------------------------------------------- */
  8603. /*! \addtogroup USBDCD_Peripheral_Access_Layer USBDCD Peripheral Access Layer */
  8604. /*! \{ */
  8605. /*! USBDCD - Register Layout Typedef */
  8606. typedef struct {
  8607. __IO uint32_t CONTROL; /*!< Control Register, offset: 0x0 */
  8608. __IO uint32_t CLOCK; /*!< Clock Register, offset: 0x4 */
  8609. __I uint32_t STATUS; /*!< Status Register, offset: 0x8 */
  8610. uint8_t RESERVED_0[4];
  8611. __IO uint32_t TIMER0; /*!< TIMER0 Register, offset: 0x10 */
  8612. __IO uint32_t TIMER1; /*!< , offset: 0x14 */
  8613. __IO uint32_t TIMER2; /*!< , offset: 0x18 */
  8614. } USBDCD_Type;
  8615. /* ----------------------------------------------------------------------------
  8616. -- USBDCD Register Masks
  8617. ---------------------------------------------------------------------------- */
  8618. /*! \addtogroup USBDCD_Register_Masks USBDCD Register Masks */
  8619. /*! \{ */
  8620. /* CONTROL Bit Fields */
  8621. #define USBDCD_CONTROL_IACK_MASK 0x1u
  8622. #define USBDCD_CONTROL_IACK_SHIFT 0
  8623. #define USBDCD_CONTROL_IF_MASK 0x100u
  8624. #define USBDCD_CONTROL_IF_SHIFT 8
  8625. #define USBDCD_CONTROL_IE_MASK 0x10000u
  8626. #define USBDCD_CONTROL_IE_SHIFT 16
  8627. #define USBDCD_CONTROL_START_MASK 0x1000000u
  8628. #define USBDCD_CONTROL_START_SHIFT 24
  8629. #define USBDCD_CONTROL_SR_MASK 0x2000000u
  8630. #define USBDCD_CONTROL_SR_SHIFT 25
  8631. /* CLOCK Bit Fields */
  8632. #define USBDCD_CLOCK_CLOCK_UNIT_MASK 0x1u
  8633. #define USBDCD_CLOCK_CLOCK_UNIT_SHIFT 0
  8634. #define USBDCD_CLOCK_CLOCK_SPEED_MASK 0xFFCu
  8635. #define USBDCD_CLOCK_CLOCK_SPEED_SHIFT 2
  8636. #define USBDCD_CLOCK_CLOCK_SPEED(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_CLOCK_CLOCK_SPEED_SHIFT))&USBDCD_CLOCK_CLOCK_SPEED_MASK)
  8637. /* STATUS Bit Fields */
  8638. #define USBDCD_STATUS_SEQ_RES_MASK 0x30000u
  8639. #define USBDCD_STATUS_SEQ_RES_SHIFT 16
  8640. #define USBDCD_STATUS_SEQ_RES(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_STATUS_SEQ_RES_SHIFT))&USBDCD_STATUS_SEQ_RES_MASK)
  8641. #define USBDCD_STATUS_SEQ_STAT_MASK 0xC0000u
  8642. #define USBDCD_STATUS_SEQ_STAT_SHIFT 18
  8643. #define USBDCD_STATUS_SEQ_STAT(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_STATUS_SEQ_STAT_SHIFT))&USBDCD_STATUS_SEQ_STAT_MASK)
  8644. #define USBDCD_STATUS_ERR_MASK 0x100000u
  8645. #define USBDCD_STATUS_ERR_SHIFT 20
  8646. #define USBDCD_STATUS_TO_MASK 0x200000u
  8647. #define USBDCD_STATUS_TO_SHIFT 21
  8648. #define USBDCD_STATUS_ACTIVE_MASK 0x400000u
  8649. #define USBDCD_STATUS_ACTIVE_SHIFT 22
  8650. /* TIMER0 Bit Fields */
  8651. #define USBDCD_TIMER0_TUNITCON_MASK 0xFFFu
  8652. #define USBDCD_TIMER0_TUNITCON_SHIFT 0
  8653. #define USBDCD_TIMER0_TUNITCON(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER0_TUNITCON_SHIFT))&USBDCD_TIMER0_TUNITCON_MASK)
  8654. #define USBDCD_TIMER0_TSEQ_INIT_MASK 0x3FF0000u
  8655. #define USBDCD_TIMER0_TSEQ_INIT_SHIFT 16
  8656. #define USBDCD_TIMER0_TSEQ_INIT(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER0_TSEQ_INIT_SHIFT))&USBDCD_TIMER0_TSEQ_INIT_MASK)
  8657. /* TIMER1 Bit Fields */
  8658. #define USBDCD_TIMER1_TVDPSRC_ON_MASK 0x3FFu
  8659. #define USBDCD_TIMER1_TVDPSRC_ON_SHIFT 0
  8660. #define USBDCD_TIMER1_TVDPSRC_ON(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER1_TVDPSRC_ON_SHIFT))&USBDCD_TIMER1_TVDPSRC_ON_MASK)
  8661. #define USBDCD_TIMER1_TDCD_DBNC_MASK 0x3FF0000u
  8662. #define USBDCD_TIMER1_TDCD_DBNC_SHIFT 16
  8663. #define USBDCD_TIMER1_TDCD_DBNC(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER1_TDCD_DBNC_SHIFT))&USBDCD_TIMER1_TDCD_DBNC_MASK)
  8664. /* TIMER2 Bit Fields */
  8665. #define USBDCD_TIMER2_CHECK_DM_MASK 0xFu
  8666. #define USBDCD_TIMER2_CHECK_DM_SHIFT 0
  8667. #define USBDCD_TIMER2_CHECK_DM(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER2_CHECK_DM_SHIFT))&USBDCD_TIMER2_CHECK_DM_MASK)
  8668. #define USBDCD_TIMER2_TVDPSRC_CON_MASK 0x3FF0000u
  8669. #define USBDCD_TIMER2_TVDPSRC_CON_SHIFT 16
  8670. #define USBDCD_TIMER2_TVDPSRC_CON(x) (((uint32_t)(((uint32_t)(x))<<USBDCD_TIMER2_TVDPSRC_CON_SHIFT))&USBDCD_TIMER2_TVDPSRC_CON_MASK)
  8671. /*! \} */ /* end of group USBDCD_Register_Masks */
  8672. /* USBDCD - Peripheral instance base addresses */
  8673. /*! Peripheral USBDCD base address */
  8674. #define USBDCD_BASE (0x40035000u)
  8675. /*! Peripheral USBDCD base pointer */
  8676. #define USBDCD ((USBDCD_Type *)USBDCD_BASE)
  8677. /*! \} */ /* end of group USBDCD_Peripheral_Access_Layer */
  8678. /* ----------------------------------------------------------------------------
  8679. -- VREF Peripheral Access Layer
  8680. ---------------------------------------------------------------------------- */
  8681. /*! \addtogroup VREF_Peripheral_Access_Layer VREF Peripheral Access Layer */
  8682. /*! \{ */
  8683. /*! VREF - Register Layout Typedef */
  8684. typedef struct {
  8685. uint8_t RESERVED_0[1];
  8686. __IO uint8_t SC; /*!< VREF Status and Control Register, offset: 0x1 */
  8687. } VREF_Type;
  8688. /* ----------------------------------------------------------------------------
  8689. -- VREF Register Masks
  8690. ---------------------------------------------------------------------------- */
  8691. /*! \addtogroup VREF_Register_Masks VREF Register Masks */
  8692. /*! \{ */
  8693. /* SC Bit Fields */
  8694. #define VREF_SC_MODE_LV_MASK 0x3u
  8695. #define VREF_SC_MODE_LV_SHIFT 0
  8696. #define VREF_SC_MODE_LV(x) (((uint8_t)(((uint8_t)(x))<<VREF_SC_MODE_LV_SHIFT))&VREF_SC_MODE_LV_MASK)
  8697. #define VREF_SC_VREFST_MASK 0x4u
  8698. #define VREF_SC_VREFST_SHIFT 2
  8699. #define VREF_SC_REGEN_MASK 0x40u
  8700. #define VREF_SC_REGEN_SHIFT 6
  8701. #define VREF_SC_VREFEN_MASK 0x80u
  8702. #define VREF_SC_VREFEN_SHIFT 7
  8703. /*! \} */ /* end of group VREF_Register_Masks */
  8704. /* VREF - Peripheral instance base addresses */
  8705. /*! Peripheral VREF base address */
  8706. #define VREF_BASE (0x40074000u)
  8707. /*! Peripheral VREF base pointer */
  8708. #define VREF ((VREF_Type *)VREF_BASE)
  8709. /*! \} */ /* end of group VREF_Peripheral_Access_Layer */
  8710. /* ----------------------------------------------------------------------------
  8711. -- WDOG Peripheral Access Layer
  8712. ---------------------------------------------------------------------------- */
  8713. /*! \addtogroup WDOG_Peripheral_Access_Layer WDOG Peripheral Access Layer */
  8714. /*! \{ */
  8715. /*! WDOG - Register Layout Typedef */
  8716. typedef struct {
  8717. __IO uint16_t STCTRLH; /*!< Watchdog Status and Control Register High, offset: 0x0 */
  8718. __IO uint16_t STCTRLL; /*!< Watchdog Status and Control Register Low, offset: 0x2 */
  8719. __IO uint16_t TOVALH; /*!< Watchdog Time-out Value Register High, offset: 0x4 */
  8720. __IO uint16_t TOVALL; /*!< Watchdog Time-out Value Register Low, offset: 0x6 */
  8721. __IO uint16_t WINH; /*!< Watchdog Window Register High, offset: 0x8 */
  8722. __IO uint16_t WINL; /*!< Watchdog Window Register Low, offset: 0xA */
  8723. __IO uint16_t REFRESH; /*!< Watchdog Refresh Register, offset: 0xC */
  8724. __IO uint16_t UNLOCK; /*!< Watchdog Unlock Register, offset: 0xE */
  8725. __IO uint16_t TMROUTH; /*!< Watchdog Timer Output Register High, offset: 0x10 */
  8726. __IO uint16_t TMROUTL; /*!< Watchdog Timer Output Register Low, offset: 0x12 */
  8727. __IO uint16_t RSTCNT; /*!< Watchdog Reset Count Register, offset: 0x14 */
  8728. __IO uint16_t PRESC; /*!< Watchdog Prescaler Register, offset: 0x16 */
  8729. } WDOG_Type;
  8730. /* ----------------------------------------------------------------------------
  8731. -- WDOG Register Masks
  8732. ---------------------------------------------------------------------------- */
  8733. /*! \addtogroup WDOG_Register_Masks WDOG Register Masks */
  8734. /*! \{ */
  8735. /* STCTRLH Bit Fields */
  8736. #define WDOG_STCTRLH_WDOGEN_MASK 0x1u
  8737. #define WDOG_STCTRLH_WDOGEN_SHIFT 0
  8738. #define WDOG_STCTRLH_CLKSRC_MASK 0x2u
  8739. #define WDOG_STCTRLH_CLKSRC_SHIFT 1
  8740. #define WDOG_STCTRLH_IRQRSTEN_MASK 0x4u
  8741. #define WDOG_STCTRLH_IRQRSTEN_SHIFT 2
  8742. #define WDOG_STCTRLH_WINEN_MASK 0x8u
  8743. #define WDOG_STCTRLH_WINEN_SHIFT 3
  8744. #define WDOG_STCTRLH_ALLOWUPDATE_MASK 0x10u
  8745. #define WDOG_STCTRLH_ALLOWUPDATE_SHIFT 4
  8746. #define WDOG_STCTRLH_DBGEN_MASK 0x20u
  8747. #define WDOG_STCTRLH_DBGEN_SHIFT 5
  8748. #define WDOG_STCTRLH_STOPEN_MASK 0x40u
  8749. #define WDOG_STCTRLH_STOPEN_SHIFT 6
  8750. #define WDOG_STCTRLH_WAITEN_MASK 0x80u
  8751. #define WDOG_STCTRLH_WAITEN_SHIFT 7
  8752. #define WDOG_STCTRLH_STNDBYEN_MASK 0x100u
  8753. #define WDOG_STCTRLH_STNDBYEN_SHIFT 8
  8754. #define WDOG_STCTRLH_TESTWDOG_MASK 0x400u
  8755. #define WDOG_STCTRLH_TESTWDOG_SHIFT 10
  8756. #define WDOG_STCTRLH_TESTSEL_MASK 0x800u
  8757. #define WDOG_STCTRLH_TESTSEL_SHIFT 11
  8758. #define WDOG_STCTRLH_BYTESEL_MASK 0x3000u
  8759. #define WDOG_STCTRLH_BYTESEL_SHIFT 12
  8760. #define WDOG_STCTRLH_BYTESEL(x) (((uint16_t)(((uint16_t)(x))<<WDOG_STCTRLH_BYTESEL_SHIFT))&WDOG_STCTRLH_BYTESEL_MASK)
  8761. #define WDOG_STCTRLH_DISTESTWDOG_MASK 0x4000u
  8762. #define WDOG_STCTRLH_DISTESTWDOG_SHIFT 14
  8763. /* STCTRLL Bit Fields */
  8764. #define WDOG_STCTRLL_INTFLG_MASK 0x8000u
  8765. #define WDOG_STCTRLL_INTFLG_SHIFT 15
  8766. /* TOVALH Bit Fields */
  8767. #define WDOG_TOVALH_TOVALHIGH_MASK 0xFFFFu
  8768. #define WDOG_TOVALH_TOVALHIGH_SHIFT 0
  8769. #define WDOG_TOVALH_TOVALHIGH(x) (((uint16_t)(((uint16_t)(x))<<WDOG_TOVALH_TOVALHIGH_SHIFT))&WDOG_TOVALH_TOVALHIGH_MASK)
  8770. /* TOVALL Bit Fields */
  8771. #define WDOG_TOVALL_TOVALLOW_MASK 0xFFFFu
  8772. #define WDOG_TOVALL_TOVALLOW_SHIFT 0
  8773. #define WDOG_TOVALL_TOVALLOW(x) (((uint16_t)(((uint16_t)(x))<<WDOG_TOVALL_TOVALLOW_SHIFT))&WDOG_TOVALL_TOVALLOW_MASK)
  8774. /* WINH Bit Fields */
  8775. #define WDOG_WINH_WINHIGH_MASK 0xFFFFu
  8776. #define WDOG_WINH_WINHIGH_SHIFT 0
  8777. #define WDOG_WINH_WINHIGH(x) (((uint16_t)(((uint16_t)(x))<<WDOG_WINH_WINHIGH_SHIFT))&WDOG_WINH_WINHIGH_MASK)
  8778. /* WINL Bit Fields */
  8779. #define WDOG_WINL_WINLOW_MASK 0xFFFFu
  8780. #define WDOG_WINL_WINLOW_SHIFT 0
  8781. #define WDOG_WINL_WINLOW(x) (((uint16_t)(((uint16_t)(x))<<WDOG_WINL_WINLOW_SHIFT))&WDOG_WINL_WINLOW_MASK)
  8782. /* REFRESH Bit Fields */
  8783. #define WDOG_REFRESH_WDOGREFRESH_MASK 0xFFFFu
  8784. #define WDOG_REFRESH_WDOGREFRESH_SHIFT 0
  8785. #define WDOG_REFRESH_WDOGREFRESH(x) (((uint16_t)(((uint16_t)(x))<<WDOG_REFRESH_WDOGREFRESH_SHIFT))&WDOG_REFRESH_WDOGREFRESH_MASK)
  8786. /* UNLOCK Bit Fields */
  8787. #define WDOG_UNLOCK_WDOGUNLOCK_MASK 0xFFFFu
  8788. #define WDOG_UNLOCK_WDOGUNLOCK_SHIFT 0
  8789. #define WDOG_UNLOCK_WDOGUNLOCK(x) (((uint16_t)(((uint16_t)(x))<<WDOG_UNLOCK_WDOGUNLOCK_SHIFT))&WDOG_UNLOCK_WDOGUNLOCK_MASK)
  8790. /* TMROUTH Bit Fields */
  8791. #define WDOG_TMROUTH_TIMEROUTHIGH_MASK 0xFFFFu
  8792. #define WDOG_TMROUTH_TIMEROUTHIGH_SHIFT 0
  8793. #define WDOG_TMROUTH_TIMEROUTHIGH(x) (((uint16_t)(((uint16_t)(x))<<WDOG_TMROUTH_TIMEROUTHIGH_SHIFT))&WDOG_TMROUTH_TIMEROUTHIGH_MASK)
  8794. /* TMROUTL Bit Fields */
  8795. #define WDOG_TMROUTL_TIMEROUTLOW_MASK 0xFFFFu
  8796. #define WDOG_TMROUTL_TIMEROUTLOW_SHIFT 0
  8797. #define WDOG_TMROUTL_TIMEROUTLOW(x) (((uint16_t)(((uint16_t)(x))<<WDOG_TMROUTL_TIMEROUTLOW_SHIFT))&WDOG_TMROUTL_TIMEROUTLOW_MASK)
  8798. /* RSTCNT Bit Fields */
  8799. #define WDOG_RSTCNT_RSTCNT_MASK 0xFFFFu
  8800. #define WDOG_RSTCNT_RSTCNT_SHIFT 0
  8801. #define WDOG_RSTCNT_RSTCNT(x) (((uint16_t)(((uint16_t)(x))<<WDOG_RSTCNT_RSTCNT_SHIFT))&WDOG_RSTCNT_RSTCNT_MASK)
  8802. /* PRESC Bit Fields */
  8803. #define WDOG_PRESC_PRESCVAL_MASK 0x700u
  8804. #define WDOG_PRESC_PRESCVAL_SHIFT 8
  8805. #define WDOG_PRESC_PRESCVAL(x) (((uint16_t)(((uint16_t)(x))<<WDOG_PRESC_PRESCVAL_SHIFT))&WDOG_PRESC_PRESCVAL_MASK)
  8806. /*! \} */ /* end of group WDOG_Register_Masks */
  8807. /* WDOG - Peripheral instance base addresses */
  8808. /*! Peripheral WDOG base address */
  8809. #define WDOG_BASE (0x40052000u)
  8810. /*! Peripheral WDOG base pointer */
  8811. #define WDOG ((WDOG_Type *)WDOG_BASE)
  8812. /*! \} */ /* end of group WDOG_Peripheral_Access_Layer */
  8813. /*
  8814. ** End of section using anonymous unions
  8815. */
  8816. #if defined(__ARMCC_VERSION)
  8817. #pragma pop
  8818. #elif defined(__CWCC__)
  8819. #pragma pop
  8820. #elif defined(__GNUC__)
  8821. /* leave anonymous unions enabled */
  8822. #elif defined(__IAR_SYSTEMS_ICC__)
  8823. #pragma language=default
  8824. #else
  8825. #error Not supported compiler type
  8826. #endif
  8827. /*! \} */ /* end of group Peripheral_access_layer */
  8828. #endif /* #if !defined(PK40X256VLQ100) */
  8829. /* PK40X256VLQ100.h, eof. */