From fee861747999d358e9f5f58841697c09c9ea9b4f Mon Sep 17 00:00:00 2001 From: Jörg Hohensohn Date: Sat, 18 Dec 2004 10:29:47 +0000 Subject: multiple choice configuration CONFIG_BACKLIGHT instead of HAVE_BACKLIGHT, allows better control of how to do this per model git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5491 a1c6a512-1295-4272-9138-f99709370657 --- firmware/backlight.c | 38 ++++++++++++++++++------------------- firmware/export/config-fmrecorder.h | 2 +- firmware/export/config-h100.h | 2 +- firmware/export/config-player.h | 2 +- firmware/export/config-recorder.h | 2 +- firmware/export/config-recorderv2.h | 2 +- firmware/export/config.h | 6 ++++++ 7 files changed, 29 insertions(+), 25 deletions(-) (limited to 'firmware') diff --git a/firmware/backlight.c b/firmware/backlight.c index fea22a06a4..de3ebe3e05 100644 --- a/firmware/backlight.c +++ b/firmware/backlight.c @@ -28,7 +28,7 @@ #include "power.h" #include "system.h" -#ifdef HAVE_BACKLIGHT +#ifdef CONFIG_BACKLIGHT const char backlight_timeout_value[19] = { @@ -51,30 +51,30 @@ static unsigned int backlight_timeout = 5; static void __backlight_off(void) { -#ifdef IRIVER_H100 +#if CONFIG_BACKLIGHT == BL_IRIVER GPIO1_OUT |= 0x00020000; -#else -#ifdef HAVE_RTC +#elif CONFIG_BACKLIGHT == BL_RTC /* Disable square wave */ rtc_write(0x0a, rtc_read(0x0a) & ~0x40); -#else - and_b(~0x40, &PAIORH); -#endif +#elif CONFIG_BACKLIGHT == BL_PA14_LO /* Player */ + and_b(~0x40, &PAIORH); /* let it float (up) */ +#elif CONFIG_BACKLIGHT == BL_PA14_HI /* Ondio */ + and_b(~0x40, &PADRH); /* drive it low */ #endif } static void __backlight_on(void) { -#ifdef IRIVER_H100 +#if CONFIG_BACKLIGHT == BL_IRIVER GPIO1_OUT &= ~0x00020000; -#else -#ifdef HAVE_RTC +#elif CONFIG_BACKLIGHT == BL_RTC /* Enable square wave */ rtc_write(0x0a, rtc_read(0x0a) | 0x40); -#else - and_b(~0x40, &PADRH); +#elif CONFIG_BACKLIGHT == BL_PA14_LO /* Player */ + and_b(~0x40, &PADRH); /* drive an set low */ or_b(0x40, &PAIORH); -#endif +#elif CONFIG_BACKLIGHT == BL_PA14_HI /* Ondio */ + or_b(0x40, &PADRH); /* drive it high */ #endif } @@ -187,15 +187,13 @@ void backlight_init(void) create_thread(backlight_thread, backlight_stack, sizeof(backlight_stack), backlight_thread_name); -#ifdef HAVE_LCD_CHARCELLS +#if CONFIG_BACKLIGHT == BL_IRIVER + GPIO1_ENABLE |= 0x00020000; + GPIO1_FUNCTION |= 0x00020000; +#elif CONFIG_BACKLIGHT == BL_PA14_LO || CONFIG_BACKLIGHT == BL_PA14_HI PACR1 &= ~0x3000; /* Set PA14 (backlight control) to GPIO */ or_b(0x40, &PAIORH); /* ..and output */ #endif - -#ifdef IRIVER_H100 - GPIO1_ENABLE |= 0x00020000; - GPIO1_FUNCTION |= 0x00020000; -#endif backlight_on(); } @@ -210,5 +208,5 @@ void backlight_set_timeout(int index) {(void)index;} bool backlight_get_on_when_charging(void) {return 0;} void backlight_set_on_when_charging(bool yesno) {(void)yesno;} -#endif /* #ifdef HAVE_BACKLIGHT */ +#endif /* #ifdef CONFIG_BACKLIGHT */ diff --git a/firmware/export/config-fmrecorder.h b/firmware/export/config-fmrecorder.h index 0903e66c6d..c20c36ea43 100644 --- a/firmware/export/config-fmrecorder.h +++ b/firmware/export/config-fmrecorder.h @@ -71,7 +71,7 @@ #define HAVE_LED /* Define this for LCD backlight available */ -#define HAVE_BACKLIGHT +#define CONFIG_BACKLIGHT BL_RTC /* on I2C controlled RTC port */ /* Define this if you have a software controlled poweroff */ #define HAVE_SW_POWEROFF diff --git a/firmware/export/config-h100.h b/firmware/export/config-h100.h index 9e56aa2c59..405e839dd5 100644 --- a/firmware/export/config-h100.h +++ b/firmware/export/config-h100.h @@ -25,7 +25,7 @@ #define ROM_START 0x11010 /* Define this for LCD backlight available */ -#define HAVE_BACKLIGHT +#define CONFIG_BACKLIGHT BL_IRIVER /* port controlled */ /* Define this to the CPU frequency */ #define CPU_FREQ 11289600 diff --git a/firmware/export/config-player.h b/firmware/export/config-player.h index 5a8f080669..6ef61234ad 100644 --- a/firmware/export/config-player.h +++ b/firmware/export/config-player.h @@ -64,6 +64,6 @@ #define HAVE_LED /* Define this for LCD backlight available */ -#define HAVE_BACKLIGHT +#define CONFIG_BACKLIGHT BL_PA14_LO /* port PA14, low active */ #endif /* SIMULATOR */ diff --git a/firmware/export/config-recorder.h b/firmware/export/config-recorder.h index eefe5e371b..79fd116d4f 100644 --- a/firmware/export/config-recorder.h +++ b/firmware/export/config-recorder.h @@ -65,7 +65,7 @@ #define HAVE_LED /* Define this for LCD backlight available */ -#define HAVE_BACKLIGHT +#define CONFIG_BACKLIGHT BL_RTC /* on I2C controlled RTC port */ /* Define this for S/PDIF output available */ #define HAVE_SPDIF_OUT diff --git a/firmware/export/config-recorderv2.h b/firmware/export/config-recorderv2.h index 575a88fd7c..028a27095c 100644 --- a/firmware/export/config-recorderv2.h +++ b/firmware/export/config-recorderv2.h @@ -71,7 +71,7 @@ #define HAVE_LED /* Define this for LCD backlight available */ -#define HAVE_BACKLIGHT +#define CONFIG_BACKLIGHT BL_RTC /* on I2C controlled RTC port */ /* Define this if you have a software controlled poweroff */ #define HAVE_SW_POWEROFF diff --git a/firmware/export/config.h b/firmware/export/config.h index cda5c8cee7..7c0e285bbe 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h @@ -46,6 +46,12 @@ #define BATT_4AA_NIMH 1500 #define BATT_3AAA_ALKALINE 1000 +/* CONFIG_BACKLIGHT */ +#define BL_PA14_LO 0 /* Player, PA14 low active */ +#define BL_RTC 1 /* Recorder, RTC square wave output */ +#define BL_PA14_HI 2 /* Ondio, PA14 high active */ +#define BL_IRIVER 3 /* IRiver GPIO */ + /* now go and pick yours */ #if defined(ARCHOS_PLAYER) #include "config-player.h" -- cgit v1.2.3