162306a36Sopenharmony_ci* Boot Bus
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciThe Octeon Boot Bus is a configurable parallel bus with 8 chip
462306a36Sopenharmony_ciselects.  Each chip select is independently configurable.
562306a36Sopenharmony_ci
662306a36Sopenharmony_ciProperties:
762306a36Sopenharmony_ci- compatible: "cavium,octeon-3860-bootbus"
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci  Compatibility with all cn3XXX, cn5XXX and cn6XXX SOCs.
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci- reg: The base address of the Boot Bus' register bank.
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci- #address-cells: Must be <2>.  The first cell is the chip select
1462306a36Sopenharmony_ci   within the bootbus.  The second cell is the offset from the chip select.
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci- #size-cells: Must be <1>.
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ci- ranges: There must be one one triplet of (child-bus-address,
1962306a36Sopenharmony_ci  parent-bus-address, length) for each active chip select.  If the
2062306a36Sopenharmony_ci  length element for any triplet is zero, the chip select is disabled,
2162306a36Sopenharmony_ci  making it inactive.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciThe configuration parameters for each chip select are stored in child
2462306a36Sopenharmony_cinodes.
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ciConfiguration Properties:
2762306a36Sopenharmony_ci- compatible:  "cavium,octeon-3860-bootbus-config"
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci- cavium,cs-index: A single cell indicating the chip select that
3062306a36Sopenharmony_ci  corresponds to this configuration.
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci- cavium,t-adr: A cell specifying the ADR timing (in nS).
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci- cavium,t-ce: A cell specifying the CE timing (in nS).
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci- cavium,t-oe: A cell specifying the OE timing (in nS).
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci- cavium,t-we: A cell specifying the WE timing (in nS).
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci- cavium,t-rd-hld: A cell specifying the RD_HLD timing (in nS).
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci- cavium,t-wr-hld: A cell specifying the WR_HLD timing (in nS).
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci- cavium,t-pause: A cell specifying the PAUSE timing (in nS).
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci- cavium,t-wait: A cell specifying the WAIT timing (in nS).
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci- cavium,t-page: A cell specifying the PAGE timing (in nS).
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci- cavium,t-rd-dly: A cell specifying the RD_DLY timing (in nS).
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci- cavium,pages: A cell specifying the PAGES parameter (0 = 8 bytes, 1
5362306a36Sopenharmony_ci  = 2 bytes, 2 = 4 bytes, 3 = 8 bytes).
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci- cavium,wait-mode: Optional.  If present, wait mode (WAITM) is selected.
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ci- cavium,page-mode: Optional.  If present, page mode (PAGEM) is selected.
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci- cavium,bus-width: A cell specifying the WIDTH parameter (in bits) of
6062306a36Sopenharmony_ci  the bus for this chip select.
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci- cavium,ale-mode: Optional.  If present, ALE mode is selected.
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci- cavium,sam-mode: Optional.  If present, SAM mode is selected.
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci- cavium,or-mode: Optional.  If present, OR mode is selected.
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ciExample:
6962306a36Sopenharmony_ci	bootbus: bootbus@1180000000000 {
7062306a36Sopenharmony_ci		compatible = "cavium,octeon-3860-bootbus";
7162306a36Sopenharmony_ci		reg = <0x11800 0x00000000 0x0 0x200>;
7262306a36Sopenharmony_ci		/* The chip select number and offset */
7362306a36Sopenharmony_ci		#address-cells = <2>;
7462306a36Sopenharmony_ci		/* The size of the chip select region */
7562306a36Sopenharmony_ci		#size-cells = <1>;
7662306a36Sopenharmony_ci		ranges = <0 0  0x0 0x1f400000  0xc00000>,
7762306a36Sopenharmony_ci			 <1 0  0x10000 0x30000000  0>,
7862306a36Sopenharmony_ci			 <2 0  0x10000 0x40000000  0>,
7962306a36Sopenharmony_ci			 <3 0  0x10000 0x50000000  0>,
8062306a36Sopenharmony_ci			 <4 0  0x0 0x1d020000  0x10000>,
8162306a36Sopenharmony_ci			 <5 0  0x0 0x1d040000  0x10000>,
8262306a36Sopenharmony_ci			 <6 0  0x0 0x1d050000  0x10000>,
8362306a36Sopenharmony_ci			 <7 0  0x10000 0x90000000  0>;
8462306a36Sopenharmony_ci
8562306a36Sopenharmony_ci			cavium,cs-config@0 {
8662306a36Sopenharmony_ci			compatible = "cavium,octeon-3860-bootbus-config";
8762306a36Sopenharmony_ci			cavium,cs-index = <0>;
8862306a36Sopenharmony_ci			cavium,t-adr  = <20>;
8962306a36Sopenharmony_ci			cavium,t-ce   = <60>;
9062306a36Sopenharmony_ci			cavium,t-oe   = <60>;
9162306a36Sopenharmony_ci			cavium,t-we   = <45>;
9262306a36Sopenharmony_ci			cavium,t-rd-hld = <35>;
9362306a36Sopenharmony_ci			cavium,t-wr-hld = <45>;
9462306a36Sopenharmony_ci			cavium,t-pause  = <0>;
9562306a36Sopenharmony_ci			cavium,t-wait   = <0>;
9662306a36Sopenharmony_ci			cavium,t-page   = <35>;
9762306a36Sopenharmony_ci			cavium,t-rd-dly = <0>;
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci			cavium,pages     = <0>;
10062306a36Sopenharmony_ci			cavium,bus-width = <8>;
10162306a36Sopenharmony_ci		};
10262306a36Sopenharmony_ci		.
10362306a36Sopenharmony_ci		.
10462306a36Sopenharmony_ci		.
10562306a36Sopenharmony_ci		cavium,cs-config@6 {
10662306a36Sopenharmony_ci			compatible = "cavium,octeon-3860-bootbus-config";
10762306a36Sopenharmony_ci			cavium,cs-index = <6>;
10862306a36Sopenharmony_ci			cavium,t-adr  = <5>;
10962306a36Sopenharmony_ci			cavium,t-ce   = <300>;
11062306a36Sopenharmony_ci			cavium,t-oe   = <270>;
11162306a36Sopenharmony_ci			cavium,t-we   = <150>;
11262306a36Sopenharmony_ci			cavium,t-rd-hld = <100>;
11362306a36Sopenharmony_ci			cavium,t-wr-hld = <70>;
11462306a36Sopenharmony_ci			cavium,t-pause  = <0>;
11562306a36Sopenharmony_ci			cavium,t-wait   = <0>;
11662306a36Sopenharmony_ci			cavium,t-page   = <320>;
11762306a36Sopenharmony_ci			cavium,t-rd-dly = <0>;
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci			cavium,pages     = <0>;
12062306a36Sopenharmony_ci			cavium,wait-mode;
12162306a36Sopenharmony_ci			cavium,bus-width = <16>;
12262306a36Sopenharmony_ci		};
12362306a36Sopenharmony_ci		.
12462306a36Sopenharmony_ci		.
12562306a36Sopenharmony_ci		.
12662306a36Sopenharmony_ci	};
127