* [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
@ 2012-08-10 7:26 Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
` (6 more replies)
0 siblings, 7 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 7e00040..69307e4 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -176,6 +176,9 @@ int board_early_init_f(void)
if (davinci_configure_pin_mux(gpio_pins, ARRAY_SIZE(gpio_pins)) != 0)
return 1;
+ /* Set DISP_ON high to enable LCD output*/
+ gpio_direction_output(97, 1);
+
/* Set the RESETOUTn low */
gpio_direction_output(111, 0);
@@ -188,9 +191,6 @@ int board_early_init_f(void)
/* Set LCD_B_PWR low to power down LCD Backlight*/
gpio_direction_output(102, 0);
- /* Set DISP_ON low to disable LCD output*/
- gpio_direction_output(97, 0);
-
#ifndef CONFIG_USE_IRQ
irq_init();
#endif
@@ -250,11 +250,6 @@ int board_early_init_f(void)
writel(readl(&davinci_syscfg_regs->mstpri[2]) & 0x0fffffff,
&davinci_syscfg_regs->mstpri[2]);
- /* Set LCD_B_PWR low to power up LCD Backlight*/
- gpio_set_value(102, 1);
-
- /* Set DISP_ON low to disable LCD output*/
- gpio_set_value(97, 1);
return 0;
}
@@ -276,6 +271,9 @@ int board_init(void)
int board_late_init(void)
{
+ unsigned char buf[2];
+ int ret;
+
/* PinMux for HALTEN */
if (davinci_configure_pin_mux(halten_pin, ARRAY_SIZE(halten_pin)) != 0)
return 1;
@@ -285,6 +283,15 @@ int board_late_init(void)
setenv("stdout", "serial");
+ /* Set fixed contrast settings for LCD via I2C potentiometer */
+ buf[0] = 0x00;
+ buf[1] = 0xd7;
+ ret = i2c_write(0x2e, 6, 1, buf, 2);
+ if (ret)
+ puts("\nContrast Settings FAILED\n");
+
+ /* Set LCD_B_PWR high to power up LCD Backlight*/
+ gpio_set_value(102, 1);
return 0;
}
#endif /* CONFIG_BOARD_LATE_INIT */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
@ 2012-08-10 7:26 ` Bastian Ruppert
2012-08-15 17:04 ` Stefano Babic
2012-08-10 7:26 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
` (5 subsequent siblings)
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
Do not allow to overwrite it when video is enabled.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 11 +++++++++--
include/configs/ea20.h | 2 ++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 69307e4..0edd910 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -254,6 +254,15 @@ int board_early_init_f(void)
return 0;
}
+/*
+ * Do not overwrite the console
+ * Use always serial for U-Boot console
+ */
+int overwrite_console(void)
+{
+ return 1;
+}
+
int board_init(void)
{
/* arch number of the board */
@@ -281,8 +290,6 @@ int board_late_init(void)
/* Set HALTEN to high */
gpio_direction_output(134, 1);
- setenv("stdout", "serial");
-
/* Set fixed contrast settings for LCD via I2C potentiometer */
buf[0] = 0x00;
buf[1] = 0xd7;
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index a9caa81..f9a1462 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -125,6 +125,8 @@
#define CONFIG_VIDEO_LOGO
#define CONFIG_VIDEO_BMP_RLE8
#define CONFIG_CMD_BMP
+#define CONFIG_SYS_CONSOLE_IS_IN_ENV
+#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
#endif
/*
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
@ 2012-08-10 7:26 ` Bastian Ruppert
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
2012-08-10 7:26 ` [U-Boot] [PATCH 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
` (4 subsequent siblings)
6 siblings, 2 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
drivers/video/cfb_console.c | 61 ++++++++++++++++++++++++++++---------------
1 files changed, 40 insertions(+), 21 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 19d061f..21b52bd 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -66,7 +66,11 @@
* CONFIG_CONSOLE_TIME - display time/date in upper right
* corner, needs CONFIG_CMD_DATE and
* CONFIG_CONSOLE_CURSOR
- * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
+ * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
+ * Use CONFIG_SPLASH_SCREEN_ALIGN with
+ * environment variable "splashpos" to place
+ * the logo on other position. In this case
+ * no CONSOLE_EXTRA_INFO is possible.
* CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
* CONFIG_CONSOLE_EXTRA_INFO - display additional board information
* strings that normaly goes to serial
@@ -369,6 +373,8 @@ static void *video_fb_address; /* frame buffer address */
static void *video_console_address; /* console buffer start address */
static int video_logo_height = VIDEO_LOGO_HEIGHT;
+static int video_logo_xpos;
+static int video_logo_ypos;
static int __maybe_unused cursor_state;
static int __maybe_unused old_col;
@@ -1594,40 +1600,53 @@ static void *video_logo(void)
__maybe_unused int y_off = 0;
#ifdef CONFIG_SPLASH_SCREEN
- char *s;
ulong addr;
-
- s = getenv("splashimage");
+#endif
+#if defined(CONFIG_SPLASH_SCREEN) || defined(CONFIG_SPLASH_SCREEN_ALIGN)
+ char *s;
+#endif
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ s = getenv("splashpos");
if (s != NULL) {
- int x = 0, y = 0;
+ if (s[0] == 'm')
+ video_logo_xpos = BMP_ALIGN_CENTER;
+ else
+ video_logo_xpos = simple_strtol(s, NULL, 0);
- addr = simple_strtoul(s, NULL, 16);
-#ifdef CONFIG_SPLASH_SCREEN_ALIGN
- s = getenv("splashpos");
+ s = strchr(s + 1, ',');
if (s != NULL) {
- if (s[0] == 'm')
- x = BMP_ALIGN_CENTER;
+ if (s[1] == 'm')
+ video_logo_ypos = BMP_ALIGN_CENTER;
else
- x = simple_strtol(s, NULL, 0);
-
- s = strchr(s + 1, ',');
- if (s != NULL) {
- if (s[1] == 'm')
- y = BMP_ALIGN_CENTER;
- else
- y = simple_strtol(s + 1, NULL, 0);
- }
+ video_logo_ypos = simple_strtol(s + 1, NULL, 0);
}
+ }
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
+#ifdef CONFIG_SPLASH_SCREEN
+ s = getenv("splashimage");
+ if (s != NULL) {
+
+ addr = simple_strtoul(s, NULL, 16);
- if (video_display_bitmap(addr, x, y) == 0) {
+
+ if (video_display_bitmap(addr, \
+ video_logo_xpos, \
+ video_logo_ypos) == 0) {
video_logo_height = 0;
return ((void *) (video_fb_address));
}
}
#endif /* CONFIG_SPLASH_SCREEN */
- logo_plot(video_fb_address, VIDEO_COLS, 0, 0);
+ logo_plot(video_fb_address, \
+ VIDEO_COLS, \
+ video_logo_xpos, \
+ video_logo_ypos);
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ /* when using splashpos for video_logo, no console output */
+ return (video_fb_address + video_logo_height * VIDEO_LINE_LEN);
+#endif
sprintf(info, " %s", version_string);
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 4/6] video: cfb_console: add function to plot the logo area black
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
@ 2012-08-10 7:26 ` Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
` (3 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
drivers/video/cfb_console.c | 46 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 42 insertions(+), 4 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 21b52bd..b5e8a00 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1486,7 +1486,39 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
#ifdef CONFIG_VIDEO_LOGO
-void logo_plot(void *screen, int width, int x, int y)
+static void plot_logo_or_black(void *screen, int width, int x, int y, \
+ int black);
+
+static void logo_plot(void *screen, int width, int x, int y)
+{
+ plot_logo_or_black(screen, width, x, y, 0);
+}
+
+static void logo_black(void)
+{
+ plot_logo_or_black(video_fb_address, \
+ VIDEO_COLS, \
+ video_logo_xpos, \
+ video_logo_ypos, \
+ 1);
+}
+
+static int do_clrlogo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ if (argc != 1)
+ return cmd_usage(cmdtp);
+
+ logo_black();
+ return 0;
+}
+
+U_BOOT_CMD(
+ clrlogo, 1, 0, do_clrlogo,
+ "fill the boot logo area with black",
+ " "
+ );
+
+static void plot_logo_or_black(void *screen, int width, int x, int y, int black)
{
int xcount, i;
@@ -1531,9 +1563,15 @@ void logo_plot(void *screen, int width, int x, int y)
#endif
xcount = VIDEO_LOGO_WIDTH;
while (xcount--) {
- r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
- g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
- b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ if (black) {
+ r = 0x00;
+ g = 0x00;
+ b = 0x00;
+ } else {
+ r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
+ g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
+ b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ }
switch (VIDEO_DATA_FORMAT) {
case GDF__8BIT_INDEX:
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (2 preceding siblings ...)
2012-08-10 7:26 ` [U-Boot] [PATCH 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
@ 2012-08-10 7:26 ` Bastian Ruppert
2012-08-15 17:04 ` Stefano Babic
2012-08-10 7:26 ` [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
` (2 subsequent siblings)
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (3 preceding siblings ...)
2012-08-10 7:26 ` [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-08-10 7:26 ` Bastian Ruppert
2012-08-15 17:03 ` Stefano Babic
2012-08-15 16:55 ` [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Tom Rini
2012-08-15 17:04 ` Stefano Babic
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-08-10 7:26 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
include/configs/ea20.h | 106 ++++++++++++++++++++++++++++++------------------
1 files changed, 66 insertions(+), 40 deletions(-)
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index f9a1462..373db74 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -30,6 +30,7 @@
#define CONFIG_USE_SPIFLASH
#define CONFIG_SYS_USE_NAND
#define CONFIG_DRIVER_TI_EMAC_USE_RMII
+#define CONFIG_DRIVER_TI_EMAC_RMII_NONEG
#define CONFIG_BOARD_EARLY_INIT_F
#define CONFIG_BOARD_LATE_INIT
#define CONFIG_VIDEO
@@ -98,6 +99,7 @@
* Network & Ethernet Configuration
*/
#ifdef CONFIG_DRIVER_TI_EMAC
+#define CONFIG_EMAC_MDIO_PHY_NUM 0
#define CONFIG_MII
#define CONFIG_BOOTP_DEFAULT
#define CONFIG_BOOTP_DNS
@@ -121,9 +123,11 @@
#define CONFIG_VIDEO_DA8XX
#define CONFIG_CFB_CONSOLE
#define CONFIG_VGA_AS_SINGLE_DEVICE
-#define CONFIG_SPLASH_SCREEN
+#define CONFIG_SPLASH_SCREEN_ALIGN
#define CONFIG_VIDEO_LOGO
+#define CONFIG_SYS_CONSOLE_INFO_QUIET
#define CONFIG_VIDEO_BMP_RLE8
+#define CONFIG_VIDEO_BMP_LOGO
#define CONFIG_CMD_BMP
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
@@ -197,6 +201,7 @@
#define CONFIG_NAND_DAVINCI
#define CONFIG_SYS_NAND_PAGE_2K
+#define CONFIG_SYS_NAND_NO_SUBPAGE
#define CONFIG_SYS_NAND_CS 2
#define CONFIG_SYS_NAND_BASE DAVINCI_ASYNC_EMIF_DATA_CE2_BASE
#undef CONFIG_SYS_NAND_HW_ECC
@@ -235,31 +240,39 @@
#define xstr(s) str(s)
#define str(s) #s
-
#define CONFIG_HOSTNAME ea20
-#define CONFIG_EXTRA_ENV_SETTINGS \
+#define CONFIG_EXTRA_ENV_SETTINGS \
"as=3\0" \
- "netdev=eth0\0" \
+ "netdev=eth0\0" \
"nfsargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rootpath}\0" \
"rfsbargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rfsbpath}\0" \
- "ramargs=setenv bootargs root=/dev/ram rw\0" \
- "mtdids=nand0=davinci_nand.0\0" \
- "mtdparts=mtdparts=davinci_nand.0:8m(Settings),8m(aKernel)," \
- "8m(bKernel),76m(aRootfs),76m(bRootfs),-(MassSD)\0" \
+ "testrfsargs=setenv bootargs root=/dev/nfs rw " \
+ "nfsroot=${serverip}:${testrfspath}\0" \
+ "ramargs=setenv bootargs root=/dev/ram rw initrd=" \
+ "0x${ramdisk_addr_r},4M\0" \
+ "mtdids=nand0=davinci_nand.0\0" \
+ "serverip=192.168.5.249\0" \
+ "ipaddr=192.168.5.248\0" \
+ "rootpath=/opt/eldk/arm\0" \
+ "splashpos=230,180\0" \
+ "testrfspath=/opt/eldk/test_arm\0" \
+ "tempmac=setenv ethaddr 02:ea:20:ff:ff:ff\0" \
"nandargs=setenv bootargs rootfstype=ubifs ro chk_data_crc " \
"ubi.mtd=${as} root=ubi0:rootfs\0" \
+ "nandrwargs=setenv bootargs rootfstype=ubifs rw chk_data_crc " \
+ "ubi.mtd=${as} root=ubi0:rootfs\0" \
"addip_sta=setenv bootargs ${bootargs} " \
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
":${hostname}:${netdev}:off panic=1\0" \
"addip_dyn=setenv bootargs ${bootargs} ip=dhcp\0" \
- "addip=if test -n ${ipdyn};then run addip_dyn;" \
+ "addip=if test -n ${ipdyn};then run addip_dyn;" \
"else run addip_sta;fi\0" \
"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \
"addtty=setenv bootargs ${bootargs}" \
" console=${consoledev},${baudrate}n8\0" \
- "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
+ "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
"addmem=setenv bootargs ${bootargs} mem=${memory}\0" \
"consoledev=ttyS0\0" \
"loadaddr=c0000014\0" \
@@ -267,44 +280,57 @@
"kernel_addr_r=c0700000\0" \
"hostname=" xstr(CONFIG_HOSTNAME) "\0" \
"bootfile=" xstr(CONFIG_HOSTNAME) "/uImage\0" \
- "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/uRamdisk\0" \
+ "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/image.ext2\0" \
"flash_self=run ramargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr} ${ramdisk_addr}\0" \
+ "bootm ${kernel_addr_r}\0" \
"flash_nfs=run nfsargs addip addtty addmtd addmisc addmem;" \
"bootm ${kernel_addr}\0" \
- "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
"run nfsargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr_r}\0" \
- "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
- "run rfsbargs addip addtty addmtd addmisc addmem; " \
- "bootm ${kernel_addr_r}\0" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run rfsbargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
+ "net_testrfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run testrfsargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
"net_self_load=tftp ${kernel_addr_r} ${bootfile};" \
"tftp ${ramdisk_addr_r} ${ramdisk_file};\0" \
- "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "ubifsload ${kernel_addr_r} /boot/uImage;" \
- "ubifsumount; run nandargs addip addtty " \
- "addmtd addmisc addmem;bootm ${kernel_addr_r}\0" \
- "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
- "load_magic=if sf probe 0;then sf " \
- "read c0000000 0x10000 0x60000;fi\0" \
- "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "if ubifsload c0000014 /boot/u-boot.bin;" \
- "then mw c0000008 ${filesize};else echo Error reading " \
- "u-boot from nand!;fi\0" \
- "load_net=if sf probe 0;then sf read c0000000 0x10000 0x60000;" \
- "tftp c0000014 ${u-boot};" \
- "mw c0000008 ${filesize};" \
- "fi\0" \
- "upd=if sf probe 0;then sf erase 10000 60000;" \
- "sf write c0000000 10000 60000;" \
- "fi\0" \
- "ubootupd_net=if run load_net;then echo Updating u-boot;" \
- "if run upd; then echo U-Boot updated;" \
+ "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "nand_nandrw=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandrwargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_nandrw=tftp ${kernel_addr_r} ${bootfile}; run nandrwargs" \
+ " addip addtty addmtd addmisc addmem;" \
+ "clrlogo;bootm ${kernel_addr_r}\0" \
+ "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
+ "load_magic=if sf probe 0;then sf " \
+ "read c0000000 0x10000 0x60000;fi\0" \
+ "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "if ubifsload c0000014 /boot/u-boot.bin;" \
+ "then mw c0000008 ${filesize};else echo Error reading" \
+ " u-boot from nand!;fi\0" \
+ "load_net=if sf probe 0;then sf read c0000000 0x10000 " \
+ "0x60000;tftp c0000014 ${u-boot};" \
+ "mw c0000008 ${filesize};fi\0" \
+ "upd=if sf probe 0;then sf erase 10000 60000;" \
+ "sf write c0000000 10000 60000;fi\0" \
+ "ublupdate=if tftp C0700000 ${ublname};then sf probe 0; " \
+ "sf erase 0 10000;" \
+ "sf write 0xc0700000 0 ${filesize};fi\0" \
+ "ubootupd_net=if run load_net;then echo Updating u-boot;" \
+ "if run upd; then echo U-Boot updated;" \
"else echo Error updating u-boot !;" \
"echo Board without bootloader !!;" \
"fi;" \
- "else echo U-Boot not downloaded..exiting;fi\0" \
- "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
- "bootcmd=run net_nfs\0"
+ "else echo U-Boot not downloaded..exiting;fi\0" \
+ "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
+ "bootcmd=run tempmac;run net_testrfs\0"
#endif /* __CONFIG_H */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (4 preceding siblings ...)
2012-08-10 7:26 ` [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
@ 2012-08-15 16:55 ` Tom Rini
2012-08-24 17:55 ` Tom Rini
2012-08-15 17:04 ` Stefano Babic
6 siblings, 1 reply; 40+ messages in thread
From: Tom Rini @ 2012-08-15 16:55 UTC (permalink / raw)
To: u-boot
On Fri, Aug 10, 2012 at 09:26:41AM +0200, Bastian Ruppert wrote:
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
For the series, I'm fine with the davinci side of the changes but want
Anatolij and Stefano to ack as well before I pull into u-boot-ti,
thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20120815/f1626906/attachment.pgp>
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables
2012-08-10 7:26 ` [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
@ 2012-08-15 17:03 ` Stefano Babic
0 siblings, 0 replies; 40+ messages in thread
From: Stefano Babic @ 2012-08-15 17:03 UTC (permalink / raw)
To: u-boot
On 10/08/2012 09:26, Bastian Ruppert wrote:
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> include/configs/ea20.h | 106 ++++++++++++++++++++++++++++++------------------
> 1 files changed, 66 insertions(+), 40 deletions(-)
>
> diff --git a/include/configs/ea20.h b/include/configs/ea20.h
> index f9a1462..373db74 100644
> --- a/include/configs/ea20.h
> +++ b/include/configs/ea20.h
> @@ -30,6 +30,7 @@
> #define CONFIG_USE_SPIFLASH
> #define CONFIG_SYS_USE_NAND
> #define CONFIG_DRIVER_TI_EMAC_USE_RMII
> +#define CONFIG_DRIVER_TI_EMAC_RMII_NONEG
> #define CONFIG_BOARD_EARLY_INIT_F
> #define CONFIG_BOARD_LATE_INIT
> #define CONFIG_VIDEO
> @@ -98,6 +99,7 @@
> * Network & Ethernet Configuration
> */
> #ifdef CONFIG_DRIVER_TI_EMAC
> +#define CONFIG_EMAC_MDIO_PHY_NUM 0
> #define CONFIG_MII
> #define CONFIG_BOOTP_DEFAULT
> #define CONFIG_BOOTP_DNS
> @@ -121,9 +123,11 @@
> #define CONFIG_VIDEO_DA8XX
> #define CONFIG_CFB_CONSOLE
> #define CONFIG_VGA_AS_SINGLE_DEVICE
> -#define CONFIG_SPLASH_SCREEN
> +#define CONFIG_SPLASH_SCREEN_ALIGN
> #define CONFIG_VIDEO_LOGO
> +#define CONFIG_SYS_CONSOLE_INFO_QUIET
> #define CONFIG_VIDEO_BMP_RLE8
> +#define CONFIG_VIDEO_BMP_LOGO
> #define CONFIG_CMD_BMP
> #define CONFIG_SYS_CONSOLE_IS_IN_ENV
> #define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
> @@ -197,6 +201,7 @@
>
> #define CONFIG_NAND_DAVINCI
> #define CONFIG_SYS_NAND_PAGE_2K
> +#define CONFIG_SYS_NAND_NO_SUBPAGE
> #define CONFIG_SYS_NAND_CS 2
> #define CONFIG_SYS_NAND_BASE DAVINCI_ASYNC_EMIF_DATA_CE2_BASE
> #undef CONFIG_SYS_NAND_HW_ECC
> @@ -235,31 +240,39 @@
> #define xstr(s) str(s)
> #define str(s) #s
>
> -
> #define CONFIG_HOSTNAME ea20
> -#define CONFIG_EXTRA_ENV_SETTINGS \
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> "as=3\0" \
> - "netdev=eth0\0" \
> + "netdev=eth0\0" \
> "nfsargs=setenv bootargs root=/dev/nfs rw " \
> "nfsroot=${serverip}:${rootpath}\0" \
> "rfsbargs=setenv bootargs root=/dev/nfs rw " \
> "nfsroot=${serverip}:${rfsbpath}\0" \
> - "ramargs=setenv bootargs root=/dev/ram rw\0" \
> - "mtdids=nand0=davinci_nand.0\0" \
> - "mtdparts=mtdparts=davinci_nand.0:8m(Settings),8m(aKernel)," \
> - "8m(bKernel),76m(aRootfs),76m(bRootfs),-(MassSD)\0" \
> + "testrfsargs=setenv bootargs root=/dev/nfs rw " \
> + "nfsroot=${serverip}:${testrfspath}\0" \
> + "ramargs=setenv bootargs root=/dev/ram rw initrd=" \
> + "0x${ramdisk_addr_r},4M\0" \
> + "mtdids=nand0=davinci_nand.0\0" \
> + "serverip=192.168.5.249\0" \
> + "ipaddr=192.168.5.248\0" \
> + "rootpath=/opt/eldk/arm\0" \
> + "splashpos=230,180\0" \
> + "testrfspath=/opt/eldk/test_arm\0" \
> + "tempmac=setenv ethaddr 02:ea:20:ff:ff:ff\0" \
> "nandargs=setenv bootargs rootfstype=ubifs ro chk_data_crc " \
> "ubi.mtd=${as} root=ubi0:rootfs\0" \
> + "nandrwargs=setenv bootargs rootfstype=ubifs rw chk_data_crc " \
> + "ubi.mtd=${as} root=ubi0:rootfs\0" \
> "addip_sta=setenv bootargs ${bootargs} " \
> "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
> ":${hostname}:${netdev}:off panic=1\0" \
> "addip_dyn=setenv bootargs ${bootargs} ip=dhcp\0" \
> - "addip=if test -n ${ipdyn};then run addip_dyn;" \
> + "addip=if test -n ${ipdyn};then run addip_dyn;" \
> "else run addip_sta;fi\0" \
> "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \
> "addtty=setenv bootargs ${bootargs}" \
> " console=${consoledev},${baudrate}n8\0" \
> - "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
> + "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
> "addmem=setenv bootargs ${bootargs} mem=${memory}\0" \
> "consoledev=ttyS0\0" \
> "loadaddr=c0000014\0" \
> @@ -267,44 +280,57 @@
> "kernel_addr_r=c0700000\0" \
> "hostname=" xstr(CONFIG_HOSTNAME) "\0" \
> "bootfile=" xstr(CONFIG_HOSTNAME) "/uImage\0" \
> - "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/uRamdisk\0" \
> + "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/image.ext2\0" \
> "flash_self=run ramargs addip addtty addmtd addmisc addmem;" \
> - "bootm ${kernel_addr} ${ramdisk_addr}\0" \
> + "bootm ${kernel_addr_r}\0" \
> "flash_nfs=run nfsargs addip addtty addmtd addmisc addmem;" \
> "bootm ${kernel_addr}\0" \
> - "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
> + "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
> "run nfsargs addip addtty addmtd addmisc addmem;" \
> - "bootm ${kernel_addr_r}\0" \
> - "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
> - "run rfsbargs addip addtty addmtd addmisc addmem; " \
> - "bootm ${kernel_addr_r}\0" \
> + "bootm ${kernel_addr_r}\0" \
> + "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
> + "run rfsbargs addip addtty addmtd addmisc addmem; " \
> + "bootm ${kernel_addr_r}\0" \
> + "net_testrfs=tftp ${kernel_addr_r} ${bootfile}; " \
> + "run testrfsargs addip addtty addmtd addmisc addmem; " \
> + "bootm ${kernel_addr_r}\0" \
> "net_self_load=tftp ${kernel_addr_r} ${bootfile};" \
> "tftp ${ramdisk_addr_r} ${ramdisk_file};\0" \
> - "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
> - "ubifsload ${kernel_addr_r} /boot/uImage;" \
> - "ubifsumount; run nandargs addip addtty " \
> - "addmtd addmisc addmem;bootm ${kernel_addr_r}\0" \
> - "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
> - "load_magic=if sf probe 0;then sf " \
> - "read c0000000 0x10000 0x60000;fi\0" \
> - "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
> - "if ubifsload c0000014 /boot/u-boot.bin;" \
> - "then mw c0000008 ${filesize};else echo Error reading " \
> - "u-boot from nand!;fi\0" \
> - "load_net=if sf probe 0;then sf read c0000000 0x10000 0x60000;" \
> - "tftp c0000014 ${u-boot};" \
> - "mw c0000008 ${filesize};" \
> - "fi\0" \
> - "upd=if sf probe 0;then sf erase 10000 60000;" \
> - "sf write c0000000 10000 60000;" \
> - "fi\0" \
> - "ubootupd_net=if run load_net;then echo Updating u-boot;" \
> - "if run upd; then echo U-Boot updated;" \
> + "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
> + "ubifsload ${kernel_addr_r} /boot/uImage;" \
> + "ubifsumount; run nandargs addip addtty " \
> + "addmtd addmisc addmem;clrlogo;" \
> + "bootm ${kernel_addr_r}\0" \
> + "nand_nandrw=ubi part nand0,${as};ubifsmount rootfs;" \
> + "ubifsload ${kernel_addr_r} /boot/uImage;" \
> + "ubifsumount; run nandrwargs addip addtty " \
> + "addmtd addmisc addmem;clrlogo;" \
> + "bootm ${kernel_addr_r}\0" \
> + "net_nandrw=tftp ${kernel_addr_r} ${bootfile}; run nandrwargs" \
> + " addip addtty addmtd addmisc addmem;" \
> + "clrlogo;bootm ${kernel_addr_r}\0" \
> + "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
> + "load_magic=if sf probe 0;then sf " \
> + "read c0000000 0x10000 0x60000;fi\0" \
> + "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
> + "if ubifsload c0000014 /boot/u-boot.bin;" \
> + "then mw c0000008 ${filesize};else echo Error reading" \
> + " u-boot from nand!;fi\0" \
> + "load_net=if sf probe 0;then sf read c0000000 0x10000 " \
> + "0x60000;tftp c0000014 ${u-boot};" \
> + "mw c0000008 ${filesize};fi\0" \
> + "upd=if sf probe 0;then sf erase 10000 60000;" \
> + "sf write c0000000 10000 60000;fi\0" \
> + "ublupdate=if tftp C0700000 ${ublname};then sf probe 0; " \
> + "sf erase 0 10000;" \
> + "sf write 0xc0700000 0 ${filesize};fi\0" \
> + "ubootupd_net=if run load_net;then echo Updating u-boot;" \
> + "if run upd; then echo U-Boot updated;" \
> "else echo Error updating u-boot !;" \
> "echo Board without bootloader !!;" \
> "fi;" \
> - "else echo U-Boot not downloaded..exiting;fi\0" \
> - "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
> - "bootcmd=run net_nfs\0"
> + "else echo U-Boot not downloaded..exiting;fi\0" \
> + "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
> + "bootcmd=run tempmac;run net_testrfs\0"
>
> #endif /* __CONFIG_H */
>
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-08-10 7:26 ` [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-08-15 17:04 ` Stefano Babic
0 siblings, 0 replies; 40+ messages in thread
From: Stefano Babic @ 2012-08-15 17:04 UTC (permalink / raw)
To: u-boot
On 10/08/2012 09:26, Bastian Ruppert wrote:
> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
> negotiation is enabled in RMII mode. Some boards based on da850 need
> to suppress this procedure.
>
> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
> CC: sbabic at denx.de
> CC: Tom Rini <trini@ti.com>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> ---
> drivers/net/davinci_emac.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
> index b2516d1..fe988d7 100644
> --- a/drivers/net/davinci_emac.c
> +++ b/drivers/net/davinci_emac.c
> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
> }
>
> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
> for (i = 0; i < num_phy; i++) {
> if (phy[i].is_phy_connected(i))
> phy[i].auto_negotiate(i);
>
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (5 preceding siblings ...)
2012-08-15 16:55 ` [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Tom Rini
@ 2012-08-15 17:04 ` Stefano Babic
6 siblings, 0 replies; 40+ messages in thread
From: Stefano Babic @ 2012-08-15 17:04 UTC (permalink / raw)
To: u-boot
On 10/08/2012 09:26, Bastian Ruppert wrote:
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> board/davinci/ea20/ea20.c | 23 +++++++++++++++--------
> 1 files changed, 15 insertions(+), 8 deletions(-)
>
> diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
> index 7e00040..69307e4 100644
> --- a/board/davinci/ea20/ea20.c
> +++ b/board/davinci/ea20/ea20.c
> @@ -176,6 +176,9 @@ int board_early_init_f(void)
> if (davinci_configure_pin_mux(gpio_pins, ARRAY_SIZE(gpio_pins)) != 0)
> return 1;
>
> + /* Set DISP_ON high to enable LCD output*/
> + gpio_direction_output(97, 1);
> +
> /* Set the RESETOUTn low */
> gpio_direction_output(111, 0);
>
> @@ -188,9 +191,6 @@ int board_early_init_f(void)
> /* Set LCD_B_PWR low to power down LCD Backlight*/
> gpio_direction_output(102, 0);
>
> - /* Set DISP_ON low to disable LCD output*/
> - gpio_direction_output(97, 0);
> -
> #ifndef CONFIG_USE_IRQ
> irq_init();
> #endif
> @@ -250,11 +250,6 @@ int board_early_init_f(void)
> writel(readl(&davinci_syscfg_regs->mstpri[2]) & 0x0fffffff,
> &davinci_syscfg_regs->mstpri[2]);
>
> - /* Set LCD_B_PWR low to power up LCD Backlight*/
> - gpio_set_value(102, 1);
> -
> - /* Set DISP_ON low to disable LCD output*/
> - gpio_set_value(97, 1);
>
> return 0;
> }
> @@ -276,6 +271,9 @@ int board_init(void)
>
> int board_late_init(void)
> {
> + unsigned char buf[2];
> + int ret;
> +
> /* PinMux for HALTEN */
> if (davinci_configure_pin_mux(halten_pin, ARRAY_SIZE(halten_pin)) != 0)
> return 1;
> @@ -285,6 +283,15 @@ int board_late_init(void)
>
> setenv("stdout", "serial");
>
> + /* Set fixed contrast settings for LCD via I2C potentiometer */
> + buf[0] = 0x00;
> + buf[1] = 0xd7;
> + ret = i2c_write(0x2e, 6, 1, buf, 2);
> + if (ret)
> + puts("\nContrast Settings FAILED\n");
> +
> + /* Set LCD_B_PWR high to power up LCD Backlight*/
> + gpio_set_value(102, 1);
> return 0;
> }
> #endif /* CONFIG_BOARD_LATE_INIT */
>
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line
2012-08-10 7:26 ` [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
@ 2012-08-15 17:04 ` Stefano Babic
0 siblings, 0 replies; 40+ messages in thread
From: Stefano Babic @ 2012-08-15 17:04 UTC (permalink / raw)
To: u-boot
On 10/08/2012 09:26, Bastian Ruppert wrote:
> Do not allow to overwrite it when video is enabled.
>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
2012-08-15 16:55 ` [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Tom Rini
@ 2012-08-24 17:55 ` Tom Rini
2012-09-07 4:48 ` Bastian.Ruppert at sewerin.de
0 siblings, 1 reply; 40+ messages in thread
From: Tom Rini @ 2012-08-24 17:55 UTC (permalink / raw)
To: u-boot
On Wed, Aug 15, 2012 at 09:55:40AM -0700, Tom Rini wrote:
> On Fri, Aug 10, 2012 at 09:26:41AM +0200, Bastian Ruppert wrote:
>
> > Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> > CC: Tom Rini <trini@ti.com>
> > CC: Stefano Babic <sbabic@denx.de>
>
> For the series, I'm fine with the davinci side of the changes but want
> Anatolij and Stefano to ack as well before I pull into u-boot-ti,
> thanks!
Still waiting for Anatolij (thanks Stefano!) before I take this, FYI.
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20120824/eec05d1b/attachment.pgp>
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v2 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-08-10 7:26 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
@ 2012-09-01 22:29 ` Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
` (6 more replies)
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
1 sibling, 7 replies; 40+ messages in thread
From: Anatolij Gustschin @ 2012-09-01 22:29 UTC (permalink / raw)
To: u-boot
From: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
Extend the driver for placing the video/bmp logo as specified
by "splashpos" environment variable.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
v2:
- remove some ifdefs
- revise commit log
- adjust video_logo_height by video_logo_ypos and thus
fix return address for video console offset
- add BMP_ALIGN_CENTER case to logo_plot() for proper logo
offset calculation if "m" specifier is used in splashpos
drivers/video/cfb_console.c | 88 ++++++++++++++++++++++++++++++------------
1 files changed, 63 insertions(+), 25 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 19d061f..81e5e08 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -66,7 +66,11 @@
* CONFIG_CONSOLE_TIME - display time/date in upper right
* corner, needs CONFIG_CMD_DATE and
* CONFIG_CONSOLE_CURSOR
- * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
+ * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
+ * Use CONFIG_SPLASH_SCREEN_ALIGN with
+ * environment variable "splashpos" to place
+ * the logo on other position. In this case
+ * no CONSOLE_EXTRA_INFO is possible.
* CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
* CONFIG_CONSOLE_EXTRA_INFO - display additional board information
* strings that normaly goes to serial
@@ -369,6 +373,8 @@ static void *video_fb_address; /* frame buffer address */
static void *video_console_address; /* console buffer start address */
static int video_logo_height = VIDEO_LOGO_HEIGHT;
+static int video_logo_xpos;
+static int video_logo_ypos;
static int __maybe_unused cursor_state;
static int __maybe_unused old_col;
@@ -1488,8 +1494,21 @@ void logo_plot(void *screen, int width, int x, int y)
int ycount = video_logo_height;
unsigned char r, g, b, *logo_red, *logo_blue, *logo_green;
unsigned char *source;
- unsigned char *dest = (unsigned char *) screen +
- ((y * width * VIDEO_PIXEL_SIZE) + x * VIDEO_PIXEL_SIZE);
+ unsigned char *dest;
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ if (x == BMP_ALIGN_CENTER)
+ x = max(0, (VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH) / 2);
+ else if (x < 0)
+ x = max(0, VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH + x + 1);
+
+ if (y == BMP_ALIGN_CENTER)
+ y = max(0, (VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT) / 2);
+ else if (y < 0)
+ y = max(0, VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT + y + 1);
+#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
+
+ dest = (unsigned char *)screen + (y * width + x) * VIDEO_PIXEL_SIZE;
#ifdef CONFIG_VIDEO_BMP_LOGO
source = bmp_logo_bitmap;
@@ -1592,42 +1611,61 @@ static void *video_logo(void)
char info[128];
int space, len;
__maybe_unused int y_off = 0;
+ __maybe_unused ulong addr;
+ __maybe_unused char *s;
-#ifdef CONFIG_SPLASH_SCREEN
- char *s;
- ulong addr;
-
- s = getenv("splashimage");
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ s = getenv("splashpos");
if (s != NULL) {
- int x = 0, y = 0;
+ if (s[0] == 'm')
+ video_logo_xpos = BMP_ALIGN_CENTER;
+ else
+ video_logo_xpos = simple_strtol(s, NULL, 0);
- addr = simple_strtoul(s, NULL, 16);
-#ifdef CONFIG_SPLASH_SCREEN_ALIGN
- s = getenv("splashpos");
+ s = strchr(s + 1, ',');
if (s != NULL) {
- if (s[0] == 'm')
- x = BMP_ALIGN_CENTER;
+ if (s[1] == 'm')
+ video_logo_ypos = BMP_ALIGN_CENTER;
else
- x = simple_strtol(s, NULL, 0);
-
- s = strchr(s + 1, ',');
- if (s != NULL) {
- if (s[1] == 'm')
- y = BMP_ALIGN_CENTER;
- else
- y = simple_strtol(s + 1, NULL, 0);
- }
+ video_logo_ypos = simple_strtol(s + 1, NULL, 0);
}
+ }
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
- if (video_display_bitmap(addr, x, y) == 0) {
+#ifdef CONFIG_SPLASH_SCREEN
+ s = getenv("splashimage");
+ if (s != NULL) {
+
+ addr = simple_strtoul(s, NULL, 16);
+
+
+ if (video_display_bitmap(addr,
+ video_logo_xpos,
+ video_logo_ypos) == 0) {
video_logo_height = 0;
return ((void *) (video_fb_address));
}
}
#endif /* CONFIG_SPLASH_SCREEN */
- logo_plot(video_fb_address, VIDEO_COLS, 0, 0);
+ logo_plot(video_fb_address, VIDEO_COLS,
+ video_logo_xpos, video_logo_ypos);
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ /*
+ * when using splashpos for video_logo, skip any info
+ * output on video console if the logo is not@0,0
+ */
+ if (video_logo_xpos || video_logo_ypos) {
+ /*
+ * video_logo_height is used in text and cursor offset
+ * calculations. Since the console is below the logo,
+ * we need to adjust the logo height
+ */
+ video_logo_height += video_logo_ypos;
+ return video_fb_address + video_logo_height * VIDEO_LINE_LEN;
+ }
+#endif
sprintf(info, " %s", version_string);
--
1.7.1
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-08-10 7:26 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
@ 2012-09-01 22:50 ` Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
` (6 more replies)
1 sibling, 7 replies; 40+ messages in thread
From: Anatolij Gustschin @ 2012-09-01 22:50 UTC (permalink / raw)
To: u-boot
Hi Bastian,
there is a number of issues with this patch, please see comments
below.
On Fri, 10 Aug 2012 09:26:43 +0200
Bastian Ruppert <Bastian.Ruppert@Sewerin.de> wrote:
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Anatolij Gustschin <agust@denx.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> drivers/video/cfb_console.c | 61 ++++++++++++++++++++++++++++---------------
> 1 files changed, 40 insertions(+), 21 deletions(-)
>
> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
> index 19d061f..21b52bd 100644
> --- a/drivers/video/cfb_console.c
> +++ b/drivers/video/cfb_console.c
> @@ -66,7 +66,11 @@
> * CONFIG_CONSOLE_TIME - display time/date in upper right
> * corner, needs CONFIG_CMD_DATE and
> * CONFIG_CONSOLE_CURSOR
> - * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
> + * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
> + * Use CONFIG_SPLASH_SCREEN_ALIGN with
> + * environment variable "splashpos" to place
> + * the logo on other position. In this case
> + * no CONSOLE_EXTRA_INFO is possible.
> * CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
> * CONFIG_CONSOLE_EXTRA_INFO - display additional board information
> * strings that normaly goes to serial
> @@ -369,6 +373,8 @@ static void *video_fb_address; /* frame buffer address */
> static void *video_console_address; /* console buffer start address */
>
> static int video_logo_height = VIDEO_LOGO_HEIGHT;
> +static int video_logo_xpos;
> +static int video_logo_ypos;
>
> static int __maybe_unused cursor_state;
> static int __maybe_unused old_col;
> @@ -1594,40 +1600,53 @@ static void *video_logo(void)
> __maybe_unused int y_off = 0;
>
> #ifdef CONFIG_SPLASH_SCREEN
> - char *s;
> ulong addr;
> -
> - s = getenv("splashimage");
> +#endif
> +#if defined(CONFIG_SPLASH_SCREEN) || defined(CONFIG_SPLASH_SCREEN_ALIGN)
> + char *s;
> +#endif
these ifdefs should be better reduced, I think we can use __maybe_unused
here, like for y_off above.
> +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> + s = getenv("splashpos");
> if (s != NULL) {
> - int x = 0, y = 0;
> + if (s[0] == 'm')
> + video_logo_xpos = BMP_ALIGN_CENTER;
The 'm' case will work with splashscreen, but not with the video logo.
There is no proper offset calculation in logo_plot() if xpos or ypos
are set to BMP_ALIGN_CENTER. As a result the logo offset will be wrong
and an access to wrong offset can even brick the board (on boards with
small frame buffers).
...
> +
> + if (video_display_bitmap(addr, \
> + video_logo_xpos, \
no need to use "\" here.
...
> + logo_plot(video_fb_address, \
> + VIDEO_COLS, \
> + video_logo_xpos, \
ditto.
...
> +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> + /* when using splashpos for video_logo, no console output */
> + return (video_fb_address + video_logo_height * VIDEO_LINE_LEN);
The returned address is used as text console offset, so if the logo is
moved down, the video_logo_height should be increased by video_logo_ypos.
Otherwise the text and cursor positions will be wrong in the video
console.
I've fixed these issues and submitted a patch v2 3/6. Please test.
Thanks,
Anatolij
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
@ 2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-14 8:28 ` [U-Boot] [PATCH v4 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (5 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian.Ruppert at sewerin.de @ 2012-09-05 10:52 UTC (permalink / raw)
To: u-boot
> Hi Bastian,
Hello Anatolij,
>
> there is a number of issues with this patch, please see comments
> below.
>
> On Fri, 10 Aug 2012 09:26:43 +0200
> Bastian Ruppert <Bastian.Ruppert@Sewerin.de> wrote:
>
> > Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> > CC: Anatolij Gustschin <agust@denx.de>
> > CC: Tom Rini <trini@ti.com>
> > CC: Stefano Babic <sbabic@denx.de>
> > ---
> > drivers/video/cfb_console.c | 61 +++++++++++++++++++++++++++
> +---------------
> > 1 files changed, 40 insertions(+), 21 deletions(-)
> >
> > diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
> > index 19d061f..21b52bd 100644
> > --- a/drivers/video/cfb_console.c
> > +++ b/drivers/video/cfb_console.c
> > @@ -66,7 +66,11 @@
> > * CONFIG_CONSOLE_TIME - display time/date in upper right
> > * corner, needs CONFIG_CMD_DATE and
> > * CONFIG_CONSOLE_CURSOR
> > - * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
> > + * CONFIG_VIDEO_LOGO - display Linux Logo in upper left
corner.
> > + * Use CONFIG_SPLASH_SCREEN_ALIGN with
> > + * environment variable "splashpos" to place
> > + * the logo on other position. In this case
> > + * no CONSOLE_EXTRA_INFO is possible.
> > * CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
> > * CONFIG_CONSOLE_EXTRA_INFO - display additional board information
> > * strings that normaly goes to serial
> > @@ -369,6 +373,8 @@ static void *video_fb_address; /* frame
> buffer address */
> > static void *video_console_address; /* console buffer start address
*/
> >
> > static int video_logo_height = VIDEO_LOGO_HEIGHT;
> > +static int video_logo_xpos;
> > +static int video_logo_ypos;
> >
> > static int __maybe_unused cursor_state;
> > static int __maybe_unused old_col;
> > @@ -1594,40 +1600,53 @@ static void *video_logo(void)
> > __maybe_unused int y_off = 0;
> >
> > #ifdef CONFIG_SPLASH_SCREEN
> > - char *s;
> > ulong addr;
> > -
> > - s = getenv("splashimage");
> > +#endif
> > +#if defined(CONFIG_SPLASH_SCREEN) || defined
(CONFIG_SPLASH_SCREEN_ALIGN)
> > + char *s;
> > +#endif
>
> these ifdefs should be better reduced, I think we can use __maybe_unused
> here, like for y_off above.
OK.
> > +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> > + s = getenv("splashpos");
> > if (s != NULL) {
> > - int x = 0, y = 0;
> > + if (s[0] == 'm')
> > + video_logo_xpos = BMP_ALIGN_CENTER;
>
> The 'm' case will work with splashscreen, but not with the video logo.
> There is no proper offset calculation in logo_plot() if xpos or ypos
> are set to BMP_ALIGN_CENTER. As a result the logo offset will be wrong
> and an access to wrong offset can even brick the board (on boards with
> small frame buffers).
>
> ...
> > +
> > + if (video_display_bitmap(addr, \
> > + video_logo_xpos, \
>
> no need to use "\" here.
>
> ...
> > + logo_plot(video_fb_address, \
> > + VIDEO_COLS, \
> > + video_logo_xpos, \
>
> ditto.
>
> ...
OK.
> > +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> > + /* when using splashpos for video_logo, no console output */
> > + return (video_fb_address + video_logo_height * VIDEO_LINE_LEN);
>
> The returned address is used as text console offset, so if the logo is
> moved down, the video_logo_height should be increased by video_logo_ypos.
> Otherwise the text and cursor positions will be wrong in the video
> console.
>
> I've fixed these issues and submitted a patch v2 3/6. Please test.
>
> Thanks,
>
> Anatolij
Thank you for your effort,
Bastian.
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v2 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
@ 2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-05 11:11 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
` (5 subsequent siblings)
6 siblings, 1 reply; 40+ messages in thread
From: Bastian.Ruppert at sewerin.de @ 2012-09-05 10:52 UTC (permalink / raw)
To: u-boot
Hello Anatolij,
> [U-Boot] [PATCH v2 3/6] video: cfb_console: logo can be positioned
> via the splashpos variable
>
> From: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
>
> Extend the driver for placing the video/bmp logo as specified
> by "splashpos" environment variable.
>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> Signed-off-by: Anatolij Gustschin <agust@denx.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> v2:
> - remove some ifdefs
> - revise commit log
> - adjust video_logo_height by video_logo_ypos and thus
> fix return address for video console offset
> - add BMP_ALIGN_CENTER case to logo_plot() for proper logo
> offset calculation if "m" specifier is used in splashpos
>
> drivers/video/cfb_console.c | 88 +++++++++++++++++++++++++++++
+------------
> 1 files changed, 63 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
> index 19d061f..81e5e08 100644
> --- a/drivers/video/cfb_console.c
> +++ b/drivers/video/cfb_console.c
> @@ -66,7 +66,11 @@
> * CONFIG_CONSOLE_TIME - display time/date in upper right
> * corner, needs CONFIG_CMD_DATE and
> * CONFIG_CONSOLE_CURSOR
> - * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
> + * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
> + * Use CONFIG_SPLASH_SCREEN_ALIGN with
> + * environment variable "splashpos" to place
> + * the logo on other position. In this case
> + * no CONSOLE_EXTRA_INFO is possible.
> * CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
> * CONFIG_CONSOLE_EXTRA_INFO - display additional board information
> * strings that normaly goes to serial
> @@ -369,6 +373,8 @@ static void *video_fb_address; /* frame
bufferaddress */
> static void *video_console_address; /* console buffer start address */
>
> static int video_logo_height = VIDEO_LOGO_HEIGHT;
> +static int video_logo_xpos;
> +static int video_logo_ypos;
>
> static int __maybe_unused cursor_state;
> static int __maybe_unused old_col;
> @@ -1488,8 +1494,21 @@ void logo_plot(void *screen, int width, int x, int
y)
> int ycount = video_logo_height;
> unsigned char r, g, b, *logo_red, *logo_blue, *logo_green;
> unsigned char *source;
> - unsigned char *dest = (unsigned char *) screen +
> - ((y * width * VIDEO_PIXEL_SIZE) + x * VIDEO_PIXEL_SIZE);
> + unsigned char *dest;
> +
> +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> + if (x == BMP_ALIGN_CENTER)
> + x = max(0, (VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH) / 2);
> + else if (x < 0)
> + x = max(0, VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH + x + 1);
> +
> + if (y == BMP_ALIGN_CENTER)
> + y = max(0, (VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT) / 2);
> + else if (y < 0)
> + y = max(0, VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT + y + 1);
> +#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
> +
> + dest = (unsigned char *)screen + (y * width + x) * VIDEO_PIXEL_SIZE;
>
> #ifdef CONFIG_VIDEO_BMP_LOGO
> source = bmp_logo_bitmap;
> @@ -1592,42 +1611,61 @@ static void *video_logo(void)
> char info[128];
> int space, len;
> __maybe_unused int y_off = 0;
> + __maybe_unused ulong addr;
> + __maybe_unused char *s;
>
> -#ifdef CONFIG_SPLASH_SCREEN
> - char *s;
> - ulong addr;
> -
> - s = getenv("splashimage");
> +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> + s = getenv("splashpos");
> if (s != NULL) {
> - int x = 0, y = 0;
> + if (s[0] == 'm')
> + video_logo_xpos = BMP_ALIGN_CENTER;
> + else
> + video_logo_xpos = simple_strtol(s, NULL, 0);
>
> - addr = simple_strtoul(s, NULL, 16);
> -#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> - s = getenv("splashpos");
> + s = strchr(s + 1, ',');
> if (s != NULL) {
> - if (s[0] == 'm')
> - x = BMP_ALIGN_CENTER;
> + if (s[1] == 'm')
> + video_logo_ypos = BMP_ALIGN_CENTER;
> else
> - x = simple_strtol(s, NULL, 0);
> -
> - s = strchr(s + 1, ',');
> - if (s != NULL) {
> - if (s[1] == 'm')
> - y = BMP_ALIGN_CENTER;
> - else
> - y = simple_strtol(s + 1, NULL, 0);
> - }
> + video_logo_ypos = simple_strtol(s + 1, NULL, 0);
> }
> + }
> #endif /* CONFIG_SPLASH_SCREEN_ALIGN */
>
> - if (video_display_bitmap(addr, x, y) == 0) {
> +#ifdef CONFIG_SPLASH_SCREEN
> + s = getenv("splashimage");
> + if (s != NULL) {
> +
> + addr = simple_strtoul(s, NULL, 16);
> +
> +
> + if (video_display_bitmap(addr,
> + video_logo_xpos,
> + video_logo_ypos) == 0) {
> video_logo_height = 0;
> return ((void *) (video_fb_address));
> }
> }
> #endif /* CONFIG_SPLASH_SCREEN */
>
> - logo_plot(video_fb_address, VIDEO_COLS, 0, 0);
> + logo_plot(video_fb_address, VIDEO_COLS,
> + video_logo_xpos, video_logo_ypos);
> +
> +#ifdef CONFIG_SPLASH_SCREEN_ALIGN
> + /*
> + * when using splashpos for video_logo, skip any info
> + * output on video console if the logo is not at 0,0
> + */
> + if (video_logo_xpos || video_logo_ypos) {
> + /*
> + * video_logo_height is used in text and cursor offset
> + * calculations. Since the console is below the logo,
> + * we need to adjust the logo height
> + */
> + video_logo_height += video_logo_ypos;
> + return video_fb_address + video_logo_height * VIDEO_LINE_LEN;
> + }
> +#endif
I have some trouble with this version when using splashpos = m,m .
In this case video_logo_ypos is 32767 (BMP_ALIGN_CENTER) here.
Following extension isworking for me:
#ifdef CONFIG_SPLASH_SCREEN_ALIGN
/*
* when using splashpos for video_logo, skip any info
* output on video console if the logo is not at 0,0
*/
if (video_logo_xpos || video_logo_ypos) {
/*
* video_logo_height is used in text and cursor offset
* calculations. Since the console is below the logo,
* we need to adjust the logo height
*/
if (video_logo_ypos == BMP_ALIGN_CENTER)
video_logo_height += max(0, (VIDEO_VISIBLE_ROWS - \
VIDEO_LOGO_HEIGHT) /
2);
else if (video_logo_ypos >= 0)
video_logo_height += video_logo_ypos;
return video_fb_address + video_logo_height *
VIDEO_LINE_LEN;
}
#endif
Should i post a version 3 for this patch?
>
> sprintf(info, " %s", version_string);
>
> --
> 1.7.1
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
Regards,
Bastian.
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v2 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
@ 2012-09-05 11:11 ` Anatolij Gustschin
0 siblings, 0 replies; 40+ messages in thread
From: Anatolij Gustschin @ 2012-09-05 11:11 UTC (permalink / raw)
To: u-boot
Hello Bastian,
On Wed, 5 Sep 2012 12:52:59 +0200
Bastian.Ruppert at sewerin.de wrote:
...
> > + video_logo_height += video_logo_ypos;
> > + return video_fb_address + video_logo_height * VIDEO_LINE_LEN;
> > + }
> > +#endif
>
> I have some trouble with this version when using splashpos = m,m .
> In this case video_logo_ypos is 32767 (BMP_ALIGN_CENTER) here.
> Following extension isworking for me:
Ah, indeed. Thanks for testing and catching it.
> #ifdef CONFIG_SPLASH_SCREEN_ALIGN
> /*
> * when using splashpos for video_logo, skip any info
> * output on video console if the logo is not at 0,0
> */
> if (video_logo_xpos || video_logo_ypos) {
> /*
> * video_logo_height is used in text and cursor offset
> * calculations. Since the console is below the logo,
> * we need to adjust the logo height
> */
> if (video_logo_ypos == BMP_ALIGN_CENTER)
> video_logo_height += max(0, (VIDEO_VISIBLE_ROWS - \
> VIDEO_LOGO_HEIGHT) /
> 2);
> else if (video_logo_ypos >= 0)
> video_logo_height += video_logo_ypos;
OK. But please use
else if (video_logo_ypos > 0)
video_logo_height += video_logo_ypos;
...
> Should i post a version 3 for this patch?
Yes, please.
Thanks,
Anatolij
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 1/6] davinci: ea20: reorganisation LCD startup
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
@ 2012-09-06 6:07 ` Bastian Ruppert
2012-09-06 6:07 ` [U-Boot] [PATCH v3 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
` (4 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 7e00040..69307e4 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -176,6 +176,9 @@ int board_early_init_f(void)
if (davinci_configure_pin_mux(gpio_pins, ARRAY_SIZE(gpio_pins)) != 0)
return 1;
+ /* Set DISP_ON high to enable LCD output*/
+ gpio_direction_output(97, 1);
+
/* Set the RESETOUTn low */
gpio_direction_output(111, 0);
@@ -188,9 +191,6 @@ int board_early_init_f(void)
/* Set LCD_B_PWR low to power down LCD Backlight*/
gpio_direction_output(102, 0);
- /* Set DISP_ON low to disable LCD output*/
- gpio_direction_output(97, 0);
-
#ifndef CONFIG_USE_IRQ
irq_init();
#endif
@@ -250,11 +250,6 @@ int board_early_init_f(void)
writel(readl(&davinci_syscfg_regs->mstpri[2]) & 0x0fffffff,
&davinci_syscfg_regs->mstpri[2]);
- /* Set LCD_B_PWR low to power up LCD Backlight*/
- gpio_set_value(102, 1);
-
- /* Set DISP_ON low to disable LCD output*/
- gpio_set_value(97, 1);
return 0;
}
@@ -276,6 +271,9 @@ int board_init(void)
int board_late_init(void)
{
+ unsigned char buf[2];
+ int ret;
+
/* PinMux for HALTEN */
if (davinci_configure_pin_mux(halten_pin, ARRAY_SIZE(halten_pin)) != 0)
return 1;
@@ -285,6 +283,15 @@ int board_late_init(void)
setenv("stdout", "serial");
+ /* Set fixed contrast settings for LCD via I2C potentiometer */
+ buf[0] = 0x00;
+ buf[1] = 0xd7;
+ ret = i2c_write(0x2e, 6, 1, buf, 2);
+ if (ret)
+ puts("\nContrast Settings FAILED\n");
+
+ /* Set LCD_B_PWR high to power up LCD Backlight*/
+ gpio_set_value(102, 1);
return 0;
}
#endif /* CONFIG_BOARD_LATE_INIT */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 2/6] davinci: ea20: the console is always set to the serial line
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-06 6:07 ` [U-Boot] [PATCH v3 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
@ 2012-09-06 6:07 ` Bastian Ruppert
2012-09-06 6:07 ` [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
` (3 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
Do not allow to overwrite it when video is enabled.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 11 +++++++++--
include/configs/ea20.h | 2 ++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 69307e4..0edd910 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -254,6 +254,15 @@ int board_early_init_f(void)
return 0;
}
+/*
+ * Do not overwrite the console
+ * Use always serial for U-Boot console
+ */
+int overwrite_console(void)
+{
+ return 1;
+}
+
int board_init(void)
{
/* arch number of the board */
@@ -281,8 +290,6 @@ int board_late_init(void)
/* Set HALTEN to high */
gpio_direction_output(134, 1);
- setenv("stdout", "serial");
-
/* Set fixed contrast settings for LCD via I2C potentiometer */
buf[0] = 0x00;
buf[1] = 0xd7;
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index a9caa81..f9a1462 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -125,6 +125,8 @@
#define CONFIG_VIDEO_LOGO
#define CONFIG_VIDEO_BMP_RLE8
#define CONFIG_CMD_BMP
+#define CONFIG_SYS_CONSOLE_IS_IN_ENV
+#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
#endif
/*
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
` (2 preceding siblings ...)
2012-09-06 6:07 ` [U-Boot] [PATCH v3 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
@ 2012-09-06 6:07 ` Bastian Ruppert
2012-09-06 18:55 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
` (2 subsequent siblings)
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
Extend the driver for placing the video/bmp logo as specified
by "splashpos" environment variable.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
v3:
- logo offset calculation is no longer based on BMP_ALIGN_CENTER
if "m" specifier is used in splashpos
v2:
- remove some ifdefs
- revise commit log
- adjust video_logo_height by video_logo_ypos and thus
fix return address for video console offset
- add BMP_ALIGN_CENTER case to logo_plot() for proper logo
offset calculation if "m" specifier is used in splashpos
---
drivers/video/cfb_console.c | 93 +++++++++++++++++++++++++++++++-----------
1 files changed, 68 insertions(+), 25 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 19d061f..3ae420b 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -66,7 +66,11 @@
* CONFIG_CONSOLE_TIME - display time/date in upper right
* corner, needs CONFIG_CMD_DATE and
* CONFIG_CONSOLE_CURSOR
- * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
+ * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
+ * Use CONFIG_SPLASH_SCREEN_ALIGN with
+ * environment variable "splashpos" to place
+ * the logo on other position. In this case
+ * no CONSOLE_EXTRA_INFO is possible.
* CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
* CONFIG_CONSOLE_EXTRA_INFO - display additional board information
* strings that normaly goes to serial
@@ -369,6 +373,8 @@ static void *video_fb_address; /* frame buffer address */
static void *video_console_address; /* console buffer start address */
static int video_logo_height = VIDEO_LOGO_HEIGHT;
+static int video_logo_xpos;
+static int video_logo_ypos;
static int __maybe_unused cursor_state;
static int __maybe_unused old_col;
@@ -1488,8 +1494,21 @@ void logo_plot(void *screen, int width, int x, int y)
int ycount = video_logo_height;
unsigned char r, g, b, *logo_red, *logo_blue, *logo_green;
unsigned char *source;
- unsigned char *dest = (unsigned char *) screen +
- ((y * width * VIDEO_PIXEL_SIZE) + x * VIDEO_PIXEL_SIZE);
+ unsigned char *dest;
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ if (x == BMP_ALIGN_CENTER)
+ x = max(0, (VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH) / 2);
+ else if (x < 0)
+ x = max(0, VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH + x + 1);
+
+ if (y == BMP_ALIGN_CENTER)
+ y = max(0, (VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT) / 2);
+ else if (y < 0)
+ y = max(0, VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT + y + 1);
+#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
+
+ dest = (unsigned char *)screen + (y * width + x) * VIDEO_PIXEL_SIZE;
#ifdef CONFIG_VIDEO_BMP_LOGO
source = bmp_logo_bitmap;
@@ -1592,42 +1611,66 @@ static void *video_logo(void)
char info[128];
int space, len;
__maybe_unused int y_off = 0;
+ __maybe_unused ulong addr;
+ __maybe_unused char *s;
-#ifdef CONFIG_SPLASH_SCREEN
- char *s;
- ulong addr;
-
- s = getenv("splashimage");
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ s = getenv("splashpos");
if (s != NULL) {
- int x = 0, y = 0;
+ if (s[0] == 'm')
+ video_logo_xpos = BMP_ALIGN_CENTER;
+ else
+ video_logo_xpos = simple_strtol(s, NULL, 0);
- addr = simple_strtoul(s, NULL, 16);
-#ifdef CONFIG_SPLASH_SCREEN_ALIGN
- s = getenv("splashpos");
+ s = strchr(s + 1, ',');
if (s != NULL) {
- if (s[0] == 'm')
- x = BMP_ALIGN_CENTER;
+ if (s[1] == 'm')
+ video_logo_ypos = BMP_ALIGN_CENTER;
else
- x = simple_strtol(s, NULL, 0);
-
- s = strchr(s + 1, ',');
- if (s != NULL) {
- if (s[1] == 'm')
- y = BMP_ALIGN_CENTER;
- else
- y = simple_strtol(s + 1, NULL, 0);
- }
+ video_logo_ypos = simple_strtol(s + 1, NULL, 0);
}
+ }
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
- if (video_display_bitmap(addr, x, y) == 0) {
+#ifdef CONFIG_SPLASH_SCREEN
+ s = getenv("splashimage");
+ if (s != NULL) {
+
+ addr = simple_strtoul(s, NULL, 16);
+
+
+ if (video_display_bitmap(addr,
+ video_logo_xpos,
+ video_logo_ypos) == 0) {
video_logo_height = 0;
return ((void *) (video_fb_address));
}
}
#endif /* CONFIG_SPLASH_SCREEN */
- logo_plot(video_fb_address, VIDEO_COLS, 0, 0);
+ logo_plot(video_fb_address, VIDEO_COLS,
+ video_logo_xpos, video_logo_ypos);
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ /*
+ * when using splashpos for video_logo, skip any info
+ * output on video console if the logo is not@0,0
+ */
+ if (video_logo_xpos || video_logo_ypos) {
+ /*
+ * video_logo_height is used in text and cursor offset
+ * calculations. Since the console is below the logo,
+ * we need to adjust the logo height
+ */
+ if (video_logo_ypos == BMP_ALIGN_CENTER)
+ video_logo_height += max(0, (VIDEO_VISIBLE_ROWS - \
+ VIDEO_LOGO_HEIGHT) / 2);
+ else if (video_logo_ypos > 0)
+ video_logo_height += video_logo_ypos;
+
+ return video_fb_address + video_logo_height * VIDEO_LINE_LEN;
+ }
+#endif
sprintf(info, " %s", version_string);
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
` (3 preceding siblings ...)
2012-09-06 6:07 ` [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
@ 2012-09-06 6:07 ` Bastian Ruppert
2012-09-06 18:56 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
2012-09-06 6:07 ` [U-Boot] [PATCH v3 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
drivers/video/cfb_console.c | 46 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 42 insertions(+), 4 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 3ae420b..c3e36c4 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1486,7 +1486,39 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
#ifdef CONFIG_VIDEO_LOGO
-void logo_plot(void *screen, int width, int x, int y)
+static void plot_logo_or_black(void *screen, int width, int x, int y, \
+ int black);
+
+static void logo_plot(void *screen, int width, int x, int y)
+{
+ plot_logo_or_black(screen, width, x, y, 0);
+}
+
+static void logo_black(void)
+{
+ plot_logo_or_black(video_fb_address, \
+ VIDEO_COLS, \
+ video_logo_xpos, \
+ video_logo_ypos, \
+ 1);
+}
+
+static int do_clrlogo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ if (argc != 1)
+ return cmd_usage(cmdtp);
+
+ logo_black();
+ return 0;
+}
+
+U_BOOT_CMD(
+ clrlogo, 1, 0, do_clrlogo,
+ "fill the boot logo area with black",
+ " "
+ );
+
+static void plot_logo_or_black(void *screen, int width, int x, int y, int black)
{
int xcount, i;
@@ -1544,9 +1576,15 @@ void logo_plot(void *screen, int width, int x, int y)
#endif
xcount = VIDEO_LOGO_WIDTH;
while (xcount--) {
- r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
- g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
- b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ if (black) {
+ r = 0x00;
+ g = 0x00;
+ b = 0x00;
+ } else {
+ r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
+ g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
+ b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ }
switch (VIDEO_DATA_FORMAT) {
case GDF__8BIT_INDEX:
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
` (4 preceding siblings ...)
2012-09-06 6:07 ` [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
@ 2012-09-06 6:07 ` Bastian Ruppert
2012-09-07 8:08 ` Prabhakar Lad
2012-09-06 6:07 ` [U-Boot] [PATCH v3 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 6/6] davinci: ea20: add some configs and default environmet variables
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
` (5 preceding siblings ...)
2012-09-06 6:07 ` [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-09-06 6:07 ` Bastian Ruppert
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-06 6:07 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
include/configs/ea20.h | 106 ++++++++++++++++++++++++++++++------------------
1 files changed, 66 insertions(+), 40 deletions(-)
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index f9a1462..373db74 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -30,6 +30,7 @@
#define CONFIG_USE_SPIFLASH
#define CONFIG_SYS_USE_NAND
#define CONFIG_DRIVER_TI_EMAC_USE_RMII
+#define CONFIG_DRIVER_TI_EMAC_RMII_NONEG
#define CONFIG_BOARD_EARLY_INIT_F
#define CONFIG_BOARD_LATE_INIT
#define CONFIG_VIDEO
@@ -98,6 +99,7 @@
* Network & Ethernet Configuration
*/
#ifdef CONFIG_DRIVER_TI_EMAC
+#define CONFIG_EMAC_MDIO_PHY_NUM 0
#define CONFIG_MII
#define CONFIG_BOOTP_DEFAULT
#define CONFIG_BOOTP_DNS
@@ -121,9 +123,11 @@
#define CONFIG_VIDEO_DA8XX
#define CONFIG_CFB_CONSOLE
#define CONFIG_VGA_AS_SINGLE_DEVICE
-#define CONFIG_SPLASH_SCREEN
+#define CONFIG_SPLASH_SCREEN_ALIGN
#define CONFIG_VIDEO_LOGO
+#define CONFIG_SYS_CONSOLE_INFO_QUIET
#define CONFIG_VIDEO_BMP_RLE8
+#define CONFIG_VIDEO_BMP_LOGO
#define CONFIG_CMD_BMP
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
@@ -197,6 +201,7 @@
#define CONFIG_NAND_DAVINCI
#define CONFIG_SYS_NAND_PAGE_2K
+#define CONFIG_SYS_NAND_NO_SUBPAGE
#define CONFIG_SYS_NAND_CS 2
#define CONFIG_SYS_NAND_BASE DAVINCI_ASYNC_EMIF_DATA_CE2_BASE
#undef CONFIG_SYS_NAND_HW_ECC
@@ -235,31 +240,39 @@
#define xstr(s) str(s)
#define str(s) #s
-
#define CONFIG_HOSTNAME ea20
-#define CONFIG_EXTRA_ENV_SETTINGS \
+#define CONFIG_EXTRA_ENV_SETTINGS \
"as=3\0" \
- "netdev=eth0\0" \
+ "netdev=eth0\0" \
"nfsargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rootpath}\0" \
"rfsbargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rfsbpath}\0" \
- "ramargs=setenv bootargs root=/dev/ram rw\0" \
- "mtdids=nand0=davinci_nand.0\0" \
- "mtdparts=mtdparts=davinci_nand.0:8m(Settings),8m(aKernel)," \
- "8m(bKernel),76m(aRootfs),76m(bRootfs),-(MassSD)\0" \
+ "testrfsargs=setenv bootargs root=/dev/nfs rw " \
+ "nfsroot=${serverip}:${testrfspath}\0" \
+ "ramargs=setenv bootargs root=/dev/ram rw initrd=" \
+ "0x${ramdisk_addr_r},4M\0" \
+ "mtdids=nand0=davinci_nand.0\0" \
+ "serverip=192.168.5.249\0" \
+ "ipaddr=192.168.5.248\0" \
+ "rootpath=/opt/eldk/arm\0" \
+ "splashpos=230,180\0" \
+ "testrfspath=/opt/eldk/test_arm\0" \
+ "tempmac=setenv ethaddr 02:ea:20:ff:ff:ff\0" \
"nandargs=setenv bootargs rootfstype=ubifs ro chk_data_crc " \
"ubi.mtd=${as} root=ubi0:rootfs\0" \
+ "nandrwargs=setenv bootargs rootfstype=ubifs rw chk_data_crc " \
+ "ubi.mtd=${as} root=ubi0:rootfs\0" \
"addip_sta=setenv bootargs ${bootargs} " \
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
":${hostname}:${netdev}:off panic=1\0" \
"addip_dyn=setenv bootargs ${bootargs} ip=dhcp\0" \
- "addip=if test -n ${ipdyn};then run addip_dyn;" \
+ "addip=if test -n ${ipdyn};then run addip_dyn;" \
"else run addip_sta;fi\0" \
"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \
"addtty=setenv bootargs ${bootargs}" \
" console=${consoledev},${baudrate}n8\0" \
- "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
+ "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
"addmem=setenv bootargs ${bootargs} mem=${memory}\0" \
"consoledev=ttyS0\0" \
"loadaddr=c0000014\0" \
@@ -267,44 +280,57 @@
"kernel_addr_r=c0700000\0" \
"hostname=" xstr(CONFIG_HOSTNAME) "\0" \
"bootfile=" xstr(CONFIG_HOSTNAME) "/uImage\0" \
- "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/uRamdisk\0" \
+ "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/image.ext2\0" \
"flash_self=run ramargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr} ${ramdisk_addr}\0" \
+ "bootm ${kernel_addr_r}\0" \
"flash_nfs=run nfsargs addip addtty addmtd addmisc addmem;" \
"bootm ${kernel_addr}\0" \
- "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
"run nfsargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr_r}\0" \
- "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
- "run rfsbargs addip addtty addmtd addmisc addmem; " \
- "bootm ${kernel_addr_r}\0" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run rfsbargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
+ "net_testrfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run testrfsargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
"net_self_load=tftp ${kernel_addr_r} ${bootfile};" \
"tftp ${ramdisk_addr_r} ${ramdisk_file};\0" \
- "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "ubifsload ${kernel_addr_r} /boot/uImage;" \
- "ubifsumount; run nandargs addip addtty " \
- "addmtd addmisc addmem;bootm ${kernel_addr_r}\0" \
- "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
- "load_magic=if sf probe 0;then sf " \
- "read c0000000 0x10000 0x60000;fi\0" \
- "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "if ubifsload c0000014 /boot/u-boot.bin;" \
- "then mw c0000008 ${filesize};else echo Error reading " \
- "u-boot from nand!;fi\0" \
- "load_net=if sf probe 0;then sf read c0000000 0x10000 0x60000;" \
- "tftp c0000014 ${u-boot};" \
- "mw c0000008 ${filesize};" \
- "fi\0" \
- "upd=if sf probe 0;then sf erase 10000 60000;" \
- "sf write c0000000 10000 60000;" \
- "fi\0" \
- "ubootupd_net=if run load_net;then echo Updating u-boot;" \
- "if run upd; then echo U-Boot updated;" \
+ "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "nand_nandrw=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandrwargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_nandrw=tftp ${kernel_addr_r} ${bootfile}; run nandrwargs" \
+ " addip addtty addmtd addmisc addmem;" \
+ "clrlogo;bootm ${kernel_addr_r}\0" \
+ "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
+ "load_magic=if sf probe 0;then sf " \
+ "read c0000000 0x10000 0x60000;fi\0" \
+ "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "if ubifsload c0000014 /boot/u-boot.bin;" \
+ "then mw c0000008 ${filesize};else echo Error reading" \
+ " u-boot from nand!;fi\0" \
+ "load_net=if sf probe 0;then sf read c0000000 0x10000 " \
+ "0x60000;tftp c0000014 ${u-boot};" \
+ "mw c0000008 ${filesize};fi\0" \
+ "upd=if sf probe 0;then sf erase 10000 60000;" \
+ "sf write c0000000 10000 60000;fi\0" \
+ "ublupdate=if tftp C0700000 ${ublname};then sf probe 0; " \
+ "sf erase 0 10000;" \
+ "sf write 0xc0700000 0 ${filesize};fi\0" \
+ "ubootupd_net=if run load_net;then echo Updating u-boot;" \
+ "if run upd; then echo U-Boot updated;" \
"else echo Error updating u-boot !;" \
"echo Board without bootloader !!;" \
"fi;" \
- "else echo U-Boot not downloaded..exiting;fi\0" \
- "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
- "bootcmd=run net_nfs\0"
+ "else echo U-Boot not downloaded..exiting;fi\0" \
+ "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
+ "bootcmd=run tempmac;run net_testrfs\0"
#endif /* __CONFIG_H */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-06 6:07 ` [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
@ 2012-09-06 18:55 ` Anatolij Gustschin
0 siblings, 0 replies; 40+ messages in thread
From: Anatolij Gustschin @ 2012-09-06 18:55 UTC (permalink / raw)
To: u-boot
Hi,
On Thu, 6 Sep 2012 08:07:36 +0200
Bastian Ruppert <Bastian.Ruppert@Sewerin.de> wrote:
> Extend the driver for placing the video/bmp logo as specified
> by "splashpos" environment variable.
>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> Signed-off-by: Anatolij Gustschin <agust@denx.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> v3:
> - logo offset calculation is no longer based on BMP_ALIGN_CENTER
> if "m" specifier is used in splashpos
>
> v2:
> - remove some ifdefs
> - revise commit log
> - adjust video_logo_height by video_logo_ypos and thus
> fix return address for video console offset
> - add BMP_ALIGN_CENTER case to logo_plot() for proper logo
> offset calculation if "m" specifier is used in splashpos
> ---
> drivers/video/cfb_console.c | 93 +++++++++++++++++++++++++++++++-----------
> 1 files changed, 68 insertions(+), 25 deletions(-)
Acked-by: Anatolij Gustschin <agust@denx.de>
Thanks!
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black
2012-09-06 6:07 ` [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
@ 2012-09-06 18:56 ` Anatolij Gustschin
0 siblings, 0 replies; 40+ messages in thread
From: Anatolij Gustschin @ 2012-09-06 18:56 UTC (permalink / raw)
To: u-boot
Hi,
On Thu, 6 Sep 2012 08:07:37 +0200
Bastian Ruppert <Bastian.Ruppert@Sewerin.de> wrote:
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> CC: Anatolij Gustschin <agust@denx.de>
> CC: Tom Rini <trini@ti.com>
> CC: Stefano Babic <sbabic@denx.de>
> ---
> drivers/video/cfb_console.c | 46 +++++++++++++++++++++++++++++++++++++++---
> 1 files changed, 42 insertions(+), 4 deletions(-)
Acked-by: Anatolij Gustschin <agust@denx.de>
Thanks!
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
2012-08-24 17:55 ` Tom Rini
@ 2012-09-07 4:48 ` Bastian.Ruppert at sewerin.de
0 siblings, 0 replies; 40+ messages in thread
From: Bastian.Ruppert at sewerin.de @ 2012-09-07 4:48 UTC (permalink / raw)
To: u-boot
Hello Tom,
> Re: [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup
>
> On Wed, Aug 15, 2012 at 09:55:40AM -0700, Tom Rini wrote:
> > On Fri, Aug 10, 2012 at 09:26:41AM +0200, Bastian Ruppert wrote:
> >
> > > Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> > > CC: Tom Rini <trini@ti.com>
> > > CC: Stefano Babic <sbabic@denx.de>
> >
> > For the series, I'm fine with the davinci side of the changes but want
> > Anatolij and Stefano to ack as well before I pull into u-boot-ti,
> > thanks!
>
> Still waiting for Anatolij (thanks Stefano!) before I take this, FYI.
>
with the version 3 for this patches, Anatolij seems to be pleased.
Thanks,
Bastian.
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-06 6:07 ` [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-09-07 8:08 ` Prabhakar Lad
2012-09-09 2:14 ` Tom Rini
0 siblings, 1 reply; 40+ messages in thread
From: Prabhakar Lad @ 2012-09-07 8:08 UTC (permalink / raw)
To: u-boot
Hi Bastian,
Thanks for the patch.
On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
<Bastian.Ruppert@sewerin.de> wrote:
> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
> negotiation is enabled in RMII mode. Some boards based on da850 need
> to suppress this procedure.
>
> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
> CC: sbabic at denx.de
> Acked-by: Stefano Babic <sbabic@denx.de>
> CC: Tom Rini <trini@ti.com>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> ---
> drivers/net/davinci_emac.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
> index b2516d1..fe988d7 100644
> --- a/drivers/net/davinci_emac.c
> +++ b/drivers/net/davinci_emac.c
> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
> }
>
> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
Thx,
--Prabhakar Lad
> for (i = 0; i < num_phy; i++) {
> if (phy[i].is_phy_connected(i))
> phy[i].auto_negotiate(i);
> --
> 1.7.0.4
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-07 8:08 ` Prabhakar Lad
@ 2012-09-09 2:14 ` Tom Rini
2012-09-10 6:01 ` Bastian.Ruppert at sewerin.de
0 siblings, 1 reply; 40+ messages in thread
From: Tom Rini @ 2012-09-09 2:14 UTC (permalink / raw)
To: u-boot
On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
<prabhakar.csengg@gmail.com> wrote:
> Hi Bastian,
>
> Thanks for the patch.
>
> On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
> <Bastian.Ruppert@sewerin.de> wrote:
>> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
>> negotiation is enabled in RMII mode. Some boards based on da850 need
>> to suppress this procedure.
>>
>> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
>> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
>> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
>> CC: sbabic at denx.de
>> Acked-by: Stefano Babic <sbabic@denx.de>
>> CC: Tom Rini <trini@ti.com>
>> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
>> ---
>> drivers/net/davinci_emac.c | 3 ++-
>> 1 files changed, 2 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
>> index b2516d1..fe988d7 100644
>> --- a/drivers/net/davinci_emac.c
>> +++ b/drivers/net/davinci_emac.c
>> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
>> }
>>
>> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
>> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
>> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
>> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
> instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
> CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
Good idea, opt-in is better than opt-out, please make it so.
--
Tom
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-09 2:14 ` Tom Rini
@ 2012-09-10 6:01 ` Bastian.Ruppert at sewerin.de
2012-09-10 16:08 ` Tom Rini
0 siblings, 1 reply; 40+ messages in thread
From: Bastian.Ruppert at sewerin.de @ 2012-09-10 6:01 UTC (permalink / raw)
To: u-boot
Hello,
> Re: [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress
> auto negotiation if needed
>
> On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
> <prabhakar.csengg@gmail.com> wrote:
> > Hi Bastian,
> >
> > Thanks for the patch.
> >
> > On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
> > <Bastian.Ruppert@sewerin.de> wrote:
> >> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
> >> negotiation is enabled in RMII mode. Some boards based on da850 need
> >> to suppress this procedure.
> >>
> >> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
> >> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
> >> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
> >> CC: sbabic at denx.de
> >> Acked-by: Stefano Babic <sbabic@denx.de>
> >> CC: Tom Rini <trini@ti.com>
> >> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> >> ---
> >> drivers/net/davinci_emac.c | 3 ++-
> >> 1 files changed, 2 insertions(+), 1 deletions(-)
> >>
> >> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
> >> index b2516d1..fe988d7 100644
> >> --- a/drivers/net/davinci_emac.c
> >> +++ b/drivers/net/davinci_emac.c
> >> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
> >> }
> >>
> >> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
> >> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
> >> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
> >> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
> > instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
> > CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
>
> Good idea, opt-in is better than opt-out, please make it so.
>
i can see what you mean! But in this case i would like to answer back.
Normally, one almost certainly use the auto negotiation. On the ea20
board there is a seldom case where auto negotiation is counterproductive.
In my opinion the feature "disable it" is opt-in.
So i would like to leave it as it is.
Regards,
Bastian.
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-10 6:01 ` Bastian.Ruppert at sewerin.de
@ 2012-09-10 16:08 ` Tom Rini
2012-09-11 4:16 ` Prabhakar Lad
0 siblings, 1 reply; 40+ messages in thread
From: Tom Rini @ 2012-09-10 16:08 UTC (permalink / raw)
To: u-boot
On Sun, Sep 9, 2012 at 11:01 PM, <Bastian.Ruppert@sewerin.de> wrote:
> Hello,
>
>> Re: [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress
>> auto negotiation if needed
>>
>> On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
>> <prabhakar.csengg@gmail.com> wrote:
>> > Hi Bastian,
>> >
>> > Thanks for the patch.
>> >
>> > On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
>> > <Bastian.Ruppert@sewerin.de> wrote:
>> >> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
>> >> negotiation is enabled in RMII mode. Some boards based on da850 need
>> >> to suppress this procedure.
>> >>
>> >> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
>> >> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
>> >> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
>> >> CC: sbabic at denx.de
>> >> Acked-by: Stefano Babic <sbabic@denx.de>
>> >> CC: Tom Rini <trini@ti.com>
>> >> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
>> >> ---
>> >> drivers/net/davinci_emac.c | 3 ++-
>> >> 1 files changed, 2 insertions(+), 1 deletions(-)
>> >>
>> >> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
>> >> index b2516d1..fe988d7 100644
>> >> --- a/drivers/net/davinci_emac.c
>> >> +++ b/drivers/net/davinci_emac.c
>> >> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
>> >> }
>> >>
>> >> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
>> >> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
>> >> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
>> >> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
>> > instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
>> > CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
>>
>> Good idea, opt-in is better than opt-out, please make it so.
>>
>
> i can see what you mean! But in this case i would like to answer back.
> Normally, one almost certainly use the auto negotiation. On the ea20
> board there is a seldom case where auto negotiation is counterproductive.
> In my opinion the feature "disable it" is opt-in.
> So i would like to leave it as it is.
I will defer to Prabhakar for a final answer on this.
--
Tom
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-10 16:08 ` Tom Rini
@ 2012-09-11 4:16 ` Prabhakar Lad
2012-09-11 5:32 ` Bastian.Ruppert at sewerin.de
0 siblings, 1 reply; 40+ messages in thread
From: Prabhakar Lad @ 2012-09-11 4:16 UTC (permalink / raw)
To: u-boot
Hi Bastian,
On Monday 10 September 2012 09:38 PM, Tom Rini wrote:
> On Sun, Sep 9, 2012 at 11:01 PM, <Bastian.Ruppert@sewerin.de> wrote:
>> Hello,
>>
>>> Re: [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress
>>> auto negotiation if needed
>>>
>>> On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
>>> <prabhakar.csengg@gmail.com> wrote:
>>>> Hi Bastian,
>>>>
>>>> Thanks for the patch.
>>>>
>>>> On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
>>>> <Bastian.Ruppert@sewerin.de> wrote:
>>>>> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
>>>>> negotiation is enabled in RMII mode. Some boards based on da850 need
>>>>> to suppress this procedure.
>>>>>
>>>>> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
>>>>> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
>>>>> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
>>>>> CC: sbabic at denx.de
>>>>> Acked-by: Stefano Babic <sbabic@denx.de>
>>>>> CC: Tom Rini <trini@ti.com>
>>>>> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
>>>>> ---
>>>>> drivers/net/davinci_emac.c | 3 ++-
>>>>> 1 files changed, 2 insertions(+), 1 deletions(-)
>>>>>
>>>>> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
>>>>> index b2516d1..fe988d7 100644
>>>>> --- a/drivers/net/davinci_emac.c
>>>>> +++ b/drivers/net/davinci_emac.c
>>>>> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
>>>>> }
>>>>>
>>>>> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
>>>>> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
>>>>> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
>>>>> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
>>>> instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
>>>> CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
>>>
>>> Good idea, opt-in is better than opt-out, please make it so.
>>>
>>
>> i can see what you mean! But in this case i would like to answer back.
>> Normally, one almost certainly use the auto negotiation. On the ea20
>> board there is a seldom case where auto negotiation is counterproductive.
>> In my opinion the feature "disable it" is opt-in.
>> So i would like to leave it as it is.
>
> I will defer to Prabhakar for a final answer on this.
>
Ok. 'NONEG' doesn't sound good can you make it NO_NEGOTIATE ?
Thanks,
--Prabhakar
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-11 4:16 ` Prabhakar Lad
@ 2012-09-11 5:32 ` Bastian.Ruppert at sewerin.de
2012-09-12 16:15 ` Tom Rini
0 siblings, 1 reply; 40+ messages in thread
From: Bastian.Ruppert at sewerin.de @ 2012-09-11 5:32 UTC (permalink / raw)
To: u-boot
Hello, Prabhakar, hello Tom
> On Monday 10 September 2012 09:38 PM, Tom Rini wrote:
> > On Sun, Sep 9, 2012 at 11:01 PM, <Bastian.Ruppert@sewerin.de> wrote:
> >> Hello,
> >>
> >>> Re: [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress
> >>> auto negotiation if needed
> >>>
> >>> On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
> >>> <prabhakar.csengg@gmail.com> wrote:
> >>>> Hi Bastian,
> >>>>
> >>>> Thanks for the patch.
> >>>>
> >>>> On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
> >>>> <Bastian.Ruppert@sewerin.de> wrote:
> >>>>> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
> >>>>> negotiation is enabled in RMII mode. Some boards based on da850
need
> >>>>> to suppress this procedure.
> >>>>>
> >>>>> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
> >>>>> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
> >>>>> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
> >>>>> CC: sbabic at denx.de
> >>>>> Acked-by: Stefano Babic <sbabic@denx.de>
> >>>>> CC: Tom Rini <trini@ti.com>
> >>>>> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
> >>>>> ---
> >>>>> drivers/net/davinci_emac.c | 3 ++-
> >>>>> 1 files changed, 2 insertions(+), 1 deletions(-)
> >>>>>
> >>>>> diff --git a/drivers/net/davinci_emac.c
b/drivers/net/davinci_emac.c
> >>>>> index b2516d1..fe988d7 100644
> >>>>> --- a/drivers/net/davinci_emac.c
> >>>>> +++ b/drivers/net/davinci_emac.c
> >>>>> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
> >>>>> }
> >>>>>
> >>>>> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
> >>>>> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
> >>>>> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
> >>>>> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
> >>>> instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
> >>>> CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
> >>>
> >>> Good idea, opt-in is better than opt-out, please make it so.
> >>>
> >>
> >> i can see what you mean! But in this case i would like to answer back.
> >> Normally, one almost certainly use the auto negotiation. On the ea20
> >> board there is a seldom case where auto negotiation is
counterproductive.
> >> In my opinion the feature "disable it" is opt-in.
> >> So i would like to leave it as it is.
> >
> > I will defer to Prabhakar for a final answer on this.
> >
> Ok. 'NONEG' doesn't sound good can you make it NO_NEGOTIATE ?
>
Ok, i will use CONFIG_DRIVER_TI_EMAC_RMII_NO_NEGOTIATE. It is not too long,
isn?t it?
Tom, would you like to receive a complete v4 patch series for this?
Or should i post version 4 for the affected patches only?
Thanks,
Bastian.
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-11 5:32 ` Bastian.Ruppert at sewerin.de
@ 2012-09-12 16:15 ` Tom Rini
0 siblings, 0 replies; 40+ messages in thread
From: Tom Rini @ 2012-09-12 16:15 UTC (permalink / raw)
To: u-boot
On 09/10/2012 10:32 PM, Bastian.Ruppert at sewerin.de wrote:
> Hello, Prabhakar, hello Tom
>
>> On Monday 10 September 2012 09:38 PM, Tom Rini wrote:
>>> On Sun, Sep 9, 2012 at 11:01 PM, <Bastian.Ruppert@sewerin.de> wrote:
>>>> Hello,
>>>>
>>>>> Re: [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress
>>>>> auto negotiation if needed
>>>>>
>>>>> On Fri, Sep 7, 2012 at 1:08 AM, Prabhakar Lad
>>>>> <prabhakar.csengg@gmail.com> wrote:
>>>>>> Hi Bastian,
>>>>>>
>>>>>> Thanks for the patch.
>>>>>>
>>>>>> On Thu, Sep 6, 2012 at 11:37 AM, Bastian Ruppert
>>>>>> <Bastian.Ruppert@sewerin.de> wrote:
>>>>>>> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
>>>>>>> negotiation is enabled in RMII mode. Some boards based on da850
> need
>>>>>>> to suppress this procedure.
>>>>>>>
>>>>>>> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
>>>>>>> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
>>>>>>> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
>>>>>>> CC: sbabic at denx.de
>>>>>>> Acked-by: Stefano Babic <sbabic@denx.de>
>>>>>>> CC: Tom Rini <trini@ti.com>
>>>>>>> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
>>>>>>> ---
>>>>>>> drivers/net/davinci_emac.c | 3 ++-
>>>>>>> 1 files changed, 2 insertions(+), 1 deletions(-)
>>>>>>>
>>>>>>> diff --git a/drivers/net/davinci_emac.c
> b/drivers/net/davinci_emac.c
>>>>>>> index b2516d1..fe988d7 100644
>>>>>>> --- a/drivers/net/davinci_emac.c
>>>>>>> +++ b/drivers/net/davinci_emac.c
>>>>>>> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
>>>>>>> }
>>>>>>>
>>>>>>> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
>>>>>>> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
>>>>>>> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
>>>>>>> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NONEG)
>>>>>> instead of CONFIG_DRIVER_TI_EMAC_RMII_NONEG why not have
>>>>>> CONFIG_DRIVER_TI_EMAC_RMII_AUTO_NEGOTIATE ?
>>>>>
>>>>> Good idea, opt-in is better than opt-out, please make it so.
>>>>>
>>>>
>>>> i can see what you mean! But in this case i would like to answer back.
>>>> Normally, one almost certainly use the auto negotiation. On the ea20
>>>> board there is a seldom case where auto negotiation is
> counterproductive.
>>>> In my opinion the feature "disable it" is opt-in.
>>>> So i would like to leave it as it is.
>>>
>>> I will defer to Prabhakar for a final answer on this.
>>>
>> Ok. 'NONEG' doesn't sound good can you make it NO_NEGOTIATE ?
>>
>
> Ok, i will use CONFIG_DRIVER_TI_EMAC_RMII_NO_NEGOTIATE. It is not too long,
> isn?t it?
>
> Tom, would you like to receive a complete v4 patch series for this?
> Or should i post version 4 for the affected patches only?
Whichever is easier for you to post, thanks.
--
Tom
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 1/6] davinci: ea20: reorganisation LCD startup
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
@ 2012-09-14 8:28 ` Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
` (4 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:28 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 7e00040..69307e4 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -176,6 +176,9 @@ int board_early_init_f(void)
if (davinci_configure_pin_mux(gpio_pins, ARRAY_SIZE(gpio_pins)) != 0)
return 1;
+ /* Set DISP_ON high to enable LCD output*/
+ gpio_direction_output(97, 1);
+
/* Set the RESETOUTn low */
gpio_direction_output(111, 0);
@@ -188,9 +191,6 @@ int board_early_init_f(void)
/* Set LCD_B_PWR low to power down LCD Backlight*/
gpio_direction_output(102, 0);
- /* Set DISP_ON low to disable LCD output*/
- gpio_direction_output(97, 0);
-
#ifndef CONFIG_USE_IRQ
irq_init();
#endif
@@ -250,11 +250,6 @@ int board_early_init_f(void)
writel(readl(&davinci_syscfg_regs->mstpri[2]) & 0x0fffffff,
&davinci_syscfg_regs->mstpri[2]);
- /* Set LCD_B_PWR low to power up LCD Backlight*/
- gpio_set_value(102, 1);
-
- /* Set DISP_ON low to disable LCD output*/
- gpio_set_value(97, 1);
return 0;
}
@@ -276,6 +271,9 @@ int board_init(void)
int board_late_init(void)
{
+ unsigned char buf[2];
+ int ret;
+
/* PinMux for HALTEN */
if (davinci_configure_pin_mux(halten_pin, ARRAY_SIZE(halten_pin)) != 0)
return 1;
@@ -285,6 +283,15 @@ int board_late_init(void)
setenv("stdout", "serial");
+ /* Set fixed contrast settings for LCD via I2C potentiometer */
+ buf[0] = 0x00;
+ buf[1] = 0xd7;
+ ret = i2c_write(0x2e, 6, 1, buf, 2);
+ if (ret)
+ puts("\nContrast Settings FAILED\n");
+
+ /* Set LCD_B_PWR high to power up LCD Backlight*/
+ gpio_set_value(102, 1);
return 0;
}
#endif /* CONFIG_BOARD_LATE_INIT */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 2/6] davinci: ea20: the console is always set to the serial line
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-14 8:28 ` [U-Boot] [PATCH v4 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
@ 2012-09-14 8:29 ` Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
` (3 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:29 UTC (permalink / raw)
To: u-boot
Do not allow to overwrite it when video is enabled.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
board/davinci/ea20/ea20.c | 11 +++++++++--
include/configs/ea20.h | 2 ++
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/board/davinci/ea20/ea20.c b/board/davinci/ea20/ea20.c
index 69307e4..0edd910 100644
--- a/board/davinci/ea20/ea20.c
+++ b/board/davinci/ea20/ea20.c
@@ -254,6 +254,15 @@ int board_early_init_f(void)
return 0;
}
+/*
+ * Do not overwrite the console
+ * Use always serial for U-Boot console
+ */
+int overwrite_console(void)
+{
+ return 1;
+}
+
int board_init(void)
{
/* arch number of the board */
@@ -281,8 +290,6 @@ int board_late_init(void)
/* Set HALTEN to high */
gpio_direction_output(134, 1);
- setenv("stdout", "serial");
-
/* Set fixed contrast settings for LCD via I2C potentiometer */
buf[0] = 0x00;
buf[1] = 0xd7;
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index a9caa81..f9a1462 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -125,6 +125,8 @@
#define CONFIG_VIDEO_LOGO
#define CONFIG_VIDEO_BMP_RLE8
#define CONFIG_CMD_BMP
+#define CONFIG_SYS_CONSOLE_IS_IN_ENV
+#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
#endif
/*
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 3/6] video: cfb_console: logo can be positioned via the splashpos variable
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
` (2 preceding siblings ...)
2012-09-14 8:29 ` [U-Boot] [PATCH v4 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
@ 2012-09-14 8:29 ` Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
` (2 subsequent siblings)
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:29 UTC (permalink / raw)
To: u-boot
Extend the driver for placing the video/bmp logo as specified
by "splashpos" environment variable.
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
v3:
- logo offset calculation is no longer based on BMP_ALIGN_CENTER
if "m" specifier is used in splashpos
v2:
- remove some ifdefs
- revise commit log
- adjust video_logo_height by video_logo_ypos and thus
fix return address for video console offset
- add BMP_ALIGN_CENTER case to logo_plot() for proper logo
offset calculation if "m" specifier is used in splashpos
---
drivers/video/cfb_console.c | 93 +++++++++++++++++++++++++++++++-----------
1 files changed, 68 insertions(+), 25 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 19d061f..3ae420b 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -66,7 +66,11 @@
* CONFIG_CONSOLE_TIME - display time/date in upper right
* corner, needs CONFIG_CMD_DATE and
* CONFIG_CONSOLE_CURSOR
- * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner
+ * CONFIG_VIDEO_LOGO - display Linux Logo in upper left corner.
+ * Use CONFIG_SPLASH_SCREEN_ALIGN with
+ * environment variable "splashpos" to place
+ * the logo on other position. In this case
+ * no CONSOLE_EXTRA_INFO is possible.
* CONFIG_VIDEO_BMP_LOGO - use bmp_logo instead of linux_logo
* CONFIG_CONSOLE_EXTRA_INFO - display additional board information
* strings that normaly goes to serial
@@ -369,6 +373,8 @@ static void *video_fb_address; /* frame buffer address */
static void *video_console_address; /* console buffer start address */
static int video_logo_height = VIDEO_LOGO_HEIGHT;
+static int video_logo_xpos;
+static int video_logo_ypos;
static int __maybe_unused cursor_state;
static int __maybe_unused old_col;
@@ -1488,8 +1494,21 @@ void logo_plot(void *screen, int width, int x, int y)
int ycount = video_logo_height;
unsigned char r, g, b, *logo_red, *logo_blue, *logo_green;
unsigned char *source;
- unsigned char *dest = (unsigned char *) screen +
- ((y * width * VIDEO_PIXEL_SIZE) + x * VIDEO_PIXEL_SIZE);
+ unsigned char *dest;
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ if (x == BMP_ALIGN_CENTER)
+ x = max(0, (VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH) / 2);
+ else if (x < 0)
+ x = max(0, VIDEO_VISIBLE_COLS - VIDEO_LOGO_WIDTH + x + 1);
+
+ if (y == BMP_ALIGN_CENTER)
+ y = max(0, (VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT) / 2);
+ else if (y < 0)
+ y = max(0, VIDEO_VISIBLE_ROWS - VIDEO_LOGO_HEIGHT + y + 1);
+#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
+
+ dest = (unsigned char *)screen + (y * width + x) * VIDEO_PIXEL_SIZE;
#ifdef CONFIG_VIDEO_BMP_LOGO
source = bmp_logo_bitmap;
@@ -1592,42 +1611,66 @@ static void *video_logo(void)
char info[128];
int space, len;
__maybe_unused int y_off = 0;
+ __maybe_unused ulong addr;
+ __maybe_unused char *s;
-#ifdef CONFIG_SPLASH_SCREEN
- char *s;
- ulong addr;
-
- s = getenv("splashimage");
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ s = getenv("splashpos");
if (s != NULL) {
- int x = 0, y = 0;
+ if (s[0] == 'm')
+ video_logo_xpos = BMP_ALIGN_CENTER;
+ else
+ video_logo_xpos = simple_strtol(s, NULL, 0);
- addr = simple_strtoul(s, NULL, 16);
-#ifdef CONFIG_SPLASH_SCREEN_ALIGN
- s = getenv("splashpos");
+ s = strchr(s + 1, ',');
if (s != NULL) {
- if (s[0] == 'm')
- x = BMP_ALIGN_CENTER;
+ if (s[1] == 'm')
+ video_logo_ypos = BMP_ALIGN_CENTER;
else
- x = simple_strtol(s, NULL, 0);
-
- s = strchr(s + 1, ',');
- if (s != NULL) {
- if (s[1] == 'm')
- y = BMP_ALIGN_CENTER;
- else
- y = simple_strtol(s + 1, NULL, 0);
- }
+ video_logo_ypos = simple_strtol(s + 1, NULL, 0);
}
+ }
#endif /* CONFIG_SPLASH_SCREEN_ALIGN */
- if (video_display_bitmap(addr, x, y) == 0) {
+#ifdef CONFIG_SPLASH_SCREEN
+ s = getenv("splashimage");
+ if (s != NULL) {
+
+ addr = simple_strtoul(s, NULL, 16);
+
+
+ if (video_display_bitmap(addr,
+ video_logo_xpos,
+ video_logo_ypos) == 0) {
video_logo_height = 0;
return ((void *) (video_fb_address));
}
}
#endif /* CONFIG_SPLASH_SCREEN */
- logo_plot(video_fb_address, VIDEO_COLS, 0, 0);
+ logo_plot(video_fb_address, VIDEO_COLS,
+ video_logo_xpos, video_logo_ypos);
+
+#ifdef CONFIG_SPLASH_SCREEN_ALIGN
+ /*
+ * when using splashpos for video_logo, skip any info
+ * output on video console if the logo is not@0,0
+ */
+ if (video_logo_xpos || video_logo_ypos) {
+ /*
+ * video_logo_height is used in text and cursor offset
+ * calculations. Since the console is below the logo,
+ * we need to adjust the logo height
+ */
+ if (video_logo_ypos == BMP_ALIGN_CENTER)
+ video_logo_height += max(0, (VIDEO_VISIBLE_ROWS - \
+ VIDEO_LOGO_HEIGHT) / 2);
+ else if (video_logo_ypos > 0)
+ video_logo_height += video_logo_ypos;
+
+ return video_fb_address + video_logo_height * VIDEO_LINE_LEN;
+ }
+#endif
sprintf(info, " %s", version_string);
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 4/6] video: cfb_console: add function to plot the logo area black
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
` (3 preceding siblings ...)
2012-09-14 8:29 ` [U-Boot] [PATCH v4 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
@ 2012-09-14 8:29 ` Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:29 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Anatolij Gustschin <agust@denx.de>
CC: Tom Rini <trini@ti.com>
CC: Stefano Babic <sbabic@denx.de>
---
drivers/video/cfb_console.c | 46 +++++++++++++++++++++++++++++++++++++++---
1 files changed, 42 insertions(+), 4 deletions(-)
diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index 3ae420b..c3e36c4 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1486,7 +1486,39 @@ int video_display_bitmap(ulong bmp_image, int x, int y)
#ifdef CONFIG_VIDEO_LOGO
-void logo_plot(void *screen, int width, int x, int y)
+static void plot_logo_or_black(void *screen, int width, int x, int y, \
+ int black);
+
+static void logo_plot(void *screen, int width, int x, int y)
+{
+ plot_logo_or_black(screen, width, x, y, 0);
+}
+
+static void logo_black(void)
+{
+ plot_logo_or_black(video_fb_address, \
+ VIDEO_COLS, \
+ video_logo_xpos, \
+ video_logo_ypos, \
+ 1);
+}
+
+static int do_clrlogo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ if (argc != 1)
+ return cmd_usage(cmdtp);
+
+ logo_black();
+ return 0;
+}
+
+U_BOOT_CMD(
+ clrlogo, 1, 0, do_clrlogo,
+ "fill the boot logo area with black",
+ " "
+ );
+
+static void plot_logo_or_black(void *screen, int width, int x, int y, int black)
{
int xcount, i;
@@ -1544,9 +1576,15 @@ void logo_plot(void *screen, int width, int x, int y)
#endif
xcount = VIDEO_LOGO_WIDTH;
while (xcount--) {
- r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
- g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
- b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ if (black) {
+ r = 0x00;
+ g = 0x00;
+ b = 0x00;
+ } else {
+ r = logo_red[*source - VIDEO_LOGO_LUT_OFFSET];
+ g = logo_green[*source - VIDEO_LOGO_LUT_OFFSET];
+ b = logo_blue[*source - VIDEO_LOGO_LUT_OFFSET];
+ }
switch (VIDEO_DATA_FORMAT) {
case GDF__8BIT_INDEX:
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
` (4 preceding siblings ...)
2012-09-14 8:29 ` [U-Boot] [PATCH v4 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
@ 2012-09-14 8:29 ` Bastian Ruppert
2012-09-17 5:19 ` Prabhakar Lad
2012-09-14 8:29 ` [U-Boot] [PATCH v4 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
6 siblings, 1 reply; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:29 UTC (permalink / raw)
To: u-boot
^ permalink raw reply [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 6/6] davinci: ea20: add some configs and default environmet variables
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
` (5 preceding siblings ...)
2012-09-14 8:29 ` [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-09-14 8:29 ` Bastian Ruppert
6 siblings, 0 replies; 40+ messages in thread
From: Bastian Ruppert @ 2012-09-14 8:29 UTC (permalink / raw)
To: u-boot
Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
CC: Tom Rini <trini@ti.com>
Acked-by: Stefano Babic <sbabic@denx.de>
---
v4:
- use more expressive CONFIG name for emac rmii no autonegotiation
v3:
v2:
- related to other patches of this series
---
include/configs/ea20.h | 106 ++++++++++++++++++++++++++++++------------------
1 files changed, 66 insertions(+), 40 deletions(-)
diff --git a/include/configs/ea20.h b/include/configs/ea20.h
index f9a1462..e237fd0 100644
--- a/include/configs/ea20.h
+++ b/include/configs/ea20.h
@@ -30,6 +30,7 @@
#define CONFIG_USE_SPIFLASH
#define CONFIG_SYS_USE_NAND
#define CONFIG_DRIVER_TI_EMAC_USE_RMII
+#define CONFIG_DRIVER_TI_EMAC_RMII_NO_NEGOTIATE
#define CONFIG_BOARD_EARLY_INIT_F
#define CONFIG_BOARD_LATE_INIT
#define CONFIG_VIDEO
@@ -98,6 +99,7 @@
* Network & Ethernet Configuration
*/
#ifdef CONFIG_DRIVER_TI_EMAC
+#define CONFIG_EMAC_MDIO_PHY_NUM 0
#define CONFIG_MII
#define CONFIG_BOOTP_DEFAULT
#define CONFIG_BOOTP_DNS
@@ -121,9 +123,11 @@
#define CONFIG_VIDEO_DA8XX
#define CONFIG_CFB_CONSOLE
#define CONFIG_VGA_AS_SINGLE_DEVICE
-#define CONFIG_SPLASH_SCREEN
+#define CONFIG_SPLASH_SCREEN_ALIGN
#define CONFIG_VIDEO_LOGO
+#define CONFIG_SYS_CONSOLE_INFO_QUIET
#define CONFIG_VIDEO_BMP_RLE8
+#define CONFIG_VIDEO_BMP_LOGO
#define CONFIG_CMD_BMP
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
#define CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE
@@ -197,6 +201,7 @@
#define CONFIG_NAND_DAVINCI
#define CONFIG_SYS_NAND_PAGE_2K
+#define CONFIG_SYS_NAND_NO_SUBPAGE
#define CONFIG_SYS_NAND_CS 2
#define CONFIG_SYS_NAND_BASE DAVINCI_ASYNC_EMIF_DATA_CE2_BASE
#undef CONFIG_SYS_NAND_HW_ECC
@@ -235,31 +240,39 @@
#define xstr(s) str(s)
#define str(s) #s
-
#define CONFIG_HOSTNAME ea20
-#define CONFIG_EXTRA_ENV_SETTINGS \
+#define CONFIG_EXTRA_ENV_SETTINGS \
"as=3\0" \
- "netdev=eth0\0" \
+ "netdev=eth0\0" \
"nfsargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rootpath}\0" \
"rfsbargs=setenv bootargs root=/dev/nfs rw " \
"nfsroot=${serverip}:${rfsbpath}\0" \
- "ramargs=setenv bootargs root=/dev/ram rw\0" \
- "mtdids=nand0=davinci_nand.0\0" \
- "mtdparts=mtdparts=davinci_nand.0:8m(Settings),8m(aKernel)," \
- "8m(bKernel),76m(aRootfs),76m(bRootfs),-(MassSD)\0" \
+ "testrfsargs=setenv bootargs root=/dev/nfs rw " \
+ "nfsroot=${serverip}:${testrfspath}\0" \
+ "ramargs=setenv bootargs root=/dev/ram rw initrd=" \
+ "0x${ramdisk_addr_r},4M\0" \
+ "mtdids=nand0=davinci_nand.0\0" \
+ "serverip=192.168.5.249\0" \
+ "ipaddr=192.168.5.248\0" \
+ "rootpath=/opt/eldk/arm\0" \
+ "splashpos=230,180\0" \
+ "testrfspath=/opt/eldk/test_arm\0" \
+ "tempmac=setenv ethaddr 02:ea:20:ff:ff:ff\0" \
"nandargs=setenv bootargs rootfstype=ubifs ro chk_data_crc " \
"ubi.mtd=${as} root=ubi0:rootfs\0" \
+ "nandrwargs=setenv bootargs rootfstype=ubifs rw chk_data_crc " \
+ "ubi.mtd=${as} root=ubi0:rootfs\0" \
"addip_sta=setenv bootargs ${bootargs} " \
"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}" \
":${hostname}:${netdev}:off panic=1\0" \
"addip_dyn=setenv bootargs ${bootargs} ip=dhcp\0" \
- "addip=if test -n ${ipdyn};then run addip_dyn;" \
+ "addip=if test -n ${ipdyn};then run addip_dyn;" \
"else run addip_sta;fi\0" \
"addmtd=setenv bootargs ${bootargs} ${mtdparts}\0" \
"addtty=setenv bootargs ${bootargs}" \
" console=${consoledev},${baudrate}n8\0" \
- "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
+ "addmisc=setenv bootargs ${bootargs} ${misc}\0" \
"addmem=setenv bootargs ${bootargs} mem=${memory}\0" \
"consoledev=ttyS0\0" \
"loadaddr=c0000014\0" \
@@ -267,44 +280,57 @@
"kernel_addr_r=c0700000\0" \
"hostname=" xstr(CONFIG_HOSTNAME) "\0" \
"bootfile=" xstr(CONFIG_HOSTNAME) "/uImage\0" \
- "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/uRamdisk\0" \
+ "ramdisk_file=" xstr(CONFIG_HOSTNAME) "/image.ext2\0" \
"flash_self=run ramargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr} ${ramdisk_addr}\0" \
+ "bootm ${kernel_addr_r}\0" \
"flash_nfs=run nfsargs addip addtty addmtd addmisc addmem;" \
"bootm ${kernel_addr}\0" \
- "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "net_nfs=tftp ${kernel_addr_r} ${bootfile}; " \
"run nfsargs addip addtty addmtd addmisc addmem;" \
- "bootm ${kernel_addr_r}\0" \
- "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
- "run rfsbargs addip addtty addmtd addmisc addmem; " \
- "bootm ${kernel_addr_r}\0" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_rfsb=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run rfsbargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
+ "net_testrfs=tftp ${kernel_addr_r} ${bootfile}; " \
+ "run testrfsargs addip addtty addmtd addmisc addmem; " \
+ "bootm ${kernel_addr_r}\0" \
"net_self_load=tftp ${kernel_addr_r} ${bootfile};" \
"tftp ${ramdisk_addr_r} ${ramdisk_file};\0" \
- "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "ubifsload ${kernel_addr_r} /boot/uImage;" \
- "ubifsumount; run nandargs addip addtty " \
- "addmtd addmisc addmem;bootm ${kernel_addr_r}\0" \
- "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
- "load_magic=if sf probe 0;then sf " \
- "read c0000000 0x10000 0x60000;fi\0" \
- "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
- "if ubifsload c0000014 /boot/u-boot.bin;" \
- "then mw c0000008 ${filesize};else echo Error reading " \
- "u-boot from nand!;fi\0" \
- "load_net=if sf probe 0;then sf read c0000000 0x10000 0x60000;" \
- "tftp c0000014 ${u-boot};" \
- "mw c0000008 ${filesize};" \
- "fi\0" \
- "upd=if sf probe 0;then sf erase 10000 60000;" \
- "sf write c0000000 10000 60000;" \
- "fi\0" \
- "ubootupd_net=if run load_net;then echo Updating u-boot;" \
- "if run upd; then echo U-Boot updated;" \
+ "nand_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "nand_nandrw=ubi part nand0,${as};ubifsmount rootfs;" \
+ "ubifsload ${kernel_addr_r} /boot/uImage;" \
+ "ubifsumount; run nandrwargs addip addtty " \
+ "addmtd addmisc addmem;clrlogo;" \
+ "bootm ${kernel_addr_r}\0" \
+ "net_nandrw=tftp ${kernel_addr_r} ${bootfile}; run nandrwargs" \
+ " addip addtty addmtd addmisc addmem;" \
+ "clrlogo;bootm ${kernel_addr_r}\0" \
+ "u-boot=" xstr(CONFIG_HOSTNAME) "/u-boot.bin\0" \
+ "load_magic=if sf probe 0;then sf " \
+ "read c0000000 0x10000 0x60000;fi\0" \
+ "load_nand=ubi part nand0,${as};ubifsmount rootfs;" \
+ "if ubifsload c0000014 /boot/u-boot.bin;" \
+ "then mw c0000008 ${filesize};else echo Error reading" \
+ " u-boot from nand!;fi\0" \
+ "load_net=if sf probe 0;then sf read c0000000 0x10000 " \
+ "0x60000;tftp c0000014 ${u-boot};" \
+ "mw c0000008 ${filesize};fi\0" \
+ "upd=if sf probe 0;then sf erase 10000 60000;" \
+ "sf write c0000000 10000 60000;fi\0" \
+ "ublupdate=if tftp C0700000 ${ublname};then sf probe 0; " \
+ "sf erase 0 10000;" \
+ "sf write 0xc0700000 0 ${filesize};fi\0" \
+ "ubootupd_net=if run load_net;then echo Updating u-boot;" \
+ "if run upd; then echo U-Boot updated;" \
"else echo Error updating u-boot !;" \
"echo Board without bootloader !!;" \
"fi;" \
- "else echo U-Boot not downloaded..exiting;fi\0" \
- "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
- "bootcmd=run net_nfs\0"
+ "else echo U-Boot not downloaded..exiting;fi\0" \
+ "ubootupd_nand=echo run load_magic,run load_nand,run upd;\0" \
+ "bootcmd=run tempmac;run net_testrfs\0"
#endif /* __CONFIG_H */
--
1.7.0.4
^ permalink raw reply related [flat|nested] 40+ messages in thread
* [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed
2012-09-14 8:29 ` [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
@ 2012-09-17 5:19 ` Prabhakar Lad
0 siblings, 0 replies; 40+ messages in thread
From: Prabhakar Lad @ 2012-09-17 5:19 UTC (permalink / raw)
To: u-boot
Hi Bastian,
Thanks for the patch.
On Fri, Sep 14, 2012 at 1:59 PM, Bastian Ruppert
<Bastian.Ruppert@sewerin.de> wrote:
> From this commit id: b78375a806ed04eb22b963255cfdef8df702de47 auto
> negotiation is enabled in RMII mode. Some boards based on da850 need
> to suppress this procedure.
>
> CC: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
> CC: Lad, Prabhakar <prabhakar.lad@ti.com>
> CC: Hadli, Manjunath <manjunath.hadli@ti.com>
> CC: sbabic at denx.de
> Acked-by: Stefano Babic <sbabic@denx.de>
> CC: Tom Rini <trini@ti.com>
> Signed-off-by: Bastian Ruppert <Bastian.Ruppert@Sewerin.de>
Acked-by: Prabhakar Lad <prabhakar.lad@ti.com>
Thanks,
--Prabhakar
> ---
> v4:
> - use more expressive CONFIG name
>
> v3:
> v2:
> - related to other patches of this series
> ---
> drivers/net/davinci_emac.c | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
> index b2516d1..1db586d 100644
> --- a/drivers/net/davinci_emac.c
> +++ b/drivers/net/davinci_emac.c
> @@ -897,7 +897,8 @@ int davinci_emac_initialize(void)
> }
>
> #if defined(CONFIG_DRIVER_TI_EMAC_USE_RMII) && \
> - defined(CONFIG_MACH_DAVINCI_DA850_EVM)
> + defined(CONFIG_MACH_DAVINCI_DA850_EVM) && \
> + !defined(CONFIG_DRIVER_TI_EMAC_RMII_NO_NEGOTIATE)
> for (i = 0; i < num_phy; i++) {
> if (phy[i].is_phy_connected(i))
> phy[i].auto_negotiate(i);
> --
> 1.7.0.4
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
^ permalink raw reply [flat|nested] 40+ messages in thread
end of thread, other threads:[~2012-09-17 5:19 UTC | newest]
Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-10 7:26 [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
2012-08-15 17:04 ` Stefano Babic
2012-08-10 7:26 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
2012-09-01 22:29 ` [U-Boot] [PATCH v2 " Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-05 11:11 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
2012-09-06 6:07 ` [U-Boot] [PATCH v3 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
2012-09-06 6:07 ` [U-Boot] [PATCH v3 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
2012-09-06 18:55 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
2012-09-06 18:56 ` Anatolij Gustschin
2012-09-06 6:07 ` [U-Boot] [PATCH v3 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
2012-09-07 8:08 ` Prabhakar Lad
2012-09-09 2:14 ` Tom Rini
2012-09-10 6:01 ` Bastian.Ruppert at sewerin.de
2012-09-10 16:08 ` Tom Rini
2012-09-11 4:16 ` Prabhakar Lad
2012-09-11 5:32 ` Bastian.Ruppert at sewerin.de
2012-09-12 16:15 ` Tom Rini
2012-09-06 6:07 ` [U-Boot] [PATCH v3 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
2012-09-01 22:50 ` [U-Boot] [PATCH 3/6] video: cfb_console: logo can be positioned via the splashpos variable Anatolij Gustschin
2012-09-05 10:52 ` Bastian.Ruppert at sewerin.de
2012-09-14 8:28 ` [U-Boot] [PATCH v4 1/6] davinci: ea20: reorganisation LCD startup Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 2/6] davinci: ea20: the console is always set to the serial line Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 3/6] video: cfb_console: logo can be positioned via the splashpos variable Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
2012-09-14 8:29 ` [U-Boot] [PATCH v4 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
2012-09-17 5:19 ` Prabhakar Lad
2012-09-14 8:29 ` [U-Boot] [PATCH v4 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 4/6] video: cfb_console: add function to plot the logo area black Bastian Ruppert
2012-08-10 7:26 ` [U-Boot] [PATCH 5/6] da850/omap-l138: davinci_emac: Suppress auto negotiation if needed Bastian Ruppert
2012-08-15 17:04 ` Stefano Babic
2012-08-10 7:26 ` [U-Boot] [PATCH 6/6] davinci: ea20: add some configs and default environmet variables Bastian Ruppert
2012-08-15 17:03 ` Stefano Babic
2012-08-15 16:55 ` [U-Boot] [PATCH 1/6] davinci: ea20: reorganisation LCD startup Tom Rini
2012-08-24 17:55 ` Tom Rini
2012-09-07 4:48 ` Bastian.Ruppert at sewerin.de
2012-08-15 17:04 ` Stefano Babic
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.