12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458 |
- /***********************license start***************
- * Author: Cavium Inc.
- *
- * Contact: support@cavium.com
- * This file is part of the OCTEON SDK
- *
- * Copyright (c) 2003-2012 Cavium Inc.
- *
- * This file is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License, Version 2, as
- * published by the Free Software Foundation.
- *
- * This file is distributed in the hope that it will be useful, but
- * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
- * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
- * NONINFRINGEMENT. See the GNU General Public License for more
- * details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this file; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- * or visit http://www.gnu.org/licenses/.
- *
- * This file may also be available under a different license from Cavium.
- * Contact Cavium Inc. for more information
- ***********************license end**************************************/
- #ifndef __CVMX_LMCX_DEFS_H__
- #define __CVMX_LMCX_DEFS_H__
- #define CVMX_LMCX_BIST_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880000F0ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_BIST_RESULT(block_id) (CVMX_ADD_IO_SEG(0x00011800880000F8ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_CHAR_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000220ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CHAR_MASK0(block_id) (CVMX_ADD_IO_SEG(0x0001180088000228ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CHAR_MASK1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000230ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CHAR_MASK2(block_id) (CVMX_ADD_IO_SEG(0x0001180088000238ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CHAR_MASK3(block_id) (CVMX_ADD_IO_SEG(0x0001180088000240ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CHAR_MASK4(block_id) (CVMX_ADD_IO_SEG(0x0001180088000318ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_COMP_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000028ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_COMP_CTL2(block_id) (CVMX_ADD_IO_SEG(0x00011800880001B8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CONFIG(block_id) (CVMX_ADD_IO_SEG(0x0001180088000188ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CONTROL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000190ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000010ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_CTL1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000090ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DCLK_CNT(block_id) (CVMX_ADD_IO_SEG(0x00011800880001E0ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_DCLK_CNT_HI(block_id) (CVMX_ADD_IO_SEG(0x0001180088000070ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DCLK_CNT_LO(block_id) (CVMX_ADD_IO_SEG(0x0001180088000068ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DCLK_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880000B8ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DDR2_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000018ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DDR_PLL_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000258ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_DELAY_CFG(block_id) (CVMX_ADD_IO_SEG(0x0001180088000088ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DIMMX_PARAMS(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180088000270ull) + (((offset) & 1) + ((block_id) & 3) * 0x200000ull) * 8)
- #define CVMX_LMCX_DIMM_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000310ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_DLL_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880000C0ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_DLL_CTL2(block_id) (CVMX_ADD_IO_SEG(0x00011800880001C8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_DLL_CTL3(block_id) (CVMX_ADD_IO_SEG(0x0001180088000218ull) + ((block_id) & 3) * 0x1000000ull)
- static inline uint64_t CVMX_LMCX_DUAL_MEMCFG(unsigned long block_id)
- {
- switch (cvmx_get_octeon_family()) {
- case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN50XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN58XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN52XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000098ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN56XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000098ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000098ull) + (block_id) * 0x1000000ull;
- }
- return CVMX_ADD_IO_SEG(0x0001180088000098ull) + (block_id) * 0x60000000ull;
- }
- static inline uint64_t CVMX_LMCX_ECC_SYND(unsigned long block_id)
- {
- switch (cvmx_get_octeon_family()) {
- case OCTEON_CN30XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN50XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN38XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN58XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN52XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
- case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000038ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN56XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000038ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000038ull) + (block_id) * 0x1000000ull;
- }
- return CVMX_ADD_IO_SEG(0x0001180088000038ull) + (block_id) * 0x60000000ull;
- }
- static inline uint64_t CVMX_LMCX_FADR(unsigned long block_id)
- {
- switch (cvmx_get_octeon_family()) {
- case OCTEON_CN30XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN50XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN38XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN31XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN58XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN52XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
- case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000020ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN56XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000020ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x0001180088000020ull) + (block_id) * 0x1000000ull;
- }
- return CVMX_ADD_IO_SEG(0x0001180088000020ull) + (block_id) * 0x60000000ull;
- }
- #define CVMX_LMCX_IFB_CNT(block_id) (CVMX_ADD_IO_SEG(0x00011800880001D0ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_IFB_CNT_HI(block_id) (CVMX_ADD_IO_SEG(0x0001180088000050ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_IFB_CNT_LO(block_id) (CVMX_ADD_IO_SEG(0x0001180088000048ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_INT(block_id) (CVMX_ADD_IO_SEG(0x00011800880001F0ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_INT_EN(block_id) (CVMX_ADD_IO_SEG(0x00011800880001E8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_MEM_CFG0(block_id) (CVMX_ADD_IO_SEG(0x0001180088000000ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_MEM_CFG1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000008ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_MODEREG_PARAMS0(block_id) (CVMX_ADD_IO_SEG(0x00011800880001A8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_MODEREG_PARAMS1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000260ull) + ((block_id) & 3) * 0x1000000ull)
- static inline uint64_t CVMX_LMCX_NXM(unsigned long block_id)
- {
- switch (cvmx_get_octeon_family()) {
- case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN52XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN58XX & OCTEON_FAMILY_MASK:
- case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x00011800880000C8ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN56XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x00011800880000C8ull) + (block_id) * 0x60000000ull;
- case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
- return CVMX_ADD_IO_SEG(0x00011800880000C8ull) + (block_id) * 0x1000000ull;
- }
- return CVMX_ADD_IO_SEG(0x00011800880000C8ull) + (block_id) * 0x60000000ull;
- }
- #define CVMX_LMCX_OPS_CNT(block_id) (CVMX_ADD_IO_SEG(0x00011800880001D8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_OPS_CNT_HI(block_id) (CVMX_ADD_IO_SEG(0x0001180088000060ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_OPS_CNT_LO(block_id) (CVMX_ADD_IO_SEG(0x0001180088000058ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_PHY_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000210ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_PLL_BWCTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000040ull))
- #define CVMX_LMCX_PLL_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880000A8ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_PLL_STATUS(block_id) (CVMX_ADD_IO_SEG(0x00011800880000B0ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_READ_LEVEL_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000140ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_READ_LEVEL_DBG(block_id) (CVMX_ADD_IO_SEG(0x0001180088000148ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_READ_LEVEL_RANKX(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180088000100ull) + (((offset) & 3) + ((block_id) & 1) * 0xC000000ull) * 8)
- #define CVMX_LMCX_RESET_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000180ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_RLEVEL_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880002A0ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_RLEVEL_DBG(block_id) (CVMX_ADD_IO_SEG(0x00011800880002A8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_RLEVEL_RANKX(offset, block_id) (CVMX_ADD_IO_SEG(0x0001180088000280ull) + (((offset) & 3) + ((block_id) & 3) * 0x200000ull) * 8)
- #define CVMX_LMCX_RODT_COMP_CTL(block_id) (CVMX_ADD_IO_SEG(0x00011800880000A0ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_RODT_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000078ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_RODT_MASK(block_id) (CVMX_ADD_IO_SEG(0x0001180088000268ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_SCRAMBLED_FADR(block_id) (CVMX_ADD_IO_SEG(0x0001180088000330ull))
- #define CVMX_LMCX_SCRAMBLE_CFG0(block_id) (CVMX_ADD_IO_SEG(0x0001180088000320ull))
- #define CVMX_LMCX_SCRAMBLE_CFG1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000328ull))
- #define CVMX_LMCX_SLOT_CTL0(block_id) (CVMX_ADD_IO_SEG(0x00011800880001F8ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_SLOT_CTL1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000200ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_SLOT_CTL2(block_id) (CVMX_ADD_IO_SEG(0x0001180088000208ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_TIMING_PARAMS0(block_id) (CVMX_ADD_IO_SEG(0x0001180088000198ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_TIMING_PARAMS1(block_id) (CVMX_ADD_IO_SEG(0x00011800880001A0ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_TRO_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000248ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_TRO_STAT(block_id) (CVMX_ADD_IO_SEG(0x0001180088000250ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_WLEVEL_CTL(block_id) (CVMX_ADD_IO_SEG(0x0001180088000300ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_WLEVEL_DBG(block_id) (CVMX_ADD_IO_SEG(0x0001180088000308ull) + ((block_id) & 3) * 0x1000000ull)
- #define CVMX_LMCX_WLEVEL_RANKX(offset, block_id) (CVMX_ADD_IO_SEG(0x00011800880002B0ull) + (((offset) & 3) + ((block_id) & 3) * 0x200000ull) * 8)
- #define CVMX_LMCX_WODT_CTL0(block_id) (CVMX_ADD_IO_SEG(0x0001180088000030ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_WODT_CTL1(block_id) (CVMX_ADD_IO_SEG(0x0001180088000080ull) + ((block_id) & 1) * 0x60000000ull)
- #define CVMX_LMCX_WODT_MASK(block_id) (CVMX_ADD_IO_SEG(0x00011800880001B0ull) + ((block_id) & 3) * 0x1000000ull)
- union cvmx_lmcx_bist_ctl {
- uint64_t u64;
- struct cvmx_lmcx_bist_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_1_63:63;
- uint64_t start:1;
- #else
- uint64_t start:1;
- uint64_t reserved_1_63:63;
- #endif
- } s;
- struct cvmx_lmcx_bist_ctl_s cn50xx;
- struct cvmx_lmcx_bist_ctl_s cn52xx;
- struct cvmx_lmcx_bist_ctl_s cn52xxp1;
- struct cvmx_lmcx_bist_ctl_s cn56xx;
- struct cvmx_lmcx_bist_ctl_s cn56xxp1;
- };
- union cvmx_lmcx_bist_result {
- uint64_t u64;
- struct cvmx_lmcx_bist_result_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_11_63:53;
- uint64_t csrd2e:1;
- uint64_t csre2d:1;
- uint64_t mwf:1;
- uint64_t mwd:3;
- uint64_t mwc:1;
- uint64_t mrf:1;
- uint64_t mrd:3;
- #else
- uint64_t mrd:3;
- uint64_t mrf:1;
- uint64_t mwc:1;
- uint64_t mwd:3;
- uint64_t mwf:1;
- uint64_t csre2d:1;
- uint64_t csrd2e:1;
- uint64_t reserved_11_63:53;
- #endif
- } s;
- struct cvmx_lmcx_bist_result_cn50xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_9_63:55;
- uint64_t mwf:1;
- uint64_t mwd:3;
- uint64_t mwc:1;
- uint64_t mrf:1;
- uint64_t mrd:3;
- #else
- uint64_t mrd:3;
- uint64_t mrf:1;
- uint64_t mwc:1;
- uint64_t mwd:3;
- uint64_t mwf:1;
- uint64_t reserved_9_63:55;
- #endif
- } cn50xx;
- struct cvmx_lmcx_bist_result_s cn52xx;
- struct cvmx_lmcx_bist_result_s cn52xxp1;
- struct cvmx_lmcx_bist_result_s cn56xx;
- struct cvmx_lmcx_bist_result_s cn56xxp1;
- };
- union cvmx_lmcx_char_ctl {
- uint64_t u64;
- struct cvmx_lmcx_char_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_44_63:20;
- uint64_t dr:1;
- uint64_t skew_on:1;
- uint64_t en:1;
- uint64_t sel:1;
- uint64_t prog:8;
- uint64_t prbs:32;
- #else
- uint64_t prbs:32;
- uint64_t prog:8;
- uint64_t sel:1;
- uint64_t en:1;
- uint64_t skew_on:1;
- uint64_t dr:1;
- uint64_t reserved_44_63:20;
- #endif
- } s;
- struct cvmx_lmcx_char_ctl_s cn61xx;
- struct cvmx_lmcx_char_ctl_cn63xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_42_63:22;
- uint64_t en:1;
- uint64_t sel:1;
- uint64_t prog:8;
- uint64_t prbs:32;
- #else
- uint64_t prbs:32;
- uint64_t prog:8;
- uint64_t sel:1;
- uint64_t en:1;
- uint64_t reserved_42_63:22;
- #endif
- } cn63xx;
- struct cvmx_lmcx_char_ctl_cn63xx cn63xxp1;
- struct cvmx_lmcx_char_ctl_s cn66xx;
- struct cvmx_lmcx_char_ctl_s cn68xx;
- struct cvmx_lmcx_char_ctl_cn63xx cn68xxp1;
- struct cvmx_lmcx_char_ctl_s cnf71xx;
- };
- union cvmx_lmcx_char_mask0 {
- uint64_t u64;
- struct cvmx_lmcx_char_mask0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t mask:64;
- #else
- uint64_t mask:64;
- #endif
- } s;
- struct cvmx_lmcx_char_mask0_s cn61xx;
- struct cvmx_lmcx_char_mask0_s cn63xx;
- struct cvmx_lmcx_char_mask0_s cn63xxp1;
- struct cvmx_lmcx_char_mask0_s cn66xx;
- struct cvmx_lmcx_char_mask0_s cn68xx;
- struct cvmx_lmcx_char_mask0_s cn68xxp1;
- struct cvmx_lmcx_char_mask0_s cnf71xx;
- };
- union cvmx_lmcx_char_mask1 {
- uint64_t u64;
- struct cvmx_lmcx_char_mask1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_8_63:56;
- uint64_t mask:8;
- #else
- uint64_t mask:8;
- uint64_t reserved_8_63:56;
- #endif
- } s;
- struct cvmx_lmcx_char_mask1_s cn61xx;
- struct cvmx_lmcx_char_mask1_s cn63xx;
- struct cvmx_lmcx_char_mask1_s cn63xxp1;
- struct cvmx_lmcx_char_mask1_s cn66xx;
- struct cvmx_lmcx_char_mask1_s cn68xx;
- struct cvmx_lmcx_char_mask1_s cn68xxp1;
- struct cvmx_lmcx_char_mask1_s cnf71xx;
- };
- union cvmx_lmcx_char_mask2 {
- uint64_t u64;
- struct cvmx_lmcx_char_mask2_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t mask:64;
- #else
- uint64_t mask:64;
- #endif
- } s;
- struct cvmx_lmcx_char_mask2_s cn61xx;
- struct cvmx_lmcx_char_mask2_s cn63xx;
- struct cvmx_lmcx_char_mask2_s cn63xxp1;
- struct cvmx_lmcx_char_mask2_s cn66xx;
- struct cvmx_lmcx_char_mask2_s cn68xx;
- struct cvmx_lmcx_char_mask2_s cn68xxp1;
- struct cvmx_lmcx_char_mask2_s cnf71xx;
- };
- union cvmx_lmcx_char_mask3 {
- uint64_t u64;
- struct cvmx_lmcx_char_mask3_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_8_63:56;
- uint64_t mask:8;
- #else
- uint64_t mask:8;
- uint64_t reserved_8_63:56;
- #endif
- } s;
- struct cvmx_lmcx_char_mask3_s cn61xx;
- struct cvmx_lmcx_char_mask3_s cn63xx;
- struct cvmx_lmcx_char_mask3_s cn63xxp1;
- struct cvmx_lmcx_char_mask3_s cn66xx;
- struct cvmx_lmcx_char_mask3_s cn68xx;
- struct cvmx_lmcx_char_mask3_s cn68xxp1;
- struct cvmx_lmcx_char_mask3_s cnf71xx;
- };
- union cvmx_lmcx_char_mask4 {
- uint64_t u64;
- struct cvmx_lmcx_char_mask4_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_33_63:31;
- uint64_t reset_n_mask:1;
- uint64_t a_mask:16;
- uint64_t ba_mask:3;
- uint64_t we_n_mask:1;
- uint64_t cas_n_mask:1;
- uint64_t ras_n_mask:1;
- uint64_t odt1_mask:2;
- uint64_t odt0_mask:2;
- uint64_t cs1_n_mask:2;
- uint64_t cs0_n_mask:2;
- uint64_t cke_mask:2;
- #else
- uint64_t cke_mask:2;
- uint64_t cs0_n_mask:2;
- uint64_t cs1_n_mask:2;
- uint64_t odt0_mask:2;
- uint64_t odt1_mask:2;
- uint64_t ras_n_mask:1;
- uint64_t cas_n_mask:1;
- uint64_t we_n_mask:1;
- uint64_t ba_mask:3;
- uint64_t a_mask:16;
- uint64_t reset_n_mask:1;
- uint64_t reserved_33_63:31;
- #endif
- } s;
- struct cvmx_lmcx_char_mask4_s cn61xx;
- struct cvmx_lmcx_char_mask4_s cn63xx;
- struct cvmx_lmcx_char_mask4_s cn63xxp1;
- struct cvmx_lmcx_char_mask4_s cn66xx;
- struct cvmx_lmcx_char_mask4_s cn68xx;
- struct cvmx_lmcx_char_mask4_s cn68xxp1;
- struct cvmx_lmcx_char_mask4_s cnf71xx;
- };
- union cvmx_lmcx_comp_ctl {
- uint64_t u64;
- struct cvmx_lmcx_comp_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t nctl_csr:4;
- uint64_t nctl_clk:4;
- uint64_t nctl_cmd:4;
- uint64_t nctl_dat:4;
- uint64_t pctl_csr:4;
- uint64_t pctl_clk:4;
- uint64_t reserved_0_7:8;
- #else
- uint64_t reserved_0_7:8;
- uint64_t pctl_clk:4;
- uint64_t pctl_csr:4;
- uint64_t nctl_dat:4;
- uint64_t nctl_cmd:4;
- uint64_t nctl_clk:4;
- uint64_t nctl_csr:4;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_comp_ctl_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t nctl_csr:4;
- uint64_t nctl_clk:4;
- uint64_t nctl_cmd:4;
- uint64_t nctl_dat:4;
- uint64_t pctl_csr:4;
- uint64_t pctl_clk:4;
- uint64_t pctl_cmd:4;
- uint64_t pctl_dat:4;
- #else
- uint64_t pctl_dat:4;
- uint64_t pctl_cmd:4;
- uint64_t pctl_clk:4;
- uint64_t pctl_csr:4;
- uint64_t nctl_dat:4;
- uint64_t nctl_cmd:4;
- uint64_t nctl_clk:4;
- uint64_t nctl_csr:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn30xx;
- struct cvmx_lmcx_comp_ctl_cn30xx cn31xx;
- struct cvmx_lmcx_comp_ctl_cn30xx cn38xx;
- struct cvmx_lmcx_comp_ctl_cn30xx cn38xxp2;
- struct cvmx_lmcx_comp_ctl_cn50xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t nctl_csr:4;
- uint64_t reserved_20_27:8;
- uint64_t nctl_dat:4;
- uint64_t pctl_csr:4;
- uint64_t reserved_5_11:7;
- uint64_t pctl_dat:5;
- #else
- uint64_t pctl_dat:5;
- uint64_t reserved_5_11:7;
- uint64_t pctl_csr:4;
- uint64_t nctl_dat:4;
- uint64_t reserved_20_27:8;
- uint64_t nctl_csr:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn50xx;
- struct cvmx_lmcx_comp_ctl_cn50xx cn52xx;
- struct cvmx_lmcx_comp_ctl_cn50xx cn52xxp1;
- struct cvmx_lmcx_comp_ctl_cn50xx cn56xx;
- struct cvmx_lmcx_comp_ctl_cn50xx cn56xxp1;
- struct cvmx_lmcx_comp_ctl_cn50xx cn58xx;
- struct cvmx_lmcx_comp_ctl_cn58xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t nctl_csr:4;
- uint64_t reserved_20_27:8;
- uint64_t nctl_dat:4;
- uint64_t pctl_csr:4;
- uint64_t reserved_4_11:8;
- uint64_t pctl_dat:4;
- #else
- uint64_t pctl_dat:4;
- uint64_t reserved_4_11:8;
- uint64_t pctl_csr:4;
- uint64_t nctl_dat:4;
- uint64_t reserved_20_27:8;
- uint64_t nctl_csr:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn58xxp1;
- };
- union cvmx_lmcx_comp_ctl2 {
- uint64_t u64;
- struct cvmx_lmcx_comp_ctl2_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_34_63:30;
- uint64_t ddr__ptune:4;
- uint64_t ddr__ntune:4;
- uint64_t m180:1;
- uint64_t byp:1;
- uint64_t ptune:4;
- uint64_t ntune:4;
- uint64_t rodt_ctl:4;
- uint64_t cmd_ctl:4;
- uint64_t ck_ctl:4;
- uint64_t dqx_ctl:4;
- #else
- uint64_t dqx_ctl:4;
- uint64_t ck_ctl:4;
- uint64_t cmd_ctl:4;
- uint64_t rodt_ctl:4;
- uint64_t ntune:4;
- uint64_t ptune:4;
- uint64_t byp:1;
- uint64_t m180:1;
- uint64_t ddr__ntune:4;
- uint64_t ddr__ptune:4;
- uint64_t reserved_34_63:30;
- #endif
- } s;
- struct cvmx_lmcx_comp_ctl2_s cn61xx;
- struct cvmx_lmcx_comp_ctl2_s cn63xx;
- struct cvmx_lmcx_comp_ctl2_s cn63xxp1;
- struct cvmx_lmcx_comp_ctl2_s cn66xx;
- struct cvmx_lmcx_comp_ctl2_s cn68xx;
- struct cvmx_lmcx_comp_ctl2_s cn68xxp1;
- struct cvmx_lmcx_comp_ctl2_s cnf71xx;
- };
- union cvmx_lmcx_config {
- uint64_t u64;
- struct cvmx_lmcx_config_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_61_63:3;
- uint64_t mode32b:1;
- uint64_t scrz:1;
- uint64_t early_unload_d1_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d0_r0:1;
- uint64_t init_status:4;
- uint64_t mirrmask:4;
- uint64_t rankmask:4;
- uint64_t rank_ena:1;
- uint64_t sref_with_dll:1;
- uint64_t early_dqx:1;
- uint64_t sequence:3;
- uint64_t ref_zqcs_int:19;
- uint64_t reset:1;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t pbank_lsb:4;
- uint64_t row_lsb:3;
- uint64_t ecc_ena:1;
- uint64_t init_start:1;
- #else
- uint64_t init_start:1;
- uint64_t ecc_ena:1;
- uint64_t row_lsb:3;
- uint64_t pbank_lsb:4;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reset:1;
- uint64_t ref_zqcs_int:19;
- uint64_t sequence:3;
- uint64_t early_dqx:1;
- uint64_t sref_with_dll:1;
- uint64_t rank_ena:1;
- uint64_t rankmask:4;
- uint64_t mirrmask:4;
- uint64_t init_status:4;
- uint64_t early_unload_d0_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d1_r1:1;
- uint64_t scrz:1;
- uint64_t mode32b:1;
- uint64_t reserved_61_63:3;
- #endif
- } s;
- struct cvmx_lmcx_config_s cn61xx;
- struct cvmx_lmcx_config_cn63xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_59_63:5;
- uint64_t early_unload_d1_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d0_r0:1;
- uint64_t init_status:4;
- uint64_t mirrmask:4;
- uint64_t rankmask:4;
- uint64_t rank_ena:1;
- uint64_t sref_with_dll:1;
- uint64_t early_dqx:1;
- uint64_t sequence:3;
- uint64_t ref_zqcs_int:19;
- uint64_t reset:1;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t pbank_lsb:4;
- uint64_t row_lsb:3;
- uint64_t ecc_ena:1;
- uint64_t init_start:1;
- #else
- uint64_t init_start:1;
- uint64_t ecc_ena:1;
- uint64_t row_lsb:3;
- uint64_t pbank_lsb:4;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reset:1;
- uint64_t ref_zqcs_int:19;
- uint64_t sequence:3;
- uint64_t early_dqx:1;
- uint64_t sref_with_dll:1;
- uint64_t rank_ena:1;
- uint64_t rankmask:4;
- uint64_t mirrmask:4;
- uint64_t init_status:4;
- uint64_t early_unload_d0_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d1_r1:1;
- uint64_t reserved_59_63:5;
- #endif
- } cn63xx;
- struct cvmx_lmcx_config_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_55_63:9;
- uint64_t init_status:4;
- uint64_t mirrmask:4;
- uint64_t rankmask:4;
- uint64_t rank_ena:1;
- uint64_t sref_with_dll:1;
- uint64_t early_dqx:1;
- uint64_t sequence:3;
- uint64_t ref_zqcs_int:19;
- uint64_t reset:1;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t pbank_lsb:4;
- uint64_t row_lsb:3;
- uint64_t ecc_ena:1;
- uint64_t init_start:1;
- #else
- uint64_t init_start:1;
- uint64_t ecc_ena:1;
- uint64_t row_lsb:3;
- uint64_t pbank_lsb:4;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reset:1;
- uint64_t ref_zqcs_int:19;
- uint64_t sequence:3;
- uint64_t early_dqx:1;
- uint64_t sref_with_dll:1;
- uint64_t rank_ena:1;
- uint64_t rankmask:4;
- uint64_t mirrmask:4;
- uint64_t init_status:4;
- uint64_t reserved_55_63:9;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_config_cn66xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_60_63:4;
- uint64_t scrz:1;
- uint64_t early_unload_d1_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d0_r0:1;
- uint64_t init_status:4;
- uint64_t mirrmask:4;
- uint64_t rankmask:4;
- uint64_t rank_ena:1;
- uint64_t sref_with_dll:1;
- uint64_t early_dqx:1;
- uint64_t sequence:3;
- uint64_t ref_zqcs_int:19;
- uint64_t reset:1;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t pbank_lsb:4;
- uint64_t row_lsb:3;
- uint64_t ecc_ena:1;
- uint64_t init_start:1;
- #else
- uint64_t init_start:1;
- uint64_t ecc_ena:1;
- uint64_t row_lsb:3;
- uint64_t pbank_lsb:4;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reset:1;
- uint64_t ref_zqcs_int:19;
- uint64_t sequence:3;
- uint64_t early_dqx:1;
- uint64_t sref_with_dll:1;
- uint64_t rank_ena:1;
- uint64_t rankmask:4;
- uint64_t mirrmask:4;
- uint64_t init_status:4;
- uint64_t early_unload_d0_r0:1;
- uint64_t early_unload_d0_r1:1;
- uint64_t early_unload_d1_r0:1;
- uint64_t early_unload_d1_r1:1;
- uint64_t scrz:1;
- uint64_t reserved_60_63:4;
- #endif
- } cn66xx;
- struct cvmx_lmcx_config_cn63xx cn68xx;
- struct cvmx_lmcx_config_cn63xx cn68xxp1;
- struct cvmx_lmcx_config_s cnf71xx;
- };
- union cvmx_lmcx_control {
- uint64_t u64;
- struct cvmx_lmcx_control_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t scramble_ena:1;
- uint64_t thrcnt:12;
- uint64_t persub:8;
- uint64_t thrmax:4;
- uint64_t crm_cnt:5;
- uint64_t crm_thr:5;
- uint64_t crm_max:5;
- uint64_t rodt_bprch:1;
- uint64_t wodt_bprch:1;
- uint64_t bprch:2;
- uint64_t ext_zqcs_dis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t auto_dclkdis:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t nxm_write_en:1;
- uint64_t elev_prio_dis:1;
- uint64_t inorder_wr:1;
- uint64_t inorder_rd:1;
- uint64_t throttle_wr:1;
- uint64_t throttle_rd:1;
- uint64_t fprch2:2;
- uint64_t pocas:1;
- uint64_t ddr2t:1;
- uint64_t bwcnt:1;
- uint64_t rdimm_ena:1;
- #else
- uint64_t rdimm_ena:1;
- uint64_t bwcnt:1;
- uint64_t ddr2t:1;
- uint64_t pocas:1;
- uint64_t fprch2:2;
- uint64_t throttle_rd:1;
- uint64_t throttle_wr:1;
- uint64_t inorder_rd:1;
- uint64_t inorder_wr:1;
- uint64_t elev_prio_dis:1;
- uint64_t nxm_write_en:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t auto_dclkdis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t ext_zqcs_dis:1;
- uint64_t bprch:2;
- uint64_t wodt_bprch:1;
- uint64_t rodt_bprch:1;
- uint64_t crm_max:5;
- uint64_t crm_thr:5;
- uint64_t crm_cnt:5;
- uint64_t thrmax:4;
- uint64_t persub:8;
- uint64_t thrcnt:12;
- uint64_t scramble_ena:1;
- #endif
- } s;
- struct cvmx_lmcx_control_s cn61xx;
- struct cvmx_lmcx_control_cn63xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_24_63:40;
- uint64_t rodt_bprch:1;
- uint64_t wodt_bprch:1;
- uint64_t bprch:2;
- uint64_t ext_zqcs_dis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t auto_dclkdis:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t nxm_write_en:1;
- uint64_t elev_prio_dis:1;
- uint64_t inorder_wr:1;
- uint64_t inorder_rd:1;
- uint64_t throttle_wr:1;
- uint64_t throttle_rd:1;
- uint64_t fprch2:2;
- uint64_t pocas:1;
- uint64_t ddr2t:1;
- uint64_t bwcnt:1;
- uint64_t rdimm_ena:1;
- #else
- uint64_t rdimm_ena:1;
- uint64_t bwcnt:1;
- uint64_t ddr2t:1;
- uint64_t pocas:1;
- uint64_t fprch2:2;
- uint64_t throttle_rd:1;
- uint64_t throttle_wr:1;
- uint64_t inorder_rd:1;
- uint64_t inorder_wr:1;
- uint64_t elev_prio_dis:1;
- uint64_t nxm_write_en:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t auto_dclkdis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t ext_zqcs_dis:1;
- uint64_t bprch:2;
- uint64_t wodt_bprch:1;
- uint64_t rodt_bprch:1;
- uint64_t reserved_24_63:40;
- #endif
- } cn63xx;
- struct cvmx_lmcx_control_cn63xx cn63xxp1;
- struct cvmx_lmcx_control_cn66xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t scramble_ena:1;
- uint64_t reserved_24_62:39;
- uint64_t rodt_bprch:1;
- uint64_t wodt_bprch:1;
- uint64_t bprch:2;
- uint64_t ext_zqcs_dis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t auto_dclkdis:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t nxm_write_en:1;
- uint64_t elev_prio_dis:1;
- uint64_t inorder_wr:1;
- uint64_t inorder_rd:1;
- uint64_t throttle_wr:1;
- uint64_t throttle_rd:1;
- uint64_t fprch2:2;
- uint64_t pocas:1;
- uint64_t ddr2t:1;
- uint64_t bwcnt:1;
- uint64_t rdimm_ena:1;
- #else
- uint64_t rdimm_ena:1;
- uint64_t bwcnt:1;
- uint64_t ddr2t:1;
- uint64_t pocas:1;
- uint64_t fprch2:2;
- uint64_t throttle_rd:1;
- uint64_t throttle_wr:1;
- uint64_t inorder_rd:1;
- uint64_t inorder_wr:1;
- uint64_t elev_prio_dis:1;
- uint64_t nxm_write_en:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t auto_dclkdis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t ext_zqcs_dis:1;
- uint64_t bprch:2;
- uint64_t wodt_bprch:1;
- uint64_t rodt_bprch:1;
- uint64_t reserved_24_62:39;
- uint64_t scramble_ena:1;
- #endif
- } cn66xx;
- struct cvmx_lmcx_control_cn68xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_63_63:1;
- uint64_t thrcnt:12;
- uint64_t persub:8;
- uint64_t thrmax:4;
- uint64_t crm_cnt:5;
- uint64_t crm_thr:5;
- uint64_t crm_max:5;
- uint64_t rodt_bprch:1;
- uint64_t wodt_bprch:1;
- uint64_t bprch:2;
- uint64_t ext_zqcs_dis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t auto_dclkdis:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t nxm_write_en:1;
- uint64_t elev_prio_dis:1;
- uint64_t inorder_wr:1;
- uint64_t inorder_rd:1;
- uint64_t throttle_wr:1;
- uint64_t throttle_rd:1;
- uint64_t fprch2:2;
- uint64_t pocas:1;
- uint64_t ddr2t:1;
- uint64_t bwcnt:1;
- uint64_t rdimm_ena:1;
- #else
- uint64_t rdimm_ena:1;
- uint64_t bwcnt:1;
- uint64_t ddr2t:1;
- uint64_t pocas:1;
- uint64_t fprch2:2;
- uint64_t throttle_rd:1;
- uint64_t throttle_wr:1;
- uint64_t inorder_rd:1;
- uint64_t inorder_wr:1;
- uint64_t elev_prio_dis:1;
- uint64_t nxm_write_en:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t auto_dclkdis:1;
- uint64_t int_zqcs_dis:1;
- uint64_t ext_zqcs_dis:1;
- uint64_t bprch:2;
- uint64_t wodt_bprch:1;
- uint64_t rodt_bprch:1;
- uint64_t crm_max:5;
- uint64_t crm_thr:5;
- uint64_t crm_cnt:5;
- uint64_t thrmax:4;
- uint64_t persub:8;
- uint64_t thrcnt:12;
- uint64_t reserved_63_63:1;
- #endif
- } cn68xx;
- struct cvmx_lmcx_control_cn68xx cn68xxp1;
- struct cvmx_lmcx_control_cn66xx cnf71xx;
- };
- union cvmx_lmcx_ctl {
- uint64_t u64;
- struct cvmx_lmcx_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t pll_div2:1;
- uint64_t pll_bypass:1;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t reserved_10_11:2;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t reserved_10_11:2;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t pll_bypass:1;
- uint64_t pll_div2:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ctl_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t pll_div2:1;
- uint64_t pll_bypass:1;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t dreset:1;
- uint64_t mode32b:1;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t mode32b:1;
- uint64_t dreset:1;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t pll_bypass:1;
- uint64_t pll_div2:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn30xx;
- struct cvmx_lmcx_ctl_cn30xx cn31xx;
- struct cvmx_lmcx_ctl_cn38xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t reserved_16_17:2;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t set_zero:1;
- uint64_t mode128b:1;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t mode128b:1;
- uint64_t set_zero:1;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t reserved_16_17:2;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn38xx;
- struct cvmx_lmcx_ctl_cn38xx cn38xxp2;
- struct cvmx_lmcx_ctl_cn50xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t reserved_17_17:1;
- uint64_t pll_bypass:1;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t dreset:1;
- uint64_t mode32b:1;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t mode32b:1;
- uint64_t dreset:1;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t pll_bypass:1;
- uint64_t reserved_17_17:1;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn50xx;
- struct cvmx_lmcx_ctl_cn52xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t reserved_16_17:2;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t dreset:1;
- uint64_t mode32b:1;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t mode32b:1;
- uint64_t dreset:1;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t reserved_16_17:2;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn52xx;
- struct cvmx_lmcx_ctl_cn52xx cn52xxp1;
- struct cvmx_lmcx_ctl_cn52xx cn56xx;
- struct cvmx_lmcx_ctl_cn52xx cn56xxp1;
- struct cvmx_lmcx_ctl_cn58xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:4;
- uint64_t ddr__pctl:4;
- uint64_t slow_scf:1;
- uint64_t xor_bank:1;
- uint64_t max_write_batch:4;
- uint64_t reserved_16_17:2;
- uint64_t rdimm_ena:1;
- uint64_t r2r_slot:1;
- uint64_t inorder_mwf:1;
- uint64_t inorder_mrf:1;
- uint64_t dreset:1;
- uint64_t mode128b:1;
- uint64_t fprch2:1;
- uint64_t bprch:1;
- uint64_t sil_lat:2;
- uint64_t tskw:2;
- uint64_t qs_dic:2;
- uint64_t dic:2;
- #else
- uint64_t dic:2;
- uint64_t qs_dic:2;
- uint64_t tskw:2;
- uint64_t sil_lat:2;
- uint64_t bprch:1;
- uint64_t fprch2:1;
- uint64_t mode128b:1;
- uint64_t dreset:1;
- uint64_t inorder_mrf:1;
- uint64_t inorder_mwf:1;
- uint64_t r2r_slot:1;
- uint64_t rdimm_ena:1;
- uint64_t reserved_16_17:2;
- uint64_t max_write_batch:4;
- uint64_t xor_bank:1;
- uint64_t slow_scf:1;
- uint64_t ddr__pctl:4;
- uint64_t ddr__nctl:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn58xx;
- struct cvmx_lmcx_ctl_cn58xx cn58xxp1;
- };
- union cvmx_lmcx_ctl1 {
- uint64_t u64;
- struct cvmx_lmcx_ctl1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_21_63:43;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t sequence:3;
- uint64_t sil_mode:1;
- uint64_t dcc_enable:1;
- uint64_t reserved_2_7:6;
- uint64_t data_layout:2;
- #else
- uint64_t data_layout:2;
- uint64_t reserved_2_7:6;
- uint64_t dcc_enable:1;
- uint64_t sil_mode:1;
- uint64_t sequence:3;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reserved_21_63:43;
- #endif
- } s;
- struct cvmx_lmcx_ctl1_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_2_63:62;
- uint64_t data_layout:2;
- #else
- uint64_t data_layout:2;
- uint64_t reserved_2_63:62;
- #endif
- } cn30xx;
- struct cvmx_lmcx_ctl1_cn50xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_10_63:54;
- uint64_t sil_mode:1;
- uint64_t dcc_enable:1;
- uint64_t reserved_2_7:6;
- uint64_t data_layout:2;
- #else
- uint64_t data_layout:2;
- uint64_t reserved_2_7:6;
- uint64_t dcc_enable:1;
- uint64_t sil_mode:1;
- uint64_t reserved_10_63:54;
- #endif
- } cn50xx;
- struct cvmx_lmcx_ctl1_cn52xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_21_63:43;
- uint64_t ecc_adr:1;
- uint64_t forcewrite:4;
- uint64_t idlepower:3;
- uint64_t sequence:3;
- uint64_t sil_mode:1;
- uint64_t dcc_enable:1;
- uint64_t reserved_0_7:8;
- #else
- uint64_t reserved_0_7:8;
- uint64_t dcc_enable:1;
- uint64_t sil_mode:1;
- uint64_t sequence:3;
- uint64_t idlepower:3;
- uint64_t forcewrite:4;
- uint64_t ecc_adr:1;
- uint64_t reserved_21_63:43;
- #endif
- } cn52xx;
- struct cvmx_lmcx_ctl1_cn52xx cn52xxp1;
- struct cvmx_lmcx_ctl1_cn52xx cn56xx;
- struct cvmx_lmcx_ctl1_cn52xx cn56xxp1;
- struct cvmx_lmcx_ctl1_cn58xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_10_63:54;
- uint64_t sil_mode:1;
- uint64_t dcc_enable:1;
- uint64_t reserved_0_7:8;
- #else
- uint64_t reserved_0_7:8;
- uint64_t dcc_enable:1;
- uint64_t sil_mode:1;
- uint64_t reserved_10_63:54;
- #endif
- } cn58xx;
- struct cvmx_lmcx_ctl1_cn58xx cn58xxp1;
- };
- union cvmx_lmcx_dclk_cnt {
- uint64_t u64;
- struct cvmx_lmcx_dclk_cnt_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t dclkcnt:64;
- #else
- uint64_t dclkcnt:64;
- #endif
- } s;
- struct cvmx_lmcx_dclk_cnt_s cn61xx;
- struct cvmx_lmcx_dclk_cnt_s cn63xx;
- struct cvmx_lmcx_dclk_cnt_s cn63xxp1;
- struct cvmx_lmcx_dclk_cnt_s cn66xx;
- struct cvmx_lmcx_dclk_cnt_s cn68xx;
- struct cvmx_lmcx_dclk_cnt_s cn68xxp1;
- struct cvmx_lmcx_dclk_cnt_s cnf71xx;
- };
- union cvmx_lmcx_dclk_cnt_hi {
- uint64_t u64;
- struct cvmx_lmcx_dclk_cnt_hi_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t dclkcnt_hi:32;
- #else
- uint64_t dclkcnt_hi:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_dclk_cnt_hi_s cn30xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn31xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn38xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn38xxp2;
- struct cvmx_lmcx_dclk_cnt_hi_s cn50xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn52xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn52xxp1;
- struct cvmx_lmcx_dclk_cnt_hi_s cn56xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn56xxp1;
- struct cvmx_lmcx_dclk_cnt_hi_s cn58xx;
- struct cvmx_lmcx_dclk_cnt_hi_s cn58xxp1;
- };
- union cvmx_lmcx_dclk_cnt_lo {
- uint64_t u64;
- struct cvmx_lmcx_dclk_cnt_lo_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t dclkcnt_lo:32;
- #else
- uint64_t dclkcnt_lo:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_dclk_cnt_lo_s cn30xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn31xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn38xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn38xxp2;
- struct cvmx_lmcx_dclk_cnt_lo_s cn50xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn52xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn52xxp1;
- struct cvmx_lmcx_dclk_cnt_lo_s cn56xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn56xxp1;
- struct cvmx_lmcx_dclk_cnt_lo_s cn58xx;
- struct cvmx_lmcx_dclk_cnt_lo_s cn58xxp1;
- };
- union cvmx_lmcx_dclk_ctl {
- uint64_t u64;
- struct cvmx_lmcx_dclk_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_8_63:56;
- uint64_t off90_ena:1;
- uint64_t dclk90_byp:1;
- uint64_t dclk90_ld:1;
- uint64_t dclk90_vlu:5;
- #else
- uint64_t dclk90_vlu:5;
- uint64_t dclk90_ld:1;
- uint64_t dclk90_byp:1;
- uint64_t off90_ena:1;
- uint64_t reserved_8_63:56;
- #endif
- } s;
- struct cvmx_lmcx_dclk_ctl_s cn56xx;
- struct cvmx_lmcx_dclk_ctl_s cn56xxp1;
- };
- union cvmx_lmcx_ddr2_ctl {
- uint64_t u64;
- struct cvmx_lmcx_ddr2_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t bank8:1;
- uint64_t burst8:1;
- uint64_t addlat:3;
- uint64_t pocas:1;
- uint64_t bwcnt:1;
- uint64_t twr:3;
- uint64_t silo_hc:1;
- uint64_t ddr_eof:4;
- uint64_t tfaw:5;
- uint64_t crip_mode:1;
- uint64_t ddr2t:1;
- uint64_t odt_ena:1;
- uint64_t qdll_ena:1;
- uint64_t dll90_vlu:5;
- uint64_t dll90_byp:1;
- uint64_t rdqs:1;
- uint64_t ddr2:1;
- #else
- uint64_t ddr2:1;
- uint64_t rdqs:1;
- uint64_t dll90_byp:1;
- uint64_t dll90_vlu:5;
- uint64_t qdll_ena:1;
- uint64_t odt_ena:1;
- uint64_t ddr2t:1;
- uint64_t crip_mode:1;
- uint64_t tfaw:5;
- uint64_t ddr_eof:4;
- uint64_t silo_hc:1;
- uint64_t twr:3;
- uint64_t bwcnt:1;
- uint64_t pocas:1;
- uint64_t addlat:3;
- uint64_t burst8:1;
- uint64_t bank8:1;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ddr2_ctl_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t bank8:1;
- uint64_t burst8:1;
- uint64_t addlat:3;
- uint64_t pocas:1;
- uint64_t bwcnt:1;
- uint64_t twr:3;
- uint64_t silo_hc:1;
- uint64_t ddr_eof:4;
- uint64_t tfaw:5;
- uint64_t crip_mode:1;
- uint64_t ddr2t:1;
- uint64_t odt_ena:1;
- uint64_t qdll_ena:1;
- uint64_t dll90_vlu:5;
- uint64_t dll90_byp:1;
- uint64_t reserved_1_1:1;
- uint64_t ddr2:1;
- #else
- uint64_t ddr2:1;
- uint64_t reserved_1_1:1;
- uint64_t dll90_byp:1;
- uint64_t dll90_vlu:5;
- uint64_t qdll_ena:1;
- uint64_t odt_ena:1;
- uint64_t ddr2t:1;
- uint64_t crip_mode:1;
- uint64_t tfaw:5;
- uint64_t ddr_eof:4;
- uint64_t silo_hc:1;
- uint64_t twr:3;
- uint64_t bwcnt:1;
- uint64_t pocas:1;
- uint64_t addlat:3;
- uint64_t burst8:1;
- uint64_t bank8:1;
- uint64_t reserved_32_63:32;
- #endif
- } cn30xx;
- struct cvmx_lmcx_ddr2_ctl_cn30xx cn31xx;
- struct cvmx_lmcx_ddr2_ctl_s cn38xx;
- struct cvmx_lmcx_ddr2_ctl_s cn38xxp2;
- struct cvmx_lmcx_ddr2_ctl_s cn50xx;
- struct cvmx_lmcx_ddr2_ctl_s cn52xx;
- struct cvmx_lmcx_ddr2_ctl_s cn52xxp1;
- struct cvmx_lmcx_ddr2_ctl_s cn56xx;
- struct cvmx_lmcx_ddr2_ctl_s cn56xxp1;
- struct cvmx_lmcx_ddr2_ctl_s cn58xx;
- struct cvmx_lmcx_ddr2_ctl_s cn58xxp1;
- };
- union cvmx_lmcx_ddr_pll_ctl {
- uint64_t u64;
- struct cvmx_lmcx_ddr_pll_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_27_63:37;
- uint64_t jtg_test_mode:1;
- uint64_t dfm_div_reset:1;
- uint64_t dfm_ps_en:3;
- uint64_t ddr_div_reset:1;
- uint64_t ddr_ps_en:3;
- uint64_t diffamp:4;
- uint64_t cps:3;
- uint64_t cpb:3;
- uint64_t reset_n:1;
- uint64_t clkf:7;
- #else
- uint64_t clkf:7;
- uint64_t reset_n:1;
- uint64_t cpb:3;
- uint64_t cps:3;
- uint64_t diffamp:4;
- uint64_t ddr_ps_en:3;
- uint64_t ddr_div_reset:1;
- uint64_t dfm_ps_en:3;
- uint64_t dfm_div_reset:1;
- uint64_t jtg_test_mode:1;
- uint64_t reserved_27_63:37;
- #endif
- } s;
- struct cvmx_lmcx_ddr_pll_ctl_s cn61xx;
- struct cvmx_lmcx_ddr_pll_ctl_s cn63xx;
- struct cvmx_lmcx_ddr_pll_ctl_s cn63xxp1;
- struct cvmx_lmcx_ddr_pll_ctl_s cn66xx;
- struct cvmx_lmcx_ddr_pll_ctl_s cn68xx;
- struct cvmx_lmcx_ddr_pll_ctl_s cn68xxp1;
- struct cvmx_lmcx_ddr_pll_ctl_s cnf71xx;
- };
- union cvmx_lmcx_delay_cfg {
- uint64_t u64;
- struct cvmx_lmcx_delay_cfg_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_15_63:49;
- uint64_t dq:5;
- uint64_t cmd:5;
- uint64_t clk:5;
- #else
- uint64_t clk:5;
- uint64_t cmd:5;
- uint64_t dq:5;
- uint64_t reserved_15_63:49;
- #endif
- } s;
- struct cvmx_lmcx_delay_cfg_s cn30xx;
- struct cvmx_lmcx_delay_cfg_cn38xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_14_63:50;
- uint64_t dq:4;
- uint64_t reserved_9_9:1;
- uint64_t cmd:4;
- uint64_t reserved_4_4:1;
- uint64_t clk:4;
- #else
- uint64_t clk:4;
- uint64_t reserved_4_4:1;
- uint64_t cmd:4;
- uint64_t reserved_9_9:1;
- uint64_t dq:4;
- uint64_t reserved_14_63:50;
- #endif
- } cn38xx;
- struct cvmx_lmcx_delay_cfg_cn38xx cn50xx;
- struct cvmx_lmcx_delay_cfg_cn38xx cn52xx;
- struct cvmx_lmcx_delay_cfg_cn38xx cn52xxp1;
- struct cvmx_lmcx_delay_cfg_cn38xx cn56xx;
- struct cvmx_lmcx_delay_cfg_cn38xx cn56xxp1;
- struct cvmx_lmcx_delay_cfg_cn38xx cn58xx;
- struct cvmx_lmcx_delay_cfg_cn38xx cn58xxp1;
- };
- union cvmx_lmcx_dimmx_params {
- uint64_t u64;
- struct cvmx_lmcx_dimmx_params_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t rc15:4;
- uint64_t rc14:4;
- uint64_t rc13:4;
- uint64_t rc12:4;
- uint64_t rc11:4;
- uint64_t rc10:4;
- uint64_t rc9:4;
- uint64_t rc8:4;
- uint64_t rc7:4;
- uint64_t rc6:4;
- uint64_t rc5:4;
- uint64_t rc4:4;
- uint64_t rc3:4;
- uint64_t rc2:4;
- uint64_t rc1:4;
- uint64_t rc0:4;
- #else
- uint64_t rc0:4;
- uint64_t rc1:4;
- uint64_t rc2:4;
- uint64_t rc3:4;
- uint64_t rc4:4;
- uint64_t rc5:4;
- uint64_t rc6:4;
- uint64_t rc7:4;
- uint64_t rc8:4;
- uint64_t rc9:4;
- uint64_t rc10:4;
- uint64_t rc11:4;
- uint64_t rc12:4;
- uint64_t rc13:4;
- uint64_t rc14:4;
- uint64_t rc15:4;
- #endif
- } s;
- struct cvmx_lmcx_dimmx_params_s cn61xx;
- struct cvmx_lmcx_dimmx_params_s cn63xx;
- struct cvmx_lmcx_dimmx_params_s cn63xxp1;
- struct cvmx_lmcx_dimmx_params_s cn66xx;
- struct cvmx_lmcx_dimmx_params_s cn68xx;
- struct cvmx_lmcx_dimmx_params_s cn68xxp1;
- struct cvmx_lmcx_dimmx_params_s cnf71xx;
- };
- union cvmx_lmcx_dimm_ctl {
- uint64_t u64;
- struct cvmx_lmcx_dimm_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_46_63:18;
- uint64_t parity:1;
- uint64_t tcws:13;
- uint64_t dimm1_wmask:16;
- uint64_t dimm0_wmask:16;
- #else
- uint64_t dimm0_wmask:16;
- uint64_t dimm1_wmask:16;
- uint64_t tcws:13;
- uint64_t parity:1;
- uint64_t reserved_46_63:18;
- #endif
- } s;
- struct cvmx_lmcx_dimm_ctl_s cn61xx;
- struct cvmx_lmcx_dimm_ctl_s cn63xx;
- struct cvmx_lmcx_dimm_ctl_s cn63xxp1;
- struct cvmx_lmcx_dimm_ctl_s cn66xx;
- struct cvmx_lmcx_dimm_ctl_s cn68xx;
- struct cvmx_lmcx_dimm_ctl_s cn68xxp1;
- struct cvmx_lmcx_dimm_ctl_s cnf71xx;
- };
- union cvmx_lmcx_dll_ctl {
- uint64_t u64;
- struct cvmx_lmcx_dll_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_8_63:56;
- uint64_t dreset:1;
- uint64_t dll90_byp:1;
- uint64_t dll90_ena:1;
- uint64_t dll90_vlu:5;
- #else
- uint64_t dll90_vlu:5;
- uint64_t dll90_ena:1;
- uint64_t dll90_byp:1;
- uint64_t dreset:1;
- uint64_t reserved_8_63:56;
- #endif
- } s;
- struct cvmx_lmcx_dll_ctl_s cn52xx;
- struct cvmx_lmcx_dll_ctl_s cn52xxp1;
- struct cvmx_lmcx_dll_ctl_s cn56xx;
- struct cvmx_lmcx_dll_ctl_s cn56xxp1;
- };
- union cvmx_lmcx_dll_ctl2 {
- uint64_t u64;
- struct cvmx_lmcx_dll_ctl2_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_16_63:48;
- uint64_t intf_en:1;
- uint64_t dll_bringup:1;
- uint64_t dreset:1;
- uint64_t quad_dll_ena:1;
- uint64_t byp_sel:4;
- uint64_t byp_setting:8;
- #else
- uint64_t byp_setting:8;
- uint64_t byp_sel:4;
- uint64_t quad_dll_ena:1;
- uint64_t dreset:1;
- uint64_t dll_bringup:1;
- uint64_t intf_en:1;
- uint64_t reserved_16_63:48;
- #endif
- } s;
- struct cvmx_lmcx_dll_ctl2_s cn61xx;
- struct cvmx_lmcx_dll_ctl2_cn63xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_15_63:49;
- uint64_t dll_bringup:1;
- uint64_t dreset:1;
- uint64_t quad_dll_ena:1;
- uint64_t byp_sel:4;
- uint64_t byp_setting:8;
- #else
- uint64_t byp_setting:8;
- uint64_t byp_sel:4;
- uint64_t quad_dll_ena:1;
- uint64_t dreset:1;
- uint64_t dll_bringup:1;
- uint64_t reserved_15_63:49;
- #endif
- } cn63xx;
- struct cvmx_lmcx_dll_ctl2_cn63xx cn63xxp1;
- struct cvmx_lmcx_dll_ctl2_cn63xx cn66xx;
- struct cvmx_lmcx_dll_ctl2_s cn68xx;
- struct cvmx_lmcx_dll_ctl2_s cn68xxp1;
- struct cvmx_lmcx_dll_ctl2_s cnf71xx;
- };
- union cvmx_lmcx_dll_ctl3 {
- uint64_t u64;
- struct cvmx_lmcx_dll_ctl3_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_41_63:23;
- uint64_t dclk90_fwd:1;
- uint64_t ddr_90_dly_byp:1;
- uint64_t dclk90_recal_dis:1;
- uint64_t dclk90_byp_sel:1;
- uint64_t dclk90_byp_setting:8;
- uint64_t dll_fast:1;
- uint64_t dll90_setting:8;
- uint64_t fine_tune_mode:1;
- uint64_t dll_mode:1;
- uint64_t dll90_byte_sel:4;
- uint64_t offset_ena:1;
- uint64_t load_offset:1;
- uint64_t mode_sel:2;
- uint64_t byte_sel:4;
- uint64_t offset:6;
- #else
- uint64_t offset:6;
- uint64_t byte_sel:4;
- uint64_t mode_sel:2;
- uint64_t load_offset:1;
- uint64_t offset_ena:1;
- uint64_t dll90_byte_sel:4;
- uint64_t dll_mode:1;
- uint64_t fine_tune_mode:1;
- uint64_t dll90_setting:8;
- uint64_t dll_fast:1;
- uint64_t dclk90_byp_setting:8;
- uint64_t dclk90_byp_sel:1;
- uint64_t dclk90_recal_dis:1;
- uint64_t ddr_90_dly_byp:1;
- uint64_t dclk90_fwd:1;
- uint64_t reserved_41_63:23;
- #endif
- } s;
- struct cvmx_lmcx_dll_ctl3_s cn61xx;
- struct cvmx_lmcx_dll_ctl3_cn63xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_29_63:35;
- uint64_t dll_fast:1;
- uint64_t dll90_setting:8;
- uint64_t fine_tune_mode:1;
- uint64_t dll_mode:1;
- uint64_t dll90_byte_sel:4;
- uint64_t offset_ena:1;
- uint64_t load_offset:1;
- uint64_t mode_sel:2;
- uint64_t byte_sel:4;
- uint64_t offset:6;
- #else
- uint64_t offset:6;
- uint64_t byte_sel:4;
- uint64_t mode_sel:2;
- uint64_t load_offset:1;
- uint64_t offset_ena:1;
- uint64_t dll90_byte_sel:4;
- uint64_t dll_mode:1;
- uint64_t fine_tune_mode:1;
- uint64_t dll90_setting:8;
- uint64_t dll_fast:1;
- uint64_t reserved_29_63:35;
- #endif
- } cn63xx;
- struct cvmx_lmcx_dll_ctl3_cn63xx cn63xxp1;
- struct cvmx_lmcx_dll_ctl3_cn63xx cn66xx;
- struct cvmx_lmcx_dll_ctl3_s cn68xx;
- struct cvmx_lmcx_dll_ctl3_s cn68xxp1;
- struct cvmx_lmcx_dll_ctl3_s cnf71xx;
- };
- union cvmx_lmcx_dual_memcfg {
- uint64_t u64;
- struct cvmx_lmcx_dual_memcfg_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_20_63:44;
- uint64_t bank8:1;
- uint64_t row_lsb:3;
- uint64_t reserved_8_15:8;
- uint64_t cs_mask:8;
- #else
- uint64_t cs_mask:8;
- uint64_t reserved_8_15:8;
- uint64_t row_lsb:3;
- uint64_t bank8:1;
- uint64_t reserved_20_63:44;
- #endif
- } s;
- struct cvmx_lmcx_dual_memcfg_s cn50xx;
- struct cvmx_lmcx_dual_memcfg_s cn52xx;
- struct cvmx_lmcx_dual_memcfg_s cn52xxp1;
- struct cvmx_lmcx_dual_memcfg_s cn56xx;
- struct cvmx_lmcx_dual_memcfg_s cn56xxp1;
- struct cvmx_lmcx_dual_memcfg_s cn58xx;
- struct cvmx_lmcx_dual_memcfg_s cn58xxp1;
- struct cvmx_lmcx_dual_memcfg_cn61xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_19_63:45;
- uint64_t row_lsb:3;
- uint64_t reserved_8_15:8;
- uint64_t cs_mask:8;
- #else
- uint64_t cs_mask:8;
- uint64_t reserved_8_15:8;
- uint64_t row_lsb:3;
- uint64_t reserved_19_63:45;
- #endif
- } cn61xx;
- struct cvmx_lmcx_dual_memcfg_cn61xx cn63xx;
- struct cvmx_lmcx_dual_memcfg_cn61xx cn63xxp1;
- struct cvmx_lmcx_dual_memcfg_cn61xx cn66xx;
- struct cvmx_lmcx_dual_memcfg_cn61xx cn68xx;
- struct cvmx_lmcx_dual_memcfg_cn61xx cn68xxp1;
- struct cvmx_lmcx_dual_memcfg_cn61xx cnf71xx;
- };
- union cvmx_lmcx_ecc_synd {
- uint64_t u64;
- struct cvmx_lmcx_ecc_synd_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t mrdsyn3:8;
- uint64_t mrdsyn2:8;
- uint64_t mrdsyn1:8;
- uint64_t mrdsyn0:8;
- #else
- uint64_t mrdsyn0:8;
- uint64_t mrdsyn1:8;
- uint64_t mrdsyn2:8;
- uint64_t mrdsyn3:8;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ecc_synd_s cn30xx;
- struct cvmx_lmcx_ecc_synd_s cn31xx;
- struct cvmx_lmcx_ecc_synd_s cn38xx;
- struct cvmx_lmcx_ecc_synd_s cn38xxp2;
- struct cvmx_lmcx_ecc_synd_s cn50xx;
- struct cvmx_lmcx_ecc_synd_s cn52xx;
- struct cvmx_lmcx_ecc_synd_s cn52xxp1;
- struct cvmx_lmcx_ecc_synd_s cn56xx;
- struct cvmx_lmcx_ecc_synd_s cn56xxp1;
- struct cvmx_lmcx_ecc_synd_s cn58xx;
- struct cvmx_lmcx_ecc_synd_s cn58xxp1;
- struct cvmx_lmcx_ecc_synd_s cn61xx;
- struct cvmx_lmcx_ecc_synd_s cn63xx;
- struct cvmx_lmcx_ecc_synd_s cn63xxp1;
- struct cvmx_lmcx_ecc_synd_s cn66xx;
- struct cvmx_lmcx_ecc_synd_s cn68xx;
- struct cvmx_lmcx_ecc_synd_s cn68xxp1;
- struct cvmx_lmcx_ecc_synd_s cnf71xx;
- };
- union cvmx_lmcx_fadr {
- uint64_t u64;
- struct cvmx_lmcx_fadr_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_0_63:64;
- #else
- uint64_t reserved_0_63:64;
- #endif
- } s;
- struct cvmx_lmcx_fadr_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t fdimm:2;
- uint64_t fbunk:1;
- uint64_t fbank:3;
- uint64_t frow:14;
- uint64_t fcol:12;
- #else
- uint64_t fcol:12;
- uint64_t frow:14;
- uint64_t fbank:3;
- uint64_t fbunk:1;
- uint64_t fdimm:2;
- uint64_t reserved_32_63:32;
- #endif
- } cn30xx;
- struct cvmx_lmcx_fadr_cn30xx cn31xx;
- struct cvmx_lmcx_fadr_cn30xx cn38xx;
- struct cvmx_lmcx_fadr_cn30xx cn38xxp2;
- struct cvmx_lmcx_fadr_cn30xx cn50xx;
- struct cvmx_lmcx_fadr_cn30xx cn52xx;
- struct cvmx_lmcx_fadr_cn30xx cn52xxp1;
- struct cvmx_lmcx_fadr_cn30xx cn56xx;
- struct cvmx_lmcx_fadr_cn30xx cn56xxp1;
- struct cvmx_lmcx_fadr_cn30xx cn58xx;
- struct cvmx_lmcx_fadr_cn30xx cn58xxp1;
- struct cvmx_lmcx_fadr_cn61xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_36_63:28;
- uint64_t fdimm:2;
- uint64_t fbunk:1;
- uint64_t fbank:3;
- uint64_t frow:16;
- uint64_t fcol:14;
- #else
- uint64_t fcol:14;
- uint64_t frow:16;
- uint64_t fbank:3;
- uint64_t fbunk:1;
- uint64_t fdimm:2;
- uint64_t reserved_36_63:28;
- #endif
- } cn61xx;
- struct cvmx_lmcx_fadr_cn61xx cn63xx;
- struct cvmx_lmcx_fadr_cn61xx cn63xxp1;
- struct cvmx_lmcx_fadr_cn61xx cn66xx;
- struct cvmx_lmcx_fadr_cn61xx cn68xx;
- struct cvmx_lmcx_fadr_cn61xx cn68xxp1;
- struct cvmx_lmcx_fadr_cn61xx cnf71xx;
- };
- union cvmx_lmcx_ifb_cnt {
- uint64_t u64;
- struct cvmx_lmcx_ifb_cnt_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t ifbcnt:64;
- #else
- uint64_t ifbcnt:64;
- #endif
- } s;
- struct cvmx_lmcx_ifb_cnt_s cn61xx;
- struct cvmx_lmcx_ifb_cnt_s cn63xx;
- struct cvmx_lmcx_ifb_cnt_s cn63xxp1;
- struct cvmx_lmcx_ifb_cnt_s cn66xx;
- struct cvmx_lmcx_ifb_cnt_s cn68xx;
- struct cvmx_lmcx_ifb_cnt_s cn68xxp1;
- struct cvmx_lmcx_ifb_cnt_s cnf71xx;
- };
- union cvmx_lmcx_ifb_cnt_hi {
- uint64_t u64;
- struct cvmx_lmcx_ifb_cnt_hi_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ifbcnt_hi:32;
- #else
- uint64_t ifbcnt_hi:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ifb_cnt_hi_s cn30xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn31xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn38xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn38xxp2;
- struct cvmx_lmcx_ifb_cnt_hi_s cn50xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn52xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn52xxp1;
- struct cvmx_lmcx_ifb_cnt_hi_s cn56xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn56xxp1;
- struct cvmx_lmcx_ifb_cnt_hi_s cn58xx;
- struct cvmx_lmcx_ifb_cnt_hi_s cn58xxp1;
- };
- union cvmx_lmcx_ifb_cnt_lo {
- uint64_t u64;
- struct cvmx_lmcx_ifb_cnt_lo_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ifbcnt_lo:32;
- #else
- uint64_t ifbcnt_lo:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ifb_cnt_lo_s cn30xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn31xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn38xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn38xxp2;
- struct cvmx_lmcx_ifb_cnt_lo_s cn50xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn52xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn52xxp1;
- struct cvmx_lmcx_ifb_cnt_lo_s cn56xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn56xxp1;
- struct cvmx_lmcx_ifb_cnt_lo_s cn58xx;
- struct cvmx_lmcx_ifb_cnt_lo_s cn58xxp1;
- };
- union cvmx_lmcx_int {
- uint64_t u64;
- struct cvmx_lmcx_int_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_9_63:55;
- uint64_t ded_err:4;
- uint64_t sec_err:4;
- uint64_t nxm_wr_err:1;
- #else
- uint64_t nxm_wr_err:1;
- uint64_t sec_err:4;
- uint64_t ded_err:4;
- uint64_t reserved_9_63:55;
- #endif
- } s;
- struct cvmx_lmcx_int_s cn61xx;
- struct cvmx_lmcx_int_s cn63xx;
- struct cvmx_lmcx_int_s cn63xxp1;
- struct cvmx_lmcx_int_s cn66xx;
- struct cvmx_lmcx_int_s cn68xx;
- struct cvmx_lmcx_int_s cn68xxp1;
- struct cvmx_lmcx_int_s cnf71xx;
- };
- union cvmx_lmcx_int_en {
- uint64_t u64;
- struct cvmx_lmcx_int_en_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_3_63:61;
- uint64_t intr_ded_ena:1;
- uint64_t intr_sec_ena:1;
- uint64_t intr_nxm_wr_ena:1;
- #else
- uint64_t intr_nxm_wr_ena:1;
- uint64_t intr_sec_ena:1;
- uint64_t intr_ded_ena:1;
- uint64_t reserved_3_63:61;
- #endif
- } s;
- struct cvmx_lmcx_int_en_s cn61xx;
- struct cvmx_lmcx_int_en_s cn63xx;
- struct cvmx_lmcx_int_en_s cn63xxp1;
- struct cvmx_lmcx_int_en_s cn66xx;
- struct cvmx_lmcx_int_en_s cn68xx;
- struct cvmx_lmcx_int_en_s cn68xxp1;
- struct cvmx_lmcx_int_en_s cnf71xx;
- };
- union cvmx_lmcx_mem_cfg0 {
- uint64_t u64;
- struct cvmx_lmcx_mem_cfg0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t reset:1;
- uint64_t silo_qc:1;
- uint64_t bunk_ena:1;
- uint64_t ded_err:4;
- uint64_t sec_err:4;
- uint64_t intr_ded_ena:1;
- uint64_t intr_sec_ena:1;
- uint64_t tcl:4;
- uint64_t ref_int:6;
- uint64_t pbank_lsb:4;
- uint64_t row_lsb:3;
- uint64_t ecc_ena:1;
- uint64_t init_start:1;
- #else
- uint64_t init_start:1;
- uint64_t ecc_ena:1;
- uint64_t row_lsb:3;
- uint64_t pbank_lsb:4;
- uint64_t ref_int:6;
- uint64_t tcl:4;
- uint64_t intr_sec_ena:1;
- uint64_t intr_ded_ena:1;
- uint64_t sec_err:4;
- uint64_t ded_err:4;
- uint64_t bunk_ena:1;
- uint64_t silo_qc:1;
- uint64_t reset:1;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_mem_cfg0_s cn30xx;
- struct cvmx_lmcx_mem_cfg0_s cn31xx;
- struct cvmx_lmcx_mem_cfg0_s cn38xx;
- struct cvmx_lmcx_mem_cfg0_s cn38xxp2;
- struct cvmx_lmcx_mem_cfg0_s cn50xx;
- struct cvmx_lmcx_mem_cfg0_s cn52xx;
- struct cvmx_lmcx_mem_cfg0_s cn52xxp1;
- struct cvmx_lmcx_mem_cfg0_s cn56xx;
- struct cvmx_lmcx_mem_cfg0_s cn56xxp1;
- struct cvmx_lmcx_mem_cfg0_s cn58xx;
- struct cvmx_lmcx_mem_cfg0_s cn58xxp1;
- };
- union cvmx_lmcx_mem_cfg1 {
- uint64_t u64;
- struct cvmx_lmcx_mem_cfg1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t comp_bypass:1;
- uint64_t trrd:3;
- uint64_t caslat:3;
- uint64_t tmrd:3;
- uint64_t trfc:5;
- uint64_t trp:4;
- uint64_t twtr:4;
- uint64_t trcd:4;
- uint64_t tras:5;
- #else
- uint64_t tras:5;
- uint64_t trcd:4;
- uint64_t twtr:4;
- uint64_t trp:4;
- uint64_t trfc:5;
- uint64_t tmrd:3;
- uint64_t caslat:3;
- uint64_t trrd:3;
- uint64_t comp_bypass:1;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_mem_cfg1_s cn30xx;
- struct cvmx_lmcx_mem_cfg1_s cn31xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_31_63:33;
- uint64_t trrd:3;
- uint64_t caslat:3;
- uint64_t tmrd:3;
- uint64_t trfc:5;
- uint64_t trp:4;
- uint64_t twtr:4;
- uint64_t trcd:4;
- uint64_t tras:5;
- #else
- uint64_t tras:5;
- uint64_t trcd:4;
- uint64_t twtr:4;
- uint64_t trp:4;
- uint64_t trfc:5;
- uint64_t tmrd:3;
- uint64_t caslat:3;
- uint64_t trrd:3;
- uint64_t reserved_31_63:33;
- #endif
- } cn38xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn38xxp2;
- struct cvmx_lmcx_mem_cfg1_s cn50xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn52xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn52xxp1;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn56xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn56xxp1;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn58xx;
- struct cvmx_lmcx_mem_cfg1_cn38xx cn58xxp1;
- };
- union cvmx_lmcx_modereg_params0 {
- uint64_t u64;
- struct cvmx_lmcx_modereg_params0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_25_63:39;
- uint64_t ppd:1;
- uint64_t wrp:3;
- uint64_t dllr:1;
- uint64_t tm:1;
- uint64_t rbt:1;
- uint64_t cl:4;
- uint64_t bl:2;
- uint64_t qoff:1;
- uint64_t tdqs:1;
- uint64_t wlev:1;
- uint64_t al:2;
- uint64_t dll:1;
- uint64_t mpr:1;
- uint64_t mprloc:2;
- uint64_t cwl:3;
- #else
- uint64_t cwl:3;
- uint64_t mprloc:2;
- uint64_t mpr:1;
- uint64_t dll:1;
- uint64_t al:2;
- uint64_t wlev:1;
- uint64_t tdqs:1;
- uint64_t qoff:1;
- uint64_t bl:2;
- uint64_t cl:4;
- uint64_t rbt:1;
- uint64_t tm:1;
- uint64_t dllr:1;
- uint64_t wrp:3;
- uint64_t ppd:1;
- uint64_t reserved_25_63:39;
- #endif
- } s;
- struct cvmx_lmcx_modereg_params0_s cn61xx;
- struct cvmx_lmcx_modereg_params0_s cn63xx;
- struct cvmx_lmcx_modereg_params0_s cn63xxp1;
- struct cvmx_lmcx_modereg_params0_s cn66xx;
- struct cvmx_lmcx_modereg_params0_s cn68xx;
- struct cvmx_lmcx_modereg_params0_s cn68xxp1;
- struct cvmx_lmcx_modereg_params0_s cnf71xx;
- };
- union cvmx_lmcx_modereg_params1 {
- uint64_t u64;
- struct cvmx_lmcx_modereg_params1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_48_63:16;
- uint64_t rtt_nom_11:3;
- uint64_t dic_11:2;
- uint64_t rtt_wr_11:2;
- uint64_t srt_11:1;
- uint64_t asr_11:1;
- uint64_t pasr_11:3;
- uint64_t rtt_nom_10:3;
- uint64_t dic_10:2;
- uint64_t rtt_wr_10:2;
- uint64_t srt_10:1;
- uint64_t asr_10:1;
- uint64_t pasr_10:3;
- uint64_t rtt_nom_01:3;
- uint64_t dic_01:2;
- uint64_t rtt_wr_01:2;
- uint64_t srt_01:1;
- uint64_t asr_01:1;
- uint64_t pasr_01:3;
- uint64_t rtt_nom_00:3;
- uint64_t dic_00:2;
- uint64_t rtt_wr_00:2;
- uint64_t srt_00:1;
- uint64_t asr_00:1;
- uint64_t pasr_00:3;
- #else
- uint64_t pasr_00:3;
- uint64_t asr_00:1;
- uint64_t srt_00:1;
- uint64_t rtt_wr_00:2;
- uint64_t dic_00:2;
- uint64_t rtt_nom_00:3;
- uint64_t pasr_01:3;
- uint64_t asr_01:1;
- uint64_t srt_01:1;
- uint64_t rtt_wr_01:2;
- uint64_t dic_01:2;
- uint64_t rtt_nom_01:3;
- uint64_t pasr_10:3;
- uint64_t asr_10:1;
- uint64_t srt_10:1;
- uint64_t rtt_wr_10:2;
- uint64_t dic_10:2;
- uint64_t rtt_nom_10:3;
- uint64_t pasr_11:3;
- uint64_t asr_11:1;
- uint64_t srt_11:1;
- uint64_t rtt_wr_11:2;
- uint64_t dic_11:2;
- uint64_t rtt_nom_11:3;
- uint64_t reserved_48_63:16;
- #endif
- } s;
- struct cvmx_lmcx_modereg_params1_s cn61xx;
- struct cvmx_lmcx_modereg_params1_s cn63xx;
- struct cvmx_lmcx_modereg_params1_s cn63xxp1;
- struct cvmx_lmcx_modereg_params1_s cn66xx;
- struct cvmx_lmcx_modereg_params1_s cn68xx;
- struct cvmx_lmcx_modereg_params1_s cn68xxp1;
- struct cvmx_lmcx_modereg_params1_s cnf71xx;
- };
- union cvmx_lmcx_nxm {
- uint64_t u64;
- struct cvmx_lmcx_nxm_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_40_63:24;
- uint64_t mem_msb_d3_r1:4;
- uint64_t mem_msb_d3_r0:4;
- uint64_t mem_msb_d2_r1:4;
- uint64_t mem_msb_d2_r0:4;
- uint64_t mem_msb_d1_r1:4;
- uint64_t mem_msb_d1_r0:4;
- uint64_t mem_msb_d0_r1:4;
- uint64_t mem_msb_d0_r0:4;
- uint64_t cs_mask:8;
- #else
- uint64_t cs_mask:8;
- uint64_t mem_msb_d0_r0:4;
- uint64_t mem_msb_d0_r1:4;
- uint64_t mem_msb_d1_r0:4;
- uint64_t mem_msb_d1_r1:4;
- uint64_t mem_msb_d2_r0:4;
- uint64_t mem_msb_d2_r1:4;
- uint64_t mem_msb_d3_r0:4;
- uint64_t mem_msb_d3_r1:4;
- uint64_t reserved_40_63:24;
- #endif
- } s;
- struct cvmx_lmcx_nxm_cn52xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_8_63:56;
- uint64_t cs_mask:8;
- #else
- uint64_t cs_mask:8;
- uint64_t reserved_8_63:56;
- #endif
- } cn52xx;
- struct cvmx_lmcx_nxm_cn52xx cn56xx;
- struct cvmx_lmcx_nxm_cn52xx cn58xx;
- struct cvmx_lmcx_nxm_s cn61xx;
- struct cvmx_lmcx_nxm_s cn63xx;
- struct cvmx_lmcx_nxm_s cn63xxp1;
- struct cvmx_lmcx_nxm_s cn66xx;
- struct cvmx_lmcx_nxm_s cn68xx;
- struct cvmx_lmcx_nxm_s cn68xxp1;
- struct cvmx_lmcx_nxm_s cnf71xx;
- };
- union cvmx_lmcx_ops_cnt {
- uint64_t u64;
- struct cvmx_lmcx_ops_cnt_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t opscnt:64;
- #else
- uint64_t opscnt:64;
- #endif
- } s;
- struct cvmx_lmcx_ops_cnt_s cn61xx;
- struct cvmx_lmcx_ops_cnt_s cn63xx;
- struct cvmx_lmcx_ops_cnt_s cn63xxp1;
- struct cvmx_lmcx_ops_cnt_s cn66xx;
- struct cvmx_lmcx_ops_cnt_s cn68xx;
- struct cvmx_lmcx_ops_cnt_s cn68xxp1;
- struct cvmx_lmcx_ops_cnt_s cnf71xx;
- };
- union cvmx_lmcx_ops_cnt_hi {
- uint64_t u64;
- struct cvmx_lmcx_ops_cnt_hi_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t opscnt_hi:32;
- #else
- uint64_t opscnt_hi:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ops_cnt_hi_s cn30xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn31xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn38xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn38xxp2;
- struct cvmx_lmcx_ops_cnt_hi_s cn50xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn52xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn52xxp1;
- struct cvmx_lmcx_ops_cnt_hi_s cn56xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn56xxp1;
- struct cvmx_lmcx_ops_cnt_hi_s cn58xx;
- struct cvmx_lmcx_ops_cnt_hi_s cn58xxp1;
- };
- union cvmx_lmcx_ops_cnt_lo {
- uint64_t u64;
- struct cvmx_lmcx_ops_cnt_lo_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t opscnt_lo:32;
- #else
- uint64_t opscnt_lo:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_ops_cnt_lo_s cn30xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn31xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn38xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn38xxp2;
- struct cvmx_lmcx_ops_cnt_lo_s cn50xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn52xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn52xxp1;
- struct cvmx_lmcx_ops_cnt_lo_s cn56xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn56xxp1;
- struct cvmx_lmcx_ops_cnt_lo_s cn58xx;
- struct cvmx_lmcx_ops_cnt_lo_s cn58xxp1;
- };
- union cvmx_lmcx_phy_ctl {
- uint64_t u64;
- struct cvmx_lmcx_phy_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_15_63:49;
- uint64_t rx_always_on:1;
- uint64_t lv_mode:1;
- uint64_t ck_tune1:1;
- uint64_t ck_dlyout1:4;
- uint64_t ck_tune0:1;
- uint64_t ck_dlyout0:4;
- uint64_t loopback:1;
- uint64_t loopback_pos:1;
- uint64_t ts_stagger:1;
- #else
- uint64_t ts_stagger:1;
- uint64_t loopback_pos:1;
- uint64_t loopback:1;
- uint64_t ck_dlyout0:4;
- uint64_t ck_tune0:1;
- uint64_t ck_dlyout1:4;
- uint64_t ck_tune1:1;
- uint64_t lv_mode:1;
- uint64_t rx_always_on:1;
- uint64_t reserved_15_63:49;
- #endif
- } s;
- struct cvmx_lmcx_phy_ctl_s cn61xx;
- struct cvmx_lmcx_phy_ctl_s cn63xx;
- struct cvmx_lmcx_phy_ctl_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_14_63:50;
- uint64_t lv_mode:1;
- uint64_t ck_tune1:1;
- uint64_t ck_dlyout1:4;
- uint64_t ck_tune0:1;
- uint64_t ck_dlyout0:4;
- uint64_t loopback:1;
- uint64_t loopback_pos:1;
- uint64_t ts_stagger:1;
- #else
- uint64_t ts_stagger:1;
- uint64_t loopback_pos:1;
- uint64_t loopback:1;
- uint64_t ck_dlyout0:4;
- uint64_t ck_tune0:1;
- uint64_t ck_dlyout1:4;
- uint64_t ck_tune1:1;
- uint64_t lv_mode:1;
- uint64_t reserved_14_63:50;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_phy_ctl_s cn66xx;
- struct cvmx_lmcx_phy_ctl_s cn68xx;
- struct cvmx_lmcx_phy_ctl_s cn68xxp1;
- struct cvmx_lmcx_phy_ctl_s cnf71xx;
- };
- union cvmx_lmcx_pll_bwctl {
- uint64_t u64;
- struct cvmx_lmcx_pll_bwctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_5_63:59;
- uint64_t bwupd:1;
- uint64_t bwctl:4;
- #else
- uint64_t bwctl:4;
- uint64_t bwupd:1;
- uint64_t reserved_5_63:59;
- #endif
- } s;
- struct cvmx_lmcx_pll_bwctl_s cn30xx;
- struct cvmx_lmcx_pll_bwctl_s cn31xx;
- struct cvmx_lmcx_pll_bwctl_s cn38xx;
- struct cvmx_lmcx_pll_bwctl_s cn38xxp2;
- };
- union cvmx_lmcx_pll_ctl {
- uint64_t u64;
- struct cvmx_lmcx_pll_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_30_63:34;
- uint64_t bypass:1;
- uint64_t fasten_n:1;
- uint64_t div_reset:1;
- uint64_t reset_n:1;
- uint64_t clkf:12;
- uint64_t clkr:6;
- uint64_t reserved_6_7:2;
- uint64_t en16:1;
- uint64_t en12:1;
- uint64_t en8:1;
- uint64_t en6:1;
- uint64_t en4:1;
- uint64_t en2:1;
- #else
- uint64_t en2:1;
- uint64_t en4:1;
- uint64_t en6:1;
- uint64_t en8:1;
- uint64_t en12:1;
- uint64_t en16:1;
- uint64_t reserved_6_7:2;
- uint64_t clkr:6;
- uint64_t clkf:12;
- uint64_t reset_n:1;
- uint64_t div_reset:1;
- uint64_t fasten_n:1;
- uint64_t bypass:1;
- uint64_t reserved_30_63:34;
- #endif
- } s;
- struct cvmx_lmcx_pll_ctl_cn50xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_29_63:35;
- uint64_t fasten_n:1;
- uint64_t div_reset:1;
- uint64_t reset_n:1;
- uint64_t clkf:12;
- uint64_t clkr:6;
- uint64_t reserved_6_7:2;
- uint64_t en16:1;
- uint64_t en12:1;
- uint64_t en8:1;
- uint64_t en6:1;
- uint64_t en4:1;
- uint64_t en2:1;
- #else
- uint64_t en2:1;
- uint64_t en4:1;
- uint64_t en6:1;
- uint64_t en8:1;
- uint64_t en12:1;
- uint64_t en16:1;
- uint64_t reserved_6_7:2;
- uint64_t clkr:6;
- uint64_t clkf:12;
- uint64_t reset_n:1;
- uint64_t div_reset:1;
- uint64_t fasten_n:1;
- uint64_t reserved_29_63:35;
- #endif
- } cn50xx;
- struct cvmx_lmcx_pll_ctl_s cn52xx;
- struct cvmx_lmcx_pll_ctl_s cn52xxp1;
- struct cvmx_lmcx_pll_ctl_cn50xx cn56xx;
- struct cvmx_lmcx_pll_ctl_cn56xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_28_63:36;
- uint64_t div_reset:1;
- uint64_t reset_n:1;
- uint64_t clkf:12;
- uint64_t clkr:6;
- uint64_t reserved_6_7:2;
- uint64_t en16:1;
- uint64_t en12:1;
- uint64_t en8:1;
- uint64_t en6:1;
- uint64_t en4:1;
- uint64_t en2:1;
- #else
- uint64_t en2:1;
- uint64_t en4:1;
- uint64_t en6:1;
- uint64_t en8:1;
- uint64_t en12:1;
- uint64_t en16:1;
- uint64_t reserved_6_7:2;
- uint64_t clkr:6;
- uint64_t clkf:12;
- uint64_t reset_n:1;
- uint64_t div_reset:1;
- uint64_t reserved_28_63:36;
- #endif
- } cn56xxp1;
- struct cvmx_lmcx_pll_ctl_cn56xxp1 cn58xx;
- struct cvmx_lmcx_pll_ctl_cn56xxp1 cn58xxp1;
- };
- union cvmx_lmcx_pll_status {
- uint64_t u64;
- struct cvmx_lmcx_pll_status_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ddr__nctl:5;
- uint64_t ddr__pctl:5;
- uint64_t reserved_2_21:20;
- uint64_t rfslip:1;
- uint64_t fbslip:1;
- #else
- uint64_t fbslip:1;
- uint64_t rfslip:1;
- uint64_t reserved_2_21:20;
- uint64_t ddr__pctl:5;
- uint64_t ddr__nctl:5;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_pll_status_s cn50xx;
- struct cvmx_lmcx_pll_status_s cn52xx;
- struct cvmx_lmcx_pll_status_s cn52xxp1;
- struct cvmx_lmcx_pll_status_s cn56xx;
- struct cvmx_lmcx_pll_status_s cn56xxp1;
- struct cvmx_lmcx_pll_status_s cn58xx;
- struct cvmx_lmcx_pll_status_cn58xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_2_63:62;
- uint64_t rfslip:1;
- uint64_t fbslip:1;
- #else
- uint64_t fbslip:1;
- uint64_t rfslip:1;
- uint64_t reserved_2_63:62;
- #endif
- } cn58xxp1;
- };
- union cvmx_lmcx_read_level_ctl {
- uint64_t u64;
- struct cvmx_lmcx_read_level_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_44_63:20;
- uint64_t rankmask:4;
- uint64_t pattern:8;
- uint64_t row:16;
- uint64_t col:12;
- uint64_t reserved_3_3:1;
- uint64_t bnk:3;
- #else
- uint64_t bnk:3;
- uint64_t reserved_3_3:1;
- uint64_t col:12;
- uint64_t row:16;
- uint64_t pattern:8;
- uint64_t rankmask:4;
- uint64_t reserved_44_63:20;
- #endif
- } s;
- struct cvmx_lmcx_read_level_ctl_s cn52xx;
- struct cvmx_lmcx_read_level_ctl_s cn52xxp1;
- struct cvmx_lmcx_read_level_ctl_s cn56xx;
- struct cvmx_lmcx_read_level_ctl_s cn56xxp1;
- };
- union cvmx_lmcx_read_level_dbg {
- uint64_t u64;
- struct cvmx_lmcx_read_level_dbg_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t bitmask:16;
- uint64_t reserved_4_15:12;
- uint64_t byte:4;
- #else
- uint64_t byte:4;
- uint64_t reserved_4_15:12;
- uint64_t bitmask:16;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_read_level_dbg_s cn52xx;
- struct cvmx_lmcx_read_level_dbg_s cn52xxp1;
- struct cvmx_lmcx_read_level_dbg_s cn56xx;
- struct cvmx_lmcx_read_level_dbg_s cn56xxp1;
- };
- union cvmx_lmcx_read_level_rankx {
- uint64_t u64;
- struct cvmx_lmcx_read_level_rankx_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_38_63:26;
- uint64_t status:2;
- uint64_t byte8:4;
- uint64_t byte7:4;
- uint64_t byte6:4;
- uint64_t byte5:4;
- uint64_t byte4:4;
- uint64_t byte3:4;
- uint64_t byte2:4;
- uint64_t byte1:4;
- uint64_t byte0:4;
- #else
- uint64_t byte0:4;
- uint64_t byte1:4;
- uint64_t byte2:4;
- uint64_t byte3:4;
- uint64_t byte4:4;
- uint64_t byte5:4;
- uint64_t byte6:4;
- uint64_t byte7:4;
- uint64_t byte8:4;
- uint64_t status:2;
- uint64_t reserved_38_63:26;
- #endif
- } s;
- struct cvmx_lmcx_read_level_rankx_s cn52xx;
- struct cvmx_lmcx_read_level_rankx_s cn52xxp1;
- struct cvmx_lmcx_read_level_rankx_s cn56xx;
- struct cvmx_lmcx_read_level_rankx_s cn56xxp1;
- };
- union cvmx_lmcx_reset_ctl {
- uint64_t u64;
- struct cvmx_lmcx_reset_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_4_63:60;
- uint64_t ddr3psv:1;
- uint64_t ddr3psoft:1;
- uint64_t ddr3pwarm:1;
- uint64_t ddr3rst:1;
- #else
- uint64_t ddr3rst:1;
- uint64_t ddr3pwarm:1;
- uint64_t ddr3psoft:1;
- uint64_t ddr3psv:1;
- uint64_t reserved_4_63:60;
- #endif
- } s;
- struct cvmx_lmcx_reset_ctl_s cn61xx;
- struct cvmx_lmcx_reset_ctl_s cn63xx;
- struct cvmx_lmcx_reset_ctl_s cn63xxp1;
- struct cvmx_lmcx_reset_ctl_s cn66xx;
- struct cvmx_lmcx_reset_ctl_s cn68xx;
- struct cvmx_lmcx_reset_ctl_s cn68xxp1;
- struct cvmx_lmcx_reset_ctl_s cnf71xx;
- };
- union cvmx_lmcx_rlevel_ctl {
- uint64_t u64;
- struct cvmx_lmcx_rlevel_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_22_63:42;
- uint64_t delay_unload_3:1;
- uint64_t delay_unload_2:1;
- uint64_t delay_unload_1:1;
- uint64_t delay_unload_0:1;
- uint64_t bitmask:8;
- uint64_t or_dis:1;
- uint64_t offset_en:1;
- uint64_t offset:4;
- uint64_t byte:4;
- #else
- uint64_t byte:4;
- uint64_t offset:4;
- uint64_t offset_en:1;
- uint64_t or_dis:1;
- uint64_t bitmask:8;
- uint64_t delay_unload_0:1;
- uint64_t delay_unload_1:1;
- uint64_t delay_unload_2:1;
- uint64_t delay_unload_3:1;
- uint64_t reserved_22_63:42;
- #endif
- } s;
- struct cvmx_lmcx_rlevel_ctl_s cn61xx;
- struct cvmx_lmcx_rlevel_ctl_s cn63xx;
- struct cvmx_lmcx_rlevel_ctl_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_9_63:55;
- uint64_t offset_en:1;
- uint64_t offset:4;
- uint64_t byte:4;
- #else
- uint64_t byte:4;
- uint64_t offset:4;
- uint64_t offset_en:1;
- uint64_t reserved_9_63:55;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_rlevel_ctl_s cn66xx;
- struct cvmx_lmcx_rlevel_ctl_s cn68xx;
- struct cvmx_lmcx_rlevel_ctl_s cn68xxp1;
- struct cvmx_lmcx_rlevel_ctl_s cnf71xx;
- };
- union cvmx_lmcx_rlevel_dbg {
- uint64_t u64;
- struct cvmx_lmcx_rlevel_dbg_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t bitmask:64;
- #else
- uint64_t bitmask:64;
- #endif
- } s;
- struct cvmx_lmcx_rlevel_dbg_s cn61xx;
- struct cvmx_lmcx_rlevel_dbg_s cn63xx;
- struct cvmx_lmcx_rlevel_dbg_s cn63xxp1;
- struct cvmx_lmcx_rlevel_dbg_s cn66xx;
- struct cvmx_lmcx_rlevel_dbg_s cn68xx;
- struct cvmx_lmcx_rlevel_dbg_s cn68xxp1;
- struct cvmx_lmcx_rlevel_dbg_s cnf71xx;
- };
- union cvmx_lmcx_rlevel_rankx {
- uint64_t u64;
- struct cvmx_lmcx_rlevel_rankx_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_56_63:8;
- uint64_t status:2;
- uint64_t byte8:6;
- uint64_t byte7:6;
- uint64_t byte6:6;
- uint64_t byte5:6;
- uint64_t byte4:6;
- uint64_t byte3:6;
- uint64_t byte2:6;
- uint64_t byte1:6;
- uint64_t byte0:6;
- #else
- uint64_t byte0:6;
- uint64_t byte1:6;
- uint64_t byte2:6;
- uint64_t byte3:6;
- uint64_t byte4:6;
- uint64_t byte5:6;
- uint64_t byte6:6;
- uint64_t byte7:6;
- uint64_t byte8:6;
- uint64_t status:2;
- uint64_t reserved_56_63:8;
- #endif
- } s;
- struct cvmx_lmcx_rlevel_rankx_s cn61xx;
- struct cvmx_lmcx_rlevel_rankx_s cn63xx;
- struct cvmx_lmcx_rlevel_rankx_s cn63xxp1;
- struct cvmx_lmcx_rlevel_rankx_s cn66xx;
- struct cvmx_lmcx_rlevel_rankx_s cn68xx;
- struct cvmx_lmcx_rlevel_rankx_s cn68xxp1;
- struct cvmx_lmcx_rlevel_rankx_s cnf71xx;
- };
- union cvmx_lmcx_rodt_comp_ctl {
- uint64_t u64;
- struct cvmx_lmcx_rodt_comp_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_17_63:47;
- uint64_t enable:1;
- uint64_t reserved_12_15:4;
- uint64_t nctl:4;
- uint64_t reserved_5_7:3;
- uint64_t pctl:5;
- #else
- uint64_t pctl:5;
- uint64_t reserved_5_7:3;
- uint64_t nctl:4;
- uint64_t reserved_12_15:4;
- uint64_t enable:1;
- uint64_t reserved_17_63:47;
- #endif
- } s;
- struct cvmx_lmcx_rodt_comp_ctl_s cn50xx;
- struct cvmx_lmcx_rodt_comp_ctl_s cn52xx;
- struct cvmx_lmcx_rodt_comp_ctl_s cn52xxp1;
- struct cvmx_lmcx_rodt_comp_ctl_s cn56xx;
- struct cvmx_lmcx_rodt_comp_ctl_s cn56xxp1;
- struct cvmx_lmcx_rodt_comp_ctl_s cn58xx;
- struct cvmx_lmcx_rodt_comp_ctl_s cn58xxp1;
- };
- union cvmx_lmcx_rodt_ctl {
- uint64_t u64;
- struct cvmx_lmcx_rodt_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t rodt_hi3:4;
- uint64_t rodt_hi2:4;
- uint64_t rodt_hi1:4;
- uint64_t rodt_hi0:4;
- uint64_t rodt_lo3:4;
- uint64_t rodt_lo2:4;
- uint64_t rodt_lo1:4;
- uint64_t rodt_lo0:4;
- #else
- uint64_t rodt_lo0:4;
- uint64_t rodt_lo1:4;
- uint64_t rodt_lo2:4;
- uint64_t rodt_lo3:4;
- uint64_t rodt_hi0:4;
- uint64_t rodt_hi1:4;
- uint64_t rodt_hi2:4;
- uint64_t rodt_hi3:4;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_rodt_ctl_s cn30xx;
- struct cvmx_lmcx_rodt_ctl_s cn31xx;
- struct cvmx_lmcx_rodt_ctl_s cn38xx;
- struct cvmx_lmcx_rodt_ctl_s cn38xxp2;
- struct cvmx_lmcx_rodt_ctl_s cn50xx;
- struct cvmx_lmcx_rodt_ctl_s cn52xx;
- struct cvmx_lmcx_rodt_ctl_s cn52xxp1;
- struct cvmx_lmcx_rodt_ctl_s cn56xx;
- struct cvmx_lmcx_rodt_ctl_s cn56xxp1;
- struct cvmx_lmcx_rodt_ctl_s cn58xx;
- struct cvmx_lmcx_rodt_ctl_s cn58xxp1;
- };
- union cvmx_lmcx_rodt_mask {
- uint64_t u64;
- struct cvmx_lmcx_rodt_mask_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t rodt_d3_r1:8;
- uint64_t rodt_d3_r0:8;
- uint64_t rodt_d2_r1:8;
- uint64_t rodt_d2_r0:8;
- uint64_t rodt_d1_r1:8;
- uint64_t rodt_d1_r0:8;
- uint64_t rodt_d0_r1:8;
- uint64_t rodt_d0_r0:8;
- #else
- uint64_t rodt_d0_r0:8;
- uint64_t rodt_d0_r1:8;
- uint64_t rodt_d1_r0:8;
- uint64_t rodt_d1_r1:8;
- uint64_t rodt_d2_r0:8;
- uint64_t rodt_d2_r1:8;
- uint64_t rodt_d3_r0:8;
- uint64_t rodt_d3_r1:8;
- #endif
- } s;
- struct cvmx_lmcx_rodt_mask_s cn61xx;
- struct cvmx_lmcx_rodt_mask_s cn63xx;
- struct cvmx_lmcx_rodt_mask_s cn63xxp1;
- struct cvmx_lmcx_rodt_mask_s cn66xx;
- struct cvmx_lmcx_rodt_mask_s cn68xx;
- struct cvmx_lmcx_rodt_mask_s cn68xxp1;
- struct cvmx_lmcx_rodt_mask_s cnf71xx;
- };
- union cvmx_lmcx_scramble_cfg0 {
- uint64_t u64;
- struct cvmx_lmcx_scramble_cfg0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t key:64;
- #else
- uint64_t key:64;
- #endif
- } s;
- struct cvmx_lmcx_scramble_cfg0_s cn61xx;
- struct cvmx_lmcx_scramble_cfg0_s cn66xx;
- struct cvmx_lmcx_scramble_cfg0_s cnf71xx;
- };
- union cvmx_lmcx_scramble_cfg1 {
- uint64_t u64;
- struct cvmx_lmcx_scramble_cfg1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t key:64;
- #else
- uint64_t key:64;
- #endif
- } s;
- struct cvmx_lmcx_scramble_cfg1_s cn61xx;
- struct cvmx_lmcx_scramble_cfg1_s cn66xx;
- struct cvmx_lmcx_scramble_cfg1_s cnf71xx;
- };
- union cvmx_lmcx_scrambled_fadr {
- uint64_t u64;
- struct cvmx_lmcx_scrambled_fadr_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_36_63:28;
- uint64_t fdimm:2;
- uint64_t fbunk:1;
- uint64_t fbank:3;
- uint64_t frow:16;
- uint64_t fcol:14;
- #else
- uint64_t fcol:14;
- uint64_t frow:16;
- uint64_t fbank:3;
- uint64_t fbunk:1;
- uint64_t fdimm:2;
- uint64_t reserved_36_63:28;
- #endif
- } s;
- struct cvmx_lmcx_scrambled_fadr_s cn61xx;
- struct cvmx_lmcx_scrambled_fadr_s cn66xx;
- struct cvmx_lmcx_scrambled_fadr_s cnf71xx;
- };
- union cvmx_lmcx_slot_ctl0 {
- uint64_t u64;
- struct cvmx_lmcx_slot_ctl0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_24_63:40;
- uint64_t w2w_init:6;
- uint64_t w2r_init:6;
- uint64_t r2w_init:6;
- uint64_t r2r_init:6;
- #else
- uint64_t r2r_init:6;
- uint64_t r2w_init:6;
- uint64_t w2r_init:6;
- uint64_t w2w_init:6;
- uint64_t reserved_24_63:40;
- #endif
- } s;
- struct cvmx_lmcx_slot_ctl0_s cn61xx;
- struct cvmx_lmcx_slot_ctl0_s cn63xx;
- struct cvmx_lmcx_slot_ctl0_s cn63xxp1;
- struct cvmx_lmcx_slot_ctl0_s cn66xx;
- struct cvmx_lmcx_slot_ctl0_s cn68xx;
- struct cvmx_lmcx_slot_ctl0_s cn68xxp1;
- struct cvmx_lmcx_slot_ctl0_s cnf71xx;
- };
- union cvmx_lmcx_slot_ctl1 {
- uint64_t u64;
- struct cvmx_lmcx_slot_ctl1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_24_63:40;
- uint64_t w2w_xrank_init:6;
- uint64_t w2r_xrank_init:6;
- uint64_t r2w_xrank_init:6;
- uint64_t r2r_xrank_init:6;
- #else
- uint64_t r2r_xrank_init:6;
- uint64_t r2w_xrank_init:6;
- uint64_t w2r_xrank_init:6;
- uint64_t w2w_xrank_init:6;
- uint64_t reserved_24_63:40;
- #endif
- } s;
- struct cvmx_lmcx_slot_ctl1_s cn61xx;
- struct cvmx_lmcx_slot_ctl1_s cn63xx;
- struct cvmx_lmcx_slot_ctl1_s cn63xxp1;
- struct cvmx_lmcx_slot_ctl1_s cn66xx;
- struct cvmx_lmcx_slot_ctl1_s cn68xx;
- struct cvmx_lmcx_slot_ctl1_s cn68xxp1;
- struct cvmx_lmcx_slot_ctl1_s cnf71xx;
- };
- union cvmx_lmcx_slot_ctl2 {
- uint64_t u64;
- struct cvmx_lmcx_slot_ctl2_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_24_63:40;
- uint64_t w2w_xdimm_init:6;
- uint64_t w2r_xdimm_init:6;
- uint64_t r2w_xdimm_init:6;
- uint64_t r2r_xdimm_init:6;
- #else
- uint64_t r2r_xdimm_init:6;
- uint64_t r2w_xdimm_init:6;
- uint64_t w2r_xdimm_init:6;
- uint64_t w2w_xdimm_init:6;
- uint64_t reserved_24_63:40;
- #endif
- } s;
- struct cvmx_lmcx_slot_ctl2_s cn61xx;
- struct cvmx_lmcx_slot_ctl2_s cn63xx;
- struct cvmx_lmcx_slot_ctl2_s cn63xxp1;
- struct cvmx_lmcx_slot_ctl2_s cn66xx;
- struct cvmx_lmcx_slot_ctl2_s cn68xx;
- struct cvmx_lmcx_slot_ctl2_s cn68xxp1;
- struct cvmx_lmcx_slot_ctl2_s cnf71xx;
- };
- union cvmx_lmcx_timing_params0 {
- uint64_t u64;
- struct cvmx_lmcx_timing_params0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_47_63:17;
- uint64_t trp_ext:1;
- uint64_t tcksre:4;
- uint64_t trp:4;
- uint64_t tzqinit:4;
- uint64_t tdllk:4;
- uint64_t tmod:4;
- uint64_t tmrd:4;
- uint64_t txpr:4;
- uint64_t tcke:4;
- uint64_t tzqcs:4;
- uint64_t tckeon:10;
- #else
- uint64_t tckeon:10;
- uint64_t tzqcs:4;
- uint64_t tcke:4;
- uint64_t txpr:4;
- uint64_t tmrd:4;
- uint64_t tmod:4;
- uint64_t tdllk:4;
- uint64_t tzqinit:4;
- uint64_t trp:4;
- uint64_t tcksre:4;
- uint64_t trp_ext:1;
- uint64_t reserved_47_63:17;
- #endif
- } s;
- struct cvmx_lmcx_timing_params0_cn61xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_47_63:17;
- uint64_t trp_ext:1;
- uint64_t tcksre:4;
- uint64_t trp:4;
- uint64_t tzqinit:4;
- uint64_t tdllk:4;
- uint64_t tmod:4;
- uint64_t tmrd:4;
- uint64_t txpr:4;
- uint64_t tcke:4;
- uint64_t tzqcs:4;
- uint64_t reserved_0_9:10;
- #else
- uint64_t reserved_0_9:10;
- uint64_t tzqcs:4;
- uint64_t tcke:4;
- uint64_t txpr:4;
- uint64_t tmrd:4;
- uint64_t tmod:4;
- uint64_t tdllk:4;
- uint64_t tzqinit:4;
- uint64_t trp:4;
- uint64_t tcksre:4;
- uint64_t trp_ext:1;
- uint64_t reserved_47_63:17;
- #endif
- } cn61xx;
- struct cvmx_lmcx_timing_params0_cn61xx cn63xx;
- struct cvmx_lmcx_timing_params0_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_46_63:18;
- uint64_t tcksre:4;
- uint64_t trp:4;
- uint64_t tzqinit:4;
- uint64_t tdllk:4;
- uint64_t tmod:4;
- uint64_t tmrd:4;
- uint64_t txpr:4;
- uint64_t tcke:4;
- uint64_t tzqcs:4;
- uint64_t tckeon:10;
- #else
- uint64_t tckeon:10;
- uint64_t tzqcs:4;
- uint64_t tcke:4;
- uint64_t txpr:4;
- uint64_t tmrd:4;
- uint64_t tmod:4;
- uint64_t tdllk:4;
- uint64_t tzqinit:4;
- uint64_t trp:4;
- uint64_t tcksre:4;
- uint64_t reserved_46_63:18;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_timing_params0_cn61xx cn66xx;
- struct cvmx_lmcx_timing_params0_cn61xx cn68xx;
- struct cvmx_lmcx_timing_params0_cn61xx cn68xxp1;
- struct cvmx_lmcx_timing_params0_cn61xx cnf71xx;
- };
- union cvmx_lmcx_timing_params1 {
- uint64_t u64;
- struct cvmx_lmcx_timing_params1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_47_63:17;
- uint64_t tras_ext:1;
- uint64_t txpdll:5;
- uint64_t tfaw:5;
- uint64_t twldqsen:4;
- uint64_t twlmrd:4;
- uint64_t txp:3;
- uint64_t trrd:3;
- uint64_t trfc:5;
- uint64_t twtr:4;
- uint64_t trcd:4;
- uint64_t tras:5;
- uint64_t tmprr:4;
- #else
- uint64_t tmprr:4;
- uint64_t tras:5;
- uint64_t trcd:4;
- uint64_t twtr:4;
- uint64_t trfc:5;
- uint64_t trrd:3;
- uint64_t txp:3;
- uint64_t twlmrd:4;
- uint64_t twldqsen:4;
- uint64_t tfaw:5;
- uint64_t txpdll:5;
- uint64_t tras_ext:1;
- uint64_t reserved_47_63:17;
- #endif
- } s;
- struct cvmx_lmcx_timing_params1_s cn61xx;
- struct cvmx_lmcx_timing_params1_s cn63xx;
- struct cvmx_lmcx_timing_params1_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_46_63:18;
- uint64_t txpdll:5;
- uint64_t tfaw:5;
- uint64_t twldqsen:4;
- uint64_t twlmrd:4;
- uint64_t txp:3;
- uint64_t trrd:3;
- uint64_t trfc:5;
- uint64_t twtr:4;
- uint64_t trcd:4;
- uint64_t tras:5;
- uint64_t tmprr:4;
- #else
- uint64_t tmprr:4;
- uint64_t tras:5;
- uint64_t trcd:4;
- uint64_t twtr:4;
- uint64_t trfc:5;
- uint64_t trrd:3;
- uint64_t txp:3;
- uint64_t twlmrd:4;
- uint64_t twldqsen:4;
- uint64_t tfaw:5;
- uint64_t txpdll:5;
- uint64_t reserved_46_63:18;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_timing_params1_s cn66xx;
- struct cvmx_lmcx_timing_params1_s cn68xx;
- struct cvmx_lmcx_timing_params1_s cn68xxp1;
- struct cvmx_lmcx_timing_params1_s cnf71xx;
- };
- union cvmx_lmcx_tro_ctl {
- uint64_t u64;
- struct cvmx_lmcx_tro_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_33_63:31;
- uint64_t rclk_cnt:32;
- uint64_t treset:1;
- #else
- uint64_t treset:1;
- uint64_t rclk_cnt:32;
- uint64_t reserved_33_63:31;
- #endif
- } s;
- struct cvmx_lmcx_tro_ctl_s cn61xx;
- struct cvmx_lmcx_tro_ctl_s cn63xx;
- struct cvmx_lmcx_tro_ctl_s cn63xxp1;
- struct cvmx_lmcx_tro_ctl_s cn66xx;
- struct cvmx_lmcx_tro_ctl_s cn68xx;
- struct cvmx_lmcx_tro_ctl_s cn68xxp1;
- struct cvmx_lmcx_tro_ctl_s cnf71xx;
- };
- union cvmx_lmcx_tro_stat {
- uint64_t u64;
- struct cvmx_lmcx_tro_stat_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t ring_cnt:32;
- #else
- uint64_t ring_cnt:32;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_tro_stat_s cn61xx;
- struct cvmx_lmcx_tro_stat_s cn63xx;
- struct cvmx_lmcx_tro_stat_s cn63xxp1;
- struct cvmx_lmcx_tro_stat_s cn66xx;
- struct cvmx_lmcx_tro_stat_s cn68xx;
- struct cvmx_lmcx_tro_stat_s cn68xxp1;
- struct cvmx_lmcx_tro_stat_s cnf71xx;
- };
- union cvmx_lmcx_wlevel_ctl {
- uint64_t u64;
- struct cvmx_lmcx_wlevel_ctl_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_22_63:42;
- uint64_t rtt_nom:3;
- uint64_t bitmask:8;
- uint64_t or_dis:1;
- uint64_t sset:1;
- uint64_t lanemask:9;
- #else
- uint64_t lanemask:9;
- uint64_t sset:1;
- uint64_t or_dis:1;
- uint64_t bitmask:8;
- uint64_t rtt_nom:3;
- uint64_t reserved_22_63:42;
- #endif
- } s;
- struct cvmx_lmcx_wlevel_ctl_s cn61xx;
- struct cvmx_lmcx_wlevel_ctl_s cn63xx;
- struct cvmx_lmcx_wlevel_ctl_cn63xxp1 {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_10_63:54;
- uint64_t sset:1;
- uint64_t lanemask:9;
- #else
- uint64_t lanemask:9;
- uint64_t sset:1;
- uint64_t reserved_10_63:54;
- #endif
- } cn63xxp1;
- struct cvmx_lmcx_wlevel_ctl_s cn66xx;
- struct cvmx_lmcx_wlevel_ctl_s cn68xx;
- struct cvmx_lmcx_wlevel_ctl_s cn68xxp1;
- struct cvmx_lmcx_wlevel_ctl_s cnf71xx;
- };
- union cvmx_lmcx_wlevel_dbg {
- uint64_t u64;
- struct cvmx_lmcx_wlevel_dbg_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_12_63:52;
- uint64_t bitmask:8;
- uint64_t byte:4;
- #else
- uint64_t byte:4;
- uint64_t bitmask:8;
- uint64_t reserved_12_63:52;
- #endif
- } s;
- struct cvmx_lmcx_wlevel_dbg_s cn61xx;
- struct cvmx_lmcx_wlevel_dbg_s cn63xx;
- struct cvmx_lmcx_wlevel_dbg_s cn63xxp1;
- struct cvmx_lmcx_wlevel_dbg_s cn66xx;
- struct cvmx_lmcx_wlevel_dbg_s cn68xx;
- struct cvmx_lmcx_wlevel_dbg_s cn68xxp1;
- struct cvmx_lmcx_wlevel_dbg_s cnf71xx;
- };
- union cvmx_lmcx_wlevel_rankx {
- uint64_t u64;
- struct cvmx_lmcx_wlevel_rankx_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_47_63:17;
- uint64_t status:2;
- uint64_t byte8:5;
- uint64_t byte7:5;
- uint64_t byte6:5;
- uint64_t byte5:5;
- uint64_t byte4:5;
- uint64_t byte3:5;
- uint64_t byte2:5;
- uint64_t byte1:5;
- uint64_t byte0:5;
- #else
- uint64_t byte0:5;
- uint64_t byte1:5;
- uint64_t byte2:5;
- uint64_t byte3:5;
- uint64_t byte4:5;
- uint64_t byte5:5;
- uint64_t byte6:5;
- uint64_t byte7:5;
- uint64_t byte8:5;
- uint64_t status:2;
- uint64_t reserved_47_63:17;
- #endif
- } s;
- struct cvmx_lmcx_wlevel_rankx_s cn61xx;
- struct cvmx_lmcx_wlevel_rankx_s cn63xx;
- struct cvmx_lmcx_wlevel_rankx_s cn63xxp1;
- struct cvmx_lmcx_wlevel_rankx_s cn66xx;
- struct cvmx_lmcx_wlevel_rankx_s cn68xx;
- struct cvmx_lmcx_wlevel_rankx_s cn68xxp1;
- struct cvmx_lmcx_wlevel_rankx_s cnf71xx;
- };
- union cvmx_lmcx_wodt_ctl0 {
- uint64_t u64;
- struct cvmx_lmcx_wodt_ctl0_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_0_63:64;
- #else
- uint64_t reserved_0_63:64;
- #endif
- } s;
- struct cvmx_lmcx_wodt_ctl0_cn30xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t wodt_d1_r1:8;
- uint64_t wodt_d1_r0:8;
- uint64_t wodt_d0_r1:8;
- uint64_t wodt_d0_r0:8;
- #else
- uint64_t wodt_d0_r0:8;
- uint64_t wodt_d0_r1:8;
- uint64_t wodt_d1_r0:8;
- uint64_t wodt_d1_r1:8;
- uint64_t reserved_32_63:32;
- #endif
- } cn30xx;
- struct cvmx_lmcx_wodt_ctl0_cn30xx cn31xx;
- struct cvmx_lmcx_wodt_ctl0_cn38xx {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t wodt_hi3:4;
- uint64_t wodt_hi2:4;
- uint64_t wodt_hi1:4;
- uint64_t wodt_hi0:4;
- uint64_t wodt_lo3:4;
- uint64_t wodt_lo2:4;
- uint64_t wodt_lo1:4;
- uint64_t wodt_lo0:4;
- #else
- uint64_t wodt_lo0:4;
- uint64_t wodt_lo1:4;
- uint64_t wodt_lo2:4;
- uint64_t wodt_lo3:4;
- uint64_t wodt_hi0:4;
- uint64_t wodt_hi1:4;
- uint64_t wodt_hi2:4;
- uint64_t wodt_hi3:4;
- uint64_t reserved_32_63:32;
- #endif
- } cn38xx;
- struct cvmx_lmcx_wodt_ctl0_cn38xx cn38xxp2;
- struct cvmx_lmcx_wodt_ctl0_cn38xx cn50xx;
- struct cvmx_lmcx_wodt_ctl0_cn30xx cn52xx;
- struct cvmx_lmcx_wodt_ctl0_cn30xx cn52xxp1;
- struct cvmx_lmcx_wodt_ctl0_cn30xx cn56xx;
- struct cvmx_lmcx_wodt_ctl0_cn30xx cn56xxp1;
- struct cvmx_lmcx_wodt_ctl0_cn38xx cn58xx;
- struct cvmx_lmcx_wodt_ctl0_cn38xx cn58xxp1;
- };
- union cvmx_lmcx_wodt_ctl1 {
- uint64_t u64;
- struct cvmx_lmcx_wodt_ctl1_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t reserved_32_63:32;
- uint64_t wodt_d3_r1:8;
- uint64_t wodt_d3_r0:8;
- uint64_t wodt_d2_r1:8;
- uint64_t wodt_d2_r0:8;
- #else
- uint64_t wodt_d2_r0:8;
- uint64_t wodt_d2_r1:8;
- uint64_t wodt_d3_r0:8;
- uint64_t wodt_d3_r1:8;
- uint64_t reserved_32_63:32;
- #endif
- } s;
- struct cvmx_lmcx_wodt_ctl1_s cn30xx;
- struct cvmx_lmcx_wodt_ctl1_s cn31xx;
- struct cvmx_lmcx_wodt_ctl1_s cn52xx;
- struct cvmx_lmcx_wodt_ctl1_s cn52xxp1;
- struct cvmx_lmcx_wodt_ctl1_s cn56xx;
- struct cvmx_lmcx_wodt_ctl1_s cn56xxp1;
- };
- union cvmx_lmcx_wodt_mask {
- uint64_t u64;
- struct cvmx_lmcx_wodt_mask_s {
- #ifdef __BIG_ENDIAN_BITFIELD
- uint64_t wodt_d3_r1:8;
- uint64_t wodt_d3_r0:8;
- uint64_t wodt_d2_r1:8;
- uint64_t wodt_d2_r0:8;
- uint64_t wodt_d1_r1:8;
- uint64_t wodt_d1_r0:8;
- uint64_t wodt_d0_r1:8;
- uint64_t wodt_d0_r0:8;
- #else
- uint64_t wodt_d0_r0:8;
- uint64_t wodt_d0_r1:8;
- uint64_t wodt_d1_r0:8;
- uint64_t wodt_d1_r1:8;
- uint64_t wodt_d2_r0:8;
- uint64_t wodt_d2_r1:8;
- uint64_t wodt_d3_r0:8;
- uint64_t wodt_d3_r1:8;
- #endif
- } s;
- struct cvmx_lmcx_wodt_mask_s cn61xx;
- struct cvmx_lmcx_wodt_mask_s cn63xx;
- struct cvmx_lmcx_wodt_mask_s cn63xxp1;
- struct cvmx_lmcx_wodt_mask_s cn66xx;
- struct cvmx_lmcx_wodt_mask_s cn68xx;
- struct cvmx_lmcx_wodt_mask_s cn68xxp1;
- struct cvmx_lmcx_wodt_mask_s cnf71xx;
- };
- #endif
|