Is there documentation on the silicon revision registers/memory locations? Different versions of the SDK seem to look at different memory locations for revision information when determining which errata to apply.
For example, in the SDK we are using in our firmware, errata 187 is looking at memory 0xF0000FE8 to see if it has 0x20 in the upper nibble. In the latest SDK (17.2), errata 187 is checking if 0x10000134 is equal to 1, 2, 3 or anything that isn't 0.
On our hardware, the register 0xF0000FE8 has 0x30 in the upper nibble, so the errata doesn't get applied, but we are having USB enumeration issues unless the USB cable is unplugged and plugged back in.
We don't want to switch SDKs at this point in our development, so I was trying to modify the errata check to include what appears to be a newer hardware revision that changed after the SDK we are using was released.
Given that I can't find documentation on either of the "silicon revision registers", I'm not sure if my patch is a good idea or not.