1*69ed3df4SEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*69ed3df4SEmmanuel Vadot/* 3*69ed3df4SEmmanuel Vadot * Copyright 2025 Mobileye Vision Technologies Ltd. 4*69ed3df4SEmmanuel Vadot */ 5*69ed3df4SEmmanuel Vadot 6*69ed3df4SEmmanuel Vadot#include <dt-bindings/interrupt-controller/mips-gic.h> 7*69ed3df4SEmmanuel Vadot 8*69ed3df4SEmmanuel Vadot#include <dt-bindings/clock/mobileye,eyeq6lplus-clk.h> 9*69ed3df4SEmmanuel Vadot 10*69ed3df4SEmmanuel Vadot/ { 11*69ed3df4SEmmanuel Vadot #address-cells = <2>; 12*69ed3df4SEmmanuel Vadot #size-cells = <2>; 13*69ed3df4SEmmanuel Vadot cpus { 14*69ed3df4SEmmanuel Vadot #address-cells = <1>; 15*69ed3df4SEmmanuel Vadot #size-cells = <0>; 16*69ed3df4SEmmanuel Vadot cpu@0 { 17*69ed3df4SEmmanuel Vadot device_type = "cpu"; 18*69ed3df4SEmmanuel Vadot compatible = "img,i6500"; 19*69ed3df4SEmmanuel Vadot reg = <0>; 20*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_CPU_OCC>; 21*69ed3df4SEmmanuel Vadot }; 22*69ed3df4SEmmanuel Vadot }; 23*69ed3df4SEmmanuel Vadot 24*69ed3df4SEmmanuel Vadot cpu_intc: interrupt-controller { 25*69ed3df4SEmmanuel Vadot compatible = "mti,cpu-interrupt-controller"; 26*69ed3df4SEmmanuel Vadot interrupt-controller; 27*69ed3df4SEmmanuel Vadot #address-cells = <0>; 28*69ed3df4SEmmanuel Vadot #interrupt-cells = <1>; 29*69ed3df4SEmmanuel Vadot }; 30*69ed3df4SEmmanuel Vadot 31*69ed3df4SEmmanuel Vadot coherency-manager { 32*69ed3df4SEmmanuel Vadot compatible = "mobileye,eyeq6-cm"; 33*69ed3df4SEmmanuel Vadot }; 34*69ed3df4SEmmanuel Vadot 35*69ed3df4SEmmanuel Vadot xtal: clock-30000000 { 36*69ed3df4SEmmanuel Vadot compatible = "fixed-clock"; 37*69ed3df4SEmmanuel Vadot #clock-cells = <0>; 38*69ed3df4SEmmanuel Vadot clock-frequency = <30000000>; 39*69ed3df4SEmmanuel Vadot }; 40*69ed3df4SEmmanuel Vadot 41*69ed3df4SEmmanuel Vadot soc: soc { 42*69ed3df4SEmmanuel Vadot compatible = "simple-bus"; 43*69ed3df4SEmmanuel Vadot #address-cells = <2>; 44*69ed3df4SEmmanuel Vadot #size-cells = <2>; 45*69ed3df4SEmmanuel Vadot ranges; 46*69ed3df4SEmmanuel Vadot 47*69ed3df4SEmmanuel Vadot olb: system-controller@e8400000 { 48*69ed3df4SEmmanuel Vadot compatible = "mobileye,eyeq6lplus-olb", "syscon"; 49*69ed3df4SEmmanuel Vadot reg = <0 0xe8400000 0x0 0x80000>; 50*69ed3df4SEmmanuel Vadot #reset-cells = <2>; 51*69ed3df4SEmmanuel Vadot #clock-cells = <1>; 52*69ed3df4SEmmanuel Vadot clocks = <&xtal>; 53*69ed3df4SEmmanuel Vadot clock-names = "ref"; 54*69ed3df4SEmmanuel Vadot }; 55*69ed3df4SEmmanuel Vadot 56*69ed3df4SEmmanuel Vadot ospi: spi@e8800000 { 57*69ed3df4SEmmanuel Vadot compatible = "mobileye,eyeq5-ospi", "cdns,qspi-nor"; 58*69ed3df4SEmmanuel Vadot #address-cells = <1>; 59*69ed3df4SEmmanuel Vadot #size-cells = <0>; 60*69ed3df4SEmmanuel Vadot reg = <0 0xe8800000 0x0 0x100000>, 61*69ed3df4SEmmanuel Vadot <0 0xb0000000 0x0 0x30000000>; 62*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 63*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 10 IRQ_TYPE_LEVEL_HIGH>; 64*69ed3df4SEmmanuel Vadot cdns,fifo-depth = <128>; 65*69ed3df4SEmmanuel Vadot cdns,fifo-width = <4>; 66*69ed3df4SEmmanuel Vadot cdns,trigger-address = <0x00000000>; 67*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_OSPI>; 68*69ed3df4SEmmanuel Vadot status = "disabled"; 69*69ed3df4SEmmanuel Vadot }; 70*69ed3df4SEmmanuel Vadot 71*69ed3df4SEmmanuel Vadot spi0: spi@eac0d000 { 72*69ed3df4SEmmanuel Vadot compatible = "snps,dw-apb-ssi"; 73*69ed3df4SEmmanuel Vadot reg = <0 0xeac0d000 0x0 0x1000>; 74*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_SPI>; 75*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 76*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 11 IRQ_TYPE_LEVEL_HIGH>; 77*69ed3df4SEmmanuel Vadot resets = <&olb 0 0>; 78*69ed3df4SEmmanuel Vadot reset-names = "spi"; 79*69ed3df4SEmmanuel Vadot #address-cells = <1>; 80*69ed3df4SEmmanuel Vadot #size-cells = <0>; 81*69ed3df4SEmmanuel Vadot status = "disabled"; 82*69ed3df4SEmmanuel Vadot }; 83*69ed3df4SEmmanuel Vadot 84*69ed3df4SEmmanuel Vadot spi1: spi@eac0e000 { 85*69ed3df4SEmmanuel Vadot compatible = "snps,dw-apb-ssi"; 86*69ed3df4SEmmanuel Vadot reg = <0 0xeac0e000 0x0 0x1000>; 87*69ed3df4SEmmanuel Vadot spi-slave; 88*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_SPI>; 89*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 90*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 12 IRQ_TYPE_LEVEL_HIGH>; 91*69ed3df4SEmmanuel Vadot resets = <&olb 0 1>; 92*69ed3df4SEmmanuel Vadot reset-names = "spi"; 93*69ed3df4SEmmanuel Vadot #address-cells = <0>; 94*69ed3df4SEmmanuel Vadot #size-cells = <0>; 95*69ed3df4SEmmanuel Vadot status = "disabled"; 96*69ed3df4SEmmanuel Vadot }; 97*69ed3df4SEmmanuel Vadot 98*69ed3df4SEmmanuel Vadot uart0: serial@eac10000 { 99*69ed3df4SEmmanuel Vadot compatible = "snps,dw-apb-uart"; 100*69ed3df4SEmmanuel Vadot reg-shift = <2>; 101*69ed3df4SEmmanuel Vadot reg-io-width = <4>; 102*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_UART>; 103*69ed3df4SEmmanuel Vadot clock-frequency = <15625000>; 104*69ed3df4SEmmanuel Vadot reg = <0 0xeac10000 0x0 0x1000>; 105*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 106*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 8 IRQ_TYPE_LEVEL_HIGH>; 107*69ed3df4SEmmanuel Vadot resets = <&olb 0 2>; 108*69ed3df4SEmmanuel Vadot status = "disabled"; 109*69ed3df4SEmmanuel Vadot }; 110*69ed3df4SEmmanuel Vadot 111*69ed3df4SEmmanuel Vadot i2c0: i2c@eac11000 { 112*69ed3df4SEmmanuel Vadot compatible = "mobileye,eyeq6lplus-i2c", "snps,designware-i2c"; 113*69ed3df4SEmmanuel Vadot reg = <0 0xeac11000 0x0 0x1000>; 114*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 115*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 6 IRQ_TYPE_LEVEL_HIGH>; 116*69ed3df4SEmmanuel Vadot clock-frequency = <400000>; 117*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_I2C_SER>; 118*69ed3df4SEmmanuel Vadot resets = <&olb 0 3>; 119*69ed3df4SEmmanuel Vadot i2c-sda-hold-time-ns = <50>; 120*69ed3df4SEmmanuel Vadot status = "disabled"; 121*69ed3df4SEmmanuel Vadot }; 122*69ed3df4SEmmanuel Vadot 123*69ed3df4SEmmanuel Vadot i2c1: i2c@eac12000 { 124*69ed3df4SEmmanuel Vadot compatible = "mobileye,eyeq6lplus-i2c", "snps,designware-i2c"; 125*69ed3df4SEmmanuel Vadot reg = <0 0xeac12000 0x0 0x1000>; 126*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 127*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 7 IRQ_TYPE_LEVEL_HIGH>; 128*69ed3df4SEmmanuel Vadot clock-frequency = <400000>; 129*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_PER_I2C_SER>; 130*69ed3df4SEmmanuel Vadot resets = <&olb 0 4>; 131*69ed3df4SEmmanuel Vadot i2c-sda-hold-time-ns = <50>; 132*69ed3df4SEmmanuel Vadot status = "disabled"; 133*69ed3df4SEmmanuel Vadot }; 134*69ed3df4SEmmanuel Vadot 135*69ed3df4SEmmanuel Vadot gpio: gpio@eac14000 { 136*69ed3df4SEmmanuel Vadot compatible = "snps,dw-apb-gpio"; 137*69ed3df4SEmmanuel Vadot reg = <0x0 0xeac14000 0x0 0x1000>; 138*69ed3df4SEmmanuel Vadot #address-cells = <1>; 139*69ed3df4SEmmanuel Vadot #size-cells = <0>; 140*69ed3df4SEmmanuel Vadot resets = <&olb 0 13>; 141*69ed3df4SEmmanuel Vadot porta: gpio-port@0 { 142*69ed3df4SEmmanuel Vadot compatible = "snps,dw-apb-gpio-port"; 143*69ed3df4SEmmanuel Vadot gpio-controller; 144*69ed3df4SEmmanuel Vadot #gpio-cells = <2>; 145*69ed3df4SEmmanuel Vadot snps,nr-gpios = <32>; 146*69ed3df4SEmmanuel Vadot gpio-ranges = <&olb 0 0 32>; 147*69ed3df4SEmmanuel Vadot reg = <0>; 148*69ed3df4SEmmanuel Vadot interrupt-controller; 149*69ed3df4SEmmanuel Vadot #interrupt-cells = <2>; 150*69ed3df4SEmmanuel Vadot interrupt-parent = <&gic>; 151*69ed3df4SEmmanuel Vadot interrupts = <GIC_SHARED 13 IRQ_TYPE_LEVEL_HIGH>; 152*69ed3df4SEmmanuel Vadot }; 153*69ed3df4SEmmanuel Vadot }; 154*69ed3df4SEmmanuel Vadot 155*69ed3df4SEmmanuel Vadot gic: interrupt-controller@f0920000 { 156*69ed3df4SEmmanuel Vadot compatible = "mti,gic"; 157*69ed3df4SEmmanuel Vadot reg = <0x0 0xf0920000 0x0 0x20000>; 158*69ed3df4SEmmanuel Vadot interrupt-controller; 159*69ed3df4SEmmanuel Vadot #interrupt-cells = <3>; 160*69ed3df4SEmmanuel Vadot interrupt-parent = <&cpu_intc>; 161*69ed3df4SEmmanuel Vadot timer { 162*69ed3df4SEmmanuel Vadot compatible = "mti,gic-timer"; 163*69ed3df4SEmmanuel Vadot interrupts = <GIC_LOCAL 1 IRQ_TYPE_NONE>; 164*69ed3df4SEmmanuel Vadot clocks = <&olb EQ6LPC_CPU_OCC>; 165*69ed3df4SEmmanuel Vadot }; 166*69ed3df4SEmmanuel Vadot }; 167*69ed3df4SEmmanuel Vadot }; 168*69ed3df4SEmmanuel Vadot}; 169*69ed3df4SEmmanuel Vadot 170*69ed3df4SEmmanuel Vadot#include "eyeq6lplus-pins.dtsi" 171