xref: /aosp_15_r20/external/f2fs-tools/scripts/dumpf2fs.sh (revision 59bfda1f02d633cd6b8b69f31eee485d40f6eef6)
1*59bfda1fSAndroid Build Coastguard Worker#!/system/bin/sh
2*59bfda1fSAndroid Build Coastguard WorkerDEV=/dev/block/mmcblk0p16
3*59bfda1fSAndroid Build Coastguard Worker
4*59bfda1fSAndroid Build Coastguard WorkerCMD=$1
5*59bfda1fSAndroid Build Coastguard WorkerBASE=0x200000
6*59bfda1fSAndroid Build Coastguard WorkerBASE_MAIN=0xac00000
7*59bfda1fSAndroid Build Coastguard Worker
8*59bfda1fSAndroid Build Coastguard Workercase $CMD in
9*59bfda1fSAndroid Build Coastguard Workercp1)
10*59bfda1fSAndroid Build Coastguard Worker	echo dump cp1
11*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE
12*59bfda1fSAndroid Build Coastguard Worker	echo $addr
13*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 4096 $DEV;;
14*59bfda1fSAndroid Build Coastguard Workercp2)
15*59bfda1fSAndroid Build Coastguard Worker	echo dump cp2
16*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE+0x200000
17*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 4096 $DEV;;
18*59bfda1fSAndroid Build Coastguard Workercp)
19*59bfda1fSAndroid Build Coastguard Worker	echo dump cp1 and cp2
20*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE
21*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 409 $DEV
22*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE+0x200000
23*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 4096 $DEV;;
24*59bfda1fSAndroid Build Coastguard Workercp1_all)
25*59bfda1fSAndroid Build Coastguard Worker	echo dump cp1 all
26*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE
27*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 20480 $DEV;;
28*59bfda1fSAndroid Build Coastguard Workercp2_all)
29*59bfda1fSAndroid Build Coastguard Worker	echo dump cp2 all
30*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE+0x200000
31*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 20480 $DEV;;
32*59bfda1fSAndroid Build Coastguard Workercp_all)
33*59bfda1fSAndroid Build Coastguard Worker	echo dump cp1 and cp2 all
34*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE
35*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 20480 $DEV
36*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE+0x200000
37*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 20480 $DEV;;
38*59bfda1fSAndroid Build Coastguard Workerblk)
39*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE_MAIN+$2*0x200000+$3*0x1000
40*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 4096 $DEV
41*59bfda1fSAndroid Build Coastguard Worker	echo ;;
42*59bfda1fSAndroid Build Coastguard Workerinode)
43*59bfda1fSAndroid Build Coastguard Worker	let addr=$BASE_MAIN+$2*0x200000+$3*0x1000
44*59bfda1fSAndroid Build Coastguard Worker	for i in `seq $3 511`
45*59bfda1fSAndroid Build Coastguard Worker	do
46*59bfda1fSAndroid Build Coastguard Worker		hexdump -s $addr -n 8 $DEV
47*59bfda1fSAndroid Build Coastguard Worker		let end=$addr+0x0ff0
48*59bfda1fSAndroid Build Coastguard Worker		hexdump -s $end -n 16 $DEV
49*59bfda1fSAndroid Build Coastguard Worker		let addr=$addr+0x1000
50*59bfda1fSAndroid Build Coastguard Worker	done
51*59bfda1fSAndroid Build Coastguard Worker	echo ;;
52*59bfda1fSAndroid Build Coastguard Worker*)
53*59bfda1fSAndroid Build Coastguard Worker	let addr=$1*0x1000
54*59bfda1fSAndroid Build Coastguard Worker	let segno=$addr-$BASE_MAIN
55*59bfda1fSAndroid Build Coastguard Worker	let segno=$segno/0x200000
56*59bfda1fSAndroid Build Coastguard Worker	let off=$addr-$BASE_MAIN
57*59bfda1fSAndroid Build Coastguard Worker	let off=$off%0x200000/0x1000
58*59bfda1fSAndroid Build Coastguard Worker	echo $segno, $off
59*59bfda1fSAndroid Build Coastguard Worker	hexdump -s $addr -n 4096 $DEV
60*59bfda1fSAndroid Build Coastguard Worker	echo ;;
61*59bfda1fSAndroid Build Coastguard Workeresac
62