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 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 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 = <1>; 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 soc { 75 sbc_serial0: serial@9530000 { 76 status = "okay"; 77 }; 78 79 pwm0: pwm@9810000 { 80 status = "okay"; 81 }; 82 83 pwm1: pwm@9510000 { 84 status = "okay"; 85 }; 86 87 ssc2: i2c@9842000 { 88 status = "okay"; 89 clock-frequency = <100000>; 90 st,i2c-min-scl-pulse-width-us = <0>; 91 st,i2c-min-sda-pulse-width-us = <5>; 92 }; 93 94 ssc3: i2c@9843000 { 95 status = "okay"; 96 clock-frequency = <100000>; 97 st,i2c-min-scl-pulse-width-us = <0>; 98 st,i2c-min-sda-pulse-width-us = <5>; 99 }; 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 113 mmc0: sdhci@9060000 { 114 non-removable; 115 status = "okay"; 116 }; 117 118 mmc1: sdhci@9080000 { 119 status = "okay"; 120 }; 121 122 /* SSC11 to HDMI */ 123 hdmiddc: i2c@9541000 { 124 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 }; 130 131 miphy28lp_phy: miphy28lp@0 { 132 133 phy_port0: port@9b22000 { 134 st,osc-rdy; 135 }; 136 137 phy_port1: port@9b2a000 { 138 st,osc-force-ext; 139 }; 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_HIGH>; 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