11590SrgrimesBindings for HyperBus Memory Controller (HBMC) on TI's K3 family of SoCs
21590Srgrimes
31590SrgrimesRequired properties:
41590Srgrimes- compatible : "ti,am654-hbmc" for AM654 SoC
51590Srgrimes- reg : Two entries:
61590Srgrimes	First entry pointed to the register space of HBMC controller
71590Srgrimes	Second entry pointing to the memory map region dedicated for
81590Srgrimes	MMIO access to attached flash devices
91590Srgrimes- ranges : Address translation from offset within CS to allocated MMIO
101590Srgrimes	   space in SoC
111590Srgrimes
121590SrgrimesOptional properties:
131590Srgrimes- mux-controls : phandle to the multiplexer that controls selection of
141590Srgrimes		 HBMC vs OSPI inside Flash SubSystem (FSS). Default is OSPI,
151590Srgrimes		 if property is absent.
161590Srgrimes		 See Documentation/devicetree/bindings/mux/reg-mux.txt
171590Srgrimes		 for mmio-mux binding details
181590Srgrimes
191590SrgrimesExample:
201590Srgrimes
211590Srgrimes	system-controller@47000000 {
221590Srgrimes		compatible = "syscon", "simple-mfd";
231590Srgrimes		reg = <0x0 0x47000000 0x0 0x100>;
241590Srgrimes		#address-cells = <2>;
251590Srgrimes		#size-cells = <2>;
261590Srgrimes		ranges;
271590Srgrimes
281590Srgrimes		hbmc_mux: multiplexer {
291590Srgrimes			compatible = "mmio-mux";
3060583Sphk			#mux-control-cells = <1>;
3160583Sphk			mux-reg-masks = <0x4 0x2>; /* 0: reg 0x4, bit 1 */
3260583Sphk		};
331590Srgrimes	};
341590Srgrimes
351590Srgrimes	hbmc: hyperbus@47034000 {
361590Srgrimes		compatible = "ti,am654-hbmc";
371590Srgrimes		reg = <0x0 0x47034000 0x0 0x100>,
381590Srgrimes			<0x5 0x00000000 0x1 0x0000000>;
39149388Sbrian		power-domains = <&k3_pds 55>;
4092920Simp		#address-cells = <2>;
4192920Simp		#size-cells = <1>;
4292920Simp		ranges = <0x0 0x0 0x5 0x00000000 0x4000000>, /* CS0 - 64MB */
4392920Simp			 <0x1 0x0 0x5 0x04000000 0x4000000>; /* CS1 - 64MB */
441590Srgrimes		mux-controls = <&hbmc_mux 0>;
45227156Sed
46		/* Slave flash node */
47		flash@0,0 {
48			compatible = "cypress,hyperflash", "cfi-flash";
49			reg = <0x0 0x0 0x4000000>;
50		};
51	};
52