diff options
| author | Jens Arnold <amiconn@rockbox.org> | 2007-11-27 20:23:12 +0000 |
|---|---|---|
| committer | Jens Arnold <amiconn@rockbox.org> | 2007-11-27 20:23:12 +0000 |
| commit | 05784b52abb3d21dfe0e7b1e014e601ce1d10803 (patch) | |
| tree | 47b0569fc6e68462c21cfd33cec521b5bf007a74 | |
| parent | db5206742eae1261627e48ac120a9b3a4b92d2bb (diff) | |
| download | rockbox-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.c | 14 |
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) { |