diff options
| -rw-r--r-- | board/htkw/mcx/mcx.c | 41 | ||||
| -rw-r--r-- | board/htkw/mcx/mcx.h | 2 | ||||
| -rw-r--r-- | include/configs/mcx.h | 16 | 
3 files changed, 58 insertions, 1 deletions
| diff --git a/board/htkw/mcx/mcx.c b/board/htkw/mcx/mcx.c index 1f9840c34..9fe6408ec 100644 --- a/board/htkw/mcx/mcx.c +++ b/board/htkw/mcx/mcx.c @@ -27,6 +27,8 @@  #include <asm/mach-types.h>  #include <asm/gpio.h>  #include <asm/omap_gpio.h> +#include <asm/arch/dss.h> +#include <asm/arch/clocks.h>  #include "errno.h"  #include <i2c.h>  #ifdef CONFIG_USB_EHCI @@ -38,6 +40,10 @@  DECLARE_GLOBAL_DATA_PTR;  #define HOT_WATER_BUTTON	42 +#define LCD_OUTPUT		55 + +/* Address of the framebuffer in RAM. */ +#define FB_START_ADDRESS 0x88000000  #ifdef CONFIG_USB_EHCI  static struct omap_usbhs_board_data usbhs_bdata = { @@ -67,6 +73,8 @@ int board_init(void)  	/* boot param addr */  	gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 + 0x100); +	gpio_direction_output(LCD_OUTPUT, 0); +  	return 0;  } @@ -109,3 +117,36 @@ int board_mmc_init(bd_t *bis)  	return omap_mmc_init(0, 0, 0);  }  #endif + +#if defined(CONFIG_VIDEO) && !defined(CONFIG_SPL_BUILD) + +static struct panel_config lcd_cfg = { +	.timing_h       = PANEL_TIMING_H(40, 40, 48), +	.timing_v       = PANEL_TIMING_V(29, 13, 3), +	.pol_freq       = 0x00003000, /* Pol Freq */ +	.divisor        = 0x0001000E, +	.panel_type     = 0x01, /* TFT */ +	.data_lines     = 0x03, /* 24 Bit RGB */ +	.load_mode      = 0x02, /* Frame Mode */ +	.panel_color	= 0, +	.lcd_size	= PANEL_LCD_SIZE(800, 480), +}; + +int board_video_init(void) +{ +	struct prcm *prcm_base = (struct prcm *)PRCM_BASE; +	void *fb; + +	fb = (void *)FB_START_ADDRESS; + +	lcd_cfg.frame_buffer = fb; + +	setbits_le32(&prcm_base->fclken_dss, FCK_DSS_ON); +	setbits_le32(&prcm_base->iclken_dss, ICK_DSS_ON); + +	omap3_dss_panel_config(&lcd_cfg); +	omap3_dss_enable(); + +	return 0; +} +#endif diff --git a/board/htkw/mcx/mcx.h b/board/htkw/mcx/mcx.h index f9601c641..0d4c64220 100644 --- a/board/htkw/mcx/mcx.h +++ b/board/htkw/mcx/mcx.h @@ -264,6 +264,8 @@ const omap3_sysinfo sysinfo = {  	MUX_VAL(CP(I2C3_SDA),		(IEN  | PTU | EN  | M0)) \  	MUX_VAL(CP(I2C4_SCL),		(IEN  | PTU | EN  | M0)) \  	MUX_VAL(CP(I2C4_SDA),		(IEN  | PTU | EN  | M0)) \ +	MUX_VAL(CP(HDQ_SIO),		(IEN  | PTU | EN  | M4)) \ +					/* GPIO_170 Touchscreen ISR */\  	/* McSPI */\  	MUX_VAL(CP(MCSPI1_CLK),		(IEN  | PTD | DIS | M0)) \  	MUX_VAL(CP(MCSPI1_SIMO),	(IEN  | PTD | DIS | M0)) \ diff --git a/include/configs/mcx.h b/include/configs/mcx.h index 96e105996..bf49cc138 100644 --- a/include/configs/mcx.h +++ b/include/configs/mcx.h @@ -181,7 +181,7 @@  #define CONFIG_JFFS2_PART_SIZE		0xf980000	/* sz of jffs2 part */  /* Environment information */ -#define CONFIG_BOOTDELAY	10 +#define CONFIG_BOOTDELAY	3  #define CONFIG_BOOTFILE		"uImage" @@ -257,6 +257,10 @@  		"ubi readvol ${loadaddr} kernel;"			\  		"run addtty addmtd addfb addeth addmisc;"		\  		"bootm ${loadaddr}\0"					\ +	"preboot=ubi part nand0,7;"					\ +		"ubi readvol ${loadaddr} splash;"			\ +		"bmp display ${loadaddr};"				\ +		"gpio set 55\0"						\  	"swupdate_args=setenv bootargs root=/dev/ram "			\  		"quiet loglevel=1 "					\  		"consoleblank=0 ${swupdate_misc}\0"			\ @@ -303,6 +307,7 @@  #define CONFIG_SYS_LOAD_ADDR		(OMAP34XX_SDRC_CS0) /* default load */  								/* address */ +#define CONFIG_PREBOOT  /*   * AM3517 has 12 GP timers, they can be driven by the system clock @@ -422,4 +427,13 @@  #define CONFIG_NET_RETRY_COUNT 10  #endif +#define CONFIG_VIDEO +#define CONFIG_CFB_CONSOLE +#define CONFIG_VGA_AS_SINGLE_DEVICE +#define CONFIG_SPLASH_SCREEN +#define CONFIG_VIDEO_BMP_RLE8 +#define CONFIG_CMD_BMP +#define CONFIG_VIDEO_OMAP3 +#define CONFIG_SYS_CONSOLE_IS_IN_ENV +  #endif /* __CONFIG_H */ |