summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-11-27 20:23:12 +0000
committerJens Arnold <amiconn@rockbox.org>2007-11-27 20:23:12 +0000
commit05784b52abb3d21dfe0e7b1e014e601ce1d10803 (patch)
tree47b0569fc6e68462c21cfd33cec521b5bf007a74
parentdb5206742eae1261627e48ac120a9b3a4b92d2bb (diff)
downloadrockbox-05784b52abb3d21dfe0e7b1e014e601ce1d10803.zip
rockbox-05784b52abb3d21dfe0e7b1e014e601ce1d10803.tar.gz
rockbox-05784b52abb3d21dfe0e7b1e014e601ce1d10803.tar.bz2
rockbox-05784b52abb3d21dfe0e7b1e014e601ce1d10803.tar.xz
H10 button driver: Use atomic GPIO bit manipulation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15839 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/arm/iriver/h10/button-h10.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/firmware/target/arm/iriver/h10/button-h10.c b/firmware/target/arm/iriver/h10/button-h10.c
index ac09d24..fe5fff6 100644
--- a/firmware/target/arm/iriver/h10/button-h10.c
+++ b/firmware/target/arm/iriver/h10/button-h10.c
@@ -34,15 +34,15 @@
void button_init_device(void)
{
/* Enable REW, FF, Play, Left, Right, Hold buttons */
- GPIOA_ENABLE |= 0xfc;
+ GPIO_SET_BITWISE(GPIOA_ENABLE, 0xfc);
/* Enable POWER button */
- GPIOB_ENABLE |= 0x1;
+ GPIO_SET_BITWISE(GPIOB_ENABLE, 0x01);
/* We need to output to pin 6 of GPIOD when reading the scroll pad value */
- GPIOD_ENABLE |= 0x40;
- GPIOD_OUTPUT_EN |= 0x40;
- GPIOD_OUTPUT_VAL |= 0x40;
+ GPIO_SET_BITWISE(GPIOD_ENABLE, 0x40);
+ GPIO_SET_BITWISE(GPIOD_OUTPUT_EN, 0x40);
+ GPIO_SET_BITWISE(GPIOD_OUTPUT_VAL, 0x40);
}
bool button_hold(void)
@@ -97,10 +97,10 @@ int button_read_device(void)
/* Read scroller */
if ( GPIOD_INPUT_VAL & 0x20 )
{
- GPIOD_OUTPUT_VAL &=~ 0x40;
+ GPIO_CLEAR_BITWISE(GPIOD_OUTPUT_VAL, 0x40);
udelay(250);
data = adc_scan(ADC_SCROLLPAD);
- GPIOD_OUTPUT_VAL |= 0x40;
+ GPIO_SET_BITWISE(GPIOD_OUTPUT_VAL, 0x40);
if(data < 0x224)
{