summaryrefslogtreecommitdiffstats
path: root/post
diff options
context:
space:
mode:
authorYuri Tikhonov <yur@pollux.denx.de>2008-03-18 13:27:57 +0100
committerWolfgang Denk <wd@denx.de>2008-03-18 22:24:48 +0100
commit46bc0a938779aa1d664b847d36b08aa00f22e539 (patch)
treea56a9b130f6aa83714d6f624238a99e172d0eebd /post
parent3d61018643a2cd38c145aa6dde53f3f5f1a0e9cf (diff)
downloadu-boot-46bc0a938779aa1d664b847d36b08aa00f22e539.tar.gz
u-boot-46bc0a938779aa1d664b847d36b08aa00f22e539.tar.xz
u-boot-46bc0a938779aa1d664b847d36b08aa00f22e539.zip
Fix backlight in the lwmon5 POST.
Backlight was switched on even when temperature was too low. Signed-off-by: Dmitry Rakhchev <rda@emcraft.com> Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
Diffstat (limited to 'post')
-rw-r--r--post/board/lwmon5/fpga.c10
-rw-r--r--post/board/lwmon5/sysmon.c33
2 files changed, 8 insertions, 35 deletions
diff --git a/post/board/lwmon5/fpga.c b/post/board/lwmon5/fpga.c
index dca7a30a98..2d95b5e50a 100644
--- a/post/board/lwmon5/fpga.c
+++ b/post/board/lwmon5/fpga.c
@@ -41,16 +41,6 @@ DECLARE_GLOBAL_DATA_PTR;
#define FPGA_RAM_END 0xC4203FFF
#define FPGA_STAT 0xC400000C
-#define FPGA_PWM_CTRL_REG 0xC4000020
-#define FPGA_PWM_TV_REG 0xC4000024
-
-/* Turn on backlight, set brightness */
-void fpga_backlight_enable(int pwm)
-{
- out_be16((void *)FPGA_PWM_CTRL_REG, 0x0701);
- out_be16((void *)FPGA_PWM_TV_REG, pwm);
-}
-
#if CONFIG_POST & CFG_POST_BSPEC3
static int one_scratch_test(uint value)
diff --git a/post/board/lwmon5/sysmon.c b/post/board/lwmon5/sysmon.c
index 0eae4c1515..f7e51a3cfe 100644
--- a/post/board/lwmon5/sysmon.c
+++ b/post/board/lwmon5/sysmon.c
@@ -49,18 +49,16 @@
#include <watchdog.h>
#include <i2c.h>
+#if defined(CONFIG_VIDEO)
+#include <mb862xx.h>
+#endif
+
#if CONFIG_POST & CFG_POST_SYSMON
DECLARE_GLOBAL_DATA_PTR;
-#define DEFAULT_BRIGHTNESS 50
-
/* from dspic.c */
extern int dspic_read(ushort reg);
-/* from fpga.c */
-extern void fpga_backlight_enable(int v);
-
-static int sysmon_temp_invalid;
#define RELOC(x) if (x != NULL) x = (void *) ((ulong) (x) + gd->reloc_off)
@@ -70,7 +68,6 @@ typedef struct sysmon_table_s sysmon_table_t;
static void sysmon_dspic_init (sysmon_t * this);
static int sysmon_dspic_read (sysmon_t * this, uint addr);
static void sysmon_backlight_disable (sysmon_table_t * this);
-static void sysmon_backlight_enable (sysmon_table_t * this);
struct sysmon_s
{
@@ -120,7 +117,7 @@ static sysmon_table_t sysmon_table[] =
100, 1000, -0x8000, 0x7FFF, 0xFFFF, 0x8000+4750, 0x8000+5250, 0,
0x8000+4750, 0x8000+5250, 0, 0x12CA},
- {"+ 5 V standby", "V", &sysmon_dspic, NULL, sysmon_backlight_enable,
+ {"+ 5 V standby", "V", &sysmon_dspic, NULL, NULL,
100, 1000, -0x8000, 0x7FFF, 0xFFFF, 0x8000+4750, 0x8000+5250, 0,
0x8000+4750, 0x8000+5250, 0, 0x12C6},
};
@@ -205,23 +202,9 @@ static int sysmon_dspic_read (sysmon_t * this, uint addr)
static void sysmon_backlight_disable (sysmon_table_t * this)
{
- if (!this->val_valid_alt)
- sysmon_temp_invalid = 1;
-}
-
-static void sysmon_backlight_enable (sysmon_table_t * this)
-{
- char * param;
- int rc;
-
- if (!sysmon_temp_invalid) {
- param = getenv("brightness");
- rc = param ? simple_strtol(param, NULL, 10) : -1;
- if (rc >= 0)
- fpga_backlight_enable(rc);
- else
- fpga_backlight_enable(DEFAULT_BRIGHTNESS);
- }
+#if defined(CONFIG_VIDEO)
+ board_backlight_switch(this->val_valid_alt);
+#endif
}
int sysmon_post_test (int flags)