Add some initial test cases.
Add the original simple test case and a case with different based cell values. Correct output asm files as well as stderr is captured. Signed-off-by: Jon Loeliger <jdl@freescale.com>
This commit is contained in:
parent
af0278a3a0
commit
fd84d97dee
7 changed files with 511 additions and 0 deletions
175
tests/base01.asm
Normal file
175
tests/base01.asm
Normal file
|
@ -0,0 +1,175 @@
|
|||
/* autogenerated by dtc, do not edit */
|
||||
|
||||
#define OF_DT_HEADER 0xd00dfeed
|
||||
#define OF_DT_BEGIN_NODE 0x1
|
||||
#define OF_DT_END_NODE 0x2
|
||||
#define OF_DT_PROP 0x3
|
||||
#define OF_DT_END 0x9
|
||||
|
||||
.globl dt_blob_start
|
||||
dt_blob_start:
|
||||
_dt_blob_start:
|
||||
.globl dt_header
|
||||
dt_header:
|
||||
_dt_header:
|
||||
.long OF_DT_HEADER /* magic */
|
||||
.long _dt_blob_end - _dt_blob_start /* totalsize */
|
||||
.long _dt_struct_start - _dt_blob_start /* off_dt_struct */
|
||||
.long _dt_strings_start - _dt_blob_start /* off_dt_strings */
|
||||
.long _dt_reserve_map - _dt_blob_start /* off_dt_strings */
|
||||
.long 16 /* version */
|
||||
.long 16 /* last_comp_version */
|
||||
.long 0 /*boot_cpuid_phys*/
|
||||
.long _dt_strings_end - _dt_strings_start /* size_dt_strings */
|
||||
.balign 8
|
||||
.globl dt_reserve_map
|
||||
dt_reserve_map:
|
||||
_dt_reserve_map:
|
||||
/* Memory reserve map from source file */
|
||||
.long 0, 0
|
||||
.long 0, 0
|
||||
.globl dt_struct_start
|
||||
dt_struct_start:
|
||||
_dt_struct_start:
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string ""
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0xa
|
||||
.long 0x0
|
||||
.long 0x536f6d65
|
||||
.long 0x4d6f6465
|
||||
.short 0x6c00
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x8
|
||||
.long 0x6
|
||||
.long 0x4e6f7468
|
||||
.long 0x696e6700
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x11
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x20
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "memory@0"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x7
|
||||
.long 0x2c
|
||||
.long 0x6d656d6f
|
||||
.short 0x7279
|
||||
.byte 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x10
|
||||
.long 0x38
|
||||
.long 0x0
|
||||
.long 0x0
|
||||
.long 0x0
|
||||
.long 0x20000000
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "cpus"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x11
|
||||
.long 0x1
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x20
|
||||
.long 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x3c
|
||||
.long 0xa
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x40
|
||||
.long 0x17
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x44
|
||||
.long 0x5
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x49
|
||||
.long 0xf
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x4d
|
||||
.long 0xd00d
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x10
|
||||
.long 0x53
|
||||
.long 0x4d2
|
||||
.long 0x162e
|
||||
.long 0x2334
|
||||
.long 0xd80
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x59
|
||||
.long 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x61
|
||||
.long 0xffffffff
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x69
|
||||
.long 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x71
|
||||
.long 0xffffffff
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_END
|
||||
.globl dt_struct_end
|
||||
dt_struct_end:
|
||||
_dt_struct_end:
|
||||
.globl dt_strings_start
|
||||
dt_strings_start:
|
||||
_dt_strings_start:
|
||||
.string "model"
|
||||
.string "compatible"
|
||||
.string "#address-cells"
|
||||
.string "#size-cells"
|
||||
.string "device_type"
|
||||
.string "reg"
|
||||
.string "d10"
|
||||
.string "d23"
|
||||
.string "b101"
|
||||
.string "o17"
|
||||
.string "hd00d"
|
||||
.string "stuff"
|
||||
.string "bad-d-1"
|
||||
.string "bad-d-2"
|
||||
.string "bad-o-1"
|
||||
.string "bad-o-2"
|
||||
.globl dt_strings_end
|
||||
dt_strings_end:
|
||||
_dt_strings_end:
|
||||
.globl dt_blob_end
|
||||
dt_blob_end:
|
||||
_dt_blob_end:
|
1
tests/base01.cmd
Normal file
1
tests/base01.cmd
Normal file
|
@ -0,0 +1 @@
|
|||
dtc -f -b 0 -V 16 -I dts -O asm
|
31
tests/base01.dts
Normal file
31
tests/base01.dts
Normal file
|
@ -0,0 +1,31 @@
|
|||
/ {
|
||||
model = "SomeModel";
|
||||
compatible = "Nothing";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
memory@0 {
|
||||
device_type = "memory";
|
||||
reg = <00000000 00000000 00000000 20000000>;
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
d10 = <d# 10>; // hex: 0xa
|
||||
d23 = <d# 23>; // hex: 0x17
|
||||
b101 = <b# 101>; // hex: 0x5
|
||||
o17 = <o# 17>; // hex: 0xf
|
||||
hd00d = <h# d00d>; // hex: 0xd00d
|
||||
|
||||
// hex: 0x4d2 0x163e 0x2334 0xd80
|
||||
stuff = <d# 1234 d# 5678 d# 9012 d# 3456>;
|
||||
|
||||
|
||||
bad-d-1 = <d# abc123>; // Hrm. 0
|
||||
bad-d-2 = <d# 123456789012345>;
|
||||
bad-o-1 = <o# 891>;
|
||||
bad-o-2 = <o# 123456123456>;
|
||||
};
|
||||
|
||||
};
|
6
tests/base01.stderr
Normal file
6
tests/base01.stderr
Normal file
|
@ -0,0 +1,6 @@
|
|||
DTC: dts->asm on file "tests/base01.dts"
|
||||
Line 26: Invalid cell value '123456789012345'; -1 assumed
|
||||
Line 27: Invalid cell value '891'; 0 assumed
|
||||
Line 28: Invalid cell value '123456123456'; -1 assumed
|
||||
ERROR: Missing /chosen node
|
||||
Input tree has errors
|
294
tests/test01.asm
Normal file
294
tests/test01.asm
Normal file
|
@ -0,0 +1,294 @@
|
|||
/* autogenerated by dtc, do not edit */
|
||||
|
||||
#define OF_DT_HEADER 0xd00dfeed
|
||||
#define OF_DT_BEGIN_NODE 0x1
|
||||
#define OF_DT_END_NODE 0x2
|
||||
#define OF_DT_PROP 0x3
|
||||
#define OF_DT_END 0x9
|
||||
|
||||
.globl dt_blob_start
|
||||
dt_blob_start:
|
||||
_dt_blob_start:
|
||||
.globl dt_header
|
||||
dt_header:
|
||||
_dt_header:
|
||||
.long OF_DT_HEADER /* magic */
|
||||
.long _dt_blob_end - _dt_blob_start /* totalsize */
|
||||
.long _dt_struct_start - _dt_blob_start /* off_dt_struct */
|
||||
.long _dt_strings_start - _dt_blob_start /* off_dt_strings */
|
||||
.long _dt_reserve_map - _dt_blob_start /* off_dt_strings */
|
||||
.long 16 /* version */
|
||||
.long 16 /* last_comp_version */
|
||||
.long 0 /*boot_cpuid_phys*/
|
||||
.long _dt_strings_end - _dt_strings_start /* size_dt_strings */
|
||||
.balign 8
|
||||
.globl dt_reserve_map
|
||||
dt_reserve_map:
|
||||
_dt_reserve_map:
|
||||
/* Memory reserve map from source file */
|
||||
.long 0x10000000
|
||||
.long 0x00000000
|
||||
.long 0x00000000
|
||||
.long 0x02000000
|
||||
.long 0x20000000
|
||||
.long 0x00000000
|
||||
.long 0x01000000
|
||||
.long 0x00000000
|
||||
.long 0x00000000
|
||||
.long 0x00000000
|
||||
.long 0x00000000
|
||||
.long 0x00000014
|
||||
.long 0, 0
|
||||
.long 0, 0
|
||||
.globl dt_struct_start
|
||||
dt_struct_start:
|
||||
_dt_struct_start:
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string ""
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0xc
|
||||
.long 0x0
|
||||
.long 0x4d79426f
|
||||
.long 0x6172644e
|
||||
.long 0x616d6500
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x1e
|
||||
.long 0x6
|
||||
.long 0x4d79426f
|
||||
.long 0x6172644e
|
||||
.long 0x616d6500
|
||||
.long 0x4d79426f
|
||||
.long 0x61726446
|
||||
.long 0x616d696c
|
||||
.long 0x794e616d
|
||||
.short 0x6500
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x11
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x20
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "cpus"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x2c
|
||||
.long 0x1
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x11
|
||||
.long 0x1
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x20
|
||||
.long 0x0
|
||||
.balign 4
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "PowerPC,970@0"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0xc
|
||||
.long 0x3a
|
||||
.long 0x506f7765
|
||||
.long 0x7250432c
|
||||
.long 0x39373000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x3f
|
||||
.long 0x63707500
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x4b
|
||||
.long 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x4f
|
||||
.long 0x5f5e1000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x5f
|
||||
.long 0x1fca055
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x0
|
||||
.long 0x72
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x81
|
||||
.long 0x10000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x8e
|
||||
.long 0x8000
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "PowerPC,970@1"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0xc
|
||||
.long 0x3a
|
||||
.long 0x506f7765
|
||||
.long 0x7250432c
|
||||
.long 0x39373000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x3f
|
||||
.long 0x63707500
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x4b
|
||||
.long 0x1
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x4f
|
||||
.long 0x5f5e1000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x5f
|
||||
.long 0x1fca055
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x81
|
||||
.long 0x10000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x8e
|
||||
.long 0x8000
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "randomnode"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x13
|
||||
.long 0x9b
|
||||
.long 0xff007374
|
||||
.long 0x75666673
|
||||
.long 0x74756666
|
||||
.long 0x909090a
|
||||
.short 0xa0a
|
||||
.byte 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x9
|
||||
.long 0xa2
|
||||
.long 0xa0b0c0d
|
||||
.long 0xdeeaadbe
|
||||
.byte 0xef
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0xa7
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x14
|
||||
.long 0xab
|
||||
.long 0x61626300
|
||||
.long 0x12340000
|
||||
.long 0xa
|
||||
.long 0xb
|
||||
.long 0xc
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "memory@0"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x7
|
||||
.long 0x3f
|
||||
.long 0x6d656d6f
|
||||
.short 0x7279
|
||||
.byte 0x0
|
||||
.balign 4
|
||||
.globl memreg
|
||||
memreg:
|
||||
.long OF_DT_PROP
|
||||
.long 0x10
|
||||
.long 0x4b
|
||||
.long 0x0
|
||||
.long 0x0
|
||||
.long 0x0
|
||||
.long 0x20000000
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0x2c
|
||||
.long 0x2
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_BEGIN_NODE
|
||||
.string "chosen"
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0xf
|
||||
.long 0xb1
|
||||
.long 0x726f6f74
|
||||
.long 0x3d2f6465
|
||||
.long 0x762f7364
|
||||
.short 0x6132
|
||||
.byte 0x0
|
||||
.balign 4
|
||||
.long OF_DT_PROP
|
||||
.long 0x4
|
||||
.long 0xba
|
||||
.long 0x600
|
||||
.balign 4
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_END_NODE
|
||||
.long OF_DT_END
|
||||
.globl dt_struct_end
|
||||
dt_struct_end:
|
||||
_dt_struct_end:
|
||||
.globl dt_strings_start
|
||||
dt_strings_start:
|
||||
_dt_strings_start:
|
||||
.string "model"
|
||||
.string "compatible"
|
||||
.string "#address-cells"
|
||||
.string "#size-cells"
|
||||
.string "linux,phandle"
|
||||
.string "name"
|
||||
.string "device_type"
|
||||
.string "reg"
|
||||
.string "clock-frequency"
|
||||
.string "timebase-frequency"
|
||||
.string "linux,boot-cpu"
|
||||
.string "i-cache-size"
|
||||
.string "d-cache-size"
|
||||
.string "string"
|
||||
.string "blob"
|
||||
.string "ref"
|
||||
.string "mixed"
|
||||
.string "bootargs"
|
||||
.string "linux,platform"
|
||||
.globl dt_strings_end
|
||||
dt_strings_end:
|
||||
_dt_strings_end:
|
||||
.globl dt_blob_end
|
||||
dt_blob_end:
|
||||
_dt_blob_end:
|
4
tests/test01.stderr
Normal file
4
tests/test01.stderr
Normal file
|
@ -0,0 +1,4 @@
|
|||
DTC: dts->asm on file "test.dts"
|
||||
Warning: "linux,boot-cpu" property is deprecated in blob version 2 or higher
|
||||
Warning: /chosen has no "linux,stdout-path" property
|
||||
Warning: /chosen has no "interrupt-controller" property
|
Loading…
Reference in a new issue