1*0e9fed92SChristian Hewitt// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*0e9fed92SChristian Hewitt/* 3*0e9fed92SChristian Hewitt * Copyright (c) Christian Hewitt <christianshewitt@gmail.com> 4*0e9fed92SChristian Hewitt */ 5*0e9fed92SChristian Hewitt 6*0e9fed92SChristian Hewitt/dts-v1/; 7*0e9fed92SChristian Hewitt 8*0e9fed92SChristian Hewitt#include "meson-gxm.dtsi" 9*0e9fed92SChristian Hewitt#include "meson-gx-p23x-q20x.dtsi" 10*0e9fed92SChristian Hewitt#include <dt-bindings/input/input.h> 11*0e9fed92SChristian Hewitt#include <dt-bindings/leds/common.h> 12*0e9fed92SChristian Hewitt 13*0e9fed92SChristian Hewitt/ { 14*0e9fed92SChristian Hewitt compatible = "minix,neo-u9h", "amlogic,s912", "amlogic,meson-gxm"; 15*0e9fed92SChristian Hewitt model = "Minix Neo U9-H"; 16*0e9fed92SChristian Hewitt 17*0e9fed92SChristian Hewitt leds { 18*0e9fed92SChristian Hewitt compatible = "gpio-leds"; 19*0e9fed92SChristian Hewitt 20*0e9fed92SChristian Hewitt white { 21*0e9fed92SChristian Hewitt color = <LED_COLOR_ID_WHITE>; 22*0e9fed92SChristian Hewitt function = LED_FUNCTION_POWER; 23*0e9fed92SChristian Hewitt gpios = <&gpio_ao GPIOAO_9 GPIO_ACTIVE_HIGH>; 24*0e9fed92SChristian Hewitt default-state = "on"; 25*0e9fed92SChristian Hewitt panic-indicator; 26*0e9fed92SChristian Hewitt }; 27*0e9fed92SChristian Hewitt }; 28*0e9fed92SChristian Hewitt 29*0e9fed92SChristian Hewitt adc-keys { 30*0e9fed92SChristian Hewitt compatible = "adc-keys"; 31*0e9fed92SChristian Hewitt io-channels = <&saradc 0>; 32*0e9fed92SChristian Hewitt io-channel-names = "buttons"; 33*0e9fed92SChristian Hewitt keyup-threshold-microvolt = <1710000>; 34*0e9fed92SChristian Hewitt 35*0e9fed92SChristian Hewitt button-function { 36*0e9fed92SChristian Hewitt label = "update"; 37*0e9fed92SChristian Hewitt linux,code = <KEY_VENDOR>; 38*0e9fed92SChristian Hewitt press-threshold-microvolt = <10000>; 39*0e9fed92SChristian Hewitt }; 40*0e9fed92SChristian Hewitt }; 41*0e9fed92SChristian Hewitt 42*0e9fed92SChristian Hewitt gpio-keys-polled { 43*0e9fed92SChristian Hewitt compatible = "gpio-keys-polled"; 44*0e9fed92SChristian Hewitt #address-cells = <1>; 45*0e9fed92SChristian Hewitt #size-cells = <0>; 46*0e9fed92SChristian Hewitt poll-interval = <100>; 47*0e9fed92SChristian Hewitt 48*0e9fed92SChristian Hewitt button@0 { 49*0e9fed92SChristian Hewitt label = "power"; 50*0e9fed92SChristian Hewitt linux,code = <KEY_POWER>; 51*0e9fed92SChristian Hewitt gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>; 52*0e9fed92SChristian Hewitt }; 53*0e9fed92SChristian Hewitt }; 54*0e9fed92SChristian Hewitt}; 55*0e9fed92SChristian Hewitt 56*0e9fed92SChristian Hewittðmac { 57*0e9fed92SChristian Hewitt pinctrl-0 = <ð_pins>; 58*0e9fed92SChristian Hewitt pinctrl-names = "default"; 59*0e9fed92SChristian Hewitt phy-handle = <&external_phy>; 60*0e9fed92SChristian Hewitt amlogic,tx-delay-ns = <2>; 61*0e9fed92SChristian Hewitt phy-mode = "rgmii"; 62*0e9fed92SChristian Hewitt}; 63*0e9fed92SChristian Hewitt 64*0e9fed92SChristian Hewitt&external_mdio { 65*0e9fed92SChristian Hewitt external_phy: ethernet-phy@0 { 66*0e9fed92SChristian Hewitt /* Realtek RTL8211F (0x001cc916) */ 67*0e9fed92SChristian Hewitt reg = <0>; 68*0e9fed92SChristian Hewitt max-speed = <1000>; 69*0e9fed92SChristian Hewitt 70*0e9fed92SChristian Hewitt reset-assert-us = <10000>; 71*0e9fed92SChristian Hewitt reset-deassert-us = <80000>; 72*0e9fed92SChristian Hewitt reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>; 73*0e9fed92SChristian Hewitt 74*0e9fed92SChristian Hewitt interrupt-parent = <&gpio_intc>; 75*0e9fed92SChristian Hewitt /* MAC_INTR on GPIOZ_15 */ 76*0e9fed92SChristian Hewitt interrupts = <25 IRQ_TYPE_LEVEL_LOW>; 77*0e9fed92SChristian Hewitt }; 78*0e9fed92SChristian Hewitt}; 79*0e9fed92SChristian Hewitt 80*0e9fed92SChristian Hewitt&ir { 81*0e9fed92SChristian Hewitt linux,rc-map-name = "rc-minix-neo"; 82*0e9fed92SChristian Hewitt}; 83*0e9fed92SChristian Hewitt 84*0e9fed92SChristian Hewitt&i2c_B { 85*0e9fed92SChristian Hewitt status = "okay"; 86*0e9fed92SChristian Hewitt pinctrl-0 = <&i2c_b_pins>; 87*0e9fed92SChristian Hewitt pinctrl-names = "default"; 88*0e9fed92SChristian Hewitt 89*0e9fed92SChristian Hewitt rtc: rtc@51 { 90*0e9fed92SChristian Hewitt status = "okay"; 91*0e9fed92SChristian Hewitt compatible = "haoyu,hym8563"; 92*0e9fed92SChristian Hewitt reg = <0x51>; 93*0e9fed92SChristian Hewitt #clock-cells = <0>; 94*0e9fed92SChristian Hewitt clock-frequency = <32768>; 95*0e9fed92SChristian Hewitt clock-output-names = "xin32k"; 96*0e9fed92SChristian Hewitt wakeup-source; 97*0e9fed92SChristian Hewitt }; 98*0e9fed92SChristian Hewitt}; 99*0e9fed92SChristian Hewitt 100*0e9fed92SChristian Hewitt&sd_emmc_a { 101*0e9fed92SChristian Hewitt brcmf: wifi@1 { 102*0e9fed92SChristian Hewitt reg = <1>; 103*0e9fed92SChristian Hewitt compatible = "brcm,bcm4329-fmac"; 104*0e9fed92SChristian Hewitt }; 105*0e9fed92SChristian Hewitt}; 106*0e9fed92SChristian Hewitt 107*0e9fed92SChristian Hewitt&uart_A { 108*0e9fed92SChristian Hewitt status = "okay"; 109*0e9fed92SChristian Hewitt pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>; 110*0e9fed92SChristian Hewitt pinctrl-names = "default"; 111*0e9fed92SChristian Hewitt uart-has-rtscts; 112*0e9fed92SChristian Hewitt 113*0e9fed92SChristian Hewitt bluetooth { 114*0e9fed92SChristian Hewitt compatible = "brcm,bcm43438-bt"; 115*0e9fed92SChristian Hewitt shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; 116*0e9fed92SChristian Hewitt max-speed = <2000000>; 117*0e9fed92SChristian Hewitt clocks = <&wifi32k>; 118*0e9fed92SChristian Hewitt clock-names = "lpo"; 119*0e9fed92SChristian Hewitt }; 120*0e9fed92SChristian Hewitt}; 121