Merge branch 'master' of ssh://10.10.0.7/home/wd/git/u-boot/master
authorWolfgang Denk <wd@denx.de>
Thu, 31 Jul 2008 15:50:37 +0000 (17:50 +0200)
committerWolfgang Denk <wd@denx.de>
Thu, 31 Jul 2008 15:50:37 +0000 (17:50 +0200)
Makefile
common/cmd_bootm.c
common/lcd.c
drivers/video/atmel_lcdfb.c
onenand_ipl/board/apollon/Makefile

index b104617..0f54121 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -346,10 +346,9 @@ $(U_BOOT_NAND):    $(NAND_SPL) $(obj)u-boot.bin $(obj)include/autoconf.mk
                cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
 
 $(ONENAND_IPL):        $(VERSION_FILE) $(obj)include/autoconf.mk
-               $(MAKE) -C $(obj)onenand_ipl/board/$(BOARDDIR) all
+               $(MAKE) -C onenand_ipl/board/$(BOARDDIR) all
 
 $(U_BOOT_ONENAND):     $(ONENAND_IPL) $(obj)u-boot.bin $(obj)include/autoconf.mk
-               $(MAKE) -C $(obj)onenand_ipl/board/$(BOARDDIR) all
                cat $(obj)onenand_ipl/onenand-ipl-2k.bin $(obj)u-boot.bin > $(obj)u-boot-onenand.bin
                cat $(obj)onenand_ipl/onenand-ipl-4k.bin $(obj)u-boot.bin > $(obj)u-boot-flexonenand.bin
 
@@ -2661,6 +2660,7 @@ zylonite_config :
 
 apollon_config         : unconfig
        @mkdir -p $(obj)include
+       @mkdir -p $(obj)onenand_ipl/board/apollon
        @echo "#define CONFIG_ONENAND_U_BOOT" > $(obj)include/config.h
        @$(MKCONFIG) $(@:_config=) arm arm1136 apollon NULL omap24xx
        @echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk
index 18682fe..18d7100 100644 (file)
@@ -251,10 +251,9 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 
                        memmove_wd ((void *)load_start,
                                   (void *)os_data, os_len, CHUNKSZ);
-
-                       load_end = load_start + os_len;
-                       puts("OK\n");
                }
+               load_end = load_start + os_len;
+               puts("OK\n");
                break;
        case IH_COMP_GZIP:
                printf ("   Uncompressing %s ... ", type_name);
index eec1f53..3bbc7ba 100644 (file)
@@ -740,6 +740,9 @@ int lcd_display_bitmap(ulong bmp_image, int x, int y)
 }
 #endif
 
+#ifdef CONFIG_VIDEO_BMP_GZIP
+extern bmp_image_t *gunzip_bmp(unsigned long addr, unsigned long *lenp);
+#endif
 
 static void *lcd_logo (void)
 {
@@ -761,6 +764,16 @@ static void *lcd_logo (void)
                addr = simple_strtoul(s, NULL, 16);
                do_splash = 0;
 
+#ifdef CONFIG_VIDEO_BMP_GZIP
+               bmp_image_t *bmp = (bmp_image_t *)addr;
+               unsigned long len;
+
+               if (!((bmp->header.signature[0]=='B') &&
+                     (bmp->header.signature[1]=='M'))) {
+                       addr = (ulong)gunzip_bmp(addr, &len);
+               }
+#endif
+
                if (lcd_display_bitmap (addr, 0, 0) == 0) {
                        return ((void *)lcd_base);
                }
index 27df449..b332a82 100644 (file)
@@ -100,7 +100,11 @@ void lcd_ctrl_init(void *lcdbase)
                            value << ATMEL_LCDC_CLKVAL_OFFSET);
 
        /* Initialize control register 2 */
+#ifdef CONFIG_AVR32
+       value = ATMEL_LCDC_MEMOR_BIG | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE;
+#else
        value = ATMEL_LCDC_MEMOR_LITTLE | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE;
+#endif
        if (panel_info.vl_tft)
                value |= ATMEL_LCDC_DISTYPE_TFT;
 
index f10ed02..1f996a4 100644 (file)
@@ -1,6 +1,5 @@
 
 include $(TOPDIR)/config.mk
-include $(TOPDIR)/include/config.mk
 include $(TOPDIR)/onenand_ipl/board/$(BOARDDIR)/config.mk
 
 LDSCRIPT= $(TOPDIR)/onenand_ipl/board/$(BOARDDIR)/u-boot.onenand.lds
@@ -9,8 +8,11 @@ AFLAGS += -DCONFIG_ONENAND_IPL
 CFLAGS += -DCONFIG_ONENAND_IPL
 OBJCLFAGS += --gap-fill=0x00
 
-SOBJS  = start.o low_levelinit.o
-COBJS  = apollon.o onenand_read.o onenand_boot.o
+SOBJS  := low_levelinit.o
+SOBJS  += start.o
+COBJS  := apollon.o
+COBJS  += onenand_read.o
+COBJS  += onenand_boot.o
 
 SRCS   := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
 OBJS   := $(addprefix $(obj),$(SOBJS) $(COBJS))
@@ -34,28 +36,39 @@ $(onenandobj)onenand-ipl.bin:       $(onenandobj)onenand-ipl
 
 $(onenandobj)onenand-ipl:      $(OBJS)
        cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \
-               -Map $(onenandobj)onenand-ipl.map \
-               -o $(onenandobj)onenand-ipl
+               -Map $@.map -o $@
 
 # create symbolic links from common files
 
 # from cpu directory
 $(obj)start.S:
-       rm -f $(obj)start.S
-       ln -s $(SRCTREE)/cpu/$(CPU)/start.S $(obj)start.S
+       @rm -f $@
+       ln -s $(SRCTREE)/cpu/$(CPU)/start.S $@
 
 # from onenand_ipl directory
 $(obj)onenand_ipl.h:
-       rm -f $(obj)onenand_ipl.h
-       ln -s $(SRCTREE)/onenand_ipl/onenand_ipl.h $(obj)onenand_ipl.h
+       @rm -f $@
+       ln -s $(SRCTREE)/onenand_ipl/onenand_ipl.h $@
 
 $(obj)onenand_boot.c:  $(obj)onenand_ipl.h
-       rm -f $(obj)onenand_boot.c
-       ln -s $(SRCTREE)/onenand_ipl/onenand_boot.c $(obj)onenand_boot.c
+       @rm -f $@
+       ln -s $(SRCTREE)/onenand_ipl/onenand_boot.c $@
 
 $(obj)onenand_read.c:  $(obj)onenand_ipl.h
-       rm -f $(obj)onenand_read.c
-       ln -s $(SRCTREE)/onenand_ipl/onenand_read.c $(obj)onenand_read.c
+       @rm -f $@
+       ln -s $(SRCTREE)/onenand_ipl/onenand_read.c $@
+
+ifneq ($(OBJTREE), $(SRCTREE))
+$(obj)apollon.c:
+       @rm -f $@
+       ln -s $(SRCTREE)/onenand_ipl/board/$(BOARDDIR)/apollon.c $@
+
+$(obj)low_levelinit.S:
+       @rm -f $@
+       ln -s $(SRCTREE)/onenand_ipl/board/$(BOARDDIR)/low_levelinit.S $@
+endif
+
+#########################################################################
 
 $(obj)%.o:     $(obj)%.S
        $(CC) $(AFLAGS) -c -o $@ $<
@@ -63,6 +76,9 @@ $(obj)%.o:    $(obj)%.S
 $(obj)%.o:     $(obj)$.c
        $(CC) $(CFLAGS) -c -o $@ $<
 
+# defines $(obj).depend target
 include $(SRCTREE)/rules.mk
 
 sinclude $(obj).depend
+
+#########################################################################