mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-03 15:51:40 -04:00
FB: sa11x0: fix shannon GPSR/GPCR accesses
The GPIO set and clear registers should only be written, rather than read, modified, and written. A read-modify-write will have undesired side effects. Acked-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
@@ -798,7 +798,7 @@ static void sa1100fb_enable_controller(struct sa1100fb_info *fbi)
|
||||
|
||||
if (machine_is_shannon()) {
|
||||
GPDR |= SHANNON_GPIO_DISP_EN;
|
||||
GPSR |= SHANNON_GPIO_DISP_EN;
|
||||
GPSR = SHANNON_GPIO_DISP_EN;
|
||||
}
|
||||
|
||||
dev_dbg(fbi->dev, "DBAR1 = 0x%08lx\n", DBAR1);
|
||||
@@ -816,7 +816,7 @@ static void sa1100fb_disable_controller(struct sa1100fb_info *fbi)
|
||||
dev_dbg(fbi->dev, "Disabling LCD controller\n");
|
||||
|
||||
if (machine_is_shannon()) {
|
||||
GPCR |= SHANNON_GPIO_DISP_EN;
|
||||
GPCR = SHANNON_GPIO_DISP_EN;
|
||||
}
|
||||
|
||||
set_current_state(TASK_UNINTERRUPTIBLE);
|
||||
|
||||
Reference in New Issue
Block a user