Title: [6946] branches/2009R1/arch/blackfin/kernel/bfin_gpio.c: Fix Bug in bfin_gpio_pm_hibernate_restore()
- Revision
- 6946
- Author
- hennerich
- Date
- 2009-07-08 06:58:52 -0500 (Wed, 08 Jul 2009)
Log Message
Fix Bug in bfin_gpio_pm_hibernate_restore()
1) AND restored DATA with DIR (not OR)
2) Restore DATA before setting DIR to avoid glitches.
Modified Paths
Diff
Modified: branches/2009R1/arch/blackfin/kernel/bfin_gpio.c (6945 => 6946)
--- branches/2009R1/arch/blackfin/kernel/bfin_gpio.c 2009-07-08 11:11:55 UTC (rev 6945)
+++ branches/2009R1/arch/blackfin/kernel/bfin_gpio.c 2009-07-08 11:58:52 UTC (rev 6946)
@@ -686,14 +686,14 @@
*port_fer[bank] = gpio_bank_saved[bank].fer;
#endif
gpio_array[bank]->inen = gpio_bank_saved[bank].inen;
+ gpio_array[bank]->data_set = gpio_bank_saved[bank].data
+ & gpio_bank_saved[bank].dir;
+
gpio_array[bank]->dir = gpio_bank_saved[bank].dir;
gpio_array[bank]->polar = gpio_bank_saved[bank].polar;
gpio_array[bank]->edge = gpio_bank_saved[bank].edge;
gpio_array[bank]->both = gpio_bank_saved[bank].both;
- gpio_array[bank]->data_set = gpio_bank_saved[bank].data
- | gpio_bank_saved[bank].dir;
-
gpio_array[bank]->maska = gpio_bank_saved[bank].maska;
}
AWA_DUMMY_READ(maska);
@@ -740,9 +740,10 @@
gpio_array[bank]->port_mux = gpio_bank_saved[bank].mux;
gpio_array[bank]->port_fer = gpio_bank_saved[bank].fer;
gpio_array[bank]->inen = gpio_bank_saved[bank].inen;
+ gpio_array[bank]->data_set = gpio_bank_saved[bank].data
+ & gpio_bank_saved[bank].dir;
gpio_array[bank]->dir_set = gpio_bank_saved[bank].dir;
- gpio_array[bank]->data_set = gpio_bank_saved[bank].data
- | gpio_bank_saved[bank].dir;
+
}
}
#endif
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits