diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-06-20 10:54:13 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-06-20 10:54:13 +0000 |
commit | 582942016bdf3599952b343858ba9fb9785494e8 (patch) | |
tree | 05d17c750bc4ed952c0da49f9f000fc7ae96ed11 /firmware/target/mips/ingenic_jz47xx | |
parent | d13f49737a6a04fae8b8288ae6d25d33ac6e4dfc (diff) | |
download | rockbox-582942016bdf3599952b343858ba9fb9785494e8.tar.gz rockbox-582942016bdf3599952b343858ba9fb9785494e8.zip |
* Commit a modified FS#10354 (thanks to Davide Quarta) - add support the VX747+ in scramble and configure
* Add support for the VX777
* Remove the touchscreen mode switching combo from the button driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21379 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/mips/ingenic_jz47xx')
-rw-r--r-- | firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c b/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c index ebc2f214a9..24caac0100 100644 --- a/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c +++ b/firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c | |||
@@ -42,6 +42,8 @@ | |||
42 | #define BTN_HOLD (1 << 22) /* on REG_GPIO_PXPIN(2) */ | 42 | #define BTN_HOLD (1 << 22) /* on REG_GPIO_PXPIN(2) */ |
43 | #define BTN_MENU (1 << 20) | 43 | #define BTN_MENU (1 << 20) |
44 | #define BTN_VOL_UP (1 << 19) | 44 | #define BTN_VOL_UP (1 << 19) |
45 | #elif defined(ONDA_VX777) | ||
46 | /* TODO */ | ||
45 | #else | 47 | #else |
46 | #error No buttons defined! | 48 | #error No buttons defined! |
47 | #endif | 49 | #endif |
@@ -123,7 +125,7 @@ unsigned int battery_adc_voltage(void) | |||
123 | } | 125 | } |
124 | 126 | ||
125 | void button_init_device(void) | 127 | void button_init_device(void) |
126 | { | 128 | { |
127 | #ifdef ONDA_VX747 | 129 | #ifdef ONDA_VX747 |
128 | __gpio_as_input(32*3 + 29); | 130 | __gpio_as_input(32*3 + 29); |
129 | __gpio_as_input(32*3 + 27); | 131 | __gpio_as_input(32*3 + 27); |
@@ -146,6 +148,8 @@ bool button_hold(void) | |||
146 | (~REG_GPIO_PXPIN(3)) & BTN_HOLD | 148 | (~REG_GPIO_PXPIN(3)) & BTN_HOLD |
147 | #elif defined(ONDA_VX747P) | 149 | #elif defined(ONDA_VX747P) |
148 | (~REG_GPIO_PXPIN(2)) & BTN_HOLD | 150 | (~REG_GPIO_PXPIN(2)) & BTN_HOLD |
151 | #elif defined(ONDA_VX777) | ||
152 | false /* TODO */ | ||
149 | #endif | 153 | #endif |
150 | ? true : false | 154 | ? true : false |
151 | ); | 155 | ); |
@@ -153,13 +157,14 @@ bool button_hold(void) | |||
153 | 157 | ||
154 | int button_read_device(int *data) | 158 | int button_read_device(int *data) |
155 | { | 159 | { |
156 | int ret = 0, tmp; | 160 | int ret = 0; |
157 | 161 | ||
158 | /* Filter button events out if HOLD button is pressed at firmware/ level */ | 162 | /* Filter button events out if HOLD button is pressed at firmware/ level */ |
159 | if(button_hold()) | 163 | if(button_hold()) |
160 | return 0; | 164 | return 0; |
161 | 165 | ||
162 | tmp = (~REG_GPIO_PXPIN(3)) & BTN_MASK; | 166 | #ifndef ONDA_VX777 |
167 | int tmp = (~REG_GPIO_PXPIN(3)) & BTN_MASK; | ||
163 | 168 | ||
164 | if(tmp & BTN_VOL_DOWN) | 169 | if(tmp & BTN_VOL_DOWN) |
165 | ret |= BUTTON_VOL_DOWN; | 170 | ret |= BUTTON_VOL_DOWN; |
@@ -169,6 +174,7 @@ int button_read_device(int *data) | |||
169 | ret |= BUTTON_MENU; | 174 | ret |= BUTTON_MENU; |
170 | if(tmp & BTN_OFF) | 175 | if(tmp & BTN_OFF) |
171 | ret |= BUTTON_POWER; | 176 | ret |= BUTTON_POWER; |
177 | #endif | ||
172 | 178 | ||
173 | if(cur_touch != 0 && pen_down) | 179 | if(cur_touch != 0 && pen_down) |
174 | { | 180 | { |
@@ -176,9 +182,6 @@ int button_read_device(int *data) | |||
176 | if( UNLIKELY(!is_backlight_on(true)) ) | 182 | if( UNLIKELY(!is_backlight_on(true)) ) |
177 | *data = 0; | 183 | *data = 0; |
178 | } | 184 | } |
179 | |||
180 | if(ret & (BUTTON_VOL_DOWN|BUTTON_VOL_UP)) | ||
181 | touchscreen_set_mode( touchscreen_get_mode() == TOUCHSCREEN_BUTTON ? TOUCHSCREEN_POINT : TOUCHSCREEN_BUTTON); | ||
182 | 185 | ||
183 | return ret; | 186 | return ret; |
184 | } | 187 | } |