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