xref: /linux/Documentation/devicetree/bindings/bus/ts-nbus.txt (revision 664b0bae0b87f69bc9deb098f5e0158b9cf18e04)
1*ec473a9cSSebastien BourdelinTechnologic Systems NBUS
2*ec473a9cSSebastien Bourdelin
3*ec473a9cSSebastien BourdelinThe NBUS is a bus used to interface with peripherals in the Technologic
4*ec473a9cSSebastien BourdelinSystems FPGA on the TS-4600 SoM.
5*ec473a9cSSebastien Bourdelin
6*ec473a9cSSebastien BourdelinRequired properties :
7*ec473a9cSSebastien Bourdelin - compatible		: "technologic,ts-nbus"
8*ec473a9cSSebastien Bourdelin - #address-cells	: must be 1
9*ec473a9cSSebastien Bourdelin - #size-cells		: must be 0
10*ec473a9cSSebastien Bourdelin - pwms			: The PWM bound to the FPGA
11*ec473a9cSSebastien Bourdelin - ts,data-gpios	: The 8 GPIO pins connected to the data lines on the FPGA
12*ec473a9cSSebastien Bourdelin - ts,csn-gpios		: The GPIO pin connected to the csn line on the FPGA
13*ec473a9cSSebastien Bourdelin - ts,txrx-gpios	: The GPIO pin connected to the txrx line on the FPGA
14*ec473a9cSSebastien Bourdelin - ts,strobe-gpios	: The GPIO pin connected to the stobe line on the FPGA
15*ec473a9cSSebastien Bourdelin - ts,ale-gpios		: The GPIO pin connected to the ale line on the FPGA
16*ec473a9cSSebastien Bourdelin - ts,rdy-gpios		: The GPIO pin connected to the rdy line on the FPGA
17*ec473a9cSSebastien Bourdelin
18*ec473a9cSSebastien BourdelinChild nodes:
19*ec473a9cSSebastien Bourdelin
20*ec473a9cSSebastien BourdelinThe NBUS node can contain zero or more child nodes representing peripherals
21*ec473a9cSSebastien Bourdelinon the bus.
22*ec473a9cSSebastien Bourdelin
23*ec473a9cSSebastien BourdelinExample:
24*ec473a9cSSebastien Bourdelin
25*ec473a9cSSebastien Bourdelin	nbus {
26*ec473a9cSSebastien Bourdelin		compatible = "technologic,ts-nbus";
27*ec473a9cSSebastien Bourdelin		pinctrl-0 = <&nbus_pins>;
28*ec473a9cSSebastien Bourdelin		#address-cells = <1>;
29*ec473a9cSSebastien Bourdelin		#size-cells = <0>;
30*ec473a9cSSebastien Bourdelin		pwms = <&pwm 2 83>;
31*ec473a9cSSebastien Bourdelin		ts,data-gpios   = <&gpio0 0 GPIO_ACTIVE_HIGH
32*ec473a9cSSebastien Bourdelin				   &gpio0 1 GPIO_ACTIVE_HIGH
33*ec473a9cSSebastien Bourdelin				   &gpio0 2 GPIO_ACTIVE_HIGH
34*ec473a9cSSebastien Bourdelin				   &gpio0 3 GPIO_ACTIVE_HIGH
35*ec473a9cSSebastien Bourdelin				   &gpio0 4 GPIO_ACTIVE_HIGH
36*ec473a9cSSebastien Bourdelin				   &gpio0 5 GPIO_ACTIVE_HIGH
37*ec473a9cSSebastien Bourdelin				   &gpio0 6 GPIO_ACTIVE_HIGH
38*ec473a9cSSebastien Bourdelin				   &gpio0 7 GPIO_ACTIVE_HIGH>;
39*ec473a9cSSebastien Bourdelin		ts,csn-gpios    = <&gpio0 16 GPIO_ACTIVE_HIGH>;
40*ec473a9cSSebastien Bourdelin		ts,txrx-gpios   = <&gpio0 24 GPIO_ACTIVE_HIGH>;
41*ec473a9cSSebastien Bourdelin		ts,strobe-gpios = <&gpio0 25 GPIO_ACTIVE_HIGH>;
42*ec473a9cSSebastien Bourdelin		ts,ale-gpios    = <&gpio0 26 GPIO_ACTIVE_HIGH>;
43*ec473a9cSSebastien Bourdelin		ts,rdy-gpios    = <&gpio0 21 GPIO_ACTIVE_HIGH>;
44*ec473a9cSSebastien Bourdelin
45*ec473a9cSSebastien Bourdelin		watchdog@2a {
46*ec473a9cSSebastien Bourdelin			compatible = "...";
47*ec473a9cSSebastien Bourdelin
48*ec473a9cSSebastien Bourdelin			/* ... */
49*ec473a9cSSebastien Bourdelin		};
50*ec473a9cSSebastien Bourdelin	};
51