blob: 60e11045ad762af74e47a70335abac94b162b403 [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001// SPDX-License-Identifier: GPL-2.0-only
Peter Griffin25774512014-11-17 17:48:00 +01002/*
3 * Copyright (C) 2014 STMicroelectronics (R&D) Limited.
4 * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Peter Griffin25774512014-11-17 17:48:00 +01005 */
Peter Griffind90394b2015-09-03 14:59:50 -03006#include <dt-bindings/clock/stih407-clks.h>
Peter Griffin0014eb72015-09-03 14:59:52 -03007#include <dt-bindings/gpio/gpio.h>
Peter Griffind90394b2015-09-03 14:59:50 -03008#include <dt-bindings/media/c8sectpfe.h>
Peter Griffin25774512014-11-17 17:48:00 +01009/ {
Patrice Chotard7aef6b32018-01-09 16:38:57 +010010 leds {
11 compatible = "gpio-leds";
12 red {
13 label = "Front Panel LED";
14 gpios = <&pio4 1 GPIO_ACTIVE_HIGH>;
15 linux,default-trigger = "heartbeat";
16 };
17 green {
18 gpios = <&pio1 3 GPIO_ACTIVE_HIGH>;
19 default-state = "off";
20 };
21 };
22
Patrice Chotard5d16b9e2018-02-13 12:53:43 +010023 sound: sound {
24 compatible = "simple-audio-card";
25 simple-audio-card,name = "STI-B2120";
26 status = "okay";
Christophe Priouzeaub5b4c8d2018-09-03 17:49:25 +020027 #address-cells = <1>;
28 #size-cells = <0>;
Patrice Chotard5d16b9e2018-02-13 12:53:43 +010029
Christophe Priouzeaub5b4c8d2018-09-03 17:49:25 +020030 simple-audio-card,dai-link@0 {
31 reg = <0>;
Patrice Chotard5d16b9e2018-02-13 12:53:43 +010032 /* HDMI */
33 format = "i2s";
34 mclk-fs = <128>;
35 cpu {
36 sound-dai = <&sti_uni_player0>;
37 };
38
39 codec {
40 sound-dai = <&sti_hdmi>;
41 };
42 };
43
Christophe Priouzeaub5b4c8d2018-09-03 17:49:25 +020044 simple-audio-card,dai-link@1 {
45 reg = <1>;
Patrice Chotard5d16b9e2018-02-13 12:53:43 +010046 /* DAC */
47 format = "i2s";
48 mclk-fs = <256>;
49 frame-inversion = <1>;
50 cpu {
51 sound-dai = <&sti_uni_player2>;
52 };
53
54 codec {
55 sound-dai = <&sti_sasg_codec 1>;
56 };
57 };
58
Christophe Priouzeaub5b4c8d2018-09-03 17:49:25 +020059 simple-audio-card,dai-link@2 {
60 reg = <2>;
Patrice Chotard5d16b9e2018-02-13 12:53:43 +010061 /* SPDIF */
62 format = "left_j";
63 mclk-fs = <128>;
64 cpu {
65 sound-dai = <&sti_uni_player3>;
66 };
67
68 codec {
69 sound-dai = <&sti_sasg_codec 0>;
70 };
71 };
72 };
73
Peter Griffin25774512014-11-17 17:48:00 +010074 soc {
75 sbc_serial0: serial@9530000 {
76 status = "okay";
77 };
78
Maxime Coquelin8aa5f092015-09-23 02:47:44 +020079 pwm0: pwm@9810000 {
80 status = "okay";
81 };
82
83 pwm1: pwm@9510000 {
84 status = "okay";
85 };
86
Peter Griffin6d5e5812015-09-03 14:59:49 -030087 ssc2: i2c@9842000 {
Peter Griffin25774512014-11-17 17:48:00 +010088 status = "okay";
Peter Griffin6d5e5812015-09-03 14:59:49 -030089 clock-frequency = <100000>;
90 st,i2c-min-scl-pulse-width-us = <0>;
91 st,i2c-min-sda-pulse-width-us = <5>;
Peter Griffin25774512014-11-17 17:48:00 +010092 };
93
Peter Griffin6d5e5812015-09-03 14:59:49 -030094 ssc3: i2c@9843000 {
Peter Griffin25774512014-11-17 17:48:00 +010095 status = "okay";
Peter Griffin6d5e5812015-09-03 14:59:49 -030096 clock-frequency = <100000>;
97 st,i2c-min-scl-pulse-width-us = <0>;
98 st,i2c-min-sda-pulse-width-us = <5>;
Peter Griffin25774512014-11-17 17:48:00 +010099 };
100
101 i2c@9844000 {
102 status = "okay";
103 };
104
105 i2c@9845000 {
106 status = "okay";
107 };
108
109 i2c@9540000 {
110 status = "okay";
111 };
112
Rob Herring8dccafa2017-10-13 12:54:51 -0500113 mmc0: sdhci@9060000 {
Patrice Chotard8f416dc2016-08-15 14:17:00 +0200114 non-removable;
Peter Griffin9286ac42015-04-10 11:40:00 +0200115 status = "okay";
116 };
117
Rob Herring8dccafa2017-10-13 12:54:51 -0500118 mmc1: sdhci@9080000 {
Peter Griffin9286ac42015-04-10 11:40:00 +0200119 status = "okay";
120 };
121
Peter Griffin25774512014-11-17 17:48:00 +0100122 /* SSC11 to HDMI */
Gabriel FERNANDEZa01a35e2015-01-14 16:47:00 +0100123 hdmiddc: i2c@9541000 {
Peter Griffin25774512014-11-17 17:48:00 +0100124 status = "okay";
125 /* HDMI V1.3a supports Standard mode only */
126 clock-frequency = <100000>;
127 st,i2c-min-scl-pulse-width-us = <0>;
128 st,i2c-min-sda-pulse-width-us = <5>;
129 };
Gabriel FERNANDEZb26373c2015-01-14 10:54:00 +0100130
Patrice Chotardb2d81762018-01-18 17:34:59 +0100131 miphy28lp_phy: miphy28lp@0 {
Gabriel FERNANDEZb26373c2015-01-14 10:54:00 +0100132
133 phy_port0: port@9b22000 {
134 st,osc-rdy;
135 };
136
137 phy_port1: port@9b2a000 {
138 st,osc-force-ext;
139 };
140 };
Peter Griffin571ac3b2015-04-30 15:30:00 +0200141
142 st_dwc3: dwc3@8f94000 {
143 status = "okay";
144 };
145
Maxime Coquelin60dfa242015-10-01 17:45:46 +0200146 ethernet0: dwmac@9630000 {
147 st,tx-retime-src = "clkgen";
148 status = "okay";
149 phy-mode = "rgmii";
150 fixed-link = <0 1 1000 0 0>;
151 };
Peter Griffind90394b2015-09-03 14:59:50 -0300152
Rob Herring8dccafa2017-10-13 12:54:51 -0500153 demux@8a20000 {
Peter Griffind90394b2015-09-03 14:59:50 -0300154 compatible = "st,stih407-c8sectpfe";
155 status = "okay";
156 reg = <0x08a20000 0x10000>,
157 <0x08a00000 0x4000>;
158 reg-names = "c8sectpfe", "c8sectpfe-ram";
Patrice Chotardc5bf2082018-04-20 17:42:14 +0200159 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
160 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
Peter Griffind90394b2015-09-03 14:59:50 -0300161 interrupt-names = "c8sectpfe-error-irq",
162 "c8sectpfe-idle-irq";
163 pinctrl-0 = <&pinctrl_tsin0_serial>;
164 pinctrl-1 = <&pinctrl_tsin0_parallel>;
165 pinctrl-2 = <&pinctrl_tsin3_serial>;
166 pinctrl-3 = <&pinctrl_tsin4_serial_alt3>;
167 pinctrl-4 = <&pinctrl_tsin5_serial_alt1>;
168 pinctrl-names = "tsin0-serial",
169 "tsin0-parallel",
170 "tsin3-serial",
171 "tsin4-serial",
172 "tsin5-serial";
173 clocks = <&clk_s_c0_flexgen CLK_PROC_STFE>;
174 clock-names = "c8sectpfe";
175
176 /* tsin0 is TSA on NIMA */
Patrice Chotardd6d854c2018-01-08 11:20:42 +0100177 tsin0: port {
Peter Griffind90394b2015-09-03 14:59:50 -0300178 tsin-num = <0>;
179 serial-not-parallel;
180 i2c-bus = <&ssc2>;
Peter Griffin0014eb72015-09-03 14:59:52 -0300181 reset-gpios = <&pio15 4 GPIO_ACTIVE_HIGH>;
Peter Griffind90394b2015-09-03 14:59:50 -0300182 dvb-card = <STV0367_TDA18212_NIMA_1>;
183 };
184 };
Peter Griffin443fd7c2016-09-05 15:16:00 +0200185
Arnaud Pouliquen800b1382016-10-04 18:11:00 +0200186 sti_uni_player0: sti-uni-player@8d80000 {
187 status = "okay";
188 };
189
Peter Griffin443fd7c2016-09-05 15:16:00 +0200190 sti_uni_player2: sti-uni-player@8d82000 {
191 status = "okay";
192 };
193
194 sti_uni_player3: sti-uni-player@8d85000 {
195 status = "okay";
196 };
197
Patrice Chotard5d16b9e2018-02-13 12:53:43 +0100198 syscfg_core: core-syscfg@92b0000 {
199 sti_sasg_codec: sti-sasg-codec {
200 status = "okay";
201 pinctrl-names = "default";
202 pinctrl-0 = <&pinctrl_spdif_out>;
Peter Griffin443fd7c2016-09-05 15:16:00 +0200203 };
204 };
Peter Griffin25774512014-11-17 17:48:00 +0100205 };
206};