
Hi Wolfgang,
On 05/03/2013 12:08 PM, Wolfgang Denk wrote:
Dear Eric Nelson,
In message 1367606863-14846-1-git-send-email-eric.nelson@boundarydevices.com you wrote:
Signed-off-by: Eric Nelson eric.nelson@boundarydevices.com
common/cmd_itest.c | 4 ++++ doc/README.commands.itest | 10 +++++++++- 2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/common/cmd_itest.c b/common/cmd_itest.c index 2c8e5d0..0629b09 100644 --- a/common/cmd_itest.c +++ b/common/cmd_itest.c @@ -38,6 +38,7 @@ #define GT 3 #define LE 4 #define GE 5 +#define AND 6
It does not make much sense to me to add AND, when you not also add OR (and eventually XOR).
I only needed to test a bit.
Also, now the help message is no longer correct - it says:
189 U_BOOT_CMD( 190 itest, 4, 0, do_itest, 191 "return true/false on integer compare", 192 "[.b, .w, .l, .s] [*]value1 <op> [*]value2" 193 );
but we no longer compare...
Hm, re-reading this I think this is the wrong approach. This stuff does not belong into the "itest" command which really is for comparing, and NOT for operations on the arguments.
If you need operations, then please use "setexpr" - which already has all of this, and more.
As always, thanks for the guidance.
I hadn't noticed that setexpr supported indirection.
In case this helps someone else, I was looking for a way to detect Android "recovery" mode, which is flagged by bit seven in the SRC_GPR10 register (address 0x020d8044).
And setexpr can be used like so:
U-Boot > md.l 0x020d8044 020d8044: 00000080 .... U-Boot > setexpr rval *0x020D8044 & 0x80 U-Boot > print rval rval=80 U-Boot > setexpr rval *0x020D8044 & 0x40 U-Boot > print rval rval=0
Regards,
Eric