| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429 |
- From 1806d342beb334c8cb0a438315ad5529262b2791 Mon Sep 17 00:00:00 2001
- From: Yangbo Lu <[email protected]>
- Date: Wed, 17 Jan 2018 14:52:50 +0800
- Subject: [PATCH 04/30] dts: support layercape
- This is an integrated patch for layerscape dts support.
- Signed-off-by: Amrita Kumari <[email protected]>
- Signed-off-by: Alison Wang <[email protected]>
- Signed-off-by: Li Yang <[email protected]>
- Signed-off-by: Ashish Kumar <[email protected]>
- Signed-off-by: Zhao Qiang <[email protected]>
- Signed-off-by: Rajesh Bhagat <[email protected]>
- Signed-off-by: Zhang Ying-22455 <[email protected]>
- Signed-off-by: Madalin Bucur <[email protected]>
- Signed-off-by: Minghuan Lian <[email protected]>
- Signed-off-by: Suresh Gupta <[email protected]>
- Signed-off-by: Chenhui Zhao <[email protected]>
- Signed-off-by: Priyanka Jain <[email protected]>
- Signed-off-by: Hou Zhiqiang <[email protected]>
- Signed-off-by: Changming Huang <[email protected]>
- Signed-off-by: Bharat Bhushan <[email protected]>
- Signed-off-by: Meng Yi <[email protected]>
- Signed-off-by: Shaohui Xie <[email protected]>
- Signed-off-by: Marc Zyngier <[email protected]>
- Signed-off-by: Prabhakar Kushwaha <[email protected]>
- Signed-off-by: Ran Wang <[email protected]>
- Signed-off-by: Yangbo Lu <[email protected]>
- ---
- arch/arm/boot/dts/alpine.dtsi | 2 +-
- arch/arm/boot/dts/axm55xx.dtsi | 2 +-
- arch/arm/boot/dts/ecx-2000.dts | 2 +-
- arch/arm/boot/dts/imx6ul.dtsi | 4 +-
- arch/arm/boot/dts/keystone.dtsi | 4 +-
- arch/arm/boot/dts/ls1021a-qds.dts | 21 +
- arch/arm/boot/dts/ls1021a-twr.dts | 25 +
- arch/arm/boot/dts/ls1021a.dtsi | 197 +++--
- arch/arm/boot/dts/mt6580.dtsi | 2 +-
- arch/arm/boot/dts/mt6589.dtsi | 2 +-
- arch/arm/boot/dts/mt8127.dtsi | 2 +-
- arch/arm/boot/dts/mt8135.dtsi | 2 +-
- arch/arm/boot/dts/rk3288.dtsi | 2 +-
- arch/arm/boot/dts/sun6i-a31.dtsi | 2 +-
- arch/arm/boot/dts/sun7i-a20.dtsi | 4 +-
- arch/arm/boot/dts/sun8i-a23-a33.dtsi | 2 +-
- arch/arm/boot/dts/sun9i-a80.dtsi | 2 +-
- arch/arm64/boot/dts/freescale/Makefile | 17 +
- .../boot/dts/freescale/fsl-ls1012a-2g5rdb.dts | 123 +++
- arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts | 177 ++++
- arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts | 202 +++++
- arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts | 138 ++++
- arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi | 602 ++++++++++++++
- arch/arm64/boot/dts/freescale/fsl-ls1043-post.dtsi | 45 +
- .../boot/dts/freescale/fsl-ls1043a-qds-sdk.dts | 69 ++
- arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts | 171 +++-
- .../boot/dts/freescale/fsl-ls1043a-rdb-sdk.dts | 69 ++
- .../boot/dts/freescale/fsl-ls1043a-rdb-usdpaa.dts | 117 +++
- arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts | 113 ++-
- arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi | 308 ++++++-
- arch/arm64/boot/dts/freescale/fsl-ls1046-post.dtsi | 48 ++
- .../boot/dts/freescale/fsl-ls1046a-qds-sdk.dts | 110 +++
- arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts | 363 ++++++++
- .../boot/dts/freescale/fsl-ls1046a-rdb-sdk.dts | 83 ++
- .../boot/dts/freescale/fsl-ls1046a-rdb-usdpaa.dts | 110 +++
- arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts | 218 +++++
- arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi | 800 ++++++++++++++++++
- arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts | 173 ++++
- arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts | 236 ++++++
- arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi | 825 ++++++++++++++++++
- arch/arm64/boot/dts/freescale/fsl-ls2080a-qds.dts | 191 ++---
- arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts | 169 ++--
- arch/arm64/boot/dts/freescale/fsl-ls2080a-simu.dts | 9 +-
- arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi | 763 +++--------------
- arch/arm64/boot/dts/freescale/fsl-ls2081a-rdb.dts | 161 ++++
- arch/arm64/boot/dts/freescale/fsl-ls2088a-qds.dts | 162 ++++
- arch/arm64/boot/dts/freescale/fsl-ls2088a-rdb.dts | 140 ++++
- arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi | 195 +++++
- arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi | 198 +++++
- arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi | 161 ++++
- arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 919 +++++++++++++++++++++
- .../boot/dts/freescale/qoriq-bman1-portals.dtsi | 81 ++
- arch/arm64/boot/dts/freescale/qoriq-dpaa-eth.dtsi | 73 ++
- .../boot/dts/freescale/qoriq-fman3-0-10g-0.dtsi | 43 +
- .../boot/dts/freescale/qoriq-fman3-0-10g-1.dtsi | 43 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-0.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-1.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-2.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-3.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-4.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-1g-5.dtsi | 42 +
- .../boot/dts/freescale/qoriq-fman3-0-6oh.dtsi | 47 ++
- arch/arm64/boot/dts/freescale/qoriq-fman3-0.dtsi | 130 +++
- .../boot/dts/freescale/qoriq-qman1-portals.dtsi | 104 +++
- arch/powerpc/boot/dts/fsl/qoriq-bman1-portals.dtsi | 10 +
- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi | 4 +-
- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi | 4 +-
- 67 files changed, 8231 insertions(+), 1022 deletions(-)
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1012a-2g5rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1043-post.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1043a-qds-sdk.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb-usdpaa.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046-post.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a-qds-sdk.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb-sdk.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb-usdpaa.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls2081a-rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls2088a-qds.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls2088a-rdb.dts
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-bman1-portals.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-dpaa-eth.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-10g-0.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-10g-1.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-0.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-1.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-2.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-3.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-4.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-5.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0-6oh.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-fman3-0.dtsi
- create mode 100644 arch/arm64/boot/dts/freescale/qoriq-qman1-portals.dtsi
- --- a/arch/arm/boot/dts/alpine.dtsi
- +++ b/arch/arm/boot/dts/alpine.dtsi
- @@ -93,7 +93,7 @@
- interrupt-controller;
- reg = <0x0 0xfb001000 0x0 0x1000>,
- <0x0 0xfb002000 0x0 0x2000>,
- - <0x0 0xfb004000 0x0 0x1000>,
- + <0x0 0xfb004000 0x0 0x2000>,
- <0x0 0xfb006000 0x0 0x2000>;
- interrupts =
- <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
- --- a/arch/arm/boot/dts/axm55xx.dtsi
- +++ b/arch/arm/boot/dts/axm55xx.dtsi
- @@ -62,7 +62,7 @@
- #address-cells = <0>;
- interrupt-controller;
- reg = <0x20 0x01001000 0 0x1000>,
- - <0x20 0x01002000 0 0x1000>,
- + <0x20 0x01002000 0 0x2000>,
- <0x20 0x01004000 0 0x2000>,
- <0x20 0x01006000 0 0x2000>;
- interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
- --- a/arch/arm/boot/dts/ecx-2000.dts
- +++ b/arch/arm/boot/dts/ecx-2000.dts
- @@ -99,7 +99,7 @@
- interrupt-controller;
- interrupts = <1 9 0xf04>;
- reg = <0xfff11000 0x1000>,
- - <0xfff12000 0x1000>,
- + <0xfff12000 0x2000>,
- <0xfff14000 0x2000>,
- <0xfff16000 0x2000>;
- };
- --- a/arch/arm/boot/dts/imx6ul.dtsi
- +++ b/arch/arm/boot/dts/imx6ul.dtsi
- @@ -89,11 +89,11 @@
- };
-
- intc: interrupt-controller@00a01000 {
- - compatible = "arm,cortex-a7-gic";
- + compatible = "arm,gic-400", "arm,cortex-a7-gic";
- #interrupt-cells = <3>;
- interrupt-controller;
- reg = <0x00a01000 0x1000>,
- - <0x00a02000 0x1000>,
- + <0x00a02000 0x2000>,
- <0x00a04000 0x2000>,
- <0x00a06000 0x2000>;
- };
- --- a/arch/arm/boot/dts/keystone.dtsi
- +++ b/arch/arm/boot/dts/keystone.dtsi
- @@ -30,12 +30,12 @@
- };
-
- gic: interrupt-controller {
- - compatible = "arm,cortex-a15-gic";
- + compatible = "arm,gic-400", "arm,cortex-a15-gic";
- #interrupt-cells = <3>;
- interrupt-controller;
- reg = <0x0 0x02561000 0x0 0x1000>,
- <0x0 0x02562000 0x0 0x2000>,
- - <0x0 0x02564000 0x0 0x1000>,
- + <0x0 0x02564000 0x0 0x2000>,
- <0x0 0x02566000 0x0 0x2000>;
- interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
- IRQ_TYPE_LEVEL_HIGH)>;
- --- a/arch/arm/boot/dts/ls1021a-qds.dts
- +++ b/arch/arm/boot/dts/ls1021a-qds.dts
- @@ -124,6 +124,19 @@
- };
- };
-
- +&qspi {
- + num-cs = <2>;
- + status = "okay";
- +
- + qflash0: s25fl128s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- &enet0 {
- tbi-handle = <&tbi0>;
- phy-handle = <&sgmii_phy1c>;
- @@ -331,3 +344,11 @@
- &uart1 {
- status = "okay";
- };
- +
- +&can0 {
- + status = "okay";
- +};
- +
- +&can1 {
- + status = "okay";
- +};
- --- a/arch/arm/boot/dts/ls1021a-twr.dts
- +++ b/arch/arm/boot/dts/ls1021a-twr.dts
- @@ -142,6 +142,19 @@
- };
- };
-
- +&qspi {
- + num-cs = <2>;
- + status = "okay";
- +
- + qflash0: n25q128a13@0 {
- + compatible = "n25q128a13", "jedec,spi-nor";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- &enet0 {
- tbi-handle = <&tbi1>;
- phy-handle = <&sgmii_phy2>;
- @@ -228,6 +241,10 @@
- };
- };
-
- +&esdhc {
- + status = "okay";
- +};
- +
- &sai1 {
- status = "okay";
- };
- @@ -243,3 +260,11 @@
- &uart1 {
- status = "okay";
- };
- +
- +&can0 {
- + status = "okay";
- +};
- +
- +&can1 {
- + status = "okay";
- +};
- --- a/arch/arm/boot/dts/ls1021a.dtsi
- +++ b/arch/arm/boot/dts/ls1021a.dtsi
- @@ -74,17 +74,24 @@
- compatible = "arm,cortex-a7";
- device_type = "cpu";
- reg = <0xf00>;
- - clocks = <&cluster1_clk>;
- + clocks = <&clockgen 1 0>;
- };
-
- cpu@f01 {
- compatible = "arm,cortex-a7";
- device_type = "cpu";
- reg = <0xf01>;
- - clocks = <&cluster1_clk>;
- + clocks = <&clockgen 1 0>;
- };
- };
-
- + sysclk: sysclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <100000000>;
- + clock-output-names = "sysclk";
- + };
- +
- timer {
- compatible = "arm,armv7-timer";
- interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
- @@ -108,11 +115,11 @@
- ranges;
-
- gic: interrupt-controller@1400000 {
- - compatible = "arm,cortex-a7-gic";
- + compatible = "arm,gic-400", "arm,cortex-a7-gic";
- #interrupt-cells = <3>;
- interrupt-controller;
- reg = <0x0 0x1401000 0x0 0x1000>,
- - <0x0 0x1402000 0x0 0x1000>,
- + <0x0 0x1402000 0x0 0x2000>,
- <0x0 0x1404000 0x0 0x2000>,
- <0x0 0x1406000 0x0 0x2000>;
- interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
- @@ -120,14 +127,14 @@
- };
-
- msi1: msi-controller@1570e00 {
- - compatible = "fsl,1s1021a-msi";
- + compatible = "fsl,ls1021a-msi";
- reg = <0x0 0x1570e00 0x0 0x8>;
- msi-controller;
- interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
- };
-
- msi2: msi-controller@1570e08 {
- - compatible = "fsl,1s1021a-msi";
- + compatible = "fsl,ls1021a-msi";
- reg = <0x0 0x1570e08 0x0 0x8>;
- msi-controller;
- interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
- @@ -137,16 +144,17 @@
- compatible = "fsl,ifc", "simple-bus";
- reg = <0x0 0x1530000 0x0 0x10000>;
- interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
- + big-endian;
- };
-
- dcfg: dcfg@1ee0000 {
- compatible = "fsl,ls1021a-dcfg", "syscon";
- - reg = <0x0 0x1ee0000 0x0 0x10000>;
- + reg = <0x0 0x1ee0000 0x0 0x1000>;
- big-endian;
- };
-
- esdhc: esdhc@1560000 {
- - compatible = "fsl,esdhc";
- + compatible = "fsl,ls1021a-esdhc","fsl,esdhc";
- reg = <0x0 0x1560000 0x0 0x10000>;
- interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
- clock-frequency = <0>;
- @@ -163,7 +171,7 @@
- <0x0 0x20220520 0x0 0x4>;
- reg-names = "ahci", "sata-ecc";
- interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- dma-coherent;
- status = "disabled";
- };
- @@ -214,41 +222,10 @@
- };
-
- clockgen: clocking@1ee1000 {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - ranges = <0x0 0x0 0x1ee1000 0x10000>;
- -
- - sysclk: sysclk {
- - compatible = "fixed-clock";
- - #clock-cells = <0>;
- - clock-output-names = "sysclk";
- - };
- -
- - cga_pll1: pll@800 {
- - compatible = "fsl,qoriq-core-pll-2.0";
- - #clock-cells = <1>;
- - reg = <0x800 0x10>;
- - clocks = <&sysclk>;
- - clock-output-names = "cga-pll1", "cga-pll1-div2",
- - "cga-pll1-div4";
- - };
- -
- - platform_clk: pll@c00 {
- - compatible = "fsl,qoriq-core-pll-2.0";
- - #clock-cells = <1>;
- - reg = <0xc00 0x10>;
- - clocks = <&sysclk>;
- - clock-output-names = "platform-clk", "platform-clk-div2";
- - };
- -
- - cluster1_clk: clk0c0@0 {
- - compatible = "fsl,qoriq-core-mux-2.0";
- - #clock-cells = <0>;
- - reg = <0x0 0x10>;
- - clock-names = "pll1cga", "pll1cga-div2", "pll1cga-div4";
- - clocks = <&cga_pll1 0>, <&cga_pll1 1>, <&cga_pll1 2>;
- - clock-output-names = "cluster1-clk";
- - };
- + compatible = "fsl,ls1021a-clockgen";
- + reg = <0x0 0x1ee1000 0x0 0x1000>;
- + #clock-cells = <2>;
- + clocks = <&sysclk>;
- };
-
- dspi0: dspi@2100000 {
- @@ -258,7 +235,7 @@
- reg = <0x0 0x2100000 0x0 0x10000>;
- interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "dspi";
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- spi-num-chipselects = <6>;
- big-endian;
- status = "disabled";
- @@ -271,12 +248,27 @@
- reg = <0x0 0x2110000 0x0 0x10000>;
- interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "dspi";
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- spi-num-chipselects = <6>;
- big-endian;
- status = "disabled";
- };
-
- + qspi: quadspi@1550000 {
- + compatible = "fsl,ls1021a-qspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x1550000 0x0 0x10000>,
- + <0x0 0x40000000 0x0 0x4000000>;
- + reg-names = "QuadSPI", "QuadSPI-memory";
- + interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
- + clock-names = "qspi_en", "qspi";
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + big-endian;
- + amba-base = <0x40000000>;
- + status = "disabled";
- + };
- +
- i2c0: i2c@2180000 {
- compatible = "fsl,vf610-i2c";
- #address-cells = <1>;
- @@ -284,7 +276,7 @@
- reg = <0x0 0x2180000 0x0 0x10000>;
- interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "i2c";
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- status = "disabled";
- };
-
- @@ -295,7 +287,7 @@
- reg = <0x0 0x2190000 0x0 0x10000>;
- interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "i2c";
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- status = "disabled";
- };
-
- @@ -306,7 +298,7 @@
- reg = <0x0 0x21a0000 0x0 0x10000>;
- interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
- clock-names = "i2c";
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- status = "disabled";
- };
-
- @@ -399,7 +391,7 @@
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x2960000 0x0 0x1000>;
- interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "ipg";
- status = "disabled";
- };
- @@ -408,7 +400,7 @@
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x2970000 0x0 0x1000>;
- interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "ipg";
- status = "disabled";
- };
- @@ -417,7 +409,7 @@
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x2980000 0x0 0x1000>;
- interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "ipg";
- status = "disabled";
- };
- @@ -426,7 +418,7 @@
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x2990000 0x0 0x1000>;
- interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "ipg";
- status = "disabled";
- };
- @@ -435,16 +427,26 @@
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x29a0000 0x0 0x1000>;
- interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "ipg";
- status = "disabled";
- };
-
- + ftm0: ftm0@29d0000 {
- + compatible = "fsl,ls1021a-ftm";
- + reg = <0x0 0x29d0000 0x0 0x10000>,
- + <0x0 0x1ee2140 0x0 0x4>;
- + reg-names = "ftm", "FlexTimer1";
- + interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
- + big-endian;
- + status = "okay";
- + };
- +
- wdog0: watchdog@2ad0000 {
- compatible = "fsl,imx21-wdt";
- reg = <0x0 0x2ad0000 0x0 0x10000>;
- interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>;
- + clocks = <&clockgen 4 1>;
- clock-names = "wdog-en";
- big-endian;
- };
- @@ -454,8 +456,8 @@
- compatible = "fsl,vf610-sai";
- reg = <0x0 0x2b50000 0x0 0x10000>;
- interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>, <&platform_clk 1>,
- - <&platform_clk 1>, <&platform_clk 1>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>,
- + <&clockgen 4 1>, <&clockgen 4 1>;
- clock-names = "bus", "mclk1", "mclk2", "mclk3";
- dma-names = "tx", "rx";
- dmas = <&edma0 1 47>,
- @@ -468,8 +470,8 @@
- compatible = "fsl,vf610-sai";
- reg = <0x0 0x2b60000 0x0 0x10000>;
- interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 1>, <&platform_clk 1>,
- - <&platform_clk 1>, <&platform_clk 1>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>,
- + <&clockgen 4 1>, <&clockgen 4 1>;
- clock-names = "bus", "mclk1", "mclk2", "mclk3";
- dma-names = "tx", "rx";
- dmas = <&edma0 1 45>,
- @@ -489,16 +491,31 @@
- dma-channels = <32>;
- big-endian;
- clock-names = "dmamux0", "dmamux1";
- - clocks = <&platform_clk 1>,
- - <&platform_clk 1>;
- + clocks = <&clockgen 4 1>,
- + <&clockgen 4 1>;
- + };
- +
- + qdma: qdma@8390000 {
- + compatible = "fsl,ls1021a-qdma";
- + reg = <0x0 0x8398000 0x0 0x1000>, /* Controller regs */
- + <0x0 0x8399000 0x0 0x1000>, /* Status regs */
- + <0x0 0x839a000 0x0 0x2000>; /* Block regs */
- + interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-names = "qdma-error", "qdma-queue";
- + channels = <8>;
- + queues = <2>;
- + status-sizes = <64>;
- + queue-sizes = <64 64>;
- + big-endian;
- };
-
- dcu: dcu@2ce0000 {
- compatible = "fsl,ls1021a-dcu";
- reg = <0x0 0x2ce0000 0x0 0x10000>;
- interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
- - clocks = <&platform_clk 0>,
- - <&platform_clk 0>;
- + clocks = <&clockgen 4 0>,
- + <&clockgen 4 0>;
- clock-names = "dcu", "pix";
- big-endian;
- status = "disabled";
- @@ -626,6 +643,8 @@
- interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
- dr_mode = "host";
- snps,quirk-frame-length-adjustment = <0x20>;
- + configure-gfladj;
- + dma-coherent;
- snps,dis_rxdet_inp3_quirk;
- };
-
- @@ -634,7 +653,9 @@
- reg = <0x00 0x03400000 0x0 0x00010000 /* controller registers */
- 0x40 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
- - interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; /* controller interrupt */
- + interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "pme", "aer";
- fsl,pcie-scfg = <&scfg 0>;
- #address-cells = <3>;
- #size-cells = <2>;
- @@ -643,7 +664,7 @@
- bus-range = <0x0 0xff>;
- ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */
- 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&msi1>;
- + msi-parent = <&msi1>, <&msi2>;
- #interrupt-cells = <1>;
- interrupt-map-mask = <0 0 0 7>;
- interrupt-map = <0000 0 0 1 &gic GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
- @@ -657,7 +678,9 @@
- reg = <0x00 0x03500000 0x0 0x00010000 /* controller registers */
- 0x48 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
- - interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
- + interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "pme", "aer";
- fsl,pcie-scfg = <&scfg 1>;
- #address-cells = <3>;
- #size-cells = <2>;
- @@ -666,7 +689,7 @@
- bus-range = <0x0 0xff>;
- ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000 /* downstream I/O */
- 0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&msi2>;
- + msi-parent = <&msi1>, <&msi2>;
- #interrupt-cells = <1>;
- interrupt-map-mask = <0 0 0 7>;
- interrupt-map = <0000 0 0 1 &gic GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
- @@ -674,5 +697,45 @@
- <0000 0 0 3 &gic GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
- <0000 0 0 4 &gic GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
- };
- +
- + can0: can@2a70000 {
- + compatible = "fsl,ls1021ar2-flexcan";
- + reg = <0x0 0x2a70000 0x0 0x1000>;
- + interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + clock-names = "ipg", "per";
- + big-endian;
- + status = "disabled";
- + };
- +
- + can1: can@2a80000 {
- + compatible = "fsl,ls1021ar2-flexcan";
- + reg = <0x0 0x2a80000 0x0 0x1000>;
- + interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + clock-names = "ipg", "per";
- + big-endian;
- + status = "disabled";
- + };
- +
- + can2: can@2a90000 {
- + compatible = "fsl,ls1021ar2-flexcan";
- + reg = <0x0 0x2a90000 0x0 0x1000>;
- + interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + clock-names = "ipg", "per";
- + big-endian;
- + status = "disabled";
- + };
- +
- + can3: can@2aa0000 {
- + compatible = "fsl,ls1021ar2-flexcan";
- + reg = <0x0 0x2aa0000 0x0 0x1000>;
- + interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + clock-names = "ipg", "per";
- + big-endian;
- + status = "disabled";
- + };
- };
- };
- --- a/arch/arm/boot/dts/mt6580.dtsi
- +++ b/arch/arm/boot/dts/mt6580.dtsi
- @@ -91,7 +91,7 @@
- #interrupt-cells = <3>;
- interrupt-parent = <&gic>;
- reg = <0x10211000 0x1000>,
- - <0x10212000 0x1000>,
- + <0x10212000 0x2000>,
- <0x10214000 0x2000>,
- <0x10216000 0x2000>;
- };
- --- a/arch/arm/boot/dts/mt6589.dtsi
- +++ b/arch/arm/boot/dts/mt6589.dtsi
- @@ -102,7 +102,7 @@
- #interrupt-cells = <3>;
- interrupt-parent = <&gic>;
- reg = <0x10211000 0x1000>,
- - <0x10212000 0x1000>,
- + <0x10212000 0x2000>,
- <0x10214000 0x2000>,
- <0x10216000 0x2000>;
- };
- --- a/arch/arm/boot/dts/mt8127.dtsi
- +++ b/arch/arm/boot/dts/mt8127.dtsi
- @@ -129,7 +129,7 @@
- #interrupt-cells = <3>;
- interrupt-parent = <&gic>;
- reg = <0 0x10211000 0 0x1000>,
- - <0 0x10212000 0 0x1000>,
- + <0 0x10212000 0 0x2000>,
- <0 0x10214000 0 0x2000>,
- <0 0x10216000 0 0x2000>;
- };
- --- a/arch/arm/boot/dts/mt8135.dtsi
- +++ b/arch/arm/boot/dts/mt8135.dtsi
- @@ -221,7 +221,7 @@
- #interrupt-cells = <3>;
- interrupt-parent = <&gic>;
- reg = <0 0x10211000 0 0x1000>,
- - <0 0x10212000 0 0x1000>,
- + <0 0x10212000 0 0x2000>,
- <0 0x10214000 0 0x2000>,
- <0 0x10216000 0 0x2000>;
- };
- --- a/arch/arm/boot/dts/rk3288.dtsi
- +++ b/arch/arm/boot/dts/rk3288.dtsi
- @@ -1109,7 +1109,7 @@
- #address-cells = <0>;
-
- reg = <0xffc01000 0x1000>,
- - <0xffc02000 0x1000>,
- + <0xffc02000 0x2000>,
- <0xffc04000 0x2000>,
- <0xffc06000 0x2000>;
- interrupts = <GIC_PPI 9 0xf04>;
- --- a/arch/arm/boot/dts/sun6i-a31.dtsi
- +++ b/arch/arm/boot/dts/sun6i-a31.dtsi
- @@ -791,7 +791,7 @@
- gic: interrupt-controller@01c81000 {
- compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
- reg = <0x01c81000 0x1000>,
- - <0x01c82000 0x1000>,
- + <0x01c82000 0x2000>,
- <0x01c84000 0x2000>,
- <0x01c86000 0x2000>;
- interrupt-controller;
- --- a/arch/arm/boot/dts/sun7i-a20.dtsi
- +++ b/arch/arm/boot/dts/sun7i-a20.dtsi
- @@ -1685,9 +1685,9 @@
- };
-
- gic: interrupt-controller@01c81000 {
- - compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
- + compatible = "arm,gic-400", "arm,cortex-a7-gic", "arm,cortex-a15-gic";
- reg = <0x01c81000 0x1000>,
- - <0x01c82000 0x1000>,
- + <0x01c82000 0x2000>,
- <0x01c84000 0x2000>,
- <0x01c86000 0x2000>;
- interrupt-controller;
- --- a/arch/arm/boot/dts/sun8i-a23-a33.dtsi
- +++ b/arch/arm/boot/dts/sun8i-a23-a33.dtsi
- @@ -488,7 +488,7 @@
- gic: interrupt-controller@01c81000 {
- compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
- reg = <0x01c81000 0x1000>,
- - <0x01c82000 0x1000>,
- + <0x01c82000 0x2000>,
- <0x01c84000 0x2000>,
- <0x01c86000 0x2000>;
- interrupt-controller;
- --- a/arch/arm/boot/dts/sun9i-a80.dtsi
- +++ b/arch/arm/boot/dts/sun9i-a80.dtsi
- @@ -613,7 +613,7 @@
- gic: interrupt-controller@01c41000 {
- compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
- reg = <0x01c41000 0x1000>,
- - <0x01c42000 0x1000>,
- + <0x01c42000 0x2000>,
- <0x01c44000 0x2000>,
- <0x01c46000 0x2000>;
- interrupt-controller;
- --- a/arch/arm64/boot/dts/freescale/Makefile
- +++ b/arch/arm64/boot/dts/freescale/Makefile
- @@ -1,8 +1,25 @@
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-frdm.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-qds.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-rdb.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1012a-2g5rdb.dtb
- dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-qds-sdk.dtb
- dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb-sdk.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1043a-rdb-usdpaa.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-qds.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-qds-sdk.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-rdb.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-rdb-sdk.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1046a-rdb-usdpaa.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1088a-qds.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1088a-rdb.dtb
- dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-qds.dtb
- dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-rdb.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2081a-rdb.dtb
- dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2080a-simu.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-qds.dtb
- +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-rdb.dtb
-
- always := $(dtb-y)
- subdir-y := $(dts-dirs)
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-2g5rdb.dts
- @@ -0,0 +1,123 @@
- +/*
- + * Device Tree file for NXP LS1012A 2G5RDB Board.
- + *
- + * Copyright 2017 NXP
- + *
- + * Bhaskar Upadhaya <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +/dts-v1/;
- +
- +#include "fsl-ls1012a.dtsi"
- +
- +/ {
- + model = "LS1012A 2G5RDB Board";
- + compatible = "fsl,ls1012a-rdb", "fsl,ls1012a";
- +
- + aliases {
- + ethernet0 = &pfe_mac0;
- + ethernet1 = &pfe_mac1;
- + };
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +};
- +
- +&qspi {
- + num-cs = <2>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + m25p,fast-read;
- + reg = <0>;
- + };
- +};
- +
- +&sata {
- + status = "okay";
- +};
- +
- +&pfe {
- + status = "okay";
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + ethernet@0 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x0>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x1>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "sgmii-2500";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x1>; /* enabled/disabled */
- + };
- + };
- +
- + ethernet@1 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x1>; /* GEM_ID */
- + fsl,gemac-bus-id = < 0x0>; /* BUS_ID */
- + fsl,gemac-phy-id = < 0x2>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "sgmii-2500";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x0>; /* enabled/disabled */
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-frdm.dts
- @@ -0,0 +1,177 @@
- +/*
- + * Device Tree file for Freescale LS1012A Freedom Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +/dts-v1/;
- +
- +#include "fsl-ls1012a.dtsi"
- +
- +/ {
- + model = "LS1012A Freedom Board";
- + compatible = "fsl,ls1012a-frdm", "fsl,ls1012a";
- +
- + aliases {
- + ethernet0 = &pfe_mac0;
- + ethernet1 = &pfe_mac1;
- + };
- +
- + sys_mclk: clock-mclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <25000000>;
- + };
- +
- + reg_1p8v: regulator-1p8v {
- + compatible = "regulator-fixed";
- + regulator-name = "1P8V";
- + regulator-min-microvolt = <1800000>;
- + regulator-max-microvolt = <1800000>;
- + regulator-always-on;
- + };
- +
- + sound {
- + compatible = "simple-audio-card";
- + simple-audio-card,format = "i2s";
- + simple-audio-card,widgets =
- + "Microphone", "Microphone Jack",
- + "Headphone", "Headphone Jack",
- + "Speaker", "Speaker Ext",
- + "Line", "Line In Jack";
- + simple-audio-card,routing =
- + "MIC_IN", "Microphone Jack",
- + "Microphone Jack", "Mic Bias",
- + "LINE_IN", "Line In Jack",
- + "Headphone Jack", "HP_OUT",
- + "Speaker Ext", "LINE_OUT";
- +
- + simple-audio-card,cpu {
- + sound-dai = <&sai2>;
- + frame-master;
- + bitclock-master;
- + };
- +
- + simple-audio-card,codec {
- + sound-dai = <&codec>;
- + frame-master;
- + bitclock-master;
- + system-clock-frequency = <25000000>;
- + };
- + };
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + codec: sgtl5000@a {
- + #sound-dai-cells = <0>;
- + compatible = "fsl,sgtl5000";
- + reg = <0xa>;
- + VDDA-supply = <®_1p8v>;
- + VDDIO-supply = <®_1p8v>;
- + clocks = <&sys_mclk>;
- + };
- +};
- +
- +&qspi {
- + num-cs = <1>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- +&pfe {
- + status = "okay";
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + ethernet@0 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x0>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x2>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "sgmii";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x1>; /* enabled/disabled */
- + };
- + };
- +
- + ethernet@1 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x1>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x1>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x1>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "sgmii";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x0>; /* enabled/disabled */
- + };
- + };
- +};
- +
- +&sai2 {
- + status = "okay";
- +};
- +
- +&sata {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-qds.dts
- @@ -0,0 +1,202 @@
- +/*
- + * Device Tree file for Freescale LS1012A QDS Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +/dts-v1/;
- +
- +#include "fsl-ls1012a.dtsi"
- +
- +/ {
- + model = "LS1012A QDS Board";
- + compatible = "fsl,ls1012a-qds", "fsl,ls1012a";
- +
- + aliases {
- + ethernet0 = &pfe_mac0;
- + ethernet1 = &pfe_mac1;
- + };
- +
- + sys_mclk: clock-mclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <24576000>;
- + };
- +
- + reg_3p3v: regulator-3p3v {
- + compatible = "regulator-fixed";
- + regulator-name = "3P3V";
- + regulator-min-microvolt = <3300000>;
- + regulator-max-microvolt = <3300000>;
- + regulator-always-on;
- + };
- +
- + sound {
- + compatible = "simple-audio-card";
- + simple-audio-card,format = "i2s";
- + simple-audio-card,widgets =
- + "Microphone", "Microphone Jack",
- + "Headphone", "Headphone Jack",
- + "Speaker", "Speaker Ext",
- + "Line", "Line In Jack";
- + simple-audio-card,routing =
- + "MIC_IN", "Microphone Jack",
- + "Microphone Jack", "Mic Bias",
- + "LINE_IN", "Line In Jack",
- + "Headphone Jack", "HP_OUT",
- + "Speaker Ext", "LINE_OUT";
- +
- + simple-audio-card,cpu {
- + sound-dai = <&sai2>;
- + frame-master;
- + bitclock-master;
- + };
- +
- + simple-audio-card,codec {
- + sound-dai = <&codec>;
- + frame-master;
- + bitclock-master;
- + system-clock-frequency = <24576000>;
- + };
- + };
- +};
- +
- +&pcie {
- + status = "okay";
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + pca9547@77 {
- + compatible = "nxp,pca9547";
- + reg = <0x77>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + i2c@4 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x4>;
- +
- + codec: sgtl5000@a {
- + #sound-dai-cells = <0>;
- + compatible = "fsl,sgtl5000";
- + reg = <0xa>;
- + VDDA-supply = <®_3p3v>;
- + VDDIO-supply = <®_3p3v>;
- + clocks = <&sys_mclk>;
- + };
- + };
- + };
- +};
- +
- +&qspi {
- + num-cs = <2>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + m25p,fast-read;
- + reg = <0>;
- + };
- +};
- +
- +&pfe {
- + status = "okay";
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + ethernet@0 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x0>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x1>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x2>;
- + phy-mode = "sgmii-2500";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x1>; /* enabled/disabled */
- + };
- + };
- +
- + ethernet@1 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x1>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x1>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x2>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x3>;
- + phy-mode = "sgmii-2500";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x0>; /* enabled/disabled */
- + };
- + };
- +};
- +
- +&sai2 {
- + status = "okay";
- +};
- +
- +&sata {
- + status = "okay";
- +};
- +
- +&esdhc0 {
- + status = "okay";
- +};
- +
- +&esdhc1 {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a-rdb.dts
- @@ -0,0 +1,138 @@
- +/*
- + * Device Tree file for Freescale LS1012A RDB Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +/dts-v1/;
- +
- +#include "fsl-ls1012a.dtsi"
- +
- +/ {
- + model = "LS1012A RDB Board";
- + compatible = "fsl,ls1012a-rdb", "fsl,ls1012a";
- +
- + aliases {
- + ethernet0 = &pfe_mac0;
- + ethernet1 = &pfe_mac1;
- + };
- +};
- +
- +&pcie {
- + status = "okay";
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +};
- +
- +&qspi {
- + num-cs = <2>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + m25p,fast-read;
- + reg = <0>;
- + };
- +};
- +
- +&sata {
- + status = "okay";
- +};
- +
- +&esdhc0 {
- + sd-uhs-sdr104;
- + sd-uhs-sdr50;
- + sd-uhs-sdr25;
- + sd-uhs-sdr12;
- + status = "okay";
- +};
- +
- +&esdhc1 {
- + mmc-hs200-1_8v;
- + status = "okay";
- +};
- +
- +&pfe {
- + status = "okay";
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + ethernet@0 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0>; /* GEM_ID */
- + fsl,gemac-bus-id = <0x0>; /* BUS_ID */
- + fsl,gemac-phy-id = <0x2>; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "sgmii";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x1>; /* enabled/disabled */
- + };
- + };
- +
- + ethernet@1 {
- + compatible = "fsl,pfe-gemac-port";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x1>; /* GEM_ID */
- + fsl,gemac-bus-id = < 0x1 >; /* BUS_ID */
- + fsl,gemac-phy-id = < 0x1 >; /* PHY_ID */
- + fsl,mdio-mux-val = <0x0>;
- + phy-mode = "rgmii-txid";
- + fsl,pfe-phy-if-flags = <0x0>;
- +
- + mdio@0 {
- + reg = <0x0>; /* enabled/disabled */
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1012a.dtsi
- @@ -0,0 +1,602 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1012A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include <dt-bindings/interrupt-controller/arm-gic.h>
- +#include <dt-bindings/thermal/thermal.h>
- +
- +/ {
- + compatible = "fsl,ls1012a";
- + interrupt-parent = <&gic>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- +
- + aliases {
- + crypto = &crypto;
- + rtic_a = &rtic_a;
- + rtic_b = &rtic_b;
- + rtic_c = &rtic_c;
- + rtic_d = &rtic_d;
- + sec_mon = &sec_mon;
- + };
- +
- + cpus {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + cpu0: cpu@0 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x0>;
- + clocks = <&clockgen 1 0>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- + };
- +
- + idle-states {
- + /*
- + * PSCI node is not added default, U-boot will add missing
- + * parts if it determines to use PSCI.
- + */
- + entry-method = "arm,psci";
- +
- + CPU_PH20: cpu-ph20 {
- + compatible = "arm,idle-state";
- + idle-state-name = "PH20";
- + arm,psci-suspend-param = <0x0>;
- + entry-latency-us = <1000>;
- + exit-latency-us = <1000>;
- + min-residency-us = <3000>;
- + };
- + };
- +
- + sysclk: sysclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <125000000>;
- + clock-output-names = "sysclk";
- + };
- +
- + coreclk: coreclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <100000000>;
- + clock-output-names = "coreclk";
- + };
- +
- + timer {
- + compatible = "arm,armv8-timer";
- + interrupts = <1 13 IRQ_TYPE_LEVEL_LOW>,/* Physical Secure PPI */
- + <1 14 IRQ_TYPE_LEVEL_LOW>,/* Physical Non-Secure PPI */
- + <1 11 IRQ_TYPE_LEVEL_LOW>,/* Virtual PPI */
- + <1 10 IRQ_TYPE_LEVEL_LOW>;/* Hypervisor PPI */
- + };
- +
- + pmu {
- + compatible = "arm,armv8-pmuv3";
- + interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + gic: interrupt-controller@1400000 {
- + compatible = "arm,gic-400";
- + #interrupt-cells = <3>;
- + interrupt-controller;
- + reg = <0x0 0x1401000 0 0x1000>, /* GICD */
- + <0x0 0x1402000 0 0x2000>, /* GICC */
- + <0x0 0x1404000 0 0x2000>, /* GICH */
- + <0x0 0x1406000 0 0x2000>; /* GICV */
- + interrupts = <1 9 IRQ_TYPE_LEVEL_LOW>;
- + };
- +
- + reboot {
- + compatible = "syscon-reboot";
- + regmap = <&dcfg>;
- + offset = <0xb0>;
- + mask = <0x02>;
- + };
- +
- + soc {
- + compatible = "simple-bus";
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + scfg: scfg@1570000 {
- + compatible = "fsl,ls1012a-scfg", "syscon";
- + reg = <0x0 0x1570000 0x0 0x10000>;
- + big-endian;
- + };
- +
- + crypto: crypto@1700000 {
- + compatible = "fsl,sec-v5.4", "fsl,sec-v5.0",
- + "fsl,sec-v4.0";
- + fsl,sec-era = <8>;
- + #address-cells = <1>;
- + #size-cells = <1>;
- + ranges = <0x0 0x00 0x1700000 0x100000>;
- + reg = <0x00 0x1700000 0x0 0x100000>;
- + interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
- +
- + sec_jr0: jr@10000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x10000 0x10000>;
- + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr1: jr@20000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x20000 0x10000>;
- + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr2: jr@30000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x30000 0x10000>;
- + interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr3: jr@40000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x40000 0x10000>;
- + interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + caam-dma {
- + compatible = "fsl,sec-v5.4-dma",
- + "fsl,sec-v5.0-dma",
- + "fsl,sec-v4.0-dma";
- + };
- +
- + rtic@60000 {
- + compatible = "fsl,sec-v5.4-rtic",
- + "fsl,sec-v5.0-rtic",
- + "fsl,sec-v4.0-rtic";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + reg = <0x60000 0x100 0x60e00 0x18>;
- + ranges = <0x0 0x60100 0x500>;
- +
- + rtic_a: rtic-a@0 {
- + compatible = "fsl,sec-v5.4-rtic-memory",
- + "fsl,sec-v5.0-rtic-memory",
- + "fsl,sec-v4.0-rtic-memory";
- + reg = <0x00 0x20 0x100 0x100>;
- + };
- +
- + rtic_b: rtic-b@20 {
- + compatible = "fsl,sec-v5.4-rtic-memory",
- + "fsl,sec-v5.0-rtic-memory",
- + "fsl,sec-v4.0-rtic-memory";
- + reg = <0x20 0x20 0x200 0x100>;
- + };
- +
- + rtic_c: rtic-c@40 {
- + compatible = "fsl,sec-v5.4-rtic-memory",
- + "fsl,sec-v5.0-rtic-memory",
- + "fsl,sec-v4.0-rtic-memory";
- + reg = <0x40 0x20 0x300 0x100>;
- + };
- +
- + rtic_d: rtic-d@60 {
- + compatible = "fsl,sec-v5.4-rtic-memory",
- + "fsl,sec-v5.0-rtic-memory",
- + "fsl,sec-v4.0-rtic-memory";
- + reg = <0x60 0x20 0x400 0x100>;
- + };
- + };
- + };
- +
- + sec_mon: sec_mon@1e90000 {
- + compatible = "fsl,sec-v5.4-mon", "fsl,sec-v5.0-mon",
- + "fsl,sec-v4.0-mon";
- + reg = <0x0 0x1e90000 0x0 0x10000>;
- + interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + dcfg: dcfg@1ee0000 {
- + compatible = "fsl,ls1012a-dcfg",
- + "syscon";
- + reg = <0x0 0x1ee0000 0x0 0x10000>;
- + big-endian;
- + };
- +
- + clockgen: clocking@1ee1000 {
- + compatible = "fsl,ls1012a-clockgen";
- + reg = <0x0 0x1ee1000 0x0 0x1000>;
- + #clock-cells = <2>;
- + clocks = <&sysclk &coreclk>;
- + clock-names = "sysclk", "coreclk";
- + };
- +
- + tmu: tmu@1f00000 {
- + compatible = "fsl,qoriq-tmu";
- + reg = <0x0 0x1f00000 0x0 0x10000>;
- + interrupts = <0 33 0x4>;
- + fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
- + fsl,tmu-calibration = <0x00000000 0x00000026
- + 0x00000001 0x0000002d
- + 0x00000002 0x00000032
- + 0x00000003 0x00000039
- + 0x00000004 0x0000003f
- + 0x00000005 0x00000046
- + 0x00000006 0x0000004d
- + 0x00000007 0x00000054
- + 0x00000008 0x0000005a
- + 0x00000009 0x00000061
- + 0x0000000a 0x0000006a
- + 0x0000000b 0x00000071
- +
- + 0x00010000 0x00000025
- + 0x00010001 0x0000002c
- + 0x00010002 0x00000035
- + 0x00010003 0x0000003d
- + 0x00010004 0x00000045
- + 0x00010005 0x0000004e
- + 0x00010006 0x00000057
- + 0x00010007 0x00000061
- + 0x00010008 0x0000006b
- + 0x00010009 0x00000076
- +
- + 0x00020000 0x00000029
- + 0x00020001 0x00000033
- + 0x00020002 0x0000003d
- + 0x00020003 0x00000049
- + 0x00020004 0x00000056
- + 0x00020005 0x00000061
- + 0x00020006 0x0000006d
- +
- + 0x00030000 0x00000021
- + 0x00030001 0x0000002a
- + 0x00030002 0x0000003c
- + 0x00030003 0x0000004e>;
- + big-endian;
- + #thermal-sensor-cells = <1>;
- + };
- +
- + thermal-zones {
- + cpu_thermal: cpu-thermal {
- + polling-delay-passive = <1000>;
- + polling-delay = <5000>;
- + thermal-sensors = <&tmu 0>;
- +
- + trips {
- + cpu_alert: cpu-alert {
- + temperature = <85000>;
- + hysteresis = <2000>;
- + type = "passive";
- + };
- +
- + cpu_crit: cpu-crit {
- + temperature = <95000>;
- + hysteresis = <2000>;
- + type = "critical";
- + };
- + };
- +
- + cooling-maps {
- + map0 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu0 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + };
- + };
- + };
- +
- + esdhc0: esdhc@1560000 {
- + compatible = "fsl,ls1012a-esdhc", "fsl,esdhc";
- + reg = <0x0 0x1560000 0x0 0x10000>;
- + interrupts = <0 62 0x4>;
- + clocks = <&clockgen 4 0>;
- + voltage-ranges = <1800 1800 3300 3300>;
- + sdhci,auto-cmd12;
- + big-endian;
- + bus-width = <4>;
- + status = "disabled";
- + };
- +
- + esdhc1: esdhc@1580000 {
- + compatible = "fsl,ls1012a-esdhc", "fsl,esdhc";
- + reg = <0x0 0x1580000 0x0 0x10000>;
- + interrupts = <0 65 0x4>;
- + clocks = <&clockgen 4 0>;
- + voltage-ranges = <1800 1800 3300 3300>;
- + sdhci,auto-cmd12;
- + big-endian;
- + broken-cd;
- + bus-width = <4>;
- + status = "disabled";
- + };
- +
- + rcpm: rcpm@1ee2000 {
- + compatible = "fsl,ls1012a-rcpm", "fsl,qoriq-rcpm-2.1";
- + reg = <0x0 0x1ee2000 0x0 0x1000>;
- + fsl,#rcpm-wakeup-cells = <1>;
- + };
- +
- + ftm0: ftm0@29d0000 {
- + compatible = "fsl,ls1012a-ftm";
- + reg = <0x0 0x29d0000 0x0 0x10000>,
- + <0x0 0x1ee2140 0x0 0x4>;
- + reg-names = "ftm", "FlexTimer1";
- + interrupts = <0 86 0x4>;
- + big-endian;
- + };
- +
- + i2c0: i2c@2180000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2180000 0x0 0x10000>;
- + interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 3>;
- + status = "disabled";
- + };
- +
- + i2c1: i2c@2190000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2190000 0x0 0x10000>;
- + interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 3>;
- + status = "disabled";
- + };
- +
- + duart0: serial@21c0500 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x00 0x21c0500 0x0 0x100>;
- + interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 0>;
- + status = "disabled";
- + };
- +
- + duart1: serial@21c0600 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x00 0x21c0600 0x0 0x100>;
- + interrupts = <0 54 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 0>;
- + status = "disabled";
- + };
- +
- + gpio0: gpio@2300000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2300000 0x0 0x10000>;
- + interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio1: gpio@2310000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2310000 0x0 0x10000>;
- + interrupts = <0 67 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + qspi: quadspi@1550000 {
- + compatible = "fsl,ls1012a-qspi", "fsl,ls1021a-qspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x1550000 0x0 0x10000>,
- + <0x0 0x40000000 0x0 0x10000000>;
- + reg-names = "QuadSPI", "QuadSPI-memory";
- + interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>;
- + clock-names = "qspi_en", "qspi";
- + clocks = <&clockgen 4 0>, <&clockgen 4 0>;
- + big-endian;
- + fsl,qspi-has-second-chip;
- + status = "disabled";
- + };
- +
- + wdog0: wdog@2ad0000 {
- + compatible = "fsl,ls1012a-wdt",
- + "fsl,imx21-wdt";
- + reg = <0x0 0x2ad0000 0x0 0x10000>;
- + interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 0>;
- + big-endian;
- + };
- +
- + sai1: sai@2b50000 {
- + #sound-dai-cells = <0>;
- + compatible = "fsl,vf610-sai";
- + reg = <0x0 0x2b50000 0x0 0x10000>;
- + interrupts = <0 148 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>,
- + <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "bus", "mclk1", "mclk2", "mclk3";
- + dma-names = "tx", "rx";
- + dmas = <&edma0 1 47>,
- + <&edma0 1 46>;
- + status = "disabled";
- + };
- +
- + sai2: sai@2b60000 {
- + #sound-dai-cells = <0>;
- + compatible = "fsl,vf610-sai";
- + reg = <0x0 0x2b60000 0x0 0x10000>;
- + interrupts = <0 149 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>,
- + <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "bus", "mclk1", "mclk2", "mclk3";
- + dma-names = "tx", "rx";
- + dmas = <&edma0 1 45>,
- + <&edma0 1 44>;
- + status = "disabled";
- + };
- +
- + edma0: edma@2c00000 {
- + #dma-cells = <2>;
- + compatible = "fsl,vf610-edma";
- + reg = <0x0 0x2c00000 0x0 0x10000>,
- + <0x0 0x2c10000 0x0 0x10000>,
- + <0x0 0x2c20000 0x0 0x10000>;
- + interrupts = <0 103 IRQ_TYPE_LEVEL_HIGH>,
- + <0 103 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-names = "edma-tx", "edma-err";
- + dma-channels = <32>;
- + big-endian;
- + clock-names = "dmamux0", "dmamux1";
- + clocks = <&clockgen 4 3>,
- + <&clockgen 4 3>;
- + };
- +
- + usb0: usb3@2f00000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x2f00000 0x0 0x10000>;
- + interrupts = <0 60 0x4>;
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + usb1: usb2@8600000 {
- + compatible = "fsl-usb2-dr-v2.5", "fsl-usb2-dr";
- + reg = <0x0 0x8600000 0x0 0x1000>;
- + interrupts = <0 139 0x4>;
- + dr_mode = "host";
- + phy_type = "ulpi";
- + };
- +
- + sata: sata@3200000 {
- + compatible = "fsl,ls1012a-ahci", "fsl,ls1043a-ahci";
- + reg = <0x0 0x3200000 0x0 0x10000>,
- + <0x0 0x20140520 0x0 0x4>;
- + reg-names = "ahci", "sata-ecc";
- + interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 0>;
- + dma-coherent;
- + status = "disabled";
- + };
- +
- + msi: msi-controller1@1572000 {
- + compatible = "fsl,ls1012a-msi";
- + reg = <0x0 0x1572000 0x0 0x8>;
- + msi-controller;
- + interrupts = <0 126 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie: pcie@3400000 {
- + compatible = "fsl,ls1012a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- + 0x40 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <0 118 0x4>, /* AER interrupt */
- + <0 117 0x4>; /* PME interrupt */
- + interrupt-names = "aer", "pme";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&msi>;
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 110 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic 0 111 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic 0 112 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic 0 113 IRQ_TYPE_LEVEL_HIGH>;
- + status = "disabled";
- + };
- + };
- +
- + reserved-memory {
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + pfe_reserved: packetbuffer@83400000 {
- + reg = <0 0x83400000 0 0xc00000>;
- + };
- + };
- +
- + pfe: pfe@04000000 {
- + compatible = "fsl,pfe";
- + reg = <0x0 0x04000000 0x0 0xc00000>, /* AXI 16M */
- + <0x0 0x83400000 0x0 0xc00000>; /* PFE DDR 12M */
- + reg-names = "pfe", "pfe-ddr";
- + fsl,pfe-num-interfaces = <0x2>;
- + interrupts = <0 172 0x4>, /* HIF interrupt */
- + <0 173 0x4>, /*HIF_NOCPY interrupt */
- + <0 174 0x4>; /* WoL interrupt */
- + interrupt-names = "pfe_hif", "pfe_hif_nocpy", "pfe_wol";
- + memory-region = <&pfe_reserved>;
- + fsl,pfe-scfg = <&scfg 0>;
- + fsl,rcpm-wakeup = <&rcpm 0xf0000020>;
- + clocks = <&clockgen 4 0>;
- + clock-names = "pfe";
- +
- + status = "okay";
- + pfe_mac0: ethernet@0 {
- + };
- +
- + pfe_mac1: ethernet@1 {
- + };
- + };
- +
- + firmware {
- + optee {
- + compatible = "linaro,optee-tz";
- + method = "smc";
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043-post.dtsi
- @@ -0,0 +1,45 @@
- +/*
- + * QorIQ FMan v3 device tree nodes for ls1043
- + *
- + * Copyright 2015-2016 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +&soc {
- +
- +/* include used FMan blocks */
- +#include "qoriq-fman3-0.dtsi"
- +#include "qoriq-fman3-0-1g-0.dtsi"
- +#include "qoriq-fman3-0-1g-1.dtsi"
- +#include "qoriq-fman3-0-1g-2.dtsi"
- +#include "qoriq-fman3-0-1g-3.dtsi"
- +#include "qoriq-fman3-0-1g-4.dtsi"
- +#include "qoriq-fman3-0-1g-5.dtsi"
- +#include "qoriq-fman3-0-10g-0.dtsi"
- +
- +};
- +
- +&fman0 {
- + /* these aliases provide the FMan ports mapping */
- + enet0: ethernet@e0000 {
- + };
- +
- + enet1: ethernet@e2000 {
- + };
- +
- + enet2: ethernet@e4000 {
- + };
- +
- + enet3: ethernet@e6000 {
- + };
- +
- + enet4: ethernet@e8000 {
- + };
- +
- + enet5: ethernet@ea000 {
- + };
- +
- + enet6: ethernet@f0000 {
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds-sdk.dts
- @@ -0,0 +1,69 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- + *
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include "fsl-ls1043a-qds.dts"
- +
- +&bman_fbpr {
- + compatible = "fsl,bman-fbpr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_fqd {
- + compatible = "fsl,qman-fqd";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_pfdr {
- + compatible = "fsl,qman-pfdr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +
- +&soc {
- +#include "qoriq-dpaa-eth.dtsi"
- +#include "qoriq-fman3-0-6oh.dtsi"
- +};
- +
- +&fman0 {
- + compatible = "fsl,fman", "simple-bus";
- +};
- --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-qds.dts
- @@ -1,7 +1,7 @@
- /*
- * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- *
- - * Copyright 2014-2015, Freescale Semiconductor
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- *
- * Mingkai Hu <[email protected]>
- *
- @@ -45,7 +45,7 @@
- */
-
- /dts-v1/;
- -/include/ "fsl-ls1043a.dtsi"
- +#include "fsl-ls1043a.dtsi"
-
- / {
- model = "LS1043A QDS Board";
- @@ -60,6 +60,22 @@
- serial1 = &duart1;
- serial2 = &duart2;
- serial3 = &duart3;
- + sgmii_riser_s1_p1 = &sgmii_phy_s1_p1;
- + sgmii_riser_s2_p1 = &sgmii_phy_s2_p1;
- + sgmii_riser_s3_p1 = &sgmii_phy_s3_p1;
- + sgmii_riser_s4_p1 = &sgmii_phy_s4_p1;
- + qsgmii_s1_p1 = &qsgmii_phy_s1_p1;
- + qsgmii_s1_p2 = &qsgmii_phy_s1_p2;
- + qsgmii_s1_p3 = &qsgmii_phy_s1_p3;
- + qsgmii_s1_p4 = &qsgmii_phy_s1_p4;
- + qsgmii_s2_p1 = &qsgmii_phy_s2_p1;
- + qsgmii_s2_p2 = &qsgmii_phy_s2_p2;
- + qsgmii_s2_p3 = &qsgmii_phy_s2_p3;
- + qsgmii_s2_p4 = &qsgmii_phy_s2_p4;
- + emi1_slot1 = &ls1043mdio_s1;
- + emi1_slot2 = &ls1043mdio_s2;
- + emi1_slot3 = &ls1043mdio_s3;
- + emi1_slot4 = &ls1043mdio_s4;
- };
-
- chosen {
- @@ -97,8 +113,11 @@
- };
-
- fpga: board-control@2,0 {
- - compatible = "fsl,ls1043aqds-fpga", "fsl,fpga-qixis";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "fsl,ls1043aqds-fpga", "fsl,fpga-qixis", "simple-bus";
- reg = <0x2 0x0 0x0000100>;
- + ranges = <0 2 0 0x100>;
- };
- };
-
- @@ -181,3 +200,149 @@
- reg = <0>;
- };
- };
- +
- +#include "fsl-ls1043-post.dtsi"
- +
- +&fman0 {
- + ethernet@e0000 {
- + phy-handle = <&qsgmii_phy_s2_p1>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@e2000 {
- + phy-handle = <&qsgmii_phy_s2_p2>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@e4000 {
- + phy-handle = <&rgmii_phy1>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e6000 {
- + phy-handle = <&rgmii_phy2>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e8000 {
- + phy-handle = <&qsgmii_phy_s2_p3>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@ea000 {
- + phy-handle = <&qsgmii_phy_s2_p4>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@f0000 { /* DTSEC9/10GEC1 */
- + fixed-link = <1 1 10000 0 0>;
- + phy-connection-type = "xgmii";
- + };
- +};
- +
- +&fpga {
- + mdio-mux-emi1 {
- + compatible = "mdio-mux-mmioreg", "mdio-mux";
- + mdio-parent-bus = <&mdio0>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x54 1>; /* BRDCFG4 */
- + mux-mask = <0xe0>; /* EMI1 */
- +
- + /* On-board RGMII1 PHY */
- + ls1043mdio0: mdio@0 {
- + reg = <0>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + rgmii_phy1: ethernet-phy@1 { /* MAC3 */
- + reg = <0x1>;
- + };
- + };
- +
- + /* On-board RGMII2 PHY */
- + ls1043mdio1: mdio@1 {
- + reg = <0x20>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + rgmii_phy2: ethernet-phy@2 { /* MAC4 */
- + reg = <0x2>;
- + };
- + };
- +
- + /* Slot 1 */
- + ls1043mdio_s1: mdio@2 {
- + reg = <0x40>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + qsgmii_phy_s1_p1: ethernet-phy@4 {
- + reg = <0x4>;
- + };
- + qsgmii_phy_s1_p2: ethernet-phy@5 {
- + reg = <0x5>;
- + };
- + qsgmii_phy_s1_p3: ethernet-phy@6 {
- + reg = <0x6>;
- + };
- + qsgmii_phy_s1_p4: ethernet-phy@7 {
- + reg = <0x7>;
- + };
- +
- + sgmii_phy_s1_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- + };
- +
- + /* Slot 2 */
- + ls1043mdio_s2: mdio@3 {
- + reg = <0x60>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + qsgmii_phy_s2_p1: ethernet-phy@8 {
- + reg = <0x8>;
- + };
- + qsgmii_phy_s2_p2: ethernet-phy@9 {
- + reg = <0x9>;
- + };
- + qsgmii_phy_s2_p3: ethernet-phy@a {
- + reg = <0xa>;
- + };
- + qsgmii_phy_s2_p4: ethernet-phy@b {
- + reg = <0xb>;
- + };
- +
- + sgmii_phy_s2_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- + };
- +
- + /* Slot 3 */
- + ls1043mdio_s3: mdio@4 {
- + reg = <0x80>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + sgmii_phy_s3_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- + };
- +
- + /* Slot 4 */
- + ls1043mdio_s4: mdio@5 {
- + reg = <0xa0>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + sgmii_phy_s4_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb-sdk.dts
- @@ -0,0 +1,69 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- + *
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include "fsl-ls1043a-rdb.dts"
- +
- +&bman_fbpr {
- + compatible = "fsl,bman-fbpr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_fqd {
- + compatible = "fsl,qman-fqd";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_pfdr {
- + compatible = "fsl,qman-pfdr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +
- +&soc {
- +#include "qoriq-dpaa-eth.dtsi"
- +#include "qoriq-fman3-0-6oh.dtsi"
- +};
- +
- +&fman0 {
- + compatible = "fsl,fman", "simple-bus";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb-usdpaa.dts
- @@ -0,0 +1,117 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- + *
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- + *
- + * This file is licensed under the terms of the GNU General Public
- + * License version 2. This program is licensed "as is" without any
- + * warranty of any kind, whether express or implied.
- + */
- +
- +#include "fsl-ls1043a-rdb-sdk.dts"
- +
- +&soc {
- + bp7: buffer-pool@7 {
- + compatible = "fsl,p4080-bpool", "fsl,bpool";
- + fsl,bpid = <7>;
- + fsl,bpool-ethernet-cfg = <0 0 0 192 0 0xdeadbeef>;
- + fsl,bpool-thresholds = <0x400 0xc00 0x0 0x0>;
- + };
- +
- + bp8: buffer-pool@8 {
- + compatible = "fsl,p4080-bpool", "fsl,bpool";
- + fsl,bpid = <8>;
- + fsl,bpool-ethernet-cfg = <0 0 0 576 0 0xabbaf00d>;
- + fsl,bpool-thresholds = <0x100 0x300 0x0 0x0>;
- + };
- +
- + bp9: buffer-pool@9 {
- + compatible = "fsl,p4080-bpool", "fsl,bpool";
- + fsl,bpid = <9>;
- + fsl,bpool-ethernet-cfg = <0 0 0 2048 0 0xfeedabba>;
- + fsl,bpool-thresholds = <0x100 0x300 0x0 0x0>;
- + };
- +
- + fsl,dpaa {
- + compatible = "fsl,ls1043a", "fsl,dpaa", "simple-bus";
- +
- + ethernet@0 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x50 1 0x51 1>;
- + fsl,qman-frame-queues-tx = <0x70 1 0x71 1>;
- + };
- +
- + ethernet@1 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x52 1 0x53 1>;
- + fsl,qman-frame-queues-tx = <0x72 1 0x73 1>;
- + };
- +
- + ethernet@2 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x54 1 0x55 1>;
- + fsl,qman-frame-queues-tx = <0x74 1 0x75 1>;
- + };
- +
- + ethernet@3 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x56 1 0x57 1>;
- + fsl,qman-frame-queues-tx = <0x76 1 0x77 1>;
- + };
- +
- + ethernet@4 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x58 1 0x59 1>;
- + fsl,qman-frame-queues-tx = <0x78 1 0x79 1>;
- + };
- +
- + ethernet@5 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x60 1 0x61 1>;
- + fsl,qman-frame-queues-tx = <0x80 1 0x81 1>;
- + };
- +
- + ethernet@8 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x5c 1 0x5d 1>;
- + fsl,qman-frame-queues-tx = <0x7c 1 0x7d 1>;
- +
- + };
- + dpa-fman0-oh@2 {
- + compatible = "fsl,dpa-oh";
- + /* Define frame queues for the OH port*/
- + /* <OH Rx error, OH Rx default> */
- + fsl,qman-frame-queues-oh = <0x5a 1 0x5b 1>;
- + fsl,fman-oh-port = <&fman0_oh2>;
- + };
- + };
- +};
- +/ {
- + reserved-memory {
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + usdpaa_mem: usdpaa_mem {
- + compatible = "fsl,usdpaa-mem";
- + alloc-ranges = <0 0 0x10000 0>;
- + size = <0 0x10000000>;
- + alignment = <0 0x10000000>;
- + };
- + };
- +};
- +
- +&fman0 {
- + fman0_oh2: port@83000 {
- + cell-index = <1>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x83000 0x1000>;
- + };
- +};
- --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a-rdb.dts
- @@ -1,7 +1,7 @@
- /*
- * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- *
- - * Copyright 2014-2015, Freescale Semiconductor
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- *
- * Mingkai Hu <[email protected]>
- *
- @@ -45,7 +45,7 @@
- */
-
- /dts-v1/;
- -/include/ "fsl-ls1043a.dtsi"
- +#include "fsl-ls1043a.dtsi"
-
- / {
- model = "LS1043A RDB Board";
- @@ -86,6 +86,10 @@
- compatible = "pericom,pt7c4338";
- reg = <0x68>;
- };
- + rtc@51 {
- + compatible = "nxp,pcf85263";
- + reg = <0x51>;
- + };
- };
-
- &ifc {
- @@ -130,6 +134,38 @@
- reg = <0>;
- spi-max-frequency = <1000000>; /* input clock */
- };
- +
- + slic@2 {
- + compatible = "maxim,ds26522";
- + reg = <2>;
- + spi-max-frequency = <2000000>;
- + fsl,spi-cs-sck-delay = <100>;
- + fsl,spi-sck-cs-delay = <50>;
- + };
- +
- + slic@3 {
- + compatible = "maxim,ds26522";
- + reg = <3>;
- + spi-max-frequency = <2000000>;
- + fsl,spi-cs-sck-delay = <100>;
- + fsl,spi-sck-cs-delay = <50>;
- + };
- +};
- +
- +&uqe {
- + ucc_hdlc: ucc@2000 {
- + compatible = "fsl,ucc-hdlc";
- + rx-clock-name = "clk8";
- + tx-clock-name = "clk9";
- + fsl,rx-sync-clock = "rsync_pin";
- + fsl,tx-sync-clock = "tsync_pin";
- + fsl,tx-timeslot-mask = <0xfffffffe>;
- + fsl,rx-timeslot-mask = <0xfffffffe>;
- + fsl,tdm-framer-type = "e1";
- + fsl,tdm-id = <0>;
- + fsl,siram-entry-id = <0>;
- + fsl,tdm-interface;
- + };
- };
-
- &duart0 {
- @@ -139,3 +175,76 @@
- &duart1 {
- status = "okay";
- };
- +
- +#include "fsl-ls1043-post.dtsi"
- +
- +&fman0 {
- + ethernet@e0000 {
- + phy-handle = <&qsgmii_phy1>;
- + phy-connection-type = "qsgmii";
- + };
- +
- + ethernet@e2000 {
- + phy-handle = <&qsgmii_phy2>;
- + phy-connection-type = "qsgmii";
- + };
- +
- + ethernet@e4000 {
- + phy-handle = <&rgmii_phy1>;
- + phy-connection-type = "rgmii-txid";
- + };
- +
- + ethernet@e6000 {
- + phy-handle = <&rgmii_phy2>;
- + phy-connection-type = "rgmii-txid";
- + };
- +
- + ethernet@e8000 {
- + phy-handle = <&qsgmii_phy3>;
- + phy-connection-type = "qsgmii";
- + };
- +
- + ethernet@ea000 {
- + phy-handle = <&qsgmii_phy4>;
- + phy-connection-type = "qsgmii";
- + };
- +
- + ethernet@f0000 { /* 10GEC1 */
- + phy-handle = <&aqr105_phy>;
- + phy-connection-type = "xgmii";
- + };
- +
- + mdio@fc000 {
- + rgmii_phy1: ethernet-phy@1 {
- + reg = <0x1>;
- + };
- +
- + rgmii_phy2: ethernet-phy@2 {
- + reg = <0x2>;
- + };
- +
- + qsgmii_phy1: ethernet-phy@4 {
- + reg = <0x4>;
- + };
- +
- + qsgmii_phy2: ethernet-phy@5 {
- + reg = <0x5>;
- + };
- +
- + qsgmii_phy3: ethernet-phy@6 {
- + reg = <0x6>;
- + };
- +
- + qsgmii_phy4: ethernet-phy@7 {
- + reg = <0x7>;
- + };
- + };
- +
- + mdio@fd000 {
- + aqr105_phy: ethernet-phy@1 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 132 4>;
- + reg = <0x1>;
- + };
- + };
- +};
- --- a/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1043a.dtsi
- @@ -1,7 +1,7 @@
- /*
- * Device Tree Include file for Freescale Layerscape-1043A family SoC.
- *
- - * Copyright 2014-2015, Freescale Semiconductor
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- *
- * Mingkai Hu <[email protected]>
- *
- @@ -44,12 +44,25 @@
- * OTHER DEALINGS IN THE SOFTWARE.
- */
-
- +#include <dt-bindings/thermal/thermal.h>
- +
- / {
- compatible = "fsl,ls1043a";
- interrupt-parent = <&gic>;
- #address-cells = <2>;
- #size-cells = <2>;
-
- + aliases {
- + fman0 = &fman0;
- + ethernet0 = &enet0;
- + ethernet1 = &enet1;
- + ethernet2 = &enet2;
- + ethernet3 = &enet3;
- + ethernet4 = &enet4;
- + ethernet5 = &enet5;
- + ethernet6 = &enet6;
- + };
- +
- cpus {
- #address-cells = <1>;
- #size-cells = <0>;
- @@ -66,6 +79,8 @@
- reg = <0x0>;
- clocks = <&clockgen 1 0>;
- next-level-cache = <&l2>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- };
-
- cpu1: cpu@1 {
- @@ -74,6 +89,7 @@
- reg = <0x1>;
- clocks = <&clockgen 1 0>;
- next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- };
-
- cpu2: cpu@2 {
- @@ -82,6 +98,7 @@
- reg = <0x2>;
- clocks = <&clockgen 1 0>;
- next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- };
-
- cpu3: cpu@3 {
- @@ -90,6 +107,7 @@
- reg = <0x3>;
- clocks = <&clockgen 1 0>;
- next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- };
-
- l2: l2-cache {
- @@ -97,12 +115,56 @@
- };
- };
-
- + idle-states {
- + /*
- + * PSCI node is not added default, U-boot will add missing
- + * parts if it determines to use PSCI.
- + */
- + entry-method = "arm,psci";
- +
- + CPU_PH20: cpu-ph20 {
- + compatible = "arm,idle-state";
- + idle-state-name = "PH20";
- + arm,psci-suspend-param = <0x0>;
- + entry-latency-us = <1000>;
- + exit-latency-us = <1000>;
- + min-residency-us = <3000>;
- + };
- + };
- +
- memory@80000000 {
- device_type = "memory";
- reg = <0x0 0x80000000 0 0x80000000>;
- /* DRAM space 1, size: 2GiB DRAM */
- };
-
- + reserved-memory {
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + bman_fbpr: bman-fbpr {
- + compatible = "shared-dma-pool";
- + size = <0 0x1000000>;
- + alignment = <0 0x1000000>;
- + no-map;
- + };
- +
- + qman_fqd: qman-fqd {
- + compatible = "shared-dma-pool";
- + size = <0 0x400000>;
- + alignment = <0 0x400000>;
- + no-map;
- + };
- +
- + qman_pfdr: qman-pfdr {
- + compatible = "shared-dma-pool";
- + size = <0 0x2000000>;
- + alignment = <0 0x2000000>;
- + no-map;
- + };
- + };
- +
- sysclk: sysclk {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- @@ -149,7 +211,7 @@
- interrupts = <1 9 0xf08>;
- };
-
- - soc {
- + soc: soc {
- compatible = "simple-bus";
- #address-cells = <2>;
- #size-cells = <2>;
- @@ -213,13 +275,14 @@
-
- dcfg: dcfg@1ee0000 {
- compatible = "fsl,ls1043a-dcfg", "syscon";
- - reg = <0x0 0x1ee0000 0x0 0x10000>;
- + reg = <0x0 0x1ee0000 0x0 0x1000>;
- big-endian;
- };
-
- ifc: ifc@1530000 {
- compatible = "fsl,ifc", "simple-bus";
- reg = <0x0 0x1530000 0x0 0x10000>;
- + big-endian;
- interrupts = <0 43 0x4>;
- };
-
- @@ -255,6 +318,103 @@
- big-endian;
- };
-
- + tmu: tmu@1f00000 {
- + compatible = "fsl,qoriq-tmu";
- + reg = <0x0 0x1f00000 0x0 0x10000>;
- + interrupts = <0 33 0x4>;
- + fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
- + fsl,tmu-calibration = <0x00000000 0x00000026
- + 0x00000001 0x0000002d
- + 0x00000002 0x00000032
- + 0x00000003 0x00000039
- + 0x00000004 0x0000003f
- + 0x00000005 0x00000046
- + 0x00000006 0x0000004d
- + 0x00000007 0x00000054
- + 0x00000008 0x0000005a
- + 0x00000009 0x00000061
- + 0x0000000a 0x0000006a
- + 0x0000000b 0x00000071
- +
- + 0x00010000 0x00000025
- + 0x00010001 0x0000002c
- + 0x00010002 0x00000035
- + 0x00010003 0x0000003d
- + 0x00010004 0x00000045
- + 0x00010005 0x0000004e
- + 0x00010006 0x00000057
- + 0x00010007 0x00000061
- + 0x00010008 0x0000006b
- + 0x00010009 0x00000076
- +
- + 0x00020000 0x00000029
- + 0x00020001 0x00000033
- + 0x00020002 0x0000003d
- + 0x00020003 0x00000049
- + 0x00020004 0x00000056
- + 0x00020005 0x00000061
- + 0x00020006 0x0000006d
- +
- + 0x00030000 0x00000021
- + 0x00030001 0x0000002a
- + 0x00030002 0x0000003c
- + 0x00030003 0x0000004e>;
- + #thermal-sensor-cells = <1>;
- + };
- +
- + thermal-zones {
- + cpu_thermal: cpu-thermal {
- + polling-delay-passive = <1000>;
- + polling-delay = <5000>;
- +
- + thermal-sensors = <&tmu 3>;
- +
- + trips {
- + cpu_alert: cpu-alert {
- + temperature = <85000>;
- + hysteresis = <2000>;
- + type = "passive";
- + };
- + cpu_crit: cpu-crit {
- + temperature = <95000>;
- + hysteresis = <2000>;
- + type = "critical";
- + };
- + };
- +
- + cooling-maps {
- + map0 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu0 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + };
- + };
- + };
- +
- + qman: qman@1880000 {
- + compatible = "fsl,qman";
- + reg = <0x00 0x1880000 0x0 0x10000>;
- + interrupts = <0 45 0x4>;
- + memory-region = <&qman_fqd &qman_pfdr>;
- + };
- +
- + bman: bman@1890000 {
- + compatible = "fsl,bman";
- + reg = <0x00 0x1890000 0x0 0x10000>;
- + interrupts = <0 45 0x4>;
- + memory-region = <&bman_fbpr>;
- + };
- +
- + bportals: bman-portals@508000000 {
- + ranges = <0x0 0x5 0x08000000 0x8000000>;
- + };
- +
- + qportals: qman-portals@500000000 {
- + ranges = <0x0 0x5 0x00000000 0x8000000>;
- + };
- +
- dspi0: dspi@2100000 {
- compatible = "fsl,ls1043a-dspi", "fsl,ls1021a-v1.0-dspi";
- #address-cells = <1>;
- @@ -396,6 +556,72 @@
- #interrupt-cells = <2>;
- };
-
- + uqe: uqe@2400000 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + device_type = "qe";
- + compatible = "fsl,qe", "simple-bus";
- + ranges = <0x0 0x0 0x2400000 0x40000>;
- + reg = <0x0 0x2400000 0x0 0x480>;
- + brg-frequency = <100000000>;
- + bus-frequency = <200000000>;
- +
- + fsl,qe-num-riscs = <1>;
- + fsl,qe-num-snums = <28>;
- +
- + qeic: qeic@80 {
- + compatible = "fsl,qe-ic";
- + reg = <0x80 0x80>;
- + #address-cells = <0>;
- + interrupt-controller;
- + #interrupt-cells = <1>;
- + interrupts = <0 77 0x04 0 77 0x04>;
- + };
- +
- + si1: si@700 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,ls1043-qe-si",
- + "fsl,t1040-qe-si";
- + reg = <0x700 0x80>;
- + };
- +
- + siram1: siram@1000 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "fsl,ls1043-qe-siram",
- + "fsl,t1040-qe-siram";
- + reg = <0x1000 0x800>;
- + };
- +
- + ucc@2000 {
- + cell-index = <1>;
- + reg = <0x2000 0x200>;
- + interrupts = <32>;
- + interrupt-parent = <&qeic>;
- + };
- +
- + ucc@2200 {
- + cell-index = <3>;
- + reg = <0x2200 0x200>;
- + interrupts = <34>;
- + interrupt-parent = <&qeic>;
- + };
- +
- + muram@10000 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "fsl,qe-muram", "fsl,cpm-muram";
- + ranges = <0x0 0x10000 0x6000>;
- +
- + data-only@0 {
- + compatible = "fsl,qe-muram-data",
- + "fsl,cpm-muram-data";
- + reg = <0x0 0x6000>;
- + };
- + };
- + };
- +
- lpuart0: serial@2950000 {
- compatible = "fsl,ls1021a-lpuart";
- reg = <0x0 0x2950000 0x0 0x1000>;
- @@ -450,6 +676,16 @@
- status = "disabled";
- };
-
- + ftm0: ftm0@29d0000 {
- + compatible = "fsl,ls1043a-ftm";
- + reg = <0x0 0x29d0000 0x0 0x10000>,
- + <0x0 0x1ee2140 0x0 0x4>;
- + reg-names = "ftm", "FlexTimer1";
- + interrupts = <0 86 0x4>;
- + big-endian;
- + status = "okay";
- + };
- +
- wdog0: wdog@2ad0000 {
- compatible = "fsl,ls1043a-wdt", "fsl,imx21-wdt";
- reg = <0x0 0x2ad0000 0x0 0x10000>;
- @@ -482,6 +718,8 @@
- dr_mode = "host";
- snps,quirk-frame-length-adjustment = <0x20>;
- snps,dis_rxdet_inp3_quirk;
- + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
- + snps,dma-snooping;
- };
-
- usb1: usb3@3000000 {
- @@ -491,6 +729,9 @@
- dr_mode = "host";
- snps,quirk-frame-length-adjustment = <0x20>;
- snps,dis_rxdet_inp3_quirk;
- + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
- + snps,dma-snooping;
- + configure-gfladj;
- };
-
- usb2: usb3@3100000 {
- @@ -500,32 +741,52 @@
- dr_mode = "host";
- snps,quirk-frame-length-adjustment = <0x20>;
- snps,dis_rxdet_inp3_quirk;
- + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
- + snps,dma-snooping;
- + configure-gfladj;
- };
-
- sata: sata@3200000 {
- compatible = "fsl,ls1043a-ahci";
- - reg = <0x0 0x3200000 0x0 0x10000>;
- + reg = <0x0 0x3200000 0x0 0x10000>,
- + <0x0 0x20140520 0x0 0x4>;
- + reg-names = "ahci", "sata-ecc";
- interrupts = <0 69 0x4>;
- clocks = <&clockgen 4 0>;
- dma-coherent;
- };
-
- + qdma: qdma@8380000 {
- + compatible = "fsl,ls1021a-qdma", "fsl,ls1043a-qdma";
- + reg = <0x0 0x8380000 0x0 0x1000>, /* Controller regs */
- + <0x0 0x8390000 0x0 0x10000>, /* Status regs */
- + <0x0 0x83a0000 0x0 0x40000>; /* Block regs */
- + interrupts = <0 152 0x4>,
- + <0 39 0x4>;
- + interrupt-names = "qdma-error", "qdma-queue";
- + channels = <8>;
- + queues = <2>;
- + status-sizes = <64>;
- + queue-sizes = <64 64>;
- + big-endian;
- + };
- +
- msi1: msi-controller1@1571000 {
- - compatible = "fsl,1s1043a-msi";
- + compatible = "fsl,ls1043a-msi";
- reg = <0x0 0x1571000 0x0 0x8>;
- msi-controller;
- interrupts = <0 116 0x4>;
- };
-
- msi2: msi-controller2@1572000 {
- - compatible = "fsl,1s1043a-msi";
- + compatible = "fsl,ls1043a-msi";
- reg = <0x0 0x1572000 0x0 0x8>;
- msi-controller;
- interrupts = <0 126 0x4>;
- };
-
- msi3: msi-controller3@1573000 {
- - compatible = "fsl,1s1043a-msi";
- + compatible = "fsl,ls1043a-msi";
- reg = <0x0 0x1573000 0x0 0x8>;
- msi-controller;
- interrupts = <0 160 0x4>;
- @@ -536,9 +797,9 @@
- reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- 0x40 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
- - interrupts = <0 118 0x4>, /* controller interrupt */
- - <0 117 0x4>; /* PME interrupt */
- - interrupt-names = "intr", "pme";
- + interrupts = <0 117 0x4>, /* PME interrupt */
- + <0 118 0x4>; /* aer interrupt */
- + interrupt-names = "pme", "aer";
- #address-cells = <3>;
- #size-cells = <2>;
- device_type = "pci";
- @@ -547,7 +808,7 @@
- bus-range = <0x0 0xff>;
- ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */
- 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&msi1>;
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- #interrupt-cells = <1>;
- interrupt-map-mask = <0 0 0 7>;
- interrupt-map = <0000 0 0 1 &gic 0 110 0x4>,
- @@ -561,9 +822,9 @@
- reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- 0x48 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
- - interrupts = <0 128 0x4>,
- - <0 127 0x4>;
- - interrupt-names = "intr", "pme";
- + interrupts = <0 127 0x4>,
- + <0 128 0x4>;
- + interrupt-names = "pme", "aer";
- #address-cells = <3>;
- #size-cells = <2>;
- device_type = "pci";
- @@ -572,7 +833,7 @@
- bus-range = <0x0 0xff>;
- ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000 /* downstream I/O */
- 0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&msi2>;
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- #interrupt-cells = <1>;
- interrupt-map-mask = <0 0 0 7>;
- interrupt-map = <0000 0 0 1 &gic 0 120 0x4>,
- @@ -586,9 +847,9 @@
- reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- 0x50 0x00000000 0x0 0x00002000>; /* configuration space */
- reg-names = "regs", "config";
- - interrupts = <0 162 0x4>,
- - <0 161 0x4>;
- - interrupt-names = "intr", "pme";
- + interrupts = <0 161 0x4>,
- + <0 162 0x4>;
- + interrupt-names = "pme", "aer";
- #address-cells = <3>;
- #size-cells = <2>;
- device_type = "pci";
- @@ -597,7 +858,7 @@
- bus-range = <0x0 0xff>;
- ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000 /* downstream I/O */
- 0x82000000 0x0 0x40000000 0x50 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&msi3>;
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- #interrupt-cells = <1>;
- interrupt-map-mask = <0 0 0 7>;
- interrupt-map = <0000 0 0 1 &gic 0 154 0x4>,
- @@ -607,4 +868,13 @@
- };
- };
-
- + firmware {
- + optee {
- + compatible = "linaro,optee-tz";
- + method = "smc";
- + };
- + };
- };
- +
- +#include "qoriq-qman1-portals.dtsi"
- +#include "qoriq-bman1-portals.dtsi"
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046-post.dtsi
- @@ -0,0 +1,48 @@
- +/*
- + * QorIQ FMan v3 device tree nodes for ls1046
- + *
- + * Copyright 2015-2016 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +&soc {
- +
- +/* include used FMan blocks */
- +#include "qoriq-fman3-0.dtsi"
- +#include "qoriq-fman3-0-1g-0.dtsi"
- +#include "qoriq-fman3-0-1g-1.dtsi"
- +#include "qoriq-fman3-0-1g-2.dtsi"
- +#include "qoriq-fman3-0-1g-3.dtsi"
- +#include "qoriq-fman3-0-1g-4.dtsi"
- +#include "qoriq-fman3-0-1g-5.dtsi"
- +#include "qoriq-fman3-0-10g-0.dtsi"
- +#include "qoriq-fman3-0-10g-1.dtsi"
- +};
- +
- +&fman0 {
- + /* these aliases provide the FMan ports mapping */
- + enet0: ethernet@e0000 {
- + };
- +
- + enet1: ethernet@e2000 {
- + };
- +
- + enet2: ethernet@e4000 {
- + };
- +
- + enet3: ethernet@e6000 {
- + };
- +
- + enet4: ethernet@e8000 {
- + };
- +
- + enet5: ethernet@ea000 {
- + };
- +
- + enet6: ethernet@f0000 {
- + };
- +
- + enet7: ethernet@f2000 {
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds-sdk.dts
- @@ -0,0 +1,110 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include "fsl-ls1046a-qds.dts"
- +
- +&bman_fbpr {
- + compatible = "fsl,bman-fbpr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_fqd {
- + compatible = "fsl,qman-fqd";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_pfdr {
- + compatible = "fsl,qman-pfdr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +
- +&soc {
- +#include "qoriq-dpaa-eth.dtsi"
- +#include "qoriq-fman3-0-6oh.dtsi"
- +};
- +
- +&fsldpaa {
- + ethernet@9 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet7>;
- + dma-coherent;
- + };
- +};
- +
- +&fman0 {
- + compatible = "fsl,fman", "simple-bus";
- +};
- +
- +&dspi {
- + bus-num = <0>;
- + status = "okay";
- +
- + flash@0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "n25q128a11", "jedec,spi-nor";
- + reg = <0>;
- + spi-max-frequency = <10000000>;
- + };
- +
- + flash@1 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "sst25wf040b", "jedec,spi-nor";
- + spi-cpol;
- + spi-cpha;
- + reg = <1>;
- + spi-max-frequency = <10000000>;
- + };
- +
- + flash@2 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "en25s64", "jedec,spi-nor";
- + spi-cpol;
- + spi-cpha;
- + reg = <2>;
- + spi-max-frequency = <10000000>;
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-qds.dts
- @@ -0,0 +1,363 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * Shaohui Xie <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls1046a.dtsi"
- +
- +/ {
- + model = "LS1046A QDS Board";
- + compatible = "fsl,ls1046a-qds", "fsl,ls1046a";
- +
- + aliases {
- + gpio0 = &gpio0;
- + gpio1 = &gpio1;
- + gpio2 = &gpio2;
- + gpio3 = &gpio3;
- + serial0 = &duart0;
- + serial1 = &duart1;
- + serial2 = &duart2;
- + serial3 = &duart3;
- +
- + emi1_slot1 = &ls1046mdio_s1;
- + emi1_slot2 = &ls1046mdio_s2;
- + emi1_slot4 = &ls1046mdio_s4;
- +
- + sgmii_s1_p1 = &sgmii_phy_s1_p1;
- + sgmii_s1_p2 = &sgmii_phy_s1_p2;
- + sgmii_s1_p3 = &sgmii_phy_s1_p3;
- + sgmii_s1_p4 = &sgmii_phy_s1_p4;
- + sgmii_s4_p1 = &sgmii_phy_s4_p1;
- + qsgmii_s2_p1 = &qsgmii_phy_s2_p1;
- + qsgmii_s2_p2 = &qsgmii_phy_s2_p2;
- + qsgmii_s2_p3 = &qsgmii_phy_s2_p3;
- + qsgmii_s2_p4 = &qsgmii_phy_s2_p4;
- + };
- +
- + chosen {
- + stdout-path = "serial0:115200n8";
- + };
- +};
- +
- +&dspi {
- + bus-num = <0>;
- + status = "okay";
- +
- + flash@0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "n25q128a11", "jedec,spi-nor";
- + reg = <0>;
- + spi-max-frequency = <10000000>;
- + };
- +
- + flash@1 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "sst25wf040b", "jedec,spi-nor";
- + spi-cpol;
- + spi-cpha;
- + reg = <1>;
- + spi-max-frequency = <10000000>;
- + };
- +
- + flash@2 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "en25s64", "jedec,spi-nor";
- + spi-cpol;
- + spi-cpha;
- + reg = <2>;
- + spi-max-frequency = <10000000>;
- + };
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&duart1 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + pca9547@77 {
- + compatible = "nxp,pca9547";
- + reg = <0x77>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + i2c@2 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x2>;
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <1000>;
- + };
- +
- + ina220@41 {
- + compatible = "ti,ina220";
- + reg = <0x41>;
- + shunt-resistor = <1000>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + rtc@51 {
- + compatible = "nxp,pcf2129";
- + reg = <0x51>;
- + /* IRQ10_B */
- + interrupts = <0 150 0x4>;
- + };
- +
- + eeprom@56 {
- + compatible = "atmel,24c512";
- + reg = <0x56>;
- + };
- +
- + eeprom@57 {
- + compatible = "atmel,24c512";
- + reg = <0x57>;
- + };
- +
- + temp-sensor@4c {
- + compatible = "adi,adt7461a";
- + reg = <0x4c>;
- + };
- + };
- + };
- +};
- +
- +&ifc {
- + #address-cells = <2>;
- + #size-cells = <1>;
- + /* NOR, NAND Flashes and FPGA on board */
- + ranges = <0x0 0x0 0x0 0x60000000 0x08000000
- + 0x1 0x0 0x0 0x7e800000 0x00010000
- + 0x2 0x0 0x0 0x7fb00000 0x00000100>;
- + status = "okay";
- +
- + nor@0,0 {
- + compatible = "cfi-flash";
- + reg = <0x0 0x0 0x8000000>;
- + bank-width = <2>;
- + device-width = <1>;
- + };
- +
- + nand@1,0 {
- + compatible = "fsl,ifc-nand";
- + reg = <0x1 0x0 0x10000>;
- + };
- +
- + fpga: board-control@2,0 {
- + compatible = "fsl,ls1046aqds-fpga", "fsl,fpga-qixis", "simple-bus";
- + reg = <0x2 0x0 0x0000100>;
- + ranges = <0 2 0 0x100>;
- + };
- +};
- +
- +&lpuart0 {
- + status = "okay";
- +};
- +
- +&qspi {
- + num-cs = <2>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fl128s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- +#include "fsl-ls1046-post.dtsi"
- +
- +&fman0 {
- + ethernet@e0000 {
- + phy-handle = <&qsgmii_phy_s2_p1>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@e2000 {
- + phy-handle = <&sgmii_phy_s4_p1>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@e4000 {
- + phy-handle = <&rgmii_phy1>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e6000 {
- + phy-handle = <&rgmii_phy2>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e8000 {
- + phy-handle = <&sgmii_phy_s1_p3>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@ea000 {
- + phy-handle = <&sgmii_phy_s1_p4>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@f0000 { /* DTSEC9/10GEC1 */
- + phy-handle = <&sgmii_phy_s1_p1>;
- + phy-connection-type = "xgmii";
- + };
- +
- + ethernet@f2000 { /* DTSEC10/10GEC2 */
- + phy-handle = <&sgmii_phy_s1_p2>;
- + phy-connection-type = "xgmii";
- + };
- +};
- +
- +&fpga {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + mdio-mux-emi1 {
- + compatible = "mdio-mux-mmioreg", "mdio-mux";
- + mdio-parent-bus = <&mdio0>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x54 1>; /* BRDCFG4 */
- + mux-mask = <0xe0>; /* EMI1 */
- +
- + /* On-board RGMII1 PHY */
- + ls1046mdio0: mdio@0 {
- + reg = <0>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + rgmii_phy1: ethernet-phy@1 { /* MAC3 */
- + reg = <0x1>;
- + };
- + };
- +
- + /* On-board RGMII2 PHY */
- + ls1046mdio1: mdio@1 {
- + reg = <0x20>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + rgmii_phy2: ethernet-phy@2 { /* MAC4 */
- + reg = <0x2>;
- + };
- + };
- +
- + /* Slot 1 */
- + ls1046mdio_s1: mdio@2 {
- + reg = <0x40>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + sgmii_phy_s1_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- +
- + sgmii_phy_s1_p2: ethernet-phy@1d {
- + reg = <0x1d>;
- + };
- +
- + sgmii_phy_s1_p3: ethernet-phy@1e {
- + reg = <0x1e>;
- + };
- +
- + sgmii_phy_s1_p4: ethernet-phy@1f {
- + reg = <0x1f>;
- + };
- + };
- +
- + /* Slot 2 */
- + ls1046mdio_s2: mdio@3 {
- + reg = <0x60>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + qsgmii_phy_s2_p1: ethernet-phy@8 {
- + reg = <0x8>;
- + };
- + qsgmii_phy_s2_p2: ethernet-phy@9 {
- + reg = <0x9>;
- + };
- + qsgmii_phy_s2_p3: ethernet-phy@a {
- + reg = <0xa>;
- + };
- + qsgmii_phy_s2_p4: ethernet-phy@b {
- + reg = <0xb>;
- + };
- + };
- +
- + /* Slot 4 */
- + ls1046mdio_s4: mdio@5 {
- + reg = <0x80>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + status = "disabled";
- +
- + sgmii_phy_s4_p1: ethernet-phy@1c {
- + reg = <0x1c>;
- + };
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb-sdk.dts
- @@ -0,0 +1,83 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include "fsl-ls1046a-rdb.dts"
- +
- +&bman_fbpr {
- + compatible = "fsl,bman-fbpr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_fqd {
- + compatible = "fsl,qman-fqd";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +&qman_pfdr {
- + compatible = "fsl,qman-pfdr";
- + alloc-ranges = <0 0 0x10000 0>;
- +};
- +
- +&soc {
- +#include "qoriq-dpaa-eth.dtsi"
- +#include "qoriq-fman3-0-6oh.dtsi"
- +};
- +
- +&fsldpaa {
- + ethernet@0 {
- + status = "disabled";
- + };
- + ethernet@1 {
- + status = "disabled";
- + };
- + ethernet@9 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet7>;
- + dma-coherent;
- + };
- +};
- +
- +&fman0 {
- + compatible = "fsl,fman", "simple-bus";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb-usdpaa.dts
- @@ -0,0 +1,110 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * This file is licensed under the terms of the GNU General Public
- + * License version 2. This program is licensed "as is" without any
- + * warranty of any kind, whether express or implied.
- + */
- +
- +#include "fsl-ls1046a-rdb-sdk.dts"
- +
- +&soc {
- + bp7: buffer-pool@7 {
- + compatible = "fsl,ls1046a-bpool", "fsl,bpool";
- + fsl,bpid = <7>;
- + fsl,bpool-ethernet-cfg = <0 0 0 192 0 0xdeadbeef>;
- + fsl,bpool-thresholds = <0x400 0xc00 0x0 0x0>;
- + };
- +
- + bp8: buffer-pool@8 {
- + compatible = "fsl,ls1046a-bpool", "fsl,bpool";
- + fsl,bpid = <8>;
- + fsl,bpool-ethernet-cfg = <0 0 0 576 0 0xabbaf00d>;
- + fsl,bpool-thresholds = <0x100 0x300 0x0 0x0>;
- + };
- +
- + bp9: buffer-pool@9 {
- + compatible = "fsl,ls1046a-bpool", "fsl,bpool";
- + fsl,bpid = <9>;
- + fsl,bpool-ethernet-cfg = <0 0 0 2048 0 0xfeedabba>;
- + fsl,bpool-thresholds = <0x100 0x300 0x0 0x0>;
- + };
- +
- + fsl,dpaa {
- + compatible = "fsl,ls1046a", "fsl,dpaa", "simple-bus";
- +
- + ethernet@2 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x54 1 0x55 1>;
- + fsl,qman-frame-queues-tx = <0x74 1 0x75 1>;
- + };
- +
- + ethernet@3 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x56 1 0x57 1>;
- + fsl,qman-frame-queues-tx = <0x76 1 0x77 1>;
- + };
- +
- + ethernet@4 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x58 1 0x59 1>;
- + fsl,qman-frame-queues-tx = <0x78 1 0x79 1>;
- + };
- +
- + ethernet@5 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x5a 1 0x5b 1>;
- + fsl,qman-frame-queues-tx = <0x7a 1 0x7b 1>;
- + };
- +
- + ethernet@8 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x5c 1 0x5d 1>;
- + fsl,qman-frame-queues-tx = <0x7c 1 0x7d 1>;
- + };
- +
- + ethernet@9 {
- + compatible = "fsl,dpa-ethernet-init";
- + fsl,bman-buffer-pools = <&bp7 &bp8 &bp9>;
- + fsl,qman-frame-queues-rx = <0x5e 1 0x5f 1>;
- + fsl,qman-frame-queues-tx = <0x7e 1 0x7f 1>;
- + };
- +
- + dpa-fman0-oh@2 {
- + compatible = "fsl,dpa-oh";
- + /* Define frame queues for the OH port*/
- + /* <OH Rx error, OH Rx default> */
- + fsl,qman-frame-queues-oh = <0x60 1 0x61 1>;
- + fsl,fman-oh-port = <&fman0_oh2>;
- + };
- + };
- +};
- +/ {
- + reserved-memory {
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + usdpaa_mem: usdpaa_mem {
- + compatible = "fsl,usdpaa-mem";
- + alloc-ranges = <0 0 0x10000 0>;
- + size = <0 0x10000000>;
- + alignment = <0 0x10000000>;
- + };
- + };
- +};
- +
- +&fman0 {
- + fman0_oh2: port@83000 {
- + cell-index = <1>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x83000 0x1000>;
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a-rdb.dts
- @@ -0,0 +1,218 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls1046a.dtsi"
- +
- +/ {
- + model = "LS1046A RDB Board";
- + compatible = "fsl,ls1046a-rdb", "fsl,ls1046a";
- +
- + aliases {
- + serial0 = &duart0;
- + serial1 = &duart1;
- + serial2 = &duart2;
- + serial3 = &duart3;
- + };
- +
- + chosen {
- + stdout-path = "serial0:115200n8";
- + };
- +};
- +
- +&esdhc {
- + mmc-hs200-1_8v;
- + sd-uhs-sdr104;
- + sd-uhs-sdr50;
- + sd-uhs-sdr25;
- + sd-uhs-sdr12;
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&duart1 {
- + status = "okay";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <1000>;
- + };
- +
- + temp-sensor@4c {
- + compatible = "adi,adt7461";
- + reg = <0x4c>;
- + };
- +
- + eeprom@56 {
- + compatible = "atmel,24c512";
- + reg = <0x52>;
- + };
- +
- + eeprom@57 {
- + compatible = "atmel,24c512";
- + reg = <0x53>;
- + };
- +};
- +
- +&i2c3 {
- + status = "okay";
- +
- + rtc@51 {
- + compatible = "nxp,pcf2129";
- + reg = <0x51>;
- + };
- +};
- +
- +&ifc {
- + #address-cells = <2>;
- + #size-cells = <1>;
- + /* NAND Flashe and CPLD on board */
- + ranges = <0x0 0x0 0x0 0x7e800000 0x00010000
- + 0x2 0x0 0x0 0x7fb00000 0x00000100>;
- + status = "okay";
- +
- + nand@0,0 {
- + compatible = "fsl,ifc-nand";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + reg = <0x0 0x0 0x10000>;
- + };
- +
- + cpld: board-control@2,0 {
- + compatible = "fsl,ls1046ardb-cpld";
- + reg = <0x2 0x0 0x0000100>;
- + };
- +};
- +
- +&qspi {
- + num-cs = <2>;
- + bus-num = <0>;
- + status = "okay";
- +
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +
- + qflash1: s25fs512s@1 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + reg = <1>;
- + };
- +};
- +
- +#include "fsl-ls1046-post.dtsi"
- +
- +&fman0 {
- + ethernet@e4000 {
- + phy-handle = <&rgmii_phy1>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e6000 {
- + phy-handle = <&rgmii_phy2>;
- + phy-connection-type = "rgmii";
- + };
- +
- + ethernet@e8000 {
- + phy-handle = <&sgmii_phy1>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@ea000 {
- + phy-handle = <&sgmii_phy2>;
- + phy-connection-type = "sgmii";
- + };
- +
- + ethernet@f0000 { /* 10GEC1 */
- + phy-handle = <&aqr106_phy>;
- + phy-connection-type = "xgmii";
- + };
- +
- + ethernet@f2000 { /* 10GEC2 */
- + fixed-link = <0 1 1000 0 0>;
- + phy-connection-type = "xgmii";
- + };
- +
- + mdio@fc000 {
- + rgmii_phy1: ethernet-phy@1 {
- + reg = <0x1>;
- + };
- +
- + rgmii_phy2: ethernet-phy@2 {
- + reg = <0x2>;
- + };
- +
- + sgmii_phy1: ethernet-phy@3 {
- + reg = <0x3>;
- + };
- +
- + sgmii_phy2: ethernet-phy@4 {
- + reg = <0x4>;
- + };
- + };
- +
- + mdio@fd000 {
- + aqr106_phy: ethernet-phy@0 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 131 4>;
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi
- @@ -0,0 +1,800 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-1046A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + *
- + * Mingkai Hu <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include <dt-bindings/interrupt-controller/arm-gic.h>
- +#include <dt-bindings/thermal/thermal.h>
- +
- +/ {
- + compatible = "fsl,ls1046a";
- + interrupt-parent = <&gic>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- +
- + aliases {
- + crypto = &crypto;
- + fman0 = &fman0;
- + ethernet0 = &enet0;
- + ethernet1 = &enet1;
- + ethernet2 = &enet2;
- + ethernet3 = &enet3;
- + ethernet4 = &enet4;
- + ethernet5 = &enet5;
- + ethernet6 = &enet6;
- + ethernet7 = &enet7;
- + };
- +
- + cpus {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + cpu0: cpu@0 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x0>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + #cooling-cells = <2>;
- + };
- +
- + cpu1: cpu@1 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x1>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu2: cpu@2 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x2>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu3: cpu@3 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x3>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + l2: l2-cache {
- + compatible = "cache";
- + };
- + };
- +
- + idle-states {
- + /*
- + * PSCI node is not added default, U-boot will add missing
- + * parts if it determines to use PSCI.
- + */
- + entry-method = "arm,psci";
- +
- + CPU_PH20: cpu-ph20 {
- + compatible = "arm,idle-state";
- + idle-state-name = "PH20";
- + arm,psci-suspend-param = <0x0>;
- + entry-latency-us = <1000>;
- + exit-latency-us = <1000>;
- + min-residency-us = <3000>;
- + };
- + };
- +
- + memory@80000000 {
- + device_type = "memory";
- + };
- +
- + sysclk: sysclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <100000000>;
- + clock-output-names = "sysclk";
- + };
- +
- + reboot {
- + compatible ="syscon-reboot";
- + regmap = <&dcfg>;
- + offset = <0xb0>;
- + mask = <0x02>;
- + };
- +
- + timer {
- + compatible = "arm,armv8-timer";
- + interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(0xf) |
- + IRQ_TYPE_LEVEL_LOW)>,
- + <GIC_PPI 14 (GIC_CPU_MASK_RAW(0xf) |
- + IRQ_TYPE_LEVEL_LOW)>,
- + <GIC_PPI 11 (GIC_CPU_MASK_RAW(0xf) |
- + IRQ_TYPE_LEVEL_LOW)>,
- + <GIC_PPI 10 (GIC_CPU_MASK_RAW(0xf) |
- + IRQ_TYPE_LEVEL_LOW)>;
- + };
- +
- + pmu {
- + compatible = "arm,cortex-a72-pmu";
- + interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-affinity = <&cpu0>,
- + <&cpu1>,
- + <&cpu2>,
- + <&cpu3>;
- + };
- +
- + gic: interrupt-controller@1400000 {
- + compatible = "arm,gic-400";
- + #interrupt-cells = <3>;
- + interrupt-controller;
- + reg = <0x0 0x1410000 0 0x10000>, /* GICD */
- + <0x0 0x1420000 0 0x20000>, /* GICC */
- + <0x0 0x1440000 0 0x20000>, /* GICH */
- + <0x0 0x1460000 0 0x20000>; /* GICV */
- + interrupts = <GIC_PPI 9 (GIC_CPU_MASK_RAW(0xf) |
- + IRQ_TYPE_LEVEL_LOW)>;
- + };
- +
- + soc: soc {
- + compatible = "simple-bus";
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + ddr: memory-controller@1080000 {
- + compatible = "fsl,qoriq-memory-controller";
- + reg = <0x0 0x1080000 0x0 0x1000>;
- + interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
- + big-endian;
- + };
- +
- + ifc: ifc@1530000 {
- + compatible = "fsl,ifc", "simple-bus";
- + reg = <0x0 0x1530000 0x0 0x10000>;
- + big-endian;
- + interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + qspi: quadspi@1550000 {
- + compatible = "fsl,ls1021a-qspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x1550000 0x0 0x10000>,
- + <0x0 0x40000000 0x0 0x10000000>;
- + reg-names = "QuadSPI", "QuadSPI-memory";
- + interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
- + clock-names = "qspi_en", "qspi";
- + clocks = <&clockgen 4 1>, <&clockgen 4 1>;
- + big-endian;
- + fsl,qspi-has-second-chip;
- + status = "disabled";
- + };
- +
- + esdhc: esdhc@1560000 {
- + compatible = "fsl,ls1046a-esdhc", "fsl,esdhc";
- + reg = <0x0 0x1560000 0x0 0x10000>;
- + interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 2 1>;
- + voltage-ranges = <1800 1800 3300 3300>;
- + sdhci,auto-cmd12;
- + big-endian;
- + bus-width = <4>;
- + };
- +
- + scfg: scfg@1570000 {
- + compatible = "fsl,ls1046a-scfg", "syscon";
- + reg = <0x0 0x1570000 0x0 0x10000>;
- + big-endian;
- + };
- +
- + crypto: crypto@1700000 {
- + compatible = "fsl,sec-v5.4", "fsl,sec-v5.0",
- + "fsl,sec-v4.0";
- + fsl,sec-era = <8>;
- + #address-cells = <1>;
- + #size-cells = <1>;
- + ranges = <0x0 0x00 0x1700000 0x100000>;
- + reg = <0x00 0x1700000 0x0 0x100000>;
- + interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
- +
- + sec_jr0: jr@10000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x10000 0x10000>;
- + interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr1: jr@20000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x20000 0x10000>;
- + interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr2: jr@30000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x30000 0x10000>;
- + interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr3: jr@40000 {
- + compatible = "fsl,sec-v5.4-job-ring",
- + "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x40000 0x10000>;
- + interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
- + };
- + };
- +
- + qman: qman@1880000 {
- + compatible = "fsl,qman";
- + reg = <0x00 0x1880000 0x0 0x10000>;
- + interrupts = <0 45 0x4>;
- + memory-region = <&qman_fqd &qman_pfdr>;
- +
- + };
- +
- + bman: bman@1890000 {
- + compatible = "fsl,bman";
- + reg = <0x00 0x1890000 0x0 0x10000>;
- + interrupts = <0 45 0x4>;
- + memory-region = <&bman_fbpr>;
- +
- + };
- +
- + qportals: qman-portals@500000000 {
- + ranges = <0x0 0x5 0x00000000 0x8000000>;
- + };
- +
- + bportals: bman-portals@508000000 {
- + ranges = <0x0 0x5 0x08000000 0x8000000>;
- + };
- +
- + dcfg: dcfg@1ee0000 {
- + compatible = "fsl,ls1046a-dcfg", "syscon";
- + reg = <0x0 0x1ee0000 0x0 0x1000>;
- + big-endian;
- + };
- +
- + clockgen: clocking@1ee1000 {
- + compatible = "fsl,ls1046a-clockgen";
- + reg = <0x0 0x1ee1000 0x0 0x1000>;
- + #clock-cells = <2>;
- + clocks = <&sysclk>;
- + };
- +
- + tmu: tmu@1f00000 {
- + compatible = "fsl,qoriq-tmu";
- + reg = <0x0 0x1f00000 0x0 0x10000>;
- + interrupts = <0 33 0x4>;
- + fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
- + fsl,tmu-calibration =
- + /* Calibration data group 1 */
- + <0x00000000 0x00000026
- + 0x00000001 0x0000002d
- + 0x00000002 0x00000032
- + 0x00000003 0x00000039
- + 0x00000004 0x0000003f
- + 0x00000005 0x00000046
- + 0x00000006 0x0000004d
- + 0x00000007 0x00000054
- + 0x00000008 0x0000005a
- + 0x00000009 0x00000061
- + 0x0000000a 0x0000006a
- + 0x0000000b 0x00000071
- + /* Calibration data group 2 */
- + 0x00010000 0x00000025
- + 0x00010001 0x0000002c
- + 0x00010002 0x00000035
- + 0x00010003 0x0000003d
- + 0x00010004 0x00000045
- + 0x00010005 0x0000004e
- + 0x00010006 0x00000057
- + 0x00010007 0x00000061
- + 0x00010008 0x0000006b
- + 0x00010009 0x00000076
- + /* Calibration data group 3 */
- + 0x00020000 0x00000029
- + 0x00020001 0x00000033
- + 0x00020002 0x0000003d
- + 0x00020003 0x00000049
- + 0x00020004 0x00000056
- + 0x00020005 0x00000061
- + 0x00020006 0x0000006d
- + /* Calibration data group 4 */
- + 0x00030000 0x00000021
- + 0x00030001 0x0000002a
- + 0x00030002 0x0000003c
- + 0x00030003 0x0000004e>;
- + big-endian;
- + #thermal-sensor-cells = <1>;
- + };
- +
- + thermal-zones {
- + cpu_thermal: cpu-thermal {
- + polling-delay-passive = <1000>;
- + polling-delay = <5000>;
- + thermal-sensors = <&tmu 3>;
- +
- + trips {
- + cpu_alert: cpu-alert {
- + temperature = <85000>;
- + hysteresis = <2000>;
- + type = "passive";
- + };
- +
- + cpu_crit: cpu-crit {
- + temperature = <95000>;
- + hysteresis = <2000>;
- + type = "critical";
- + };
- + };
- +
- + cooling-maps {
- + map0 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu0 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + };
- + };
- + };
- +
- + dspi: dspi@2100000 {
- + compatible = "fsl,ls1021a-v1.0-dspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2100000 0x0 0x10000>;
- + interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
- + clock-names = "dspi";
- + clocks = <&clockgen 4 1>;
- + spi-num-chipselects = <5>;
- + big-endian;
- + status = "disabled";
- + };
- +
- + i2c0: i2c@2180000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2180000 0x0 0x10000>;
- + interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + dmas = <&edma0 1 39>,
- + <&edma0 1 38>;
- + dma-names = "tx", "rx";
- + status = "disabled";
- + };
- +
- + i2c1: i2c@2190000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2190000 0x0 0x10000>;
- + interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + status = "disabled";
- + };
- +
- + i2c2: i2c@21a0000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x21a0000 0x0 0x10000>;
- + interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + status = "disabled";
- + };
- +
- + i2c3: i2c@21b0000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x21b0000 0x0 0x10000>;
- + interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + status = "disabled";
- + };
- +
- + duart0: serial@21c0500 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x00 0x21c0500 0x0 0x100>;
- + interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + };
- +
- + duart1: serial@21c0600 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x00 0x21c0600 0x0 0x100>;
- + interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + };
- +
- + duart2: serial@21d0500 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21d0500 0x0 0x100>;
- + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + };
- +
- + duart3: serial@21d0600 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21d0600 0x0 0x100>;
- + interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + };
- +
- + gpio0: gpio@2300000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2300000 0x0 0x10000>;
- + interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio1: gpio@2310000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2310000 0x0 0x10000>;
- + interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio2: gpio@2320000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2320000 0x0 0x10000>;
- + interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio3: gpio@2330000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2330000 0x0 0x10000>;
- + interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + lpuart0: serial@2950000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x2950000 0x0 0x1000>;
- + interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 0>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + lpuart1: serial@2960000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x2960000 0x0 0x1000>;
- + interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + lpuart2: serial@2970000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x2970000 0x0 0x1000>;
- + interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + lpuart3: serial@2980000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x2980000 0x0 0x1000>;
- + interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + lpuart4: serial@2990000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x2990000 0x0 0x1000>;
- + interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + lpuart5: serial@29a0000 {
- + compatible = "fsl,ls1021a-lpuart";
- + reg = <0x0 0x29a0000 0x0 0x1000>;
- + interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + clock-names = "ipg";
- + status = "disabled";
- + };
- +
- + ftm0: ftm0@29d0000 {
- + compatible = "fsl,ls1046a-ftm";
- + reg = <0x0 0x29d0000 0x0 0x10000>,
- + <0x0 0x1ee2140 0x0 0x4>;
- + reg-names = "ftm", "FlexTimer1";
- + interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
- + big-endian;
- + };
- +
- + wdog0: watchdog@2ad0000 {
- + compatible = "fsl,imx21-wdt";
- + reg = <0x0 0x2ad0000 0x0 0x10000>;
- + interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + big-endian;
- + };
- +
- + edma0: edma@2c00000 {
- + #dma-cells = <2>;
- + compatible = "fsl,vf610-edma";
- + reg = <0x0 0x2c00000 0x0 0x10000>,
- + <0x0 0x2c10000 0x0 0x10000>,
- + <0x0 0x2c20000 0x0 0x10000>;
- + interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-names = "edma-tx", "edma-err";
- + dma-channels = <32>;
- + big-endian;
- + clock-names = "dmamux0", "dmamux1";
- + clocks = <&clockgen 4 1>,
- + <&clockgen 4 1>;
- + };
- +
- + usb0: usb@2f00000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x2f00000 0x0 0x10000>;
- + interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + usb1: usb@3000000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3000000 0x0 0x10000>;
- + interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + usb2: usb@3100000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3100000 0x0 0x10000>;
- + interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + sata: sata@3200000 {
- + compatible = "fsl,ls1046a-ahci";
- + reg = <0x0 0x3200000 0x0 0x10000>,
- + <0x0 0x20140520 0x0 0x4>;
- + reg-names = "ahci", "sata-ecc";
- + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 1>;
- + dma-coherent;
- + };
- +
- + qdma: qdma@8380000 {
- + compatible = "fsl,ls1046a-qdma", "fsl,ls1021a-qdma";
- + reg = <0x0 0x8380000 0x0 0x1000>, /* Controller regs */
- + <0x0 0x8390000 0x0 0x10000>, /* Status regs */
- + <0x0 0x83a0000 0x0 0x40000>; /* Block regs */
- + interrupts = <0 153 0x4>,
- + <0 39 0x4>;
- + interrupt-names = "qdma-error", "qdma-queue";
- + channels = <8>;
- + queues = <2>;
- + status-sizes = <64>;
- + queue-sizes = <64 64>;
- + big-endian;
- + };
- +
- + msi1: msi-controller@1580000 {
- + compatible = "fsl,ls1046a-msi";
- + msi-controller;
- + reg = <0x0 0x1580000 0x0 0x10000>;
- + interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + msi2: msi-controller@1590000 {
- + compatible = "fsl,ls1046a-msi";
- + msi-controller;
- + reg = <0x0 0x1590000 0x0 0x10000>;
- + interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + msi3: msi-controller@15a0000 {
- + compatible = "fsl,ls1046a-msi";
- + msi-controller;
- + reg = <0x0 0x15a0000 0x0 0x10000>;
- + interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie@3400000 {
- + compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- + 0x40 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, /* PME interrupt */
- + <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "pme", "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x40 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x40 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie@3500000 {
- + compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- + 0x48 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-names = "pme", "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <2>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x48 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x48 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie@3600000 {
- + compatible = "fsl,ls1046a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- + 0x50 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
- + <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
- + interrupt-names = "pme", "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <2>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x50 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x50 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&msi1>, <&msi2>, <&msi3>;
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + };
- +
- + reserved-memory {
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + bman_fbpr: bman-fbpr {
- + compatible = "shared-dma-pool";
- + size = <0 0x1000000>;
- + alignment = <0 0x1000000>;
- + no-map;
- + };
- + qman_fqd: qman-fqd {
- + compatible = "shared-dma-pool";
- + size = <0 0x800000>;
- + alignment = <0 0x800000>;
- + no-map;
- + };
- + qman_pfdr: qman-pfdr {
- + compatible = "shared-dma-pool";
- + size = <0 0x2000000>;
- + alignment = <0 0x2000000>;
- + no-map;
- + };
- + };
- +
- + firmware {
- + optee {
- + compatible = "linaro,optee-tz";
- + method = "smc";
- + };
- + };
- +};
- +
- +#include "qoriq-qman1-portals.dtsi"
- +#include "qoriq-bman1-portals.dtsi"
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-qds.dts
- @@ -0,0 +1,173 @@
- +/*
- + * Device Tree file for NXP LS1088A QDS Board.
- + *
- + * Copyright 2017 NXP
- + *
- + * Harninder Rai <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls1088a.dtsi"
- +
- +/ {
- + model = "LS1088A QDS Board";
- + compatible = "fsl,ls1088a-qds", "fsl,ls1088a";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + i2c-switch@77 {
- + compatible = "nxp,pca9547";
- + reg = <0x77>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + i2c@2 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x2>;
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <1000>;
- + };
- +
- + ina220@41 {
- + compatible = "ti,ina220";
- + reg = <0x41>;
- + shunt-resistor = <1000>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + temp-sensor@4c {
- + compatible = "adi,adt7461a";
- + reg = <0x4c>;
- + };
- +
- + rtc@51 {
- + compatible = "nxp,pcf2129";
- + reg = <0x51>;
- + /* IRQ10_B */
- + interrupts = <0 150 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + eeprom@56 {
- + compatible = "atmel,24c512";
- + reg = <0x56>;
- + };
- +
- + eeprom@57 {
- + compatible = "atmel,24c512";
- + reg = <0x57>;
- + };
- + };
- + };
- +};
- +
- +&qspi {
- + status = "okay";
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + m25p,fast-read;
- + reg = <0>;
- + };
- +
- + qflash1: s25fs512s@1 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + spi-max-frequency = <20000000>;
- + m25p,fast-read;
- + reg = <1>;
- + };
- +};
- +
- +&ifc {
- + status = "okay";
- +
- + ranges = <0 0 0x5 0x80000000 0x08000000
- + 2 0 0x5 0x30000000 0x00010000
- + 3 0 0x5 0x20000000 0x00010000>;
- +
- + nor@0,0 {
- + compatible = "cfi-flash";
- + reg = <0x0 0x0 0x8000000>;
- + bank-width = <2>;
- + device-width = <1>;
- + };
- +
- + nand@2,0 {
- + compatible = "fsl,ifc-nand";
- + reg = <0x2 0x0 0x10000>;
- + };
- +
- + fpga: board-control@3,0 {
- + compatible = "fsl,ls1088aqds-fpga", "fsl,fpga-qixis";
- + reg = <0x3 0x0 0x0000100>;
- + };
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&duart1 {
- + status = "okay";
- +};
- +
- +&esdhc {
- + status = "okay";
- +};
- +
- +&sata {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a-rdb.dts
- @@ -0,0 +1,236 @@
- +/*
- + * Device Tree file for NXP LS1088A RDB Board.
- + *
- + * Copyright 2017 NXP
- + *
- + * Harninder Rai <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls1088a.dtsi"
- +
- +/ {
- + model = "L1088A RDB Board";
- + compatible = "fsl,ls1088a-rdb", "fsl,ls1088a";
- +};
- +
- +&i2c0 {
- + status = "okay";
- +
- + i2c-switch@77 {
- + compatible = "nxp,pca9547";
- + reg = <0x77>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + i2c@2 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x2>;
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <1000>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + temp-sensor@4c {
- + compatible = "adi,adt7461a";
- + reg = <0x4c>;
- + };
- +
- + rtc@51 {
- + compatible = "nxp,pcf2129";
- + reg = <0x51>;
- + /* IRQ10_B */
- + interrupts = <0 150 IRQ_TYPE_LEVEL_HIGH>;
- + };
- + };
- + };
- +};
- +
- +&qspi {
- + status = "okay";
- + qflash0: s25fs512s@0 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +
- + qflash1: s25fs512s@1 {
- + compatible = "spansion,m25p80";
- + #address-cells = <1>;
- + #size-cells = <1>;
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <1>;
- + };
- +};
- +
- +&ifc {
- + status = "okay";
- +
- + ranges = <0 0 0x5 0x30000000 0x00010000
- + 2 0 0x5 0x20000000 0x00010000>;
- +
- + nand@0,0 {
- + compatible = "fsl,ifc-nand";
- + reg = <0x0 0x0 0x10000>;
- + };
- +
- + fpga: board-control@2,0 {
- + compatible = "fsl,ls1088ardb-fpga", "fsl,fpga-qixis";
- + reg = <0x2 0x0 0x0000100>;
- + };
- +};
- +
- +&duart0 {
- + status = "okay";
- +};
- +
- +&duart1 {
- + status = "okay";
- +};
- +
- +&usb0 {
- + status = "okay";
- +};
- +
- +&usb1 {
- + status = "okay";
- +};
- +
- +&esdhc {
- + status = "okay";
- +};
- +
- +&sata {
- + status = "okay";
- +};
- +
- +&emdio1 {
- + /* Freescale F104 PHY1 */
- + mdio1_phy1: emdio1_phy@1 {
- + reg = <0x1c>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy2: emdio1_phy@2 {
- + reg = <0x1d>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy3: emdio1_phy@3 {
- + reg = <0x1e>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy4: emdio1_phy@4 {
- + reg = <0x1f>;
- + phy-connection-type = "qsgmii";
- + };
- + /* F104 PHY2 */
- + mdio1_phy5: emdio1_phy@5 {
- + reg = <0x0c>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy6: emdio1_phy@6 {
- + reg = <0x0d>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy7: emdio1_phy@7 {
- + reg = <0x0e>;
- + phy-connection-type = "qsgmii";
- + };
- + mdio1_phy8: emdio1_phy@8 {
- + reg = <0x0f>;
- + phy-connection-type = "qsgmii";
- + };
- +};
- +
- +&emdio2 {
- + /* Aquantia AQR105 10G PHY */
- + mdio2_phy1: emdio2_phy@1 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 2 0x4>;
- + reg = <0x0>;
- + phy-connection-type = "xfi";
- + };
- +};
- +
- +/* DPMAC connections to external PHYs
- + * based on LS1088A RM RevC - $24.1.2 SerDes Options
- + */
- +/* DPMAC1 is 10G SFP+, fixed link */
- +&dpmac2 {
- + phy-handle = <&mdio2_phy1>;
- +};
- +&dpmac3 {
- + phy-handle = <&mdio1_phy5>;
- +};
- +&dpmac4 {
- + phy-handle = <&mdio1_phy6>;
- +};
- +&dpmac5 {
- + phy-handle = <&mdio1_phy7>;
- +};
- +&dpmac6 {
- + phy-handle = <&mdio1_phy8>;
- +};
- +&dpmac7 {
- + phy-handle = <&mdio1_phy1>;
- +};
- +&dpmac8 {
- + phy-handle = <&mdio1_phy2>;
- +};
- +&dpmac9 {
- + phy-handle = <&mdio1_phy3>;
- +};
- +&dpmac10 {
- + phy-handle = <&mdio1_phy4>;
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi
- @@ -0,0 +1,825 @@
- +/*
- + * Device Tree Include file for NXP Layerscape-1088A family SoC.
- + *
- + * Copyright 2017 NXP
- + *
- + * Harninder Rai <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +#include <dt-bindings/interrupt-controller/arm-gic.h>
- +#include <dt-bindings/thermal/thermal.h>
- +
- +/ {
- + compatible = "fsl,ls1088a";
- + interrupt-parent = <&gic>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- +
- + aliases {
- + crypto = &crypto;
- + };
- +
- + cpus {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + /* We have 2 clusters having 4 Cortex-A53 cores each */
- + cpu0: cpu@0 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x0>;
- + clocks = <&clockgen 1 0>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu1: cpu@1 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x1>;
- + clocks = <&clockgen 1 0>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu2: cpu@2 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x2>;
- + clocks = <&clockgen 1 0>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu3: cpu@3 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x3>;
- + clocks = <&clockgen 1 0>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu4: cpu@100 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x100>;
- + clocks = <&clockgen 1 1>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu5: cpu@101 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x101>;
- + clocks = <&clockgen 1 1>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu6: cpu@102 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x102>;
- + clocks = <&clockgen 1 1>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu7: cpu@103 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a53";
- + reg = <0x103>;
- + clocks = <&clockgen 1 1>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- + };
- +
- + idle-states {
- + /*
- + * PSCI node is not added default, U-boot will add missing
- + * parts if it determines to use PSCI.
- + */
- + entry-method = "arm,psci";
- +
- + CPU_PH20: cpu-ph20 {
- + compatible = "arm,idle-state";
- + idle-state-name = "PH20";
- + arm,psci-suspend-param = <0x0>;
- + entry-latency-us = <1000>;
- + exit-latency-us = <1000>;
- + min-residency-us = <3000>;
- + };
- + };
- +
- + gic: interrupt-controller@6000000 {
- + compatible = "arm,gic-v3";
- + #interrupt-cells = <3>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- + interrupt-controller;
- + reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
- + <0x0 0x06100000 0 0x100000>, /* GICR(RD_base+SGI_base)*/
- + <0x0 0x0c0c0000 0 0x2000>, /* GICC */
- + <0x0 0x0c0d0000 0 0x1000>, /* GICH */
- + <0x0 0x0c0e0000 0 0x20000>; /* GICV */
- + interrupts = <1 9 IRQ_TYPE_LEVEL_HIGH>;
- +
- + its: gic-its@6020000 {
- + compatible = "arm,gic-v3-its";
- + msi-controller;
- + reg = <0x0 0x6020000 0 0x20000>;
- + };
- + };
- +
- + timer {
- + compatible = "arm,armv8-timer";
- + interrupts = <1 13 IRQ_TYPE_LEVEL_LOW>,/* Physical Secure PPI */
- + <1 14 IRQ_TYPE_LEVEL_LOW>,/* Physical Non-Secure PPI */
- + <1 11 IRQ_TYPE_LEVEL_LOW>,/* Virtual PPI */
- + <1 10 IRQ_TYPE_LEVEL_LOW>;/* Hypervisor PPI */
- + };
- +
- + fsl_mc: fsl-mc@80c000000 {
- + compatible = "fsl,qoriq-mc";
- + reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */
- + <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 0>; /* This is fixed-up by u-boot */
- + #address-cells = <3>;
- + #size-cells = <1>;
- +
- + /*
- + * Region type 0x0 - MC portals
- + * Region type 0x1 - QBMAN portals
- + */
- + ranges = <0x0 0x0 0x0 0x8 0x0c000000 0x4000000
- + 0x1 0x0 0x0 0x8 0x18000000 0x8000000>;
- +
- + dpmacs {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + dpmac1: dpmac@1 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <1>;
- + };
- + dpmac2: dpmac@2 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <2>;
- + };
- + dpmac3: dpmac@3 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <3>;
- + };
- + dpmac4: dpmac@4 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <4>;
- + };
- + dpmac5: dpmac@5 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <5>;
- + };
- + dpmac6: dpmac@6 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <6>;
- + };
- + dpmac7: dpmac@7 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <7>;
- + };
- + dpmac8: dpmac@8 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <8>;
- + };
- + dpmac9: dpmac@9 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <9>;
- + };
- + dpmac10: dpmac@10 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xa>;
- + };
- + };
- +
- + };
- +
- + sysclk: sysclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <100000000>;
- + clock-output-names = "sysclk";
- + };
- +
- + dcfg: dcfg@1e00000 {
- + compatible = "fsl,ls1088a-dcfg", "syscon";
- + reg = <0x0 0x1e00000 0x0 0x10000>;
- + little-endian;
- + };
- +
- + rstcr: syscon@1e60000 {
- + compatible = "fsl,ls1088a-rstcr", "syscon";
- + reg = <0x0 0x1e60000 0x0 0x4>;
- + };
- +
- + reboot {
- + compatible = "syscon-reboot";
- + regmap = <&rstcr>;
- + offset = <0x0>;
- + mask = <0x02>;
- + };
- +
- +
- + soc {
- + compatible = "simple-bus";
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + clockgen: clocking@1300000 {
- + compatible = "fsl,ls1088a-clockgen";
- + reg = <0 0x1300000 0 0xa0000>;
- + #clock-cells = <2>;
- + clocks = <&sysclk>;
- + };
- +
- + tmu: tmu@1f80000 {
- + compatible = "fsl,qoriq-tmu";
- + reg = <0x0 0x1f80000 0x0 0x10000>;
- + interrupts = <0 23 0x4>;
- + fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
- + fsl,tmu-calibration =
- + /* Calibration data group 1 */
- + <0x00000000 0x00000026
- + 0x00000001 0x0000002d
- + 0x00000002 0x00000032
- + 0x00000003 0x00000039
- + 0x00000004 0x0000003f
- + 0x00000005 0x00000046
- + 0x00000006 0x0000004d
- + 0x00000007 0x00000054
- + 0x00000008 0x0000005a
- + 0x00000009 0x00000061
- + 0x0000000a 0x0000006a
- + 0x0000000b 0x00000071
- + /* Calibration data group 2 */
- + 0x00010000 0x00000025
- + 0x00010001 0x0000002c
- + 0x00010002 0x00000035
- + 0x00010003 0x0000003d
- + 0x00010004 0x00000045
- + 0x00010005 0x0000004e
- + 0x00010006 0x00000057
- + 0x00010007 0x00000061
- + 0x00010008 0x0000006b
- + 0x00010009 0x00000076
- + /* Calibration data group 3 */
- + 0x00020000 0x00000029
- + 0x00020001 0x00000033
- + 0x00020002 0x0000003d
- + 0x00020003 0x00000049
- + 0x00020004 0x00000056
- + 0x00020005 0x00000061
- + 0x00020006 0x0000006d
- + /* Calibration data group 4 */
- + 0x00030000 0x00000021
- + 0x00030001 0x0000002a
- + 0x00030002 0x0000003c
- + 0x00030003 0x0000004e>;
- + little-endian;
- + #thermal-sensor-cells = <1>;
- + };
- +
- + thermal-zones {
- + cpu_thermal: cpu-thermal {
- + polling-delay-passive = <1000>;
- + polling-delay = <5000>;
- + thermal-sensors = <&tmu 0>;
- +
- + trips {
- + cpu_alert: cpu-alert {
- + temperature = <85000>;
- + hysteresis = <2000>;
- + type = "passive";
- + };
- +
- + cpu_crit: cpu-crit {
- + temperature = <95000>;
- + hysteresis = <2000>;
- + type = "critical";
- + };
- + };
- +
- + cooling-maps {
- + map0 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu0 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + map1 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu4 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + };
- + };
- + };
- +
- + duart0: serial@21c0500 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21c0500 0x0 0x100>;
- + clocks = <&clockgen 4 3>;
- + interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
- + status = "disabled";
- + };
- +
- + duart1: serial@21c0600 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21c0600 0x0 0x100>;
- + clocks = <&clockgen 4 3>;
- + interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
- + status = "disabled";
- + };
- +
- + cluster1_core0_watchdog: wdt@c000000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc000000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster1_core1_watchdog: wdt@c010000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc010000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster1_core2_watchdog: wdt@c020000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc020000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster1_core3_watchdog: wdt@c030000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc030000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core0_watchdog: wdt@c100000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc100000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core1_watchdog: wdt@c110000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc110000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core2_watchdog: wdt@c120000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc120000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core3_watchdog: wdt@c130000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc130000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + gpio0: gpio@2300000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2300000 0x0 0x10000>;
- + interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio1: gpio@2310000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2310000 0x0 0x10000>;
- + interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio2: gpio@2320000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2320000 0x0 0x10000>;
- + interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio3: gpio@2330000 {
- + compatible = "fsl,qoriq-gpio";
- + reg = <0x0 0x2330000 0x0 0x10000>;
- + interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
- + gpio-controller;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + /* TODO: WRIOP (CCSR?) */
- + emdio1: mdio@0x8B96000 { /* WRIOP0: 0x8B8_0000,
- + * E-MDIO1: 0x1_6000
- + */
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8B96000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian; /* force the driver in LE mode */
- +
- + /* Not necessary on the QDS, but needed on the RDB */
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + emdio2: mdio@0x8B97000 { /* WRIOP0: 0x8B8_0000,
- + * E-MDIO2: 0x1_7000
- + */
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8B97000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian; /* force the driver in LE mode */
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + ifc: ifc@2240000 {
- + compatible = "fsl,ifc", "simple-bus";
- + reg = <0x0 0x2240000 0x0 0x20000>;
- + interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>;
- + little-endian;
- + #address-cells = <2>;
- + #size-cells = <1>;
- +
- + };
- +
- + ftm0: ftm0@2800000 {
- + compatible = "fsl,ls1088a-ftm";
- + reg = <0x0 0x2800000 0x0 0x10000>,
- + <0x0 0x1e34050 0x0 0x4>;
- + interrupts = <0 44 4>;
- + reg-names = "ftm", "FlexTimer1";
- + };
- +
- + i2c0: i2c@2000000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2000000 0x0 0x10000>;
- + interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 7>;
- + status = "disabled";
- + };
- +
- + i2c1: i2c@2010000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2010000 0x0 0x10000>;
- + interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 7>;
- + status = "disabled";
- + };
- +
- + i2c2: i2c@2020000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2020000 0x0 0x10000>;
- + interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 7>;
- + status = "disabled";
- + };
- +
- + i2c3: i2c@2030000 {
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2030000 0x0 0x10000>;
- + interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 7>;
- + status = "disabled";
- + };
- +
- + qspi: quadspi@20c0000 {
- + compatible = "fsl,ls2080a-qspi", "fsl,ls1088a-qspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x20c0000 0x0 0x10000>,
- + <0x0 0x20000000 0x0 0x10000000>;
- + reg-names = "QuadSPI", "QuadSPI-memory";
- + interrupts = <0 25 0x4>; /* Level high type */
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "qspi_en", "qspi";
- + fsl,qspi-has-second-chip;
- + };
- +
- + esdhc: esdhc@2140000 {
- + compatible = "fsl,ls1088a-esdhc", "fsl,esdhc";
- + reg = <0x0 0x2140000 0x0 0x10000>;
- + interrupts = <0 28 0x4>; /* Level high type */
- + clock-frequency = <0>;
- + voltage-ranges = <1800 1800 3300 3300>;
- + sdhci,auto-cmd12;
- + little-endian;
- + bus-width = <4>;
- + status = "disabled";
- + };
- +
- + usb0: usb3@3100000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3100000 0x0 0x10000>;
- + interrupts = <0 80 0x4>; /* Level high type */
- + dr_mode = "host";
- + configure-gfladj;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + usb1: usb3@3110000 {
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3110000 0x0 0x10000>;
- + interrupts = <0 81 0x4>; /* Level high type */
- + dr_mode = "host";
- + configure-gfladj;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + sata: sata@3200000 {
- + compatible = "fsl,ls1088a-ahci";
- + reg = <0x0 0x3200000 0x0 0x10000>,
- + <0x7 0x100520 0x0 0x4>;
- + reg-names = "ahci", "sata-ecc";
- + interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
- + clocks = <&clockgen 4 3>;
- + dma-coherent;
- + status = "disabled";
- + };
- +
- + pcie@3400000 {
- + compatible = "fsl,ls2088a-pcie", "fsl,ls1088a-pcie",
- + "snps,dw-pcie";
- + reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- + 0x20 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x20 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x20 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 109 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic 0 0 0 110 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic 0 0 0 111 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic 0 0 0 112 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie@3500000 {
- + compatible = "fsl,ls2088a-pcie", "fsl,ls1088a-pcie",
- + "snps,dw-pcie";
- + reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- + 0x28 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <0 113 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x28 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x28 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 114 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic 0 0 0 115 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic 0 0 0 116 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic 0 0 0 117 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + pcie@3600000 {
- + compatible = "fsl,ls2088a-pcie", "fsl,ls1088a-pcie",
- + "snps,dw-pcie";
- + reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- + 0x30 0x00000000 0x0 0x00002000>; /* configuration space */
- + reg-names = "regs", "config";
- + interrupts = <0 118 IRQ_TYPE_LEVEL_HIGH>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <8>;
- + bus-range = <0x0 0xff>;
- + ranges = <0x81000000 0x0 0x00000000 0x30 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x30 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 119 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 2 &gic 0 0 0 120 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 3 &gic 0 0 0 121 IRQ_TYPE_LEVEL_HIGH>,
- + <0000 0 0 4 &gic 0 0 0 122 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + smmu: iommu@5000000 {
- + compatible = "arm,mmu-500";
- + reg = <0 0x5000000 0 0x800000>;
- + #global-interrupts = <12>;
- + #iommu-cells = <1>;
- + stream-match-mask = <0x7C00>;
- + interrupts = <0 13 4>, /* global secure fault */
- + <0 14 4>, /* combined secure interrupt */
- + <0 15 4>, /* global non-secure fault */
- + <0 16 4>, /* combined non-secure interrupt */
- + /* performance counter interrupts 0-7 */
- + <0 211 4>,
- + <0 212 4>,
- + <0 213 4>,
- + <0 214 4>,
- + <0 215 4>,
- + <0 216 4>,
- + <0 217 4>,
- + <0 218 4>,
- + /* per context interrupt, 64 interrupts */
- + <0 146 4>,
- + <0 147 4>,
- + <0 148 4>,
- + <0 149 4>,
- + <0 150 4>,
- + <0 151 4>,
- + <0 152 4>,
- + <0 153 4>,
- + <0 154 4>,
- + <0 155 4>,
- + <0 156 4>,
- + <0 157 4>,
- + <0 158 4>,
- + <0 159 4>,
- + <0 160 4>,
- + <0 161 4>,
- + <0 162 4>,
- + <0 163 4>,
- + <0 164 4>,
- + <0 165 4>,
- + <0 166 4>,
- + <0 167 4>,
- + <0 168 4>,
- + <0 169 4>,
- + <0 170 4>,
- + <0 171 4>,
- + <0 172 4>,
- + <0 173 4>,
- + <0 174 4>,
- + <0 175 4>,
- + <0 176 4>,
- + <0 177 4>,
- + <0 178 4>,
- + <0 179 4>,
- + <0 180 4>,
- + <0 181 4>,
- + <0 182 4>,
- + <0 183 4>,
- + <0 184 4>,
- + <0 185 4>,
- + <0 186 4>,
- + <0 187 4>,
- + <0 188 4>,
- + <0 189 4>,
- + <0 190 4>,
- + <0 191 4>,
- + <0 192 4>,
- + <0 193 4>,
- + <0 194 4>,
- + <0 195 4>,
- + <0 196 4>,
- + <0 197 4>,
- + <0 198 4>,
- + <0 199 4>,
- + <0 200 4>,
- + <0 201 4>,
- + <0 202 4>,
- + <0 203 4>,
- + <0 204 4>,
- + <0 205 4>,
- + <0 206 4>,
- + <0 207 4>,
- + <0 208 4>,
- + <0 209 4>;
- + };
- +
- + crypto: crypto@8000000 {
- + compatible = "fsl,sec-v5.0", "fsl,sec-v4.0";
- + fsl,sec-era = <8>;
- + #address-cells = <1>;
- + #size-cells = <1>;
- + ranges = <0x0 0x00 0x8000000 0x100000>;
- + reg = <0x00 0x8000000 0x0 0x100000>;
- + interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
- + dma-coherent;
- +
- + sec_jr0: jr@10000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x10000 0x10000>;
- + interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr1: jr@20000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x20000 0x10000>;
- + interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr2: jr@30000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x30000 0x10000>;
- + interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr3: jr@40000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x40000 0x10000>;
- + interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
- + };
- + };
- + };
- +
- + firmware {
- + optee {
- + compatible = "linaro,optee-tz";
- + method = "smc";
- + };
- + };
- +
- +};
- --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a-qds.dts
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a-qds.dts
- @@ -1,8 +1,10 @@
- /*
- * Device Tree file for Freescale LS2080a QDS Board.
- *
- - * Copyright (C) 2015, Freescale Semiconductor
- + * Copyright 2015-2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- *
- + * Abhimanyu Saini <[email protected]>
- * Bhupesh Sharma <[email protected]>
- *
- * This file is dual-licensed: you can use it either under the terms
- @@ -46,169 +48,76 @@
-
- /dts-v1/;
-
- -/include/ "fsl-ls2080a.dtsi"
- +#include "fsl-ls2080a.dtsi"
- +#include "fsl-ls208xa-qds.dtsi"
-
- / {
- model = "Freescale Layerscape 2080a QDS Board";
- compatible = "fsl,ls2080a-qds", "fsl,ls2080a";
-
- - aliases {
- - serial0 = &serial0;
- - serial1 = &serial1;
- - };
- -
- chosen {
- stdout-path = "serial0:115200n8";
- };
- };
-
- -&esdhc {
- - status = "okay";
- -};
- -
- &ifc {
- - status = "okay";
- - #address-cells = <2>;
- - #size-cells = <1>;
- - ranges = <0x0 0x0 0x5 0x80000000 0x08000000
- - 0x2 0x0 0x5 0x30000000 0x00010000
- - 0x3 0x0 0x5 0x20000000 0x00010000>;
- -
- - nor@0,0 {
- + boardctrl: board-control@3,0 {
- #address-cells = <1>;
- #size-cells = <1>;
- - compatible = "cfi-flash";
- - reg = <0x0 0x0 0x8000000>;
- - bank-width = <2>;
- - device-width = <1>;
- - };
- + compatible = "fsl,tetra-fpga", "fsl,fpga-qixis", "simple-bus";
- + reg = <3 0 0x300>; /* TODO check address */
- + ranges = <0 3 0 0x300>;
-
- - nand@2,0 {
- - compatible = "fsl,ifc-nand";
- - reg = <0x2 0x0 0x10000>;
- - };
- + mdio_mux_emi1 {
- + compatible = "mdio-mux-mmioreg", "mdio-mux";
- + mdio-parent-bus = <&emdio1>;
- + reg = <0x54 1>; /* BRDCFG4 */
- + mux-mask = <0xe0>; /* EMI1_MDIO */
-
- - cpld@3,0 {
- - reg = <0x3 0x0 0x10000>;
- - compatible = "fsl,ls2080aqds-fpga", "fsl,fpga-qixis";
- - };
- -};
- -
- -&i2c0 {
- - status = "okay";
- - pca9547@77 {
- - compatible = "nxp,pca9547";
- - reg = <0x77>;
- - #address-cells = <1>;
- - #size-cells = <0>;
- - i2c@0 {
- - #address-cells = <1>;
- + #address-cells=<1>;
- #size-cells = <0>;
- - reg = <0x00>;
- - rtc@68 {
- - compatible = "dallas,ds3232";
- - reg = <0x68>;
- - };
- - };
-
- - i2c@2 {
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x02>;
- -
- - ina220@40 {
- - compatible = "ti,ina220";
- - reg = <0x40>;
- - shunt-resistor = <500>;
- - };
- -
- - ina220@41 {
- - compatible = "ti,ina220";
- - reg = <0x41>;
- - shunt-resistor = <1000>;
- - };
- - };
- -
- - i2c@3 {
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x3>;
- -
- - adt7481@4c {
- - compatible = "adi,adt7461";
- - reg = <0x4c>;
- + /* Child MDIO buses, one for each riser card:
- + * reg = 0x0, 0x20, 0x40, 0x60, 0x80, 0xa0.
- + * VSC8234 PHYs on the riser cards.
- + */
- +
- + mdio_mux3: mdio@60 {
- + reg = <0x60>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + mdio0_phy12: mdio_phy0@1c {
- + reg = <0x1c>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy13: mdio_phy1@1d {
- + reg = <0x1d>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy14: mdio_phy2@1e {
- + reg = <0x1e>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy15: mdio_phy3@1f {
- + reg = <0x1f>;
- + phy-connection-type = "sgmii";
- + };
- };
- };
- };
- };
-
- -&i2c1 {
- - status = "disabled";
- -};
- -
- -&i2c2 {
- - status = "disabled";
- -};
- -
- -&i2c3 {
- - status = "disabled";
- -};
- -
- -&dspi {
- - status = "okay";
- - dflash0: n25q128a {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <3000000>;
- - reg = <0>;
- - };
- - dflash1: sst25wf040b {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <3000000>;
- - reg = <1>;
- - };
- - dflash2: en25s64 {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <3000000>;
- - reg = <2>;
- - };
- -};
- -
- -&qspi {
- - status = "okay";
- - flash0: s25fl256s1@0 {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <20000000>;
- - reg = <0>;
- - };
- - flash2: s25fl256s1@2 {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <20000000>;
- - reg = <0>;
- - };
- -};
- -
- -&sata0 {
- - status = "okay";
- +/* Update DPMAC connections to external PHYs, under SerDes 0x2a_0x49. */
- +&dpmac9 {
- + phy-handle = <&mdio0_phy12>;
- };
- -
- -&sata1 {
- - status = "okay";
- +&dpmac10 {
- + phy-handle = <&mdio0_phy13>;
- };
- -
- -&usb0 {
- - status = "okay";
- +&dpmac11 {
- + phy-handle = <&mdio0_phy14>;
- };
- -
- -&usb1 {
- - status = "okay";
- +&dpmac12 {
- + phy-handle = <&mdio0_phy15>;
- };
- --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a-rdb.dts
- @@ -1,8 +1,10 @@
- /*
- * Device Tree file for Freescale LS2080a RDB Board.
- *
- - * Copyright (C) 2015, Freescale Semiconductor
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- *
- + * Abhimanyu Saini <[email protected]>
- * Bhupesh Sharma <[email protected]>
- *
- * This file is dual-licensed: you can use it either under the terms
- @@ -46,125 +48,94 @@
-
- /dts-v1/;
-
- -/include/ "fsl-ls2080a.dtsi"
- +#include "fsl-ls2080a.dtsi"
- +#include "fsl-ls208xa-rdb.dtsi"
-
- / {
- model = "Freescale Layerscape 2080a RDB Board";
- compatible = "fsl,ls2080a-rdb", "fsl,ls2080a";
-
- - aliases {
- - serial0 = &serial0;
- - serial1 = &serial1;
- - };
- -
- chosen {
- stdout-path = "serial1:115200n8";
- };
- };
-
- -&esdhc {
- - status = "okay";
- -};
- -
- -&ifc {
- - status = "okay";
- - #address-cells = <2>;
- - #size-cells = <1>;
- - ranges = <0x0 0x0 0x5 0x80000000 0x08000000
- - 0x2 0x0 0x5 0x30000000 0x00010000
- - 0x3 0x0 0x5 0x20000000 0x00010000>;
- -
- - nor@0,0 {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "cfi-flash";
- - reg = <0x0 0x0 0x8000000>;
- - bank-width = <2>;
- - device-width = <1>;
- - };
- -
- - nand@2,0 {
- - compatible = "fsl,ifc-nand";
- - reg = <0x2 0x0 0x10000>;
- - };
- -
- - cpld@3,0 {
- - reg = <0x3 0x0 0x10000>;
- - compatible = "fsl,ls2080aqds-fpga", "fsl,fpga-qixis";
- - };
- -
- -};
- -
- -&i2c0 {
- - status = "okay";
- - pca9547@75 {
- - compatible = "nxp,pca9547";
- - reg = <0x75>;
- - #address-cells = <1>;
- - #size-cells = <0>;
- - status = "disabled";
- - i2c@1 {
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x01>;
- - rtc@68 {
- - compatible = "dallas,ds3232";
- - reg = <0x68>;
- - };
- - };
- -
- - i2c@3 {
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x3>;
- -
- - adt7481@4c {
- - compatible = "adi,adt7461";
- - reg = <0x4c>;
- - };
- - };
- - };
- -};
- -
- -&i2c1 {
- - status = "disabled";
- -};
- -
- -&i2c2 {
- - status = "disabled";
- -};
- -
- -&i2c3 {
- +&emdio1 {
- status = "disabled";
- + /* CS4340 PHYs */
- + mdio1_phy1: emdio1_phy@1 {
- + reg = <0x10>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy2: emdio1_phy@2 {
- + reg = <0x11>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy3: emdio1_phy@3 {
- + reg = <0x12>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy4: emdio1_phy@4 {
- + reg = <0x13>;
- + phy-connection-type = "xfi";
- + };
- };
-
- -&dspi {
- - status = "okay";
- - dflash0: n25q512a {
- - #address-cells = <1>;
- - #size-cells = <1>;
- - compatible = "st,m25p80";
- - spi-max-frequency = <3000000>;
- - reg = <0>;
- +&emdio2 {
- + /* AQR405 PHYs */
- + mdio2_phy1: emdio2_phy@1 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 1 0x4>; /* Level high type */
- + reg = <0x0>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy2: emdio2_phy@2 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 2 0x4>; /* Level high type */
- + reg = <0x1>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy3: emdio2_phy@3 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 4 0x4>; /* Level high type */
- + reg = <0x2>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy4: emdio2_phy@4 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 5 0x4>; /* Level high type */
- + reg = <0x3>;
- + phy-connection-type = "xfi";
- };
- };
-
- -&qspi {
- - status = "disabled";
- -};
- +/* Update DPMAC connections to external PHYs, under the assumption of
- + * SerDes 0x2a_0x41. This is currently the only SerDes supported on the board.
- + */
- +/* Leave Cortina nodes commented out until driver is integrated
- + *&dpmac1 {
- + * phy-handle = <&mdio1_phy1>;
- + *};
- + *&dpmac2 {
- + * phy-handle = <&mdio1_phy2>;
- + *};
- + *&dpmac3 {
- + * phy-handle = <&mdio1_phy3>;
- + *};
- + *&dpmac4 {
- + * phy-handle = <&mdio1_phy4>;
- + *};
- + */
-
- -&sata0 {
- - status = "okay";
- +&dpmac5 {
- + phy-handle = <&mdio2_phy1>;
- };
- -
- -&sata1 {
- - status = "okay";
- +&dpmac6 {
- + phy-handle = <&mdio2_phy2>;
- };
- -
- -&usb0 {
- - status = "okay";
- +&dpmac7 {
- + phy-handle = <&mdio2_phy3>;
- };
- -
- -&usb1 {
- - status = "okay";
- +&dpmac8 {
- + phy-handle = <&mdio2_phy4>;
- };
- --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a-simu.dts
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a-simu.dts
- @@ -1,7 +1,7 @@
- /*
- * Device Tree file for Freescale LS2080a software Simulator model
- *
- - * Copyright (C) 2014-2015, Freescale Semiconductor
- + * Copyright 2014-2015 Freescale Semiconductor, Inc.
- *
- * Bhupesh Sharma <[email protected]>
- *
- @@ -46,17 +46,12 @@
-
- /dts-v1/;
-
- -/include/ "fsl-ls2080a.dtsi"
- +#include "fsl-ls2080a.dtsi"
-
- / {
- model = "Freescale Layerscape 2080a software Simulator model";
- compatible = "fsl,ls2080a-simu", "fsl,ls2080a";
-
- - aliases {
- - serial0 = &serial0;
- - serial1 = &serial1;
- - };
- -
- ethernet@2210000 {
- compatible = "smsc,lan91c111";
- reg = <0x0 0x2210000 0x0 0x100>;
- --- a/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2080a.dtsi
- @@ -1,8 +1,9 @@
- /*
- * Device Tree Include file for Freescale Layerscape-2080A family SoC.
- *
- - * Copyright (C) 2014-2015, Freescale Semiconductor
- + * Copyright 2014-2016 Freescale Semiconductor, Inc.
- *
- + * Abhimanyu Saini <[email protected]>
- * Bhupesh Sharma <[email protected]>
- *
- * This file is dual-licensed: you can use it either under the terms
- @@ -44,696 +45,132 @@
- * OTHER DEALINGS IN THE SOFTWARE.
- */
-
- -/ {
- - compatible = "fsl,ls2080a";
- - interrupt-parent = <&gic>;
- - #address-cells = <2>;
- - #size-cells = <2>;
- -
- - cpus {
- - #address-cells = <1>;
- - #size-cells = <0>;
- -
- - /*
- - * We expect the enable-method for cpu's to be "psci", but this
- - * is dependent on the SoC FW, which will fill this in.
- - *
- - * Currently supported enable-method is psci v0.2
- - */
- -
- - /* We have 4 clusters having 2 Cortex-A57 cores each */
- - cpu@0 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x0>;
- - clocks = <&clockgen 1 0>;
- - next-level-cache = <&cluster0_l2>;
- - };
- -
- - cpu@1 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x1>;
- - clocks = <&clockgen 1 0>;
- - next-level-cache = <&cluster0_l2>;
- - };
- -
- - cpu@100 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x100>;
- - clocks = <&clockgen 1 1>;
- - next-level-cache = <&cluster1_l2>;
- - };
- -
- - cpu@101 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x101>;
- - clocks = <&clockgen 1 1>;
- - next-level-cache = <&cluster1_l2>;
- - };
- -
- - cpu@200 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x200>;
- - clocks = <&clockgen 1 2>;
- - next-level-cache = <&cluster2_l2>;
- - };
- -
- - cpu@201 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x201>;
- - clocks = <&clockgen 1 2>;
- - next-level-cache = <&cluster2_l2>;
- - };
- -
- - cpu@300 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x300>;
- - clocks = <&clockgen 1 3>;
- - next-level-cache = <&cluster3_l2>;
- - };
- -
- - cpu@301 {
- - device_type = "cpu";
- - compatible = "arm,cortex-a57";
- - reg = <0x301>;
- - clocks = <&clockgen 1 3>;
- - next-level-cache = <&cluster3_l2>;
- - };
- -
- - cluster0_l2: l2-cache0 {
- - compatible = "cache";
- - };
- -
- - cluster1_l2: l2-cache1 {
- - compatible = "cache";
- - };
- -
- - cluster2_l2: l2-cache2 {
- - compatible = "cache";
- - };
- -
- - cluster3_l2: l2-cache3 {
- - compatible = "cache";
- - };
- - };
- -
- - memory@80000000 {
- - device_type = "memory";
- - reg = <0x00000000 0x80000000 0 0x80000000>;
- - /* DRAM space - 1, size : 2 GB DRAM */
- - };
- -
- - sysclk: sysclk {
- - compatible = "fixed-clock";
- - #clock-cells = <0>;
- - clock-frequency = <100000000>;
- - clock-output-names = "sysclk";
- - };
- -
- - gic: interrupt-controller@6000000 {
- - compatible = "arm,gic-v3";
- - reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
- - <0x0 0x06100000 0 0x100000>, /* GICR (RD_base + SGI_base) */
- - <0x0 0x0c0c0000 0 0x2000>, /* GICC */
- - <0x0 0x0c0d0000 0 0x1000>, /* GICH */
- - <0x0 0x0c0e0000 0 0x20000>; /* GICV */
- - #interrupt-cells = <3>;
- - #address-cells = <2>;
- - #size-cells = <2>;
- - ranges;
- - interrupt-controller;
- - interrupts = <1 9 0x4>;
- -
- - its: gic-its@6020000 {
- - compatible = "arm,gic-v3-its";
- - msi-controller;
- - reg = <0x0 0x6020000 0 0x20000>;
- - };
- - };
- -
- - rstcr: syscon@1e60000 {
- - compatible = "fsl,ls2080a-rstcr", "syscon";
- - reg = <0x0 0x1e60000 0x0 0x4>;
- - };
- -
- - reboot {
- - compatible ="syscon-reboot";
- - regmap = <&rstcr>;
- - offset = <0x0>;
- - mask = <0x2>;
- - };
- -
- - timer {
- - compatible = "arm,armv8-timer";
- - interrupts = <1 13 4>, /* Physical Secure PPI, active-low */
- - <1 14 4>, /* Physical Non-Secure PPI, active-low */
- - <1 11 4>, /* Virtual PPI, active-low */
- - <1 10 4>; /* Hypervisor PPI, active-low */
- - fsl,erratum-a008585;
- - };
- -
- - pmu {
- - compatible = "arm,armv8-pmuv3";
- - interrupts = <1 7 0x8>; /* PMU PPI, Level low type */
- - };
- -
- - soc {
- - compatible = "simple-bus";
- - #address-cells = <2>;
- - #size-cells = <2>;
- - ranges;
- -
- - clockgen: clocking@1300000 {
- - compatible = "fsl,ls2080a-clockgen";
- - reg = <0 0x1300000 0 0xa0000>;
- - #clock-cells = <2>;
- - clocks = <&sysclk>;
- - };
- -
- - serial0: serial@21c0500 {
- - compatible = "fsl,ns16550", "ns16550a";
- - reg = <0x0 0x21c0500 0x0 0x100>;
- - clocks = <&clockgen 4 3>;
- - interrupts = <0 32 0x4>; /* Level high type */
- - };
- -
- - serial1: serial@21c0600 {
- - compatible = "fsl,ns16550", "ns16550a";
- - reg = <0x0 0x21c0600 0x0 0x100>;
- - clocks = <&clockgen 4 3>;
- - interrupts = <0 32 0x4>; /* Level high type */
- - };
- -
- - cluster1_core0_watchdog: wdt@c000000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc000000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster1_core1_watchdog: wdt@c010000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc010000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster2_core0_watchdog: wdt@c100000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc100000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster2_core1_watchdog: wdt@c110000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc110000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster3_core0_watchdog: wdt@c200000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc200000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster3_core1_watchdog: wdt@c210000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc210000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster4_core0_watchdog: wdt@c300000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc300000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - cluster4_core1_watchdog: wdt@c310000 {
- - compatible = "arm,sp805-wdt", "arm,primecell";
- - reg = <0x0 0xc310000 0x0 0x1000>;
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "apb_pclk", "wdog_clk";
- - };
- -
- - fsl_mc: fsl-mc@80c000000 {
- - compatible = "fsl,qoriq-mc";
- - reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */
- - <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
- - msi-parent = <&its>;
- - #address-cells = <3>;
- - #size-cells = <1>;
- -
- - /*
- - * Region type 0x0 - MC portals
- - * Region type 0x1 - QBMAN portals
- - */
- - ranges = <0x0 0x0 0x0 0x8 0x0c000000 0x4000000
- - 0x1 0x0 0x0 0x8 0x18000000 0x8000000>;
- -
- - /*
- - * Define the maximum number of MACs present on the SoC.
- - */
- - dpmacs {
- - #address-cells = <1>;
- - #size-cells = <0>;
- -
- - dpmac1: dpmac@1 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x1>;
- - };
- -
- - dpmac2: dpmac@2 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x2>;
- - };
- -
- - dpmac3: dpmac@3 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x3>;
- - };
- -
- - dpmac4: dpmac@4 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x4>;
- - };
- -
- - dpmac5: dpmac@5 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x5>;
- - };
- -
- - dpmac6: dpmac@6 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x6>;
- - };
- -
- - dpmac7: dpmac@7 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x7>;
- - };
- -
- - dpmac8: dpmac@8 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x8>;
- - };
- -
- - dpmac9: dpmac@9 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x9>;
- - };
- -
- - dpmac10: dpmac@a {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xa>;
- - };
- -
- - dpmac11: dpmac@b {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xb>;
- - };
- -
- - dpmac12: dpmac@c {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xc>;
- - };
- -
- - dpmac13: dpmac@d {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xd>;
- - };
- -
- - dpmac14: dpmac@e {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xe>;
- - };
- -
- - dpmac15: dpmac@f {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0xf>;
- - };
- -
- - dpmac16: dpmac@10 {
- - compatible = "fsl,qoriq-mc-dpmac";
- - reg = <0x10>;
- - };
- - };
- - };
- -
- - smmu: iommu@5000000 {
- - compatible = "arm,mmu-500";
- - reg = <0 0x5000000 0 0x800000>;
- - #global-interrupts = <12>;
- - interrupts = <0 13 4>, /* global secure fault */
- - <0 14 4>, /* combined secure interrupt */
- - <0 15 4>, /* global non-secure fault */
- - <0 16 4>, /* combined non-secure interrupt */
- - /* performance counter interrupts 0-7 */
- - <0 211 4>, <0 212 4>,
- - <0 213 4>, <0 214 4>,
- - <0 215 4>, <0 216 4>,
- - <0 217 4>, <0 218 4>,
- - /* per context interrupt, 64 interrupts */
- - <0 146 4>, <0 147 4>,
- - <0 148 4>, <0 149 4>,
- - <0 150 4>, <0 151 4>,
- - <0 152 4>, <0 153 4>,
- - <0 154 4>, <0 155 4>,
- - <0 156 4>, <0 157 4>,
- - <0 158 4>, <0 159 4>,
- - <0 160 4>, <0 161 4>,
- - <0 162 4>, <0 163 4>,
- - <0 164 4>, <0 165 4>,
- - <0 166 4>, <0 167 4>,
- - <0 168 4>, <0 169 4>,
- - <0 170 4>, <0 171 4>,
- - <0 172 4>, <0 173 4>,
- - <0 174 4>, <0 175 4>,
- - <0 176 4>, <0 177 4>,
- - <0 178 4>, <0 179 4>,
- - <0 180 4>, <0 181 4>,
- - <0 182 4>, <0 183 4>,
- - <0 184 4>, <0 185 4>,
- - <0 186 4>, <0 187 4>,
- - <0 188 4>, <0 189 4>,
- - <0 190 4>, <0 191 4>,
- - <0 192 4>, <0 193 4>,
- - <0 194 4>, <0 195 4>,
- - <0 196 4>, <0 197 4>,
- - <0 198 4>, <0 199 4>,
- - <0 200 4>, <0 201 4>,
- - <0 202 4>, <0 203 4>,
- - <0 204 4>, <0 205 4>,
- - <0 206 4>, <0 207 4>,
- - <0 208 4>, <0 209 4>;
- - mmu-masters = <&fsl_mc 0x300 0>;
- - };
- -
- - dspi: dspi@2100000 {
- - status = "disabled";
- - compatible = "fsl,ls2080a-dspi", "fsl,ls2085a-dspi";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x2100000 0x0 0x10000>;
- - interrupts = <0 26 0x4>; /* Level high type */
- - clocks = <&clockgen 4 3>;
- - clock-names = "dspi";
- - spi-num-chipselects = <5>;
- - bus-num = <0>;
- - };
- -
- - esdhc: esdhc@2140000 {
- - status = "disabled";
- - compatible = "fsl,ls2080a-esdhc", "fsl,esdhc";
- - reg = <0x0 0x2140000 0x0 0x10000>;
- - interrupts = <0 28 0x4>; /* Level high type */
- - clock-frequency = <0>; /* Updated by bootloader */
- - voltage-ranges = <1800 1800 3300 3300>;
- - sdhci,auto-cmd12;
- - little-endian;
- - bus-width = <4>;
- - };
- -
- - gpio0: gpio@2300000 {
- - compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- - reg = <0x0 0x2300000 0x0 0x10000>;
- - interrupts = <0 36 0x4>; /* Level high type */
- - gpio-controller;
- - little-endian;
- - #gpio-cells = <2>;
- - interrupt-controller;
- - #interrupt-cells = <2>;
- - };
- -
- - gpio1: gpio@2310000 {
- - compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- - reg = <0x0 0x2310000 0x0 0x10000>;
- - interrupts = <0 36 0x4>; /* Level high type */
- - gpio-controller;
- - little-endian;
- - #gpio-cells = <2>;
- - interrupt-controller;
- - #interrupt-cells = <2>;
- - };
- -
- - gpio2: gpio@2320000 {
- - compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- - reg = <0x0 0x2320000 0x0 0x10000>;
- - interrupts = <0 37 0x4>; /* Level high type */
- - gpio-controller;
- - little-endian;
- - #gpio-cells = <2>;
- - interrupt-controller;
- - #interrupt-cells = <2>;
- - };
- -
- - gpio3: gpio@2330000 {
- - compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- - reg = <0x0 0x2330000 0x0 0x10000>;
- - interrupts = <0 37 0x4>; /* Level high type */
- - gpio-controller;
- - little-endian;
- - #gpio-cells = <2>;
- - interrupt-controller;
- - #interrupt-cells = <2>;
- - };
- -
- - i2c0: i2c@2000000 {
- - status = "disabled";
- - compatible = "fsl,vf610-i2c";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x2000000 0x0 0x10000>;
- - interrupts = <0 34 0x4>; /* Level high type */
- - clock-names = "i2c";
- - clocks = <&clockgen 4 3>;
- - };
- -
- - i2c1: i2c@2010000 {
- - status = "disabled";
- - compatible = "fsl,vf610-i2c";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x2010000 0x0 0x10000>;
- - interrupts = <0 34 0x4>; /* Level high type */
- - clock-names = "i2c";
- - clocks = <&clockgen 4 3>;
- - };
- -
- - i2c2: i2c@2020000 {
- - status = "disabled";
- - compatible = "fsl,vf610-i2c";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x2020000 0x0 0x10000>;
- - interrupts = <0 35 0x4>; /* Level high type */
- - clock-names = "i2c";
- - clocks = <&clockgen 4 3>;
- - };
- -
- - i2c3: i2c@2030000 {
- - status = "disabled";
- - compatible = "fsl,vf610-i2c";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x2030000 0x0 0x10000>;
- - interrupts = <0 35 0x4>; /* Level high type */
- - clock-names = "i2c";
- - clocks = <&clockgen 4 3>;
- - };
- -
- - ifc: ifc@2240000 {
- - compatible = "fsl,ifc", "simple-bus";
- - reg = <0x0 0x2240000 0x0 0x20000>;
- - interrupts = <0 21 0x4>; /* Level high type */
- - little-endian;
- - #address-cells = <2>;
- - #size-cells = <1>;
- -
- - ranges = <0 0 0x5 0x80000000 0x08000000
- - 2 0 0x5 0x30000000 0x00010000
- - 3 0 0x5 0x20000000 0x00010000>;
- - };
- -
- - qspi: quadspi@20c0000 {
- - status = "disabled";
- - compatible = "fsl,ls2080a-qspi", "fsl,ls1021a-qspi";
- - #address-cells = <1>;
- - #size-cells = <0>;
- - reg = <0x0 0x20c0000 0x0 0x10000>,
- - <0x0 0x20000000 0x0 0x10000000>;
- - reg-names = "QuadSPI", "QuadSPI-memory";
- - interrupts = <0 25 0x4>; /* Level high type */
- - clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- - clock-names = "qspi_en", "qspi";
- - };
- -
- - pcie@3400000 {
- - compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- - "snps,dw-pcie";
- - reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- - 0x10 0x00000000 0x0 0x00002000>; /* configuration space */
- - reg-names = "regs", "config";
- - interrupts = <0 108 0x4>; /* Level high type */
- - interrupt-names = "intr";
- - #address-cells = <3>;
- - #size-cells = <2>;
- - device_type = "pci";
- - dma-coherent;
- - num-lanes = <4>;
- - bus-range = <0x0 0xff>;
- - ranges = <0x81000000 0x0 0x00000000 0x10 0x00010000 0x0 0x00010000 /* downstream I/O */
- - 0x82000000 0x0 0x40000000 0x10 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&its>;
- - #interrupt-cells = <1>;
- - interrupt-map-mask = <0 0 0 7>;
- - interrupt-map = <0000 0 0 1 &gic 0 0 0 109 4>,
- - <0000 0 0 2 &gic 0 0 0 110 4>,
- - <0000 0 0 3 &gic 0 0 0 111 4>,
- - <0000 0 0 4 &gic 0 0 0 112 4>;
- - };
- -
- - pcie@3500000 {
- - compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- - "snps,dw-pcie";
- - reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- - 0x12 0x00000000 0x0 0x00002000>; /* configuration space */
- - reg-names = "regs", "config";
- - interrupts = <0 113 0x4>; /* Level high type */
- - interrupt-names = "intr";
- - #address-cells = <3>;
- - #size-cells = <2>;
- - device_type = "pci";
- - dma-coherent;
- - num-lanes = <4>;
- - bus-range = <0x0 0xff>;
- - ranges = <0x81000000 0x0 0x00000000 0x12 0x00010000 0x0 0x00010000 /* downstream I/O */
- - 0x82000000 0x0 0x40000000 0x12 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&its>;
- - #interrupt-cells = <1>;
- - interrupt-map-mask = <0 0 0 7>;
- - interrupt-map = <0000 0 0 1 &gic 0 0 0 114 4>,
- - <0000 0 0 2 &gic 0 0 0 115 4>,
- - <0000 0 0 3 &gic 0 0 0 116 4>,
- - <0000 0 0 4 &gic 0 0 0 117 4>;
- - };
- -
- - pcie@3600000 {
- - compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- - "snps,dw-pcie";
- - reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- - 0x14 0x00000000 0x0 0x00002000>; /* configuration space */
- - reg-names = "regs", "config";
- - interrupts = <0 118 0x4>; /* Level high type */
- - interrupt-names = "intr";
- - #address-cells = <3>;
- - #size-cells = <2>;
- - device_type = "pci";
- - dma-coherent;
- - num-lanes = <8>;
- - bus-range = <0x0 0xff>;
- - ranges = <0x81000000 0x0 0x00000000 0x14 0x00010000 0x0 0x00010000 /* downstream I/O */
- - 0x82000000 0x0 0x40000000 0x14 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&its>;
- - #interrupt-cells = <1>;
- - interrupt-map-mask = <0 0 0 7>;
- - interrupt-map = <0000 0 0 1 &gic 0 0 0 119 4>,
- - <0000 0 0 2 &gic 0 0 0 120 4>,
- - <0000 0 0 3 &gic 0 0 0 121 4>,
- - <0000 0 0 4 &gic 0 0 0 122 4>;
- - };
- -
- - pcie@3700000 {
- - compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- - "snps,dw-pcie";
- - reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
- - 0x16 0x00000000 0x0 0x00002000>; /* configuration space */
- - reg-names = "regs", "config";
- - interrupts = <0 123 0x4>; /* Level high type */
- - interrupt-names = "intr";
- - #address-cells = <3>;
- - #size-cells = <2>;
- - device_type = "pci";
- - dma-coherent;
- - num-lanes = <4>;
- - bus-range = <0x0 0xff>;
- - ranges = <0x81000000 0x0 0x00000000 0x16 0x00010000 0x0 0x00010000 /* downstream I/O */
- - 0x82000000 0x0 0x40000000 0x16 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- - msi-parent = <&its>;
- - #interrupt-cells = <1>;
- - interrupt-map-mask = <0 0 0 7>;
- - interrupt-map = <0000 0 0 1 &gic 0 0 0 124 4>,
- - <0000 0 0 2 &gic 0 0 0 125 4>,
- - <0000 0 0 3 &gic 0 0 0 126 4>,
- - <0000 0 0 4 &gic 0 0 0 127 4>;
- - };
- -
- - sata0: sata@3200000 {
- - status = "disabled";
- - compatible = "fsl,ls2080a-ahci";
- - reg = <0x0 0x3200000 0x0 0x10000>;
- - interrupts = <0 133 0x4>; /* Level high type */
- - clocks = <&clockgen 4 3>;
- - dma-coherent;
- - };
- -
- - sata1: sata@3210000 {
- - status = "disabled";
- - compatible = "fsl,ls2080a-ahci";
- - reg = <0x0 0x3210000 0x0 0x10000>;
- - interrupts = <0 136 0x4>; /* Level high type */
- - clocks = <&clockgen 4 3>;
- - dma-coherent;
- - };
- -
- - usb0: usb3@3100000 {
- - status = "disabled";
- - compatible = "snps,dwc3";
- - reg = <0x0 0x3100000 0x0 0x10000>;
- - interrupts = <0 80 0x4>; /* Level high type */
- - dr_mode = "host";
- - snps,quirk-frame-length-adjustment = <0x20>;
- - snps,dis_rxdet_inp3_quirk;
- - };
- -
- - usb1: usb3@3110000 {
- - status = "disabled";
- - compatible = "snps,dwc3";
- - reg = <0x0 0x3110000 0x0 0x10000>;
- - interrupts = <0 81 0x4>; /* Level high type */
- - dr_mode = "host";
- - snps,quirk-frame-length-adjustment = <0x20>;
- - snps,dis_rxdet_inp3_quirk;
- - };
- -
- - ccn@4000000 {
- - compatible = "arm,ccn-504";
- - reg = <0x0 0x04000000 0x0 0x01000000>;
- - interrupts = <0 12 4>;
- - };
- - };
- -
- - ddr1: memory-controller@1080000 {
- - compatible = "fsl,qoriq-memory-controller";
- - reg = <0x0 0x1080000 0x0 0x1000>;
- - interrupts = <0 17 0x4>;
- - little-endian;
- - };
- -
- - ddr2: memory-controller@1090000 {
- - compatible = "fsl,qoriq-memory-controller";
- - reg = <0x0 0x1090000 0x0 0x1000>;
- - interrupts = <0 18 0x4>;
- - little-endian;
- +#include "fsl-ls208xa.dtsi"
- +
- +&cpu {
- + cpu0: cpu@0 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x0>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&cluster0_l2>;
- + #cooling-cells = <2>;
- + };
- +
- + cpu1: cpu@1 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x1>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&cluster0_l2>;
- + };
- +
- + cpu2: cpu@100 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x100>;
- + clocks = <&clockgen 1 1>;
- + next-level-cache = <&cluster1_l2>;
- + #cooling-cells = <2>;
- + };
- +
- + cpu3: cpu@101 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x101>;
- + clocks = <&clockgen 1 1>;
- + next-level-cache = <&cluster1_l2>;
- + };
- +
- + cpu4: cpu@200 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x200>;
- + clocks = <&clockgen 1 2>;
- + next-level-cache = <&cluster2_l2>;
- + #cooling-cells = <2>;
- + };
- +
- + cpu5: cpu@201 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x201>;
- + clocks = <&clockgen 1 2>;
- + next-level-cache = <&cluster2_l2>;
- + };
- +
- + cpu6: cpu@300 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x300>;
- + clocks = <&clockgen 1 3>;
- + next-level-cache = <&cluster3_l2>;
- + #cooling-cells = <2>;
- + };
- +
- + cpu7: cpu@301 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a57";
- + reg = <0x301>;
- + clocks = <&clockgen 1 3>;
- + next-level-cache = <&cluster3_l2>;
- };
- +
- + cluster0_l2: l2-cache0 {
- + compatible = "cache";
- + };
- +
- + cluster1_l2: l2-cache1 {
- + compatible = "cache";
- + };
- +
- + cluster2_l2: l2-cache2 {
- + compatible = "cache";
- + };
- +
- + cluster3_l2: l2-cache3 {
- + compatible = "cache";
- + };
- +};
- +
- +&usb0 {
- + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
- + snps,dma-snooping;
- +};
- +
- +&usb1 {
- + snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>;
- + snps,dma-snooping;
- +};
- +
- +&pcie1 {
- + reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- + 0x10 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x10 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x10 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- +};
- +
- +&pcie2 {
- + reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- + 0x12 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x12 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x12 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- +};
- +
- +&pcie3 {
- + reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- + 0x14 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x14 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x14 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- +};
- +
- +&pcie4 {
- + reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
- + 0x16 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x16 0x00010000 0x0 0x00010000 /* downstream I/O */
- + 0x82000000 0x0 0x40000000 0x16 0x40000000 0x0 0x40000000>; /* non-prefetchable memory */
- };
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2081a-rdb.dts
- @@ -0,0 +1,161 @@
- +/*
- + * Device Tree file for NXP LS2081A RDB Board.
- + *
- + * Copyright 2017 NXP
- + *
- + * Priyanka Jain <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls2088a.dtsi"
- +
- +/ {
- + model = "NXP Layerscape 2081A RDB Board";
- + compatible = "fsl,ls2081a-rdb", "fsl,ls2081a";
- +
- + aliases {
- + serial0 = &serial0;
- + serial1 = &serial1;
- + };
- +
- + chosen {
- + stdout-path = "serial1:115200n8";
- + };
- +};
- +
- +&esdhc {
- + status = "okay";
- +};
- +
- +&ifc {
- + status = "disabled";
- +};
- +
- +&i2c0 {
- + status = "okay";
- + pca9547@75 {
- + compatible = "nxp,pca9547";
- + reg = <0x75>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + i2c@1 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x01>;
- + rtc@51 {
- + compatible = "nxp,pcf2129";
- + reg = <0x51>;
- + };
- + };
- +
- + i2c@2 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x02>;
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <500>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + adt7481@4c {
- + compatible = "adi,adt7461";
- + reg = <0x4c>;
- + };
- + };
- + };
- +};
- +
- +&dspi {
- + status = "okay";
- + dflash0: n25q512a {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <3000000>;
- + reg = <0>;
- + };
- +};
- +
- +&qspi {
- + status = "okay";
- + fsl,qspi-has-second-chip;
- + flash0: s25fs512s@0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "spansion,m25p80";
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- + flash1: s25fs512s@1 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "spansion,m25p80";
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <1>;
- + };
- +};
- +
- +&sata0 {
- + status = "okay";
- +};
- +
- +&sata1 {
- + status = "okay";
- +};
- +
- +&usb0 {
- + status = "okay";
- +};
- +
- +&usb1 {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2088a-qds.dts
- @@ -0,0 +1,162 @@
- +/*
- + * Device Tree file for Freescale LS2088A QDS Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls2088a.dtsi"
- +#include "fsl-ls208xa-qds.dtsi"
- +
- +/ {
- + model = "Freescale Layerscape 2088A QDS Board";
- + compatible = "fsl,ls2088a-qds", "fsl,ls2088a";
- +
- + chosen {
- + stdout-path = "serial0:115200n8";
- + };
- +};
- +
- +&ifc {
- + boardctrl: board-control@3,0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "fsl,tetra-fpga", "fsl,fpga-qixis", "simple-bus";
- + reg = <3 0 0x300>; /* TODO check address */
- + ranges = <0 3 0 0x300>;
- +
- + mdio_mux_emi1 {
- + compatible = "mdio-mux-mmioreg", "mdio-mux";
- + mdio-parent-bus = <&emdio1>;
- + reg = <0x54 1>; /* BRDCFG4 */
- + mux-mask = <0xe0>; /* EMI1_MDIO */
- +
- + #address-cells=<1>;
- + #size-cells = <0>;
- +
- + /* Child MDIO buses, one for each riser card:
- + * reg = 0x0, 0x20, 0x40, 0x60, 0x80, 0xa0.
- + * VSC8234 PHYs on the riser cards.
- + */
- +
- + mdio_mux3: mdio@60 {
- + reg = <0x60>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + mdio0_phy12: mdio_phy0@1c {
- + reg = <0x1c>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy13: mdio_phy1@1d {
- + reg = <0x1d>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy14: mdio_phy2@1e {
- + reg = <0x1e>;
- + phy-connection-type = "sgmii";
- + };
- + mdio0_phy15: mdio_phy3@1f {
- + reg = <0x1f>;
- + phy-connection-type = "sgmii";
- + };
- + };
- + };
- + };
- +};
- +
- +&pcs_mdio1 {
- + pcs_phy1: ethernet-phy@0 {
- + backplane-mode = "10gbase-kr";
- + compatible = "ethernet-phy-ieee802.3-c45";
- + reg = <0x0>;
- + fsl,lane-handle = <&serdes1>;
- + fsl,lane-reg = <0x9C0 0x40>;/* lane H */
- + };
- +};
- +
- +&pcs_mdio2 {
- + pcs_phy2: ethernet-phy@0 {
- + backplane-mode = "10gbase-kr";
- + compatible = "ethernet-phy-ieee802.3-c45";
- + reg = <0x0>;
- + fsl,lane-handle = <&serdes1>;
- + fsl,lane-reg = <0x980 0x40>;/* lane G */
- + };
- +};
- +
- +&pcs_mdio3 {
- + pcs_phy3: ethernet-phy@0 {
- + backplane-mode = "10gbase-kr";
- + compatible = "ethernet-phy-ieee802.3-c45";
- + reg = <0x0>;
- + fsl,lane-handle = <&serdes1>;
- + fsl,lane-reg = <0x940 0x40>;/* lane F */
- + };
- +};
- +
- +&pcs_mdio4 {
- + pcs_phy4: ethernet-phy@0 {
- + backplane-mode = "10gbase-kr";
- + compatible = "ethernet-phy-ieee802.3-c45";
- + reg = <0x0>;
- + fsl,lane-handle = <&serdes1>;
- + fsl,lane-reg = <0x900 0x40>;/* lane E */
- + };
- +};
- +
- +/* Update DPMAC connections to external PHYs, under SerDes 0x2a_0x49. */
- +&dpmac9 {
- + phy-handle = <&mdio0_phy12>;
- +};
- +&dpmac10 {
- + phy-handle = <&mdio0_phy13>;
- +};
- +&dpmac11 {
- + phy-handle = <&mdio0_phy14>;
- +};
- +&dpmac12 {
- + phy-handle = <&mdio0_phy15>;
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2088a-rdb.dts
- @@ -0,0 +1,140 @@
- +/*
- + * Device Tree file for Freescale LS2088A RDB Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +/dts-v1/;
- +
- +#include "fsl-ls2088a.dtsi"
- +#include "fsl-ls208xa-rdb.dtsi"
- +
- +/ {
- + model = "Freescale Layerscape 2088A RDB Board";
- + compatible = "fsl,ls2088a-rdb", "fsl,ls2088a";
- +
- + chosen {
- + stdout-path = "serial1:115200n8";
- + };
- +};
- +
- +&emdio1 {
- + status = "disabled";
- + /* CS4340 PHYs */
- + mdio1_phy1: emdio1_phy@1 {
- + reg = <0x10>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy2: emdio1_phy@2 {
- + reg = <0x11>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy3: emdio1_phy@3 {
- + reg = <0x12>;
- + phy-connection-type = "xfi";
- + };
- + mdio1_phy4: emdio1_phy@4 {
- + reg = <0x13>;
- + phy-connection-type = "xfi";
- + };
- +};
- +
- +&emdio2 {
- + /* AQR405 PHYs */
- + mdio2_phy1: emdio2_phy@1 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 1 0x4>; /* Level high type */
- + reg = <0x0>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy2: emdio2_phy@2 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 2 0x4>; /* Level high type */
- + reg = <0x1>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy3: emdio2_phy@3 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 4 0x4>; /* Level high type */
- + reg = <0x2>;
- + phy-connection-type = "xfi";
- + };
- + mdio2_phy4: emdio2_phy@4 {
- + compatible = "ethernet-phy-ieee802.3-c45";
- + interrupts = <0 5 0x4>; /* Level high type */
- + reg = <0x3>;
- + phy-connection-type = "xfi";
- + };
- +};
- +
- +/* Update DPMAC connections to external PHYs, under the assumption of
- + * SerDes 0x2a_0x41. This is currently the only SerDes supported on the board.
- + */
- +/* Leave Cortina PHYs commented out until proper driver is integrated
- + *&dpmac1 {
- + * phy-handle = <&mdio1_phy1>;
- + *};
- + *&dpmac2 {
- + * phy-handle = <&mdio1_phy2>;
- + *};
- + *&dpmac3 {
- + * phy-handle = <&mdio1_phy3>;
- + *};
- + *&dpmac4 {
- + * phy-handle = <&mdio1_phy4>;
- + *};
- + */
- +
- +&dpmac5 {
- + phy-handle = <&mdio2_phy1>;
- +};
- +&dpmac6 {
- + phy-handle = <&mdio2_phy2>;
- +};
- +&dpmac7 {
- + phy-handle = <&mdio2_phy3>;
- +};
- +&dpmac8 {
- + phy-handle = <&mdio2_phy4>;
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls2088a.dtsi
- @@ -0,0 +1,195 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-2088A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include "fsl-ls208xa.dtsi"
- +
- +&cpu {
- + cpu0: cpu@0 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x0>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&cluster0_l2>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu1: cpu@1 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x1>;
- + clocks = <&clockgen 1 0>;
- + next-level-cache = <&cluster0_l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu2: cpu@100 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x100>;
- + clocks = <&clockgen 1 1>;
- + next-level-cache = <&cluster1_l2>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu3: cpu@101 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x101>;
- + clocks = <&clockgen 1 1>;
- + next-level-cache = <&cluster1_l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu4: cpu@200 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x200>;
- + clocks = <&clockgen 1 2>;
- + next-level-cache = <&cluster2_l2>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu5: cpu@201 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x201>;
- + clocks = <&clockgen 1 2>;
- + next-level-cache = <&cluster2_l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu6: cpu@300 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x300>;
- + clocks = <&clockgen 1 3>;
- + next-level-cache = <&cluster3_l2>;
- + #cooling-cells = <2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + cpu7: cpu@301 {
- + device_type = "cpu";
- + compatible = "arm,cortex-a72";
- + reg = <0x301>;
- + clocks = <&clockgen 1 3>;
- + next-level-cache = <&cluster3_l2>;
- + cpu-idle-states = <&CPU_PH20>;
- + };
- +
- + idle-states {
- + /*
- + * PSCI node is not added default, U-boot will add missing
- + * parts if it determines to use PSCI.
- + */
- + entry-method = "arm,psci";
- +
- + CPU_PH20: cpu-ph20 {
- + compatible = "arm,idle-state";
- + idle-state-name = "PH20";
- + arm,psci-suspend-param = <0x0>;
- + entry-latency-us = <1000>;
- + exit-latency-us = <1000>;
- + min-residency-us = <3000>;
- + };
- + };
- +
- + cluster0_l2: l2-cache0 {
- + compatible = "cache";
- + };
- +
- + cluster1_l2: l2-cache1 {
- + compatible = "cache";
- + };
- +
- + cluster2_l2: l2-cache2 {
- + compatible = "cache";
- + };
- +
- + cluster3_l2: l2-cache3 {
- + compatible = "cache";
- + };
- +};
- +
- +&pcie1 {
- + compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03400000 0x0 0x00100000 /* controller registers */
- + 0x20 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x20 0x00010000 0x0 0x00010000
- + 0x82000000 0x0 0x40000000 0x20 0x40000000 0x0 0x40000000>;
- +};
- +
- +&pcie2 {
- + compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03500000 0x0 0x00100000 /* controller registers */
- + 0x28 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x28 0x00010000 0x0 0x00010000
- + 0x82000000 0x0 0x40000000 0x28 0x40000000 0x0 0x40000000>;
- +};
- +
- +&pcie3 {
- + compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03600000 0x0 0x00100000 /* controller registers */
- + 0x30 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x30 0x00010000 0x0 0x00010000
- + 0x82000000 0x0 0x40000000 0x30 0x40000000 0x0 0x40000000>;
- +};
- +
- +&pcie4 {
- + compatible = "fsl,ls2088a-pcie", "snps,dw-pcie";
- + reg = <0x00 0x03700000 0x0 0x00100000 /* controller registers */
- + 0x38 0x00000000 0x0 0x00002000>; /* configuration space */
- +
- + ranges = <0x81000000 0x0 0x00000000 0x38 0x00010000 0x0 0x00010000
- + 0x82000000 0x0 0x40000000 0x38 0x40000000 0x0 0x40000000>;
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa-qds.dtsi
- @@ -0,0 +1,198 @@
- +/*
- + * Device Tree file for Freescale LS2080A QDS Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +&esdhc {
- + mmc-hs200-1_8v;
- + status = "okay";
- +};
- +
- +&ifc {
- + status = "okay";
- + #address-cells = <2>;
- + #size-cells = <1>;
- + ranges = <0x0 0x0 0x5 0x80000000 0x08000000
- + 0x2 0x0 0x5 0x30000000 0x00010000
- + 0x3 0x0 0x5 0x20000000 0x00010000>;
- +
- + nor@0,0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "cfi-flash";
- + reg = <0x0 0x0 0x8000000>;
- + bank-width = <2>;
- + device-width = <1>;
- + };
- +
- + nand@2,0 {
- + compatible = "fsl,ifc-nand";
- + reg = <0x2 0x0 0x10000>;
- + };
- +
- + cpld@3,0 {
- + reg = <0x3 0x0 0x10000>;
- + compatible = "fsl,ls2080aqds-fpga", "fsl,fpga-qixis";
- + };
- +};
- +
- +&i2c0 {
- + status = "okay";
- + pca9547@77 {
- + compatible = "nxp,pca9547";
- + reg = <0x77>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + i2c@0 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x00>;
- + rtc@68 {
- + compatible = "dallas,ds3232";
- + reg = <0x68>;
- + };
- + };
- +
- + i2c@2 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x02>;
- +
- + ina220@40 {
- + compatible = "ti,ina220";
- + reg = <0x40>;
- + shunt-resistor = <500>;
- + };
- +
- + ina220@41 {
- + compatible = "ti,ina220";
- + reg = <0x41>;
- + shunt-resistor = <1000>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + adt7481@4c {
- + compatible = "adi,adt7461";
- + reg = <0x4c>;
- + };
- + };
- + };
- +};
- +
- +&i2c1 {
- + status = "disabled";
- +};
- +
- +&i2c2 {
- + status = "disabled";
- +};
- +
- +&i2c3 {
- + status = "disabled";
- +};
- +
- +&dspi {
- + status = "okay";
- + dflash0: n25q128a {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <3000000>;
- + reg = <0>;
- + };
- + dflash1: sst25wf040b {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <3000000>;
- + reg = <1>;
- + };
- + dflash2: en25s64 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <3000000>;
- + reg = <2>;
- + };
- +};
- +
- +&qspi {
- + status = "okay";
- + flash0: s25fl256s1@0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- + flash2: s25fl256s1@2 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- +&sata0 {
- + status = "okay";
- +};
- +
- +&sata1 {
- + status = "okay";
- +};
- +
- +&usb0 {
- + status = "okay";
- +};
- +
- +&usb1 {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa-rdb.dtsi
- @@ -0,0 +1,161 @@
- +/*
- + * Device Tree file for Freescale LS2080A RDB Board.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +&esdhc {
- + status = "okay";
- +};
- +
- +&ifc {
- + status = "okay";
- + #address-cells = <2>;
- + #size-cells = <1>;
- + ranges = <0x0 0x0 0x5 0x80000000 0x08000000
- + 0x2 0x0 0x5 0x30000000 0x00010000
- + 0x3 0x0 0x5 0x20000000 0x00010000>;
- +
- + nor@0,0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "cfi-flash";
- + reg = <0x0 0x0 0x8000000>;
- + bank-width = <2>;
- + device-width = <1>;
- + };
- +
- + nand@2,0 {
- + compatible = "fsl,ifc-nand";
- + reg = <0x2 0x0 0x10000>;
- + };
- +
- + cpld@3,0 {
- + reg = <0x3 0x0 0x10000>;
- + compatible = "fsl,ls2080aqds-fpga", "fsl,fpga-qixis";
- + };
- +
- +};
- +
- +&i2c0 {
- + status = "okay";
- + pca9547@75 {
- + compatible = "nxp,pca9547";
- + reg = <0x75>;
- + #address-cells = <1>;
- + #size-cells = <0>;
- + i2c-mux-never-disable;
- + i2c@1 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x01>;
- + rtc@68 {
- + compatible = "dallas,ds3232";
- + reg = <0x68>;
- + };
- + };
- +
- + i2c@3 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x3>;
- +
- + adt7481@4c {
- + compatible = "adi,adt7461";
- + reg = <0x4c>;
- + };
- + };
- + };
- +};
- +
- +&i2c1 {
- + status = "disabled";
- +};
- +
- +&i2c2 {
- + status = "disabled";
- +};
- +
- +&i2c3 {
- + status = "disabled";
- +};
- +
- +&dspi {
- + status = "okay";
- + dflash0: n25q512a {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "st,m25p80";
- + spi-max-frequency = <3000000>;
- + reg = <0>;
- + };
- +};
- +
- +&qspi {
- + status = "okay";
- + flash0: s25fs512s@0 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "spansion,m25p80";
- + m25p,fast-read;
- + spi-max-frequency = <20000000>;
- + reg = <0>;
- + };
- +};
- +
- +&sata0 {
- + status = "okay";
- +};
- +
- +&sata1 {
- + status = "okay";
- +};
- +
- +&usb0 {
- + status = "okay";
- +};
- +
- +&usb1 {
- + status = "okay";
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi
- @@ -0,0 +1,919 @@
- +/*
- + * Device Tree Include file for Freescale Layerscape-2080A family SoC.
- + *
- + * Copyright 2016 Freescale Semiconductor, Inc.
- + * Copyright 2017 NXP
- + *
- + * Abhimanyu Saini <[email protected]>
- + *
- + * This file is dual-licensed: you can use it either under the terms
- + * of the GPLv2 or the X11 license, at your option. Note that this dual
- + * licensing only applies to this file, and not this project as a
- + * whole.
- + *
- + * a) This library is free software; you can redistribute it and/or
- + * modify it under the terms of the GNU General Public License as
- + * published by the Free Software Foundation; either version 2 of the
- + * License, or (at your option) any later version.
- + *
- + * This library is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * Or, alternatively,
- + *
- + * b) Permission is hereby granted, free of charge, to any person
- + * obtaining a copy of this software and associated documentation
- + * files (the "Software"), to deal in the Software without
- + * restriction, including without limitation the rights to use,
- + * copy, modify, merge, publish, distribute, sublicense, and/or
- + * sell copies of the Software, and to permit persons to whom the
- + * Software is furnished to do so, subject to the following
- + * conditions:
- + *
- + * The above copyright notice and this permission notice shall be
- + * included in all copies or substantial portions of the Software.
- + *
- + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
- + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
- + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
- + * OTHER DEALINGS IN THE SOFTWARE.
- + */
- +
- +#include <dt-bindings/thermal/thermal.h>
- +#include <dt-bindings/interrupt-controller/arm-gic.h>
- +
- +/ {
- + compatible = "fsl,ls2080a";
- + interrupt-parent = <&gic>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- +
- + aliases {
- + crypto = &crypto;
- + serial0 = &serial0;
- + serial1 = &serial1;
- + };
- +
- + cpu: cpus {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + memory@80000000 {
- + device_type = "memory";
- + reg = <0x00000000 0x80000000 0 0x80000000>;
- + /* DRAM space - 1, size : 2 GB DRAM */
- + };
- +
- + sysclk: sysclk {
- + compatible = "fixed-clock";
- + #clock-cells = <0>;
- + clock-frequency = <100000000>;
- + clock-output-names = "sysclk";
- + };
- +
- + gic: interrupt-controller@6000000 {
- + compatible = "arm,gic-v3";
- + reg = <0x0 0x06000000 0 0x10000>, /* GIC Dist */
- + <0x0 0x06100000 0 0x100000>, /* GICR (RD_base + SGI_base) */
- + <0x0 0x0c0c0000 0 0x2000>, /* GICC */
- + <0x0 0x0c0d0000 0 0x1000>, /* GICH */
- + <0x0 0x0c0e0000 0 0x20000>; /* GICV */
- + #interrupt-cells = <3>;
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- + interrupt-controller;
- + interrupts = <1 9 0x4>;
- +
- + its: gic-its@6020000 {
- + compatible = "arm,gic-v3-its";
- + msi-controller;
- + reg = <0x0 0x6020000 0 0x20000>;
- + };
- + };
- +
- + rstcr: syscon@1e60000 {
- + compatible = "fsl,ls2080a-rstcr", "syscon";
- + reg = <0x0 0x1e60000 0x0 0x4>;
- + };
- +
- + reboot {
- + compatible ="syscon-reboot";
- + regmap = <&rstcr>;
- + offset = <0x0>;
- + mask = <0x2>;
- + };
- +
- + timer {
- + compatible = "arm,armv8-timer";
- + interrupts = <1 13 4>, /* Physical Secure PPI, active-low */
- + <1 14 4>, /* Physical Non-Secure PPI, active-low */
- + <1 11 4>, /* Virtual PPI, active-low */
- + <1 10 4>; /* Hypervisor PPI, active-low */
- + fsl,erratum-a008585;
- + };
- +
- + pmu {
- + compatible = "arm,armv8-pmuv3";
- + interrupts = <1 7 0x8>; /* PMU PPI, Level low type */
- + };
- +
- + soc {
- + compatible = "simple-bus";
- + #address-cells = <2>;
- + #size-cells = <2>;
- + ranges;
- +
- + clockgen: clocking@1300000 {
- + compatible = "fsl,ls2080a-clockgen";
- + reg = <0 0x1300000 0 0xa0000>;
- + #clock-cells = <2>;
- + clocks = <&sysclk>;
- + };
- +
- + dcfg: dcfg@1e00000 {
- + compatible = "fsl,ls2080a-dcfg", "syscon";
- + reg = <0x0 0x1e00000 0x0 0x10000>;
- + little-endian;
- + };
- +
- + tmu: tmu@1f80000 {
- + compatible = "fsl,qoriq-tmu";
- + reg = <0x0 0x1f80000 0x0 0x10000>;
- + interrupts = <0 23 0x4>;
- + fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
- + fsl,tmu-calibration = <0x00000000 0x00000026
- + 0x00000001 0x0000002d
- + 0x00000002 0x00000032
- + 0x00000003 0x00000039
- + 0x00000004 0x0000003f
- + 0x00000005 0x00000046
- + 0x00000006 0x0000004d
- + 0x00000007 0x00000054
- + 0x00000008 0x0000005a
- + 0x00000009 0x00000061
- + 0x0000000a 0x0000006a
- + 0x0000000b 0x00000071
- +
- + 0x00010000 0x00000025
- + 0x00010001 0x0000002c
- + 0x00010002 0x00000035
- + 0x00010003 0x0000003d
- + 0x00010004 0x00000045
- + 0x00010005 0x0000004e
- + 0x00010006 0x00000057
- + 0x00010007 0x00000061
- + 0x00010008 0x0000006b
- + 0x00010009 0x00000076
- +
- + 0x00020000 0x00000029
- + 0x00020001 0x00000033
- + 0x00020002 0x0000003d
- + 0x00020003 0x00000049
- + 0x00020004 0x00000056
- + 0x00020005 0x00000061
- + 0x00020006 0x0000006d
- +
- + 0x00030000 0x00000021
- + 0x00030001 0x0000002a
- + 0x00030002 0x0000003c
- + 0x00030003 0x0000004e>;
- + little-endian;
- + #thermal-sensor-cells = <1>;
- + };
- +
- + thermal-zones {
- + cpu_thermal: cpu-thermal {
- + polling-delay-passive = <1000>;
- + polling-delay = <5000>;
- +
- + thermal-sensors = <&tmu 4>;
- +
- + trips {
- + cpu_alert: cpu-alert {
- + temperature = <75000>;
- + hysteresis = <2000>;
- + type = "passive";
- + };
- + cpu_crit: cpu-crit {
- + temperature = <85000>;
- + hysteresis = <2000>;
- + type = "critical";
- + };
- + };
- +
- + cooling-maps {
- + map0 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu0 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + map1 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu2 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + map2 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu4 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + map3 {
- + trip = <&cpu_alert>;
- + cooling-device =
- + <&cpu6 THERMAL_NO_LIMIT
- + THERMAL_NO_LIMIT>;
- + };
- + };
- + };
- + };
- +
- + serial0: serial@21c0500 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21c0500 0x0 0x100>;
- + clocks = <&clockgen 4 3>;
- + interrupts = <0 32 0x4>; /* Level high type */
- + };
- +
- + serial1: serial@21c0600 {
- + compatible = "fsl,ns16550", "ns16550a";
- + reg = <0x0 0x21c0600 0x0 0x100>;
- + clocks = <&clockgen 4 3>;
- + interrupts = <0 32 0x4>; /* Level high type */
- + };
- +
- + cluster1_core0_watchdog: wdt@c000000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc000000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster1_core1_watchdog: wdt@c010000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc010000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core0_watchdog: wdt@c100000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc100000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster2_core1_watchdog: wdt@c110000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc110000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster3_core0_watchdog: wdt@c200000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc200000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster3_core1_watchdog: wdt@c210000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc210000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster4_core0_watchdog: wdt@c300000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc300000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + cluster4_core1_watchdog: wdt@c310000 {
- + compatible = "arm,sp805-wdt", "arm,primecell";
- + reg = <0x0 0xc310000 0x0 0x1000>;
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "apb_pclk", "wdog_clk";
- + };
- +
- + crypto: crypto@8000000 {
- + compatible = "fsl,sec-v5.0", "fsl,sec-v4.0";
- + fsl,sec-era = <8>;
- + #address-cells = <1>;
- + #size-cells = <1>;
- + ranges = <0x0 0x00 0x8000000 0x100000>;
- + reg = <0x00 0x8000000 0x0 0x100000>;
- + interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
- + dma-coherent;
- +
- + sec_jr0: jr@10000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x10000 0x10000>;
- + interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr1: jr@20000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x20000 0x10000>;
- + interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr2: jr@30000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x30000 0x10000>;
- + interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
- + };
- +
- + sec_jr3: jr@40000 {
- + compatible = "fsl,sec-v5.0-job-ring",
- + "fsl,sec-v4.0-job-ring";
- + reg = <0x40000 0x10000>;
- + interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
- + };
- + };
- +
- + fsl_mc: fsl-mc@80c000000 {
- + compatible = "fsl,qoriq-mc";
- + reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */
- + <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 0>; /* This is fixed-up by u-boot */
- + #address-cells = <3>;
- + #size-cells = <1>;
- +
- + /*
- + * Region type 0x0 - MC portals
- + * Region type 0x1 - QBMAN portals
- + */
- + ranges = <0x0 0x0 0x0 0x8 0x0c000000 0x4000000
- + 0x1 0x0 0x0 0x8 0x18000000 0x8000000>;
- +
- + /*
- + * Define the maximum number of MACs present on the SoC.
- + */
- + dpmacs {
- + #address-cells = <1>;
- + #size-cells = <0>;
- +
- + dpmac1: dpmac@1 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x1>;
- + };
- +
- + dpmac2: dpmac@2 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x2>;
- + };
- +
- + dpmac3: dpmac@3 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x3>;
- + };
- +
- + dpmac4: dpmac@4 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x4>;
- + };
- +
- + dpmac5: dpmac@5 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x5>;
- + };
- +
- + dpmac6: dpmac@6 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x6>;
- + };
- +
- + dpmac7: dpmac@7 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x7>;
- + };
- +
- + dpmac8: dpmac@8 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x8>;
- + };
- +
- + dpmac9: dpmac@9 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x9>;
- + };
- +
- + dpmac10: dpmac@a {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xa>;
- + };
- +
- + dpmac11: dpmac@b {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xb>;
- + };
- +
- + dpmac12: dpmac@c {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xc>;
- + };
- +
- + dpmac13: dpmac@d {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xd>;
- + };
- +
- + dpmac14: dpmac@e {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xe>;
- + };
- +
- + dpmac15: dpmac@f {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0xf>;
- + };
- +
- + dpmac16: dpmac@10 {
- + compatible = "fsl,qoriq-mc-dpmac";
- + reg = <0x10>;
- + };
- + };
- + };
- +
- + smmu: iommu@5000000 {
- + compatible = "arm,mmu-500";
- + reg = <0 0x5000000 0 0x800000>;
- + #global-interrupts = <12>;
- + #iommu-cells = <1>;
- + stream-match-mask = <0x7C00>;
- + interrupts = <0 13 4>, /* global secure fault */
- + <0 14 4>, /* combined secure interrupt */
- + <0 15 4>, /* global non-secure fault */
- + <0 16 4>, /* combined non-secure interrupt */
- + /* performance counter interrupts 0-7 */
- + <0 211 4>, <0 212 4>,
- + <0 213 4>, <0 214 4>,
- + <0 215 4>, <0 216 4>,
- + <0 217 4>, <0 218 4>,
- + /* per context interrupt, 64 interrupts */
- + <0 146 4>, <0 147 4>,
- + <0 148 4>, <0 149 4>,
- + <0 150 4>, <0 151 4>,
- + <0 152 4>, <0 153 4>,
- + <0 154 4>, <0 155 4>,
- + <0 156 4>, <0 157 4>,
- + <0 158 4>, <0 159 4>,
- + <0 160 4>, <0 161 4>,
- + <0 162 4>, <0 163 4>,
- + <0 164 4>, <0 165 4>,
- + <0 166 4>, <0 167 4>,
- + <0 168 4>, <0 169 4>,
- + <0 170 4>, <0 171 4>,
- + <0 172 4>, <0 173 4>,
- + <0 174 4>, <0 175 4>,
- + <0 176 4>, <0 177 4>,
- + <0 178 4>, <0 179 4>,
- + <0 180 4>, <0 181 4>,
- + <0 182 4>, <0 183 4>,
- + <0 184 4>, <0 185 4>,
- + <0 186 4>, <0 187 4>,
- + <0 188 4>, <0 189 4>,
- + <0 190 4>, <0 191 4>,
- + <0 192 4>, <0 193 4>,
- + <0 194 4>, <0 195 4>,
- + <0 196 4>, <0 197 4>,
- + <0 198 4>, <0 199 4>,
- + <0 200 4>, <0 201 4>,
- + <0 202 4>, <0 203 4>,
- + <0 204 4>, <0 205 4>,
- + <0 206 4>, <0 207 4>,
- + <0 208 4>, <0 209 4>;
- + };
- +
- + dspi: dspi@2100000 {
- + status = "disabled";
- + compatible = "fsl,ls2080a-dspi", "fsl,ls2085a-dspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2100000 0x0 0x10000>;
- + interrupts = <0 26 0x4>; /* Level high type */
- + clocks = <&clockgen 4 3>;
- + clock-names = "dspi";
- + spi-num-chipselects = <5>;
- + bus-num = <0>;
- + };
- +
- + esdhc: esdhc@2140000 {
- + status = "disabled";
- + compatible = "fsl,ls2080a-esdhc", "fsl,esdhc";
- + reg = <0x0 0x2140000 0x0 0x10000>;
- + interrupts = <0 28 0x4>; /* Level high type */
- + clocks = <&clockgen 4 1>;
- + voltage-ranges = <1800 1800 3300 3300>;
- + sdhci,auto-cmd12;
- + little-endian;
- + bus-width = <4>;
- + };
- +
- + gpio0: gpio@2300000 {
- + compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- + reg = <0x0 0x2300000 0x0 0x10000>;
- + interrupts = <0 36 0x4>; /* Level high type */
- + gpio-controller;
- + little-endian;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio1: gpio@2310000 {
- + compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- + reg = <0x0 0x2310000 0x0 0x10000>;
- + interrupts = <0 36 0x4>; /* Level high type */
- + gpio-controller;
- + little-endian;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio2: gpio@2320000 {
- + compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- + reg = <0x0 0x2320000 0x0 0x10000>;
- + interrupts = <0 37 0x4>; /* Level high type */
- + gpio-controller;
- + little-endian;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + gpio3: gpio@2330000 {
- + compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio";
- + reg = <0x0 0x2330000 0x0 0x10000>;
- + interrupts = <0 37 0x4>; /* Level high type */
- + gpio-controller;
- + little-endian;
- + #gpio-cells = <2>;
- + interrupt-controller;
- + #interrupt-cells = <2>;
- + };
- +
- + /* TODO: WRIOP (CCSR?) */
- + emdio1: mdio@0x8B96000 { /* WRIOP0: 0x8B8_0000,
- + * E-MDIO1: 0x1_6000
- + */
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8B96000 0x0 0x1000>;
- + device_type = "mdio"; /* TODO: is this necessary? */
- + little-endian; /* force the driver in LE mode */
- +
- + /* Not necessary on the QDS, but needed on the RDB */
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + emdio2: mdio@0x8B97000 { /* WRIOP0: 0x8B8_0000,
- + * E-MDIO2: 0x1_7000
- + */
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8B97000 0x0 0x1000>;
- + device_type = "mdio"; /* TODO: is this necessary? */
- + little-endian; /* force the driver in LE mode */
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio1: mdio@0x8c07000 {
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c07000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio2: mdio@0x8c0b000 {
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c0b000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio3: mdio@0x8c0f000 {
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c0f000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio4: mdio@0x8c13000 {
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c13000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio5: mdio@0x8c17000 {
- + status = "disabled";
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c17000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio6: mdio@0x8c1b000 {
- + status = "disabled";
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c1b000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio7: mdio@0x8c1f000 {
- + status = "disabled";
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c1f000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + pcs_mdio8: mdio@0x8c23000 {
- + status = "disabled";
- + compatible = "fsl,fman-memac-mdio";
- + reg = <0x0 0x8c23000 0x0 0x1000>;
- + device_type = "mdio";
- + little-endian;
- +
- + #address-cells = <1>;
- + #size-cells = <0>;
- + };
- +
- + i2c0: i2c@2000000 {
- + status = "disabled";
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2000000 0x0 0x10000>;
- + interrupts = <0 34 0x4>; /* Level high type */
- + clock-names = "i2c";
- + clocks = <&clockgen 4 1>;
- + };
- +
- + i2c1: i2c@2010000 {
- + status = "disabled";
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2010000 0x0 0x10000>;
- + interrupts = <0 34 0x4>; /* Level high type */
- + clock-names = "i2c";
- + clocks = <&clockgen 4 1>;
- + };
- +
- + i2c2: i2c@2020000 {
- + status = "disabled";
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2020000 0x0 0x10000>;
- + interrupts = <0 35 0x4>; /* Level high type */
- + clock-names = "i2c";
- + clocks = <&clockgen 4 1>;
- + };
- +
- + i2c3: i2c@2030000 {
- + status = "disabled";
- + compatible = "fsl,vf610-i2c";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x2030000 0x0 0x10000>;
- + interrupts = <0 35 0x4>; /* Level high type */
- + clock-names = "i2c";
- + clocks = <&clockgen 4 1>;
- + };
- +
- + ifc: ifc@2240000 {
- + compatible = "fsl,ifc", "simple-bus";
- + reg = <0x0 0x2240000 0x0 0x20000>;
- + interrupts = <0 21 0x4>; /* Level high type */
- + little-endian;
- + #address-cells = <2>;
- + #size-cells = <1>;
- +
- + ranges = <0 0 0x5 0x80000000 0x08000000
- + 2 0 0x5 0x30000000 0x00010000
- + 3 0 0x5 0x20000000 0x00010000>;
- + };
- +
- + qspi: quadspi@20c0000 {
- + status = "disabled";
- + compatible = "fsl,ls2080a-qspi", "fsl,ls1021a-qspi";
- + #address-cells = <1>;
- + #size-cells = <0>;
- + reg = <0x0 0x20c0000 0x0 0x10000>,
- + <0x0 0x20000000 0x0 0x10000000>;
- + reg-names = "QuadSPI", "QuadSPI-memory";
- + interrupts = <0 25 0x4>; /* Level high type */
- + clocks = <&clockgen 4 3>, <&clockgen 4 3>;
- + clock-names = "qspi_en", "qspi";
- + };
- +
- + pcie1: pcie@3400000 {
- + compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- + "snps,dw-pcie";
- + reg-names = "regs", "config";
- + interrupts = <0 108 0x4>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 109 4>,
- + <0000 0 0 2 &gic 0 0 0 110 4>,
- + <0000 0 0 3 &gic 0 0 0 111 4>,
- + <0000 0 0 4 &gic 0 0 0 112 4>;
- + };
- +
- + pcie2: pcie@3500000 {
- + compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- + "snps,dw-pcie";
- + reg-names = "regs", "config";
- + interrupts = <0 113 0x4>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 114 4>,
- + <0000 0 0 2 &gic 0 0 0 115 4>,
- + <0000 0 0 3 &gic 0 0 0 116 4>,
- + <0000 0 0 4 &gic 0 0 0 117 4>;
- + };
- +
- + pcie3: pcie@3600000 {
- + compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- + "snps,dw-pcie";
- + reg-names = "regs", "config";
- + interrupts = <0 118 0x4>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <8>;
- + bus-range = <0x0 0xff>;
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 119 4>,
- + <0000 0 0 2 &gic 0 0 0 120 4>,
- + <0000 0 0 3 &gic 0 0 0 121 4>,
- + <0000 0 0 4 &gic 0 0 0 122 4>;
- + };
- +
- + pcie4: pcie@3700000 {
- + compatible = "fsl,ls2080a-pcie", "fsl,ls2085a-pcie",
- + "snps,dw-pcie";
- + reg-names = "regs", "config";
- + interrupts = <0 123 0x4>; /* aer interrupt */
- + interrupt-names = "aer";
- + #address-cells = <3>;
- + #size-cells = <2>;
- + device_type = "pci";
- + dma-coherent;
- + num-lanes = <4>;
- + bus-range = <0x0 0xff>;
- + msi-parent = <&its>;
- + iommu-map = <0 &smmu 0 1>; /* This is fixed-up by u-boot */
- + #interrupt-cells = <1>;
- + interrupt-map-mask = <0 0 0 7>;
- + interrupt-map = <0000 0 0 1 &gic 0 0 0 124 4>,
- + <0000 0 0 2 &gic 0 0 0 125 4>,
- + <0000 0 0 3 &gic 0 0 0 126 4>,
- + <0000 0 0 4 &gic 0 0 0 127 4>;
- + };
- +
- + sata0: sata@3200000 {
- + status = "disabled";
- + compatible = "fsl,ls2080a-ahci";
- + reg = <0x0 0x3200000 0x0 0x10000>;
- + interrupts = <0 133 0x4>; /* Level high type */
- + clocks = <&clockgen 4 3>;
- + dma-coherent;
- + };
- +
- + sata1: sata@3210000 {
- + status = "disabled";
- + compatible = "fsl,ls2080a-ahci";
- + reg = <0x0 0x3210000 0x0 0x10000>;
- + interrupts = <0 136 0x4>; /* Level high type */
- + clocks = <&clockgen 4 3>;
- + dma-coherent;
- + };
- +
- + usb0: usb3@3100000 {
- + status = "disabled";
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3100000 0x0 0x10000>;
- + interrupts = <0 80 0x4>; /* Level high type */
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + usb1: usb3@3110000 {
- + status = "disabled";
- + compatible = "snps,dwc3";
- + reg = <0x0 0x3110000 0x0 0x10000>;
- + interrupts = <0 81 0x4>; /* Level high type */
- + dr_mode = "host";
- + snps,quirk-frame-length-adjustment = <0x20>;
- + snps,dis_rxdet_inp3_quirk;
- + };
- +
- + serdes1: serdes@1ea0000 {
- + reg = <0x0 0x1ea0000 0 0x00002000>;
- + };
- +
- + ccn@4000000 {
- + compatible = "arm,ccn-504";
- + reg = <0x0 0x04000000 0x0 0x01000000>;
- + interrupts = <0 12 4>;
- + };
- +
- + ftm0: ftm0@2800000 {
- + compatible = "fsl,ls208xa-ftm";
- + reg = <0x0 0x2800000 0x0 0x10000>,
- + <0x0 0x1e34050 0x0 0x4>;
- + interrupts = <0 44 4>;
- + reg-names = "ftm", "FlexTimer1";
- + };
- + };
- +
- + ddr1: memory-controller@1080000 {
- + compatible = "fsl,qoriq-memory-controller";
- + reg = <0x0 0x1080000 0x0 0x1000>;
- + interrupts = <0 17 0x4>;
- + little-endian;
- + };
- +
- + ddr2: memory-controller@1090000 {
- + compatible = "fsl,qoriq-memory-controller";
- + reg = <0x0 0x1090000 0x0 0x1000>;
- + interrupts = <0 18 0x4>;
- + little-endian;
- + };
- +
- + firmware {
- + optee {
- + compatible = "linaro,optee-tz";
- + method = "smc";
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-bman1-portals.dtsi
- @@ -0,0 +1,81 @@
- +/*
- + * QorIQ BMan Portals device tree
- + *
- + * Copyright 2011-2016 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +&bportals {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "simple-bus";
- +
- + bman-portal@0 {
- + cell-index = <0>;
- + compatible = "fsl,bman-portal";
- + reg = <0x0 0x4000 0x4000000 0x4000>;
- + interrupts = <0 173 0x4>;
- + };
- +
- + bman-portal@10000 {
- + cell-index = <1>;
- + compatible = "fsl,bman-portal";
- + reg = <0x10000 0x4000 0x4010000 0x4000>;
- + interrupts = <0 175 0x4>;
- + };
- +
- + bman-portal@20000 {
- + cell-index = <2>;
- + compatible = "fsl,bman-portal";
- + reg = <0x20000 0x4000 0x4020000 0x4000>;
- + interrupts = <0 177 0x4>;
- + };
- +
- + bman-portal@30000 {
- + cell-index = <3>;
- + compatible = "fsl,bman-portal";
- + reg = <0x30000 0x4000 0x4030000 0x4000>;
- + interrupts = <0 179 0x4>;
- + };
- +
- + bman-portal@40000 {
- + cell-index = <4>;
- + compatible = "fsl,bman-portal";
- + reg = <0x40000 0x4000 0x4040000 0x4000>;
- + interrupts = <0 181 0x4>;
- + };
- +
- + bman-portal@50000 {
- + cell-index = <5>;
- + compatible = "fsl,bman-portal";
- + reg = <0x50000 0x4000 0x4050000 0x4000>;
- + interrupts = <0 183 0x4>;
- + };
- +
- + bman-portal@60000 {
- + cell-index = <6>;
- + compatible = "fsl,bman-portal";
- + reg = <0x60000 0x4000 0x4060000 0x4000>;
- + interrupts = <0 185 0x4>;
- + };
- +
- + bman-portal@70000 {
- + cell-index = <7>;
- + compatible = "fsl,bman-portal";
- + reg = <0x70000 0x4000 0x4070000 0x4000>;
- + interrupts = <0 187 0x4>;
- + };
- +
- + bman-portal@80000 {
- + cell-index = <8>;
- + compatible = "fsl,bman-portal";
- + reg = <0x80000 0x4000 0x4080000 0x4000>;
- + interrupts = <0 189 0x4>;
- + };
- +
- + bman-bpids@0 {
- + compatible = "fsl,bpid-range";
- + fsl,bpid-range = <32 32>;
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-dpaa-eth.dtsi
- @@ -0,0 +1,73 @@
- +/*
- + * QorIQ FMan v3 10g port #1 device tree stub [ controller @ offset 0x400000 ]
- + *
- + * Copyright 2012 - 2015 Freescale Semiconductor Inc.
- + *
- + * Redistribution and use in source and binary forms, with or without
- + * modification, are permitted provided that the following conditions are met:
- + * * Redistributions of source code must retain the above copyright
- + * notice, this list of conditions and the following disclaimer.
- + * * Redistributions in binary form must reproduce the above copyright
- + * notice, this list of conditions and the following disclaimer in the
- + * documentation and/or other materials provided with the distribution.
- + * * Neither the name of Freescale Semiconductor nor the
- + * names of its contributors may be used to endorse or promote products
- + * derived from this software without specific prior written permission.
- + *
- + *
- + * ALTERNATIVELY, this software may be distributed under the terms of the
- + * GNU General Public License ("GPL") as published by the Free Software
- + * Foundation, either version 2 of that License or (at your option) any
- + * later version.
- + *
- + * THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
- + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- + * DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
- + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- + */
- +
- +fsldpaa: fsl,dpaa {
- + compatible = "fsl,ls1043a-dpaa", "simple-bus", "fsl,dpaa";
- + ethernet@0 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet0>;
- + dma-coherent;
- + };
- + ethernet@1 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet1>;
- + dma-coherent;
- + };
- + ethernet@2 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet2>;
- + dma-coherent;
- + };
- + ethernet@3 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet3>;
- + dma-coherent;
- + };
- + ethernet@4 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet4>;
- + dma-coherent;
- + };
- + ethernet@5 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet5>;
- + dma-coherent;
- + };
- + ethernet@8 {
- + compatible = "fsl,dpa-ethernet";
- + fsl,fman-mac = <&enet6>;
- + dma-coherent;
- + };
- +};
- +
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-10g-0.dtsi
- @@ -0,0 +1,43 @@
- +/*
- + * QorIQ FMan v3 10g port #0 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x10: port@90000 {
- + cell-index = <0x10>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-10g-rx";
- + reg = <0x90000 0x1000>;
- + fsl,fman-10g-port;
- + };
- +
- + fman0_tx_0x30: port@b0000 {
- + cell-index = <0x30>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-10g-tx";
- + reg = <0xb0000 0x1000>;
- + fsl,fman-10g-port;
- + fsl,qman-channel-id = <0x800>;
- + };
- +
- + ethernet@f0000 {
- + cell-index = <0x8>;
- + compatible = "fsl,fman-memac";
- + reg = <0xf0000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x10 &fman0_tx_0x30>;
- + pcsphy-handle = <&pcsphy6>;
- + };
- +
- + mdio@f1000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xf1000 0x1000>;
- +
- + pcsphy6: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-10g-1.dtsi
- @@ -0,0 +1,43 @@
- +/*
- + * QorIQ FMan v3 10g port #1 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x11: port@91000 {
- + cell-index = <0x11>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-10g-rx";
- + reg = <0x91000 0x1000>;
- + fsl,fman-10g-port;
- + };
- +
- + fman0_tx_0x31: port@b1000 {
- + cell-index = <0x31>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-10g-tx";
- + reg = <0xb1000 0x1000>;
- + fsl,fman-10g-port;
- + fsl,qman-channel-id = <0x801>;
- + };
- +
- + ethernet@f2000 {
- + cell-index = <0x9>;
- + compatible = "fsl,fman-memac";
- + reg = <0xf2000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x11 &fman0_tx_0x31>;
- + pcsphy-handle = <&pcsphy7>;
- + };
- +
- + mdio@f3000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xf3000 0x1000>;
- +
- + pcsphy7: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-0.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #0 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x08: port@88000 {
- + cell-index = <0x8>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x88000 0x1000>;
- + };
- +
- + fman0_tx_0x28: port@a8000 {
- + cell-index = <0x28>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xa8000 0x1000>;
- + fsl,qman-channel-id = <0x802>;
- + };
- +
- + ethernet@e0000 {
- + cell-index = <0>;
- + compatible = "fsl,fman-memac";
- + reg = <0xe0000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy0>;
- + };
- +
- + mdio@e1000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xe1000 0x1000>;
- +
- + pcsphy0: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-1.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #1 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x09: port@89000 {
- + cell-index = <0x9>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x89000 0x1000>;
- + };
- +
- + fman0_tx_0x29: port@a9000 {
- + cell-index = <0x29>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xa9000 0x1000>;
- + fsl,qman-channel-id = <0x803>;
- + };
- +
- + ethernet@e2000 {
- + cell-index = <1>;
- + compatible = "fsl,fman-memac";
- + reg = <0xe2000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x09 &fman0_tx_0x29>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy1>;
- + };
- +
- + mdio@e3000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xe3000 0x1000>;
- +
- + pcsphy1: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-2.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #2 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x0a: port@8a000 {
- + cell-index = <0xa>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x8a000 0x1000>;
- + };
- +
- + fman0_tx_0x2a: port@aa000 {
- + cell-index = <0x2a>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xaa000 0x1000>;
- + fsl,qman-channel-id = <0x804>;
- + };
- +
- + ethernet@e4000 {
- + cell-index = <2>;
- + compatible = "fsl,fman-memac";
- + reg = <0xe4000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x0a &fman0_tx_0x2a>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy2>;
- + };
- +
- + mdio@e5000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xe5000 0x1000>;
- +
- + pcsphy2: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-3.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #3 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x0b: port@8b000 {
- + cell-index = <0xb>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x8b000 0x1000>;
- + };
- +
- + fman0_tx_0x2b: port@ab000 {
- + cell-index = <0x2b>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xab000 0x1000>;
- + fsl,qman-channel-id = <0x805>;
- + };
- +
- + ethernet@e6000 {
- + cell-index = <3>;
- + compatible = "fsl,fman-memac";
- + reg = <0xe6000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x0b &fman0_tx_0x2b>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy3>;
- + };
- +
- + mdio@e7000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xe7000 0x1000>;
- +
- + pcsphy3: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-4.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #4 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x0c: port@8c000 {
- + cell-index = <0xc>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x8c000 0x1000>;
- + };
- +
- + fman0_tx_0x2c: port@ac000 {
- + cell-index = <0x2c>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xac000 0x1000>;
- + fsl,qman-channel-id = <0x806>;
- + };
- +
- + ethernet@e8000 {
- + cell-index = <4>;
- + compatible = "fsl,fman-memac";
- + reg = <0xe8000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x0c &fman0_tx_0x2c>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy4>;
- + };
- +
- + mdio@e9000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xe9000 0x1000>;
- +
- + pcsphy4: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-1g-5.dtsi
- @@ -0,0 +1,42 @@
- +/*
- + * QorIQ FMan v3 1g port #5 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- + fman0_rx_0x0d: port@8d000 {
- + cell-index = <0xd>;
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-1g-rx";
- + reg = <0x8d000 0x1000>;
- + };
- +
- + fman0_tx_0x2d: port@ad000 {
- + cell-index = <0x2d>;
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-1g-tx";
- + reg = <0xad000 0x1000>;
- + fsl,qman-channel-id = <0x807>;
- + };
- +
- + ethernet@ea000 {
- + cell-index = <5>;
- + compatible = "fsl,fman-memac";
- + reg = <0xea000 0x1000>;
- + fsl,fman-ports = <&fman0_rx_0x0d &fman0_tx_0x2d>;
- + ptp-timer = <&ptp_timer0>;
- + pcsphy-handle = <&pcsphy5>;
- + };
- +
- + mdio@eb000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xeb000 0x1000>;
- +
- + pcsphy5: ethernet-phy@0 {
- + reg = <0x0>;
- + };
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0-6oh.dtsi
- @@ -0,0 +1,47 @@
- +/*
- + * QorIQ FMan v3 OH ports device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman@1a00000 {
- +
- + fman0_oh1: port@82000 {
- + cell-index = <0>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x82000 0x1000>;
- + };
- +
- + fman0_oh2: port@83000 {
- + cell-index = <1>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x83000 0x1000>;
- + };
- +
- + fman0_oh3: port@84000 {
- + cell-index = <2>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x84000 0x1000>;
- + };
- +
- + fman0_oh4: port@85000 {
- + cell-index = <3>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x85000 0x1000>;
- + };
- +
- + fman0_oh5: port@86000 {
- + cell-index = <4>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x86000 0x1000>;
- + };
- +
- + fman0_oh6: port@87000 {
- + cell-index = <5>;
- + compatible = "fsl,fman-port-oh";
- + reg = <0x87000 0x1000>;
- + };
- +
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-fman3-0.dtsi
- @@ -0,0 +1,130 @@
- +/*
- + * QorIQ FMan v3 device tree
- + *
- + * Copyright 2012-2015 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +fman0: fman@1a00000 {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + cell-index = <0>;
- + compatible = "fsl,fman";
- + ranges = <0x0 0x00 0x1a00000 0x100000>;
- + reg = <0x0 0x1a00000 0x0 0x100000>;
- + interrupts = <0 44 0x4>, <0 45 0x4>;
- + clocks = <&clockgen 3 0>;
- + clock-names = "fmanclk";
- + fsl,qman-channel-range = <0x800 0x10>;
- +
- + cc {
- + compatible = "fsl,fman-cc";
- + };
- +
- + muram@0 {
- + compatible = "fsl,fman-muram";
- + reg = <0x0 0x60000>;
- + };
- +
- + bmi@80000 {
- + compatible = "fsl,fman-bmi";
- + reg = <0x80000 0x400>;
- + };
- +
- + qmi@80400 {
- + compatible = "fsl,fman-qmi";
- + reg = <0x80400 0x400>;
- + };
- +
- + fman0_oh_0x2: port@82000 {
- + cell-index = <0x2>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x82000 0x1000>;
- + fsl,qman-channel-id = <0x809>;
- + };
- +
- + fman0_oh_0x3: port@83000 {
- + cell-index = <0x3>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x83000 0x1000>;
- + fsl,qman-channel-id = <0x80a>;
- + };
- +
- + fman0_oh_0x4: port@84000 {
- + cell-index = <0x4>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x84000 0x1000>;
- + fsl,qman-channel-id = <0x80b>;
- + };
- +
- + fman0_oh_0x5: port@85000 {
- + cell-index = <0x5>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x85000 0x1000>;
- + fsl,qman-channel-id = <0x80c>;
- + };
- +
- + fman0_oh_0x6: port@86000 {
- + cell-index = <0x6>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x86000 0x1000>;
- + fsl,qman-channel-id = <0x80d>;
- + };
- +
- + fman0_oh_0x7: port@87000 {
- + cell-index = <0x7>;
- + compatible = "fsl,fman-v3-port-oh";
- + reg = <0x87000 0x1000>;
- + fsl,qman-channel-id = <0x80e>;
- + };
- +
- + policer@c0000 {
- + compatible = "fsl,fman-policer";
- + reg = <0xc0000 0x1000>;
- + };
- +
- + keygen@c1000 {
- + compatible = "fsl,fman-keygen";
- + reg = <0xc1000 0x1000>;
- + };
- +
- + dma@c2000 {
- + compatible = "fsl,fman-dma";
- + reg = <0xc2000 0x1000>;
- + };
- +
- + fpm@c3000 {
- + compatible = "fsl,fman-fpm";
- + reg = <0xc3000 0x1000>;
- + };
- +
- + parser@c7000 {
- + compatible = "fsl,fman-parser";
- + reg = <0xc7000 0x1000>;
- + };
- +
- + vsps@dc000 {
- + compatible = "fsl,fman-vsps";
- + reg = <0xdc000 0x1000>;
- + };
- +
- + mdio0: mdio@fc000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xfc000 0x1000>;
- + };
- +
- + xmdio0: mdio@fd000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
- + reg = <0xfd000 0x1000>;
- + };
- +
- + ptp_timer0: ptp-timer@fe000 {
- + compatible = "fsl,fman-ptp-timer", "fsl,fman-rtc";
- + reg = <0xfe000 0x1000>;
- + };
- +};
- --- /dev/null
- +++ b/arch/arm64/boot/dts/freescale/qoriq-qman1-portals.dtsi
- @@ -0,0 +1,104 @@
- +/*
- + * QorIQ QMan Portals device tree
- + *
- + * Copyright 2011-2016 Freescale Semiconductor Inc.
- + *
- + * SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
- + */
- +
- +&qportals {
- + #address-cells = <1>;
- + #size-cells = <1>;
- + compatible = "simple-bus";
- +
- + qportal0: qman-portal@0 {
- + compatible = "fsl,qman-portal";
- + reg = <0x0 0x4000 0x4000000 0x4000>;
- + interrupts = <0 172 0x4>;
- + cell-index = <0>;
- + };
- +
- + qportal1: qman-portal@10000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x10000 0x4000 0x4010000 0x4000>;
- + interrupts = <0 174 0x4>;
- + cell-index = <1>;
- + };
- +
- + qportal2: qman-portal@20000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x20000 0x4000 0x4020000 0x4000>;
- + interrupts = <0 176 0x4>;
- + cell-index = <2>;
- + };
- +
- + qportal3: qman-portal@30000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x30000 0x4000 0x4030000 0x4000>;
- + interrupts = <0 178 0x4>;
- + cell-index = <3>;
- + };
- +
- + qportal4: qman-portal@40000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x40000 0x4000 0x4040000 0x4000>;
- + interrupts = <0 180 0x4>;
- + cell-index = <4>;
- + };
- +
- + qportal5: qman-portal@50000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x50000 0x4000 0x4050000 0x4000>;
- + interrupts = <0 182 0x4>;
- + cell-index = <5>;
- + };
- +
- + qportal6: qman-portal@60000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x60000 0x4000 0x4060000 0x4000>;
- + interrupts = <0 184 0x4>;
- + cell-index = <6>;
- + };
- +
- + qportal7: qman-portal@70000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x70000 0x4000 0x4070000 0x4000>;
- + interrupts = <0 186 0x4>;
- + cell-index = <7>;
- + };
- +
- + qportal8: qman-portal@80000 {
- + compatible = "fsl,qman-portal";
- + reg = <0x80000 0x4000 0x4080000 0x4000>;
- + interrupts = <0 188 0x4>;
- + cell-index = <8>;
- + };
- +
- + qman-fqids@0 {
- + compatible = "fsl,fqid-range";
- + fsl,fqid-range = <256 256>;
- + };
- +
- + qman-fqids@1 {
- + compatible = "fsl,fqid-range";
- + fsl,fqid-range = <32768 32768>;
- + };
- +
- + qman-pools@0 {
- + compatible = "fsl,pool-channel-range";
- + fsl,pool-channel-range = <0x401 0xf>;
- + };
- +
- + qman-cgrids@0 {
- + compatible = "fsl,cgrid-range";
- + fsl,cgrid-range = <0 256>;
- + };
- +
- + qman-ceetm@0 {
- + compatible = "fsl,qman-ceetm";
- + fsl,ceetm-lfqid-range = <0xf00000 0x1000>;
- + fsl,ceetm-sp-range = <0 12>;
- + fsl,ceetm-lni-range = <0 8>;
- + fsl,ceetm-channel-range = <0 32>;
- + };
- +};
- --- a/arch/powerpc/boot/dts/fsl/qoriq-bman1-portals.dtsi
- +++ b/arch/powerpc/boot/dts/fsl/qoriq-bman1-portals.dtsi
- @@ -38,51 +38,61 @@
- compatible = "simple-bus";
-
- bman-portal@0 {
- + cell-index = <0>;
- compatible = "fsl,bman-portal";
- reg = <0x0 0x4000>, <0x100000 0x1000>;
- interrupts = <105 2 0 0>;
- };
- bman-portal@4000 {
- + cell-index = <1>;
- compatible = "fsl,bman-portal";
- reg = <0x4000 0x4000>, <0x101000 0x1000>;
- interrupts = <107 2 0 0>;
- };
- bman-portal@8000 {
- + cell-index = <2>;
- compatible = "fsl,bman-portal";
- reg = <0x8000 0x4000>, <0x102000 0x1000>;
- interrupts = <109 2 0 0>;
- };
- bman-portal@c000 {
- + cell-index = <3>;
- compatible = "fsl,bman-portal";
- reg = <0xc000 0x4000>, <0x103000 0x1000>;
- interrupts = <111 2 0 0>;
- };
- bman-portal@10000 {
- + cell-index = <4>;
- compatible = "fsl,bman-portal";
- reg = <0x10000 0x4000>, <0x104000 0x1000>;
- interrupts = <113 2 0 0>;
- };
- bman-portal@14000 {
- + cell-index = <5>;
- compatible = "fsl,bman-portal";
- reg = <0x14000 0x4000>, <0x105000 0x1000>;
- interrupts = <115 2 0 0>;
- };
- bman-portal@18000 {
- + cell-index = <6>;
- compatible = "fsl,bman-portal";
- reg = <0x18000 0x4000>, <0x106000 0x1000>;
- interrupts = <117 2 0 0>;
- };
- bman-portal@1c000 {
- + cell-index = <7>;
- compatible = "fsl,bman-portal";
- reg = <0x1c000 0x4000>, <0x107000 0x1000>;
- interrupts = <119 2 0 0>;
- };
- bman-portal@20000 {
- + cell-index = <8>;
- compatible = "fsl,bman-portal";
- reg = <0x20000 0x4000>, <0x108000 0x1000>;
- interrupts = <121 2 0 0>;
- };
- bman-portal@24000 {
- + cell-index = <9>;
- compatible = "fsl,bman-portal";
- reg = <0x24000 0x4000>, <0x109000 0x1000>;
- interrupts = <123 2 0 0>;
- --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi
- +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi
- @@ -35,14 +35,14 @@
- fman@400000 {
- fman0_rx_0x10: port@90000 {
- cell-index = <0x10>;
- - compatible = "fsl,fman-v3-port-rx";
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-10g-rx";
- reg = <0x90000 0x1000>;
- fsl,fman-10g-port;
- };
-
- fman0_tx_0x30: port@b0000 {
- cell-index = <0x30>;
- - compatible = "fsl,fman-v3-port-tx";
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-10g-tx";
- reg = <0xb0000 0x1000>;
- fsl,fman-10g-port;
- };
- --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi
- +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi
- @@ -35,14 +35,14 @@
- fman@400000 {
- fman0_rx_0x11: port@91000 {
- cell-index = <0x11>;
- - compatible = "fsl,fman-v3-port-rx";
- + compatible = "fsl,fman-v3-port-rx", "fsl,fman-port-10g-rx";
- reg = <0x91000 0x1000>;
- fsl,fman-10g-port;
- };
-
- fman0_tx_0x31: port@b1000 {
- cell-index = <0x31>;
- - compatible = "fsl,fman-v3-port-tx";
- + compatible = "fsl,fman-v3-port-tx", "fsl,fman-port-10g-tx";
- reg = <0xb1000 0x1000>;
- fsl,fman-10g-port;
- };
|