diff mbox series

ARM64: dts: allwinner: Add devicetree for pine H64 modelA evaluation board

Message ID 20190808084253.10573-1-clabbe.montjoie@gmail.com
State New
Headers show
Series ARM64: dts: allwinner: Add devicetree for pine H64 modelA evaluation board | expand

Commit Message

Corentin Labbe Aug. 8, 2019, 8:42 a.m. UTC
This patch adds the evaluation variant of the model A of the PineH64.
The model A has the same size of the pine64 and has a PCIE slot.

The only devicetree difference with current pineH64, is the PHY
regulator.

Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

---
 arch/arm64/boot/dts/allwinner/Makefile        |  1 +
 .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++
 2 files changed, 27 insertions(+)
 create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

-- 
2.21.0

Comments

Clément Péron Aug. 8, 2019, 2:50 p.m. UTC | #1
Hi,

On Thu, 8 Aug 2019 at 10:42, Corentin Labbe <clabbe.montjoie@gmail.com> wrote:
>

> This patch adds the evaluation variant of the model A of the PineH64.

> The model A has the same size of the pine64 and has a PCIE slot.

>

> The only devicetree difference with current pineH64, is the PHY

> regulator.


You also need to add the board in
"Documentation/devicetree/bindings/arm/sunxi.yaml"

Regards,
Clément

>

> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> ---

>  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

>  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

>  2 files changed, 27 insertions(+)

>  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

>

> diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> index f6db0611cb85..9a02166cbf72 100644

> --- a/arch/arm64/boot/dts/allwinner/Makefile

> +++ b/arch/arm64/boot/dts/allwinner/Makefile

> @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> new file mode 100644

> index 000000000000..d8ff02747efe

> --- /dev/null

> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> @@ -0,0 +1,26 @@

> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> +/*

> + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> + */

> +

> +#include "sun50i-h6-pine-h64.dts"

> +

> +/ {

> +       model = "Pine H64 model A evaluation board";

> +       compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> +

> +       reg_gmac_3v3: gmac-3v3 {

> +               compatible = "regulator-fixed";

> +               regulator-name = "vcc-gmac-3v3";

> +               regulator-min-microvolt = <3300000>;

> +               regulator-max-microvolt = <3300000>;

> +               startup-delay-us = <100000>;

> +               gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> +               enable-active-high;

> +       };

> +

> +};

> +

> +&emac {

> +       phy-supply = <&reg_gmac_3v3>;

> +};

> --

> 2.21.0

>

> --

> You received this message because you are subscribed to the Google Groups "linux-sunxi" group.

> To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/linux-sunxi/20190808084253.10573-1-clabbe.montjoie%40gmail.com.
Jernej Škrabec Aug. 12, 2019, 10:56 a.m. UTC | #2
Dne četrtek, 08. avgust 2019 ob 10:42:53 CEST je Corentin Labbe napisal(a):
> This patch adds the evaluation variant of the model A of the PineH64.

> The model A has the same size of the pine64 and has a PCIE slot.

> 

> The only devicetree difference with current pineH64, is the PHY

> regulator.


I have Model A board which also needs ddc-en-gpios property for HDMI connector 
in order for HDMI to work correctly. Otherwise it will just use 1024x768 
resolution. Can you confirm that?

Best regards,
Jernej

> 

> Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> ---

>  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

>  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

>  2 files changed, 27 insertions(+)

>  create mode 100644

> arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> 

> diff --git a/arch/arm64/boot/dts/allwinner/Makefile

> b/arch/arm64/boot/dts/allwinner/Makefile index f6db0611cb85..9a02166cbf72

> 100644

> --- a/arch/arm64/boot/dts/allwinner/Makefile

> +++ b/arch/arm64/boot/dts/allwinner/Makefile

> @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

>  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> diff --git

> a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts new file

> mode 100644

> index 000000000000..d8ff02747efe

> --- /dev/null

> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> @@ -0,0 +1,26 @@

> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> +/*

> + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> + */

> +

> +#include "sun50i-h6-pine-h64.dts"

> +

> +/ {

> +	model = "Pine H64 model A evaluation board";

> +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> +

> +	reg_gmac_3v3: gmac-3v3 {

> +		compatible = "regulator-fixed";

> +		regulator-name = "vcc-gmac-3v3";

> +		regulator-min-microvolt = <3300000>;

> +		regulator-max-microvolt = <3300000>;

> +		startup-delay-us = <100000>;

> +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> +		enable-active-high;

> +	};

> +

> +};

> +

> +&emac {

> +	phy-supply = <&reg_gmac_3v3>;

> +};
Corentin Labbe Aug. 14, 2019, 1:07 p.m. UTC | #3
On Thu, Aug 08, 2019 at 04:50:35PM +0200, Clément Péron wrote:
> Hi,

> 

> On Thu, 8 Aug 2019 at 10:42, Corentin Labbe <clabbe.montjoie@gmail.com> wrote:

> >

> > This patch adds the evaluation variant of the model A of the PineH64.

> > The model A has the same size of the pine64 and has a PCIE slot.

> >

> > The only devicetree difference with current pineH64, is the PHY

> > regulator.

> 

> You also need to add the board in

> "Documentation/devicetree/bindings/arm/sunxi.yaml"

> 

> Regards,

> Clément

> 


Done, thanks

Regards
Corentin Labbe Aug. 14, 2019, 1:20 p.m. UTC | #4
On Mon, Aug 12, 2019 at 12:56:56PM +0200, Jernej Škrabec wrote:
> Dne četrtek, 08. avgust 2019 ob 10:42:53 CEST je Corentin Labbe napisal(a):

> > This patch adds the evaluation variant of the model A of the PineH64.

> > The model A has the same size of the pine64 and has a PCIE slot.

> > 

> > The only devicetree difference with current pineH64, is the PHY

> > regulator.

> 

> I have Model A board which also needs ddc-en-gpios property for HDMI connector 

> in order for HDMI to work correctly. Otherwise it will just use 1024x768 

> resolution. Can you confirm that?

> 

> Best regards,

> Jernej

> 


Sorry I didnt use at all video stuff (like HDMI), so I cannot answer now.

Could you send me a patch against my future v2 and I could test with/without.

Regards
Clément Péron Aug. 14, 2019, 1:28 p.m. UTC | #5
Hi,

On Wed, 14 Aug 2019 at 15:20, Corentin Labbe <clabbe.montjoie@gmail.com> wrote:
>

> On Mon, Aug 12, 2019 at 12:56:56PM +0200, Jernej Škrabec wrote:

> > Dne četrtek, 08. avgust 2019 ob 10:42:53 CEST je Corentin Labbe napisal(a):

> > > This patch adds the evaluation variant of the model A of the PineH64.

> > > The model A has the same size of the pine64 and has a PCIE slot.

> > >

> > > The only devicetree difference with current pineH64, is the PHY

> > > regulator.

> >

> > I have Model A board which also needs ddc-en-gpios property for HDMI connector

> > in order for HDMI to work correctly. Otherwise it will just use 1024x768

> > resolution. Can you confirm that?


Schematics Rev A:
http://files.pine64.org/doc/Pine%20H64/Pine%20H64%20Ver1.1-20180104.pdf

Rev B:
http://files.pine64.org/doc/Pine%20H64/PINE-H6-model-B-20181212-schematic.pdf

There is a DDC_EN on REV A not on REV B

Regards,
Clément

> >

> > Best regards,

> > Jernej

> >

>

> Sorry I didnt use at all video stuff (like HDMI), so I cannot answer now.

>

> Could you send me a patch against my future v2 and I could test with/without.

>

> Regards

>

> --

> You received this message because you are subscribed to the Google Groups "linux-sunxi" group.

> To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe@googlegroups.com.

> To view this discussion on the web, visit https://groups.google.com/d/msgid/linux-sunxi/20190814132001.GC24324%40Red.
Maxime Ripard Aug. 14, 2019, 1:33 p.m. UTC | #6
On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:
> On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > This patch adds the evaluation variant of the model A of the PineH64.

> > > The model A has the same size of the pine64 and has a PCIE slot.

> > >

> > > The only devicetree difference with current pineH64, is the PHY

> > > regulator.

> > >

> > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > ---

> > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > >  2 files changed, 27 insertions(+)

> > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > >

> > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > index f6db0611cb85..9a02166cbf72 100644

> > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > new file mode 100644

> > > index 000000000000..d8ff02747efe

> > > --- /dev/null

> > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > @@ -0,0 +1,26 @@

> > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > +/*

> > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > + */

> > > +

> > > +#include "sun50i-h6-pine-h64.dts"

> > > +

> > > +/ {

> > > +	model = "Pine H64 model A evaluation board";

> > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > +

> > > +	reg_gmac_3v3: gmac-3v3 {

> > > +		compatible = "regulator-fixed";

> > > +		regulator-name = "vcc-gmac-3v3";

> > > +		regulator-min-microvolt = <3300000>;

> > > +		regulator-max-microvolt = <3300000>;

> > > +		startup-delay-us = <100000>;

> > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > +		enable-active-high;

> > > +	};

> > > +

> > > +};

> > > +

> > > +&emac {

> > > +	phy-supply = <&reg_gmac_3v3>;

> > > +};

> >

> > I might be missing some context here, but I'm pretty sure that the

> > initial intent of the pine h64 DTS was to support the model A all

> > along.

> >

>

> The regulator changed between modelA and B.

> See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.


I'm not sure what your point is, but mine is that everything about the
model A should be in sun50i-h6-pine-h64.dts.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Corentin Labbe Aug. 16, 2019, 9:35 a.m. UTC | #7
On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard wrote:
> On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:

> > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > >

> > > > The only devicetree difference with current pineH64, is the PHY

> > > > regulator.

> > > >

> > > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > ---

> > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > > >  2 files changed, 27 insertions(+)

> > > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > >

> > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > > index f6db0611cb85..9a02166cbf72 100644

> > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > new file mode 100644

> > > > index 000000000000..d8ff02747efe

> > > > --- /dev/null

> > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > @@ -0,0 +1,26 @@

> > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > +/*

> > > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > + */

> > > > +

> > > > +#include "sun50i-h6-pine-h64.dts"

> > > > +

> > > > +/ {

> > > > +	model = "Pine H64 model A evaluation board";

> > > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > > +

> > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > +		compatible = "regulator-fixed";

> > > > +		regulator-name = "vcc-gmac-3v3";

> > > > +		regulator-min-microvolt = <3300000>;

> > > > +		regulator-max-microvolt = <3300000>;

> > > > +		startup-delay-us = <100000>;

> > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > +		enable-active-high;

> > > > +	};

> > > > +

> > > > +};

> > > > +

> > > > +&emac {

> > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > +};

> > >

> > > I might be missing some context here, but I'm pretty sure that the

> > > initial intent of the pine h64 DTS was to support the model A all

> > > along.

> > >

> >

> > The regulator changed between modelA and B.

> > See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.

> 

> I'm not sure what your point is, but mine is that everything about the

> model A should be in sun50i-h6-pine-h64.dts.

> 


model A and B are different enough for distinct dtb, (see sub-thread on HDMI difference for an other difference than PHY regulator)
And clearly, the current dtb is for model B.

So do you mean that we need to create a new dtb for model B ? (and hack the current back to model A ?)

Regards
Jernej Škrabec Aug. 16, 2019, 9:50 a.m. UTC | #8
Dne sreda, 14. avgust 2019 ob 15:28:53 CEST je Clément Péron napisal(a):
> Hi,

> 

> On Wed, 14 Aug 2019 at 15:20, Corentin Labbe <clabbe.montjoie@gmail.com> 

wrote:
> > On Mon, Aug 12, 2019 at 12:56:56PM +0200, Jernej Škrabec wrote:

> > > Dne četrtek, 08. avgust 2019 ob 10:42:53 CEST je Corentin Labbe 

napisal(a):
> > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > > 

> > > > The only devicetree difference with current pineH64, is the PHY

> > > > regulator.

> > > 

> > > I have Model A board which also needs ddc-en-gpios property for HDMI

> > > connector in order for HDMI to work correctly. Otherwise it will just

> > > use 1024x768 resolution. Can you confirm that?

> 

> Schematics Rev A:

> http://files.pine64.org/doc/Pine%20H64/Pine%20H64%20Ver1.1-20180104.pdf

> 

> Rev B:

> http://files.pine64.org/doc/Pine%20H64/PINE-H6-model-B-20181212-schematic.pd

> f

> 

> There is a DDC_EN on REV A not on REV B

> 

> Regards,

> Clément

> 

> > > Best regards,

> > > Jernej

> > 

> > Sorry I didnt use at all video stuff (like HDMI), so I cannot answer now.

> > 

> > Could you send me a patch against my future v2 and I could test

> > with/without.


I don't have access to my Model A board currently, but this should suffice:

&connector {
	ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */
};

Best regards,
Jernej

> > 

> > Regards

> > 

> > --

> > You received this message because you are subscribed to the Google Groups

> > "linux-sunxi" group. To unsubscribe from this group and stop receiving

> > emails from it, send an email to

> > linux-sunxi+unsubscribe@googlegroups.com. To view this discussion on the

> > web, visit

> > https://groups.google.com/d/msgid/linux-sunxi/20190814132001.GC24324%40Re

> > d.
Maxime Ripard Aug. 16, 2019, 11:36 a.m. UTC | #9
On Fri, Aug 16, 2019 at 11:35:13AM +0200, Corentin Labbe wrote:
> On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard wrote:

> > On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:

> > > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > > >

> > > > > The only devicetree difference with current pineH64, is the PHY

> > > > > regulator.

> > > > >

> > > > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > ---

> > > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > > > >  2 files changed, 27 insertions(+)

> > > > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > >

> > > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > index f6db0611cb85..9a02166cbf72 100644

> > > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > new file mode 100644

> > > > > index 000000000000..d8ff02747efe

> > > > > --- /dev/null

> > > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > @@ -0,0 +1,26 @@

> > > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > > +/*

> > > > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > + */

> > > > > +

> > > > > +#include "sun50i-h6-pine-h64.dts"

> > > > > +

> > > > > +/ {

> > > > > +	model = "Pine H64 model A evaluation board";

> > > > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > > > +

> > > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > > +		compatible = "regulator-fixed";

> > > > > +		regulator-name = "vcc-gmac-3v3";

> > > > > +		regulator-min-microvolt = <3300000>;

> > > > > +		regulator-max-microvolt = <3300000>;

> > > > > +		startup-delay-us = <100000>;

> > > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > > +		enable-active-high;

> > > > > +	};

> > > > > +

> > > > > +};

> > > > > +

> > > > > +&emac {

> > > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > > +};

> > > >

> > > > I might be missing some context here, but I'm pretty sure that the

> > > > initial intent of the pine h64 DTS was to support the model A all

> > > > along.

> > > >

> > >

> > > The regulator changed between modelA and B.

> > > See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.

> >

> > I'm not sure what your point is, but mine is that everything about the

> > model A should be in sun50i-h6-pine-h64.dts.

> >

>

> model A and B are different enough for distinct dtb, (see sub-thread

> on HDMI difference for an other difference than PHY regulator)


I don't mind having separate DTBs for model A and model B.

> And clearly, the current dtb is for model B.


That DTS was added almost a year before the model B was announced, and
no commit to that file mention the model B, so it's definitely not
clear.

> So do you mean that we need to create a new dtb for model B ? (and

> hack the current back to model A ?)


I'd prefer not to hack anything, but yes

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Corentin Labbe Aug. 16, 2019, 11:57 a.m. UTC | #10
On Fri, Aug 16, 2019 at 01:36:50PM +0200, Maxime Ripard wrote:
> On Fri, Aug 16, 2019 at 11:35:13AM +0200, Corentin Labbe wrote:

> > On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard wrote:

> > > On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:

> > > > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > > > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > > > >

> > > > > > The only devicetree difference with current pineH64, is the PHY

> > > > > > regulator.

> > > > > >

> > > > > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > ---

> > > > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > > > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > > > > >  2 files changed, 27 insertions(+)

> > > > > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > >

> > > > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > index f6db0611cb85..9a02166cbf72 100644

> > > > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > new file mode 100644

> > > > > > index 000000000000..d8ff02747efe

> > > > > > --- /dev/null

> > > > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > @@ -0,0 +1,26 @@

> > > > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > > > +/*

> > > > > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > + */

> > > > > > +

> > > > > > +#include "sun50i-h6-pine-h64.dts"

> > > > > > +

> > > > > > +/ {

> > > > > > +	model = "Pine H64 model A evaluation board";

> > > > > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > > > > +

> > > > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > > > +		compatible = "regulator-fixed";

> > > > > > +		regulator-name = "vcc-gmac-3v3";

> > > > > > +		regulator-min-microvolt = <3300000>;

> > > > > > +		regulator-max-microvolt = <3300000>;

> > > > > > +		startup-delay-us = <100000>;

> > > > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > > > +		enable-active-high;

> > > > > > +	};

> > > > > > +

> > > > > > +};

> > > > > > +

> > > > > > +&emac {

> > > > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > > > +};

> > > > >

> > > > > I might be missing some context here, but I'm pretty sure that the

> > > > > initial intent of the pine h64 DTS was to support the model A all

> > > > > along.

> > > > >

> > > >

> > > > The regulator changed between modelA and B.

> > > > See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.

> > >

> > > I'm not sure what your point is, but mine is that everything about the

> > > model A should be in sun50i-h6-pine-h64.dts.

> > >

> >

> > model A and B are different enough for distinct dtb, (see sub-thread

> > on HDMI difference for an other difference than PHY regulator)

> 

> I don't mind having separate DTBs for model A and model B.

> 

> > And clearly, the current dtb is for model B.

> 

> That DTS was added almost a year before the model B was announced, and

> no commit to that file mention the model B, so it's definitely not

> clear.


Normal it was added for model A (without any ethernet/HDMI support, so nothing distinct from model B), and the modelB ethernet/HDMI support cames after.

> 

> > So do you mean that we need to create a new dtb for model B ? (and

> > hack the current back to model A ?)

> 

> I'd prefer not to hack anything, but yes

> 


Since model A is not public (only evaluations boards exists), the probability of a production model A is low and the current dtb is perfect for model B , could you reconsider this ?
Maxime Ripard Aug. 16, 2019, 1:52 p.m. UTC | #11
On Fri, Aug 16, 2019 at 01:57:50PM +0200, Corentin Labbe wrote:
> On Fri, Aug 16, 2019 at 01:36:50PM +0200, Maxime Ripard wrote:

> > On Fri, Aug 16, 2019 at 11:35:13AM +0200, Corentin Labbe wrote:

> > > On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard wrote:

> > > > On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:

> > > > > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > > > > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > > > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > > > > >

> > > > > > > The only devicetree difference with current pineH64, is the PHY

> > > > > > > regulator.

> > > > > > >

> > > > > > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > > ---

> > > > > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > > > > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > > > > > >  2 files changed, 27 insertions(+)

> > > > > > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > >

> > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > index f6db0611cb85..9a02166cbf72 100644

> > > > > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > > new file mode 100644

> > > > > > > index 000000000000..d8ff02747efe

> > > > > > > --- /dev/null

> > > > > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > > @@ -0,0 +1,26 @@

> > > > > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > > > > +/*

> > > > > > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > > + */

> > > > > > > +

> > > > > > > +#include "sun50i-h6-pine-h64.dts"

> > > > > > > +

> > > > > > > +/ {

> > > > > > > +	model = "Pine H64 model A evaluation board";

> > > > > > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > > > > > +

> > > > > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > > > > +		compatible = "regulator-fixed";

> > > > > > > +		regulator-name = "vcc-gmac-3v3";

> > > > > > > +		regulator-min-microvolt = <3300000>;

> > > > > > > +		regulator-max-microvolt = <3300000>;

> > > > > > > +		startup-delay-us = <100000>;

> > > > > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > > > > +		enable-active-high;

> > > > > > > +	};

> > > > > > > +

> > > > > > > +};

> > > > > > > +

> > > > > > > +&emac {

> > > > > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > > > > +};

> > > > > >

> > > > > > I might be missing some context here, but I'm pretty sure that the

> > > > > > initial intent of the pine h64 DTS was to support the model A all

> > > > > > along.

> > > > > >

> > > > >

> > > > > The regulator changed between modelA and B.

> > > > > See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.

> > > >

> > > > I'm not sure what your point is, but mine is that everything about the

> > > > model A should be in sun50i-h6-pine-h64.dts.

> > > >

> > >

> > > model A and B are different enough for distinct dtb, (see sub-thread

> > > on HDMI difference for an other difference than PHY regulator)

> >

> > I don't mind having separate DTBs for model A and model B.

> >

> > > And clearly, the current dtb is for model B.

> >

> > That DTS was added almost a year before the model B was announced, and

> > no commit to that file mention the model B, so it's definitely not

> > clear.

>

> Normal it was added for model A (without any ethernet/HDMI support,

> so nothing distinct from model B), and the modelB ethernet/HDMI

> support cames after.


Changing the board a DT is meant to halfway through the development is
definitely not ok.

> > > So do you mean that we need to create a new dtb for model B ? (and

> > > hack the current back to model A ?)

> >

> > I'd prefer not to hack anything, but yes

> >

>

> Since model A is not public (only evaluations boards exists), the

> probability of a production model A is low and the current dtb is

> perfect for model B , could you reconsider this ?


I mean, you could buy it, so it's definitely public.

Model A also had HDMI, and it doesn't look like there's anything
particularly specific with that board.

On the Ethernet side, the only thing that changes is the regulator /
GPIO being used to enable the PHY?

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Maxime Ripard Aug. 20, 2019, 1:58 p.m. UTC | #12
On Fri, Aug 16, 2019 at 04:00:16PM +0200, Corentin Labbe wrote:
> On Fri, Aug 16, 2019 at 03:52:06PM +0200, Maxime Ripard wrote:

> > On Fri, Aug 16, 2019 at 01:57:50PM +0200, Corentin Labbe wrote:

> > > On Fri, Aug 16, 2019 at 01:36:50PM +0200, Maxime Ripard wrote:

> > > > On Fri, Aug 16, 2019 at 11:35:13AM +0200, Corentin Labbe wrote:

> > > > > On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard wrote:

> > > > > > On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe wrote:

> > > > > > > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard wrote:

> > > > > > > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin Labbe wrote:

> > > > > > > > > This patch adds the evaluation variant of the model A of the PineH64.

> > > > > > > > > The model A has the same size of the pine64 and has a PCIE slot.

> > > > > > > > >

> > > > > > > > > The only devicetree difference with current pineH64, is the PHY

> > > > > > > > > regulator.

> > > > > > > > >

> > > > > > > > > Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > > > > ---

> > > > > > > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1 +

> > > > > > > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26 +++++++++++++++++++

> > > > > > > > >  2 files changed, 27 insertions(+)

> > > > > > > > >  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > > > >

> > > > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > index f6db0611cb85..9a02166cbf72 100644

> > > > > > > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb

> > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb

> > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb

> > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > > > > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb

> > > > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > > > > new file mode 100644

> > > > > > > > > index 000000000000..d8ff02747efe

> > > > > > > > > --- /dev/null

> > > > > > > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts

> > > > > > > > > @@ -0,0 +1,26 @@

> > > > > > > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > > > > > > +/*

> > > > > > > > > + * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>

> > > > > > > > > + */

> > > > > > > > > +

> > > > > > > > > +#include "sun50i-h6-pine-h64.dts"

> > > > > > > > > +

> > > > > > > > > +/ {

> > > > > > > > > +	model = "Pine H64 model A evaluation board";

> > > > > > > > > +	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";

> > > > > > > > > +

> > > > > > > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > > > > > > +		compatible = "regulator-fixed";

> > > > > > > > > +		regulator-name = "vcc-gmac-3v3";

> > > > > > > > > +		regulator-min-microvolt = <3300000>;

> > > > > > > > > +		regulator-max-microvolt = <3300000>;

> > > > > > > > > +		startup-delay-us = <100000>;

> > > > > > > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > > > > > > +		enable-active-high;

> > > > > > > > > +	};

> > > > > > > > > +

> > > > > > > > > +};

> > > > > > > > > +

> > > > > > > > > +&emac {

> > > > > > > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > > > > > > +};

> > > > > > > >

> > > > > > > > I might be missing some context here, but I'm pretty sure that the

> > > > > > > > initial intent of the pine h64 DTS was to support the model A all

> > > > > > > > along.

> > > > > > > >

> > > > > > >

> > > > > > > The regulator changed between modelA and B.

> > > > > > > See this old patchset (supporting modelA) https://patchwork.kernel.org/patch/10539149/ for example.

> > > > > >

> > > > > > I'm not sure what your point is, but mine is that everything about the

> > > > > > model A should be in sun50i-h6-pine-h64.dts.

> > > > > >

> > > > >

> > > > > model A and B are different enough for distinct dtb, (see sub-thread

> > > > > on HDMI difference for an other difference than PHY regulator)

> > > >

> > > > I don't mind having separate DTBs for model A and model B.

> > > >

> > > > > And clearly, the current dtb is for model B.

> > > >

> > > > That DTS was added almost a year before the model B was announced, and

> > > > no commit to that file mention the model B, so it's definitely not

> > > > clear.

> > >

> > > Normal it was added for model A (without any ethernet/HDMI support,

> > > so nothing distinct from model B), and the modelB ethernet/HDMI

> > > support cames after.

> >

> > Changing the board a DT is meant to halfway through the development is

> > definitely not ok.

> >

> > > > > So do you mean that we need to create a new dtb for model B ? (and

> > > > > hack the current back to model A ?)

> > > >

> > > > I'd prefer not to hack anything, but yes

> > > >

> > >

> > > Since model A is not public (only evaluations boards exists), the

> > > probability of a production model A is low and the current dtb is

> > > perfect for model B , could you reconsider this ?

> >

> > I mean, you could buy it, so it's definitely public.

>

> Where ? official pineh64 site speaks only of modelB.


It's not available anymore, but it used to be.

> >

> > Model A also had HDMI, and it doesn't look like there's anything

> > particularly specific with that board.

>

> A subthread just say the opposite, modelA need something more for HDMI

> https://lkml.org/lkml/2019/8/12/394


Right, but that's not in the DT at the moment.

Maxime

--
Maxime Ripard, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
Icenowy Zheng Aug. 21, 2019, 9:19 a.m. UTC | #13
在 2019-08-20二的 15:58 +0200,Maxime Ripard写道:
> On Fri, Aug 16, 2019 at 04:00:16PM +0200, Corentin Labbe wrote:

> > On Fri, Aug 16, 2019 at 03:52:06PM +0200, Maxime Ripard wrote:

> > > On Fri, Aug 16, 2019 at 01:57:50PM +0200, Corentin Labbe wrote:

> > > > On Fri, Aug 16, 2019 at 01:36:50PM +0200, Maxime Ripard wrote:

> > > > > On Fri, Aug 16, 2019 at 11:35:13AM +0200, Corentin Labbe

> > > > > wrote:

> > > > > > On Wed, Aug 14, 2019 at 03:33:22PM +0200, Maxime Ripard

> > > > > > wrote:

> > > > > > > On Wed, Aug 14, 2019 at 03:17:41PM +0200, Corentin Labbe

> > > > > > > wrote:

> > > > > > > > On Mon, Aug 12, 2019 at 11:40:00AM +0200, Maxime Ripard

> > > > > > > > wrote:

> > > > > > > > > On Thu, Aug 08, 2019 at 10:42:53AM +0200, Corentin

> > > > > > > > > Labbe wrote:

> > > > > > > > > > This patch adds the evaluation variant of the model

> > > > > > > > > > A of the PineH64.

> > > > > > > > > > The model A has the same size of the pine64 and has

> > > > > > > > > > a PCIE slot.

> > > > > > > > > > 

> > > > > > > > > > The only devicetree difference with current

> > > > > > > > > > pineH64, is the PHY

> > > > > > > > > > regulator.

> > > > > > > > > > 

> > > > > > > > > > Signed-off-by: Corentin Labbe <

> > > > > > > > > > clabbe.montjoie@gmail.com>

> > > > > > > > > > ---

> > > > > > > > > >  arch/arm64/boot/dts/allwinner/Makefile        |  1

> > > > > > > > > > +

> > > > > > > > > >  .../sun50i-h6-pine-h64-modelA-eval.dts        | 26

> > > > > > > > > > +++++++++++++++++++

> > > > > > > > > >  2 files changed, 27 insertions(+)

> > > > > > > > > >  create mode 100644

> > > > > > > > > > arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-

> > > > > > > > > > modelA-eval.dts

> > > > > > > > > > 

> > > > > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > > b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > > index f6db0611cb85..9a02166cbf72 100644

> > > > > > > > > > --- a/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > > +++ b/arch/arm64/boot/dts/allwinner/Makefile

> > > > > > > > > > @@ -25,3 +25,4 @@ dtb-$(CONFIG_ARCH_SUNXI) +=

> > > > > > > > > > sun50i-h6-orangepi-3.dtb

> > > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-

> > > > > > > > > > lite2.dtb

> > > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-

> > > > > > > > > > one-plus.dtb

> > > > > > > > > >  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb

> > > > > > > > > > +dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-

> > > > > > > > > > modelA-eval.dtb

> > > > > > > > > > diff --git a/arch/arm64/boot/dts/allwinner/sun50i-

> > > > > > > > > > h6-pine-h64-modelA-eval.dts

> > > > > > > > > > b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-

> > > > > > > > > > modelA-eval.dts

> > > > > > > > > > new file mode 100644

> > > > > > > > > > index 000000000000..d8ff02747efe

> > > > > > > > > > --- /dev/null

> > > > > > > > > > +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-

> > > > > > > > > > h64-modelA-eval.dts

> > > > > > > > > > @@ -0,0 +1,26 @@

> > > > > > > > > > +// SPDX-License-Identifier: (GPL-2.0+ or MIT)

> > > > > > > > > > +/*

> > > > > > > > > > + * Copyright (C) 2019 Corentin Labbe <

> > > > > > > > > > clabbe.montjoie@gmail.com>

> > > > > > > > > > + */

> > > > > > > > > > +

> > > > > > > > > > +#include "sun50i-h6-pine-h64.dts"

> > > > > > > > > > +

> > > > > > > > > > +/ {

> > > > > > > > > > +	model = "Pine H64 model A evaluation board";

> > > > > > > > > > +	compatible = "pine64,pine-h64-modelA-eval",

> > > > > > > > > > "allwinner,sun50i-h6";

> > > > > > > > > > +

> > > > > > > > > > +	reg_gmac_3v3: gmac-3v3 {

> > > > > > > > > > +		compatible = "regulator-fixed";

> > > > > > > > > > +		regulator-name = "vcc-gmac-3v3";

> > > > > > > > > > +		regulator-min-microvolt = <3300000>;

> > > > > > > > > > +		regulator-max-microvolt = <3300000>;

> > > > > > > > > > +		startup-delay-us = <100000>;

> > > > > > > > > > +		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;

> > > > > > > > > > +		enable-active-high;

> > > > > > > > > > +	};

> > > > > > > > > > +

> > > > > > > > > > +};

> > > > > > > > > > +

> > > > > > > > > > +&emac {

> > > > > > > > > > +	phy-supply = <&reg_gmac_3v3>;

> > > > > > > > > > +};

> > > > > > > > > 

> > > > > > > > > I might be missing some context here, but I'm pretty

> > > > > > > > > sure that the

> > > > > > > > > initial intent of the pine h64 DTS was to support the

> > > > > > > > > model A all

> > > > > > > > > along.

> > > > > > > > > 

> > > > > > > > 

> > > > > > > > The regulator changed between modelA and B.

> > > > > > > > See this old patchset (supporting modelA) 

> > > > > > > > https://patchwork.kernel.org/patch/10539149/ for

> > > > > > > > example.

> > > > > > > 

> > > > > > > I'm not sure what your point is, but mine is that

> > > > > > > everything about the

> > > > > > > model A should be in sun50i-h6-pine-h64.dts.

> > > > > > > 

> > > > > > 

> > > > > > model A and B are different enough for distinct dtb, (see

> > > > > > sub-thread

> > > > > > on HDMI difference for an other difference than PHY

> > > > > > regulator)

> > > > > 

> > > > > I don't mind having separate DTBs for model A and model B.

> > > > > 

> > > > > > And clearly, the current dtb is for model B.

> > > > > 

> > > > > That DTS was added almost a year before the model B was

> > > > > announced, and

> > > > > no commit to that file mention the model B, so it's

> > > > > definitely not

> > > > > clear.

> > > > 

> > > > Normal it was added for model A (without any ethernet/HDMI

> > > > support,

> > > > so nothing distinct from model B), and the modelB ethernet/HDMI

> > > > support cames after.

> > > 

> > > Changing the board a DT is meant to halfway through the

> > > development is

> > > definitely not ok.

> > > 

> > > > > > So do you mean that we need to create a new dtb for model B

> > > > > > ? (and

> > > > > > hack the current back to model A ?)

> > > > > 

> > > > > I'd prefer not to hack anything, but yes

> > > > > 

> > > > 

> > > > Since model A is not public (only evaluations boards exists),

> > > > the

> > > > probability of a production model A is low and the current dtb

> > > > is

> > > > perfect for model B , could you reconsider this ?

> > > 

> > > I mean, you could buy it, so it's definitely public.

> > 

> > Where ? official pineh64 site speaks only of modelB.

> 

> It's not available anymore, but it used to be.


There're never model A boards that are really sold. When model A is put
on the website, its stock is always 0.

Only model B boards are really sold.

BTW from my communication with TL Lim, model A will get redesigned to
get the software compatiblity with model B, if it's going to be re-
available on the market again. So all known difference will be not
difference between models, but difference between sample version and
final version. But even if the new model A is out, it will still need a
different devicetree with model B, as PCIe is model-A-only feature, and
model A will have no on-board Wi-Fi (model B has RTL8723BS on-board).

> 

> > > Model A also had HDMI, and it doesn't look like there's anything

> > > particularly specific with that board.

> > 

> > A subthread just say the opposite, modelA need something more for

> > HDMI

> > https://lkml.org/lkml/2019/8/12/394

> 

> Right, but that's not in the DT at the moment.

> 

> Maxime

> 

> --

> Maxime Ripard, Bootlin

> Embedded Linux and Kernel engineering

> https://bootlin.com

> _______________________________________________

> linux-arm-kernel mailing list

> linux-arm-kernel@lists.infradead.org

> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index f6db0611cb85..9a02166cbf72 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -25,3 +25,4 @@  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-3.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-lite2.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb
 dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64-modelA-eval.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts
new file mode 100644
index 000000000000..d8ff02747efe
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64-modelA-eval.dts
@@ -0,0 +1,26 @@ 
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2019 Corentin Labbe <clabbe.montjoie@gmail.com>
+ */
+
+#include "sun50i-h6-pine-h64.dts"
+
+/ {
+	model = "Pine H64 model A evaluation board";
+	compatible = "pine64,pine-h64-modelA-eval", "allwinner,sun50i-h6";
+
+	reg_gmac_3v3: gmac-3v3 {
+		compatible = "regulator-fixed";
+		regulator-name = "vcc-gmac-3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		startup-delay-us = <100000>;
+		gpio = <&pio 2 16 GPIO_ACTIVE_HIGH>;
+		enable-active-high;
+	};
+
+};
+
+&emac {
+	phy-supply = <&reg_gmac_3v3>;
+};