summaryrefslogtreecommitdiff
path: root/tools/env
Commit message (Collapse)AuthorAgeLines
* Revert "fw_env: fix building w/out a config.h"Tom Rini2012-12-20-10/+26
| | | | | | | | I had missed Joe's NAK on this patch, so... This reverts commit 92ace272d06cec1d7f1533bb9edf914fb5845fba. Signed-off-by: Tom Rini <trini@ti.com>
* fw_env: fix building w/out a config.hMike Frysinger2012-12-19-26/+10
| | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Peter Korsgaard <jacmet@sunsite.dk>
* fw_env: fix incorrect usage of open(O_CREAT)Mike Frysinger2012-12-19-1/+1
| | | | | | | | | | | | | | | When using open(), the O_CREAT flag must be given a mode, otherwise it uses random garbage from the stack. Also, it can fail to build: In file included from /usr/include/fcntl.h:290:0, from fw_env_main.c:42: In function 'open', inlined from 'main' at fw_env_main.c:97:9: /usr/include/bits/fcntl2.h:50:24: error: call to '__open_missing_mode' declared with attribute error: open with O_CREAT in second argument needs 3 arguments Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* fw_env: fix type of lenMike Frysinger2012-12-19-1/+2
| | | | | | | | | | | This variable is assigned by a size_t, and is printed that way, but is incorrectly declared as an int. Which means we get warnings: fw_env.c: In function 'fw_setenv': fw_env.c:409:5: warning: format '%zu' expects argument of type 'size_t', but argument 3 has type 'int' [-Wformat] Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* env: Handle write-once ethaddr and serial# genericallyJoe Hershberger2012-12-13-17/+0
| | | | | | | Use the variable access flags to implement the protection for ethaddr and serial# instead of hard-coding them. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* env: Add support for access control to .flagsJoe Hershberger2012-12-13-4/+70
| | | | | | Add support for read-only, write-once, and change-default. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Add environment variable flags supportJoe Hershberger2012-12-13-0/+12
| | | | | | | | | | | | | | Currently just validates variable types as decimal, hexidecimal, boolean, ip address, and mac address. Call env_acl_validate_setenv_params() from setenv() in fw_env.c. If the entry is not found in the env .flags, then look in the static one. This allows the env to override the static definitions, but prevents the need to have every definition in the environment distracting you. Need to build in _ctype for isdigit for Linux. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* env: cosmetic: Consilidate the default env definitionJoe Hershberger2012-10-19-96/+2
| | | | | | | There used to be a huge structure duplicated 3 times in the source. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Tom Rini <trini@ti.com>
* tools/env: Improve debug printsJoe Hershberger2012-10-16-5/+22
| | | | | | | Provide more information when using redundant environments Consistently print debug info to stderr Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Fix variable delete operationJoe Hershberger2012-10-16-2/+3
| | | | | | | Fix crash introduced by a073d63a36524453a817ab029fad5b188f46127e when attempting to delete a variable. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Fix build failure from missing header includeJoe Hershberger2012-10-15-0/+1
| | | | | | | | | | This was introduced in: 8679d0ffdcc0beafea8e6942c0c67cf859afa18e - COMMON: Use __stringify() instead of MK_STR() The header is now needed since common.h is not included in this tool. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools: Add a README note about fw_printenv lock fileJoe Hershberger2012-10-15-0/+4
| | | | | | | Add a mention of the lock file to the README for the fw_printenv tool. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reported-by: Luka Perkov <uboot@lukaperkov.net>
* env: Check for NULL pointer in envmatch()Joe Hershberger2012-10-15-0/+2
| | | | | | | If the pointer passed into envmatch() is NULL, return -1 instead of crashing. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Serialize calls to fw_*envJoe Hershberger2012-10-15-22/+37
| | | | | | | Use a lock file at /var/lock/fw_printenv.lock. Avoids seriously confusing the MTD driver. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Don't call env_init() in fw_getenv()Joe Hershberger2012-10-15-3/+0
| | | | | | We will only call fw_getenv when the env has already been initialized. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Remove unneeded complexityJoe Hershberger2012-10-15-20/+13
| | | | | | | | | The length included the name length, and then it was subtracted back out on each use. Now we don't include it in the first place. Also realloc as we process arguments and eliminate memset. Use memcpy instead of manually copying each byte. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* tools/env: Use a board-specific default envJoe Hershberger2012-10-15-17/+35
| | | | | | | | | | | | | | | | | | | Originally added in aa701b94336b358798d676eef12a7b90bdac23f5 Before this patch, there was a hard-coded env that was used as default if the env in flash is detected as invalid. Now this tool (compiled for a given board) will share the default env with the u-boot for the board. Fix include of config.h Need to define "TEXT_BASE" when building the fw_env tool so that the default env will be correct for environments which use it. Define __ASSEMBLY__ when calling #include <config.h> so that we only get #defines (all we're interested in). Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
* COMMON: Use __stringify() instead of MK_STR()Marek Vasut2012-10-15-20/+17
| | | | | | | | | Kill multiple occurances and redeclaration of MK_STR in favor of __stringify(). Signed-off-by: Marek Vasut <marex@denx.de> Cc: Wolfgang Denk <wd@denx.de> Signed-off-by: Tom Rini <trini@ti.com>
* fw_env: Add env vars describing U-Boot target boardBenoît Thébaudeau2012-09-18-0/+11
| | | | | | | | Commit 5e724ca did the same thing for env_common and env_embedded, but forgot fw_env. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Wolfgang Denk <wd@denx.de>
* Strip fw_printenv like the other toolsLoïc Minier2012-06-21-0/+1
| | | | Signed-off-by: Loïc Minier <lool@debian.org>
* fw_env.h: fix commentFrans Meulenbroeks2012-02-11-2/+2
| | | | | | | made description according to implementation (where the config file is the default). Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
* tools/env: allow overwrite of ethaddr on defaultGrant Erickson2012-01-05-2/+11
| | | | | | | | | | | | | This patch allows the U-Boot user space companion utility, fw_setenv, to overwrite the 'ethaddr' key/value pair if the current value is set to a per-board-configured default. This change allows 'fw_setenv' to match the behavior of 'setenv' / 'env set' on the U-Boot command line. Signed-off-by: Grant Erickson <marathon96@gmail.com> Fixed excessive white space. Signed-off-by: Wolfgang Denk <wd@denx.de>
* fw_env.h: added a few missing definesFrans Meulenbroeks2012-01-05-0/+4
| | | | | | | | | | The README file lists 4 defined that were not actually present in the .h file but that were needed to get things working with settings compiled in. They are Added these to the .h file (the values above are the ones from the README file) Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
* tools/env: use lib/crc32.c directlyAndreas Bießmann2011-11-22-5/+2
| | | | | | | | Instead of linking the file into $(obj) tree use directly the source file. This also prevents littered source tree if building not out-of-tree. Signed-off-by: Andreas Bießmann <biessmann@corscience.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* common: cosmetic: CONFIG_BOOTFILE checkpatch complianceJoe Hershberger2011-10-22-1/+1
| | | | | | | | | Remove MK_STR from places that consume CONFIG_BOOTFILE to force all definitions to be string literals. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Cc: Joe Hershberger <joe.hershberger@gmail.com> Cc: Wolfgang Denk <wd@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* common: cosmetic: CONFIG_ROOTPATH checkpatch complianceJoe Hershberger2011-10-22-1/+1
| | | | | | | | | Remove MK_STR from places that consume CONFIG_ROOTPATH to force all definitions to be string literals. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Cc: Joe Hershberger <joe.hershberger@gmail.com> Cc: Wolfgang Denk <wd@denx.de> Acked-by: Mike Frysinger <vapier@gentoo.org>
* fix compile warning for env toolsLuka Perkov2011-10-22-2/+2
| | | | | | | | | | | | Patch fixes this issue: fw_env.c: In function ‘fw_setenv’: fw_env.c:492:5: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t’ [-Wformat] fw_env.c: In function ‘flash_write_buf’: fw_env.c:806:6: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t’ [-Wformat] Signed-off-by: Luka Perkov <lists@lukaperkov.net> Acked-by: Mike Frysinger <vapier@gentoo.org>
* ARM: drop unsupported 'trab' boardWolfgang Denk2011-06-22-4/+1
| | | | | | | | | | The 'trab' board configuration is broken, and there is nobody who is interested and willing to fix it. Drop it. This includes support for VFD displays which have always been used by this board only. Signed-off-by: Wolfgang Denk <wd@denx.de>
* tools/env: document current cross-compilation issues and workaroundLuca Ceresoli2011-04-30-0/+6
| | | | Signed-off-by: Luca Ceresoli <luca.ceresoli@comelit.it>
* tools/env: fix redundant env flag comparisonJon Povey2011-04-21-7/+6
| | | | | | | | | | | | | | | | | | This fixes two bugs with comparison of redundant environment flags on read. flag0 and flag1 in fw_env_open() were declared signed instead of unsigned char breaking BOOLEAN mode "== 0xFF" tests and in INCREMENTAL mode the wrong environment would be chosen where the flag values are 127 and 128 (either way round). With both flags over 128, both signs flipped and the logic worked by happy accident. Also there was a logic bug in the INCREMENTAL test (after signedness was fixed) in the case flag0=0, flag1=255, env 1 would be incorrectly chosen. Fix both of these. Signed-off-by: Jon Povey <jon.povey@racelogic.co.uk>
* Add support for dataflash to U-boot environment settings tool.Remy Bohmer2011-04-12-28/+56
| | | | | | | | | | * The sector size for SPI-dataflash (like AT45 flashes) are not always a power-of-2. So, the sector calculations are rewritten such that it works for either power-of-2 as any size sectors. * Make the flash sector size optional in case it is the same value as the environment size. Signed-off-by: Remy Bohmer <linux@bohmer.net>
* Coding Style (white space) cleanupWolfgang Denk2010-11-27-4/+4
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* tools/env: cleanup host build flagsDaniel Hobi2010-11-14-5/+10
| | | | | | | | | | | | | | | | | This patch makes tools/env/Makefile more similar to tools/imls: - define HOSTSRCS and HOSTCPPFLAGS, so that .depend generation works. - include U-Boot headers using -idirafter to prevent picking up u-boot/include/errno.h. - use HOSTCFLAGS_NOPED (fw_env.c does not conform to -pedantic). In order to cross-compile tools/env, override the HOSTCC variable as in this example: make tools env HOSTCC=bfin-uclinux-gcc Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch> Tested-by: Detlev Zundel <dzu@denx.de> Tested-by: Steve Sakoman <steve.sakoman@linaro.org>
* tools/env: use host build flagsMike Frysinger2010-09-19-3/+3
| | | | | | | Convert the tools/env/Makefile to use the same host tool syntax as the other tool subdirs. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* tools/env: fail on invalid optionsDaniel Hobi2010-09-18-0/+4
| | | | Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
* tools/env: allow option "-n" for fw_printenvDaniel Hobi2010-09-18-2/+5
| | | | | | | | | | | In commit bd7b26f8 (Tools: set multiple variable with fw_setenv utility), the option parsing was changed to getopt_long(3), but option "-n" of fw_printenv was not included. This leads to an error message "invalid option -- 'n'" on stderr, although the output on stdout is correct. Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
* tools/env/fw_printenv: Make redundant env work on locked flashes alsoDetlev Zundel2010-08-09-1/+6
| | | | | | | The invalidation of the old environment instance did not work for flashes supporting hardware locking. Now we unlock/lock around this update also. Signed-off-by: Detlev Zundel <dzu@denx.de>
* Tools: set multiple variable with fw_setenv utilityStefano Babic2010-06-29-52/+288
| | | | | | | | | | Add a sort of batch mode to fw_setenv, allowing to set multiple variables in one shot, without updating the flash after each set as now. It is added the possibility to pass a config file with a list of pairs <variable, value> to be set, separated by a TAB character. Signed-off-by: Stefano Babic <sbabic@denx.de>
* Rename lib_generic/ to lib/Peter Tyser2010-04-13-1/+1
| | | | | | | | Now that the other architecture-specific lib directories have been moved out of the top-level directory there's not much reason to have the '_generic' suffix on the common lib directory. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* Fix a typo in fw_env.configMartin Michlmayr2008-12-15-1/+1
| | | | | Reported-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
* rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD2008-10-18-2/+2
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Adds two more ethernet interface to 83xxrichardretanubun2008-10-18-0/+6
| | | | | | | | | Added as a convenience for other platforms that uses MPC8360 (has 8 UCC). Six eth interface is chosen because the platform I am using combines UCC1&2 and UCC3&4 as 1000 Eth and the other four UCCs as 10/100 Eth. Signed-off-by: Richard Retanubun <RichardRetanubun@RugggedCom.com> Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
* rename CFG_ENV macros to CONFIG_ENVJean-Christophe PLAGNIOL-VILLARD2008-09-10-10/+10
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* fw_env: add NAND supportGuennadi Liakhovetski2008-09-09-264/+611
| | | | | | | | Add support for environment in NAND with automatic NOR / NAND recognition, including unaligned environment, bad-block skipping, redundant environment copy. Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
* fw_env.c: fix build problems with MTD_VERSION=oldWolfgang Denk2008-09-02-1/+2
| | | | | | (as needed to support old 2.4 Linux kernel based releases) Signed-off-by: Wolfgang Denk <wd@denx.de>
* Big white-space cleanup.Wolfgang Denk2008-05-21-3/+3
| | | | | | | | | | | This commit gets rid of a huge amount of silly white-space issues. Especially, all sequences of SPACEs followed by TAB characters get removed (unless they appear in print statements). Also remove all embedded "vim:" and "vi:" statements which hide indentation problems. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Propagate Error Status to the Shell on fw_printenv ErrorsGrant Erickson2008-05-09-21/+29
| | | | | | | | | | | | Changed implementation such that fw_printenv returns failure status when one or more specified variables do not exist or when incorrect command syntax is used. This aids scripting fw_printenv such that the script can key of the return status rather than relying on standard error "scraping". Signed-off-by: Grant Erickson <gerickson@nuovations.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
* Fix Compilation Errors with 'tools/env/fw_printenv'Grant Erickson2008-05-09-1/+1
| | | | | | | | | | | | | | | | In the current top-of-tree, 1.3.3.-rc2, the optional tool 'tools/env/fw_printenv' fails to compile for two reasons: 1) The header watchdog.h cannot be found. 2) The header zlib.h is picked up from the tool chain rather than the project causing a prototype conflict for crc32. This patch addresses both of these issues. Platforms Tested On: - AMCC "Kilauea" Signed-off-by: Grant Erickson <gerickson@nuovations.com>
* Fix compile problem with new env code.Wolfgang Denk2008-01-08-0/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* tools: fix fw_printenv tool to compile againMarkus Klotzbücher2008-01-08-29/+41
| | | | | | | | | | This patch updates the fw_printenv/fw_setenv userspace tool to include the correct MTD header in order to compile against current kernel headers. Backward compatibility is preserved by introducing an option MTD_VERSION which can be set to "old" for compilation using the old MTD headers. Along with this a number of warnings are fixed. Signed-off-by: Markus Klotzbuecher <mk@denx.de>