1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only 2c66ec88fSEmmanuel Vadot/* 3c66ec88fSEmmanuel Vadot * Copyright (C) 2015, 2016 Imagination Technologies Ltd. 4c66ec88fSEmmanuel Vadot * Copyright (C) 2015 Google, Inc. 5c66ec88fSEmmanuel Vadot */ 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/pistachio-clk.h> 8c66ec88fSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 9c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 10c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/mips-gic.h> 11c66ec88fSEmmanuel Vadot#include <dt-bindings/reset/pistachio-resets.h> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadot/ { 14c66ec88fSEmmanuel Vadot compatible = "img,pistachio"; 15c66ec88fSEmmanuel Vadot 16c66ec88fSEmmanuel Vadot #address-cells = <1>; 17c66ec88fSEmmanuel Vadot #size-cells = <1>; 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel Vadot interrupt-parent = <&gic>; 20c66ec88fSEmmanuel Vadot 21c66ec88fSEmmanuel Vadot cpus { 22c66ec88fSEmmanuel Vadot #address-cells = <1>; 23c66ec88fSEmmanuel Vadot #size-cells = <0>; 24c66ec88fSEmmanuel Vadot 25c66ec88fSEmmanuel Vadot cpu0: cpu@0 { 26c66ec88fSEmmanuel Vadot device_type = "cpu"; 27c66ec88fSEmmanuel Vadot compatible = "mti,interaptiv"; 28c66ec88fSEmmanuel Vadot reg = <0>; 29c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_MIPS_PLL>; 30c66ec88fSEmmanuel Vadot clock-names = "cpu"; 31c66ec88fSEmmanuel Vadot clock-latency = <1000>; 32c66ec88fSEmmanuel Vadot operating-points = < 33c66ec88fSEmmanuel Vadot /* kHz uV(dummy) */ 34c66ec88fSEmmanuel Vadot 546000 1150000 35c66ec88fSEmmanuel Vadot 520000 1100000 36c66ec88fSEmmanuel Vadot 494000 1000000 37c66ec88fSEmmanuel Vadot 468000 950000 38c66ec88fSEmmanuel Vadot 442000 900000 39c66ec88fSEmmanuel Vadot 416000 800000 40c66ec88fSEmmanuel Vadot >; 41c66ec88fSEmmanuel Vadot }; 42c66ec88fSEmmanuel Vadot }; 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot i2c0: i2c@18100000 { 45c66ec88fSEmmanuel Vadot compatible = "img,scb-i2c"; 46c66ec88fSEmmanuel Vadot reg = <0x18100000 0x200>; 47c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>; 48c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_I2C0>, 49c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_I2C0>; 50c66ec88fSEmmanuel Vadot clock-names = "scb", "sys"; 51c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_I2C0_PRE_DIV>, 52c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_I2C0_DIV>; 53c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <33333334>; 54c66ec88fSEmmanuel Vadot status = "disabled"; 55c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 56c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 57c66ec88fSEmmanuel Vadot 58c66ec88fSEmmanuel Vadot #address-cells = <1>; 59c66ec88fSEmmanuel Vadot #size-cells = <0>; 60c66ec88fSEmmanuel Vadot }; 61c66ec88fSEmmanuel Vadot 62c66ec88fSEmmanuel Vadot i2c1: i2c@18100200 { 63c66ec88fSEmmanuel Vadot compatible = "img,scb-i2c"; 64c66ec88fSEmmanuel Vadot reg = <0x18100200 0x200>; 65c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>; 66c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_I2C1>, 67c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_I2C1>; 68c66ec88fSEmmanuel Vadot clock-names = "scb", "sys"; 69c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_I2C1_PRE_DIV>, 70c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_I2C1_DIV>; 71c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <33333334>; 72c66ec88fSEmmanuel Vadot status = "disabled"; 73c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 74c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2c1_pins>; 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel Vadot #address-cells = <1>; 77c66ec88fSEmmanuel Vadot #size-cells = <0>; 78c66ec88fSEmmanuel Vadot }; 79c66ec88fSEmmanuel Vadot 80c66ec88fSEmmanuel Vadot i2c2: i2c@18100400 { 81c66ec88fSEmmanuel Vadot compatible = "img,scb-i2c"; 82c66ec88fSEmmanuel Vadot reg = <0x18100400 0x200>; 83c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 4 IRQ_TYPE_LEVEL_HIGH>; 84c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_I2C2>, 85c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_I2C2>; 86c66ec88fSEmmanuel Vadot clock-names = "scb", "sys"; 87c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_I2C2_PRE_DIV>, 88c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_I2C2_DIV>; 89c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <33333334>; 90c66ec88fSEmmanuel Vadot status = "disabled"; 91c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 92c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2c2_pins>; 93c66ec88fSEmmanuel Vadot 94c66ec88fSEmmanuel Vadot #address-cells = <1>; 95c66ec88fSEmmanuel Vadot #size-cells = <0>; 96c66ec88fSEmmanuel Vadot }; 97c66ec88fSEmmanuel Vadot 98c66ec88fSEmmanuel Vadot i2c3: i2c@18100600 { 99c66ec88fSEmmanuel Vadot compatible = "img,scb-i2c"; 100c66ec88fSEmmanuel Vadot reg = <0x18100600 0x200>; 101c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 5 IRQ_TYPE_LEVEL_HIGH>; 102c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_I2C3>, 103c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_I2C3>; 104c66ec88fSEmmanuel Vadot clock-names = "scb", "sys"; 105c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_I2C3_PRE_DIV>, 106c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_I2C3_DIV>; 107c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <33333334>; 108c66ec88fSEmmanuel Vadot status = "disabled"; 109c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 110c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2c3_pins>; 111c66ec88fSEmmanuel Vadot 112c66ec88fSEmmanuel Vadot #address-cells = <1>; 113c66ec88fSEmmanuel Vadot #size-cells = <0>; 114c66ec88fSEmmanuel Vadot }; 115c66ec88fSEmmanuel Vadot 116c66ec88fSEmmanuel Vadot i2s_in: i2s-in@18100800 { 117c66ec88fSEmmanuel Vadot compatible = "img,i2s-in"; 118c66ec88fSEmmanuel Vadot reg = <0x18100800 0x200>; 119c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 7 IRQ_TYPE_LEVEL_HIGH>; 120c66ec88fSEmmanuel Vadot dmas = <&mdc 30 0xffffffff 0>; 121c66ec88fSEmmanuel Vadot dma-names = "rx"; 122c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_I2S_IN>; 123c66ec88fSEmmanuel Vadot clock-names = "sys"; 124c66ec88fSEmmanuel Vadot img,i2s-channels = <6>; 125c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 126c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2s_in_pins>; 127c66ec88fSEmmanuel Vadot status = "disabled"; 128c66ec88fSEmmanuel Vadot 129c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 130c66ec88fSEmmanuel Vadot }; 131c66ec88fSEmmanuel Vadot 132c66ec88fSEmmanuel Vadot i2s_out: i2s-out@18100a00 { 133c66ec88fSEmmanuel Vadot compatible = "img,i2s-out"; 134c66ec88fSEmmanuel Vadot reg = <0x18100a00 0x200>; 135c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 13 IRQ_TYPE_LEVEL_HIGH>; 136c66ec88fSEmmanuel Vadot dmas = <&mdc 23 0xffffffff 0>; 137c66ec88fSEmmanuel Vadot dma-names = "tx"; 138c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_I2S_OUT>, 139c66ec88fSEmmanuel Vadot <&clk_core CLK_I2S>; 140c66ec88fSEmmanuel Vadot clock-names = "sys", "ref"; 141c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_I2S_DIV>; 142c66ec88fSEmmanuel Vadot assigned-clock-rates = <12288000>; 143c66ec88fSEmmanuel Vadot img,i2s-channels = <6>; 144c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 145c66ec88fSEmmanuel Vadot pinctrl-0 = <&i2s_out_pins>; 146c66ec88fSEmmanuel Vadot status = "disabled"; 147c66ec88fSEmmanuel Vadot resets = <&pistachio_reset PISTACHIO_RESET_I2S_OUT>; 148c66ec88fSEmmanuel Vadot reset-names = "rst"; 149c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 150c66ec88fSEmmanuel Vadot }; 151c66ec88fSEmmanuel Vadot 152c66ec88fSEmmanuel Vadot parallel_out: parallel-audio-out@18100c00 { 153c66ec88fSEmmanuel Vadot compatible = "img,parallel-out"; 154c66ec88fSEmmanuel Vadot reg = <0x18100c00 0x100>; 155c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 19 IRQ_TYPE_LEVEL_HIGH>; 156c66ec88fSEmmanuel Vadot dmas = <&mdc 16 0xffffffff 0>; 157c66ec88fSEmmanuel Vadot dma-names = "tx"; 158c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_PAUD_OUT>, 159c66ec88fSEmmanuel Vadot <&clk_core CLK_AUDIO_DAC>; 160c66ec88fSEmmanuel Vadot clock-names = "sys", "ref"; 161c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_AUDIO_DAC_DIV>; 162c66ec88fSEmmanuel Vadot assigned-clock-rates = <12288000>; 163c66ec88fSEmmanuel Vadot status = "disabled"; 164c66ec88fSEmmanuel Vadot resets = <&pistachio_reset PISTACHIO_RESET_PRL_OUT>; 165c66ec88fSEmmanuel Vadot reset-names = "rst"; 166c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 167c66ec88fSEmmanuel Vadot }; 168c66ec88fSEmmanuel Vadot 169c66ec88fSEmmanuel Vadot spdif_out: spdif-out@18100d00 { 170c66ec88fSEmmanuel Vadot compatible = "img,spdif-out"; 171c66ec88fSEmmanuel Vadot reg = <0x18100d00 0x100>; 172c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 21 IRQ_TYPE_LEVEL_HIGH>; 173c66ec88fSEmmanuel Vadot dmas = <&mdc 14 0xffffffff 0>; 174c66ec88fSEmmanuel Vadot dma-names = "tx"; 175c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_SPDIF_OUT>, 176c66ec88fSEmmanuel Vadot <&clk_core CLK_SPDIF>; 177c66ec88fSEmmanuel Vadot clock-names = "sys", "ref"; 178c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_SPDIF_DIV>; 179c66ec88fSEmmanuel Vadot assigned-clock-rates = <12288000>; 180c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 181c66ec88fSEmmanuel Vadot pinctrl-0 = <&spdif_out_pin>; 182c66ec88fSEmmanuel Vadot status = "disabled"; 183c66ec88fSEmmanuel Vadot resets = <&pistachio_reset PISTACHIO_RESET_SPDIF_OUT>; 184c66ec88fSEmmanuel Vadot reset-names = "rst"; 185c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 186c66ec88fSEmmanuel Vadot }; 187c66ec88fSEmmanuel Vadot 188c66ec88fSEmmanuel Vadot spdif_in: spdif-in@18100e00 { 189c66ec88fSEmmanuel Vadot compatible = "img,spdif-in"; 190c66ec88fSEmmanuel Vadot reg = <0x18100e00 0x100>; 191c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 20 IRQ_TYPE_LEVEL_HIGH>; 192c66ec88fSEmmanuel Vadot dmas = <&mdc 15 0xffffffff 0>; 193c66ec88fSEmmanuel Vadot dma-names = "rx"; 194c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_SPDIF_IN>; 195c66ec88fSEmmanuel Vadot clock-names = "sys"; 196c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 197c66ec88fSEmmanuel Vadot pinctrl-0 = <&spdif_in_pin>; 198c66ec88fSEmmanuel Vadot status = "disabled"; 199c66ec88fSEmmanuel Vadot 200c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 201c66ec88fSEmmanuel Vadot }; 202c66ec88fSEmmanuel Vadot 203c66ec88fSEmmanuel Vadot internal_dac: internal-dac { 204c66ec88fSEmmanuel Vadot compatible = "img,pistachio-internal-dac"; 205c66ec88fSEmmanuel Vadot img,cr-top = <&cr_top>; 206c66ec88fSEmmanuel Vadot img,voltage-select = <1>; 207c66ec88fSEmmanuel Vadot 208c66ec88fSEmmanuel Vadot #sound-dai-cells = <0>; 209c66ec88fSEmmanuel Vadot }; 210c66ec88fSEmmanuel Vadot 211c66ec88fSEmmanuel Vadot spfi0: spi@18100f00 { 212c66ec88fSEmmanuel Vadot compatible = "img,spfi"; 213c66ec88fSEmmanuel Vadot reg = <0x18100f00 0x100>; 214c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 22 IRQ_TYPE_LEVEL_HIGH>; 215c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_SPI0>, <&cr_periph SYS_CLK_SPI0_MASTER>; 216c66ec88fSEmmanuel Vadot clock-names = "sys", "spfi"; 217c66ec88fSEmmanuel Vadot dmas = <&mdc 9 0xffffffff 0>, <&mdc 10 0xffffffff 0>; 218c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 219c66ec88fSEmmanuel Vadot spfi-max-frequency = <50000000>; 220c66ec88fSEmmanuel Vadot status = "disabled"; 221c66ec88fSEmmanuel Vadot 222c66ec88fSEmmanuel Vadot #address-cells = <1>; 223c66ec88fSEmmanuel Vadot #size-cells = <0>; 224c66ec88fSEmmanuel Vadot }; 225c66ec88fSEmmanuel Vadot 226c66ec88fSEmmanuel Vadot spfi1: spi@18101000 { 227c66ec88fSEmmanuel Vadot compatible = "img,spfi"; 228c66ec88fSEmmanuel Vadot reg = <0x18101000 0x100>; 229c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 26 IRQ_TYPE_LEVEL_HIGH>; 230c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_SPI1>, <&cr_periph SYS_CLK_SPI1>; 231c66ec88fSEmmanuel Vadot clock-names = "sys", "spfi"; 232c66ec88fSEmmanuel Vadot dmas = <&mdc 1 0xffffffff 0>, <&mdc 2 0xffffffff 0>; 233c66ec88fSEmmanuel Vadot dma-names = "rx", "tx"; 234c66ec88fSEmmanuel Vadot img,supports-quad-mode; 235c66ec88fSEmmanuel Vadot spfi-max-frequency = <50000000>; 236c66ec88fSEmmanuel Vadot status = "disabled"; 237c66ec88fSEmmanuel Vadot 238c66ec88fSEmmanuel Vadot #address-cells = <1>; 239c66ec88fSEmmanuel Vadot #size-cells = <0>; 240c66ec88fSEmmanuel Vadot }; 241c66ec88fSEmmanuel Vadot 242c66ec88fSEmmanuel Vadot pwm: pwm@18101300 { 243c66ec88fSEmmanuel Vadot compatible = "img,pistachio-pwm"; 244c66ec88fSEmmanuel Vadot reg = <0x18101300 0x100>; 245c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_PWM>, 246c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_PWM>; 247c66ec88fSEmmanuel Vadot clock-names = "pwm", "sys"; 248c66ec88fSEmmanuel Vadot img,cr-periph = <&cr_periph>; 249c66ec88fSEmmanuel Vadot #pwm-cells = <2>; 250c66ec88fSEmmanuel Vadot status = "disabled"; 251c66ec88fSEmmanuel Vadot }; 252c66ec88fSEmmanuel Vadot 253c66ec88fSEmmanuel Vadot uart0: uart@18101400 { 254c66ec88fSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 255c66ec88fSEmmanuel Vadot reg = <0x18101400 0x100>; 256c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 24 IRQ_TYPE_LEVEL_HIGH>; 257c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_UART0>, <&cr_periph SYS_CLK_UART0>; 258c66ec88fSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 259c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_UART0_INTERNAL_DIV>, 260c66ec88fSEmmanuel Vadot <&clk_core CLK_UART0_DIV>; 261c66ec88fSEmmanuel Vadot reg-shift = <2>; 262c66ec88fSEmmanuel Vadot reg-io-width = <4>; 263c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart0_pins>, <&uart0_rts_cts_pins>; 264c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 265c66ec88fSEmmanuel Vadot status = "disabled"; 266c66ec88fSEmmanuel Vadot }; 267c66ec88fSEmmanuel Vadot 268c66ec88fSEmmanuel Vadot uart1: uart@18101500 { 269c66ec88fSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 270c66ec88fSEmmanuel Vadot reg = <0x18101500 0x100>; 271c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 25 IRQ_TYPE_LEVEL_HIGH>; 272c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_UART1>, <&cr_periph SYS_CLK_UART1>; 273c66ec88fSEmmanuel Vadot clock-names = "baudclk", "apb_pclk"; 274c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_UART1_INTERNAL_DIV>, 275c66ec88fSEmmanuel Vadot <&clk_core CLK_UART1_DIV>; 276c66ec88fSEmmanuel Vadot assigned-clock-rates = <114278400>, <1843200>; 277c66ec88fSEmmanuel Vadot reg-shift = <2>; 278c66ec88fSEmmanuel Vadot reg-io-width = <4>; 279c66ec88fSEmmanuel Vadot pinctrl-0 = <&uart1_pins>; 280c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 281c66ec88fSEmmanuel Vadot status = "disabled"; 282c66ec88fSEmmanuel Vadot }; 283c66ec88fSEmmanuel Vadot 284c66ec88fSEmmanuel Vadot adc: adc@18101600 { 285c66ec88fSEmmanuel Vadot compatible = "cosmic,10001-adc"; 286c66ec88fSEmmanuel Vadot reg = <0x18101600 0x24>; 287c66ec88fSEmmanuel Vadot adc-reserved-channels = <0x30>; 288c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_AUX_ADC>; 289c66ec88fSEmmanuel Vadot clock-names = "adc"; 290c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_AUX_ADC_INTERNAL_DIV>, 291c66ec88fSEmmanuel Vadot <&clk_core CLK_AUX_ADC_DIV>; 292c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <1000000>; 293c66ec88fSEmmanuel Vadot status = "disabled"; 294c66ec88fSEmmanuel Vadot 295c66ec88fSEmmanuel Vadot #io-channel-cells = <1>; 296c66ec88fSEmmanuel Vadot }; 297c66ec88fSEmmanuel Vadot 298c66ec88fSEmmanuel Vadot pinctrl: pinctrl@18101c00 { 299c66ec88fSEmmanuel Vadot compatible = "img,pistachio-system-pinctrl"; 300c66ec88fSEmmanuel Vadot reg = <0x18101c00 0x400>; 301c66ec88fSEmmanuel Vadot 302c66ec88fSEmmanuel Vadot gpio0: gpio0 { 303c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 71 IRQ_TYPE_LEVEL_HIGH>; 304c66ec88fSEmmanuel Vadot 305c66ec88fSEmmanuel Vadot gpio-controller; 306c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 307c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 0 16>; 308c66ec88fSEmmanuel Vadot 309c66ec88fSEmmanuel Vadot interrupt-controller; 310c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 311c66ec88fSEmmanuel Vadot }; 312c66ec88fSEmmanuel Vadot 313c66ec88fSEmmanuel Vadot gpio1: gpio1 { 314c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 72 IRQ_TYPE_LEVEL_HIGH>; 315c66ec88fSEmmanuel Vadot 316c66ec88fSEmmanuel Vadot gpio-controller; 317c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 318c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 16 16>; 319c66ec88fSEmmanuel Vadot 320c66ec88fSEmmanuel Vadot interrupt-controller; 321c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 322c66ec88fSEmmanuel Vadot }; 323c66ec88fSEmmanuel Vadot 324c66ec88fSEmmanuel Vadot gpio2: gpio2 { 325c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 73 IRQ_TYPE_LEVEL_HIGH>; 326c66ec88fSEmmanuel Vadot 327c66ec88fSEmmanuel Vadot gpio-controller; 328c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 329c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 32 16>; 330c66ec88fSEmmanuel Vadot 331c66ec88fSEmmanuel Vadot interrupt-controller; 332c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 333c66ec88fSEmmanuel Vadot }; 334c66ec88fSEmmanuel Vadot 335c66ec88fSEmmanuel Vadot gpio3: gpio3 { 336c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 74 IRQ_TYPE_LEVEL_HIGH>; 337c66ec88fSEmmanuel Vadot 338c66ec88fSEmmanuel Vadot gpio-controller; 339c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 340c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 48 16>; 341c66ec88fSEmmanuel Vadot 342c66ec88fSEmmanuel Vadot interrupt-controller; 343c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 344c66ec88fSEmmanuel Vadot }; 345c66ec88fSEmmanuel Vadot 346c66ec88fSEmmanuel Vadot gpio4: gpio4 { 347c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 75 IRQ_TYPE_LEVEL_HIGH>; 348c66ec88fSEmmanuel Vadot 349c66ec88fSEmmanuel Vadot gpio-controller; 350c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 351c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 64 16>; 352c66ec88fSEmmanuel Vadot 353c66ec88fSEmmanuel Vadot interrupt-controller; 354c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 355c66ec88fSEmmanuel Vadot }; 356c66ec88fSEmmanuel Vadot 357c66ec88fSEmmanuel Vadot gpio5: gpio5 { 358c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 76 IRQ_TYPE_LEVEL_HIGH>; 359c66ec88fSEmmanuel Vadot 360c66ec88fSEmmanuel Vadot gpio-controller; 361c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 362c66ec88fSEmmanuel Vadot gpio-ranges = <&pinctrl 0 80 10>; 363c66ec88fSEmmanuel Vadot 364c66ec88fSEmmanuel Vadot interrupt-controller; 365c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 366c66ec88fSEmmanuel Vadot }; 367c66ec88fSEmmanuel Vadot 368c66ec88fSEmmanuel Vadot i2c0_pins: i2c0-pins { 369c66ec88fSEmmanuel Vadot pin_i2c0: i2c0 { 370c66ec88fSEmmanuel Vadot pins = "mfio28", "mfio29"; 371c66ec88fSEmmanuel Vadot function = "i2c0"; 372c66ec88fSEmmanuel Vadot drive-strength = <4>; 373c66ec88fSEmmanuel Vadot }; 374c66ec88fSEmmanuel Vadot }; 375c66ec88fSEmmanuel Vadot 376c66ec88fSEmmanuel Vadot i2c1_pins: i2c1-pins { 377c66ec88fSEmmanuel Vadot pin_i2c1: i2c1 { 378c66ec88fSEmmanuel Vadot pins = "mfio30", "mfio31"; 379c66ec88fSEmmanuel Vadot function = "i2c1"; 380c66ec88fSEmmanuel Vadot drive-strength = <4>; 381c66ec88fSEmmanuel Vadot }; 382c66ec88fSEmmanuel Vadot }; 383c66ec88fSEmmanuel Vadot 384c66ec88fSEmmanuel Vadot i2c2_pins: i2c2-pins { 385c66ec88fSEmmanuel Vadot pin_i2c2: i2c2 { 386c66ec88fSEmmanuel Vadot pins = "mfio32", "mfio33"; 387c66ec88fSEmmanuel Vadot function = "i2c2"; 388c66ec88fSEmmanuel Vadot drive-strength = <4>; 389c66ec88fSEmmanuel Vadot }; 390c66ec88fSEmmanuel Vadot }; 391c66ec88fSEmmanuel Vadot 392c66ec88fSEmmanuel Vadot i2c3_pins: i2c3-pins { 393c66ec88fSEmmanuel Vadot pin_i2c3: i2c3 { 394c66ec88fSEmmanuel Vadot pins = "mfio34", "mfio35"; 395c66ec88fSEmmanuel Vadot function = "i2c3"; 396c66ec88fSEmmanuel Vadot drive-strength = <4>; 397c66ec88fSEmmanuel Vadot }; 398c66ec88fSEmmanuel Vadot }; 399c66ec88fSEmmanuel Vadot 400c66ec88fSEmmanuel Vadot spim0_pins: spim0-pins { 401c66ec88fSEmmanuel Vadot pin_spim0: spim0 { 402c66ec88fSEmmanuel Vadot pins = "mfio9", "mfio10"; 403c66ec88fSEmmanuel Vadot function = "spim0"; 404c66ec88fSEmmanuel Vadot drive-strength = <4>; 405c66ec88fSEmmanuel Vadot }; 406c66ec88fSEmmanuel Vadot spim0_clk: spim0-clk { 407c66ec88fSEmmanuel Vadot pins = "mfio8"; 408c66ec88fSEmmanuel Vadot function = "spim0"; 409c66ec88fSEmmanuel Vadot drive-strength = <4>; 410c66ec88fSEmmanuel Vadot }; 411c66ec88fSEmmanuel Vadot }; 412c66ec88fSEmmanuel Vadot 413c66ec88fSEmmanuel Vadot spim0_cs0_alt_pin: spim0-cs0-alt-pin { 414c66ec88fSEmmanuel Vadot spim0-cs0 { 415c66ec88fSEmmanuel Vadot pins = "mfio2"; 416c66ec88fSEmmanuel Vadot drive-strength = <2>; 417c66ec88fSEmmanuel Vadot }; 418c66ec88fSEmmanuel Vadot }; 419c66ec88fSEmmanuel Vadot 420c66ec88fSEmmanuel Vadot spim0_cs1_pin: spim0-cs1-pin { 421c66ec88fSEmmanuel Vadot spim0-cs1 { 422c66ec88fSEmmanuel Vadot pins = "mfio1"; 423c66ec88fSEmmanuel Vadot drive-strength = <2>; 424c66ec88fSEmmanuel Vadot }; 425c66ec88fSEmmanuel Vadot }; 426c66ec88fSEmmanuel Vadot 427c66ec88fSEmmanuel Vadot spim0_cs2_pin: spim0-cs2-pin { 428c66ec88fSEmmanuel Vadot spim0-cs2 { 429c66ec88fSEmmanuel Vadot pins = "mfio55"; 430c66ec88fSEmmanuel Vadot drive-strength = <2>; 431c66ec88fSEmmanuel Vadot }; 432c66ec88fSEmmanuel Vadot }; 433c66ec88fSEmmanuel Vadot 434c66ec88fSEmmanuel Vadot spim0_cs2_alt_pin: spim0-cs2-alt-pin { 435c66ec88fSEmmanuel Vadot spim0-cs2 { 436c66ec88fSEmmanuel Vadot pins = "mfio28"; 437c66ec88fSEmmanuel Vadot drive-strength = <2>; 438c66ec88fSEmmanuel Vadot }; 439c66ec88fSEmmanuel Vadot }; 440c66ec88fSEmmanuel Vadot 441c66ec88fSEmmanuel Vadot spim0_cs3_pin: spim0-cs3-pin { 442c66ec88fSEmmanuel Vadot spim0-cs3 { 443c66ec88fSEmmanuel Vadot pins = "mfio56"; 444c66ec88fSEmmanuel Vadot drive-strength = <2>; 445c66ec88fSEmmanuel Vadot }; 446c66ec88fSEmmanuel Vadot }; 447c66ec88fSEmmanuel Vadot 448c66ec88fSEmmanuel Vadot spim0_cs3_alt_pin: spim0-cs3-alt-pin { 449c66ec88fSEmmanuel Vadot spim0-cs3 { 450c66ec88fSEmmanuel Vadot pins = "mfio29"; 451c66ec88fSEmmanuel Vadot drive-strength = <2>; 452c66ec88fSEmmanuel Vadot }; 453c66ec88fSEmmanuel Vadot }; 454c66ec88fSEmmanuel Vadot 455c66ec88fSEmmanuel Vadot spim0_cs4_pin: spim0-cs4-pin { 456c66ec88fSEmmanuel Vadot spim0-cs4 { 457c66ec88fSEmmanuel Vadot pins = "mfio57"; 458c66ec88fSEmmanuel Vadot drive-strength = <2>; 459c66ec88fSEmmanuel Vadot }; 460c66ec88fSEmmanuel Vadot }; 461c66ec88fSEmmanuel Vadot 462c66ec88fSEmmanuel Vadot spim0_cs4_alt_pin: spim0-cs4-alt-pin { 463c66ec88fSEmmanuel Vadot spim0-cs4 { 464c66ec88fSEmmanuel Vadot pins = "mfio30"; 465c66ec88fSEmmanuel Vadot drive-strength = <2>; 466c66ec88fSEmmanuel Vadot }; 467c66ec88fSEmmanuel Vadot }; 468c66ec88fSEmmanuel Vadot 469c66ec88fSEmmanuel Vadot spim1_pins: spim1-pins { 470c66ec88fSEmmanuel Vadot spim1 { 471c66ec88fSEmmanuel Vadot pins = "mfio3", "mfio4", "mfio5"; 472c66ec88fSEmmanuel Vadot function = "spim1"; 473c66ec88fSEmmanuel Vadot drive-strength = <2>; 474c66ec88fSEmmanuel Vadot }; 475c66ec88fSEmmanuel Vadot }; 476c66ec88fSEmmanuel Vadot 477c66ec88fSEmmanuel Vadot spim1_quad_pins: spim1-quad-pins { 478c66ec88fSEmmanuel Vadot spim1-quad { 479c66ec88fSEmmanuel Vadot pins = "mfio6", "mfio7"; 480c66ec88fSEmmanuel Vadot function = "spim1"; 481c66ec88fSEmmanuel Vadot drive-strength = <2>; 482c66ec88fSEmmanuel Vadot }; 483c66ec88fSEmmanuel Vadot }; 484c66ec88fSEmmanuel Vadot 485c66ec88fSEmmanuel Vadot spim1_cs0_pin: spim1-cs0-pins { 486c66ec88fSEmmanuel Vadot spim1-cs0 { 487c66ec88fSEmmanuel Vadot pins = "mfio0"; 488c66ec88fSEmmanuel Vadot function = "spim1"; 489c66ec88fSEmmanuel Vadot drive-strength = <2>; 490c66ec88fSEmmanuel Vadot }; 491c66ec88fSEmmanuel Vadot }; 492c66ec88fSEmmanuel Vadot 493c66ec88fSEmmanuel Vadot spim1_cs1_pin: spim1-cs1-pin { 494c66ec88fSEmmanuel Vadot spim1-cs1 { 495c66ec88fSEmmanuel Vadot pins = "mfio1"; 496c66ec88fSEmmanuel Vadot function = "spim1"; 497c66ec88fSEmmanuel Vadot drive-strength = <2>; 498c66ec88fSEmmanuel Vadot }; 499c66ec88fSEmmanuel Vadot }; 500c66ec88fSEmmanuel Vadot 501c66ec88fSEmmanuel Vadot spim1_cs1_alt_pin: spim1-cs1-alt-pin { 502c66ec88fSEmmanuel Vadot spim1-cs1 { 503c66ec88fSEmmanuel Vadot pins = "mfio58"; 504c66ec88fSEmmanuel Vadot function = "spim1"; 505c66ec88fSEmmanuel Vadot drive-strength = <2>; 506c66ec88fSEmmanuel Vadot }; 507c66ec88fSEmmanuel Vadot }; 508c66ec88fSEmmanuel Vadot 509c66ec88fSEmmanuel Vadot spim1_cs2_pin: spim1-cs2-pin { 510c66ec88fSEmmanuel Vadot spim1-cs2 { 511c66ec88fSEmmanuel Vadot pins = "mfio2"; 512c66ec88fSEmmanuel Vadot function = "spim1"; 513c66ec88fSEmmanuel Vadot drive-strength = <2>; 514c66ec88fSEmmanuel Vadot }; 515c66ec88fSEmmanuel Vadot }; 516c66ec88fSEmmanuel Vadot 517c66ec88fSEmmanuel Vadot spim1_cs2_alt0_pin: spim1-cs2-alt0-pin { 518c66ec88fSEmmanuel Vadot spim1-cs2 { 519c66ec88fSEmmanuel Vadot pins = "mfio31"; 520c66ec88fSEmmanuel Vadot function = "spim1"; 521c66ec88fSEmmanuel Vadot drive-strength = <2>; 522c66ec88fSEmmanuel Vadot }; 523c66ec88fSEmmanuel Vadot }; 524c66ec88fSEmmanuel Vadot 525c66ec88fSEmmanuel Vadot spim1_cs2_alt1_pin: spim1-cs2-alt1-pin { 526c66ec88fSEmmanuel Vadot spim1-cs2 { 527c66ec88fSEmmanuel Vadot pins = "mfio55"; 528c66ec88fSEmmanuel Vadot function = "spim1"; 529c66ec88fSEmmanuel Vadot drive-strength = <2>; 530c66ec88fSEmmanuel Vadot }; 531c66ec88fSEmmanuel Vadot }; 532c66ec88fSEmmanuel Vadot 533c66ec88fSEmmanuel Vadot spim1_cs3_pin: spim1-cs3-pin { 534c66ec88fSEmmanuel Vadot spim1-cs3 { 535c66ec88fSEmmanuel Vadot pins = "mfio56"; 536c66ec88fSEmmanuel Vadot function = "spim1"; 537c66ec88fSEmmanuel Vadot drive-strength = <2>; 538c66ec88fSEmmanuel Vadot }; 539c66ec88fSEmmanuel Vadot }; 540c66ec88fSEmmanuel Vadot 541c66ec88fSEmmanuel Vadot spim1_cs4_pin: spim1-cs4-pin { 542c66ec88fSEmmanuel Vadot spim1-cs4 { 543c66ec88fSEmmanuel Vadot pins = "mfio57"; 544c66ec88fSEmmanuel Vadot function = "spim1"; 545c66ec88fSEmmanuel Vadot drive-strength = <2>; 546c66ec88fSEmmanuel Vadot }; 547c66ec88fSEmmanuel Vadot }; 548c66ec88fSEmmanuel Vadot 549c66ec88fSEmmanuel Vadot uart0_pins: uart0-pins { 550c66ec88fSEmmanuel Vadot uart0 { 551c66ec88fSEmmanuel Vadot pins = "mfio55", "mfio56"; 552c66ec88fSEmmanuel Vadot function = "uart0"; 553c66ec88fSEmmanuel Vadot drive-strength = <2>; 554c66ec88fSEmmanuel Vadot }; 555c66ec88fSEmmanuel Vadot }; 556c66ec88fSEmmanuel Vadot 557c66ec88fSEmmanuel Vadot uart0_rts_cts_pins: uart0-rts-cts-pins { 558c66ec88fSEmmanuel Vadot uart0-rts-cts { 559c66ec88fSEmmanuel Vadot pins = "mfio57", "mfio58"; 560c66ec88fSEmmanuel Vadot function = "uart0"; 561c66ec88fSEmmanuel Vadot drive-strength = <2>; 562c66ec88fSEmmanuel Vadot }; 563c66ec88fSEmmanuel Vadot }; 564c66ec88fSEmmanuel Vadot 565c66ec88fSEmmanuel Vadot uart1_pins: uart1-pins { 566c66ec88fSEmmanuel Vadot uart1 { 567c66ec88fSEmmanuel Vadot pins = "mfio59", "mfio60"; 568c66ec88fSEmmanuel Vadot function = "uart1"; 569c66ec88fSEmmanuel Vadot drive-strength = <2>; 570c66ec88fSEmmanuel Vadot }; 571c66ec88fSEmmanuel Vadot }; 572c66ec88fSEmmanuel Vadot 573c66ec88fSEmmanuel Vadot uart1_rts_cts_pins: uart1-rts-cts-pins { 574c66ec88fSEmmanuel Vadot uart1-rts-cts { 575c66ec88fSEmmanuel Vadot pins = "mfio1", "mfio2"; 576c66ec88fSEmmanuel Vadot function = "uart1"; 577c66ec88fSEmmanuel Vadot drive-strength = <2>; 578c66ec88fSEmmanuel Vadot }; 579c66ec88fSEmmanuel Vadot }; 580c66ec88fSEmmanuel Vadot 581c66ec88fSEmmanuel Vadot enet_pins: enet-pins { 582c66ec88fSEmmanuel Vadot pin_enet: enet { 583c66ec88fSEmmanuel Vadot pins = "mfio63", "mfio64", "mfio65", "mfio66", 584c66ec88fSEmmanuel Vadot "mfio67", "mfio68", "mfio69", "mfio70"; 585c66ec88fSEmmanuel Vadot function = "eth"; 586c66ec88fSEmmanuel Vadot slew-rate = <1>; 587c66ec88fSEmmanuel Vadot drive-strength = <4>; 588c66ec88fSEmmanuel Vadot }; 589c66ec88fSEmmanuel Vadot pin_enet_phy_clk: enet-phy-clk { 590c66ec88fSEmmanuel Vadot pins = "mfio71"; 591c66ec88fSEmmanuel Vadot function = "eth"; 592c66ec88fSEmmanuel Vadot slew-rate = <1>; 593c66ec88fSEmmanuel Vadot drive-strength = <8>; 594c66ec88fSEmmanuel Vadot }; 595c66ec88fSEmmanuel Vadot }; 596c66ec88fSEmmanuel Vadot 597c66ec88fSEmmanuel Vadot sdhost_pins: sdhost-pins { 598c66ec88fSEmmanuel Vadot pin_sdhost_clk: sdhost-clk { 599c66ec88fSEmmanuel Vadot pins = "mfio15"; 600c66ec88fSEmmanuel Vadot function = "sdhost"; 601c66ec88fSEmmanuel Vadot slew-rate = <1>; 602c66ec88fSEmmanuel Vadot drive-strength = <4>; 603c66ec88fSEmmanuel Vadot }; 604c66ec88fSEmmanuel Vadot pin_sdhost_cmd: sdhost-cmd { 605c66ec88fSEmmanuel Vadot pins = "mfio16"; 606c66ec88fSEmmanuel Vadot function = "sdhost"; 607c66ec88fSEmmanuel Vadot slew-rate = <1>; 608c66ec88fSEmmanuel Vadot drive-strength = <4>; 609c66ec88fSEmmanuel Vadot }; 610c66ec88fSEmmanuel Vadot pin_sdhost_data: sdhost-data { 611c66ec88fSEmmanuel Vadot pins = "mfio17", "mfio18", "mfio19", "mfio20", 612c66ec88fSEmmanuel Vadot "mfio21", "mfio22", "mfio23", "mfio24"; 613c66ec88fSEmmanuel Vadot function = "sdhost"; 614c66ec88fSEmmanuel Vadot slew-rate = <1>; 615c66ec88fSEmmanuel Vadot drive-strength = <4>; 616c66ec88fSEmmanuel Vadot }; 617c66ec88fSEmmanuel Vadot pin_sdhost_power_select: sdhost-power-select { 618c66ec88fSEmmanuel Vadot pins = "mfio25"; 619c66ec88fSEmmanuel Vadot function = "sdhost"; 620c66ec88fSEmmanuel Vadot slew-rate = <1>; 621c66ec88fSEmmanuel Vadot drive-strength = <2>; 622c66ec88fSEmmanuel Vadot }; 623c66ec88fSEmmanuel Vadot pin_sdhost_card_detect: sdhost-card-detect { 624c66ec88fSEmmanuel Vadot pins = "mfio26"; 625c66ec88fSEmmanuel Vadot function = "sdhost"; 626c66ec88fSEmmanuel Vadot drive-strength = <2>; 627c66ec88fSEmmanuel Vadot }; 628c66ec88fSEmmanuel Vadot pin_sdhost_write_protect: sdhost-write-protect { 629c66ec88fSEmmanuel Vadot pins = "mfio27"; 630c66ec88fSEmmanuel Vadot function = "sdhost"; 631c66ec88fSEmmanuel Vadot drive-strength = <2>; 632c66ec88fSEmmanuel Vadot }; 633c66ec88fSEmmanuel Vadot }; 634c66ec88fSEmmanuel Vadot 635c66ec88fSEmmanuel Vadot ir_pin: ir-pin { 636c66ec88fSEmmanuel Vadot ir-data { 637c66ec88fSEmmanuel Vadot pins = "mfio72"; 638c66ec88fSEmmanuel Vadot function = "ir"; 639c66ec88fSEmmanuel Vadot drive-strength = <2>; 640c66ec88fSEmmanuel Vadot }; 641c66ec88fSEmmanuel Vadot }; 642c66ec88fSEmmanuel Vadot 643c66ec88fSEmmanuel Vadot pwmpdm0_pin: pwmpdm0-pin { 644c66ec88fSEmmanuel Vadot pwmpdm0 { 645c66ec88fSEmmanuel Vadot pins = "mfio73"; 646c66ec88fSEmmanuel Vadot function = "pwmpdm"; 647c66ec88fSEmmanuel Vadot drive-strength = <2>; 648c66ec88fSEmmanuel Vadot }; 649c66ec88fSEmmanuel Vadot }; 650c66ec88fSEmmanuel Vadot 651c66ec88fSEmmanuel Vadot pwmpdm1_pin: pwmpdm1-pin { 652c66ec88fSEmmanuel Vadot pwmpdm1 { 653c66ec88fSEmmanuel Vadot pins = "mfio74"; 654c66ec88fSEmmanuel Vadot function = "pwmpdm"; 655c66ec88fSEmmanuel Vadot drive-strength = <2>; 656c66ec88fSEmmanuel Vadot }; 657c66ec88fSEmmanuel Vadot }; 658c66ec88fSEmmanuel Vadot 659c66ec88fSEmmanuel Vadot pwmpdm2_pin: pwmpdm2-pin { 660c66ec88fSEmmanuel Vadot pwmpdm2 { 661c66ec88fSEmmanuel Vadot pins = "mfio75"; 662c66ec88fSEmmanuel Vadot function = "pwmpdm"; 663c66ec88fSEmmanuel Vadot drive-strength = <2>; 664c66ec88fSEmmanuel Vadot }; 665c66ec88fSEmmanuel Vadot }; 666c66ec88fSEmmanuel Vadot 667c66ec88fSEmmanuel Vadot pwmpdm3_pin: pwmpdm3-pin { 668c66ec88fSEmmanuel Vadot pwmpdm3 { 669c66ec88fSEmmanuel Vadot pins = "mfio76"; 670c66ec88fSEmmanuel Vadot function = "pwmpdm"; 671c66ec88fSEmmanuel Vadot drive-strength = <2>; 672c66ec88fSEmmanuel Vadot }; 673c66ec88fSEmmanuel Vadot }; 674c66ec88fSEmmanuel Vadot 675c66ec88fSEmmanuel Vadot dac_clk_pin: dac-clk-pin { 676c66ec88fSEmmanuel Vadot pin_dac_clk: dac-clk { 677c66ec88fSEmmanuel Vadot pins = "mfio45"; 678c66ec88fSEmmanuel Vadot function = "i2s_dac_clk"; 679c66ec88fSEmmanuel Vadot drive-strength = <4>; 680c66ec88fSEmmanuel Vadot }; 681c66ec88fSEmmanuel Vadot }; 682c66ec88fSEmmanuel Vadot 683c66ec88fSEmmanuel Vadot i2s_mclk_pin: i2s-mclk-pin { 684c66ec88fSEmmanuel Vadot pin_i2s_mclk: i2s-mclk { 685c66ec88fSEmmanuel Vadot pins = "mfio36"; 686c66ec88fSEmmanuel Vadot function = "i2s_out"; 687c66ec88fSEmmanuel Vadot drive-strength = <4>; 688c66ec88fSEmmanuel Vadot }; 689c66ec88fSEmmanuel Vadot }; 690c66ec88fSEmmanuel Vadot 691c66ec88fSEmmanuel Vadot spdif_out_pin: spdif-out-pin { 692c66ec88fSEmmanuel Vadot spdif-out { 693c66ec88fSEmmanuel Vadot pins = "mfio61"; 694c66ec88fSEmmanuel Vadot function = "spdif_out"; 695c66ec88fSEmmanuel Vadot slew-rate = <1>; 696c66ec88fSEmmanuel Vadot drive-strength = <2>; 697c66ec88fSEmmanuel Vadot }; 698c66ec88fSEmmanuel Vadot }; 699c66ec88fSEmmanuel Vadot 700c66ec88fSEmmanuel Vadot spdif_in_pin: spdif-in-pin { 701c66ec88fSEmmanuel Vadot spdif-in { 702c66ec88fSEmmanuel Vadot pins = "mfio62"; 703c66ec88fSEmmanuel Vadot function = "spdif_in"; 704c66ec88fSEmmanuel Vadot drive-strength = <2>; 705c66ec88fSEmmanuel Vadot }; 706c66ec88fSEmmanuel Vadot }; 707c66ec88fSEmmanuel Vadot 708c66ec88fSEmmanuel Vadot i2s_out_pins: i2s-out-pins { 709c66ec88fSEmmanuel Vadot pins_i2s_out_clk: i2s-out-clk { 710c66ec88fSEmmanuel Vadot pins = "mfio37", "mfio38"; 711c66ec88fSEmmanuel Vadot function = "i2s_out"; 712c66ec88fSEmmanuel Vadot drive-strength = <4>; 713c66ec88fSEmmanuel Vadot }; 714c66ec88fSEmmanuel Vadot pins_i2s_out: i2s-out { 715c66ec88fSEmmanuel Vadot pins = "mfio39", "mfio40", 716c66ec88fSEmmanuel Vadot "mfio41", "mfio42", 717c66ec88fSEmmanuel Vadot "mfio43", "mfio44"; 718c66ec88fSEmmanuel Vadot function = "i2s_out"; 719c66ec88fSEmmanuel Vadot drive-strength = <2>; 720c66ec88fSEmmanuel Vadot }; 721c66ec88fSEmmanuel Vadot }; 722c66ec88fSEmmanuel Vadot 723c66ec88fSEmmanuel Vadot i2s_in_pins: i2s-in-pins { 724c66ec88fSEmmanuel Vadot i2s-in { 725c66ec88fSEmmanuel Vadot pins = "mfio47", "mfio48", "mfio49", 726c66ec88fSEmmanuel Vadot "mfio50", "mfio51", "mfio52", 727c66ec88fSEmmanuel Vadot "mfio53", "mfio54"; 728c66ec88fSEmmanuel Vadot function = "i2s_in"; 729c66ec88fSEmmanuel Vadot drive-strength = <2>; 730c66ec88fSEmmanuel Vadot }; 731c66ec88fSEmmanuel Vadot }; 732c66ec88fSEmmanuel Vadot }; 733c66ec88fSEmmanuel Vadot 734c66ec88fSEmmanuel Vadot timer: timer@18102000 { 735c66ec88fSEmmanuel Vadot compatible = "img,pistachio-gptimer"; 736c66ec88fSEmmanuel Vadot reg = <0x18102000 0x100>; 737c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 60 IRQ_TYPE_LEVEL_HIGH>; 738c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_COUNTER_FAST>, 739c66ec88fSEmmanuel Vadot <&cr_periph SYS_CLK_TIMER>; 740c66ec88fSEmmanuel Vadot clock-names = "fast", "sys"; 741c66ec88fSEmmanuel Vadot img,cr-periph = <&cr_periph>; 742c66ec88fSEmmanuel Vadot }; 743c66ec88fSEmmanuel Vadot 744c66ec88fSEmmanuel Vadot wdt: watchdog@18102100 { 745c66ec88fSEmmanuel Vadot compatible = "img,pdc-wdt"; 746c66ec88fSEmmanuel Vadot reg = <0x18102100 0x100>; 747c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 52 IRQ_TYPE_LEVEL_HIGH>; 748c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_WD>, <&cr_periph SYS_CLK_WD>; 749c66ec88fSEmmanuel Vadot clock-names = "wdt", "sys"; 750c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_WD_PRE_DIV>, 751c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_WD_DIV>; 752c66ec88fSEmmanuel Vadot assigned-clock-rates = <4000000>, <32768>; 753c66ec88fSEmmanuel Vadot }; 754c66ec88fSEmmanuel Vadot 755c66ec88fSEmmanuel Vadot ir: ir@18102200 { 756c66ec88fSEmmanuel Vadot compatible = "img,ir-rev1"; 757c66ec88fSEmmanuel Vadot reg = <0x18102200 0x100>; 758c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 51 IRQ_TYPE_LEVEL_HIGH>; 759c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_IR>, <&cr_periph SYS_CLK_IR>; 760c66ec88fSEmmanuel Vadot clock-names = "core", "sys"; 761c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_periph PERIPH_CLK_IR_PRE_DIV>, 762c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_IR_DIV>; 763c66ec88fSEmmanuel Vadot assigned-clock-rates = <4000000>, <32768>; 764c66ec88fSEmmanuel Vadot pinctrl-0 = <&ir_pin>; 765c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 766c66ec88fSEmmanuel Vadot status = "disabled"; 767c66ec88fSEmmanuel Vadot }; 768c66ec88fSEmmanuel Vadot 769c66ec88fSEmmanuel Vadot usb: usb@18120000 { 770c66ec88fSEmmanuel Vadot compatible = "snps,dwc2"; 771c66ec88fSEmmanuel Vadot reg = <0x18120000 0x1c000>; 772c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 49 IRQ_TYPE_LEVEL_HIGH>; 773c66ec88fSEmmanuel Vadot phys = <&usb_phy>; 774c66ec88fSEmmanuel Vadot phy-names = "usb2-phy"; 775c66ec88fSEmmanuel Vadot g-tx-fifo-size = <256 256 256 256>; 776c66ec88fSEmmanuel Vadot status = "disabled"; 777c66ec88fSEmmanuel Vadot }; 778c66ec88fSEmmanuel Vadot 779c66ec88fSEmmanuel Vadot enet: ethernet@18140000 { 780c66ec88fSEmmanuel Vadot compatible = "snps,dwmac"; 781c66ec88fSEmmanuel Vadot reg = <0x18140000 0x2000>; 782c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 50 IRQ_TYPE_LEVEL_HIGH>; 783c66ec88fSEmmanuel Vadot interrupt-names = "macirq"; 784c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_ENET>, <&cr_periph SYS_CLK_ENET>; 785c66ec88fSEmmanuel Vadot clock-names = "stmmaceth", "pclk"; 786c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_ENET_MUX>, 787c66ec88fSEmmanuel Vadot <&clk_core CLK_ENET_DIV>; 788c66ec88fSEmmanuel Vadot assigned-clock-parents = <&clk_core CLK_SYS_INTERNAL_DIV>; 789c66ec88fSEmmanuel Vadot assigned-clock-rates = <0>, <50000000>; 790c66ec88fSEmmanuel Vadot pinctrl-0 = <&enet_pins>; 791c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 792c66ec88fSEmmanuel Vadot phy-mode = "rmii"; 793c66ec88fSEmmanuel Vadot status = "disabled"; 794c66ec88fSEmmanuel Vadot }; 795c66ec88fSEmmanuel Vadot 796c66ec88fSEmmanuel Vadot sdhost: mmc@18142000 { 797c66ec88fSEmmanuel Vadot compatible = "img,pistachio-dw-mshc"; 798c66ec88fSEmmanuel Vadot reg = <0x18142000 0x400>; 799c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 39 IRQ_TYPE_LEVEL_HIGH>; 800c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_SD_HOST>, <&cr_periph SYS_CLK_SD_HOST>; 801c66ec88fSEmmanuel Vadot clock-names = "ciu", "biu"; 802c66ec88fSEmmanuel Vadot pinctrl-0 = <&sdhost_pins>; 803c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 804c66ec88fSEmmanuel Vadot fifo-depth = <0x20>; 805c66ec88fSEmmanuel Vadot clock-frequency = <50000000>; 806c66ec88fSEmmanuel Vadot bus-width = <8>; 807c66ec88fSEmmanuel Vadot cap-mmc-highspeed; 808c66ec88fSEmmanuel Vadot cap-sd-highspeed; 809c66ec88fSEmmanuel Vadot status = "disabled"; 810c66ec88fSEmmanuel Vadot }; 811c66ec88fSEmmanuel Vadot 812c66ec88fSEmmanuel Vadot sram: sram@1b000000 { 813c66ec88fSEmmanuel Vadot compatible = "mmio-sram"; 814c66ec88fSEmmanuel Vadot reg = <0x1b000000 0x10000>; 815c66ec88fSEmmanuel Vadot }; 816c66ec88fSEmmanuel Vadot 817c66ec88fSEmmanuel Vadot mdc: dma-controller@18143000 { 818c66ec88fSEmmanuel Vadot compatible = "img,pistachio-mdc-dma"; 819c66ec88fSEmmanuel Vadot reg = <0x18143000 0x1000>; 820c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 27 IRQ_TYPE_LEVEL_HIGH>, 821c66ec88fSEmmanuel Vadot <GIC_SHARED 28 IRQ_TYPE_LEVEL_HIGH>, 822c66ec88fSEmmanuel Vadot <GIC_SHARED 29 IRQ_TYPE_LEVEL_HIGH>, 823c66ec88fSEmmanuel Vadot <GIC_SHARED 30 IRQ_TYPE_LEVEL_HIGH>, 824c66ec88fSEmmanuel Vadot <GIC_SHARED 31 IRQ_TYPE_LEVEL_HIGH>, 825c66ec88fSEmmanuel Vadot <GIC_SHARED 32 IRQ_TYPE_LEVEL_HIGH>, 826c66ec88fSEmmanuel Vadot <GIC_SHARED 33 IRQ_TYPE_LEVEL_HIGH>, 827c66ec88fSEmmanuel Vadot <GIC_SHARED 34 IRQ_TYPE_LEVEL_HIGH>, 828c66ec88fSEmmanuel Vadot <GIC_SHARED 35 IRQ_TYPE_LEVEL_HIGH>, 829c66ec88fSEmmanuel Vadot <GIC_SHARED 36 IRQ_TYPE_LEVEL_HIGH>, 830c66ec88fSEmmanuel Vadot <GIC_SHARED 37 IRQ_TYPE_LEVEL_HIGH>, 831c66ec88fSEmmanuel Vadot <GIC_SHARED 38 IRQ_TYPE_LEVEL_HIGH>; 832c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_MDC>; 833c66ec88fSEmmanuel Vadot clock-names = "sys"; 834c66ec88fSEmmanuel Vadot 835c66ec88fSEmmanuel Vadot img,max-burst-multiplier = <16>; 836c66ec88fSEmmanuel Vadot img,cr-periph = <&cr_periph>; 837c66ec88fSEmmanuel Vadot 838c66ec88fSEmmanuel Vadot #dma-cells = <3>; 839c66ec88fSEmmanuel Vadot }; 840c66ec88fSEmmanuel Vadot 841c66ec88fSEmmanuel Vadot clk_core: clk@18144000 { 842c66ec88fSEmmanuel Vadot compatible = "img,pistachio-clk", "syscon"; 843c66ec88fSEmmanuel Vadot clocks = <&xtal>, <&cr_top EXT_CLK_AUDIO_IN>, 844c66ec88fSEmmanuel Vadot <&cr_top EXT_CLK_ENET_IN>; 845c66ec88fSEmmanuel Vadot clock-names = "xtal", "audio_refclk_ext_gate", 846c66ec88fSEmmanuel Vadot "ext_enet_in_gate"; 847c66ec88fSEmmanuel Vadot reg = <0x18144000 0x800>; 848c66ec88fSEmmanuel Vadot #clock-cells = <1>; 849c66ec88fSEmmanuel Vadot }; 850c66ec88fSEmmanuel Vadot 851c66ec88fSEmmanuel Vadot clk_periph: clk@18144800 { 852c66ec88fSEmmanuel Vadot compatible = "img,pistachio-clk-periph"; 853c66ec88fSEmmanuel Vadot reg = <0x18144800 0x1000>; 854c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_PERIPH_SYS>; 855c66ec88fSEmmanuel Vadot clock-names = "periph_sys_core"; 856c66ec88fSEmmanuel Vadot #clock-cells = <1>; 857c66ec88fSEmmanuel Vadot }; 858c66ec88fSEmmanuel Vadot 859c66ec88fSEmmanuel Vadot cr_periph: clk@18148000 { 860c66ec88fSEmmanuel Vadot compatible = "img,pistachio-cr-periph", "syscon", "simple-bus"; 861c66ec88fSEmmanuel Vadot reg = <0x18148000 0x1000>; 862c66ec88fSEmmanuel Vadot clocks = <&clk_periph PERIPH_CLK_SYS>; 863c66ec88fSEmmanuel Vadot clock-names = "sys"; 864c66ec88fSEmmanuel Vadot #clock-cells = <1>; 865c66ec88fSEmmanuel Vadot 866c66ec88fSEmmanuel Vadot pistachio_reset: reset-controller { 867c66ec88fSEmmanuel Vadot compatible = "img,pistachio-reset"; 868c66ec88fSEmmanuel Vadot #reset-cells = <1>; 869c66ec88fSEmmanuel Vadot }; 870c66ec88fSEmmanuel Vadot }; 871c66ec88fSEmmanuel Vadot 872c66ec88fSEmmanuel Vadot cr_top: clk@18149000 { 873c66ec88fSEmmanuel Vadot compatible = "img,pistachio-cr-top", "syscon"; 874c66ec88fSEmmanuel Vadot reg = <0x18149000 0x200>; 875c66ec88fSEmmanuel Vadot #clock-cells = <1>; 876c66ec88fSEmmanuel Vadot }; 877c66ec88fSEmmanuel Vadot 878c66ec88fSEmmanuel Vadot hash: hash@18149600 { 879c66ec88fSEmmanuel Vadot compatible = "img,hash-accelerator"; 880c66ec88fSEmmanuel Vadot reg = <0x18149600 0x100>, <0x18101100 0x4>; 881c66ec88fSEmmanuel Vadot interrupts = <GIC_SHARED 59 IRQ_TYPE_LEVEL_HIGH>; 882c66ec88fSEmmanuel Vadot dmas = <&mdc 8 0xffffffff 0>; 883c66ec88fSEmmanuel Vadot dma-names = "tx"; 884c66ec88fSEmmanuel Vadot clocks = <&cr_periph SYS_CLK_HASH>, 885c66ec88fSEmmanuel Vadot <&clk_periph PERIPH_CLK_ROM>; 886c66ec88fSEmmanuel Vadot clock-names = "sys", "hash"; 887c66ec88fSEmmanuel Vadot }; 888c66ec88fSEmmanuel Vadot 889c66ec88fSEmmanuel Vadot gic: interrupt-controller@1bdc0000 { 890c66ec88fSEmmanuel Vadot compatible = "mti,gic"; 891c66ec88fSEmmanuel Vadot reg = <0x1bdc0000 0x20000>; 892c66ec88fSEmmanuel Vadot 893c66ec88fSEmmanuel Vadot interrupt-controller; 894c66ec88fSEmmanuel Vadot #interrupt-cells = <3>; 895c66ec88fSEmmanuel Vadot 896c66ec88fSEmmanuel Vadot timer { 897c66ec88fSEmmanuel Vadot compatible = "mti,gic-timer"; 898c66ec88fSEmmanuel Vadot interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>; 899c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_MIPS>; 900c66ec88fSEmmanuel Vadot }; 901c66ec88fSEmmanuel Vadot }; 902c66ec88fSEmmanuel Vadot 903*354d7675SEmmanuel Vadot cpc: cpc@1bde0000 { 904*354d7675SEmmanuel Vadot compatible = "mti,mips-cpc"; 905*354d7675SEmmanuel Vadot reg = <0x1bde0000 0x10000>; 906*354d7675SEmmanuel Vadot }; 907*354d7675SEmmanuel Vadot 908*354d7675SEmmanuel Vadot cdmm: cdmm@1bdf0000 { 909*354d7675SEmmanuel Vadot compatible = "mti,mips-cdmm"; 910*354d7675SEmmanuel Vadot reg = <0x1bdf0000 0x10000>; 911*354d7675SEmmanuel Vadot }; 912*354d7675SEmmanuel Vadot 913c66ec88fSEmmanuel Vadot usb_phy: usb-phy { 914c66ec88fSEmmanuel Vadot compatible = "img,pistachio-usb-phy"; 915c66ec88fSEmmanuel Vadot clocks = <&clk_core CLK_USB_PHY>; 916c66ec88fSEmmanuel Vadot clock-names = "usb_phy"; 917c66ec88fSEmmanuel Vadot assigned-clocks = <&clk_core CLK_USB_PHY_DIV>; 918c66ec88fSEmmanuel Vadot assigned-clock-rates = <50000000>; 919c66ec88fSEmmanuel Vadot img,refclk = <0x2>; 920c66ec88fSEmmanuel Vadot img,cr-top = <&cr_top>; 921c66ec88fSEmmanuel Vadot #phy-cells = <0>; 922c66ec88fSEmmanuel Vadot }; 923c66ec88fSEmmanuel Vadot 924c66ec88fSEmmanuel Vadot xtal: xtal { 925c66ec88fSEmmanuel Vadot compatible = "fixed-clock"; 926c66ec88fSEmmanuel Vadot #clock-cells = <0>; 927c66ec88fSEmmanuel Vadot clock-frequency = <52000000>; 928c66ec88fSEmmanuel Vadot clock-output-names = "xtal"; 929c66ec88fSEmmanuel Vadot }; 930c66ec88fSEmmanuel Vadot}; 931