* Patches by Richard Woodruff, 10 Jun 2004:
- fix problems with examples/stubs.c for GCC >= 3.4 - fix problems with gd initialization * Enable FAT filesystem support for HMI10 board
This commit is contained in:
parent
39539887ea
commit
93f6a6771b
|
@ -2,6 +2,10 @@
|
||||||
Changes since U-Boot 1.1.1:
|
Changes since U-Boot 1.1.1:
|
||||||
======================================================================
|
======================================================================
|
||||||
|
|
||||||
|
* Patches by Richard Woodruff, 10 Jun 2004:
|
||||||
|
- fix problems with examples/stubs.c for GCC >= 3.4
|
||||||
|
- fix problems with gd initialization
|
||||||
|
|
||||||
* Patch by Curt Brune, 17 May 2004:
|
* Patch by Curt Brune, 17 May 2004:
|
||||||
- Add support for Samsung S3C4510B CPU (ARM7tdmi based SoC)
|
- Add support for Samsung S3C4510B CPU (ARM7tdmi based SoC)
|
||||||
- Add support for ESPD-Inc. EVB4510 Board
|
- Add support for ESPD-Inc. EVB4510 Board
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
#include <exports.h>
|
#include <exports.h>
|
||||||
|
|
||||||
|
#ifndef GCC_VERSION
|
||||||
|
#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
|
||||||
|
#endif /* GCC_VERSION */
|
||||||
|
|
||||||
#if defined(CONFIG_I386)
|
#if defined(CONFIG_I386)
|
||||||
/*
|
/*
|
||||||
* x86 does not have a dedicated register to store the pointer to
|
* x86 does not have a dedicated register to store the pointer to
|
||||||
|
@ -117,7 +121,10 @@ gd_t *global_data;
|
||||||
* implementation. On the other hand, asm() statements with
|
* implementation. On the other hand, asm() statements with
|
||||||
* arguments can be used only inside the functions (gcc limitation)
|
* arguments can be used only inside the functions (gcc limitation)
|
||||||
*/
|
*/
|
||||||
static void __attribute__((unused)) dummy(void)
|
#if GCC_VERSION < 3004
|
||||||
|
static
|
||||||
|
#endif /* GCC_VERSION */
|
||||||
|
void __attribute__((unused)) dummy(void)
|
||||||
{
|
{
|
||||||
#include <_exports.h>
|
#include <_exports.h>
|
||||||
}
|
}
|
||||||
|
|
|
@ -131,6 +131,7 @@
|
||||||
CFG_CMD_BMP | \
|
CFG_CMD_BMP | \
|
||||||
CFG_CMD_DATE | \
|
CFG_CMD_DATE | \
|
||||||
CFG_CMD_DHCP | \
|
CFG_CMD_DHCP | \
|
||||||
|
CFG_CMD_FAT | \
|
||||||
CFG_CMD_I2C | \
|
CFG_CMD_I2C | \
|
||||||
CFG_CMD_IDE )
|
CFG_CMD_IDE )
|
||||||
#else
|
#else
|
||||||
|
@ -138,6 +139,7 @@
|
||||||
CFG_CMD_ASKENV | \
|
CFG_CMD_ASKENV | \
|
||||||
CFG_CMD_DATE | \
|
CFG_CMD_DATE | \
|
||||||
CFG_CMD_DHCP | \
|
CFG_CMD_DHCP | \
|
||||||
|
CFG_CMD_FAT | \
|
||||||
CFG_CMD_I2C | \
|
CFG_CMD_I2C | \
|
||||||
CFG_CMD_IDE )
|
CFG_CMD_IDE )
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -217,6 +217,9 @@ void start_armboot (void)
|
||||||
|
|
||||||
/* Pointer is writable since we allocated a register for it */
|
/* Pointer is writable since we allocated a register for it */
|
||||||
gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));
|
gd = (gd_t*)(_armboot_start - CFG_MALLOC_LEN - sizeof(gd_t));
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
memset ((void*)gd, 0, sizeof (gd_t));
|
memset ((void*)gd, 0, sizeof (gd_t));
|
||||||
gd->bd = (bd_t*)((char*)gd - sizeof(bd_t));
|
gd->bd = (bd_t*)((char*)gd - sizeof(bd_t));
|
||||||
memset (gd->bd, 0, sizeof (bd_t));
|
memset (gd->bd, 0, sizeof (bd_t));
|
||||||
|
|
|
@ -244,6 +244,8 @@ void start_i386boot (void)
|
||||||
show_boot_progress(0x21);
|
show_boot_progress(0x21);
|
||||||
|
|
||||||
gd = global_data = &gd_data;
|
gd = global_data = &gd_data;
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
memset (gd, 0, sizeof (gd_t));
|
memset (gd, 0, sizeof (gd_t));
|
||||||
gd->bd = &bd_data;
|
gd->bd = &bd_data;
|
||||||
|
|
|
@ -257,6 +257,8 @@ board_init_f (ulong bootflag)
|
||||||
|
|
||||||
/* Pointer is writable since we allocated a register for it */
|
/* Pointer is writable since we allocated a register for it */
|
||||||
gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
|
gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
/* Clear initial global data */
|
/* Clear initial global data */
|
||||||
memset ((void *) gd, 0, sizeof (gd_t));
|
memset ((void *) gd, 0, sizeof (gd_t));
|
||||||
|
|
|
@ -193,6 +193,9 @@ void board_init_f(ulong bootflag)
|
||||||
/* Pointer is writable since we allocated a register for it.
|
/* Pointer is writable since we allocated a register for it.
|
||||||
*/
|
*/
|
||||||
gd = &gd_data;
|
gd = &gd_data;
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
memset ((void *)gd, 0, sizeof (gd_t));
|
memset ((void *)gd, 0, sizeof (gd_t));
|
||||||
|
|
||||||
for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
|
for (init_fnc_ptr = init_sequence; *init_fnc_ptr; ++init_fnc_ptr) {
|
||||||
|
|
|
@ -117,6 +117,9 @@ void board_init (void)
|
||||||
* Nios treats CFG_GBL_DATA_OFFSET as an address.
|
* Nios treats CFG_GBL_DATA_OFFSET as an address.
|
||||||
*/
|
*/
|
||||||
gd = (gd_t *)CFG_GBL_DATA_OFFSET;
|
gd = (gd_t *)CFG_GBL_DATA_OFFSET;
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
memset( gd, 0, CFG_GBL_DATA_SIZE );
|
memset( gd, 0, CFG_GBL_DATA_SIZE );
|
||||||
|
|
||||||
gd->bd = (bd_t *)(gd+1); /* At end of global data */
|
gd->bd = (bd_t *)(gd+1); /* At end of global data */
|
||||||
|
|
|
@ -353,6 +353,8 @@ void board_init_f (ulong bootflag)
|
||||||
|
|
||||||
/* Pointer is writable since we allocated a register for it */
|
/* Pointer is writable since we allocated a register for it */
|
||||||
gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
|
gd = (gd_t *) (CFG_INIT_RAM_ADDR + CFG_GBL_DATA_OFFSET);
|
||||||
|
/* compiler optimization barrier needed for GCC >= 3.4 */
|
||||||
|
__asm__ __volatile__("": : :"memory");
|
||||||
|
|
||||||
#if !(defined(CONFIG_8260) || defined(CONFIG_MPC8560))
|
#if !(defined(CONFIG_8260) || defined(CONFIG_MPC8560))
|
||||||
/* Clear initial global data */
|
/* Clear initial global data */
|
||||||
|
|
Loading…
Reference in New Issue