brintos

brintos / linux-shallow public Read only

0
0
Text · 1.9 KiB · b0e5bf6 Raw
76 lines · plain
1Bindings for Analog Devices ADG792A/G Triple 4:1 Multiplexers2 3Required properties:4- compatible : "adi,adg792a" or "adi,adg792g"5- #mux-control-cells : <0> if parallel (the three muxes are bound together6  with a single mux controller controlling all three muxes), or <1> if7  not (one mux controller for each mux).8* Standard mux-controller bindings as described in mux-controller.yaml9 10Optional properties for ADG792G:11- gpio-controller : if present, #gpio-cells below is required.12- #gpio-cells : should be <2>13			  - First cell is the GPO line number, i.e. 0 or 114			  - Second cell is used to specify active high (0)15			    or active low (1)16 17Optional properties:18- idle-state : if present, array of states that the mux controllers will have19  when idle. The special state MUX_IDLE_AS_IS is the default and20  MUX_IDLE_DISCONNECT is also supported.21 22States 0 through 3 correspond to signals A through D in the datasheet.23 24Example:25 26	/*27	 * Three independent mux controllers (of which one is used).28	 * Mux 0 is disconnected when idle, mux 1 idles in the previously29	 * selected state and mux 2 idles with signal B.30	 */31	&i2c0 {32		mux: mux-controller@50 {33			compatible = "adi,adg792a";34			reg = <0x50>;35			#mux-control-cells = <1>;36 37			idle-state = <MUX_IDLE_DISCONNECT MUX_IDLE_AS_IS 1>;38		};39	};40 41	adc-mux {42		compatible = "io-channel-mux";43		io-channels = <&adc 0>;44		io-channel-names = "parent";45 46		mux-controls = <&mux 2>;47 48		channels = "sync-1", "", "out";49	};50 51 52	/*53	 * Three parallel muxes with one mux controller, useful e.g. if54	 * the adc is differential, thus needing two signals to be muxed55	 * simultaneously for correct operation.56	 */57	&i2c0 {58		pmux: mux-controller@50 {59			compatible = "adi,adg792a";60			reg = <0x50>;61			#mux-control-cells = <0>;62 63			idle-state = <1>;64		};65	};66 67	diff-adc-mux {68		compatible = "io-channel-mux";69		io-channels = <&adc 0>;70		io-channel-names = "parent";71 72		mux-controls = <&pmux>;73 74		channels = "sync-1", "", "out";75	};76