Re: [PATCH v4 3/3] arm64: dts: meson: Add minimal support for Odroid-N2

From: Neil Armstrong
Date: Fri May 31 2019 - 05:25:25 EST


On 29/05/2019 20:13, Martin Blumenstingl wrote:
> Hi Neil,
>
> On Wed, May 29, 2019 at 12:09 PM Neil Armstrong <narmstrong@xxxxxxxxxxxx> wrote:
>>
>> On 27/05/2019 16:02, Neil Armstrong wrote:
>>> This patch adds basic support for :
>>> - Amlogic G12B, which is very similar to G12A
>>> - The HardKernel Odroid-N2 based on the S922X SoC
>>>
>>> The Amlogic G12B SoC is very similar with the G12A SoC, sharing
>>> most of the features and architecture, but with these differences :
>>> - The first CPU cluster only has 2xCortex-A53 instead of 4
>>> - G12B has a second cluster of 4xCortex-A73
>>> - Both cluster can achieve 2GHz instead of 1,8GHz for G12A
>>> - CPU Clock architecture is difference, thus needing a different
>>> compatible to handle this slight difference
>>> - Supports a MIPI CSI input
>>> - Embeds a Mali-G52 instead of a Mali-G31, but integration is the same
>>>
>>> Actual support is done in the same way as for the GXM support, including
>>> the G12A dtsi and redefining the CPU clusters.
>>> Unlike GXM, the first cluster is different, thus needing to remove
>>> the last 2 cpu nodes of the first cluster.
>>>
>>> Signed-off-by: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
>>> ---
>>> arch/arm64/boot/dts/amlogic/Makefile | 1 +
>>> .../boot/dts/amlogic/meson-g12b-odroid-n2.dts | 288 ++++++++++++++++++
>>> arch/arm64/boot/dts/amlogic/meson-g12b.dtsi | 82 +++++
>>> 3 files changed, 371 insertions(+)
>>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
>>> create mode 100644 arch/arm64/boot/dts/amlogic/meson-g12b.dtsi
>>>
>>> diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
>>> index e129c03ced14..07b861fe5fa5 100644
>>> --- a/arch/arm64/boot/dts/amlogic/Makefile
>>> +++ b/arch/arm64/boot/dts/amlogic/Makefile
>>> @@ -3,6 +3,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-axg-s400.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-g12a-sei510.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-g12a-u200.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-g12a-x96-max.dtb
>>> +dtb-$(CONFIG_ARCH_MESON) += meson-g12b-odroid-n2.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nanopi-k2.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-nexbox-a95x.dtb
>>> dtb-$(CONFIG_ARCH_MESON) += meson-gxbb-odroidc2.dtb
>>> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
>>> new file mode 100644
>>> index 000000000000..48783ead8dfb
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
>>> @@ -0,0 +1,288 @@
>>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>>> +/*
>>> + * Copyright (c) 2019 BayLibre, SAS
>>> + * Author: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
>>> + */
>>> +
>>> +/dts-v1/;
>>> +
>>
>> [...]
>>
>>> +
>>> + hub_5v: regulator-hub_5v {
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "HUB_5V";
>>> + regulator-min-microvolt = <5000000>;
>>> + regulator-max-microvolt = <5000000>;
>>> + vin-supply = <&vcc_5v>;
>>> +
>>> + /* Connected to the Hub CHIPENABLE, LOW sets low power state */
>>> + gpio = <&gpio GPIOH_5 GPIO_ACTIVE_HIGH>;
>>> + enable-active-high;
>>> + };
>>> +
>>> + usb_pwr_en: regulator-usb_pwr_en {
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "USB_PWR_EN";
>>> + regulator-min-microvolt = <5000000>;
>>> + regulator-max-microvolt = <5000000>;
>>> + vin-supply = <&hub_5v>;
>>> +
>>> + /* Connected to the microUSB port power enable */
>>> + gpio = <&gpio GPIOH_6 GPIO_ACTIVE_HIGH>;
>>> + enable-active-high;
>>> + };
>>> +
>>
>> [...]
>>
>>> +
>>> +&usb {
>>> + status = "okay";
>>> + vbus-supply = <&usb_pwr_en>;
>>> +};
>>> +
>>> +&usb2_phy0 {
>>> + phy-supply = <&vcc_5v>;
>>> +};
>>> +
>>> +&usb2_phy1 {
>>> + phy-supply = <&vcc_5v>;
>>> +};
>>
>> In fact, I need to fixup here :
>>
>> usb2_phy1 needs &hub_5v and regulator-usb_pwr_en depends on &vcc_5v instead...
> sounds fine for me because I don't see a better way for now
>
>> @Martin, can I still keep your reviewed-by for v5 ?
> yes, you can keep it
>
> when you re-send it: can you please add a comment to the phy-supply in
> usb2_phy1?
> I have this in mind: "enable the hub which is connected to this port"
> (imho this is a valuable hint together with the "CHIPENABLE" comment
> that you already have inside &hub_5v and it helps to make it easier to
> understand without having to test it on physical hardware)

Sure, thanks !

Neil

>
>
> Martin
>