summaryrefslogtreecommitdiff
path: root/firmware/target
diff options
context:
space:
mode:
authorAndree Buschmann <AndreeBuschmann@t-online.de>2010-03-21 13:50:38 +0000
committerAndree Buschmann <AndreeBuschmann@t-online.de>2010-03-21 13:50:38 +0000
commit18e7c1f4af9593bfd8ce8bfcd4b594ed7211b6e9 (patch)
treee8c5d6f97a634f4d25b58475222ec16135a91599 /firmware/target
parent7eafef09a66b7030f54e2c033c4b00eb612e1b30 (diff)
downloadrockbox-18e7c1f4af9593bfd8ce8bfcd4b594ed7211b6e9.tar.gz
rockbox-18e7c1f4af9593bfd8ce8bfcd4b594ed7211b6e9.zip
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
Diffstat (limited to 'firmware/target')
-rw-r--r--firmware/target/arm/ipod/power-ipod.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/firmware/target/arm/ipod/power-ipod.c b/firmware/target/arm/ipod/power-ipod.c
index 897527f6aa..14c8bf21e1 100644
--- a/firmware/target/arm/ipod/power-ipod.c
+++ b/firmware/target/arm/ipod/power-ipod.c
@@ -121,8 +121,8 @@ void ide_power_enable(bool on)
121 DEV_EN |= DEV_IDE0; 121 DEV_EN |= DEV_IDE0;
122 GPIOG_ENABLE = 0; 122 GPIOG_ENABLE = 0;
123 GPIOH_ENABLE = 0; 123 GPIOH_ENABLE = 0;
124 GPIOI_ENABLE &= 0x40; 124 GPIO_CLEAR_BITWISE(GPIOI_ENABLE, 0xBF);
125 GPIOK_ENABLE &= 0XE0; 125 GPIO_CLEAR_BITWISE(GPIOK_ENABLE, 0x1F);
126 udelay(10); 126 udelay(10);
127 } 127 }
128 else 128 else
@@ -131,8 +131,8 @@ void ide_power_enable(bool on)
131 udelay(10); 131 udelay(10);
132 GPIOG_ENABLE = 0xFF; 132 GPIOG_ENABLE = 0xFF;
133 GPIOH_ENABLE = 0xFF; 133 GPIOH_ENABLE = 0xFF;
134 GPIOI_ENABLE |= 0xBF; 134 GPIO_SET_BITWISE(GPIOI_ENABLE, 0xBF);
135 GPIOK_ENABLE |= 0x1F; 135 GPIO_SET_BITWISE(GPIOK_ENABLE, 0x1F);
136 GPO32_VAL |= 0x40000000; 136 GPO32_VAL |= 0x40000000;
137 } 137 }
138#else /* Nano */ 138#else /* Nano */