public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Wolfgang Denk <wd@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] [PATCH] Fix backlight in the lwmon5 POST.
Date: Tue, 22 Apr 2008 16:24:48 +0200	[thread overview]
Message-ID: <1208874293-2123-7-git-send-email-wd@denx.de> (raw)
In-Reply-To: <1208874293-2123-6-git-send-email-wd@denx.de>

From: Yuri Tikhonov <yur@pollux.denx.de>

Backlight was switcehd on even when temperature was too low.

Signed-off-by: Dmitry Rakhchev <rda@emcraft.com>
Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
---
 board/lwmon5/lwmon5.c      |   24 +++++++++++++++++++++---
 post/board/lwmon5/fpga.c   |   10 ----------
 post/board/lwmon5/sysmon.c |   33 ++++++++-------------------------
 3 files changed, 29 insertions(+), 38 deletions(-)

diff --git a/board/lwmon5/lwmon5.c b/board/lwmon5/lwmon5.c
index 7c5f6cc..e5fa259 100644
--- a/board/lwmon5/lwmon5.c
+++ b/board/lwmon5/lwmon5.c
@@ -567,11 +567,13 @@ unsigned int board_video_init (void)
 	return CFG_LIME_BASE_0;
 }
 
-void board_backlight_switch (int flag)
+#define DEFAULT_BRIGHTNESS 0x64
+
+static void board_backlight_brightness(int brightness)
 {
-	if (flag) {
+	if (brightness > 0) {
 		/* pwm duty, lamp on */
-		out_be32((void *)(CFG_FPGA_BASE_0 + 0x00000024), 0x64);
+		out_be32((void *)(CFG_FPGA_BASE_0 + 0x00000024), brightness);
 		out_be32((void *)(CFG_FPGA_BASE_0 + 0x00000020), 0x701);
 	} else {
 		/* lamp off */
@@ -580,6 +582,22 @@ void board_backlight_switch (int flag)
 	}
 }
 
+void board_backlight_switch (int flag)
+{
+	char * param;
+	int rc;
+
+	if (flag) {
+		param = getenv("brightness");
+		rc = param ? simple_strtol(param, NULL, 10) : -1;
+		if (rc < 0)
+			rc = DEFAULT_BRIGHTNESS;
+	} else {
+		rc = 0;
+	}
+	board_backlight_brightness(rc);
+}
+
 #if defined(CONFIG_CONSOLE_EXTRA_INFO)
 /*
  * Return text to be printed besides the logo.
diff --git a/post/board/lwmon5/fpga.c b/post/board/lwmon5/fpga.c
index b87fc52..162174c 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 0eae4c1..f7e51a3 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)
-- 
1.5.4.2

  reply	other threads:[~2008-04-22 14:24 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-22 14:24 [U-Boot-Users] [PATCH] Enable CODEC POST with CFG_POST_CODEC rather than with CFG_POST_DSP Wolfgang Denk
2008-04-22 14:24 ` [U-Boot-Users] [PATCH] The patch adds new POST tests for the Lwmon5 board Wolfgang Denk
2008-04-22 14:24   ` [U-Boot-Users] [PATCH] The patch introduces the CRITICAL feature of POST tests. If the test Wolfgang Denk
2008-04-22 14:24     ` [U-Boot-Users] [PATCH] Some fixes to dspic, fpga, and gdc post tests for lwmon5 Wolfgang Denk
2008-04-22 14:24       ` [U-Boot-Users] [PATCH] Add support for the lwmon5 board reset via GPIO58 Wolfgang Denk
2008-04-22 14:24         ` [U-Boot-Users] [PATCH] The patch introduces the alternative configuration of the log buffer for Wolfgang Denk
2008-04-22 14:24           ` Wolfgang Denk [this message]
2008-04-22 14:24             ` [U-Boot-Users] [PATCH] lwmon5: Fix register test logic to match the specific GDC h/w Wolfgang Denk
2008-04-22 14:24               ` [U-Boot-Users] [PATCH] POST: preparations for moving CONFIG_POST to Makefiles Wolfgang Denk
2008-04-22 14:24                 ` [U-Boot-Users] [PATCH] POST: move " Wolfgang Denk
2008-04-22 14:24                   ` [U-Boot-Users] [PATCH] lwmon5 watchdog: limit trigger rate Wolfgang Denk
2008-04-22 14:24                     ` [U-Boot-Users] [PATCH] Added watchdog triggering calls in the "mtest" test function Wolfgang Denk
2008-04-24 14:43                     ` [U-Boot-Users] [PATCH] lwmon5 watchdog: limit trigger rate Stefan Roese
2008-04-24 14:50               ` [U-Boot-Users] [PATCH] lwmon5: Fix register test logic to match the specific GDC h/w Stefan Roese
2008-04-24 14:36             ` [U-Boot-Users] [PATCH] Fix backlight in the lwmon5 POST Stefan Roese
2008-04-24 14:35         ` [U-Boot-Users] [PATCH] Add support for the lwmon5 board reset via GPIO58 Stefan Roese
2008-04-24 14:34       ` [U-Boot-Users] [PATCH] Some fixes to dspic, fpga, and gdc post tests for lwmon5 Stefan Roese
2008-04-24 14:33   ` [U-Boot-Users] [PATCH] The patch adds new POST tests for the Lwmon5 board Stefan Roese
  -- strict thread matches above, loose matches on Subject: below --
2008-03-18 21:12 [U-Boot-Users] [PATCH] Enable CODEC POST with CFG_POST_CODEC rather than with CFG_POST_DSP Wolfgang Denk
2008-03-18 21:12 ` [U-Boot-Users] [PATCH] The patch adds new POST tests for the Lwmon5 board Wolfgang Denk
2008-03-18 21:12   ` [U-Boot-Users] [PATCH] The patch introduces the CRITICAL feature of POST tests. If the test Wolfgang Denk
2008-03-18 21:12     ` [U-Boot-Users] [PATCH] Some fixes to dspic, fpga, and gdc post tests for lwmon5 Wolfgang Denk
2008-03-18 21:12       ` [U-Boot-Users] [PATCH] Add support for the lwmon5 board reset via GPIO58 Wolfgang Denk
2008-03-18 21:12         ` [U-Boot-Users] [PATCH] The patch introduces the alternative configuration of the log buffer for Wolfgang Denk
2008-03-18 21:12           ` [U-Boot-Users] [PATCH] Fix backlight in the lwmon5 POST Wolfgang Denk

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1208874293-2123-7-git-send-email-wd@denx.de \
    --to=wd@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox