Closed wesolows closed 1 year ago
Most of those are straightforward, except APCB_TOKEN_UID_GNB_ADDI_FEAT_DSM_DETECTOR
and APCB_TOKEN_UID_GNB_ADDI_FEAT_DSM
.
In the actual APCB, in the beginning in Milan those were both Bool. MilanPI 1.0.0.4 changed them both to Byte.
I guess we need to have two extra variants. Sigh.
One of the things I have learned recently is that images built with the fastspew branch and booted on milan-gimlet result in an inability to write FCH registers via SMN. The same software works as expected on the main branch that delivers 1.0.0.1 firmware. While it is possible that this is a configuration (APCB) issue or a bug unique to the 1.0.0.9 fastspew ABL, the most likely explanation is that this has been broken somehow in firmware. Without the ability to test anything other than 1.0.0.1 and my manually hacked-up 1.0.0.9-fastspew, we aren't able to pin this down. The release notes don't indicate that this was changed at all; indeed, in 1.0.0.6 they actually changed some of their x86 code to use SMN for (FCH-bound) GPIO control, so my initial naive understanding is that this is supposed to work. We need to get to a point where we can do enough differential diagnosis to identify the specific cause of this behaviour and either correct whatever we are doing wrong or file a bug with AMD.
There are a number of new token IDs since AGESA 1.0.0.1 that are recognised and perhaps in some cases required by firmware. In principle these should have been documented after AMD pub 55483 rev. 1.52 up to and including rev. 1.70 but it's likely many are undocumented. The new unrecognised tokens used by AMD on their Ethanol-X board for Milan are:
We need to add support for these identifiers.