1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Copyright (C) 2014 STMicroelectronics Limited. 4*f126890aSEmmanuel Vadot * Author: Peter Griffin <peter.griffin@linaro.org> 5*f126890aSEmmanuel Vadot */ 6*f126890aSEmmanuel Vadot#include "stih410-clock.dtsi" 7*f126890aSEmmanuel Vadot#include "stih407-family.dtsi" 8*f126890aSEmmanuel Vadot#include "stih410-pinctrl.dtsi" 9*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 10*f126890aSEmmanuel Vadot/ { 11*f126890aSEmmanuel Vadot aliases { 12*f126890aSEmmanuel Vadot bdisp0 = &bdisp0; 13*f126890aSEmmanuel Vadot }; 14*f126890aSEmmanuel Vadot 15*f126890aSEmmanuel Vadot usb2_picophy1: phy2 { 16*f126890aSEmmanuel Vadot compatible = "st,stih407-usb2-phy"; 17*f126890aSEmmanuel Vadot #phy-cells = <0>; 18*f126890aSEmmanuel Vadot st,syscfg = <&syscfg_core 0xf8 0xf4>; 19*f126890aSEmmanuel Vadot resets = <&softreset STIH407_PICOPHY_SOFTRESET>, 20*f126890aSEmmanuel Vadot <&picophyreset STIH407_PICOPHY0_RESET>; 21*f126890aSEmmanuel Vadot reset-names = "global", "port"; 22*f126890aSEmmanuel Vadot 23*f126890aSEmmanuel Vadot status = "disabled"; 24*f126890aSEmmanuel Vadot }; 25*f126890aSEmmanuel Vadot 26*f126890aSEmmanuel Vadot usb2_picophy2: phy3 { 27*f126890aSEmmanuel Vadot compatible = "st,stih407-usb2-phy"; 28*f126890aSEmmanuel Vadot #phy-cells = <0>; 29*f126890aSEmmanuel Vadot st,syscfg = <&syscfg_core 0xfc 0xf4>; 30*f126890aSEmmanuel Vadot resets = <&softreset STIH407_PICOPHY_SOFTRESET>, 31*f126890aSEmmanuel Vadot <&picophyreset STIH407_PICOPHY1_RESET>; 32*f126890aSEmmanuel Vadot reset-names = "global", "port"; 33*f126890aSEmmanuel Vadot 34*f126890aSEmmanuel Vadot status = "disabled"; 35*f126890aSEmmanuel Vadot }; 36*f126890aSEmmanuel Vadot 37*f126890aSEmmanuel Vadot soc { 38*f126890aSEmmanuel Vadot ohci0: usb@9a03c00 { 39*f126890aSEmmanuel Vadot compatible = "st,st-ohci-300x"; 40*f126890aSEmmanuel Vadot reg = <0x9a03c00 0x100>; 41*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>; 42*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_TX_ICN_DISP_0>, 43*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_RX_ICN_DISP_0>; 44*f126890aSEmmanuel Vadot resets = <&powerdown STIH407_USB2_PORT0_POWERDOWN>, 45*f126890aSEmmanuel Vadot <&softreset STIH407_USB2_PORT0_SOFTRESET>; 46*f126890aSEmmanuel Vadot reset-names = "power", "softreset"; 47*f126890aSEmmanuel Vadot phys = <&usb2_picophy1>; 48*f126890aSEmmanuel Vadot phy-names = "usb"; 49*f126890aSEmmanuel Vadot 50*f126890aSEmmanuel Vadot status = "disabled"; 51*f126890aSEmmanuel Vadot }; 52*f126890aSEmmanuel Vadot 53*f126890aSEmmanuel Vadot ehci0: usb@9a03e00 { 54*f126890aSEmmanuel Vadot compatible = "st,st-ehci-300x"; 55*f126890aSEmmanuel Vadot reg = <0x9a03e00 0x100>; 56*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>; 57*f126890aSEmmanuel Vadot pinctrl-names = "default"; 58*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usb0>; 59*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_TX_ICN_DISP_0>, 60*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_RX_ICN_DISP_0>; 61*f126890aSEmmanuel Vadot resets = <&powerdown STIH407_USB2_PORT0_POWERDOWN>, 62*f126890aSEmmanuel Vadot <&softreset STIH407_USB2_PORT0_SOFTRESET>; 63*f126890aSEmmanuel Vadot reset-names = "power", "softreset"; 64*f126890aSEmmanuel Vadot phys = <&usb2_picophy1>; 65*f126890aSEmmanuel Vadot phy-names = "usb"; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot status = "disabled"; 68*f126890aSEmmanuel Vadot }; 69*f126890aSEmmanuel Vadot 70*f126890aSEmmanuel Vadot ohci1: usb@9a83c00 { 71*f126890aSEmmanuel Vadot compatible = "st,st-ohci-300x"; 72*f126890aSEmmanuel Vadot reg = <0x9a83c00 0x100>; 73*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>; 74*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_TX_ICN_DISP_0>, 75*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_RX_ICN_DISP_0>; 76*f126890aSEmmanuel Vadot resets = <&powerdown STIH407_USB2_PORT1_POWERDOWN>, 77*f126890aSEmmanuel Vadot <&softreset STIH407_USB2_PORT1_SOFTRESET>; 78*f126890aSEmmanuel Vadot reset-names = "power", "softreset"; 79*f126890aSEmmanuel Vadot phys = <&usb2_picophy2>; 80*f126890aSEmmanuel Vadot phy-names = "usb"; 81*f126890aSEmmanuel Vadot 82*f126890aSEmmanuel Vadot status = "disabled"; 83*f126890aSEmmanuel Vadot }; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot ehci1: usb@9a83e00 { 86*f126890aSEmmanuel Vadot compatible = "st,st-ehci-300x"; 87*f126890aSEmmanuel Vadot reg = <0x9a83e00 0x100>; 88*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>; 89*f126890aSEmmanuel Vadot pinctrl-names = "default"; 90*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_usb1>; 91*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_TX_ICN_DISP_0>, 92*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_RX_ICN_DISP_0>; 93*f126890aSEmmanuel Vadot resets = <&powerdown STIH407_USB2_PORT1_POWERDOWN>, 94*f126890aSEmmanuel Vadot <&softreset STIH407_USB2_PORT1_SOFTRESET>; 95*f126890aSEmmanuel Vadot reset-names = "power", "softreset"; 96*f126890aSEmmanuel Vadot phys = <&usb2_picophy2>; 97*f126890aSEmmanuel Vadot phy-names = "usb"; 98*f126890aSEmmanuel Vadot 99*f126890aSEmmanuel Vadot status = "disabled"; 100*f126890aSEmmanuel Vadot }; 101*f126890aSEmmanuel Vadot 102*f126890aSEmmanuel Vadot sti-display-subsystem@0 { 103*f126890aSEmmanuel Vadot compatible = "st,sti-display-subsystem"; 104*f126890aSEmmanuel Vadot #address-cells = <1>; 105*f126890aSEmmanuel Vadot #size-cells = <1>; 106*f126890aSEmmanuel Vadot 107*f126890aSEmmanuel Vadot reg = <0 0>; 108*f126890aSEmmanuel Vadot assigned-clocks = <&clk_s_d2_quadfs 0>, 109*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 1>, 110*f126890aSEmmanuel Vadot <&clk_s_c0_pll1 0>, 111*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_COMPO_DVP>, 112*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_MAIN_DISP>, 113*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_MAIN_DISP>, 114*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_AUX_DISP>, 115*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP1>, 116*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP2>, 117*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP3>, 118*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP4>; 119*f126890aSEmmanuel Vadot 120*f126890aSEmmanuel Vadot assigned-clock-parents = <0>, 121*f126890aSEmmanuel Vadot <0>, 122*f126890aSEmmanuel Vadot <0>, 123*f126890aSEmmanuel Vadot <&clk_s_c0_pll1 0>, 124*f126890aSEmmanuel Vadot <&clk_s_c0_pll1 0>, 125*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 126*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 1>, 127*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 128*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 129*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 130*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>; 131*f126890aSEmmanuel Vadot 132*f126890aSEmmanuel Vadot assigned-clock-rates = <297000000>, 133*f126890aSEmmanuel Vadot <297000000>, 134*f126890aSEmmanuel Vadot <0>, 135*f126890aSEmmanuel Vadot <400000000>, 136*f126890aSEmmanuel Vadot <400000000>; 137*f126890aSEmmanuel Vadot 138*f126890aSEmmanuel Vadot ranges; 139*f126890aSEmmanuel Vadot 140*f126890aSEmmanuel Vadot sti-compositor@9d11000 { 141*f126890aSEmmanuel Vadot compatible = "st,stih407-compositor"; 142*f126890aSEmmanuel Vadot reg = <0x9d11000 0x1000>; 143*f126890aSEmmanuel Vadot 144*f126890aSEmmanuel Vadot clock-names = "compo_main", 145*f126890aSEmmanuel Vadot "compo_aux", 146*f126890aSEmmanuel Vadot "pix_main", 147*f126890aSEmmanuel Vadot "pix_aux", 148*f126890aSEmmanuel Vadot "pix_gdp1", 149*f126890aSEmmanuel Vadot "pix_gdp2", 150*f126890aSEmmanuel Vadot "pix_gdp3", 151*f126890aSEmmanuel Vadot "pix_gdp4", 152*f126890aSEmmanuel Vadot "main_parent", 153*f126890aSEmmanuel Vadot "aux_parent"; 154*f126890aSEmmanuel Vadot 155*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_COMPO_DVP>, 156*f126890aSEmmanuel Vadot <&clk_s_c0_flexgen CLK_COMPO_DVP>, 157*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_MAIN_DISP>, 158*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_AUX_DISP>, 159*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP1>, 160*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP2>, 161*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP3>, 162*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_GDP4>, 163*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 164*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 1>; 165*f126890aSEmmanuel Vadot 166*f126890aSEmmanuel Vadot reset-names = "compo-main", "compo-aux"; 167*f126890aSEmmanuel Vadot resets = <&softreset STIH407_COMPO_SOFTRESET>, 168*f126890aSEmmanuel Vadot <&softreset STIH407_COMPO_SOFTRESET>; 169*f126890aSEmmanuel Vadot st,vtg = <&vtg_main>, <&vtg_aux>; 170*f126890aSEmmanuel Vadot }; 171*f126890aSEmmanuel Vadot 172*f126890aSEmmanuel Vadot sti-tvout@8d08000 { 173*f126890aSEmmanuel Vadot compatible = "st,stih407-tvout"; 174*f126890aSEmmanuel Vadot reg = <0x8d08000 0x1000>; 175*f126890aSEmmanuel Vadot reg-names = "tvout-reg"; 176*f126890aSEmmanuel Vadot reset-names = "tvout"; 177*f126890aSEmmanuel Vadot resets = <&softreset STIH407_HDTVOUT_SOFTRESET>; 178*f126890aSEmmanuel Vadot #address-cells = <1>; 179*f126890aSEmmanuel Vadot #size-cells = <1>; 180*f126890aSEmmanuel Vadot assigned-clocks = <&clk_s_d2_flexgen CLK_PIX_HDMI>, 181*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_TMDS_HDMI>, 182*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_REF_HDMIPHY>, 183*f126890aSEmmanuel Vadot <&clk_s_d0_flexgen CLK_PCM_0>, 184*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_HDDAC>, 185*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_HDDAC>; 186*f126890aSEmmanuel Vadot 187*f126890aSEmmanuel Vadot assigned-clock-parents = <&clk_s_d2_quadfs 0>, 188*f126890aSEmmanuel Vadot <&clk_tmdsout_hdmi>, 189*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 190*f126890aSEmmanuel Vadot <&clk_s_d0_quadfs 0>, 191*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 192*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>; 193*f126890aSEmmanuel Vadot }; 194*f126890aSEmmanuel Vadot 195*f126890aSEmmanuel Vadot sti_hdmi: sti-hdmi@8d04000 { 196*f126890aSEmmanuel Vadot compatible = "st,stih407-hdmi"; 197*f126890aSEmmanuel Vadot reg = <0x8d04000 0x1000>; 198*f126890aSEmmanuel Vadot reg-names = "hdmi-reg"; 199*f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 200*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 201*f126890aSEmmanuel Vadot interrupt-names = "irq"; 202*f126890aSEmmanuel Vadot clock-names = "pix", 203*f126890aSEmmanuel Vadot "tmds", 204*f126890aSEmmanuel Vadot "phy", 205*f126890aSEmmanuel Vadot "audio", 206*f126890aSEmmanuel Vadot "main_parent", 207*f126890aSEmmanuel Vadot "aux_parent"; 208*f126890aSEmmanuel Vadot 209*f126890aSEmmanuel Vadot clocks = <&clk_s_d2_flexgen CLK_PIX_HDMI>, 210*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_TMDS_HDMI>, 211*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_REF_HDMIPHY>, 212*f126890aSEmmanuel Vadot <&clk_s_d0_flexgen CLK_PCM_0>, 213*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 214*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 1>; 215*f126890aSEmmanuel Vadot 216*f126890aSEmmanuel Vadot hdmi,hpd-gpio = <&pio5 3 GPIO_ACTIVE_LOW>; 217*f126890aSEmmanuel Vadot reset-names = "hdmi"; 218*f126890aSEmmanuel Vadot resets = <&softreset STIH407_HDMI_TX_PHY_SOFTRESET>; 219*f126890aSEmmanuel Vadot ddc = <&hdmiddc>; 220*f126890aSEmmanuel Vadot }; 221*f126890aSEmmanuel Vadot 222*f126890aSEmmanuel Vadot sti-hda@8d02000 { 223*f126890aSEmmanuel Vadot compatible = "st,stih407-hda"; 224*f126890aSEmmanuel Vadot status = "disabled"; 225*f126890aSEmmanuel Vadot reg = <0x8d02000 0x400>, <0x92b0120 0x4>; 226*f126890aSEmmanuel Vadot reg-names = "hda-reg", "video-dacs-ctrl"; 227*f126890aSEmmanuel Vadot clock-names = "pix", 228*f126890aSEmmanuel Vadot "hddac", 229*f126890aSEmmanuel Vadot "main_parent", 230*f126890aSEmmanuel Vadot "aux_parent"; 231*f126890aSEmmanuel Vadot clocks = <&clk_s_d2_flexgen CLK_PIX_HDDAC>, 232*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_HDDAC>, 233*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 0>, 234*f126890aSEmmanuel Vadot <&clk_s_d2_quadfs 1>; 235*f126890aSEmmanuel Vadot }; 236*f126890aSEmmanuel Vadot 237*f126890aSEmmanuel Vadot sti-hqvdp@9c00000 { 238*f126890aSEmmanuel Vadot compatible = "st,stih407-hqvdp"; 239*f126890aSEmmanuel Vadot reg = <0x9C00000 0x100000>; 240*f126890aSEmmanuel Vadot clock-names = "hqvdp", "pix_main"; 241*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_MAIN_DISP>, 242*f126890aSEmmanuel Vadot <&clk_s_d2_flexgen CLK_PIX_MAIN_DISP>; 243*f126890aSEmmanuel Vadot reset-names = "hqvdp"; 244*f126890aSEmmanuel Vadot resets = <&softreset STIH407_HDQVDP_SOFTRESET>; 245*f126890aSEmmanuel Vadot st,vtg = <&vtg_main>; 246*f126890aSEmmanuel Vadot }; 247*f126890aSEmmanuel Vadot }; 248*f126890aSEmmanuel Vadot 249*f126890aSEmmanuel Vadot bdisp0:bdisp@9f10000 { 250*f126890aSEmmanuel Vadot compatible = "st,stih407-bdisp"; 251*f126890aSEmmanuel Vadot reg = <0x9f10000 0x1000>; 252*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>; 253*f126890aSEmmanuel Vadot clock-names = "bdisp"; 254*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_IC_BDISP_0>; 255*f126890aSEmmanuel Vadot }; 256*f126890aSEmmanuel Vadot 257*f126890aSEmmanuel Vadot hva@8c85000 { 258*f126890aSEmmanuel Vadot compatible = "st,st-hva"; 259*f126890aSEmmanuel Vadot reg = <0x8c85000 0x400>, <0x6000000 0x40000>; 260*f126890aSEmmanuel Vadot reg-names = "hva_registers", "hva_esram"; 261*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, 262*f126890aSEmmanuel Vadot <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>; 263*f126890aSEmmanuel Vadot clock-names = "clk_hva"; 264*f126890aSEmmanuel Vadot clocks = <&clk_s_c0_flexgen CLK_HVA>; 265*f126890aSEmmanuel Vadot }; 266*f126890aSEmmanuel Vadot 267*f126890aSEmmanuel Vadot thermal@91a0000 { 268*f126890aSEmmanuel Vadot compatible = "st,stih407-thermal"; 269*f126890aSEmmanuel Vadot reg = <0x91a0000 0x28>; 270*f126890aSEmmanuel Vadot clock-names = "thermal"; 271*f126890aSEmmanuel Vadot clocks = <&clk_sysin>; 272*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 205 IRQ_TYPE_EDGE_RISING>; 273*f126890aSEmmanuel Vadot }; 274*f126890aSEmmanuel Vadot 275*f126890aSEmmanuel Vadot cec@94a087c { 276*f126890aSEmmanuel Vadot compatible = "st,stih-cec"; 277*f126890aSEmmanuel Vadot reg = <0x94a087c 0x64>; 278*f126890aSEmmanuel Vadot clocks = <&clk_sysin>; 279*f126890aSEmmanuel Vadot clock-names = "cec-clk"; 280*f126890aSEmmanuel Vadot interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 281*f126890aSEmmanuel Vadot interrupt-names = "cec-irq"; 282*f126890aSEmmanuel Vadot pinctrl-names = "default"; 283*f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cec0_default>; 284*f126890aSEmmanuel Vadot resets = <&softreset STIH407_LPM_SOFTRESET>; 285*f126890aSEmmanuel Vadot hdmi-phandle = <&sti_hdmi>; 286*f126890aSEmmanuel Vadot }; 287*f126890aSEmmanuel Vadot }; 288*f126890aSEmmanuel Vadot}; 289