1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (C) 2014 STMicroelectronics (R&D) Limited. 4 * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> 5 */ 6#include <dt-bindings/clock/stih407-clks.h> 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/media/c8sectpfe.h> 9/ { 10 leds { 11 compatible = "gpio-leds"; 12 led-red { 13 label = "Front Panel LED"; 14 gpios = <&pio4 1 GPIO_ACTIVE_HIGH>; 15 linux,default-trigger = "heartbeat"; 16 }; 17 led-green { 18 gpios = <&pio1 3 GPIO_ACTIVE_HIGH>; 19 default-state = "off"; 20 }; 21 }; 22 23 sound: sound { 24 compatible = "simple-audio-card"; 25 simple-audio-card,name = "STI-B2120"; 26 status = "okay"; 27 #address-cells = <1>; 28 #size-cells = <0>; 29 30 simple-audio-card,dai-link@0 { 31 reg = <0>; 32 /* 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 44 simple-audio-card,dai-link@1 { 45 reg = <1>; 46 /* DAC */ 47 format = "i2s"; 48 mclk-fs = <256>; 49 frame-inversion; 50 cpu { 51 sound-dai = <&sti_uni_player2>; 52 }; 53 54 codec { 55 sound-dai = <&sti_sasg_codec 1>; 56 }; 57 }; 58 59 simple-audio-card,dai-link@2 { 60 reg = <2>; 61 /* 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 74 miphy28lp_phy: miphy28lp { 75 76 phy_port0: port@9b22000 { 77 st,osc-rdy; 78 }; 79 80 phy_port1: port@9b2a000 { 81 st,osc-force-ext; 82 }; 83 }; 84 85 soc { 86 sbc_serial0: serial@9530000 { 87 status = "okay"; 88 }; 89 90 pwm0: pwm@9810000 { 91 status = "okay"; 92 }; 93 94 pwm1: pwm@9510000 { 95 status = "okay"; 96 }; 97 98 ssc2: i2c@9842000 { 99 status = "okay"; 100 clock-frequency = <100000>; 101 st,i2c-min-scl-pulse-width-us = <0>; 102 st,i2c-min-sda-pulse-width-us = <5>; 103 }; 104 105 ssc3: i2c@9843000 { 106 status = "okay"; 107 clock-frequency = <100000>; 108 st,i2c-min-scl-pulse-width-us = <0>; 109 st,i2c-min-sda-pulse-width-us = <5>; 110 }; 111 112 i2c@9844000 { 113 status = "okay"; 114 }; 115 116 i2c@9845000 { 117 status = "okay"; 118 }; 119 120 i2c@9540000 { 121 status = "okay"; 122 }; 123 124 mmc0: sdhci@9060000 { 125 non-removable; 126 status = "okay"; 127 }; 128 129 mmc1: sdhci@9080000 { 130 status = "okay"; 131 }; 132 133 /* SSC11 to HDMI */ 134 hdmiddc: i2c@9541000 { 135 status = "okay"; 136 /* HDMI V1.3a supports Standard mode only */ 137 clock-frequency = <100000>; 138 st,i2c-min-scl-pulse-width-us = <0>; 139 st,i2c-min-sda-pulse-width-us = <5>; 140 }; 141 142 st_dwc3: dwc3@8f94000 { 143 status = "okay"; 144 }; 145 146 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 }; 152 153 demux@8a20000 { 154 compatible = "st,stih407-c8sectpfe"; 155 status = "okay"; 156 reg = <0x08a20000 0x10000>, 157 <0x08a00000 0x4000>; 158 reg-names = "c8sectpfe", "c8sectpfe-ram"; 159 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 160 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 161 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 */ 177 tsin0: port { 178 tsin-num = <0>; 179 serial-not-parallel; 180 i2c-bus = <&ssc2>; 181 reset-gpios = <&pio15 4 GPIO_ACTIVE_LOW>; 182 dvb-card = <STV0367_TDA18212_NIMA_1>; 183 }; 184 }; 185 186 sti_uni_player0: sti-uni-player@8d80000 { 187 status = "okay"; 188 }; 189 190 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 198 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>; 203 }; 204 }; 205 }; 206}; 207