1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* 3 * (C) Copyright 2000-2010 4 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 5 * 6 * (C) Copyright 2001 Sysgo Real-Time Solutions, GmbH <www.elinos.com> 7 * Andreas Heppel <aheppel@sysgo.de> 8 */ 9 10#include <env_callback.h> 11#include <linux/stringify.h> 12 13#include <generated/environment.h> 14 15#ifdef DEFAULT_ENV_INSTANCE_EMBEDDED 16env_t embedded_environment __UBOOT_ENV_SECTION__(environment) = { 17 ENV_CRC, /* CRC Sum */ 18#ifdef CONFIG_SYS_REDUNDAND_ENVIRONMENT 19 1, /* Flags: valid */ 20#endif 21 { 22#elif defined(DEFAULT_ENV_INSTANCE_STATIC) 23static char default_environment[] = { 24#elif defined(CONFIG_DEFAULT_ENV_IS_RW) 25char default_environment[] = { 26#else 27const char default_environment[] = { 28#endif 29#ifndef CONFIG_USE_DEFAULT_ENV_FILE 30#ifdef CONFIG_ENV_CALLBACK_LIST_DEFAULT 31 ENV_CALLBACK_VAR "=" CONFIG_ENV_CALLBACK_LIST_DEFAULT "\0" 32#endif 33#ifdef CONFIG_ENV_FLAGS_LIST_DEFAULT 34 ENV_FLAGS_VAR "=" CONFIG_ENV_FLAGS_LIST_DEFAULT "\0" 35#endif 36#ifdef CONFIG_USE_BOOTARGS 37 "bootargs=" CONFIG_BOOTARGS "\0" 38#endif 39#ifdef CONFIG_BOOTCOMMAND 40 "bootcmd=" CONFIG_BOOTCOMMAND "\0" 41#endif 42#if defined(CONFIG_BOOTDELAY) 43 "bootdelay=" __stringify(CONFIG_BOOTDELAY) "\0" 44#endif 45#if !defined(CONFIG_OF_SERIAL_BAUD) && defined(CONFIG_BAUDRATE) && (CONFIG_BAUDRATE >= 0) 46 "baudrate=" __stringify(CONFIG_BAUDRATE) "\0" 47#endif 48#ifdef CONFIG_LOADS_ECHO 49 "loads_echo=" __stringify(CONFIG_LOADS_ECHO) "\0" 50#endif 51#ifdef CONFIG_ETHPRIME 52 "ethprime=" CONFIG_ETHPRIME "\0" 53#endif 54#ifdef CONFIG_USE_IPADDR 55 "ipaddr=" CONFIG_IPADDR "\0" 56#endif 57#ifdef CONFIG_USE_SERVERIP 58 "serverip=" CONFIG_SERVERIP "\0" 59#endif 60#ifdef CONFIG_SYS_DISABLE_AUTOLOAD 61 "autoload=0\0" 62#endif 63#ifdef CONFIG_PREBOOT_DEFINED 64 "preboot=" CONFIG_PREBOOT "\0" 65#endif 66#ifdef CONFIG_USE_ROOTPATH 67 "rootpath=" CONFIG_ROOTPATH "\0" 68#endif 69#ifdef CONFIG_USE_GATEWAYIP 70 "gatewayip=" CONFIG_GATEWAYIP "\0" 71#endif 72#ifdef CONFIG_USE_NETMASK 73 "netmask=" CONFIG_NETMASK "\0" 74#endif 75#ifdef CONFIG_USE_HOSTNAME 76 "hostname=" CONFIG_HOSTNAME "\0" 77#endif 78#ifdef CONFIG_USE_BOOTFILE 79 "bootfile=" CONFIG_BOOTFILE "\0" 80#endif 81#ifdef CONFIG_SYS_LOAD_ADDR 82 "loadaddr=" __stringify(CONFIG_SYS_LOAD_ADDR)"\0" 83#endif 84#if defined(CONFIG_PCI_BOOTDELAY) && (CONFIG_PCI_BOOTDELAY > 0) 85 "pcidelay=" __stringify(CONFIG_PCI_BOOTDELAY)"\0" 86#endif 87#ifdef CONFIG_ENV_VARS_UBOOT_CONFIG 88 "arch=" CONFIG_SYS_ARCH "\0" 89#ifdef CONFIG_SYS_CPU 90 "cpu=" CONFIG_SYS_CPU "\0" 91#endif 92#ifdef CONFIG_SYS_BOARD 93 "board=" CONFIG_SYS_BOARD "\0" 94 "board_name=" CONFIG_SYS_BOARD "\0" 95#endif 96#ifdef CONFIG_SYS_VENDOR 97 "vendor=" CONFIG_SYS_VENDOR "\0" 98#endif 99#ifdef CONFIG_SYS_SOC 100 "soc=" CONFIG_SYS_SOC "\0" 101#endif 102#ifdef CONFIG_USB_HOST 103 "usb_ignorelist=" 104#ifdef CONFIG_USB_KEYBOARD 105 /* Ignore Yubico devices. Currently only a single USB keyboard device is 106 * supported and the emulated HID keyboard Yubikeys present is useless 107 * as keyboard. 108 */ 109 "0x1050:*," 110#endif 111 "\0" 112#endif 113#ifdef CONFIG_ENV_IMPORT_FDT 114 "env_fdt_path=" CONFIG_ENV_FDT_PATH "\0" 115#endif 116#endif 117#if defined(CONFIG_BOOTCOUNT_BOOTLIMIT) && (CONFIG_BOOTCOUNT_BOOTLIMIT > 0) 118 "bootlimit=" __stringify(CONFIG_BOOTCOUNT_BOOTLIMIT)"\0" 119#endif 120#ifdef CONFIG_MTDIDS_DEFAULT 121 "mtdids=" CONFIG_MTDIDS_DEFAULT "\0" 122#endif 123#ifdef CONFIG_MTDPARTS_DEFAULT 124 "mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" 125#endif 126#ifdef CONFIG_EXTRA_ENV_TEXT 127 /* This is created in the Makefile */ 128 CONFIG_EXTRA_ENV_TEXT 129#endif 130#ifdef CFG_EXTRA_ENV_SETTINGS 131 CFG_EXTRA_ENV_SETTINGS 132#endif 133#ifdef CONFIG_OF_SERIAL_BAUD 134 /* Padding for baudrate at the end when environment is writable */ 135 "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" 136#endif 137 "\0" 138#else /* CONFIG_USE_DEFAULT_ENV_FILE */ 139#include "generated/defaultenv_autogenerated.h" 140#endif 141#ifdef DEFAULT_ENV_INSTANCE_EMBEDDED 142 } 143#endif 144}; 145 146#if !defined(USE_HOSTCC) && !defined(DEFAULT_ENV_INSTANCE_EMBEDDED) 147#include <env_internal.h> 148static_assert(sizeof(default_environment) <= ENV_SIZE, 149 "Default environment is too large"); 150#endif 151