Re: [PATCH 2/2] arm64: dts: meson: add support for the WeTek Core 2

From: Christian Hewitt
Date: Sat Jul 18 2020 - 05:14:58 EST



> On 18 Jul 2020, at 12:52 pm, Neil Armstrong <narmstrong@xxxxxxxxxxxx> wrote:
>
> Le 18/07/2020 Ã 07:00, Christian Hewitt a Ãcrit :
>> The WeTek Core2 is a commercial device based on the Amlogic Q200 reference
>> design but with the following differences:
>>
>> - 3GB RAM, 32GB eMMC
>> - Blue and Red LEDs used to signal on/off status
>> - uart_AO can be accessed after opening the case; soldering required
>> - USB OTG is not accessible (inside the case)
>> - Realtek RTL8152 Ethernet (internal USB connection)
>>
>> Signed-off-by: Christian Hewitt <christianshewitt@xxxxxxxxx>
>> ---
>> arch/arm64/boot/dts/amlogic/Makefile | 1 +
>> .../dts/amlogic/meson-gxm-wetek-core2.dts | 90 +++++++++++++++++++
>> 2 files changed, 91 insertions(+)
>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxm-wetek-core2.dts
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
>> index 5cac4d1d487d..4e2239ffcaa5 100644
>> --- a/arch/arm64/boot/dts/amlogic/Makefile
>> +++ b/arch/arm64/boot/dts/amlogic/Makefile
>> @@ -41,6 +41,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxm-s912-libretech-pc.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
>> +dtb-$(CONFIG_ARCH_MESON) += meson-gxm-wetek-core2.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-sm1-sei610.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
>> dtb-$(CONFIG_ARCH_MESON) += meson-sm1-odroid-c4.dtb
>> diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-wetek-core2.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-wetek-core2.dts
>> new file mode 100644
>> index 000000000000..44fc5ea38dc0
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/amlogic/meson-gxm-wetek-core2.dts
>> @@ -0,0 +1,90 @@
>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>> +/*
>> + * Copyright (c) 2020 Christian Hewitt <christianshewitt@xxxxxxxxx>
>> + */
>> +
>> +/dts-v1/;
>> +
>> +#include "meson-gxm.dtsi"
>> +#include "meson-gx-p23x-q20x.dtsi"
>> +#include <dt-bindings/input/input.h>
>> +#include <dt-bindings/leds/common.h>
>> +
>> +/ {
>> + compatible = "wetek,core2", "amlogic,s912", "amlogic,meson-gxm";
>> + model = "WeTek Core 2";
>> +
>> + memory@0 {
>> + device_type = "memory";
>> + reg = <0x0 0x0 0x0 0x80000000>; /* 2 GiB or 3 GiB */
>> + };
>> +
>> + leds {
>> + compatible = "gpio-leds";
>> +
>> + blue {
>> + color = <LED_COLOR_ID_BLUE>;
>> + function = LED_FUNCTION_STATUS;
>> + gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
>> + default-state = "on";
>> + };
>> + };
>> +
>> + adc-keys {
>> + compatible = "adc-keys";
>> + io-channels = <&saradc 0>;
>> + io-channel-names = "buttons";
>> + keyup-threshold-microvolt = <1710000>;
>> +
>> + button-update {
>> + label = "update";
>> + linux,code = <KEY_VENDOR>;
>> + press-threshold-microvolt = <10000>;
>> + };
>> + };
>> +
>> + gpio-keys-polled {
>> + compatible = "gpio-keys-polled";
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + poll-interval = <100>;
>> +
>> + button-power {
>> + label = "power";
>> + linux,code = <KEY_POWER>;
>> + gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
>> + };
>> + };
>> +};
>> +
>> +/* This is disabled as Realtek RTL8152 USB provides Ethernet */
>> +&ethmac {
>> + status = "disabled";
>> + phy-mode = "rmii";
>> + phy-handle = <&internal_phy>;
>
> I think you can remove these 2 lines
>
>> +};
>> +
>> +&internal_phy {
>> + pinctrl-0 = <&eth_link_led_pins>, <&eth_act_led_pins>;
>> + pinctrl-names = "default";
>
> Simply add :
> status = "disabled";
>
>> +};
>> +
>> +&ir {
>> + linux,rc-map-name = "rc-wetek-play2";
>> +};
>> +
>> +/* This is connected to the Bluetooth module: */
>> +&uart_A {
>> + status = "okay";
>> + pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
>> + pinctrl-names = "default";
>> + uart-has-rtscts;
>> +
>> + bluetooth {
>> + compatible = "brcm,bcm43438-bt";
>> + enable-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
>> + max-speed = <2000000>;
>> + clocks = <&wifi32k>;
>> + clock-names = "lpo";
>> + };
>> +};
>>
>
>
> Otherwise looks good
>
> Neil

Iâve tested both changes, both are fine so will send v2.

Thanks for the quick review.

Christian