projects
/
openwrt
/
svn-archive
/
openwrt.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
1536df0
)
block interrupts on reset (avoids triggering hotplug button interrupts)
author
Mike Baker
<mbm@openwrt.org>
Sat, 4 Nov 2006 03:01:32 +0000
(
03:01
+0000)
committer
Mike Baker
<mbm@openwrt.org>
Sat, 4 Nov 2006 03:01:32 +0000
(
03:01
+0000)
SVN-Revision: 5437
openwrt/target/linux/package/switch/src/switch-adm.c
patch
|
blob
|
history
diff --git
a/openwrt/target/linux/package/switch/src/switch-adm.c
b/openwrt/target/linux/package/switch/src/switch-adm.c
index 8d271200186f5dfde6f7757e10d24ab7b48970f2..113138a8fd8b38aae7cefcc1a20d0bfe3a2c8103 100644
(file)
--- a/
openwrt/target/linux/package/switch/src/switch-adm.c
+++ b/
openwrt/target/linux/package/switch/src/switch-adm.c
@@
-430,6
+430,8
@@
static int handle_reset(void *driver, char *buf, int nr)
* sequence in software.
*/
if (eerc) {
* sequence in software.
*/
if (eerc) {
+ unsigned long flags;
+ local_irq_save(flags);
/* Keep RC high for at least 20ms */
adm_enout(eerc, eerc);
for (i = 0; i < 20; i ++)
/* Keep RC high for at least 20ms */
adm_enout(eerc, eerc);
for (i = 0; i < 20; i ++)
@@
-446,6
+448,7
@@
static int handle_reset(void *driver, char *buf, int nr)
udelay(1000);
/* Leave RC high and disable GPIO outputs */
adm_disout((__u8)(eecs | eesk | eedi));
udelay(1000);
/* Leave RC high and disable GPIO outputs */
adm_disout((__u8)(eecs | eesk | eedi));
+ local_irq_restore(flags);
}
}