1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright (C) 2014 STMicroelectronics (R&D) Limited. 4*f126890aSEmmanuel Vadot * Author: Giuseppe Cavallaro <peppe.cavallaro@st.com> 5*f126890aSEmmanuel Vadot */ 6*f126890aSEmmanuel Vadot#include <dt-bindings/clock/stih407-clks.h> 7*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 8*f126890aSEmmanuel Vadot#include <dt-bindings/media/c8sectpfe.h> 9*f126890aSEmmanuel Vadot/ { 10*f126890aSEmmanuel Vadot leds { 11*f126890aSEmmanuel Vadot compatible = "gpio-leds"; 12*f126890aSEmmanuel Vadot led-red { 13*f126890aSEmmanuel Vadot label = "Front Panel LED"; 14*f126890aSEmmanuel Vadot gpios = <&pio4 1 GPIO_ACTIVE_HIGH>; 15*f126890aSEmmanuel Vadot linux,default-trigger = "heartbeat"; 16*f126890aSEmmanuel Vadot }; 17*f126890aSEmmanuel Vadot led-green { 18*f126890aSEmmanuel Vadot gpios = <&pio1 3 GPIO_ACTIVE_HIGH>; 19*f126890aSEmmanuel Vadot default-state = "off"; 20*f126890aSEmmanuel Vadot }; 21*f126890aSEmmanuel Vadot }; 22*f126890aSEmmanuel Vadot 23*f126890aSEmmanuel Vadot sound: sound { 24*f126890aSEmmanuel Vadot compatible = "simple-audio-card"; 25*f126890aSEmmanuel Vadot simple-audio-card,name = "STI-B2120"; 26*f126890aSEmmanuel Vadot status = "okay"; 27*f126890aSEmmanuel Vadot #address-cells = <1>; 28*f126890aSEmmanuel Vadot #size-cells = <0>; 29*f126890aSEmmanuel Vadot 30*f126890aSEmmanuel Vadot simple-audio-card,dai-link@0 { 31*f126890aSEmmanuel Vadot reg = <0>; 32*f126890aSEmmanuel Vadot /* HDMI */ 33*f126890aSEmmanuel Vadot format = "i2s"; 34*f126890aSEmmanuel Vadot mclk-fs = <128>; 35*f126890aSEmmanuel Vadot cpu { 36*f126890aSEmmanuel Vadot sound-dai = <&sti_uni_player0>; 37*f126890aSEmmanuel Vadot }; 38*f126890aSEmmanuel Vadot 39*f126890aSEmmanuel Vadot codec { 40*f126890aSEmmanuel Vadot sound-dai = <&sti_hdmi>; 41*f126890aSEmmanuel Vadot }; 42*f126890aSEmmanuel Vadot }; 43*f126890aSEmmanuel Vadot 44*f126890aSEmmanuel Vadot simple-audio-card,dai-link@1 { 45*f126890aSEmmanuel Vadot reg = <1>; 46*f126890aSEmmanuel Vadot /* DAC */ 47*f126890aSEmmanuel Vadot format = "i2s"; 48*f126890aSEmmanuel Vadot mclk-fs = <256>; 49*f126890aSEmmanuel Vadot frame-inversion; 50*f126890aSEmmanuel Vadot cpu { 51*f126890aSEmmanuel Vadot sound-dai = <&sti_uni_player2>; 52*f126890aSEmmanuel Vadot }; 53*f126890aSEmmanuel Vadot 54*f126890aSEmmanuel Vadot codec { 55*f126890aSEmmanuel Vadot sound-dai = <&sti_sasg_codec 1>; 56*f126890aSEmmanuel Vadot }; 57*f126890aSEmmanuel Vadot }; 58*f126890aSEmmanuel Vadot 59*f126890aSEmmanuel Vadot simple-audio-card,dai-link@2 { 60*f126890aSEmmanuel Vadot reg = <2>; 61*f126890aSEmmanuel Vadot /* SPDIF */ 62*f126890aSEmmanuel Vadot format = "left_j"; 63*f126890aSEmmanuel Vadot mclk-fs = <128>; 64*f126890aSEmmanuel Vadot cpu { 65*f126890aSEmmanuel Vadot sound-dai = <&sti_uni_player3>; 66*f126890aSEmmanuel Vadot }; 67*f126890aSEmmanuel Vadot 68*f126890aSEmmanuel Vadot codec { 69*f126890aSEmmanuel Vadot sound-dai = <&sti_sasg_codec 0>; 70*f126890aSEmmanuel Vadot }; 71*f126890aSEmmanuel Vadot }; 72*f126890aSEmmanuel Vadot }; 73*f126890aSEmmanuel Vadot 74*f126890aSEmmanuel Vadot miphy28lp_phy: miphy28lp { 75*f126890aSEmmanuel Vadot 76*f126890aSEmmanuel Vadot phy_port0: port@9b22000 { 77*f126890aSEmmanuel Vadot st,osc-rdy; 78*f126890aSEmmanuel Vadot }; 79*f126890aSEmmanuel Vadot 80*f126890aSEmmanuel Vadot phy_port1: port@9b2a000 { 81*f126890aSEmmanuel Vadot st,osc-force-ext; 82*f126890aSEmmanuel Vadot }; 83*f126890aSEmmanuel Vadot }; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot soc { 86*f126890aSEmmanuel Vadot sbc_serial0: serial@9530000 { 87*f126890aSEmmanuel Vadot status = "okay"; 88*f126890aSEmmanuel Vadot }; 89*f126890aSEmmanuel Vadot 90*f126890aSEmmanuel Vadot pwm0: pwm@9810000 { 91*f126890aSEmmanuel Vadot status = "okay"; 92*f126890aSEmmanuel Vadot }; 93*f126890aSEmmanuel Vadot 94*f126890aSEmmanuel Vadot pwm1: pwm@9510000 { 95*f126890aSEmmanuel Vadot status = "okay"; 96*f126890aSEmmanuel Vadot }; 97*f126890aSEmmanuel Vadot 98*f126890aSEmmanuel Vadot ssc2: i2c@9842000 { 99*f126890aSEmmanuel Vadot status = "okay"; 100*f126890aSEmmanuel Vadot clock-frequency = <100000>; 101*f126890aSEmmanuel Vadot st,i2c-min-scl-pulse-width-us = <0>; 102*f126890aSEmmanuel Vadot st,i2c-min-sda-pulse-width-us = <5>; 103*f126890aSEmmanuel Vadot }; 104*f126890aSEmmanuel Vadot 105*f126890aSEmmanuel Vadot ssc3: i2c@9843000 { 106*f126890aSEmmanuel Vadot status = "okay"; 107*f126890aSEmmanuel Vadot clock-frequency = <100000>; 108*f126890aSEmmanuel Vadot st,i2c-min-scl-pulse-width-us = <0>; 109*f126890aSEmmanuel Vadot st,i2c-min-sda-pulse-width-us = <5>; 110*f126890aSEmmanuel Vadot }; 111*f126890aSEmmanuel Vadot 112*f126890aSEmmanuel Vadot i2c@9844000 { 113*f126890aSEmmanuel Vadot status = "okay"; 114*f126890aSEmmanuel Vadot }; 115*f126890aSEmmanuel Vadot 116*f126890aSEmmanuel Vadot i2c@9845000 { 117*f126890aSEmmanuel Vadot status = "okay"; 118*f126890aSEmmanuel Vadot }; 119*f126890aSEmmanuel Vadot 120*f126890aSEmmanuel Vadot i2c@9540000 { 121*f126890aSEmmanuel Vadot status = "okay"; 122*f126890aSEmmanuel Vadot }; 123*f126890aSEmmanuel Vadot 124*f126890aSEmmanuel Vadot mmc0: sdhci@9060000 { 125*f126890aSEmmanuel Vadot non-removable; 126*f126890aSEmmanuel Vadot status = "okay"; 127*f126890aSEmmanuel Vadot }; 128*f126890aSEmmanuel Vadot 129*f126890aSEmmanuel Vadot mmc1: sdhci@9080000 { 130*f126890aSEmmanuel Vadot status = "okay"; 131*f126890aSEmmanuel Vadot }; 132*f126890aSEmmanuel Vadot 133*f126890aSEmmanuel Vadot /* SSC11 to HDMI */ 134*f126890aSEmmanuel Vadot hdmiddc: i2c@9541000 { 135*f126890aSEmmanuel Vadot status = "okay"; 136*f126890aSEmmanuel Vadot /* HDMI V1.3a supports Standard mode only */ 137*f126890aSEmmanuel Vadot clock-frequency = <100000>; 138*f126890aSEmmanuel Vadot st,i2c-min-scl-pulse-width-us = <0>; 139*f126890aSEmmanuel Vadot st,i2c-min-sda-pulse-width-us = <5>; 140*f126890aSEmmanuel Vadot }; 141*f126890aSEmmanuel Vadot 142*f126890aSEmmanuel Vadot st_dwc3: dwc3@8f94000 { 143*f126890aSEmmanuel Vadot status = "okay"; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot 146*f126890aSEmmanuel Vadot ethernet0: dwmac@9630000 { 147*f126890aSEmmanuel Vadot st,tx-retime-src = "clkgen"; 148*f126890aSEmmanuel Vadot status = "okay"; 149*f126890aSEmmanuel Vadot phy-mode = "rgmii"; 150*f126890aSEmmanuel Vadot fixed-link = <0 1 1000 0 0>; 151*f126890aSEmmanuel Vadot }; 152*f126890aSEmmanuel Vadot 153*f126890aSEmmanuel Vadot demux@8a20000 { 154*f126890aSEmmanuel Vadot compatible = "st,stih407-c8sectpfe"; 155*f126890aSEmmanuel Vadot status = "okay"; 156*f126890aSEmmanuel Vadot reg = <0x08a20000 0x10000>, 157*f126890aSEmmanuel Vadot <0x08a00000 0x4000>; 158*f126890aSEmmanuel Vadot reg-names = "c8sectpfe", "c8sectpfe-ram"; 159*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 160*f126890aSEmmanuel Vadot <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 161*f126890aSEmmanuel Vadot interrupt-names = "c8sectpfe-error-irq", 162*f126890aSEmmanuel Vadot "c8sectpfe-idle-irq"; 163*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_tsin0_serial>; 164*f126890aSEmmanuel Vadot pinctrl-1 = <&pinctrl_tsin0_parallel>; 165*f126890aSEmmanuel Vadot pinctrl-2 = <&pinctrl_tsin3_serial>; 166*f126890aSEmmanuel Vadot pinctrl-3 = <&pinctrl_tsin4_serial_alt3>; 167*f126890aSEmmanuel Vadot pinctrl-4 = <&pinctrl_tsin5_serial_alt1>; 168*f126890aSEmmanuel Vadot pinctrl-names = "tsin0-serial", 169*f126890aSEmmanuel Vadot "tsin0-parallel", 170*f126890aSEmmanuel Vadot "tsin3-serial", 171*f126890aSEmmanuel Vadot "tsin4-serial", 172*f126890aSEmmanuel Vadot "tsin5-serial"; 173*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_PROC_STFE>; 174*f126890aSEmmanuel Vadot clock-names = "c8sectpfe"; 175*f126890aSEmmanuel Vadot 176*f126890aSEmmanuel Vadot /* tsin0 is TSA on NIMA */ 177*f126890aSEmmanuel Vadot tsin0: port { 178*f126890aSEmmanuel Vadot tsin-num = <0>; 179*f126890aSEmmanuel Vadot serial-not-parallel; 180*f126890aSEmmanuel Vadot i2c-bus = <&ssc2>; 181*f126890aSEmmanuel Vadot reset-gpios = <&pio15 4 GPIO_ACTIVE_LOW>; 182*f126890aSEmmanuel Vadot dvb-card = <STV0367_TDA18212_NIMA_1>; 183*f126890aSEmmanuel Vadot }; 184*f126890aSEmmanuel Vadot }; 185*f126890aSEmmanuel Vadot 186*f126890aSEmmanuel Vadot sti_uni_player0: sti-uni-player@8d80000 { 187*f126890aSEmmanuel Vadot status = "okay"; 188*f126890aSEmmanuel Vadot }; 189*f126890aSEmmanuel Vadot 190*f126890aSEmmanuel Vadot sti_uni_player2: sti-uni-player@8d82000 { 191*f126890aSEmmanuel Vadot status = "okay"; 192*f126890aSEmmanuel Vadot }; 193*f126890aSEmmanuel Vadot 194*f126890aSEmmanuel Vadot sti_uni_player3: sti-uni-player@8d85000 { 195*f126890aSEmmanuel Vadot status = "okay"; 196*f126890aSEmmanuel Vadot }; 197*f126890aSEmmanuel Vadot 198*f126890aSEmmanuel Vadot syscfg_core: core-syscfg@92b0000 { 199*f126890aSEmmanuel Vadot sti_sasg_codec: sti-sasg-codec { 200*f126890aSEmmanuel Vadot status = "okay"; 201*f126890aSEmmanuel Vadot pinctrl-names = "default"; 202*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_spdif_out>; 203*f126890aSEmmanuel Vadot }; 204*f126890aSEmmanuel Vadot }; 205*f126890aSEmmanuel Vadot }; 206*f126890aSEmmanuel Vadot}; 207