Blackfin: add workaround for anomaly 05000171
authorMike Frysinger <vapier@gentoo.org>
Sat, 4 Apr 2009 12:09:24 +0000 (08:09 -0400)
committerMike Frysinger <vapier@gentoo.org>
Mon, 6 Apr 2009 21:37:47 +0000 (17:37 -0400)
DESCRIPTION:
The Boot ROM is executed at power up/reset and changes the value of the
SICA_IWR registers from their default reset value of 0xFFFF, but does not
restore them.

WORKAROUND:
User code should not rely on the default value of these registers.  Set
the desired values explicitly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
cpu/blackfin/initcode.c

index 3120447..d44c6a6 100644 (file)
@@ -356,6 +356,10 @@ void initcode(ADI_BOOT_DATA *bootstruct)
 #if ANOMALY_05000432
                bfin_write_SIC_IWR1(-1);
 #endif
+#if ANOMALY_05000171
+               bfin_write_SICA_IWR0(-1);
+               bfin_write_SICA_IWR1(-1);
+#endif
        } else {
                serial_putc('G');