ARM: pxa: fix DFI bus lockups on startup
authorRobert Jarzmik <robert.jarzmik@free.fr>
Sun, 23 Aug 2015 19:13:57 +0000 (21:13 +0200)
committerRobert Jarzmik <robert.jarzmik@free.fr>
Sun, 13 Sep 2015 10:55:27 +0000 (12:55 +0200)
commitadf3442cc890f04af1e8e2c0b335c84e5092dca9
treed677b6d9a08ebe14427ee454868c08d2399bd145
parent6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f
ARM: pxa: fix DFI bus lockups on startup

After the conversion of pxa architecture to common clock framework, the
NAND clock can be disabled on startup if no nand driver claims it.

In this case, it happens that if the bootloader used the NAND and set
the DFI arbitration bit, the next access to a static memory controller
area, such as an ethernet card, the system bus will stall, and the core
will be stalled forever.

Fix this by clearing the DFI arbritration bit in pxa3xx startup. The bit
will be enabled the pxa3xx-nand driver on need anyway. The only left
requirement is that upon pxa3xx-nand removal, the bit should be cleared
before the clock is disabled.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
arch/arm/mach-pxa/include/mach/addr-map.h
arch/arm/mach-pxa/pxa3xx.c