From cf59a4fc1d21c2a1d6cfc019f97268275d4a8581 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Fri, 10 Nov 2006 01:25:52 +0000 Subject: H300/X5: Moved backlight brightness code to target tree. Created __backlight_set_brightness in backlight-(target).c. backlight_set_brightness range clamps and calls the backlight driver. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11488 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/coldfire/iriver/h300/backlight-h300.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'firmware/target/coldfire/iriver/h300/backlight-h300.c') 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) lcd_enable(false); } +/* set brightness by changing the PWM */ +void __backlight_set_brightness(int val) +{ + /* disable IRQs while bitbanging */ + int old_irq_level = set_irq_level(HIGHEST_IRQ_LEVEL); + pcf50606_write(0x35, (val << 1) | 0x01); /* 512Hz, Enable PWM */ + /* enable IRQs again */ + set_irq_level(old_irq_level); +} + void __remote_backlight_on(void) { and_l(~0x00000002, &GPIO1_OUT); -- cgit v1.2.3