From: Roland Gaudig <roland.gau...@weidmueller.com>
This patch series is the revised version of the previos proposal [PATCH v1 0/1] cmd: setexpr: add dec operation for converting variable to decimal In contrast to version 1, the "dec" operator has been replaced by a more flexible "fmt" operator to handle format strings. U-Boot uses almost everywhere hexadecimal numbers. But some bootargs passed to Linux are expecting decimal numbers. As long as the values are in the range 0 to 9 it is sufficient to just strip 0x from the number. But for greater values a method for converting numbers to decimal is needed. This patch adds C like format string capabilities to the setexpr command. Here are some examples: => setexpr foo fmt %d 0x100 => echo $foo 256 => => setexpr foo fmt 0x%08x 63 => echo $foo 0x00000063 => => setexpr foo fmt %%%o 8 => echo $foo %10 => In contrast to the original C format strings the number of parameters is limited to one. As the get_arg() function returns unsigned long type, the format string commands are limited to those which are operating on unsigned long type. Patman insisted adding a maintainer to for the doc/usage/setexpr.rst, but I am not sure if chose the correct section and person. Roland Gaudig (3): cmd: setexpr: add fmt format string operation doc: usage: add description for setexpr command test: cmd: setexpr: add tests for format string operations MAINTAINERS | 6 ++ cmd/setexpr.c | 102 ++++++++++++++++++++++++++++++++- doc/usage/index.rst | 1 + doc/usage/setexpr.rst | 130 ++++++++++++++++++++++++++++++++++++++++++ test/cmd/setexpr.c | 33 +++++++++++ 5 files changed, 271 insertions(+), 1 deletion(-) create mode 100644 doc/usage/setexpr.rst -- 2.25.1