From e578dcc7e1590b20a84036afe5bdfa8d23a6048e Mon Sep 17 00:00:00 2001 From: Jamin Lin Date: Tue, 29 Apr 2025 14:28:20 +0800 Subject: [PATCH] pc-bios: Add AST27x0 vBootrom MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The boot ROM is a minimal implementation designed to load an AST27x0 boot image. Its source code is available at: https://github.com/google/vbootrom Commit id: d6e3386709b3e49322a94ffadc2aaab9944ab77b Build Information: ``` Build Date : Apr 29 2025 01:23:18 FW Version : git-d6e3386 ``` Signed-off-by: Jamin Lin Reviewed-by: Nabih Estefan Reviewed-by: Cédric Le Goater Tested-by: Nabih Estefan Link: https://lore.kernel.org/qemu-devel/20250429062822.1184920-2-jamin_lin@aspeedtech.com Signed-off-by: Cédric Le Goater --- MAINTAINERS | 1 + pc-bios/README | 6 ++++++ pc-bios/ast27x0_bootrom.bin | Bin 0 -> 15552 bytes pc-bios/meson.build | 1 + 4 files changed, 8 insertions(+) create mode 100644 pc-bios/ast27x0_bootrom.bin diff --git a/MAINTAINERS b/MAINTAINERS index b3f9f2680b..cc94e62be4 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1174,6 +1174,7 @@ F: docs/system/arm/fby35.rst F: tests/*/*aspeed* F: tests/*/*ast2700* F: hw/arm/fby35.c +F: pc-bios/ast27x0_bootrom.bin NRF51 M: Joel Stanley diff --git a/pc-bios/README b/pc-bios/README index f0f13e15f2..d009c37895 100644 --- a/pc-bios/README +++ b/pc-bios/README @@ -89,6 +89,12 @@ more features over time as needed. The source code is available at: https://github.com/google/vbootrom +- ast27x0_bootrom.bin is a simplified, free (Apache 2.0) boot ROM for + ASPEED AST27x0 BMC SOC. It currently implements the bare minimum to + load, parse, initialize and run boot images stored in SPI flash, but may grow + more features over time as needed. The source code is available at: + https://github.com/google/vbootrom + - hppa-firmware.img (32-bit) and hppa-firmware64.img (64-bit) are firmware files for the HP-PARISC (hppa) architecture. They are built form the SeaBIOS-hppa sources, which is a fork of SeaBIOS diff --git a/pc-bios/ast27x0_bootrom.bin b/pc-bios/ast27x0_bootrom.bin new file mode 100644 index 0000000000000000000000000000000000000000..0b9b3a2360e375bb6007ecdf13b39d931870f6fa GIT binary patch literal 15552 zcmZ=_U=U$vU=ZP8U=ZPCU=ZPAU=U$oU|;~z+zbpN3JeXG%o!L&92godnKCelBrr5w zGG<^9X<%r$WXQlEa)6=Xl0E~2$ODFkOS(|KApJuH*DEkz{r~^JI0Hk&rG*R@R~1 zYzz%S$nstc3{#XC86q4Q7=F&TW4=0Hf%z)TUIqsFYgfQ-WnfTXU=RR>@d6tV3C3VP zOdLi#K-JkRGhh8%y=Ns8L&K%N%nTDh2Q#kx8qKuwD>K8YZ_JEZS6LaR9AIMDD$Kxe zp?Hz@L=gst3sX*MPkj8DVd5iZkyQ_w#k3wUi>}gUXP9z;kzp$X1H%P|JK9h=;Z@m; z3{ya1_&L~d<=1GZm4B;`tk|#2eDwfx{I$=_46EM!|1bX7-eG6G07GFT149S{gTqb+ zjssC&{{I)RS70bS$iNW7$l;)=z;PhTk>fy=LIcC9xBvf(L+ln_1-36hXJQ~D!<1+L z|BFNXvvVawLi?qJ8H+w4`{{c!^U9yuEGvI&GyIeVyNhE20|UcEF(!s7j0_AH6jgL5 zg3aqNnP|(%FolVM;eyi?lZjxt9VQUD7bX+U7@_JdOd(pP89fJz!>9<-p7^#es>zG>Oe&C)kcPrV}4B3$JqGI1r`8$S_5mf#JgU zGV_TKnZ;K07rhMi%`LuLjo2c{opVD(eXCrU6fOwnOr5J_@!m>AC>@>=ol{}4xp zfQ!lu3oe1xRG3ZVhqO!>mhpf!a7 zYW5qei6AwgH1LpFL<^)goE2oh=&Enb468($Kx`4M1q=)(AUQp#{tr-d^Z);!4oWW$ zu=wY&nD~%cY}FeEP~01GTJB9E9EK*?2Kn%C|mZYT{M~hABVt8+J-Ci>`j~<9`S&-t3_9*1!l2+bQM~ zSHZ%;#&+Uz7`w$}qBujtrDy;CPY0E!pm3F9V7L(V*?gij1H*;t`xX;M0Y!_0W~@Bj2K%nYj*urO>vkMA@FhAE)%pU=ebI+KAR zR)O={66=W-j0{si_I?+dG7A)s%FM#2;qkl0a$+brZX9-^$C*D^ z9294g;5hpL%MVwqCVDV1Ou793zc|>AE!Go3_Qf$WOj*FlU^;`5VGGDj^30GlA;Jtw z6EkK#VwOOp)g#su%^4V`+<}y}7Z`eMz+tiX|9|m#73Qmq3>*^_MI3%I$S?>g2QW-b zVsO~`=)b<10t3TNP~E>FmOz0lydmFkda}FundDxy%s}Z zA_GIn0>*|Q1qS*jB!3Mg2IC{l-U2rpR6ajoW}XPH z50n`vK44~B`GA>eq6kAnP#9ywB~W?#z?$Lb1GWaC2h|Ka|JO6@eAvyg^6_NOl}~4L zt$ZHO@H2tQ!IFWI!4#A}A25r6-2qCcf2+@c-2t*!ehNdOqZmU-0-J-S`~il-1ZIYi zVm5|}ObiV{ApPko5A8-|IBA8IE(G-mk8$l&nve=?(`Jp;o>2M&iSMoxwh2DXNvp8x-+ z^D!`pfb@a%FJwg3C(hvTlaZm}(swq7ixw;l6CY$%SR^nqm`-70R4>9IAN!{|{lP zahS}))DXnV))3Ulz~CLvz?hv2s@GWMO2ZbpM1H*-u z8+H>PD>F`HU~0JZ8eG>fu1d{Nw0Qsjzc?(s5}ALPGa~s%oS|XocIF@37O*x1ng0Jj z{Q&OkiMS*a9jS zlq4K}E@A++j~sp~NHF|_P}2uc^Aa!FB!L5PXL!4ecV4Gat+O$-dC_6!V#3=H#Ufz&gwFiiXb zbtgzIDC|J(I%ft4%X$XJYzBd*Ss-^d|Nn0aQV%loAv41&B?bq}BnAdk1qO!GAaPK5 zgW9_wd60jZGmm$qV1E68ks*XNBiTYF zBiUj;11ng4DhtEJCkzaxV0lp6AS2mAF(cW6fq@aM|1mS`Dv%#R;SFl5gUox(%&_Vi zGvlhKpmrGp!&XpxK9Rw}@*y*W=@Vw=RUrEwFf*@O!octo`H8O$PKWwYE zfXb2o|F?qFHiGnl+eK`vKxIlJ3&TWEoX=-quzUh8Zx5~jnFVU|!psASgZc>|{UE!( z!{c^8xaw zQ)b3h&zPB3&Hev>dIJMPH^{F049wuPvM?jr;vhJkDO)^XW?2O?3uX>u1|)5Kg~oRi zBf}OaP=01;xWt^1VxgLmViC{4@*0#*T38q+)-$kXJN*A2lEA z`fOrk2mzS^O5dO~z3Bh{tspmp;*tewA1Dq%dF|K#|KcFG!r}|W2FW=xFodA%0jY)f zd*4b>x&(#OXK23o1G2#6pBPyfLO|{N z#dqfiEoR(R1nMJv{QrNtJOgufA|peHLjc3Xw;(I%Ugh1{-z|bHB%ir=W427JG3?cFy4229J+JT|4k)`1h18c)2hK5FPdCw$`HUX5#-l>pmMzWAh?bPmEEB5ljm^w^pJxg1f~`iE(`C@4_e5$ zs|Zv-%QG-$Gjc%uzxMzC>5rKiv_S4z$qosF6`(M2VJOsKX9%fhV90*V#t;Guy9fXO zPY2}_2LXnO^TGLqL2JH)!s`=^ptjHta|Z{8i8KHIpAHI-CIyEo4n~HMdIyF=2L*u5F;bQPBlRWLB@myL0lXMqCoN7z`_s`&&yEQ!N?H8sIVXiBz6GAc7U)Gm>5E| z7#o5>_CH|e(t?*y4N!TIT7`u{pmORVGn*Eu9sPirebq4rChpB3`~Uq1*>9=v|G()W z22SsX%$!;v`8EIlPj~qHf6Fl*2Ek(`azbn%w}aXg%xqwJkoy;d^#A$4g_*%&Cnz5! za~z0DWMI=)GH|HM`29cRK>))TA3_BMx{4h%Zg&nj#4vP0j%#2#`EDoO>|NjqpRLn4ODadRV zhQfoOHl4h~PLMw#;ZB-4lR@V2U^nM2v~Kw?&#?0iGt;Vt3_r}Tg33*KhMljO8MGLf zewe?Oci0JX&jV)ORS%iDwdz6UaWE7v0F@0Y422F%3?ZOA3UX%;1H+aEMu(jYEDVAT zj0`&;Fmr1m_c7M|{lBG=(E-%I32bC!*s1vUzZuB{J;Ox6Brmw6SB%I8vgw^0k!)Hsk(?Nb| z5MY=X^$%3Hux4j4GK4&0X3%=b%(ChMGutZhfB&b0>T6IQgXJ#=h6W*!8$dLuZUE(B z(3l)Z3}zRs>}GI))M=n{S|LX!IF*4x8&ubW%HdDYGOERa;bP(i#cl@%#_stJs;?Oo z=FdX54^%cG>JUUYg2oR%Gc#&E+ROkNE7Jmv!8`!@gNLE;0RuzGXMKmA@+u64ilDNb ziJ{Peu|cSKQ-c(&zx%fu5uWk_421{&{s)CQxSnI+IdBW)A5?!K>;}c#7iOkaUxgWd zn$|c>Rsxk7j6cjmK3oI1!Xr9U%4jf+mKEz5oADzt6;w-NeEW z!ptD%4Qh8MO=ywY>}1>x@(UwFL(q=D|EC{dX4q1~04l$QPd6|z?8KE$9hDk_9Kr1m zMsU03A+wnGHpU-jAiIh{b~7+$D>E{LfZA0r|NIY8s&Sb7^#6bHCdLM#FASh@<%Ub3 zvBxB69tG7WpfuOS#IO_8=LV&5P(NV{ybMJRv(L=Ts~~v`GG4v-@Birw7=M_<#-&3b zd3x0XMvz||el|hk;HLtM!%t8-mcRt*i-F=0M|K=BXilY{*Kw|Y0coCD=g zh`X6qePd?U0*wcKXJ*uL`ul%6$n6S@Kg>Tfi)-DebC~?!n_=ezZ-oFpti+Be}|p-nHaOr zfXg({IGyOKD}O*`9)s!ktO^VBzyD1@<9DEZ!pPAO#PkMqn(k!ID zhV@JS{{27w0jRzL$1iICWdFba;^=*Kh(yrL5WB(xSz=!b;JO48=W*-E{mDH+-%#y1zp>ef?kzp$& z9YDellny}S*ng{!!P5fFzPDzql|n!%k3Mn#|ZBbo2jz@y$#OJ8!`A*8Y|7 zwsHW&!~js80cxW$GK3^CFl+&}s~s2^c7p04P~8Ko_dtA5KM=&P`3IXz+Q0G{w7mf8 z+t?zRl>#-Z0jF7Pt5_KtE`iKj0CyXXbQR6C@*AiuV`kLa_#4!h5d){KN1%MnEUJYZ zKCm(h;a`ZEPd776gr%_-Xt{TQkzq?h5W_@%sJmZ)`ZoFvI~fcZCW8873820ti^EPk zkh~0}PoU@kG6z(*fyRpwb*Q2N@;DT7Il!oeNJGr4zDqOw{Laj@>Jc;ZDy@J2r-R%8 zs!z*7{Q*!KF=m{ogp@`=VfuiH;b#IP!`4y;hAj{L9d<5Y0*`rLf|bkPr9tCYh_c~8 z5W~bWakBjsM37q8{MQXo--8jM?jWeG6YRJW)DDBi{iVPE#X(^MX}clf2-9zj z;QA4izl9kZghUw{f?#+7JXO_Yi&o^&t|V?EnTQ$oK@re|x~?7$oi(SAoKpk%3`?Vu<}jNcqg96~n+V zMS%%aXEJC#`OGl!F|()^XwDc^{~3eoV^H|oJM09Fae~_Tj0Y6E6+gsVG%_%lGBP+= z+V5c~bO4PfGBiNapfD)?A?B{p-SL?j63$g z%FrML318@32sm9M%mvL)EUI&uEWd}Lu=J2=Hv=m}2&f(hxjX1Ls148XQA}X!EYRHX zAtq28P#o58S*7sz{}#|V^k-(VRWb~aIo^6E(br9X{)c>H7GA}|z#wvsjbY+`Cb8EK ze*X_Sz~o>FvM1sH|ByvYVy7YYh^?}K+9M3MM?@=`NzD5Zv)C$-+5i7S{N(WWzu7tP z+-pM+Y`pSsHMEWjW?Tu$Q;e$~Ff*>I{ROHIgja#vv&@h(9@alw2hTg$_2%KxTMO3< zO=n`jW$e;yE3!wTMmL5R)hy^sJ4(%_j2GyV7{MK*@qz*X`K;j*{ zTb=Q^^%~r*JK<>;QD!nh>s>~zAI!{Jp!)fDG3&|?zaV)Nlz!yd847b48A5{L=?9WO zVRhy2V%L?(bG|#-7%mDkGz5X>>ZBPOf_||!1pUuu*jdlSP?)eNyy^^S+$`H+=Obom zEztU&#yW?|UzizJDY7tJRL)McsNcg-2pWr>!p0Ej#KI6L&%l)Z`rrQ$Mh59@#S8PL zs+k$N26G81W@Z3G5J>UuIx8ytQ1daVCFfeTW%*><(TALEXAi_PLSt9!tXm0Y5 zNq03ngWwc)20^D9hso`~{!ia^%EqFeNj%#TR6k{d`rgvntA6|sna{>h_~80{sVPhh z-XQ<%KV@QZ06bPBto3LyXiidW)!E;Wa5@QEGs4DT2wGoLFT`MY@Z0~8V8#X^P&=%c zp+RU9JPwfSE+%l@1!~iQ>R(viod^y41co2xCX7GKKxHQ+-$KJ3oNp2J5vUyk>O1}S zX8@Ne3JXH3K;?=(3xi=76GMo-0D~dOEye;#Fg`tv^oG_M3|`-1Y_l;5B{#GnQ0D}nrS7w(sRptUO2P6Qs2oR6!=UmLR6o4|*E>JVnOGPCVRaEGZ-B<%Vfr`x zhtxYTKEgcYFlB(&IZUg*GP8jD1wWV>wZ1bmud;@QD+4$$N`Tw+pn7OWox|j4Xgmrt z{xCxc>tyGZf2$E;{n(gsBB(rq)MFy6ctHIjPnG8v6l_ zN9aM#dcg3*3{+OY`ZCC62F&j7p!N!bX!e1BkiG}V9MCwR)SEr_}eH1+{1 zBS33wKx5pHw8^we^XLERA}kDo-#}}4>OkX3V%b@cx++Kz+&%}b%Mt~b*AssJpPs1Qs(fdW*6^+DM==F;JX?!XMJ+Lex#j?gOp= z0@c5u@LKct|8xdMhOJ-h9d<&(08+Ohul4$B->?&u&O{kRyFq0Vs9sw1?|;ZbCgIbd zx^2bJ|IbG?L{Xbm+ zbrjhOMA+mk0I^J3;+!@HkVn(@K!ppm@O*rl2ru289`T%o~!P zU~Uim`F}bi3xnW8dxo8fhZMW*8AM-qGBAXg{QbY>0Aqs?C?8B?U@*P%=l>RvolpM% z7r(~F5D041Ai^DzM?mdVNFRe~6%zx)1gACj6Lmo2MGOpEL2WwpHXNv}3+lsog2pBo z7z!VV&zAy?DL}#kVkRUkKy7eFEl_&;%FMLN@aO;O55Q#vs9q6S1%{g1$n0yn-f}jDeD1HBdH4Hb!4Tp++C17-YP@f`UQ~SX;b4L}h%uLX1Ah zWPOk_h(@sSP}9M-fY>NF9*I{2;(%SMub>ZdSPaNaus(%&kQ~Tz{Tc-@1ri1s57rNs z)JG;k(hBi93Lr5MRsg$PA8I-%1Zv{JW`gvC{Q*$`@|V5>*eEWr3W$yv5Ty?xA+quM z3N`UH5RrJ0UJwCt8i=lm2iv3%GDiWz1nJU`*RP3(XyM{wP%UOKFtjo$;IH8kD(r%Minyi z6p9k_(o;dob1D>cp|nPENooPujGPKhE(U$D6~!Q9piG6l{FGE!IxkJi&o6!EU*H3 z3S=P{Lt;r9Ls|;dyU1SEQAkV7$w^8~&Q>VNS18p51&TsyUJ9zK;ie%6heBdr3djbS z0bC5OMMe2VRtio&#)b+SAw{LdpfbWOvnaPbu_#s7Q4`@<9fgd;>z5l{G8(Wc!uQs+=9fC%%q%DMA-;gM9#p#z*rT;z)~T{D9t0!V8Fn@Ai==E zaOUFw{}(`N9d#Y~9OiP&V|SU%HidO6%QWV2u6uW{Ub}pSkHJybk(+^m!G(c=!H0o? zA>-2j{}n6@3?Om7g1LP2cs(ZbOyQo&HH~vR#|-wFY_nKrvoP)Cx_9^X&0E)RpqK%& z3RGB6VPIgGaqa(q6_5Y}WC8mM1_p)|*Z%(p*#i;=xp5Bz1H+AL|NqB;1VC<7n9DMc z*=aJ<6h>dJdv{^3bAmA~7#J8nfYe_9|382k>c#_%b0y}9J53gwBI-O z%dP+a1EA_a;q-)&f#Jig|NlW@$l%K-Fqdf_qiz7#y}Nu2PP$Iqu6zu4@9Bcv2$liw zEntvfVqi$Q{r|rS$Q(yqCx|Y0h#m%r8XG1ChLYRh#WM`x_y+6u0~-uV79hVQFflMJ zx&8k?Y?}f|tb~by;mmDBT!O?pm>3xT+(r$GsMrlA1_qNmsA2eqiGji6&j0^BAU{FP7p=T5UwsHEIUBy@!tRcJs=C<=EXylLfyKCnSmkW-v9p=AoHAI=0$ZI$) z4RY57W(J0u`~UxYz{~-MnJZWgC{93XzA!T|EFhppf`x(M$o>EScc7R9u?uF74GRN9 z!~NJ^U3bWf( zrfG~I6OjuFP}uHZVPJUi;Q#*&kREtg1VF+I5wzg)?FkD5gUUnHc>lq|z##Jwsq6r! z-9Wh8L3YTnGBAWZ{Qo}(WCzH92zP-L!pax09UiQph4TOZbAZ%B(_joM14G9{gczvY zC}3q^sCoGRe*s7xs+rDHnY=*7D%@O9*eqaWVA%8U|9=fooTI9D0)PhHmw;w2C=ZpeF)++|{Qv(8SQrG%<(kLoG?`-xyVF#*X{^rES!OVULKw9O z2Ir{_Yzzz@PyYW0)ivNU0b!rZR3^`RcdtT%4;0pS*cccxoy?4QFk+d>M9lv28IPs|Nk$6#Rpiu^JJC~L^y%!0UZtohBr_D|33gz zhZ%2Spo$YYuY%l@!ok2$@{Bn5fYQ_y4hDu9&;I}KfY}3fk1MD=0J{j<>TrhD>mWTR zKyJg(11>|r=@3+-BfAUa?>`(23=Yqc$|kTqPLo-@5&j0nlL{vTL&0+-_c(ysLQbHz zkn2>IaCn*ng;4+}1H+l;|NjfX@+(5E6R6?jG#%UmxQ_0Y4o(J!B`?s+QgBTPWFzg_p4wT1kfZXu{YdPaOl?miQXhw15c7c0*Fa*5%|NjguzA@7k$iXOK z1}dNSa4|4Ec?GSPL3sk4zr8@Y23!Y&(!~QV28JK6kn#;!4LDpu84XfcIC6uE0dTSc zg`Eg!qt@&H|3U3ba2bQ?9<1dPD6I!@GcZhfjZ}|=)08tP?M`J10u_cZD;dD;>;`TI zh7Yg*|6c&}J6d{ip3W3|?=IZy;QYOXn}H$b&Hw)mD0-l6b5Pj^k6K9hKH+9ySn~!w z-#UZJTX=En0m`^Y&2doJ$?z~Rn7l