// SPDX-License-Identifier: GPL-2.0-or-later OR MIT /* Copyright (c) 2020, Robert Marko */ #include "qcom-ipq4019.dtsi" #include #include #include #include / { model = "MikroTik hAP ac2"; compatible = "mikrotik,hap-ac2"; memory { device_type = "memory"; reg = <0x80000000 0x08000000>; }; chosen { stdout-path = "serial0:115200n8"; }; aliases { led-boot = &led_user; led-failsafe = &led_user; led-running = &led_user; led-upgrade = &led_user; }; soc { rng@22000 { status = "okay"; }; counter@4a1000 { compatible = "qcom,qca-gcnt"; reg = <0x4a1000 0x4>; }; tcsr@1949000 { compatible = "qcom,tcsr"; reg = <0x1949000 0x100>; qcom,wifi_glb_cfg = ; }; tcsr@194b000 { /* select hostmode */ compatible = "qcom,tcsr"; reg = <0x194b000 0x100>; qcom,usb-hsphy-mode-select = ; status = "okay"; }; ess_tcsr@1953000 { compatible = "qcom,tcsr"; reg = <0x1953000 0x1000>; qcom,ess-interface-select = ; }; tcsr@1957000 { compatible = "qcom,tcsr"; reg = <0x1957000 0x100>; qcom,wifi_noc_memtype_m0_m2 = ; }; usb3@8af8800 { status = "okay"; dwc3@8a00000 { phys = <&usb3_hs_phy>; phy-names = "usb2-phy"; }; }; crypto@8e3a000 { status = "okay"; }; watchdog@b017000 { status = "okay"; }; }; keys { compatible = "gpio-keys"; reset { label = "reset"; gpios = <&tlmm 63 GPIO_ACTIVE_LOW>; linux,code = ; }; mode { label = "mode"; gpios = <&tlmm 5 GPIO_ACTIVE_LOW>; linux,code = ; }; }; leds { compatible = "gpio-leds"; power { function = LED_FUNCTION_POWER; color = ; gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>; default-state = "keep"; panic-indicator; }; led_user: user { label = "green:user"; gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>; }; }; }; &tlmm { serial_pins: serial_pinmux { mux { pins = "gpio60", "gpio61"; function = "blsp_uart0"; bias-disable; }; }; spi_0_pins: spi_0_pinmux { pin { function = "blsp_spi0"; pins = "gpio55", "gpio56", "gpio57"; drive-strength = <2>; bias-disable; }; pin_cs { function = "gpio"; pins = "gpio54"; drive-strength = <2>; bias-disable; output-high; }; }; enable-usb-power { gpio-hog; gpios = <2 GPIO_ACTIVE_HIGH>; output-high; line-name = "enable USB power"; }; }; &blsp_dma { status = "okay"; }; &blsp1_spi1 { status = "okay"; pinctrl-0 = <&spi_0_pins>; pinctrl-names = "default"; cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>; flash@0 { reg = <0>; compatible = "jedec,spi-nor"; spi-max-frequency = <40000000>; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; partition@0 { label = "Qualcomm"; reg = <0x0 0x80000>; read-only; }; partition@80000 { compatible = "mikrotik,routerboot-partitions"; #address-cells = <1>; #size-cells = <1>; label = "RouterBoot"; reg = <0x80000 0x80000>; hard_config { read-only; size = <0x2000>; }; dtb_config { read-only; }; soft_config { }; }; partition@100000 { compatible = "mikrotik,minor"; label = "firmware"; reg = <0x100000 0xf00000>; }; }; }; }; &blsp1_uart1 { status = "okay"; pinctrl-0 = <&serial_pins>; pinctrl-names = "default"; }; &cryptobam { status = "okay"; }; &usb3_hs_phy { status = "okay"; }; &mdio { status = "okay"; }; ðphy0 { qcom,single-led-1000; qcom,single-led-100; qcom,single-led-10; }; ðphy1 { qcom,single-led-1000; qcom,single-led-100; qcom,single-led-10; }; ðphy2 { qcom,single-led-1000; qcom,single-led-100; qcom,single-led-10; }; ðphy3 { qcom,single-led-1000; qcom,single-led-100; qcom,single-led-10; }; ðphy4 { qcom,single-led-1000; qcom,single-led-100; qcom,single-led-10; }; &gmac { status = "okay"; }; &switch { status = "okay"; }; &swport1 { status = "okay"; label = "lan4"; }; &swport2 { status = "okay"; label = "lan3"; }; &swport3 { status = "okay"; label = "lan2"; }; &swport4 { status = "okay"; label = "lan1"; }; &swport5 { status = "okay"; }; &wifi0 { status = "okay"; qcom,ath10k-calibration-variant = "MikroTik-hAP-ac2"; }; &wifi1 { status = "okay"; qcom,ath10k-calibration-variant = "MikroTik-hAP-ac2"; };