diff options
| -rw-r--r-- | common/env_common.c | 97 | ||||
| -rw-r--r-- | common/env_embedded.c | 104 | ||||
| -rw-r--r-- | include/env_default.h | 135 | ||||
| -rw-r--r-- | tools/env/fw_env.c | 98 | 
4 files changed, 141 insertions, 293 deletions
| diff --git a/common/env_common.c b/common/env_common.c index 61c4be54d..3d3cb70a6 100644 --- a/common/env_common.c +++ b/common/env_common.c @@ -37,102 +37,7 @@ DECLARE_GLOBAL_DATA_PTR;  /************************************************************************   * Default settings to be used when no valid environment is found   */ - -const uchar default_environment[] = { -#ifdef	CONFIG_BOOTARGS -	"bootargs="	CONFIG_BOOTARGS			"\0" -#endif -#ifdef	CONFIG_BOOTCOMMAND -	"bootcmd="	CONFIG_BOOTCOMMAND		"\0" -#endif -#ifdef	CONFIG_RAMBOOTCOMMAND -	"ramboot="	CONFIG_RAMBOOTCOMMAND		"\0" -#endif -#ifdef	CONFIG_NFSBOOTCOMMAND -	"nfsboot="	CONFIG_NFSBOOTCOMMAND		"\0" -#endif -#if defined(CONFIG_BOOTDELAY) && (CONFIG_BOOTDELAY >= 0) -	"bootdelay="	__stringify(CONFIG_BOOTDELAY)	"\0" -#endif -#if defined(CONFIG_BAUDRATE) && (CONFIG_BAUDRATE >= 0) -	"baudrate="	__stringify(CONFIG_BAUDRATE)	"\0" -#endif -#ifdef	CONFIG_LOADS_ECHO -	"loads_echo="	__stringify(CONFIG_LOADS_ECHO)	"\0" -#endif -#ifdef	CONFIG_ETHADDR -	"ethaddr="	__stringify(CONFIG_ETHADDR)	"\0" -#endif -#ifdef	CONFIG_ETH1ADDR -	"eth1addr="	__stringify(CONFIG_ETH1ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH2ADDR -	"eth2addr="	__stringify(CONFIG_ETH2ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH3ADDR -	"eth3addr="	__stringify(CONFIG_ETH3ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH4ADDR -	"eth4addr="	__stringify(CONFIG_ETH4ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH5ADDR -	"eth5addr="	__stringify(CONFIG_ETH5ADDR)	"\0" -#endif -#ifdef	CONFIG_ETHPRIME -	"ethprime="	CONFIG_ETHPRIME			"\0" -#endif -#ifdef	CONFIG_IPADDR -	"ipaddr="	__stringify(CONFIG_IPADDR)	"\0" -#endif -#ifdef	CONFIG_SERVERIP -	"serverip="	__stringify(CONFIG_SERVERIP)	"\0" -#endif -#ifdef	CONFIG_SYS_AUTOLOAD -	"autoload="	CONFIG_SYS_AUTOLOAD		"\0" -#endif -#ifdef	CONFIG_PREBOOT -	"preboot="	CONFIG_PREBOOT			"\0" -#endif -#ifdef	CONFIG_ROOTPATH -	"rootpath="	CONFIG_ROOTPATH			"\0" -#endif -#ifdef	CONFIG_GATEWAYIP -	"gatewayip="	__stringify(CONFIG_GATEWAYIP)	"\0" -#endif -#ifdef	CONFIG_NETMASK -	"netmask="	__stringify(CONFIG_NETMASK)	"\0" -#endif -#ifdef	CONFIG_HOSTNAME -	"hostname="	__stringify(CONFIG_HOSTNAME)	"\0" -#endif -#ifdef	CONFIG_BOOTFILE -	"bootfile="	CONFIG_BOOTFILE			"\0" -#endif -#ifdef	CONFIG_LOADADDR -	"loadaddr="	__stringify(CONFIG_LOADADDR)	"\0" -#endif -#ifdef	CONFIG_CLOCKS_IN_MHZ -	"clocks_in_mhz=1\0" -#endif -#if defined(CONFIG_PCI_BOOTDELAY) && (CONFIG_PCI_BOOTDELAY > 0) -	"pcidelay="	__stringify(CONFIG_PCI_BOOTDELAY)"\0" -#endif -#ifdef	CONFIG_ENV_VARS_UBOOT_CONFIG -	"arch="		CONFIG_SYS_ARCH			"\0" -	"cpu="		CONFIG_SYS_CPU			"\0" -	"board="	CONFIG_SYS_BOARD		"\0" -#ifdef CONFIG_SYS_VENDOR -	"vendor="	CONFIG_SYS_VENDOR		"\0" -#endif -#ifdef CONFIG_SYS_SOC -	"soc="		CONFIG_SYS_SOC			"\0" -#endif -#endif -#ifdef	CONFIG_EXTRA_ENV_SETTINGS -	CONFIG_EXTRA_ENV_SETTINGS -#endif -	"\0" -}; +#include <env_default.h>  struct hsearch_data env_htab = {  	.apply = env_check_apply, diff --git a/common/env_embedded.c b/common/env_embedded.c index 8cc08ae4d..52bc6873d 100644 --- a/common/env_embedded.c +++ b/common/env_embedded.c @@ -89,107 +89,9 @@  #  define ENV_CRC	(~0)  #endif -env_t environment __PPCENV__ = { -	ENV_CRC,	/* CRC Sum */ -#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT -	1,		/* Flags: valid */ -#endif -	{ -#if defined(CONFIG_BOOTARGS) -	"bootargs="	CONFIG_BOOTARGS			"\0" -#endif -#if defined(CONFIG_BOOTCOMMAND) -	"bootcmd="	CONFIG_BOOTCOMMAND		"\0" -#endif -#if defined(CONFIG_RAMBOOTCOMMAND) -	"ramboot="	CONFIG_RAMBOOTCOMMAND		"\0" -#endif -#if defined(CONFIG_NFSBOOTCOMMAND) -	"nfsboot="	CONFIG_NFSBOOTCOMMAND		"\0" -#endif -#if defined(CONFIG_BOOTDELAY) && (CONFIG_BOOTDELAY >= 0) -	"bootdelay="	__stringify(CONFIG_BOOTDELAY)	"\0" -#endif -#if defined(CONFIG_BAUDRATE) && (CONFIG_BAUDRATE >= 0) -	"baudrate="	__stringify(CONFIG_BAUDRATE)	"\0" -#endif -#ifdef	CONFIG_LOADS_ECHO -	"loads_echo="	__stringify(CONFIG_LOADS_ECHO)	"\0" -#endif -#ifdef	CONFIG_ETHADDR -	"ethaddr="	__stringify(CONFIG_ETHADDR)	"\0" -#endif -#ifdef	CONFIG_ETH1ADDR -	"eth1addr="	__stringify(CONFIG_ETH1ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH2ADDR -	"eth2addr="	__stringify(CONFIG_ETH2ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH3ADDR -	"eth3addr="	__stringify(CONFIG_ETH3ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH4ADDR -	"eth4addr="	__stringify(CONFIG_ETH4ADDR)	"\0" -#endif -#ifdef	CONFIG_ETH5ADDR -	"eth5addr="	__stringify(CONFIG_ETH5ADDR)	"\0" -#endif -#ifdef	CONFIG_ETHPRIME -	"ethprime="	CONFIG_ETHPRIME			"\0" -#endif -#ifdef	CONFIG_IPADDR -	"ipaddr="	__stringify(CONFIG_IPADDR)	"\0" -#endif -#ifdef	CONFIG_SERVERIP -	"serverip="	__stringify(CONFIG_SERVERIP)	"\0" -#endif -#ifdef	CONFIG_SYS_AUTOLOAD -	"autoload="	CONFIG_SYS_AUTOLOAD		"\0" -#endif -#ifdef	CONFIG_ROOTPATH -	"rootpath="	CONFIG_ROOTPATH			"\0" -#endif -#ifdef	CONFIG_GATEWAYIP -	"gatewayip="	__stringify(CONFIG_GATEWAYIP)	"\0" -#endif -#ifdef	CONFIG_NETMASK -	"netmask="	__stringify(CONFIG_NETMASK)	"\0" -#endif -#ifdef	CONFIG_HOSTNAME -	"hostname="	__stringify(CONFIG_HOSTNAME)	"\0" -#endif -#ifdef	CONFIG_BOOTFILE -	"bootfile="	CONFIG_BOOTFILE			"\0" -#endif -#ifdef	CONFIG_LOADADDR -	"loadaddr="	__stringify(CONFIG_LOADADDR)	"\0" -#endif -#ifdef	CONFIG_PREBOOT -	"preboot="	CONFIG_PREBOOT			"\0" -#endif -#ifdef	CONFIG_CLOCKS_IN_MHZ -	"clocks_in_mhz=" "1"				"\0" -#endif -#if defined(CONFIG_PCI_BOOTDELAY) && (CONFIG_PCI_BOOTDELAY > 0) -	"pcidelay="	__stringify(CONFIG_PCI_BOOTDELAY)"\0" -#endif -#ifdef	CONFIG_ENV_VARS_UBOOT_CONFIG -	"arch="		CONFIG_SYS_ARCH			"\0" -	"cpu="		CONFIG_SYS_CPU			"\0" -	"board="	CONFIG_SYS_BOARD		"\0" -#ifdef CONFIG_SYS_VENDOR -	"vendor="	CONFIG_SYS_VENDOR		"\0" -#endif -#ifdef CONFIG_SYS_SOC -	"soc="		CONFIG_SYS_SOC			"\0" -#endif -#endif -#ifdef	CONFIG_EXTRA_ENV_SETTINGS -	CONFIG_EXTRA_ENV_SETTINGS -#endif -	"\0"		/* Term. env_t.data with 2 NULs */ -	} -}; +#define DEFAULT_ENV_INSTANCE_EMBEDDED +#include <env_default.h> +  #ifdef CONFIG_ENV_ADDR_REDUND  env_t redundand_environment __PPCENV__ = {  	0,		/* CRC Sum: invalid */ diff --git a/include/env_default.h b/include/env_default.h new file mode 100644 index 000000000..375e5ca15 --- /dev/null +++ b/include/env_default.h @@ -0,0 +1,135 @@ +/* + * (C) Copyright 2000-2010 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + * + * (C) Copyright 2001 Sysgo Real-Time Solutions, GmbH <www.elinos.com> + * Andreas Heppel <aheppel@sysgo.de> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifdef DEFAULT_ENV_INSTANCE_EMBEDDED +env_t environment __PPCENV__ = { +	ENV_CRC,	/* CRC Sum */ +#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT +	1,		/* Flags: valid */ +#endif +	{ +#elif defined(DEFAULT_ENV_INSTANCE_STATIC) +static char default_environment[] = { +#else +const uchar default_environment[] = { +#endif +#ifdef	CONFIG_BOOTARGS +	"bootargs="	CONFIG_BOOTARGS			"\0" +#endif +#ifdef	CONFIG_BOOTCOMMAND +	"bootcmd="	CONFIG_BOOTCOMMAND		"\0" +#endif +#ifdef	CONFIG_RAMBOOTCOMMAND +	"ramboot="	CONFIG_RAMBOOTCOMMAND		"\0" +#endif +#ifdef	CONFIG_NFSBOOTCOMMAND +	"nfsboot="	CONFIG_NFSBOOTCOMMAND		"\0" +#endif +#if defined(CONFIG_BOOTDELAY) && (CONFIG_BOOTDELAY >= 0) +	"bootdelay="	__stringify(CONFIG_BOOTDELAY)	"\0" +#endif +#if defined(CONFIG_BAUDRATE) && (CONFIG_BAUDRATE >= 0) +	"baudrate="	__stringify(CONFIG_BAUDRATE)	"\0" +#endif +#ifdef	CONFIG_LOADS_ECHO +	"loads_echo="	__stringify(CONFIG_LOADS_ECHO)	"\0" +#endif +#ifdef	CONFIG_ETHADDR +	"ethaddr="	__stringify(CONFIG_ETHADDR)	"\0" +#endif +#ifdef	CONFIG_ETH1ADDR +	"eth1addr="	__stringify(CONFIG_ETH1ADDR)	"\0" +#endif +#ifdef	CONFIG_ETH2ADDR +	"eth2addr="	__stringify(CONFIG_ETH2ADDR)	"\0" +#endif +#ifdef	CONFIG_ETH3ADDR +	"eth3addr="	__stringify(CONFIG_ETH3ADDR)	"\0" +#endif +#ifdef	CONFIG_ETH4ADDR +	"eth4addr="	__stringify(CONFIG_ETH4ADDR)	"\0" +#endif +#ifdef	CONFIG_ETH5ADDR +	"eth5addr="	__stringify(CONFIG_ETH5ADDR)	"\0" +#endif +#ifdef	CONFIG_ETHPRIME +	"ethprime="	CONFIG_ETHPRIME			"\0" +#endif +#ifdef	CONFIG_IPADDR +	"ipaddr="	__stringify(CONFIG_IPADDR)	"\0" +#endif +#ifdef	CONFIG_SERVERIP +	"serverip="	__stringify(CONFIG_SERVERIP)	"\0" +#endif +#ifdef	CONFIG_SYS_AUTOLOAD +	"autoload="	CONFIG_SYS_AUTOLOAD		"\0" +#endif +#ifdef	CONFIG_PREBOOT +	"preboot="	CONFIG_PREBOOT			"\0" +#endif +#ifdef	CONFIG_ROOTPATH +	"rootpath="	CONFIG_ROOTPATH			"\0" +#endif +#ifdef	CONFIG_GATEWAYIP +	"gatewayip="	__stringify(CONFIG_GATEWAYIP)	"\0" +#endif +#ifdef	CONFIG_NETMASK +	"netmask="	__stringify(CONFIG_NETMASK)	"\0" +#endif +#ifdef	CONFIG_HOSTNAME +	"hostname="	__stringify(CONFIG_HOSTNAME)	"\0" +#endif +#ifdef	CONFIG_BOOTFILE +	"bootfile="	CONFIG_BOOTFILE			"\0" +#endif +#ifdef	CONFIG_LOADADDR +	"loadaddr="	__stringify(CONFIG_LOADADDR)	"\0" +#endif +#ifdef	CONFIG_CLOCKS_IN_MHZ +	"clocks_in_mhz=1\0" +#endif +#if defined(CONFIG_PCI_BOOTDELAY) && (CONFIG_PCI_BOOTDELAY > 0) +	"pcidelay="	__stringify(CONFIG_PCI_BOOTDELAY)"\0" +#endif +#ifdef	CONFIG_ENV_VARS_UBOOT_CONFIG +	"arch="		CONFIG_SYS_ARCH			"\0" +	"cpu="		CONFIG_SYS_CPU			"\0" +	"board="	CONFIG_SYS_BOARD		"\0" +#ifdef CONFIG_SYS_VENDOR +	"vendor="	CONFIG_SYS_VENDOR		"\0" +#endif +#ifdef CONFIG_SYS_SOC +	"soc="		CONFIG_SYS_SOC			"\0" +#endif +#endif +#ifdef	CONFIG_EXTRA_ENV_SETTINGS +	CONFIG_EXTRA_ENV_SETTINGS +#endif +	"\0" +#ifdef DEFAULT_ENV_INSTANCE_EMBEDDED +	} +#endif +}; diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index 32e853aa1..9b023e807 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -119,102 +119,8 @@ static unsigned char active_flag = 1;  /* obsolete_flag must be 0 to efficiently set it on NOR flash without erasing */  static unsigned char obsolete_flag = 0; - -static char default_environment[] = { -#if defined(CONFIG_BOOTARGS) -	"bootargs=" CONFIG_BOOTARGS "\0" -#endif -#if defined(CONFIG_BOOTCOMMAND) -	"bootcmd=" CONFIG_BOOTCOMMAND "\0" -#endif -#if defined(CONFIG_RAMBOOTCOMMAND) -	"ramboot=" CONFIG_RAMBOOTCOMMAND "\0" -#endif -#if defined(CONFIG_NFSBOOTCOMMAND) -	"nfsboot=" CONFIG_NFSBOOTCOMMAND "\0" -#endif -#if defined(CONFIG_BOOTDELAY) && (CONFIG_BOOTDELAY >= 0) -	"bootdelay=" __stringify(CONFIG_BOOTDELAY) "\0" -#endif -#if defined(CONFIG_BAUDRATE) && (CONFIG_BAUDRATE >= 0) -	"baudrate=" __stringify(CONFIG_BAUDRATE) "\0" -#endif -#ifdef	CONFIG_LOADS_ECHO -	"loads_echo=" __stringify(CONFIG_LOADS_ECHO) "\0" -#endif -#ifdef	CONFIG_ETHADDR -	"ethaddr=" __stringify(CONFIG_ETHADDR) "\0" -#endif -#ifdef	CONFIG_ETH1ADDR -	"eth1addr=" __stringify(CONFIG_ETH1ADDR) "\0" -#endif -#ifdef	CONFIG_ETH2ADDR -	"eth2addr=" __stringify(CONFIG_ETH2ADDR) "\0" -#endif -#ifdef	CONFIG_ETH3ADDR -	"eth3addr=" __stringify(CONFIG_ETH3ADDR) "\0" -#endif -#ifdef	CONFIG_ETH4ADDR -	"eth4addr=" __stringify(CONFIG_ETH4ADDR) "\0" -#endif -#ifdef	CONFIG_ETH5ADDR -	"eth5addr=" __stringify(CONFIG_ETH5ADDR) "\0" -#endif -#ifdef	CONFIG_ETHPRIME -	"ethprime=" CONFIG_ETHPRIME "\0" -#endif -#ifdef	CONFIG_IPADDR -	"ipaddr=" __stringify(CONFIG_IPADDR) "\0" -#endif -#ifdef	CONFIG_SERVERIP -	"serverip=" __stringify(CONFIG_SERVERIP) "\0" -#endif -#ifdef	CONFIG_SYS_AUTOLOAD -	"autoload=" CONFIG_SYS_AUTOLOAD "\0" -#endif -#ifdef	CONFIG_ROOTPATH -	"rootpath=" CONFIG_ROOTPATH "\0" -#endif -#ifdef	CONFIG_GATEWAYIP -	"gatewayip=" __stringify(CONFIG_GATEWAYIP) "\0" -#endif -#ifdef	CONFIG_NETMASK -	"netmask=" __stringify(CONFIG_NETMASK) "\0" -#endif -#ifdef	CONFIG_HOSTNAME -	"hostname=" __stringify(CONFIG_HOSTNAME) "\0" -#endif -#ifdef	CONFIG_BOOTFILE -	"bootfile=" CONFIG_BOOTFILE "\0" -#endif -#ifdef	CONFIG_LOADADDR -	"loadaddr=" __stringify(CONFIG_LOADADDR) "\0" -#endif -#ifdef	CONFIG_PREBOOT -	"preboot=" CONFIG_PREBOOT "\0" -#endif -#ifdef	CONFIG_CLOCKS_IN_MHZ -	"clocks_in_mhz=" "1" "\0" -#endif -#if defined(CONFIG_PCI_BOOTDELAY) && (CONFIG_PCI_BOOTDELAY > 0) -	"pcidelay=" __stringify(CONFIG_PCI_BOOTDELAY) "\0" -#endif -#ifdef	CONFIG_ENV_VARS_UBOOT_CONFIG -	"arch=" CONFIG_SYS_ARCH "\0" -	"cpu=" CONFIG_SYS_CPU "\0" -	"board=" CONFIG_SYS_BOARD "\0" -#ifdef CONFIG_SYS_VENDOR -	"vendor=" CONFIG_SYS_VENDOR "\0" -#endif -#ifdef CONFIG_SYS_SOC -	"soc=" CONFIG_SYS_SOC "\0" -#endif -#endif -#ifdef  CONFIG_EXTRA_ENV_SETTINGS -	CONFIG_EXTRA_ENV_SETTINGS -#endif -	"\0"		/* Termimate struct environment data with 2 NULs */ -}; +#define DEFAULT_ENV_INSTANCE_STATIC +#include <env_default.h>  static int flash_io (int mode);  static char *envmatch (char * s1, char * s2); |