block interrupts on reset (avoids triggering hotplug button interrupts)
authorMike Baker <mbm@openwrt.org>
Sat, 4 Nov 2006 03:01:32 +0000 (03:01 +0000)
committerMike 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

index 8d271200186f5dfde6f7757e10d24ab7b48970f2..113138a8fd8b38aae7cefcc1a20d0bfe3a2c8103 100644 (file)
@@ -430,6 +430,8 @@ static int handle_reset(void *driver, char *buf, int nr)
         * 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 ++)
@@ -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));
+               local_irq_restore(flags);
        
        }