xref: /freebsd/sys/dts/bindings-localbus.txt (revision 78d146160dc5339c9cdf7799551bcc442a6eb95b)
1*2e36db14SWarner Losh
2*2e36db14SWarner LoshMarvell Device bus (localbus) configuration.
3*2e36db14SWarner Losh============================================
4*2e36db14SWarner Losh
5*2e36db14SWarner Losh1. Properties for localbus nodes
6*2e36db14SWarner Losh
7*2e36db14SWarner Losh1.1 ranges
8*2e36db14SWarner Losh
9*2e36db14SWarner LoshProperty:	ranges
10*2e36db14SWarner Losh
11*2e36db14SWarner LoshValue type:	<prop-encoded-array> encoded as arbitrary number of localbus
12*2e36db14SWarner Losh		nodes specifiers.
13*2e36db14SWarner Losh
14*2e36db14SWarner LoshDescription:	ranges property defines values used for mapping devices
15*2e36db14SWarner Losh		connected to localbus, in Marvell devices it is used also for
16*2e36db14SWarner Losh		setting decoding windows.
17*2e36db14SWarner Losh
18*2e36db14SWarner Losh		a) child node address-cells:
19*2e36db14SWarner Losh		   - first cell: number of bank (chip select)
20*2e36db14SWarner Losh		   - second cell: (Marvell devices) Target ID for decoding
21*2e36db14SWarner Losh		   	windows setup
22*2e36db14SWarner Losh
23*2e36db14SWarner Losh		b) parent node address cells:
24*2e36db14SWarner Losh		   - address offset: used with parent's node base address to
25*2e36db14SWarner Losh		   	specify base address of mapped device
26*2e36db14SWarner Losh
27*2e36db14SWarner Losh		c) child node size-cells:
28*2e36db14SWarner Losh		   - size: defines amount of memory that should be reserved for
29*2e36db14SWarner Losh			device
30*2e36db14SWarner Losh
31*2e36db14SWarner Losh1.2 bank-count
32*2e36db14SWarner Losh
33*2e36db14SWarner LoshProperty:	bank-count
34*2e36db14SWarner Losh
35*2e36db14SWarner LoshValue type:	<u32>
36*2e36db14SWarner Losh
37*2e36db14SWarner LoshDescription:	The bank_count property defines maximum number of banks on
38*2e36db14SWarner Losh		localbus node. Bank is most often interpreted as device chip
39*2e36db14SWarner Losh		select, but may also describe another device (e.g. SPI flash).
40*2e36db14SWarner Losh
41*2e36db14SWarner Losh1.3 Example
42*2e36db14SWarner Losh
43*2e36db14SWarner Losh	localbus@0 {
44*2e36db14SWarner Losh		#address-cells = <2>;
45*2e36db14SWarner Losh		#size-cells = <1>;
46*2e36db14SWarner Losh		compatible = "mrvl,lbc";
47*2e36db14SWarner Losh		bank-count = <5>;
48*2e36db14SWarner Losh
49*2e36db14SWarner Losh		/* This reflects CPU decode windows setup. */
50*2e36db14SWarner Losh		ranges = <0x0 0x2f 0xb2200000 0x00100000
51*2e36db14SWarner Losh			  0x1 0x3e 0xb2100000 0x00100000
52*2e36db14SWarner Losh			  0x2 0x3d 0xb0000000 0x02000000
53*2e36db14SWarner Losh			  0x3 0x3b 0xb2000000 0x00100000>;
54*2e36db14SWarner Losh	};
55*2e36db14SWarner Losh
56*2e36db14SWarner Losh2. Properties for localbus consumer nodes:
57*2e36db14SWarner Losh
58*2e36db14SWarner Losh2.1 reg
59*2e36db14SWarner Losh
60*2e36db14SWarner LoshProperty:	reg
61*2e36db14SWarner Losh
62*2e36db14SWarner LoshValue type: 	<prop-encoded-array>
63*2e36db14SWarner Losh
64*2e36db14SWarner LoshDescription:	A standard property required for localbus child nodes. Defines
65*2e36db14SWarner Losh		the device memory region.
66*2e36db14SWarner Losh
67*2e36db14SWarner Losh		a) first cell: number of bank (chip select)
68*2e36db14SWarner Losh
69*2e36db14SWarner Losh		b) address offset: used with address offset from parent's ranges
70*2e36db14SWarner Losh			for corresponding bank to specify base address of
71*2e36db14SWarner Losh			the device
72*2e36db14SWarner Losh
73*2e36db14SWarner Losh		c) size: defines size of the device memory region
74*2e36db14SWarner Losh
75*2e36db14SWarner Losh2.2 Example
76*2e36db14SWarner Losh
77*2e36db14SWarner Losh	nor@0,0 {
78*2e36db14SWarner Losh		#address-cells = <1>;
79*2e36db14SWarner Losh		#size-cells = <1>;
80*2e36db14SWarner Losh		compatible = "cfi-flash";
81*2e36db14SWarner Losh		reg = <0x0 0x0 0x00100000>;
82*2e36db14SWarner Losh	};
83