From f441f21d854f44db90bbdf2549a2360c58ef429d Mon Sep 17 00:00:00 2001 From: Andrei Warkentin Date: Tue, 5 Dec 2023 16:54:57 -0600 Subject: [PATCH] Stub-out tests for added requirements. Signed-off-by: Andrei Warkentin --- riscv-server-platform-ts.pdf | Bin 102810 -> 109342 bytes riscv-server-platform.pdf | Bin 185707 -> 185703 bytes server_platform_tests.adoc | 28 ++++++++++++++++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/riscv-server-platform-ts.pdf b/riscv-server-platform-ts.pdf index 67165af8f162fe77c90f8b03046be4051ed42bc8..8957429251c8a8a9f786d80fc676cfded91b5b69 100644 GIT binary patch delta 28307 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 RK#Blh!AY)MQPx%=`9FcV`Rf1x delta 22917 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 a!0g}pVKeapBg%{g5ON$55k=KAO#cIfRry!| diff --git a/riscv-server-platform.pdf b/riscv-server-platform.pdf index 5c751da8483e6748d15579b3d7911e70ceedbfef..76797494041d43fe612494d6088c3101f13a25a4 100644 GIT binary patch delta 3174 zcmZuzZA{ix6kiymKs9Cs(aW&O%(>v6d+zIKvq&jr$_9g0^9unrSU_fJ(aWF7ifV>B zH4~VUALJ!iS`fqKTn6P9W7R_YVlt}H($+gtgm#|?p2z38r~jw_&hEMAcYf!0&bb$Q zQl@%Rj?NxPPpT8U-jecd zsa3CSI(=PBamt%#%cpi#-1T_o!{ueeW$O9OAJ$y_X{2l{XG>=NCm&}p{^b+>!R`yQ z1rsaYS$%icnvK)kf) z$L_ag-)>&_Mt5n>RJyqH%HS)#$9^qHDXinigT=c_50!LpeyHO?%oy1^kkfVRneL+0 z$&tLVV|?O^?3>fapE|Q4f9K)Hx_;~!_^!Nn{b2d_v_-w!K3n@_?re2a+WE8t-{v2# z7_K!ZJJ#$v@!ZfyFO2qIIl8a*(TU=oy@i!~a?jTU|Gqzmt4A)~u;S;FGs#tTm0O;9 zx~jZ3^tWf{{=}xvw&u>ZYX&>p628g_coqwNS#?>-;UB@kNMhsM`Zf-doa2&{`?ypp z-WQnQ*38?2NMK+}FfT~RCee4c5OKchYo!HpPSe2Fn1#R#z5xSfEqbT{7!y8f0AJDHyp$iOJKL}?+ z_(3=`!Y`Av8SMe&;Mk701;7E2ID=DC{6TjPH95xxDHG=g2taNW^|c1Ff;ja97b;3k zgc&ZZAs0$UK}(Rn2wfVA_$mWY5eD;Z2V8T%?VJt$whP%bp;b%ei;HUoBx7xu@K_DF zcJlX(+@1641l+g+kaI{uJ1Nj}3J5bsNyki>|7ag`rx_C1G99HW!j^Rc@xfRGKRa%b zv?sSJW(EY|sRziI_S*y*H~xj_%I*sjnPSw}7(WqYmivid06->}%Yz8X*{m-lbOXt! z8o?-EALs@qvAMPj0SxgUr5`z$1R)nRJ1!{;JY3IEJH_0mDXZMrn9_yo?*;%P6AlrO zWQ@++t2?3)zPJ$S(m_;2=!k&8b|E&v;j=^^LWyu(m;Y6| zgeIE}g(XTy$*4XgkXeBe$-+V@bu8!*|A0~>QLD6upjJTj;np@0p^_A!GL!|)f;co` zF#3N)s09_A)`FD8xEF)3kC<&28R=+*p4UteL%)$!ghrDM=yoCrA{mf}idzw+6(#8S z{o?osw#`BW>8L^CSXIvxwkO=S{8NagYmiS#N9$~`QIvtrEe2<J%3F{U^a(4FGqJrfA0G9&UdjJ3c delta 3174 zcmZuzZA{f=6i>bo7o4tUW8fA=&PFW=X5{aojvEA-}#;2Ip;sx zo;uc^dStRbN#nk~yKV{IDjs}nKFsYI%e#_V{>Gu~hep=kl`=8+zRi^b$Y4!^W)aDS1z5kzaA|9^npc}j!$lUam|KD8^7H- ze*1w%1+AYI!V~*jj(^vB>_kHWfz>blRnqy?bzfz!I@DABI1I0E`e1zI;rynzyPpkb_vcM?eV)E8 zx8c+eFNZSg`?~7#T9#h_;HKpr^BT5%vFEwso^Zzsc5p}I(dTDZJpDrJnv~a?$~OEK zPQLMC_vqHT^15%%Z|-fp@N=;Gll`ymE@|ru2Geg|I$V}pvGtC_D>BnRs@if}Tc&F3 zNc(XFEepRnJFTTYZAad{E04&e-0_lEj%NQ}y>MBr_mS=yc=xKt zy#9OM>21v4^WHyIlb2V&KG<>V*Xu*Ih0X2tk5o+#4_v4{-Eld2ao;s8r*9&(uCn~e zO&iyhR_xnZo3gDryuCR*>qK)n>C1(I%3_gUR%KQw`bRJ@me@F=Z{r}zJ1#ki$E9X7 zeSryNe99KY5(85Lyd)8u)V{OjG3TqkR$58kX`0v?JDqsiH(~Lm!@xrgLTeIG7*4 z7fv94C6ZCl5~MFeHxQcmD#w2;UNALwz%}>B&e_l(yNJyYTD4TZxVTn8D%OUXSmNot z0oT@&hlUBSPvBUk0S!{nMo?yq0>X?@$}tn=KR(CY7)=seX5w_k*s{P$#TLP@j=RYw zIbRsV@Mu3HZ4s(Y&ty zt8@uNE}IKSl#Y^7eMm>5Ux-9E1>#Njv7C)k`$n_lm*R# z8EB$l^#6!Z3o1CRC25IaDzUm~yo75PTj}WT)s$v}1p1AnA~c#@K=+|Wl1K*RLnU$| zd~Hc^)g`j!_y_mVB>YO0TY7#aZq1N0tGFPVQHW$!D<@2nLr4|)eOK^dB0w B-+TZ7 diff --git a/server_platform_tests.adoc b/server_platform_tests.adoc index 9183fd7..3138aae 100644 --- a/server_platform_tests.adoc +++ b/server_platform_tests.adoc @@ -69,6 +69,25 @@ [%header, cols="8,25"] |=== | ID# ^| Algorithm +| ME_HSOC_010_010 | The Server SoC tests must pass cite:[ServerSoCTest]. +| ME_HSOC_020_010 | _FIXME_. +|=== + +<<< + +==== Peripherals + +[width=100%] +[%header, cols="8,25"] +|=== +| ID# ^| Algorithm +| ME_HPER_010_010 | _FIXME_. +| MF_HPER_020_010 | _FIXME_. +| MF_HPER_030_010 | _FIXME XHCI test validating register values_. +| MF_HPER_040_010 | _FIXME XHCI test validating register values_. +| MF_HPER_050_010 | _FIXME AHCI test validating register values_. +| MF_HPER_060_010 | _FIXME AHCI test validating register values_. +| MF_HPER_070_010 | _FIXME UEFI RT based test_. |=== <<< @@ -79,6 +98,9 @@ [%header, cols="8,25"] |=== | ID# ^| Algorithm +| ME_FIRM_010_010 | The BRS-I tests must pass cite:[BRSTest]. +| ME_FIRM_020_010 | _FIXME presence tests for block / FS protocols_ +| ME_FIRM_020_020 | _FIXME presence tests for network protocols_ |=== <<< @@ -89,6 +111,12 @@ [%header, cols="8,25"] |=== | ID# ^| Algorithm +| ME_SEC_010_010 | _FIXME_ +| ME_SEC_020_010 | _FIXME_ +| ME_SEC_030_010 | _FIXME_ +| ME_SEC_040_010 | _FIXME_ +| ME_SEC_050_010 | _FIXME_ +| ME_SEC_060_010 | _FIXME_ |=== <<<