summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2008-09-10 22:02:36 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2008-09-10 22:02:36 +0000
commit2b64418a17f6f46bf3950ae49fc6d67f70306b2f (patch)
tree93859c729b63134855c0e13d22b672feb5507598
parent37a384c541efe67a98f9db1b80a181f9cef32023 (diff)
downloadrockbox-2b64418a17f6f46bf3950ae49fc6d67f70306b2f.tar.gz
rockbox-2b64418a17f6f46bf3950ae49fc6d67f70306b2f.zip
More VX767 work...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18489 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/target/mips/ingenic_jz47xx/onda_vx767/button-ondavx767.c39
-rw-r--r--firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h12
-rw-r--r--firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-ondavx767.c5
3 files changed, 41 insertions, 15 deletions
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-ondavx767.c b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-ondavx767.c
index 8b033a1bee..d98df9c42d 100644
--- a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-ondavx767.c
+++ b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-ondavx767.c
@@ -24,26 +24,35 @@
24#include "jz4740.h" 24#include "jz4740.h"
25#include "button-target.h" 25#include "button-target.h"
26 26
27#define BTN_VOL_DOWN (1 << 27) 27#define BTN_VOL_DOWN ((1 << 27) | (1 << 21) | (1 << 30))
28#define BTN_VOL_UP (1 << 0) 28#define BTN_VOL_UP (1 << 0)
29#define BTN_MENU (1 << 1) 29#define BTN_MENU (1 << 3)
30#define BTN_OFF (1 << 29) 30#define BTN_BACK (1 << 4)
31#define BTN_HOLD (1 << 16) 31#define BTN_SELECT (1 << 29)
32#define BTN_MASK (BTN_VOL_DOWN | BTN_VOL_UP \ 32#define BTN_REWIND (1 << 1)
33 | BTN_MENU | BTN_OFF ) 33#define BTN_FAST_FWD (1 << 2)
34#define BTN_HOLD (1 << 31) /* Unknown currently */
35#define BTN_MASK (BTN_VOL_DOWN | BTN_VOL_UP | BTN_MENU \
36 | BTN_BACK | BTN_SELECT | BTN_REWIND \
37 | BTN_FAST_FWD)
34 38
35bool button_hold(void) 39bool button_hold(void)
36{ 40{
37 return (~REG_GPIO_PXPIN(3) & BTN_HOLD ? 1 : 0); 41 return (~__gpio_get_port(3) & BTN_HOLD ? 1 : 0);
38} 42}
39 43
40void button_init_device(void) 44void button_init_device(void)
41{ 45{
42 __gpio_port_as_input(3, 29); 46 __gpio_port_as_input(3, 30);
47 __gpio_port_as_input(3, 21);
43 __gpio_port_as_input(3, 27); 48 __gpio_port_as_input(3, 27);
44 __gpio_port_as_input(3, 16);
45 __gpio_port_as_input(3, 1);
46 __gpio_port_as_input(3, 0); 49 __gpio_port_as_input(3, 0);
50 __gpio_port_as_input(3, 3);
51 __gpio_port_as_input(3, 4);
52 __gpio_port_as_input(3, 29);
53 __gpio_port_as_input(3, 1);
54 __gpio_port_as_input(3, 2);
55 /* __gpio_port_as_input(3, 31); */
47} 56}
48 57
49int button_read_device(void) 58int button_read_device(void)
@@ -60,10 +69,16 @@ int button_read_device(void)
60 ret |= BUTTON_VOL_DOWN; 69 ret |= BUTTON_VOL_DOWN;
61 if(key & BTN_VOL_UP) 70 if(key & BTN_VOL_UP)
62 ret |= BUTTON_VOL_UP; 71 ret |= BUTTON_VOL_UP;
72 if(key & BTN_SELECT)
73 ret |= BUTTON_SELECT;
63 if(key & BTN_MENU) 74 if(key & BTN_MENU)
64 ret |= BUTTON_MENU; 75 ret |= BUTTON_MENU;
65 if(key & BTN_OFF) 76 if(key & BTN_BACK)
66 ret |= BUTTON_POWER; 77 ret |= BUTTON_BACK;
78 if(key & BTN_REWIND)
79 ret |= BUTTON_REWIND;
80 if(key & BTN_FAST_FWD)
81 ret |= BUTTON_FAST_FWD;
67 } 82 }
68 83
69 return ret; 84 return ret;
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
index 32325d1423..8c0393b9f6 100644
--- a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
+++ b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
@@ -31,10 +31,13 @@ void button_init_device(void);
31int button_read_device(void); 31int button_read_device(void);
32 32
33/* Main unit's buttons */ 33/* Main unit's buttons */
34#define BUTTON_POWER 0x00000001 34#define BUTTON_SELECT 0x00000001
35#define BUTTON_VOL_UP 0x00000002 35#define BUTTON_VOL_UP 0x00000002
36#define BUTTON_VOL_DOWN 0x00000004 36#define BUTTON_VOL_DOWN 0x00000004
37#define BUTTON_MENU 0x00000008 37#define BUTTON_MENU 0x00000008
38#define BUTTON_BACK 0x00000010
39#define BUTTON_REWIND 0x00000020
40#define BUTTON_FAST_FWD 0x00000040
38 41
39/* Compatibility hacks for flipping. Needs a somewhat better fix. */ 42/* Compatibility hacks for flipping. Needs a somewhat better fix. */
40#define BUTTON_LEFT 0 43#define BUTTON_LEFT 0
@@ -42,13 +45,16 @@ int button_read_device(void);
42#define BUTTON_UP 0 45#define BUTTON_UP 0
43#define BUTTON_DOWN 0 46#define BUTTON_DOWN 0
44 47
45#define BUTTON_MAIN (BUTTON_POWER | BUTTON_VOL_UP | BUTTON_VOL_DOWN | BUTTON_MENU) 48#define BUTTON_MAIN (BUTTON_SELECT | BUTTON_VOL_UP | BUTTON_VOL_DOWN | BUTTON_MENU \
49 BUTTON_MENU | BUTTON_BACK | BUTTON_REWIND | BUTTON_FAST_FWD)
46 50
47/* No remote */ 51/* No remote */
48#define BUTTON_REMOTE 0 52#define BUTTON_REMOTE 0
49 53
54#define BUTTON_POWER 0 /* HACK */
55
50/* Software power-off */ 56/* Software power-off */
51#define POWEROFF_BUTTON BUTTON_POWER 57#define POWEROFF_BUTTON BUTTON_SELECT /* TODO */
52#define POWEROFF_COUNT 10 58#define POWEROFF_COUNT 10
53 59
54#endif /* BUTTON_TARGET_H */ 60#endif /* BUTTON_TARGET_H */
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-ondavx767.c b/firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-ondavx767.c
index 056c068f23..010964f334 100644
--- a/firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-ondavx767.c
+++ b/firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-ondavx767.c
@@ -192,6 +192,11 @@ void lcd_set_target(short x, short y, short width, short height)
192 SLCD_SEND_COMMAND(0x52, x); 192 SLCD_SEND_COMMAND(0x52, x);
193 SLCD_SEND_COMMAND(0x53, x+width-1); 193 SLCD_SEND_COMMAND(0x53, x+width-1);
194 /* TODO */ 194 /* TODO */
195
196 __gpio_clear_pin(PIN_UNK_N);
197 SLCD_SET_COMMAND(0x22);
198 WAIT_ON_SLCD;
199 __gpio_set_pin(PIN_UNK_N);
195} 200}
196 201
197void lcd_on(void) 202void lcd_on(void)