xref: /linux/arch/arm64/boot/dts/freescale/tqmls10xxa-mbls10xxa.dtsi (revision e7e86d7697c6ed1dbbde18d7185c35b6967945ed)
1// SPDX-License-Identifier: (GPL-2.0-or-later OR MIT)
2/*
3 * Copyright (c) 2018-2023 TQ-Systems GmbH <linux@ew.tq-group.com>,
4 * D-82229 Seefeld, Germany.
5 * Author: Gregor Herburger, Timo Herbrecher
6 *
7 * Device Tree Include file for MBLS10xxA from TQ
8 */
9
10#include <dt-bindings/input/input.h>
11#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/leds/common.h>
13
14/ {
15	gpio-keys-polled {
16		compatible = "gpio-keys-polled";
17		poll-interval = <100>;
18		autorepeat;
19
20		button-0 {
21			label = "button0";
22			gpios = <&gpioexp3 5 GPIO_ACTIVE_LOW>;
23			linux,code = <KEY_F1>;
24		};
25
26		button-1 {
27			label = "button1";
28			gpios = <&gpioexp3 6 GPIO_ACTIVE_LOW>;
29			linux,code = <KEY_F2>;
30		};
31	};
32
33	leds {
34		compatible = "gpio-leds";
35
36		led-user {
37			gpios = <&gpioexp3 13 GPIO_ACTIVE_LOW>;
38			color = <LED_COLOR_ID_GREEN>;
39			function = LED_FUNCTION_HEARTBEAT;
40			linux,default-trigger = "heartbeat";
41		};
42	};
43
44	reg_3v3: regulator-3v3 {
45		compatible = "regulator-fixed";
46		regulator-name = "V_3V3_MB";
47		regulator-min-microvolt = <3300000>;
48		regulator-max-microvolt = <3300000>;
49	};
50
51	sfp1: sfp1 {
52		compatible = "sff,sfp";
53		i2c-bus = <&sfp1_i2c>;
54		mod-def0-gpios = <&gpioexp2 2 GPIO_ACTIVE_LOW>;
55		los-gpios = <&gpioexp2 3 GPIO_ACTIVE_HIGH>;
56		tx-fault-gpios = <&gpioexp2 0 GPIO_ACTIVE_HIGH>;
57		tx-disable-gpios = <&gpioexp2 1 GPIO_ACTIVE_HIGH>;
58		status = "disabled";
59	};
60
61	sfp2: sfp2 {
62		compatible = "sff,sfp";
63		i2c-bus = <&sfp2_i2c>;
64		mod-def0-gpios = <&gpioexp2 10 GPIO_ACTIVE_LOW>;
65		los-gpios = <&gpioexp2 11 GPIO_ACTIVE_HIGH>;
66		tx-fault-gpios = <&gpioexp2 8 GPIO_ACTIVE_HIGH>;
67		tx-disable-gpios = <&gpioexp2 9 GPIO_ACTIVE_HIGH>;
68		status = "disabled";
69	};
70};
71
72&duart0 {
73	status = "okay";
74};
75
76&duart1 {
77	status = "okay";
78};
79
80&esdhc {
81	status = "okay";
82};
83
84&i2c3 {
85	status = "okay";
86
87	i2c-mux@70 {
88		compatible = "nxp,pca9544";
89		reg = <0x70>;
90		#address-cells = <1>;
91		#size-cells = <0>;
92		vdd-supply = <&reg_3v3>;
93
94		i2c@0 {
95			reg = <0x0>;
96			#address-cells = <1>;
97			#size-cells = <0>;
98
99			gpioexp1: gpio@20 {
100				compatible = "nxp,pca9555";
101				reg = <0x20>;
102				vcc-supply = <&reg_3v3>;
103				gpio-controller;
104				#gpio-cells = <2>;
105			};
106
107			gpioexp2: gpio@21 {
108				compatible = "nxp,pca9555";
109				reg = <0x21>;
110				vcc-supply = <&reg_3v3>;
111				gpio-controller;
112				#gpio-cells = <2>;
113			};
114
115			gpioexp3: gpio@22 {
116				compatible = "nxp,pca9555";
117				reg = <0x22>;
118				vcc-supply = <&reg_3v3>;
119				gpio-controller;
120				#gpio-cells = <2>;
121			};
122		};
123
124		sfp1_i2c: i2c@1 {
125			reg = <0x1>;
126			#address-cells = <1>;
127			#size-cells = <0>;
128			status = "disabled";
129		};
130
131		sfp2_i2c: i2c@2 {
132			reg = <0x2>;
133			#address-cells = <1>;
134			#size-cells = <0>;
135			status = "disabled";
136		};
137
138		i2c@3 {
139			reg = <0x3>;
140			#address-cells = <1>;
141			#size-cells = <0>;
142		};
143	};
144};
145
146&sata {
147	status = "okay";
148};
149
150&usb0 {
151	status = "okay";
152};
153
154&usb1 {
155	dr_mode = "otg";
156	status = "okay";
157};
158