xref: /aosp_15_r20/external/dtc/tests/fdtdump-runtest.sh (revision cd60bc56d4bea3af4ec04523e4d71c2b272c8aff)
1*cd60bc56SAndroid Build Coastguard Worker#! /bin/sh
2*cd60bc56SAndroid Build Coastguard Worker
3*cd60bc56SAndroid Build Coastguard Worker# Arguments:
4*cd60bc56SAndroid Build Coastguard Worker#   $1 - source file to compile and compare with fdtdump output of the
5*cd60bc56SAndroid Build Coastguard Worker#	  compiled file.
6*cd60bc56SAndroid Build Coastguard Worker
7*cd60bc56SAndroid Build Coastguard WorkerSRCDIR=`dirname "$0"`
8*cd60bc56SAndroid Build Coastguard Worker. "$SRCDIR/testutils.sh"
9*cd60bc56SAndroid Build Coastguard Worker
10*cd60bc56SAndroid Build Coastguard Workerdts="$1"
11*cd60bc56SAndroid Build Coastguard Workerdtb="${dts}.dtb"
12*cd60bc56SAndroid Build Coastguard Workerout="${dts}.out"
13*cd60bc56SAndroid Build Coastguard WorkerLOG=tmp.log.$$
14*cd60bc56SAndroid Build Coastguard Worker
15*cd60bc56SAndroid Build Coastguard Workerfiles="$dtb $out $LOG"
16*cd60bc56SAndroid Build Coastguard Worker
17*cd60bc56SAndroid Build Coastguard Workerrm -f $files
18*cd60bc56SAndroid Build Coastguard Workertrap "rm -f $files" 0
19*cd60bc56SAndroid Build Coastguard Worker
20*cd60bc56SAndroid Build Coastguard Workerverbose_run_log_check "$LOG" $VALGRIND $DTC -O dtb $dts -o $dtb
21*cd60bc56SAndroid Build Coastguard Worker$FDTDUMP ${dtb} | grep -v "//" >${out}
22*cd60bc56SAndroid Build Coastguard Worker
23*cd60bc56SAndroid Build Coastguard Workerif diff -w $dts $out >/dev/null; then
24*cd60bc56SAndroid Build Coastguard Worker    PASS
25*cd60bc56SAndroid Build Coastguard Workerelse
26*cd60bc56SAndroid Build Coastguard Worker    if [ -z "$QUIET_TEST" ]; then
27*cd60bc56SAndroid Build Coastguard Worker	echo "DIFF :-:"
28*cd60bc56SAndroid Build Coastguard Worker	diff -u -w $dts $out
29*cd60bc56SAndroid Build Coastguard Worker    fi
30*cd60bc56SAndroid Build Coastguard Worker    FAIL "Results differ from expected"
31*cd60bc56SAndroid Build Coastguard Workerfi
32