mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

Amlogic GX reference boards shipped with Broadcom SDIO modules and this is described in device-tree files. These boards are rare, but their device-trees are commonly used to boot no-name Android STB's that closely follow the vendor reference design. For cost reasons these boxes often use non-Broadcom RTL8189ES/FS and QCA9377 SDIO modules, and for availability reasons the chipset/module used can change between batches of the same device. Testing shows the only requirement for WiFi driver probe and load is presence of the correct 'reg' value, and all Amlogic boards use the same <1> value. Removing the 'brcm,bcm4329-fmac' compatible allows a wider range of Android STB boards to boot from reference design device-trees and have working WiFi. Also convert the 'brcmf' node name to a more generic 'sdio' to reflect we are not always using the Broadcom brcmfmac driver now. Signed-off-by: Christian Hewitt <christianshewitt@gmail.com> Link: https://lore.kernel.org/r/20241127043358.3799737-1-christianshewitt@gmail.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
78 lines
1.6 KiB
Text
78 lines
1.6 KiB
Text
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2016 Endless Computers, Inc.
|
|
* Author: Carlo Caione <carlo@endlessm.com>
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
#include "meson-gxm.dtsi"
|
|
#include "meson-gx-p23x-q20x.dtsi"
|
|
|
|
/ {
|
|
compatible = "amlogic,q200", "amlogic,s912", "amlogic,meson-gxm";
|
|
model = "Amlogic Meson GXM (S912) Q200 Development Board";
|
|
|
|
adc-keys {
|
|
compatible = "adc-keys";
|
|
io-channels = <&saradc 0>;
|
|
io-channel-names = "buttons";
|
|
keyup-threshold-microvolt = <1710000>;
|
|
|
|
button-function {
|
|
label = "Update";
|
|
linux,code = <KEY_VENDOR>;
|
|
press-threshold-microvolt = <10000>;
|
|
};
|
|
};
|
|
|
|
gpio-keys-polled {
|
|
compatible = "gpio-keys-polled";
|
|
poll-interval = <100>;
|
|
|
|
button {
|
|
label = "power";
|
|
linux,code = <KEY_POWER>;
|
|
gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* Q200 has exclusive choice between internal or external PHY */
|
|
ðmac {
|
|
pinctrl-0 = <ð_pins>;
|
|
pinctrl-names = "default";
|
|
|
|
/* Select external PHY by default */
|
|
phy-handle = <&external_phy>;
|
|
|
|
amlogic,tx-delay-ns = <2>;
|
|
|
|
/* External PHY is in RGMII */
|
|
phy-mode = "rgmii";
|
|
};
|
|
|
|
&external_mdio {
|
|
external_phy: ethernet-phy@0 {
|
|
/* Realtek RTL8211F (0x001cc916) */
|
|
reg = <0>;
|
|
max-speed = <1000>;
|
|
|
|
/* External PHY reset is shared with internal PHY Led signal */
|
|
reset-assert-us = <10000>;
|
|
reset-deassert-us = <80000>;
|
|
reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
|
|
|
|
interrupt-parent = <&gpio_intc>;
|
|
/* MAC_INTR on GPIOZ_15 */
|
|
interrupts = <25 IRQ_TYPE_LEVEL_LOW>;
|
|
};
|
|
};
|
|
|
|
&sd_emmc_a {
|
|
sdio: wifi@1 {
|
|
reg = <1>;
|
|
};
|
|
};
|