km/common: simplify default environment
authorHolger Brunck <holger.brunck@keymile.com>
Wed, 4 May 2011 01:47:34 +0000 (01:47 +0000)
committerWolfgang Denk <wd@denx.de>
Wed, 18 May 2011 21:03:22 +0000 (23:03 +0200)
This is a first step to simplify the default environment. Move all
the environment variables which are only needed for debugging
purpose to textfiles in the scripts directory. In case of debugging
these files can be loaded via tftp into RAM and set via the env import
command. Other variables are identified as obsolete and were removed.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Acked-by: Heiko Schocher <hs@denx.de>
cc: Wolfgang Denk <wd@denx.de>
cc: Detlev Zundel <dzu@denx.de>

board/keymile/scripts/README [new file with mode: 0644]
board/keymile/scripts/debug-arm-env.txt [new file with mode: 0644]
board/keymile/scripts/debug-common-env.txt [new file with mode: 0644]
board/keymile/scripts/debug-ppc-env.txt [new file with mode: 0644]
include/configs/km/keymile-common.h
include/configs/km/km-powerpc.h
include/configs/km/km_arm.h

diff --git a/board/keymile/scripts/README b/board/keymile/scripts/README
new file mode 100644 (file)
index 0000000..86c2b5a
--- /dev/null
@@ -0,0 +1,23 @@
+debug-common-env.txt
+============================
+This file defines environment variables which are valid for powerpc boards
+and for arm boards.
+
+addramfs: add phram device for the rootfilesysten in ram
+develop: for development, laod kernel via tftp and mount  rootfs via NFS
+nfsargs: default arguments for nfs boot
+ramfs: load rootfilesystem in RAM  kernel
+rootfsfile: loacation of the rootfs file for ramfs
+setramfspram: compute PRAM size for ramfs target
+setrootfsaddr: compute rootfilesystem address for phram
+tftpkernel: load a kernel with tftp into ram
+tftpramfs: load rootfs with tftp into ram
+
+debug-ppc-env.txt
+============================
+fdt_file: location of the dtb file on the tftp server
+tftpfdt: load dtb file and set fdt address
+
+debug-arm-env.txt
+============================
+tftpfdt: for arm only a dummy variable, because we have no fdt on arm
diff --git a/board/keymile/scripts/debug-arm-env.txt b/board/keymile/scripts/debug-arm-env.txt
new file mode 100644 (file)
index 0000000..84498af
--- /dev/null
@@ -0,0 +1,2 @@
+debug_env_common=tftpboot 0x200000 scripts/debug-common-env.txt && env import -t 0x200000 ${filesize}
+tftpfdt=true
diff --git a/board/keymile/scripts/debug-common-env.txt b/board/keymile/scripts/debug-common-env.txt
new file mode 100644 (file)
index 0000000..1fd4b0c
--- /dev/null
@@ -0,0 +1,9 @@
+addramfs=setenv bootargs "${bootargs} phram.phram=rootfs${boot_bank},${rootfsaddr},${rootfssize}"
+develop=setenv subbootcmds "tftpfdt tftpkernel nfsargs ${commonargs} boot " && setenv bootcmd 'run bootrunner' && setenv altbootcmd 'run bootcmd' && km_setboardid && saveenv && reset
+nfsargs=setenv bootargs ubi.mtd=ubi0 root=/dev/nfs rw nfsroot=${serverip}:${rootpath}
+ramfs=setenv actual_bank -1 && setenv subbootcmds "tftpfdt tftpkernel setrootfsaddr tftpramfs flashargs ${commonargs} addpanic addramfs boot " && setenv bootcmd 'run bootrunner' && setenv altbootcmd 'run bootcmd' && run setboardid && run setramfspram && run setpnvramaddr && saveenv && reset
+rootfsfile=${hostname}/rootfsImage
+setramfspram=setexpr value 0 + ${reservedpram} && setexpr value 0x${value} + ${rootfssize} && setexpr value 0x${value} + ${varsize} && setexpr value 0x${value} + ${pnvramsize} && setexpr value 0x${value} / 0x400 && setenv pram 0x${value}
+tftpkernel=tftpboot ${kernel_addr_r} ${hostname}/uImage && setenv actual_kernel_addr ${kernel_addr_r}
+tftpramfs=tftpboot ${rootfsaddr} ${hostname}/rootfsImage && setenv loadaddr
+setrootfsaddr=setexpr value ${pnvramsize} - ${rootfssize} && setenv rootfsaddr 0x${value}
diff --git a/board/keymile/scripts/debug-ppc-env.txt b/board/keymile/scripts/debug-ppc-env.txt
new file mode 100644 (file)
index 0000000..3c06ff1
--- /dev/null
@@ -0,0 +1,2 @@
+debug_env_common=tftpboot 0x200000 scripts/debug-common-env.txt && env import -t 0x200000 ${filesize}
+tftpfdt=tftpboot ${fdt_addr_r} ${hostname}/${hostname}.dtb && setenv actual_fdt_addr ${fdt_addr_r}
index 6a5ecc6d747dbac1b6dc6bc8e7dacf8af252c247..9ad2e5b3495335a197305a06940764882a2ceddd 100644 (file)
                "break=0; "                                             \
                "for subbootcmd in ${subbootcmds}; do "                 \
                "if test ${break} -eq 0; then; "                        \
-               "echo \"[INFO] running \\c\"; "                         \
                "print ${subbootcmd}; "                                 \
                "run ${subbootcmd} || break=1; "                        \
-               "if test ${break} -eq 1; then; "                        \
-               "echo \"[ERR] failed \\c\"; "                           \
-               "print ${subbootcmd}; "                                 \
-               "fi; "                                                  \
                "fi; "                                                  \
                "done\0"                                                \
        ""
  * - set 'bootcmd' and 'altbootcmd'
  * available targets:
  * - 'release': for a standalone system                kernel/rootfs from flash
- * - 'develop': for development                        kernel(tftp)/rootfs(NFS)
- * - 'ramfs': rootfilesystem in RAM            kernel(tftp)/rootfs(RAM)
  *
  * - 'commonargs': bootargs common to all targets
  */
                "addmtdparts "                                          \
                "addbootcount "                                         \
                "\0"                                                    \
-       "develop="                                                      \
-               "setenv subbootcmds \""                                 \
-               "tftpfdt tftpkernel "                                   \
-               "nfsargs ${commonargs} "                                \
-               "printbootargs boot "                                   \
-               "\" && "                                                \
-               "setenv bootcmd \'"                                     \
-               "run bootrunner"                                        \
-               "\' && "                                                \
-               "setenv altbootcmd \'"                                  \
-               "run bootcmd"                                           \
-               "\' && "                                                \
-               "run setboardid && "                                    \
-               "saveenv && "                                           \
-               "reset\0"                                               \
-       "ramfs="                                                        \
-               "setenv actual_bank -1 && "                             \
-               "setenv subbootcmds \""                                 \
-               "tftpfdt tftpkernel "                                   \
-               "setrootfsaddr tftpramfs "                              \
-               "flashargs ${commonargs} "                              \
-               "addpanic addramfs "                                    \
-               "printbootargs boot "                                   \
-               "\" && "                                                \
-               "setenv bootcmd \'"                                     \
-               "run bootrunner"                                        \
-               "\' && "                                                \
-               "setenv altbootcmd \'"                                  \
-               "run bootcmd"                                           \
-               "\' && "                                                \
-               "run setboardid && "                                    \
-               "run setramfspram && "                                  \
-               "saveenv && "                                           \
-               "reset\0"                                               \
        "release="                                                      \
                "setenv actual_bank ${initial_boot_bank} && "           \
                "setenv subbootcmds \""                                 \
                "ubiattach ubicopy "                                    \
                "cramfsloadfdt cramfsloadkernel "                       \
                "flashargs ${commonargs} "                              \
-               "addpanic "                                             \
-               "printbootargs boot "                                   \
+               "addpanic boot "                                        \
                "\" && "                                                \
                "setenv bootcmd \'"                                     \
                "run actual bootrunner; reset"                          \
                "setenv altbootcmd \'"                                  \
                "run backup bootrunner; reset"                          \
                "\' && "                                                \
-               "saveenv && "                                           \
+               "saveenv && saveenv && "                                \
                "reset\0"                                               \
+       "debug_env="                                                    \
+               "tftp 200000 " CONFIG_KM_ARCH_DBG_FILE " && "           \
+               "env import -t 200000 ${filesize} && "                  \
+               "run debug_env_common\0"                                \
        ""
 
 /*
  * - 'addip': add ip configuration
  * - 'addmem': limit kernel memory mem=
  * - 'addpanic': add kernel panic options
- * - 'addramfs': add phram device for the rootfilesysten in ram
  * - 'addtty': add console=...
  * - 'addvar': add phram device for /var
- * - 'nfsargs': default arguments for nfs boot
  * - 'flashargs': defaults arguments for flash base boot
  *
  * processor specific settings
                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
                ":${hostname}:${netdev}:off\0"                          \
        "addmem="                                                       \
-               "setenv bootargs ${bootargs} mem=0x${pnvramaddr}\0"     \
+               "setenv bootargs ${bootargs} mem=${pnvramaddr}\0"       \
        "addpanic="                                                     \
-               "setenv bootargs ${bootargs} "                          \
-               "panic=1 panic_on_oops=1\0"                             \
-       "addramfs="                                                     \
-               "setenv bootargs \""                                    \
-               "${bootargs} phram.phram="                              \
-               "rootfs${boot_bank},${rootfsaddr},${rootfssize}\"\0"    \
+               "setenv bootargs ${bootargs} panic=1 panic_on_oops=1\0" \
        "addtty="                                                       \
                "setenv bootargs ${bootargs}"                           \
                " console=" CONFIG_KM_CONSOLE_TTY ",${baudrate}\0"      \
        "addvar="                                                       \
                "setenv bootargs ${bootargs} phram.phram=phvar,"        \
-               "${varaddr},0x" xstr(CONFIG_KM_PHRAM) "\0"              \
-       "nfsargs="                                                      \
-               "setenv bootargs "                                      \
-               "ubi.mtd=" CONFIG_KM_UBI_LINUX_MTD_NAME " "             \
-               "root=/dev/nfs rw "                                     \
-               "nfsroot=${serverip}:${rootpath}\0"                     \
+               "${varaddr}," xstr(CONFIG_KM_PHRAM) "\0"                \
        "flashargs="                                                    \
                "setenv bootargs "                                      \
                "ubi.mtd=" CONFIG_KM_UBI_LINUX_MTD_NAME " "             \
                "rootfstype=squashfs ro\0"                              \
        ""
 
-/*
- * compute_addr
- * - compute addresses and sizes
- * - addresses are calculated form the end of memory 'memsize'
- *
- * - 'setramfspram': compute PRAM size for ramfs target
- * - 'setrootfsaddr': compute rootfilesystem address for phram
- */
-#define CONFIG_KM_DEF_ENV_COMPUTE_ADDR                                 \
-       "setboardid="                                                   \
-               "if test \"x${boardId}\" = \"x\"; then; "               \
-               "setenv boardId ${IVM_BoardId} && "                     \
-               "setenv hwKey ${IVM_HWKey}; "                           \
-               "else; "                                                \
-               "echo \\\\c; "                                          \
-               "fi\0"                                                  \
-       "setramfspram="                                                 \
-               "setexpr value ${rootfssize} / 0x400 && "               \
-               "setexpr value 0x${value} + ${pram} && "                \
-               "setenv pram 0x${value}\0"                              \
-       "setrootfsaddr="                                                \
-               "setexpr value ${pnvramaddr} - ${rootfssize} && "       \
-               "setenv rootfsaddr 0x${value}\0"                        \
-       ""
-
 /*
  * flash_boot
  * - commands for booting from flash
  *
- * - 'cramfsaddr': address to the cramfs (in ram)
  * - 'cramfsloadkernel': copy kernel from a cramfs to ram
  * - 'ubiattach': attach ubi partition
  * - 'ubicopy': copy ubi volume to ram
  *              - volume names: bootfs0, bootfs1, bootfs2, ...
- * - 'ubiparition': mtd parition name for ubi
  *
  * processor specific settings
  * - 'cramfsloadfdt': copy fdt from a cramfs to ram
  */
 #define CONFIG_KM_DEF_ENV_FLASH_BOOT                                   \
-       "cramfsaddr="xstr(CONFIG_KM_CRAMFS_ADDR) "\0"                   \
+       "cramfsaddr=" xstr(CONFIG_KM_CRAMFS_ADDR) "\0"                  \
        "cramfsloadkernel="                                             \
                "cramfsload ${kernel_addr_r} uImage && "                \
                "setenv actual_kernel_addr ${kernel_addr_r}\0"          \
-       "ubiattach=ubi part ${ubipartition}\0"                          \
-       "ubicopy=ubi read ${cramfsaddr} bootfs${boot_bank}\0"           \
-       "ubipartition=" CONFIG_KM_UBI_PARTITION_NAME "\0"               \
-       ""
-
-/*
- * net_boot
- * - commands for booting over the network
- *
- * - 'tftpkernel': load a kernel with tftp into ram
- * - 'tftpramfs': load rootfs with tftp into ram
- *
- * processor specific settings
- * - 'tftpfdt': load fdt with tftp into ram
- */
-#define CONFIG_KM_DEF_ENV_NET_BOOT                                     \
-       "tftpkernel="                                                   \
-               "tftpboot ${kernel_addr_r} ${kernel_file} && "          \
-               "setenv actual_kernel_addr ${kernel_addr_r}\0"          \
-       "tftpramfs="                                                    \
-               "tftpboot ${rootfsaddr} \"\\\"${rootfsfile}\\\"\" && "  \
-               "setenv loadaddr\0"                                     \
+       "ubiattach=ubi part " CONFIG_KM_UBI_PARTITION_NAME "\0"         \
+       "ubicopy=ubi read "xstr(CONFIG_KM_CRAMFS_ADDR)                  \
+                       " bootfs${boot_bank}\0"                         \
        ""
 
 /*
        "default="                                                      \
                "setenv default 'run newenv; reset' &&  "               \
                "run release && saveenv; reset\0"                       \
-       "printbootargs=print bootargs\0"                                \
-       "rootfsfile="xstr(CONFIG_HOSTNAME) "/rootfsImage\0"             \
        "checkboardid=km_checkbidhwk\0"                                 \
        ""
 
        CONFIG_KM_DEF_ENV_BOOTRUNNER                                    \
        CONFIG_KM_DEF_ENV_BOOTTARGETS                                   \
        CONFIG_KM_DEF_ENV_BOOTARGS                                      \
-       CONFIG_KM_DEF_ENV_COMPUTE_ADDR                                  \
        CONFIG_KM_DEF_ENV_FLASH_BOOT                                    \
-       CONFIG_KM_DEF_ENV_NET_BOOT                                      \
        CONFIG_KM_DEF_ENV_CONSTANTS                                     \
        "altbootcmd=run bootcmd\0"                                      \
        "bootcmd=run default\0"                                         \
        "bootlimit=2\0"                                                 \
        "init=/sbin/init-overlay.sh\0"                                  \
        "kernel_addr_r="xstr(CONFIG_KM_KERNEL_ADDR) "\0"                \
-       "kernel_file="xstr(CONFIG_HOSTNAME) "/uImage\0"                 \
-       "kernel_name=uImage\0"                                          \
        "load=tftpboot ${u-boot_addr_r} ${u-boot}\0"                    \
        "mtdids=" MTDIDS_DEFAULT "\0"                                   \
        "mtdparts=" MTDPARTS_DEFAULT "\0"                               \
index 3351609980c292740952ba13a3634ac9922d3379..d6db8d79f1a51e6c3b79630d1a3f0b2571cabf8a 100644 (file)
 #define CONFIG_KM_FDT_ADDR     0x7E0000        /* 128Kbytes */
 
 #define CONFIG_KM_DEF_ENV_CPU                                          \
-       "addbootcount=echo \\\\c\0"                                     \
-       "addmtdparts=echo \\\\c\0"                                      \
+       "addbootcount=true\0"                                           \
+       "addmtdparts=true\0"                                            \
        "boot=bootm ${actual_kernel_addr} - ${actual_fdt_addr}\0"       \
        "cramfsloadfdt="                                                \
                "cramfsload ${fdt_addr_r} "                             \
                "fdt_0x${IVM_BoardId}_0x${IVM_HWKey}.dtb && "           \
                "setenv actual_fdt_addr ${fdt_addr_r}\0"                \
        "fdt_addr_r=" xstr(CONFIG_KM_FDT_ADDR) "\0"                     \
-       "fdt_file="                                                     \
-               xstr(CONFIG_HOSTNAME) "/"                               \
-               xstr(CONFIG_HOSTNAME) ".dtb\0"                          \
-       "tftpfdt="                                                      \
-               "tftpboot ${fdt_addr_r} ${fdt_file} && "                \
-               "setenv actual_fdt_addr ${fdt_addr_r} \0"               \
        "update="                                                       \
                "protect off " xstr(BOOTFLASH_START) " +${filesize} && "\
                "erase " xstr(BOOTFLASH_START) "  +${filesize} && "     \
@@ -89,4 +83,6 @@
                "protect on " xstr(BOOTFLASH_START) "  +${filesize}\0"  \
        ""
 
+#define CONFIG_KM_ARCH_DBG_FILE                "scripts/debug-ppc-env.txt"
+
 #endif /* __CONFIG_KEYMILE_POWERPC_H */
index a38a07085e3f3d464451f4cd3299e82d44f0539b..aa9f1ae464ef363a487caf1f41bb60fd56e65476 100644 (file)
 #define CONFIG_KM_DEF_ENV_CPU                                          \
        "addmtdparts=setenv bootargs ${bootargs} ${mtdparts}\0"         \
        "boot=bootm ${actual_kernel_addr} - -\0"                        \
-       "cramfsloadfdt=echo \\\\c\0"                                    \
-       "tftpfdt=echo \\\\c\0"                                          \
+       "cramfsloadfdt=true\0"                                          \
        CONFIG_KM_DEF_ENV_UPDATE                                        \
        ""
 
-
+#define CONFIG_KM_ARCH_DBG_FILE                "scripts/debug-arm-env.txt"
 
 #define CONFIG_MD5     /* get_random_hex on krikwood needs MD5 support */
 #define CONFIG_SKIP_LOWLEVEL_INIT      /* disable board lowlevel_init */