Changeset 20603 for trunk


Ignore:
Timestamp:
2010-03-30T15:49:42+02:00 (7 years ago)
Author:
ralph
Message:

adding httpd - failsafe patch
flash write routine is not functional yet
add configuration (board & dram)

Location:
trunk/package/uboot-lantiq
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/package/uboot-lantiq/Makefile

    r20564 r20603  
    3636endef 
    3737 
    38 UBOOT_CONFIG:=easy50712_DDR166M 
     38UBOOT_CONFIG:=$(call qstrip,$(CONFIG_UBOOT_CONFIG)) 
     39UBOOT_DDR_CONFIG:=$(call qstrip,$(CONFIG_UBOOT_DDR_CONFIG)) 
     40 
    3941UBOOT_MAKE_OPTS:= \ 
    4042        CROSS_COMPILE=$(TARGET_CROSS) \ 
    4143        ENDIANNESS= \ 
    4244        V=1 
     45 
     46define Package/uboot-lantiq/config 
     47        menu "configuration" 
     48                source "$(SOURCE)/Config.in" 
     49        endmenu 
     50endef 
    4351 
    4452define Build/Configure/Target 
     
    5159define Build/Configure 
    5260        $(call Build/Configure/Target,$(UBOOT_CONFIG)) 
     61ifeq ($(CONFIG_UBOOT_RAMBOOT),y) 
    5362        $(call Build/Configure/Target,$(UBOOT_CONFIG)_ramboot) 
     63endif 
    5464endef 
    5565 
     
    6373define Build/Compile 
    6474        $(call Build/Compile/Target,$(UBOOT_CONFIG)) 
     75ifeq ($(CONFIG_UBOOT_RAMBOOT),y) 
    6576        $(call Build/Compile/Target,$(UBOOT_CONFIG)_ramboot) 
     77endif 
    6678endef 
    6779 
     
    7284                of=$(1)/$(UBOOT_CONFIG)/u-boot.bin \ 
    7385                bs=64k conv=sync 
     86ifeq ($(CONFIG_UBOOT_RAMBOOT),y) 
    7487        if [ -e $(UBOOT_CONFIG).conf ]; then \ 
    7588                perl ./gct \ 
    76                         $(UBOOT_CONFIG).conf \ 
     89                        $(UBOOT_DDR_CONFIG) \ 
    7790                        $(PKG_BUILD_DIR)/$(UBOOT_CONFIG)_ramboot/u-boot.srec \ 
    7891                        $(1)/$(UBOOT_CONFIG)/u-boot.asc; \ 
    7992        fi 
     93endif 
    8094endef 
    8195 
  • trunk/package/uboot-lantiq/files/board/infineon/easy50712/danube.c

    r20561 r20603  
    3333#include <asm/reboot.h> 
    3434#include <asm/io.h> 
     35#if defined(CONFIG_CMD_HTTPD) 
     36#include <httpd.h> 
     37#endif 
    3538 
    3639extern ulong ifx_get_ddr_hz(void); 
     
    337340} 
    338341 
     342#if defined(CONFIG_CMD_HTTPD) 
     343static int image_info (ulong addr) 
     344{ 
     345   void *hdr = (void *)addr; 
     346 
     347   printf ("\n## Checking Image at %08lx ...\n", addr); 
     348 
     349   switch (genimg_get_format (hdr)) { 
     350   case IMAGE_FORMAT_LEGACY: 
     351      puts ("   Legacy image found\n"); 
     352      if (!image_check_magic (hdr)) { 
     353         puts ("   Bad Magic Number\n"); 
     354         return 1; 
     355      } 
     356 
     357      if (!image_check_hcrc (hdr)) { 
     358         puts ("   Bad Header Checksum\n"); 
     359         return 1; 
     360      } 
     361 
     362      image_print_contents (hdr); 
     363 
     364      puts ("   Verifying Checksum ... "); 
     365      if (!image_check_dcrc (hdr)) { 
     366         puts ("   Bad Data CRC\n"); 
     367         return 1; 
     368      } 
     369      puts ("OK\n"); 
     370      return 0; 
     371#if defined(CONFIG_FIT) 
     372   case IMAGE_FORMAT_FIT: 
     373      puts ("   FIT image found\n"); 
     374 
     375      if (!fit_check_format (hdr)) { 
     376         puts ("Bad FIT image format!\n"); 
     377         return 1; 
     378      } 
     379 
     380      fit_print_contents (hdr); 
     381 
     382      if (!fit_all_image_check_hashes (hdr)) { 
     383         puts ("Bad hash in FIT image!\n"); 
     384         return 1; 
     385      } 
     386 
     387      return 0; 
     388#endif 
     389   default: 
     390      puts ("Unknown image format!\n"); 
     391      break; 
     392   } 
     393 
     394   return 1; 
     395} 
     396 
     397int do_http_upgrade(const unsigned char *data, const ulong size) 
     398{ 
     399        /* check the image */ 
     400        if(image_info(data)) { 
     401                return -1; 
     402        } 
     403        /* write the image to the flash */ 
     404        puts("http ugrade ...\n"); 
     405        return 0; 
     406} 
     407 
     408int do_http_progress(const int state) 
     409{ 
     410        /* toggle LED's here */ 
     411        switch(state) { 
     412                case HTTP_PROGRESS_START: 
     413                puts("http start\n"); 
     414                break; 
     415                case HTTP_PROGRESS_TIMEOUT: 
     416                break; 
     417                case HTTP_PROGRESS_UPLOAD_READY: 
     418                puts("http upload ready\n"); 
     419                break; 
     420                case HTTP_PROGRESS_UGRADE_READY: 
     421                puts("http ugrade ready\n"); 
     422                break; 
     423                case HTTP_PROGRESS_UGRADE_FAILED: 
     424                puts("http ugrade failed\n"); 
     425                break; 
     426        } 
     427        return 0; 
     428} 
     429 
     430unsigned long do_http_tmp_address(void) 
     431{ 
     432        char *s = getenv ("ram_addr"); 
     433        if (s) { 
     434                ulong tmp = simple_strtoul (s, NULL, 16); 
     435                return tmp; 
     436        } 
     437        return 0 /*0x80a00000*/; 
     438} 
     439 
     440#endif 
  • trunk/package/uboot-lantiq/files/include/configs/easy50712.h

    r20561 r20603  
    113113#endif 
    114114 
     115#define CONFIG_CMD_HTTPD                /* enable upgrade via HTTPD */ 
     116 
    115117#endif  /* __CONFIG_H */ 
Note: See TracChangeset for help on using the changeset viewer.