1cf294275SRafał Miłecki// SPDX-License-Identifier: GPL-2.0-only OR MIT 2cf294275SRafał Miłecki 3cf294275SRafał Miłecki#include <dt-bindings/clock/mediatek,mt7981-clk.h> 4cf294275SRafał Miłecki#include <dt-bindings/interrupt-controller/arm-gic.h> 5*8f5a9d6bSRafał Miłecki#include <dt-bindings/reset/mt7986-resets.h> 6cf294275SRafał Miłecki 7cf294275SRafał Miłecki/ { 8cf294275SRafał Miłecki compatible = "mediatek,mt7981b"; 9cf294275SRafał Miłecki interrupt-parent = <&gic>; 10cf294275SRafał Miłecki #address-cells = <2>; 11cf294275SRafał Miłecki #size-cells = <2>; 12cf294275SRafał Miłecki 13cf294275SRafał Miłecki cpus { 14cf294275SRafał Miłecki #address-cells = <1>; 15cf294275SRafał Miłecki #size-cells = <0>; 16cf294275SRafał Miłecki 17cf294275SRafał Miłecki cpu@0 { 18cf294275SRafał Miłecki compatible = "arm,cortex-a53"; 19cf294275SRafał Miłecki reg = <0x0>; 20cf294275SRafał Miłecki device_type = "cpu"; 21cf294275SRafał Miłecki enable-method = "psci"; 22cf294275SRafał Miłecki }; 23cf294275SRafał Miłecki 24cf294275SRafał Miłecki cpu@1 { 25cf294275SRafał Miłecki compatible = "arm,cortex-a53"; 26cf294275SRafał Miłecki reg = <0x1>; 27cf294275SRafał Miłecki device_type = "cpu"; 28cf294275SRafał Miłecki enable-method = "psci"; 29cf294275SRafał Miłecki }; 30cf294275SRafał Miłecki }; 31cf294275SRafał Miłecki 32cf294275SRafał Miłecki oscillator-40m { 33cf294275SRafał Miłecki compatible = "fixed-clock"; 34cf294275SRafał Miłecki clock-frequency = <40000000>; 35cf294275SRafał Miłecki clock-output-names = "clkxtal"; 36cf294275SRafał Miłecki #clock-cells = <0>; 37cf294275SRafał Miłecki }; 38cf294275SRafał Miłecki 39cf294275SRafał Miłecki psci { 40cf294275SRafał Miłecki compatible = "arm,psci-1.0"; 41cf294275SRafał Miłecki method = "smc"; 42cf294275SRafał Miłecki }; 43cf294275SRafał Miłecki 44cf294275SRafał Miłecki soc { 45cf294275SRafał Miłecki compatible = "simple-bus"; 46cf294275SRafał Miłecki ranges; 47cf294275SRafał Miłecki #address-cells = <2>; 48cf294275SRafał Miłecki #size-cells = <2>; 49cf294275SRafał Miłecki 50cf294275SRafał Miłecki gic: interrupt-controller@c000000 { 51cf294275SRafał Miłecki compatible = "arm,gic-v3"; 52cf294275SRafał Miłecki reg = <0 0x0c000000 0 0x40000>, /* GICD */ 53cf294275SRafał Miłecki <0 0x0c080000 0 0x200000>; /* GICR */ 54cf294275SRafał Miłecki interrupt-parent = <&gic>; 55cf294275SRafał Miłecki interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 56cf294275SRafał Miłecki interrupt-controller; 57cf294275SRafał Miłecki #interrupt-cells = <3>; 58cf294275SRafał Miłecki }; 59cf294275SRafał Miłecki 60cf294275SRafał Miłecki infracfg: clock-controller@10001000 { 61cf294275SRafał Miłecki compatible = "mediatek,mt7981-infracfg", "syscon"; 62cf294275SRafał Miłecki reg = <0 0x10001000 0 0x1000>; 63cf294275SRafał Miłecki #clock-cells = <1>; 64cf294275SRafał Miłecki }; 65cf294275SRafał Miłecki 66*8f5a9d6bSRafał Miłecki topckgen: clock-controller@1001b000 { 67cf294275SRafał Miłecki compatible = "mediatek,mt7981-topckgen", "syscon"; 68cf294275SRafał Miłecki reg = <0 0x1001b000 0 0x1000>; 69cf294275SRafał Miłecki #clock-cells = <1>; 70cf294275SRafał Miłecki }; 71cf294275SRafał Miłecki 72*8f5a9d6bSRafał Miłecki watchdog: watchdog@1001c000 { 73*8f5a9d6bSRafał Miłecki compatible = "mediatek,mt7986-wdt"; 74*8f5a9d6bSRafał Miłecki reg = <0 0x1001c000 0 0x1000>; 75*8f5a9d6bSRafał Miłecki interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 76*8f5a9d6bSRafał Miłecki #reset-cells = <1>; 77*8f5a9d6bSRafał Miłecki }; 78*8f5a9d6bSRafał Miłecki 79cf294275SRafał Miłecki clock-controller@1001e000 { 80cf294275SRafał Miłecki compatible = "mediatek,mt7981-apmixedsys"; 81cf294275SRafał Miłecki reg = <0 0x1001e000 0 0x1000>; 82cf294275SRafał Miłecki #clock-cells = <1>; 83cf294275SRafał Miłecki }; 84cf294275SRafał Miłecki 85cf294275SRafał Miłecki pwm@10048000 { 86cf294275SRafał Miłecki compatible = "mediatek,mt7981-pwm"; 87cf294275SRafał Miłecki reg = <0 0x10048000 0 0x1000>; 88cf294275SRafał Miłecki clocks = <&infracfg CLK_INFRA_PWM_STA>, 89cf294275SRafał Miłecki <&infracfg CLK_INFRA_PWM_HCK>, 90cf294275SRafał Miłecki <&infracfg CLK_INFRA_PWM1_CK>, 91cf294275SRafał Miłecki <&infracfg CLK_INFRA_PWM2_CK>, 92cf294275SRafał Miłecki <&infracfg CLK_INFRA_PWM3_CK>; 93cf294275SRafał Miłecki clock-names = "top", "main", "pwm1", "pwm2", "pwm3"; 94cf294275SRafał Miłecki #pwm-cells = <2>; 95cf294275SRafał Miłecki }; 96cf294275SRafał Miłecki 9762b24c7fSRafał Miłecki pio: pinctrl@11d00000 { 9862b24c7fSRafał Miłecki compatible = "mediatek,mt7981-pinctrl"; 9962b24c7fSRafał Miłecki reg = <0 0x11d00000 0 0x1000>, 10062b24c7fSRafał Miłecki <0 0x11c00000 0 0x1000>, 10162b24c7fSRafał Miłecki <0 0x11c10000 0 0x1000>, 10262b24c7fSRafał Miłecki <0 0x11d20000 0 0x1000>, 10362b24c7fSRafał Miłecki <0 0x11e00000 0 0x1000>, 10462b24c7fSRafał Miłecki <0 0x11e20000 0 0x1000>, 10562b24c7fSRafał Miłecki <0 0x11f00000 0 0x1000>, 10662b24c7fSRafał Miłecki <0 0x11f10000 0 0x1000>, 10762b24c7fSRafał Miłecki <0 0x1000b000 0 0x1000>; 10862b24c7fSRafał Miłecki reg-names = "gpio", "iocfg_rt", "iocfg_rm", "iocfg_rb", "iocfg_lb", 10962b24c7fSRafał Miłecki "iocfg_bl", "iocfg_tm", "iocfg_tl", "eint"; 11062b24c7fSRafał Miłecki interrupt-controller; 11162b24c7fSRafał Miłecki interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>; 11262b24c7fSRafał Miłecki interrupt-parent = <&gic>; 11362b24c7fSRafał Miłecki gpio-ranges = <&pio 0 0 56>; 11462b24c7fSRafał Miłecki gpio-controller; 11562b24c7fSRafał Miłecki #gpio-cells = <2>; 11662b24c7fSRafał Miłecki #interrupt-cells = <2>; 11762b24c7fSRafał Miłecki }; 11862b24c7fSRafał Miłecki 119cf294275SRafał Miłecki clock-controller@15000000 { 120cf294275SRafał Miłecki compatible = "mediatek,mt7981-ethsys", "syscon"; 121cf294275SRafał Miłecki reg = <0 0x15000000 0 0x1000>; 122cf294275SRafał Miłecki #clock-cells = <1>; 123cf294275SRafał Miłecki #reset-cells = <1>; 124cf294275SRafał Miłecki }; 125*8f5a9d6bSRafał Miłecki 126*8f5a9d6bSRafał Miłecki wifi@18000000 { 127*8f5a9d6bSRafał Miłecki compatible = "mediatek,mt7981-wmac"; 128*8f5a9d6bSRafał Miłecki reg = <0 0x18000000 0 0x1000000>, 129*8f5a9d6bSRafał Miłecki <0 0x10003000 0 0x1000>, 130*8f5a9d6bSRafał Miłecki <0 0x11d10000 0 0x1000>; 131*8f5a9d6bSRafał Miłecki interrupts = <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>, 132*8f5a9d6bSRafał Miłecki <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>, 133*8f5a9d6bSRafał Miłecki <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>, 134*8f5a9d6bSRafał Miłecki <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>; 135*8f5a9d6bSRafał Miłecki clocks = <&topckgen CLK_TOP_NETSYS_MCU_SEL>, 136*8f5a9d6bSRafał Miłecki <&topckgen CLK_TOP_AP2CNN_HOST_SEL>; 137*8f5a9d6bSRafał Miłecki clock-names = "mcu", "ap2conn"; 138*8f5a9d6bSRafał Miłecki resets = <&watchdog MT7986_TOPRGU_CONSYS_SW_RST>; 139*8f5a9d6bSRafał Miłecki reset-names = "consys"; 140*8f5a9d6bSRafał Miłecki }; 141cf294275SRafał Miłecki }; 142cf294275SRafał Miłecki 143cf294275SRafał Miłecki timer { 144cf294275SRafał Miłecki compatible = "arm,armv8-timer"; 145cf294275SRafał Miłecki interrupt-parent = <&gic>; 146cf294275SRafał Miłecki interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 147cf294275SRafał Miłecki <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 148cf294275SRafał Miłecki <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 149cf294275SRafał Miłecki <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 150cf294275SRafał Miłecki }; 151cf294275SRafał Miłecki}; 152