Use atomic operation for GPIOx_ENABLEs in ide_power_enable() for iPod Video. Thanks to Jens Arnold for this one.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25273 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Andree Buschmann 2010-03-21 13:50:38 +00:00
parent 7eafef09a6
commit 18e7c1f4af

View file

@ -121,8 +121,8 @@ void ide_power_enable(bool on)
DEV_EN |= DEV_IDE0; DEV_EN |= DEV_IDE0;
GPIOG_ENABLE = 0; GPIOG_ENABLE = 0;
GPIOH_ENABLE = 0; GPIOH_ENABLE = 0;
GPIOI_ENABLE &= 0x40; GPIO_CLEAR_BITWISE(GPIOI_ENABLE, 0xBF);
GPIOK_ENABLE &= 0XE0; GPIO_CLEAR_BITWISE(GPIOK_ENABLE, 0x1F);
udelay(10); udelay(10);
} }
else else
@ -131,8 +131,8 @@ void ide_power_enable(bool on)
udelay(10); udelay(10);
GPIOG_ENABLE = 0xFF; GPIOG_ENABLE = 0xFF;
GPIOH_ENABLE = 0xFF; GPIOH_ENABLE = 0xFF;
GPIOI_ENABLE |= 0xBF; GPIO_SET_BITWISE(GPIOI_ENABLE, 0xBF);
GPIOK_ENABLE |= 0x1F; GPIO_SET_BITWISE(GPIOK_ENABLE, 0x1F);
GPO32_VAL |= 0x40000000; GPO32_VAL |= 0x40000000;
} }
#else /* Nano */ #else /* Nano */