Marshall Dawson has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/33398 )
Change subject: util/amdfwtool: Add multilevel PSP directory table ......................................................................
Patch Set 3:
(1 comment)
File util/amdfwtool/amdfwtool.c:
https://review.coreboot.org/c/coreboot/+/33398/comment/7c0a73ce_1ce1ab74 PS3, Line 255: { .type = AMD_FW_PSP_SMU_FIRMWARE, .subprog = 1, .level = PSP_BOTH }, : { .type = AMD_FW_PSP_SMU_FIRMWARE2, .subprog = 1, .level = PSP_BOTH },
those are duplicates of entries above. […]
Odds are pretty good that this was intentional. I can't remember whether I tested every point of failure or not, though (and I tested a lot...), or if this reflects how the Mandolin UEFI image arranged the blobs.
But this demonstrates the patchwork that's required for PSP support. The PSP can only traverse the tables in order, and it needs to find the blobs it expects when it expects them. I recall during Stoney Ridge we had some prototypes built with a different subprogram APU and it took us a lot of trial/error to place the items in the correct order.
Since this ordering and requirements appears to not be guaranteed consistent across programs, this might be a good reason to update amdfwtool and the config files. That is, so that we can put more control into the src/soc/amd directories.