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