105f7e3d1SMasahiro Yamada// SPDX-License-Identifier: GPL-2.0+ OR MIT 205f7e3d1SMasahiro Yamada// 305f7e3d1SMasahiro Yamada// Device Tree Source for UniPhier PXs3 SoC 405f7e3d1SMasahiro Yamada// 505f7e3d1SMasahiro Yamada// Copyright (C) 2017 Socionext Inc. 605f7e3d1SMasahiro Yamada// Author: Masahiro Yamada <yamada.masahiro@socionext.com> 7c28adcb5SMasahiro Yamada 8b6e5ec20SMasahiro Yamada#include <dt-bindings/gpio/gpio.h> 98311ca57SMasahiro Yamada#include <dt-bindings/gpio/uniphier-gpio.h> 105ba95e8eSKunihiko Hayashi#include <dt-bindings/interrupt-controller/arm-gic.h> 114b7d3743SKunihiko Hayashi#include <dt-bindings/thermal/thermal.h> 12b6e5ec20SMasahiro Yamada 13c28adcb5SMasahiro Yamada/ { 14c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3"; 15c28adcb5SMasahiro Yamada #address-cells = <2>; 16c28adcb5SMasahiro Yamada #size-cells = <2>; 17c28adcb5SMasahiro Yamada interrupt-parent = <&gic>; 18c28adcb5SMasahiro Yamada 19c28adcb5SMasahiro Yamada cpus { 20c28adcb5SMasahiro Yamada #address-cells = <2>; 21c28adcb5SMasahiro Yamada #size-cells = <0>; 22c28adcb5SMasahiro Yamada 23c28adcb5SMasahiro Yamada cpu-map { 24c28adcb5SMasahiro Yamada cluster0 { 25c28adcb5SMasahiro Yamada core0 { 26c28adcb5SMasahiro Yamada cpu = <&cpu0>; 27c28adcb5SMasahiro Yamada }; 28c28adcb5SMasahiro Yamada core1 { 29c28adcb5SMasahiro Yamada cpu = <&cpu1>; 30c28adcb5SMasahiro Yamada }; 31c28adcb5SMasahiro Yamada core2 { 32c28adcb5SMasahiro Yamada cpu = <&cpu2>; 33c28adcb5SMasahiro Yamada }; 34c28adcb5SMasahiro Yamada core3 { 35c28adcb5SMasahiro Yamada cpu = <&cpu3>; 36c28adcb5SMasahiro Yamada }; 37c28adcb5SMasahiro Yamada }; 38c28adcb5SMasahiro Yamada }; 39c28adcb5SMasahiro Yamada 40c28adcb5SMasahiro Yamada cpu0: cpu@0 { 41c28adcb5SMasahiro Yamada device_type = "cpu"; 4231af04cdSRob Herring compatible = "arm,cortex-a53"; 43c28adcb5SMasahiro Yamada reg = <0 0x000>; 44c28adcb5SMasahiro Yamada clocks = <&sys_clk 33>; 45c28adcb5SMasahiro Yamada enable-method = "psci"; 465381a96cSKunihiko Hayashi next-level-cache = <&l2>; 47c28adcb5SMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 484b7d3743SKunihiko Hayashi #cooling-cells = <2>; 49c28adcb5SMasahiro Yamada }; 50c28adcb5SMasahiro Yamada 51c28adcb5SMasahiro Yamada cpu1: cpu@1 { 52c28adcb5SMasahiro Yamada device_type = "cpu"; 5331af04cdSRob Herring compatible = "arm,cortex-a53"; 54c28adcb5SMasahiro Yamada reg = <0 0x001>; 55c28adcb5SMasahiro Yamada clocks = <&sys_clk 33>; 56c28adcb5SMasahiro Yamada enable-method = "psci"; 575381a96cSKunihiko Hayashi next-level-cache = <&l2>; 58c28adcb5SMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 594b7d3743SKunihiko Hayashi #cooling-cells = <2>; 60c28adcb5SMasahiro Yamada }; 61c28adcb5SMasahiro Yamada 62c28adcb5SMasahiro Yamada cpu2: cpu@2 { 63c28adcb5SMasahiro Yamada device_type = "cpu"; 6431af04cdSRob Herring compatible = "arm,cortex-a53"; 65c28adcb5SMasahiro Yamada reg = <0 0x002>; 66c28adcb5SMasahiro Yamada clocks = <&sys_clk 33>; 67c28adcb5SMasahiro Yamada enable-method = "psci"; 685381a96cSKunihiko Hayashi next-level-cache = <&l2>; 69c28adcb5SMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 704b7d3743SKunihiko Hayashi #cooling-cells = <2>; 71c28adcb5SMasahiro Yamada }; 72c28adcb5SMasahiro Yamada 73c28adcb5SMasahiro Yamada cpu3: cpu@3 { 74c28adcb5SMasahiro Yamada device_type = "cpu"; 7531af04cdSRob Herring compatible = "arm,cortex-a53"; 76c28adcb5SMasahiro Yamada reg = <0 0x003>; 77c28adcb5SMasahiro Yamada clocks = <&sys_clk 33>; 78c28adcb5SMasahiro Yamada enable-method = "psci"; 795381a96cSKunihiko Hayashi next-level-cache = <&l2>; 80c28adcb5SMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 814b7d3743SKunihiko Hayashi #cooling-cells = <2>; 82c28adcb5SMasahiro Yamada }; 835381a96cSKunihiko Hayashi 845381a96cSKunihiko Hayashi l2: l2-cache { 855381a96cSKunihiko Hayashi compatible = "cache"; 868d4f9145SPierre Gondois cache-level = <2>; 87*e035ddb6SKrzysztof Kozlowski cache-unified; 885381a96cSKunihiko Hayashi }; 89c28adcb5SMasahiro Yamada }; 90c28adcb5SMasahiro Yamada 919cd7d03fSMasahiro Yamada cluster0_opp: opp-table { 92c28adcb5SMasahiro Yamada compatible = "operating-points-v2"; 93c28adcb5SMasahiro Yamada opp-shared; 94c28adcb5SMasahiro Yamada 95c28adcb5SMasahiro Yamada opp-250000000 { 96c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <250000000>; 97c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 98c28adcb5SMasahiro Yamada }; 99c28adcb5SMasahiro Yamada opp-325000000 { 100c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <325000000>; 101c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 102c28adcb5SMasahiro Yamada }; 103c28adcb5SMasahiro Yamada opp-500000000 { 104c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <500000000>; 105c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 106c28adcb5SMasahiro Yamada }; 107c28adcb5SMasahiro Yamada opp-650000000 { 108c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <650000000>; 109c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 110c28adcb5SMasahiro Yamada }; 111c28adcb5SMasahiro Yamada opp-666667000 { 112c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <666667000>; 113c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 114c28adcb5SMasahiro Yamada }; 115c28adcb5SMasahiro Yamada opp-866667000 { 116c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <866667000>; 117c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 118c28adcb5SMasahiro Yamada }; 119c28adcb5SMasahiro Yamada opp-1000000000 { 120c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <1000000000>; 121c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 122c28adcb5SMasahiro Yamada }; 123c28adcb5SMasahiro Yamada opp-1300000000 { 124c28adcb5SMasahiro Yamada opp-hz = /bits/ 64 <1300000000>; 125c28adcb5SMasahiro Yamada clock-latency-ns = <300>; 126c28adcb5SMasahiro Yamada }; 127c28adcb5SMasahiro Yamada }; 128c28adcb5SMasahiro Yamada 129c28adcb5SMasahiro Yamada psci { 130c28adcb5SMasahiro Yamada compatible = "arm,psci-1.0"; 131c28adcb5SMasahiro Yamada method = "smc"; 132c28adcb5SMasahiro Yamada }; 133c28adcb5SMasahiro Yamada 134c28adcb5SMasahiro Yamada clocks { 135c28adcb5SMasahiro Yamada refclk: ref { 136c28adcb5SMasahiro Yamada compatible = "fixed-clock"; 137c28adcb5SMasahiro Yamada #clock-cells = <0>; 138c28adcb5SMasahiro Yamada clock-frequency = <25000000>; 139c28adcb5SMasahiro Yamada }; 140c28adcb5SMasahiro Yamada }; 141c28adcb5SMasahiro Yamada 142b6e5ec20SMasahiro Yamada emmc_pwrseq: emmc-pwrseq { 143b6e5ec20SMasahiro Yamada compatible = "mmc-pwrseq-emmc"; 1448311ca57SMasahiro Yamada reset-gpios = <&gpio UNIPHIER_GPIO_PORT(5, 7) GPIO_ACTIVE_LOW>; 145b6e5ec20SMasahiro Yamada }; 146b6e5ec20SMasahiro Yamada 147c28adcb5SMasahiro Yamada timer { 148c28adcb5SMasahiro Yamada compatible = "arm,armv8-timer"; 1495ba95e8eSKunihiko Hayashi interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, 1505ba95e8eSKunihiko Hayashi <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, 1515ba95e8eSKunihiko Hayashi <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, 1525ba95e8eSKunihiko Hayashi <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; 153c28adcb5SMasahiro Yamada }; 154c28adcb5SMasahiro Yamada 1554b7d3743SKunihiko Hayashi thermal-zones { 1564b7d3743SKunihiko Hayashi cpu-thermal { 1574b7d3743SKunihiko Hayashi polling-delay-passive = <250>; /* 250ms */ 1584b7d3743SKunihiko Hayashi polling-delay = <1000>; /* 1000ms */ 1594b7d3743SKunihiko Hayashi thermal-sensors = <&pvtctl>; 1604b7d3743SKunihiko Hayashi 1614b7d3743SKunihiko Hayashi trips { 1624b7d3743SKunihiko Hayashi cpu_crit: cpu-crit { 1634b7d3743SKunihiko Hayashi temperature = <110000>; /* 110C */ 1644b7d3743SKunihiko Hayashi hysteresis = <2000>; 1654b7d3743SKunihiko Hayashi type = "critical"; 1664b7d3743SKunihiko Hayashi }; 1674b7d3743SKunihiko Hayashi cpu_alert: cpu-alert { 1684b7d3743SKunihiko Hayashi temperature = <100000>; /* 100C */ 1694b7d3743SKunihiko Hayashi hysteresis = <2000>; 1704b7d3743SKunihiko Hayashi type = "passive"; 1714b7d3743SKunihiko Hayashi }; 1724b7d3743SKunihiko Hayashi }; 1734b7d3743SKunihiko Hayashi 1744b7d3743SKunihiko Hayashi cooling-maps { 1754b7d3743SKunihiko Hayashi map0 { 1764b7d3743SKunihiko Hayashi trip = <&cpu_alert>; 1774b7d3743SKunihiko Hayashi cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1784b7d3743SKunihiko Hayashi <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1794b7d3743SKunihiko Hayashi <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1804b7d3743SKunihiko Hayashi <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1814b7d3743SKunihiko Hayashi }; 1824b7d3743SKunihiko Hayashi }; 1834b7d3743SKunihiko Hayashi }; 1844b7d3743SKunihiko Hayashi }; 1854b7d3743SKunihiko Hayashi 186aa385712SMasahiro Yamada reserved-memory { 187aa385712SMasahiro Yamada #address-cells = <2>; 188aa385712SMasahiro Yamada #size-cells = <2>; 189aa385712SMasahiro Yamada ranges; 190aa385712SMasahiro Yamada 191aa385712SMasahiro Yamada secure-memory@81000000 { 192aa385712SMasahiro Yamada reg = <0x0 0x81000000 0x0 0x01000000>; 193aa385712SMasahiro Yamada no-map; 194aa385712SMasahiro Yamada }; 195aa385712SMasahiro Yamada }; 196aa385712SMasahiro Yamada 197c28adcb5SMasahiro Yamada soc@0 { 198c28adcb5SMasahiro Yamada compatible = "simple-bus"; 199c28adcb5SMasahiro Yamada #address-cells = <1>; 200c28adcb5SMasahiro Yamada #size-cells = <1>; 201c28adcb5SMasahiro Yamada ranges = <0 0 0 0xffffffff>; 202c28adcb5SMasahiro Yamada 203925c5c32SKunihiko Hayashi spi0: spi@54006000 { 204925c5c32SKunihiko Hayashi compatible = "socionext,uniphier-scssi"; 205925c5c32SKunihiko Hayashi status = "disabled"; 206925c5c32SKunihiko Hayashi reg = <0x54006000 0x100>; 2071a13827bSMasahiro Yamada #address-cells = <1>; 2081a13827bSMasahiro Yamada #size-cells = <0>; 2095ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 210925c5c32SKunihiko Hayashi pinctrl-names = "default"; 211925c5c32SKunihiko Hayashi pinctrl-0 = <&pinctrl_spi0>; 212925c5c32SKunihiko Hayashi clocks = <&peri_clk 11>; 213925c5c32SKunihiko Hayashi resets = <&peri_rst 11>; 214925c5c32SKunihiko Hayashi }; 215925c5c32SKunihiko Hayashi 216925c5c32SKunihiko Hayashi spi1: spi@54006100 { 217925c5c32SKunihiko Hayashi compatible = "socionext,uniphier-scssi"; 218925c5c32SKunihiko Hayashi status = "disabled"; 219925c5c32SKunihiko Hayashi reg = <0x54006100 0x100>; 2201a13827bSMasahiro Yamada #address-cells = <1>; 2211a13827bSMasahiro Yamada #size-cells = <0>; 2225ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>; 223925c5c32SKunihiko Hayashi pinctrl-names = "default"; 224925c5c32SKunihiko Hayashi pinctrl-0 = <&pinctrl_spi1>; 225fdf9c17bSKunihiko Hayashi clocks = <&peri_clk 12>; 226fdf9c17bSKunihiko Hayashi resets = <&peri_rst 12>; 227925c5c32SKunihiko Hayashi }; 228925c5c32SKunihiko Hayashi 229c28adcb5SMasahiro Yamada serial0: serial@54006800 { 230c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-uart"; 231c28adcb5SMasahiro Yamada status = "disabled"; 232c28adcb5SMasahiro Yamada reg = <0x54006800 0x40>; 2335ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 234c28adcb5SMasahiro Yamada pinctrl-names = "default"; 235c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_uart0>; 236c28adcb5SMasahiro Yamada clocks = <&peri_clk 0>; 23776c48e1eSMasahiro Yamada resets = <&peri_rst 0>; 238c28adcb5SMasahiro Yamada }; 239c28adcb5SMasahiro Yamada 240c28adcb5SMasahiro Yamada serial1: serial@54006900 { 241c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-uart"; 242c28adcb5SMasahiro Yamada status = "disabled"; 243c28adcb5SMasahiro Yamada reg = <0x54006900 0x40>; 2445ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; 245c28adcb5SMasahiro Yamada pinctrl-names = "default"; 246c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_uart1>; 247c28adcb5SMasahiro Yamada clocks = <&peri_clk 1>; 24876c48e1eSMasahiro Yamada resets = <&peri_rst 1>; 249c28adcb5SMasahiro Yamada }; 250c28adcb5SMasahiro Yamada 251c28adcb5SMasahiro Yamada serial2: serial@54006a00 { 252c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-uart"; 253c28adcb5SMasahiro Yamada status = "disabled"; 254c28adcb5SMasahiro Yamada reg = <0x54006a00 0x40>; 2555ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; 256c28adcb5SMasahiro Yamada pinctrl-names = "default"; 257c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_uart2>; 258c28adcb5SMasahiro Yamada clocks = <&peri_clk 2>; 25976c48e1eSMasahiro Yamada resets = <&peri_rst 2>; 260c28adcb5SMasahiro Yamada }; 261c28adcb5SMasahiro Yamada 262c28adcb5SMasahiro Yamada serial3: serial@54006b00 { 263c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-uart"; 264c28adcb5SMasahiro Yamada status = "disabled"; 265c28adcb5SMasahiro Yamada reg = <0x54006b00 0x40>; 2665ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 267c28adcb5SMasahiro Yamada pinctrl-names = "default"; 268c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_uart3>; 269c28adcb5SMasahiro Yamada clocks = <&peri_clk 3>; 27076c48e1eSMasahiro Yamada resets = <&peri_rst 3>; 271c28adcb5SMasahiro Yamada }; 272c28adcb5SMasahiro Yamada 273277b51e7SMasahiro Yamada gpio: gpio@55000000 { 274277b51e7SMasahiro Yamada compatible = "socionext,uniphier-gpio"; 275277b51e7SMasahiro Yamada reg = <0x55000000 0x200>; 276277b51e7SMasahiro Yamada interrupt-parent = <&aidet>; 277277b51e7SMasahiro Yamada interrupt-controller; 278277b51e7SMasahiro Yamada #interrupt-cells = <2>; 279277b51e7SMasahiro Yamada gpio-controller; 280277b51e7SMasahiro Yamada #gpio-cells = <2>; 281277b51e7SMasahiro Yamada gpio-ranges = <&pinctrl 0 0 0>, 282abb62c46SMasahiro Yamada <&pinctrl 104 0 0>, 283abb62c46SMasahiro Yamada <&pinctrl 168 0 0>; 284277b51e7SMasahiro Yamada gpio-ranges-group-names = "gpio_range0", 285277b51e7SMasahiro Yamada "gpio_range1", 286277b51e7SMasahiro Yamada "gpio_range2"; 287277b51e7SMasahiro Yamada ngpios = <286>; 288277b51e7SMasahiro Yamada socionext,interrupt-ranges = <0 48 16>, <16 154 5>, 289277b51e7SMasahiro Yamada <21 217 3>; 290277b51e7SMasahiro Yamada }; 291277b51e7SMasahiro Yamada 292c28adcb5SMasahiro Yamada i2c0: i2c@58780000 { 293c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 294c28adcb5SMasahiro Yamada status = "disabled"; 295c28adcb5SMasahiro Yamada reg = <0x58780000 0x80>; 296c28adcb5SMasahiro Yamada #address-cells = <1>; 297c28adcb5SMasahiro Yamada #size-cells = <0>; 2985ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 299c28adcb5SMasahiro Yamada pinctrl-names = "default"; 300c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c0>; 301c28adcb5SMasahiro Yamada clocks = <&peri_clk 4>; 30276c48e1eSMasahiro Yamada resets = <&peri_rst 4>; 303c28adcb5SMasahiro Yamada clock-frequency = <100000>; 304c28adcb5SMasahiro Yamada }; 305c28adcb5SMasahiro Yamada 306c28adcb5SMasahiro Yamada i2c1: i2c@58781000 { 307c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 308c28adcb5SMasahiro Yamada status = "disabled"; 309c28adcb5SMasahiro Yamada reg = <0x58781000 0x80>; 310c28adcb5SMasahiro Yamada #address-cells = <1>; 311c28adcb5SMasahiro Yamada #size-cells = <0>; 3125ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 313c28adcb5SMasahiro Yamada pinctrl-names = "default"; 314c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c1>; 315c28adcb5SMasahiro Yamada clocks = <&peri_clk 5>; 31676c48e1eSMasahiro Yamada resets = <&peri_rst 5>; 317c28adcb5SMasahiro Yamada clock-frequency = <100000>; 318c28adcb5SMasahiro Yamada }; 319c28adcb5SMasahiro Yamada 320c28adcb5SMasahiro Yamada i2c2: i2c@58782000 { 321c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 322c28adcb5SMasahiro Yamada status = "disabled"; 323c28adcb5SMasahiro Yamada reg = <0x58782000 0x80>; 324c28adcb5SMasahiro Yamada #address-cells = <1>; 325c28adcb5SMasahiro Yamada #size-cells = <0>; 3265ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; 327c28adcb5SMasahiro Yamada pinctrl-names = "default"; 328c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c2>; 329c28adcb5SMasahiro Yamada clocks = <&peri_clk 6>; 33076c48e1eSMasahiro Yamada resets = <&peri_rst 6>; 331c28adcb5SMasahiro Yamada clock-frequency = <100000>; 332c28adcb5SMasahiro Yamada }; 333c28adcb5SMasahiro Yamada 334c28adcb5SMasahiro Yamada i2c3: i2c@58783000 { 335c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 336c28adcb5SMasahiro Yamada status = "disabled"; 337c28adcb5SMasahiro Yamada reg = <0x58783000 0x80>; 338c28adcb5SMasahiro Yamada #address-cells = <1>; 339c28adcb5SMasahiro Yamada #size-cells = <0>; 3405ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 341c28adcb5SMasahiro Yamada pinctrl-names = "default"; 342c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c3>; 343c28adcb5SMasahiro Yamada clocks = <&peri_clk 7>; 34476c48e1eSMasahiro Yamada resets = <&peri_rst 7>; 345c28adcb5SMasahiro Yamada clock-frequency = <100000>; 346c28adcb5SMasahiro Yamada }; 347c28adcb5SMasahiro Yamada 348c28adcb5SMasahiro Yamada /* chip-internal connection for HDMI */ 349c28adcb5SMasahiro Yamada i2c6: i2c@58786000 { 350c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 351c28adcb5SMasahiro Yamada reg = <0x58786000 0x80>; 352c28adcb5SMasahiro Yamada #address-cells = <1>; 353c28adcb5SMasahiro Yamada #size-cells = <0>; 3545ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 355c28adcb5SMasahiro Yamada clocks = <&peri_clk 10>; 35676c48e1eSMasahiro Yamada resets = <&peri_rst 10>; 357c28adcb5SMasahiro Yamada clock-frequency = <400000>; 358c28adcb5SMasahiro Yamada }; 359c28adcb5SMasahiro Yamada 360c28adcb5SMasahiro Yamada system_bus: system-bus@58c00000 { 361c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-system-bus"; 362c28adcb5SMasahiro Yamada status = "disabled"; 363c28adcb5SMasahiro Yamada reg = <0x58c00000 0x400>; 364c28adcb5SMasahiro Yamada #address-cells = <2>; 365c28adcb5SMasahiro Yamada #size-cells = <1>; 366c28adcb5SMasahiro Yamada pinctrl-names = "default"; 367c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_system_bus>; 368c28adcb5SMasahiro Yamada }; 369c28adcb5SMasahiro Yamada 370c28adcb5SMasahiro Yamada smpctrl@59801000 { 371c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-smpctrl"; 372c28adcb5SMasahiro Yamada reg = <0x59801000 0x400>; 373c28adcb5SMasahiro Yamada }; 374c28adcb5SMasahiro Yamada 375a8d3f2d9SKunihiko Hayashi sdctrl: syscon@59810000 { 376c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-sdctrl", 377c28adcb5SMasahiro Yamada "simple-mfd", "syscon"; 378c28adcb5SMasahiro Yamada reg = <0x59810000 0x400>; 379c28adcb5SMasahiro Yamada 3805ebfa90bSKunihiko Hayashi sd_clk: clock-controller { 381c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-sd-clock"; 382c28adcb5SMasahiro Yamada #clock-cells = <1>; 383c28adcb5SMasahiro Yamada }; 384c28adcb5SMasahiro Yamada 3855ebfa90bSKunihiko Hayashi sd_rst: reset-controller { 386c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-sd-reset"; 387c28adcb5SMasahiro Yamada #reset-cells = <1>; 388c28adcb5SMasahiro Yamada }; 389c28adcb5SMasahiro Yamada }; 390c28adcb5SMasahiro Yamada 3915ebfa90bSKunihiko Hayashi syscon@59820000 { 392c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-perictrl", 393c28adcb5SMasahiro Yamada "simple-mfd", "syscon"; 394c28adcb5SMasahiro Yamada reg = <0x59820000 0x200>; 395c28adcb5SMasahiro Yamada 3965ebfa90bSKunihiko Hayashi peri_clk: clock-controller { 397c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-peri-clock"; 398c28adcb5SMasahiro Yamada #clock-cells = <1>; 399c28adcb5SMasahiro Yamada }; 400c28adcb5SMasahiro Yamada 4015ebfa90bSKunihiko Hayashi peri_rst: reset-controller { 402c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-peri-reset"; 403c28adcb5SMasahiro Yamada #reset-cells = <1>; 404c28adcb5SMasahiro Yamada }; 405c28adcb5SMasahiro Yamada }; 406c28adcb5SMasahiro Yamada 407bb3f4672SMasahiro Yamada emmc: mmc@5a000000 { 408c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc"; 409c28adcb5SMasahiro Yamada reg = <0x5a000000 0x400>; 4105ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 411c28adcb5SMasahiro Yamada pinctrl-names = "default"; 412c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_emmc>; 413c28adcb5SMasahiro Yamada clocks = <&sys_clk 4>; 41476c48e1eSMasahiro Yamada resets = <&sys_rst 4>; 415c28adcb5SMasahiro Yamada bus-width = <8>; 416c28adcb5SMasahiro Yamada mmc-ddr-1_8v; 417c28adcb5SMasahiro Yamada mmc-hs200-1_8v; 418b6e5ec20SMasahiro Yamada mmc-pwrseq = <&emmc_pwrseq>; 419f4e5200fSMasahiro Yamada cdns,phy-input-delay-legacy = <9>; 420c28adcb5SMasahiro Yamada cdns,phy-input-delay-mmc-highspeed = <2>; 421c28adcb5SMasahiro Yamada cdns,phy-input-delay-mmc-ddr = <3>; 422c28adcb5SMasahiro Yamada cdns,phy-dll-delay-sdclk = <21>; 423c28adcb5SMasahiro Yamada cdns,phy-dll-delay-sdclk-hsmmc = <21>; 424c28adcb5SMasahiro Yamada }; 425c28adcb5SMasahiro Yamada 426bb3f4672SMasahiro Yamada sd: mmc@5a400000 { 42784a9c4d5SMasahiro Yamada compatible = "socionext,uniphier-sd-v3.1.1"; 42884a9c4d5SMasahiro Yamada status = "disabled"; 42984a9c4d5SMasahiro Yamada reg = <0x5a400000 0x800>; 4305ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 43184a9c4d5SMasahiro Yamada pinctrl-names = "default", "uhs"; 43284a9c4d5SMasahiro Yamada pinctrl-0 = <&pinctrl_sd>; 43384a9c4d5SMasahiro Yamada pinctrl-1 = <&pinctrl_sd_uhs>; 43484a9c4d5SMasahiro Yamada clocks = <&sd_clk 0>; 43584a9c4d5SMasahiro Yamada reset-names = "host"; 43684a9c4d5SMasahiro Yamada resets = <&sd_rst 0>; 43784a9c4d5SMasahiro Yamada bus-width = <4>; 43884a9c4d5SMasahiro Yamada cap-sd-highspeed; 43984a9c4d5SMasahiro Yamada sd-uhs-sdr12; 44084a9c4d5SMasahiro Yamada sd-uhs-sdr25; 44184a9c4d5SMasahiro Yamada sd-uhs-sdr50; 442a8d3f2d9SKunihiko Hayashi socionext,syscon-uhs-mode = <&sdctrl 0>; 44384a9c4d5SMasahiro Yamada }; 44484a9c4d5SMasahiro Yamada 4455ebfa90bSKunihiko Hayashi soc_glue: syscon@5f800000 { 446c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-soc-glue", 447c28adcb5SMasahiro Yamada "simple-mfd", "syscon"; 448c28adcb5SMasahiro Yamada reg = <0x5f800000 0x2000>; 449c28adcb5SMasahiro Yamada 450c28adcb5SMasahiro Yamada pinctrl: pinctrl { 451c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-pinctrl"; 452c28adcb5SMasahiro Yamada }; 453c28adcb5SMasahiro Yamada }; 454c28adcb5SMasahiro Yamada 4555ebfa90bSKunihiko Hayashi syscon@5f900000 { 456f05851e1SKeiji Hayashibara compatible = "socionext,uniphier-pxs3-soc-glue-debug", 457f4d624a1SKunihiko Hayashi "simple-mfd", "syscon"; 458f45d6207SKunihiko Hayashi reg = <0x5f900000 0x2000>; 459f05851e1SKeiji Hayashibara #address-cells = <1>; 460f05851e1SKeiji Hayashibara #size-cells = <1>; 461f05851e1SKeiji Hayashibara ranges = <0 0x5f900000 0x2000>; 462f05851e1SKeiji Hayashibara 463f05851e1SKeiji Hayashibara efuse@100 { 464f05851e1SKeiji Hayashibara compatible = "socionext,uniphier-efuse"; 465f05851e1SKeiji Hayashibara reg = <0x100 0x28>; 466f05851e1SKeiji Hayashibara }; 467f05851e1SKeiji Hayashibara 468f05851e1SKeiji Hayashibara efuse@200 { 469f05851e1SKeiji Hayashibara compatible = "socionext,uniphier-efuse"; 470f05851e1SKeiji Hayashibara reg = <0x200 0x68>; 471d7b9beb8SKunihiko Hayashi #address-cells = <1>; 472d7b9beb8SKunihiko Hayashi #size-cells = <1>; 473d7b9beb8SKunihiko Hayashi 474d7b9beb8SKunihiko Hayashi /* USB cells */ 475d7b9beb8SKunihiko Hayashi usb_rterm0: trim@54,4 { 476d7b9beb8SKunihiko Hayashi reg = <0x54 1>; 477d7b9beb8SKunihiko Hayashi bits = <4 2>; 478d7b9beb8SKunihiko Hayashi }; 479d7b9beb8SKunihiko Hayashi usb_rterm1: trim@55,4 { 480d7b9beb8SKunihiko Hayashi reg = <0x55 1>; 481d7b9beb8SKunihiko Hayashi bits = <4 2>; 482d7b9beb8SKunihiko Hayashi }; 483d7b9beb8SKunihiko Hayashi usb_rterm2: trim@58,4 { 484d7b9beb8SKunihiko Hayashi reg = <0x58 1>; 485d7b9beb8SKunihiko Hayashi bits = <4 2>; 486d7b9beb8SKunihiko Hayashi }; 487d7b9beb8SKunihiko Hayashi usb_rterm3: trim@59,4 { 488d7b9beb8SKunihiko Hayashi reg = <0x59 1>; 489d7b9beb8SKunihiko Hayashi bits = <4 2>; 490d7b9beb8SKunihiko Hayashi }; 491d7b9beb8SKunihiko Hayashi usb_sel_t0: trim@54,0 { 492d7b9beb8SKunihiko Hayashi reg = <0x54 1>; 493d7b9beb8SKunihiko Hayashi bits = <0 4>; 494d7b9beb8SKunihiko Hayashi }; 495d7b9beb8SKunihiko Hayashi usb_sel_t1: trim@55,0 { 496d7b9beb8SKunihiko Hayashi reg = <0x55 1>; 497d7b9beb8SKunihiko Hayashi bits = <0 4>; 498d7b9beb8SKunihiko Hayashi }; 499d7b9beb8SKunihiko Hayashi usb_sel_t2: trim@58,0 { 500d7b9beb8SKunihiko Hayashi reg = <0x58 1>; 501d7b9beb8SKunihiko Hayashi bits = <0 4>; 502d7b9beb8SKunihiko Hayashi }; 503d7b9beb8SKunihiko Hayashi usb_sel_t3: trim@59,0 { 504d7b9beb8SKunihiko Hayashi reg = <0x59 1>; 505d7b9beb8SKunihiko Hayashi bits = <0 4>; 506d7b9beb8SKunihiko Hayashi }; 507d7b9beb8SKunihiko Hayashi usb_hs_i0: trim@56,0 { 508d7b9beb8SKunihiko Hayashi reg = <0x56 1>; 509d7b9beb8SKunihiko Hayashi bits = <0 4>; 510d7b9beb8SKunihiko Hayashi }; 511d7b9beb8SKunihiko Hayashi usb_hs_i2: trim@5a,0 { 512d7b9beb8SKunihiko Hayashi reg = <0x5a 1>; 513d7b9beb8SKunihiko Hayashi bits = <0 4>; 514d7b9beb8SKunihiko Hayashi }; 515f05851e1SKeiji Hayashibara }; 516f05851e1SKeiji Hayashibara }; 517f05851e1SKeiji Hayashibara 518f03b998dSKunihiko Hayashi xdmac: dma-controller@5fc10000 { 519f03b998dSKunihiko Hayashi compatible = "socionext,uniphier-xdmac"; 520f03b998dSKunihiko Hayashi reg = <0x5fc10000 0x5300>; 5215ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 522f03b998dSKunihiko Hayashi dma-channels = <16>; 523f03b998dSKunihiko Hayashi #dma-cells = <2>; 524f03b998dSKunihiko Hayashi }; 525f03b998dSKunihiko Hayashi 5269ddc285bSMasahiro Yamada aidet: interrupt-controller@5fc20000 { 527c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-aidet"; 528c28adcb5SMasahiro Yamada reg = <0x5fc20000 0x200>; 529c28adcb5SMasahiro Yamada interrupt-controller; 530c28adcb5SMasahiro Yamada #interrupt-cells = <2>; 531c28adcb5SMasahiro Yamada }; 532c28adcb5SMasahiro Yamada 533c28adcb5SMasahiro Yamada gic: interrupt-controller@5fe00000 { 534c28adcb5SMasahiro Yamada compatible = "arm,gic-v3"; 535c28adcb5SMasahiro Yamada reg = <0x5fe00000 0x10000>, /* GICD */ 536c28adcb5SMasahiro Yamada <0x5fe80000 0x80000>; /* GICR */ 537c28adcb5SMasahiro Yamada interrupt-controller; 538c28adcb5SMasahiro Yamada #interrupt-cells = <3>; 5395ba95e8eSKunihiko Hayashi interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 540c28adcb5SMasahiro Yamada }; 541c28adcb5SMasahiro Yamada 5425ebfa90bSKunihiko Hayashi syscon@61840000 { 543c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-sysctrl", 544c28adcb5SMasahiro Yamada "simple-mfd", "syscon"; 545c28adcb5SMasahiro Yamada reg = <0x61840000 0x10000>; 546c28adcb5SMasahiro Yamada 5475ebfa90bSKunihiko Hayashi sys_clk: clock-controller { 548c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-clock"; 549c28adcb5SMasahiro Yamada #clock-cells = <1>; 550c28adcb5SMasahiro Yamada }; 551c28adcb5SMasahiro Yamada 5525ebfa90bSKunihiko Hayashi sys_rst: reset-controller { 553c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-pxs3-reset"; 554c28adcb5SMasahiro Yamada #reset-cells = <1>; 555c28adcb5SMasahiro Yamada }; 556c28adcb5SMasahiro Yamada 557c28adcb5SMasahiro Yamada watchdog { 558c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-wdt"; 559c28adcb5SMasahiro Yamada }; 5604b7d3743SKunihiko Hayashi 5612dfb62d6SKunihiko Hayashi pvtctl: thermal-sensor { 5624b7d3743SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-thermal"; 5635ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 5644b7d3743SKunihiko Hayashi #thermal-sensor-cells = <0>; 5654b7d3743SKunihiko Hayashi socionext,tmod-calibration = <0x0f22 0x68ee>; 5664b7d3743SKunihiko Hayashi }; 567c28adcb5SMasahiro Yamada }; 568c28adcb5SMasahiro Yamada 569aba054a1SKunihiko Hayashi eth0: ethernet@65000000 { 570aba054a1SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ave4"; 571aba054a1SKunihiko Hayashi status = "disabled"; 572aba054a1SKunihiko Hayashi reg = <0x65000000 0x8500>; 5735ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 574aba054a1SKunihiko Hayashi pinctrl-names = "default"; 575aba054a1SKunihiko Hayashi pinctrl-0 = <&pinctrl_ether_rgmii>; 576a34a464dSKunihiko Hayashi clock-names = "ether"; 577aba054a1SKunihiko Hayashi clocks = <&sys_clk 6>; 578a34a464dSKunihiko Hayashi reset-names = "ether"; 579aba054a1SKunihiko Hayashi resets = <&sys_rst 6>; 580dcabb06bSKunihiko Hayashi phy-mode = "rgmii-id"; 581aba054a1SKunihiko Hayashi local-mac-address = [00 00 00 00 00 00]; 582b076ff8bSKunihiko Hayashi socionext,syscon-phy-mode = <&soc_glue 0>; 583aba054a1SKunihiko Hayashi 584aba054a1SKunihiko Hayashi mdio0: mdio { 585aba054a1SKunihiko Hayashi #address-cells = <1>; 586aba054a1SKunihiko Hayashi #size-cells = <0>; 587aba054a1SKunihiko Hayashi }; 588aba054a1SKunihiko Hayashi }; 589aba054a1SKunihiko Hayashi 590aba054a1SKunihiko Hayashi eth1: ethernet@65200000 { 591aba054a1SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ave4"; 592aba054a1SKunihiko Hayashi status = "disabled"; 593aba054a1SKunihiko Hayashi reg = <0x65200000 0x8500>; 5945ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; 595aba054a1SKunihiko Hayashi pinctrl-names = "default"; 596aba054a1SKunihiko Hayashi pinctrl-0 = <&pinctrl_ether1_rgmii>; 597a34a464dSKunihiko Hayashi clock-names = "ether"; 598aba054a1SKunihiko Hayashi clocks = <&sys_clk 7>; 599a34a464dSKunihiko Hayashi reset-names = "ether"; 600aba054a1SKunihiko Hayashi resets = <&sys_rst 7>; 601dcabb06bSKunihiko Hayashi phy-mode = "rgmii-id"; 602aba054a1SKunihiko Hayashi local-mac-address = [00 00 00 00 00 00]; 603b076ff8bSKunihiko Hayashi socionext,syscon-phy-mode = <&soc_glue 1>; 604aba054a1SKunihiko Hayashi 605aba054a1SKunihiko Hayashi mdio1: mdio { 606aba054a1SKunihiko Hayashi #address-cells = <1>; 607aba054a1SKunihiko Hayashi #size-cells = <0>; 608aba054a1SKunihiko Hayashi }; 609aba054a1SKunihiko Hayashi }; 610aba054a1SKunihiko Hayashi 61123e001e7SKunihiko Hayashi ahci0: sata@65600000 { 61223e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci", 61323e001e7SKunihiko Hayashi "generic-ahci"; 61423e001e7SKunihiko Hayashi status = "disabled"; 61523e001e7SKunihiko Hayashi reg = <0x65600000 0x10000>; 61623e001e7SKunihiko Hayashi interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>; 61723e001e7SKunihiko Hayashi clocks = <&sys_clk 28>; 61823e001e7SKunihiko Hayashi resets = <&sys_rst 28>, <&ahci0_rst 0>; 61923e001e7SKunihiko Hayashi ports-implemented = <1>; 62023e001e7SKunihiko Hayashi phys = <&ahci0_phy>; 62123e001e7SKunihiko Hayashi }; 62223e001e7SKunihiko Hayashi 62323e001e7SKunihiko Hayashi sata-controller@65700000 { 62423e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-glue", 62523e001e7SKunihiko Hayashi "simple-mfd"; 626f45d6207SKunihiko Hayashi reg = <0x65700000 0x100>; 62723e001e7SKunihiko Hayashi #address-cells = <1>; 62823e001e7SKunihiko Hayashi #size-cells = <1>; 62923e001e7SKunihiko Hayashi ranges = <0 0x65700000 0x100>; 63023e001e7SKunihiko Hayashi 63123e001e7SKunihiko Hayashi ahci0_rst: reset-controller@0 { 63223e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-reset"; 63323e001e7SKunihiko Hayashi reg = <0x0 0x4>; 63423e001e7SKunihiko Hayashi clock-names = "link"; 63523e001e7SKunihiko Hayashi clocks = <&sys_clk 28>; 63623e001e7SKunihiko Hayashi reset-names = "link"; 63723e001e7SKunihiko Hayashi resets = <&sys_rst 28>; 63823e001e7SKunihiko Hayashi #reset-cells = <1>; 63923e001e7SKunihiko Hayashi }; 64023e001e7SKunihiko Hayashi 64123e001e7SKunihiko Hayashi ahci0_phy: sata-phy@10 { 64223e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-phy"; 64323e001e7SKunihiko Hayashi reg = <0x10 0x10>; 64423e001e7SKunihiko Hayashi clock-names = "link", "phy"; 64523e001e7SKunihiko Hayashi clocks = <&sys_clk 28>, <&sys_clk 30>; 64623e001e7SKunihiko Hayashi reset-names = "link", "phy"; 64723e001e7SKunihiko Hayashi resets = <&sys_rst 28>, <&sys_rst 30>; 64823e001e7SKunihiko Hayashi #phy-cells = <0>; 64923e001e7SKunihiko Hayashi }; 65023e001e7SKunihiko Hayashi }; 65123e001e7SKunihiko Hayashi 65223e001e7SKunihiko Hayashi ahci1: sata@65800000 { 65323e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci", 65423e001e7SKunihiko Hayashi "generic-ahci"; 65523e001e7SKunihiko Hayashi status = "disabled"; 65623e001e7SKunihiko Hayashi reg = <0x65800000 0x10000>; 65723e001e7SKunihiko Hayashi interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 65823e001e7SKunihiko Hayashi clocks = <&sys_clk 29>; 65923e001e7SKunihiko Hayashi resets = <&sys_rst 29>, <&ahci1_rst 0>; 66023e001e7SKunihiko Hayashi ports-implemented = <1>; 66123e001e7SKunihiko Hayashi phys = <&ahci1_phy>; 66223e001e7SKunihiko Hayashi }; 66323e001e7SKunihiko Hayashi 66423e001e7SKunihiko Hayashi sata-controller@65900000 { 66523e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-glue", 66623e001e7SKunihiko Hayashi "simple-mfd"; 667f45d6207SKunihiko Hayashi reg = <0x65900000 0x100>; 66823e001e7SKunihiko Hayashi #address-cells = <1>; 66923e001e7SKunihiko Hayashi #size-cells = <1>; 67023e001e7SKunihiko Hayashi ranges = <0 0x65900000 0x100>; 67123e001e7SKunihiko Hayashi 67223e001e7SKunihiko Hayashi ahci1_rst: reset-controller@0 { 67323e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-reset"; 67423e001e7SKunihiko Hayashi reg = <0x0 0x4>; 67523e001e7SKunihiko Hayashi clock-names = "link"; 67623e001e7SKunihiko Hayashi clocks = <&sys_clk 29>; 67723e001e7SKunihiko Hayashi reset-names = "link"; 67823e001e7SKunihiko Hayashi resets = <&sys_rst 29>; 67923e001e7SKunihiko Hayashi #reset-cells = <1>; 68023e001e7SKunihiko Hayashi }; 68123e001e7SKunihiko Hayashi 68223e001e7SKunihiko Hayashi ahci1_phy: sata-phy@10 { 68323e001e7SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-ahci-phy"; 68423e001e7SKunihiko Hayashi reg = <0x10 0x10>; 68523e001e7SKunihiko Hayashi clock-names = "link", "phy"; 68623e001e7SKunihiko Hayashi clocks = <&sys_clk 29>, <&sys_clk 30>; 68723e001e7SKunihiko Hayashi reset-names = "link", "phy"; 68823e001e7SKunihiko Hayashi resets = <&sys_rst 29>, <&sys_rst 30>; 68923e001e7SKunihiko Hayashi #phy-cells = <0>; 69023e001e7SKunihiko Hayashi }; 69123e001e7SKunihiko Hayashi }; 69223e001e7SKunihiko Hayashi 693d7b9beb8SKunihiko Hayashi usb0: usb@65a00000 { 694d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-dwc3", "snps,dwc3"; 695d7b9beb8SKunihiko Hayashi status = "disabled"; 696d7b9beb8SKunihiko Hayashi reg = <0x65a00000 0xcd00>; 697fe17b91aSKunihiko Hayashi interrupt-names = "dwc_usb3"; 6985ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 699d7b9beb8SKunihiko Hayashi pinctrl-names = "default"; 700d7b9beb8SKunihiko Hayashi pinctrl-0 = <&pinctrl_usb0>, <&pinctrl_usb2>; 701d7b9beb8SKunihiko Hayashi clock-names = "ref", "bus_early", "suspend"; 702d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>, <&sys_clk 12>, <&sys_clk 12>; 703d7b9beb8SKunihiko Hayashi resets = <&usb0_rst 15>; 704d7b9beb8SKunihiko Hayashi phys = <&usb0_hsphy0>, <&usb0_hsphy1>, 705d7b9beb8SKunihiko Hayashi <&usb0_ssphy0>, <&usb0_ssphy1>; 706d7b9beb8SKunihiko Hayashi dr_mode = "host"; 707d7b9beb8SKunihiko Hayashi }; 708d7b9beb8SKunihiko Hayashi 7094cc752a8SKunihiko Hayashi usb-controller@65b00000 { 710d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-dwc3-glue", 711d7b9beb8SKunihiko Hayashi "simple-mfd"; 712f45d6207SKunihiko Hayashi reg = <0x65b00000 0x400>; 713d7b9beb8SKunihiko Hayashi #address-cells = <1>; 714d7b9beb8SKunihiko Hayashi #size-cells = <1>; 715d7b9beb8SKunihiko Hayashi ranges = <0 0x65b00000 0x400>; 716d7b9beb8SKunihiko Hayashi 7175ebfa90bSKunihiko Hayashi usb0_rst: reset-controller@0 { 718d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-reset"; 719d7b9beb8SKunihiko Hayashi reg = <0x0 0x4>; 720d7b9beb8SKunihiko Hayashi #reset-cells = <1>; 721d7b9beb8SKunihiko Hayashi clock-names = "link"; 722d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>; 723d7b9beb8SKunihiko Hayashi reset-names = "link"; 724d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>; 725d7b9beb8SKunihiko Hayashi }; 726d7b9beb8SKunihiko Hayashi 727d7b9beb8SKunihiko Hayashi usb0_vbus0: regulator@100 { 728d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-regulator"; 729d7b9beb8SKunihiko Hayashi reg = <0x100 0x10>; 730d7b9beb8SKunihiko Hayashi clock-names = "link"; 731d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>; 732d7b9beb8SKunihiko Hayashi reset-names = "link"; 733d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>; 734d7b9beb8SKunihiko Hayashi }; 735d7b9beb8SKunihiko Hayashi 736d7b9beb8SKunihiko Hayashi usb0_vbus1: regulator@110 { 737d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-regulator"; 738d7b9beb8SKunihiko Hayashi reg = <0x110 0x10>; 739d7b9beb8SKunihiko Hayashi clock-names = "link"; 740d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>; 741d7b9beb8SKunihiko Hayashi reset-names = "link"; 742d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>; 743d7b9beb8SKunihiko Hayashi }; 744d7b9beb8SKunihiko Hayashi 7455ebfa90bSKunihiko Hayashi usb0_hsphy0: phy@200 { 746d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-hsphy"; 747d7b9beb8SKunihiko Hayashi reg = <0x200 0x10>; 748d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 749d7b9beb8SKunihiko Hayashi clock-names = "link", "phy"; 750d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>, <&sys_clk 16>; 751d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 752d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>, <&sys_rst 16>; 753d7b9beb8SKunihiko Hayashi vbus-supply = <&usb0_vbus0>; 754d7b9beb8SKunihiko Hayashi nvmem-cell-names = "rterm", "sel_t", "hs_i"; 755d7b9beb8SKunihiko Hayashi nvmem-cells = <&usb_rterm0>, <&usb_sel_t0>, 756d7b9beb8SKunihiko Hayashi <&usb_hs_i0>; 757d7b9beb8SKunihiko Hayashi }; 758d7b9beb8SKunihiko Hayashi 7595ebfa90bSKunihiko Hayashi usb0_hsphy1: phy@210 { 760d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-hsphy"; 761d7b9beb8SKunihiko Hayashi reg = <0x210 0x10>; 762d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 763d7b9beb8SKunihiko Hayashi clock-names = "link", "phy"; 764d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>, <&sys_clk 16>; 765d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 766d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>, <&sys_rst 16>; 767d7b9beb8SKunihiko Hayashi vbus-supply = <&usb0_vbus1>; 768d7b9beb8SKunihiko Hayashi nvmem-cell-names = "rterm", "sel_t", "hs_i"; 769d7b9beb8SKunihiko Hayashi nvmem-cells = <&usb_rterm1>, <&usb_sel_t1>, 770d7b9beb8SKunihiko Hayashi <&usb_hs_i0>; 771d7b9beb8SKunihiko Hayashi }; 772d7b9beb8SKunihiko Hayashi 7735ebfa90bSKunihiko Hayashi usb0_ssphy0: phy@300 { 774d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-ssphy"; 775d7b9beb8SKunihiko Hayashi reg = <0x300 0x10>; 776d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 777d7b9beb8SKunihiko Hayashi clock-names = "link", "phy"; 778d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>, <&sys_clk 17>; 779d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 780d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>, <&sys_rst 17>; 781d7b9beb8SKunihiko Hayashi vbus-supply = <&usb0_vbus0>; 782d7b9beb8SKunihiko Hayashi }; 783d7b9beb8SKunihiko Hayashi 7845ebfa90bSKunihiko Hayashi usb0_ssphy1: phy@310 { 785d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-ssphy"; 786d7b9beb8SKunihiko Hayashi reg = <0x310 0x10>; 787d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 788d7b9beb8SKunihiko Hayashi clock-names = "link", "phy"; 789d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 12>, <&sys_clk 18>; 790d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 791d7b9beb8SKunihiko Hayashi resets = <&sys_rst 12>, <&sys_rst 18>; 792d7b9beb8SKunihiko Hayashi vbus-supply = <&usb0_vbus1>; 793d7b9beb8SKunihiko Hayashi }; 794d7b9beb8SKunihiko Hayashi }; 795d7b9beb8SKunihiko Hayashi 796d7b9beb8SKunihiko Hayashi usb1: usb@65c00000 { 797d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-dwc3", "snps,dwc3"; 798d7b9beb8SKunihiko Hayashi status = "disabled"; 799d7b9beb8SKunihiko Hayashi reg = <0x65c00000 0xcd00>; 800fe17b91aSKunihiko Hayashi interrupt-names = "dwc_usb3"; 8015ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>; 802d7b9beb8SKunihiko Hayashi pinctrl-names = "default"; 803d7b9beb8SKunihiko Hayashi pinctrl-0 = <&pinctrl_usb1>, <&pinctrl_usb3>; 804d7b9beb8SKunihiko Hayashi clock-names = "ref", "bus_early", "suspend"; 805d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>, <&sys_clk 13>, <&sys_clk 13>; 806d7b9beb8SKunihiko Hayashi resets = <&usb1_rst 15>; 807d7b9beb8SKunihiko Hayashi phys = <&usb1_hsphy0>, <&usb1_hsphy1>, 808d7b9beb8SKunihiko Hayashi <&usb1_ssphy0>; 809d7b9beb8SKunihiko Hayashi dr_mode = "host"; 810d7b9beb8SKunihiko Hayashi }; 811d7b9beb8SKunihiko Hayashi 8124cc752a8SKunihiko Hayashi usb-controller@65d00000 { 813d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-dwc3-glue", 814d7b9beb8SKunihiko Hayashi "simple-mfd"; 815f45d6207SKunihiko Hayashi reg = <0x65d00000 0x400>; 816d7b9beb8SKunihiko Hayashi #address-cells = <1>; 817d7b9beb8SKunihiko Hayashi #size-cells = <1>; 818d7b9beb8SKunihiko Hayashi ranges = <0 0x65d00000 0x400>; 819d7b9beb8SKunihiko Hayashi 8205ebfa90bSKunihiko Hayashi usb1_rst: reset-controller@0 { 821d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-reset"; 822d7b9beb8SKunihiko Hayashi reg = <0x0 0x4>; 823d7b9beb8SKunihiko Hayashi #reset-cells = <1>; 824d7b9beb8SKunihiko Hayashi clock-names = "link"; 825d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>; 826d7b9beb8SKunihiko Hayashi reset-names = "link"; 827d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>; 828d7b9beb8SKunihiko Hayashi }; 829d7b9beb8SKunihiko Hayashi 830d7b9beb8SKunihiko Hayashi usb1_vbus0: regulator@100 { 831d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-regulator"; 832d7b9beb8SKunihiko Hayashi reg = <0x100 0x10>; 833d7b9beb8SKunihiko Hayashi clock-names = "link"; 834d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>; 835d7b9beb8SKunihiko Hayashi reset-names = "link"; 836d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>; 837d7b9beb8SKunihiko Hayashi }; 838d7b9beb8SKunihiko Hayashi 839d7b9beb8SKunihiko Hayashi usb1_vbus1: regulator@110 { 840d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-regulator"; 841d7b9beb8SKunihiko Hayashi reg = <0x110 0x10>; 842d7b9beb8SKunihiko Hayashi clock-names = "link"; 843d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>; 844d7b9beb8SKunihiko Hayashi reset-names = "link"; 845d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>; 846d7b9beb8SKunihiko Hayashi }; 847d7b9beb8SKunihiko Hayashi 8485ebfa90bSKunihiko Hayashi usb1_hsphy0: phy@200 { 849d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-hsphy"; 850d7b9beb8SKunihiko Hayashi reg = <0x200 0x10>; 851d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 852d7b9beb8SKunihiko Hayashi clock-names = "link", "phy", "phy-ext"; 853d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>, <&sys_clk 20>, 854d7b9beb8SKunihiko Hayashi <&sys_clk 14>; 855d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 856d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>, <&sys_rst 20>; 857d7b9beb8SKunihiko Hayashi vbus-supply = <&usb1_vbus0>; 858d7b9beb8SKunihiko Hayashi nvmem-cell-names = "rterm", "sel_t", "hs_i"; 859d7b9beb8SKunihiko Hayashi nvmem-cells = <&usb_rterm2>, <&usb_sel_t2>, 860d7b9beb8SKunihiko Hayashi <&usb_hs_i2>; 861d7b9beb8SKunihiko Hayashi }; 862d7b9beb8SKunihiko Hayashi 8635ebfa90bSKunihiko Hayashi usb1_hsphy1: phy@210 { 864d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-hsphy"; 865d7b9beb8SKunihiko Hayashi reg = <0x210 0x10>; 866d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 867d7b9beb8SKunihiko Hayashi clock-names = "link", "phy", "phy-ext"; 868d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>, <&sys_clk 20>, 869d7b9beb8SKunihiko Hayashi <&sys_clk 14>; 870d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 871d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>, <&sys_rst 20>; 872d7b9beb8SKunihiko Hayashi vbus-supply = <&usb1_vbus1>; 873d7b9beb8SKunihiko Hayashi nvmem-cell-names = "rterm", "sel_t", "hs_i"; 874d7b9beb8SKunihiko Hayashi nvmem-cells = <&usb_rterm3>, <&usb_sel_t3>, 875d7b9beb8SKunihiko Hayashi <&usb_hs_i2>; 876d7b9beb8SKunihiko Hayashi }; 877d7b9beb8SKunihiko Hayashi 8785ebfa90bSKunihiko Hayashi usb1_ssphy0: phy@300 { 879d7b9beb8SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-usb3-ssphy"; 880d7b9beb8SKunihiko Hayashi reg = <0x300 0x10>; 881d7b9beb8SKunihiko Hayashi #phy-cells = <0>; 882d7b9beb8SKunihiko Hayashi clock-names = "link", "phy", "phy-ext"; 883d7b9beb8SKunihiko Hayashi clocks = <&sys_clk 13>, <&sys_clk 21>, 884d7b9beb8SKunihiko Hayashi <&sys_clk 14>; 885d7b9beb8SKunihiko Hayashi reset-names = "link", "phy"; 886d7b9beb8SKunihiko Hayashi resets = <&sys_rst 13>, <&sys_rst 21>; 887d7b9beb8SKunihiko Hayashi vbus-supply = <&usb1_vbus0>; 888d7b9beb8SKunihiko Hayashi }; 889d7b9beb8SKunihiko Hayashi }; 890d7b9beb8SKunihiko Hayashi 89132dfc773SKunihiko Hayashi pcie: pcie@66000000 { 892d93ecbf5SKunihiko Hayashi compatible = "socionext,uniphier-pcie"; 89332dfc773SKunihiko Hayashi status = "disabled"; 89432dfc773SKunihiko Hayashi reg-names = "dbi", "link", "config"; 89532dfc773SKunihiko Hayashi reg = <0x66000000 0x1000>, <0x66010000 0x10000>, 89632dfc773SKunihiko Hayashi <0x2fff0000 0x10000>; 89732dfc773SKunihiko Hayashi #address-cells = <3>; 89832dfc773SKunihiko Hayashi #size-cells = <2>; 89932dfc773SKunihiko Hayashi clocks = <&sys_clk 24>; 90032dfc773SKunihiko Hayashi resets = <&sys_rst 24>; 90132dfc773SKunihiko Hayashi num-lanes = <1>; 90232dfc773SKunihiko Hayashi num-viewport = <1>; 90332dfc773SKunihiko Hayashi bus-range = <0x0 0xff>; 90432dfc773SKunihiko Hayashi device_type = "pci"; 90532dfc773SKunihiko Hayashi ranges = 90632dfc773SKunihiko Hayashi /* downstream I/O */ 90732dfc773SKunihiko Hayashi <0x81000000 0 0x00000000 0x2ffe0000 0 0x00010000>, 90832dfc773SKunihiko Hayashi /* non-prefetchable memory */ 90932dfc773SKunihiko Hayashi <0x82000000 0 0x20000000 0x20000000 0 0x0ffe0000>; 91032dfc773SKunihiko Hayashi #interrupt-cells = <1>; 91132dfc773SKunihiko Hayashi interrupt-names = "dma", "msi"; 9125ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>, 9135ba95e8eSKunihiko Hayashi <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>; 91432dfc773SKunihiko Hayashi interrupt-map-mask = <0 0 0 7>; 91532dfc773SKunihiko Hayashi interrupt-map = <0 0 0 1 &pcie_intc 0>, /* INTA */ 91632dfc773SKunihiko Hayashi <0 0 0 2 &pcie_intc 1>, /* INTB */ 91732dfc773SKunihiko Hayashi <0 0 0 3 &pcie_intc 2>, /* INTC */ 91832dfc773SKunihiko Hayashi <0 0 0 4 &pcie_intc 3>; /* INTD */ 91932dfc773SKunihiko Hayashi phy-names = "pcie-phy"; 92032dfc773SKunihiko Hayashi phys = <&pcie_phy>; 92132dfc773SKunihiko Hayashi 92232dfc773SKunihiko Hayashi pcie_intc: legacy-interrupt-controller { 92332dfc773SKunihiko Hayashi interrupt-controller; 92432dfc773SKunihiko Hayashi #interrupt-cells = <1>; 92532dfc773SKunihiko Hayashi interrupt-parent = <&gic>; 9265ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; 92732dfc773SKunihiko Hayashi }; 92832dfc773SKunihiko Hayashi }; 92932dfc773SKunihiko Hayashi 93032dfc773SKunihiko Hayashi pcie_phy: phy@66038000 { 93132dfc773SKunihiko Hayashi compatible = "socionext,uniphier-pxs3-pcie-phy"; 93232dfc773SKunihiko Hayashi reg = <0x66038000 0x4000>; 93332dfc773SKunihiko Hayashi #phy-cells = <0>; 934e6bd81a2SKunihiko Hayashi clock-names = "link"; 93532dfc773SKunihiko Hayashi clocks = <&sys_clk 24>; 936e6bd81a2SKunihiko Hayashi reset-names = "link"; 93732dfc773SKunihiko Hayashi resets = <&sys_rst 24>; 93832dfc773SKunihiko Hayashi socionext,syscon = <&soc_glue>; 93932dfc773SKunihiko Hayashi }; 94032dfc773SKunihiko Hayashi 941fcb0e53cSMasahiro Yamada nand: nand-controller@68000000 { 942c28adcb5SMasahiro Yamada compatible = "socionext,uniphier-denali-nand-v5b"; 943c28adcb5SMasahiro Yamada status = "disabled"; 944c28adcb5SMasahiro Yamada reg-names = "nand_data", "denali_reg"; 945c28adcb5SMasahiro Yamada reg = <0x68000000 0x20>, <0x68100000 0x1000>; 94653c580c1SMasahiro Yamada #address-cells = <1>; 94753c580c1SMasahiro Yamada #size-cells = <0>; 9485ba95e8eSKunihiko Hayashi interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 949c28adcb5SMasahiro Yamada pinctrl-names = "default"; 950c28adcb5SMasahiro Yamada pinctrl-0 = <&pinctrl_nand>; 951bae120f8SMasahiro Yamada clock-names = "nand", "nand_x", "ecc"; 952bae120f8SMasahiro Yamada clocks = <&sys_clk 2>, <&sys_clk 3>, <&sys_clk 3>; 953e98d5023SMasahiro Yamada reset-names = "nand", "reg"; 954e98d5023SMasahiro Yamada resets = <&sys_rst 2>, <&sys_rst 2>; 955c28adcb5SMasahiro Yamada }; 956c28adcb5SMasahiro Yamada }; 957c28adcb5SMasahiro Yamada}; 958c28adcb5SMasahiro Yamada 959c28adcb5SMasahiro Yamada#include "uniphier-pinctrl.dtsi" 960