summaryrefslogtreecommitdiff
path: root/firmware/target
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target')
-rwxr-xr-xfirmware/target/coldfire/iaudio/x5/backlight-target.h1
-rwxr-xr-xfirmware/target/coldfire/iaudio/x5/backlight-x5.c10
-rw-r--r--firmware/target/coldfire/iriver/backlight-target.h3
-rw-r--r--firmware/target/coldfire/iriver/h300/backlight-h300.c10
4 files changed, 24 insertions, 0 deletions
diff --git a/firmware/target/coldfire/iaudio/x5/backlight-target.h b/firmware/target/coldfire/iaudio/x5/backlight-target.h
index 262650ae24..e982e656d6 100755
--- a/firmware/target/coldfire/iaudio/x5/backlight-target.h
+++ b/firmware/target/coldfire/iaudio/x5/backlight-target.h
@@ -21,6 +21,7 @@
21 21
22void __backlight_on(void); 22void __backlight_on(void);
23void __backlight_off(void); 23void __backlight_off(void);
24void __backlight_set_brightness(int val);
24void __remote_backlight_on(void); 25void __remote_backlight_on(void);
25void __remote_backlight_off(void); 26void __remote_backlight_off(void);
26 27
diff --git a/firmware/target/coldfire/iaudio/x5/backlight-x5.c b/firmware/target/coldfire/iaudio/x5/backlight-x5.c
index 70a5d957b6..9d02c35988 100755
--- a/firmware/target/coldfire/iaudio/x5/backlight-x5.c
+++ b/firmware/target/coldfire/iaudio/x5/backlight-x5.c
@@ -40,6 +40,16 @@ void __backlight_off(void)
40 lcd_enable(false); 40 lcd_enable(false);
41} 41}
42 42
43/* set brightness by changing the PWM */
44void __backlight_set_brightness(int val)
45{
46 /* disable IRQs while bitbanging */
47 int old_irq_level = set_irq_level(HIGHEST_IRQ_LEVEL);
48 pcf50606_write(0x35, (val << 1) | 0x01); /* 512Hz, Enable PWM */
49 /* enable IRQs again */
50 set_irq_level(old_irq_level);
51}
52
43void __remote_backlight_on(void) 53void __remote_backlight_on(void)
44{ 54{
45 and_l(~0x00200000, &GPIO_OUT); 55 and_l(~0x00200000, &GPIO_OUT);
diff --git a/firmware/target/coldfire/iriver/backlight-target.h b/firmware/target/coldfire/iriver/backlight-target.h
index 262650ae24..086ab02761 100644
--- a/firmware/target/coldfire/iriver/backlight-target.h
+++ b/firmware/target/coldfire/iriver/backlight-target.h
@@ -21,6 +21,9 @@
21 21
22void __backlight_on(void); 22void __backlight_on(void);
23void __backlight_off(void); 23void __backlight_off(void);
24#ifdef HAVE_BACKLIGHT_BRIGHTNESS
25void __backlight_set_brightness(int val);
26#endif
24void __remote_backlight_on(void); 27void __remote_backlight_on(void);
25void __remote_backlight_off(void); 28void __remote_backlight_off(void);
26 29
diff --git a/firmware/target/coldfire/iriver/h300/backlight-h300.c b/firmware/target/coldfire/iriver/h300/backlight-h300.c
index d5322c2cf7..50bd757612 100644
--- a/firmware/target/coldfire/iriver/h300/backlight-h300.c
+++ b/firmware/target/coldfire/iriver/h300/backlight-h300.c
@@ -38,6 +38,16 @@ void __backlight_off(void)
38 lcd_enable(false); 38 lcd_enable(false);
39} 39}
40 40
41/* set brightness by changing the PWM */
42void __backlight_set_brightness(int val)
43{
44 /* disable IRQs while bitbanging */
45 int old_irq_level = set_irq_level(HIGHEST_IRQ_LEVEL);
46 pcf50606_write(0x35, (val << 1) | 0x01); /* 512Hz, Enable PWM */
47 /* enable IRQs again */
48 set_irq_level(old_irq_level);
49}
50
41void __remote_backlight_on(void) 51void __remote_backlight_on(void)
42{ 52{
43 and_l(~0x00000002, &GPIO1_OUT); 53 and_l(~0x00000002, &GPIO1_OUT);