OMAP4: HSI: SW WA for HSR in dead state after SW reset with pending errors
authorDjamil Elaidi <d-elaidi@ti.com>
Tue, 28 Jun 2011 09:25:12 +0000 (11:25 +0200)
committerRuslan Bilovol <x0155540@ti.com>
Wed, 29 Jun 2011 17:36:53 +0000 (20:36 +0300)
commitbcbc7912fa3267a8ed5c209591bbd8780a37f2ad
tree07a78493e44299082992a1934a7b3a42c2c9debd
parent716e1948c44714fa3d35791646f7c17774b1c48c
OMAP4: HSI: SW WA for HSR in dead state after SW reset with pending errors

SW WA for HSI-C1BUG00088 "OMAP4430 HSI : No recovery from SW reset
under specific circumstances"

Description of issue:
It seems that in certain cases after some errors are detected by
HSR (frame timeout and/or tailing bit error and/or overrun), writing
the SW reset bit (SYSCONFIG.SOFTERESET to 1) may put the HSI in a
"dead" state in which it does not answer anymore to L4 OCP commands.
It seems that in certain cases after some errors are detected by HSR
(frame timeout and/or tailing bit error and/or overrun), writing the
SW reset bit (SYSCONFIG.SOFTERESET to 1) may put the HSI in a "dead"
state in which it does not answer anymore to L4 OCP commands.

Workaround is:
* Set HSR_MODE_P1.MODE_VAL = sleep and HSR_MODE_P2.MODE_VAL = sleep
* Acknowledge all errors (do not care if there is any) by writing
  HSR_ERRORACK_P1 and HSR_ERRORACK_P2
* Set SW reset

HW fix will be available for OMAP5430

Other changes:
* Removed write to Read only register HSI_HSR_BREAK_REG

Change-Id: I023d0fc8656808a8c294d7cfaec1bf3cb46da93f
Signed-off-by: Djamil Elaidi <d-elaidi@ti.com>
arch/arm/plat-omap/include/mach/omap_hsi.h
drivers/staging/omap_hsi/hsi_driver.c
drivers/staging/omap_hsi/hsi_driver_if.c
drivers/staging/omap_hsi/hsi_driver_int.c