I am currently evaluating the differences between nRF52811 and nRF52810. I am still using the nRF5 SDK.
One difference is in the nRFInitialize function in the startup code at nRF5_SDK_17.1.0_ddde560\modules\nrfx\mdk\ses_startup_nrf52810.s
It seems that none of the the other chipsets have the following code included:
nRFInitialize: /* Workaround for Errata 185 RAM: RAM corruption at extreme corners * found at the Errata document for your device located * at https://infocenter.nordicsemi.com/index.jsp */ LDR R0, =0x10000130 LDR R0, [R0] LDR R1, =0x10000134 LDR R1, [R1] CMP R0, #0xA BNE skip CMP R1, #0x0 BNE skip LDR R0, =0x40000EE4 LDR R2, [R0] LDR R3, =0xFFFFFF8F ANDS R2, R2, R3 LDR R3, =0x00000040 ORRS R2, R2, R3 STR R2, [R0] skip: b afterInitialize
I tried to find more information about the mentioned errata 185, but failed.
The list of erratas at https://infocenter.nordicsemi.com/topic/errata_nRF52810_Rev3/ERR/nRF52810/Rev3/latest/err_810.html does not contain errata 185 and searching around the DevZone did not provide any useful results either.
Can somebody please share some more information about errata 185 and maybe explain why only nRF52810 is affected, but none of the other chipsets that may be similar?
While looking for answers I noticed that all the functions that check if an errata is applicable access registers 0x10000130 and 0x10000134 from the FICR. Unfortunately these are not explained in the product specification.
Can somebody please also share some information about these "secret" registers as well?