X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=board%2FBuS%2FEB%2BMCF-EV123%2FEB%2BMCF-EV123.c;h=d64ad1b705c41eedee97056898f3053d84ee9abb;hb=14d0a02a168b36e87665b8d7f42fa3e88263d26d;hp=02a095ef8df4fb401b5324dfc76dc3f37c77ce10;hpb=ea393eb1d6a786fc2e895f90abb5f7e7541aef45;p=platform%2Fkernel%2Fu-boot.git diff --git a/board/BuS/EB+MCF-EV123/EB+MCF-EV123.c b/board/BuS/EB+MCF-EV123/EB+MCF-EV123.c index 02a095e..d64ad1b 100644 --- a/board/BuS/EB+MCF-EV123/EB+MCF-EV123.c +++ b/board/BuS/EB+MCF-EV123/EB+MCF-EV123.c @@ -1,5 +1,5 @@ /* - * (C) Copyright 2005 + * (C) Copyright 2005-2009 * BuS Elektronik GmbH & Co.KG * * (C) Copyright 2000-2003 @@ -27,12 +27,23 @@ #include #include #include "asm/m5282.h" -#include "VCxK.h" +#include +#include +#include + +/*---------------------------------------------------------------------------*/ + +DECLARE_GLOBAL_DATA_PTR; + +unsigned long display_width; +unsigned long display_height; + +/*---------------------------------------------------------------------------*/ int checkboard (void) { puts ("Board: MCF-EV1 + MCF-EV23 (BuS Elektronik GmbH & Co. KG)\n"); -#if (TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE) +#if (CONFIG_SYS_TEXT_BASE == CONFIG_SYS_INT_FLASH_BASE) puts (" Boot from Internal FLASH\n"); #endif @@ -89,7 +100,6 @@ phys_size_t initdram (int board_type) return size; } - #if defined(CONFIG_SYS_DRAM_TEST) int testdram (void) { @@ -126,37 +136,99 @@ int testdram (void) int misc_init_r(void) { - init_vcxk(); +#ifdef CONFIG_HW_WATCHDOG + hw_watchdog_init(); +#endif +#ifndef CONFIG_VIDEO + vcxk_init(16, 16); +#endif return 1; } +#if defined(CONFIG_VIDEO) + +/* + ****h* EB+CPU5282-T1/drv_video_init + * FUNCTION + *** + */ + +int drv_video_init(void) +{ + char *s; + unsigned long splash; + + printf("Init Video as "); + + if ((s = getenv("displaywidth")) != NULL) + display_width = simple_strtoul(s, NULL, 10); + else + display_width = 256; + + if ((s = getenv("displayheight")) != NULL) + display_height = simple_strtoul(s, NULL, 10); + else + display_height = 256; + + printf("%lu x %lu pixel matrix\n", display_width, display_height); + + MCFCCM_CCR &= ~MCFCCM_CCR_SZEN; + MCFGPIO_PEPAR &= ~MCFGPIO_PEPAR_PEPA2; + + vcxk_init(display_width, display_height); + +#ifdef CONFIG_SPLASH_SCREEN + if ((s = getenv("splashimage")) != NULL) { + debug("use splashimage: %s\n", s); + splash = simple_strtoul(s, NULL, 16); + debug("use splashimage: %x\n", splash); + vcxk_acknowledge_wait(); + video_display_bitmap(splash, 0, 0); + } +#endif + return 0; +} +#endif + /*---------------------------------------------------------------------------*/ -int do_vcimage (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) +#ifdef CONFIG_VIDEO +int do_brightness(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { int rcode = 0; - ulong source; + ulong side; + ulong bright; switch (argc) { - case 2: - source = simple_strtoul(argv[1],NULL,16); - vcxk_loadimage(source); - rcode = 0; + case 3: + side = simple_strtoul(argv[1], NULL, 10); + bright = simple_strtoul(argv[2], NULL, 10); + if ((side >= 0) && (side <= 3) && + (bright >= 0) && (bright <= 1000)) { + vcxk_setbrightness(side, bright); + rcode = 0; + } else { + printf("parameters out of range\n"); + printf("Usage:\n%s\n", cmdtp->usage); + rcode = 1; + } break; default: - cmd_usage(cmdtp); + printf("Usage:\n%s\n", cmdtp->usage); rcode = 1; break; } return rcode; } -/***************************************************/ +/*---------------------------------------------------------------------------*/ U_BOOT_CMD( - vcimage, 2, 0, do_vcimage, - "loads an image to Display", - "vcimage addr\n" + bright, 3, 0, do_brightness, + "sets the display brightness\n", + " <0..1000>\n side: 0/3=both; 1=first; 2=second\n" ); -/* EOF EB+MCF-EV123c */ +#endif + +/* EOF EB+MCF-EV123.c */