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

From: Martin Blumenstingl
Date: Wed May 29 2019 - 14:17:05 EST


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)


Martin