xref: /freebsd/sys/contrib/device-tree/src/mips/mscc/serval_common.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
15def4c47SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
25def4c47SEmmanuel Vadot/*
35def4c47SEmmanuel Vadot * Copyright (c) 2020 Microsemi Corporation
45def4c47SEmmanuel Vadot */
55def4c47SEmmanuel Vadot
65def4c47SEmmanuel Vadot#include "serval.dtsi"
75def4c47SEmmanuel Vadot
85def4c47SEmmanuel Vadot/ {
95def4c47SEmmanuel Vadot	aliases {
105def4c47SEmmanuel Vadot		serial0 = &uart0;
115def4c47SEmmanuel Vadot		i2c104  = &i2c104;
125def4c47SEmmanuel Vadot		i2c105  = &i2c105;
135def4c47SEmmanuel Vadot		i2c106  = &i2c106;
145def4c47SEmmanuel Vadot		i2c107  = &i2c107;
155def4c47SEmmanuel Vadot		i2c108  = &i2c108;
165def4c47SEmmanuel Vadot		i2c109  = &i2c109;
175def4c47SEmmanuel Vadot	};
185def4c47SEmmanuel Vadot
195def4c47SEmmanuel Vadot	chosen {
205def4c47SEmmanuel Vadot		stdout-path = "serial0:115200n8";
215def4c47SEmmanuel Vadot	};
225def4c47SEmmanuel Vadot
235def4c47SEmmanuel Vadot	i2c0_imux: i2c0-imux {
245def4c47SEmmanuel Vadot		compatible = "i2c-mux-pinctrl";
255def4c47SEmmanuel Vadot		#address-cells = <1>;
265def4c47SEmmanuel Vadot		#size-cells = <0>;
275def4c47SEmmanuel Vadot		i2c-parent = <&i2c0>;
285def4c47SEmmanuel Vadot		pinctrl-names =
295def4c47SEmmanuel Vadot		"i2c104", "i2c105", "i2c106", "i2c107",
305def4c47SEmmanuel Vadot		"i2c108", "i2c109", "idle";
315def4c47SEmmanuel Vadot		pinctrl-0 = <&i2cmux_0>;
325def4c47SEmmanuel Vadot		pinctrl-1 = <&i2cmux_1>;
335def4c47SEmmanuel Vadot		pinctrl-2 = <&i2cmux_2>;
345def4c47SEmmanuel Vadot		pinctrl-3 = <&i2cmux_3>;
355def4c47SEmmanuel Vadot		pinctrl-4 = <&i2cmux_4>;
365def4c47SEmmanuel Vadot		pinctrl-5 = <&i2cmux_5>;
375def4c47SEmmanuel Vadot		pinctrl-6 = <&i2cmux_pins_i>;
385def4c47SEmmanuel Vadot		i2c104: i2c_sfp0@0 {
395def4c47SEmmanuel Vadot			reg = <0>;
405def4c47SEmmanuel Vadot			#address-cells = <1>;
415def4c47SEmmanuel Vadot			#size-cells = <0>;
425def4c47SEmmanuel Vadot		};
435def4c47SEmmanuel Vadot		i2c105: i2c_sfp1@1 {
445def4c47SEmmanuel Vadot			reg = <1>;
455def4c47SEmmanuel Vadot			#address-cells = <1>;
465def4c47SEmmanuel Vadot			#size-cells = <0>;
475def4c47SEmmanuel Vadot		};
485def4c47SEmmanuel Vadot		i2c106: i2c_sfp2@2 {
495def4c47SEmmanuel Vadot			reg = <2>;
505def4c47SEmmanuel Vadot			#address-cells = <1>;
515def4c47SEmmanuel Vadot			#size-cells = <0>;
525def4c47SEmmanuel Vadot		};
535def4c47SEmmanuel Vadot		i2c107: i2c_sfp3@3 {
545def4c47SEmmanuel Vadot			reg = <3>;
555def4c47SEmmanuel Vadot			#address-cells = <1>;
565def4c47SEmmanuel Vadot			#size-cells = <0>;
575def4c47SEmmanuel Vadot		};
585def4c47SEmmanuel Vadot		i2c108: i2c_sfp4@4 {
595def4c47SEmmanuel Vadot			reg = <4>;
605def4c47SEmmanuel Vadot			#address-cells = <1>;
615def4c47SEmmanuel Vadot			#size-cells = <0>;
625def4c47SEmmanuel Vadot		};
635def4c47SEmmanuel Vadot		i2c109: i2c_sfp5@5 {
645def4c47SEmmanuel Vadot			reg = <5>;
655def4c47SEmmanuel Vadot			#address-cells = <1>;
665def4c47SEmmanuel Vadot			#size-cells = <0>;
675def4c47SEmmanuel Vadot		};
685def4c47SEmmanuel Vadot};
695def4c47SEmmanuel Vadot
705def4c47SEmmanuel Vadot};
715def4c47SEmmanuel Vadot
725def4c47SEmmanuel Vadot&uart0 {
735def4c47SEmmanuel Vadot	status = "okay";
745def4c47SEmmanuel Vadot};
755def4c47SEmmanuel Vadot
765def4c47SEmmanuel Vadot&uart2 {
775def4c47SEmmanuel Vadot	status = "okay";
785def4c47SEmmanuel Vadot};
795def4c47SEmmanuel Vadot
805def4c47SEmmanuel Vadot&gpio {
815def4c47SEmmanuel Vadot	i2c_pins: i2c-pins {
825def4c47SEmmanuel Vadot		pins = "GPIO_7"; /* No "default" scl for i2c0 */
835def4c47SEmmanuel Vadot		function = "twi";
845def4c47SEmmanuel Vadot	};
85*d5b0e70fSEmmanuel Vadot	i2cmux_pins_i: i2cmux-pins {
865def4c47SEmmanuel Vadot		pins = "GPIO_11", "GPIO_12", "GPIO_18", "GPIO_19",
875def4c47SEmmanuel Vadot			"GPIO_20", "GPIO_21";
885def4c47SEmmanuel Vadot		function = "twi_scl_m";
895def4c47SEmmanuel Vadot		output-low;
905def4c47SEmmanuel Vadot	};
91*d5b0e70fSEmmanuel Vadot	i2cmux_0: i2cmux-0-pins {
925def4c47SEmmanuel Vadot		pins = "GPIO_11";
935def4c47SEmmanuel Vadot		function = "twi_scl_m";
945def4c47SEmmanuel Vadot		output-high;
955def4c47SEmmanuel Vadot	};
96*d5b0e70fSEmmanuel Vadot	i2cmux_1: i2cmux-1-pins {
975def4c47SEmmanuel Vadot		pins = "GPIO_12";
985def4c47SEmmanuel Vadot		function = "twi_scl_m";
995def4c47SEmmanuel Vadot		output-high;
1005def4c47SEmmanuel Vadot	};
101*d5b0e70fSEmmanuel Vadot	i2cmux_2: i2cmux-2-pins {
1025def4c47SEmmanuel Vadot		pins = "GPIO_18";
1035def4c47SEmmanuel Vadot		function = "twi_scl_m";
1045def4c47SEmmanuel Vadot		output-high;
1055def4c47SEmmanuel Vadot	};
106*d5b0e70fSEmmanuel Vadot	i2cmux_3: i2cmux-3-pins {
1075def4c47SEmmanuel Vadot		pins = "GPIO_19";
1085def4c47SEmmanuel Vadot		function = "twi_scl_m";
1095def4c47SEmmanuel Vadot		output-high;
1105def4c47SEmmanuel Vadot	};
111*d5b0e70fSEmmanuel Vadot	i2cmux_4: i2cmux-4-pins {
1125def4c47SEmmanuel Vadot		pins = "GPIO_20";
1135def4c47SEmmanuel Vadot		function = "twi_scl_m";
1145def4c47SEmmanuel Vadot		output-high;
1155def4c47SEmmanuel Vadot	};
116*d5b0e70fSEmmanuel Vadot	i2cmux_5: i2cmux-5-pins {
1175def4c47SEmmanuel Vadot		pins = "GPIO_21";
1185def4c47SEmmanuel Vadot		function = "twi_scl_m";
1195def4c47SEmmanuel Vadot		output-high;
1205def4c47SEmmanuel Vadot	};
1215def4c47SEmmanuel Vadot};
1225def4c47SEmmanuel Vadot
1235def4c47SEmmanuel Vadot&i2c0 {
1245def4c47SEmmanuel Vadot	status = "okay";
1255def4c47SEmmanuel Vadot	i2c-sda-hold-time-ns = <300>;
1265def4c47SEmmanuel Vadot};
1275def4c47SEmmanuel Vadot
128