On 17/06/2023 19:27, Julian Ribbeck wrote:
> Iteaduino Plus A20 is very similar to Iteaduino Plus A10. In fact it
> shares the same breakout board and the Itead Core A20 on top of it, is
> only adapted to support the dual-core A20.
>
Thank you for your patch. There is something to discuss/improve.
> index 000000000000..8d94db5520af
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
> @@ -0,0 +1,109 @@
> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)
> +
> +/dts-v1/;
> +#include "sun7i-a20.dtsi"
> +#include "sunxi-itead-core-common.dtsi"
> +#include "axp209.dtsi"
> +
> +/ {
> + model = "Itead Iteaduino Plus A20";
> + compatible = "itead,iteaduino-plus-a20", "allwinner,sun7i-a20";
Missing bindings.
It does not look like you tested the DTS against bindings. Please run
`make dtbs_check` (see
Documentation/devicetree/bindings/writing-schema.rst or
https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/
for instructions).
Best regards,
Krzysztof
> Missing bindings.
>
> It does not look like you tested the DTS against bindings. Please run
> `make dtbs_check` (see
> Documentation/devicetree/bindings/writing-schema.rst or
> https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/
> for instructions).
Thanks, did not know about this, will send a v2
Iteaduino Plus A20 is very similar to Iteaduino Plus A10. In fact it
shares the same breakout board and the Itead Core A20 on top of it, is
only adapted to support the dual-core A20.
This commits enables the following hardware:
* HDMI Video output
* USB
* SATA (untested due to lack of hardware I could attach)
* Ethernet
* MMC storage
* UART
* USB OTG (untested, because I don't own an USB OTG cable/device)
Signed-off-by: Julian Ribbeck <[email protected]>
---
arch/arm/boot/dts/Makefile | 1 +
.../dts/sun7i-a20-itead-iteaduino-plus.dts | 114 ++++++++++++++++++
2 files changed, 115 insertions(+)
create mode 100644 arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 59829fc90315..3b6e284e4472 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -1334,6 +1334,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
sun7i-a20-haoyu-marsboard.dtb \
sun7i-a20-hummingbird.dtb \
sun7i-a20-itead-ibox.dtb \
+ sun7i-a20-itead-iteaduino-plus.dtb \
sun7i-a20-i12-tvbox.dtb \
sun7i-a20-icnova-swac.dtb \
sun7i-a20-lamobo-r1.dtb \
diff --git a/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts b/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
new file mode 100644
index 000000000000..204c5f2c81c7
--- /dev/null
+++ b/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
@@ -0,0 +1,114 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+
+/dts-v1/;
+#include "sun7i-a20.dtsi"
+#include "sunxi-itead-core-common.dtsi"
+#include "axp209.dtsi"
+
+/ {
+ model = "Itead Iteaduino Plus A20";
+ compatible = "itead,iteaduino-plus-a20", "allwinner,sun7i-a20";
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_con_in: endpoint {
+ remote-endpoint = <&hdmi_out_con>;
+ };
+ };
+ };
+};
+
+&ac_power_supply {
+ status = "okay";
+};
+
+&ahci {
+ target-supply = <®_ahci_5v>;
+ status = "okay";
+};
+
+&axp209 {
+ interrupt-parent = <&nmi_intc>;
+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+};
+
+&battery_power_supply {
+ status = "okay";
+};
+
+&codec {
+ stauts = "okay";
+};
+
+&de {
+ status = "okay";
+};
+
+&emac {
+ pinctrl-names = "default";
+ pinctrl-0 = <&emac_pa_pins>;
+ phy-handle = <&phy1>;
+ status = "okay";
+};
+
+&emac_sram {
+ status = "okay";
+};
+
+&hdmi {
+ status = "okay";
+};
+
+&hdmi_out {
+ hdmi_out_con: endpoint {
+ remote-endpoint = <&hdmi_con_in>;
+ };
+};
+
+&mdio {
+ status = "okay";
+
+ phy1: ethernet-phy@1 {
+ reg = <1>;
+ };
+};
+
+&mmc0 {
+ vmmc-supply = <®_vcc3v3>;
+ bus-width = <4>;
+ cd-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; /* PH1 */
+ status = "okay";
+};
+
+
+&otg_sram {
+ status = "okay";
+};
+
+®_ahci_5v {
+ status = "okay";
+};
+
+
+®_usb0_vbus {
+ status = "okay";
+};
+
+&usb_otg {
+ status = "okay";
+ dr_mode = "otg";
+};
+
+&usb_power_supply {
+ status = "okay";
+};
+
+&usbphy {
+ usb0_id_det-gpios = <&pio 7 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH4 */
+ usb0_vbus_det-gpios = <&pio 7 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH5 */
+ usb0_vbus_power-supply = <&usb_power_supply>;
+ usb0_vbus-supply = <®_usb0_vbus>;
+};
--
2.41.0
Add itead,iteaduino-plus-a20 bindings
Signed-off-by: Julian Ribbeck <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index 013821f4a7b8..aaa9a96736b7 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -356,6 +356,11 @@ properties:
- const: itead,iteaduino-plus-a10
- const: allwinner,sun4i-a10
+ - description: Itead Iteaduino Plus A20
+ items:
+ - const: itead,iteaduino-plus-a20
+ - const: allwinner,sun7i-a20
+
- description: Jesurun Q5
items:
- const: jesurun,q5
--
2.41.0
On 17/06/2023 22:55, Julian Ribbeck wrote:
> Add itead,iteaduino-plus-a20 bindings
>
> Signed-off-by: Julian Ribbeck <[email protected]>
> ---
Acked-by: Krzysztof Kozlowski <[email protected]>
Best regards,
Krzysztof
On Wed, Sep 27, 2023 at 11:38:35AM +0200, Julian Ribbeck wrote:
> On Sun Jun 18, 2023 at 10:00 AM CEST, Krzysztof Kozlowski wrote:
> > On 17/06/2023 22:55, Julian Ribbeck wrote:
> > > Add itead,iteaduino-plus-a20 bindings
> > >
> > > Signed-off-by: Julian Ribbeck <[email protected]>
> > > ---
> >
> > Acked-by: Krzysztof Kozlowski <[email protected]>
> I'm not totally familiar with the process here, but it seems like my
> patch was kind of forgotten? What should I do now? Is anything still
> missing?
Usually what you would do is CC the maintainers of the sunxi platform,
and they would apply the patches, although you don't seem to have done so.
Sending another version with them on CC is a good idea. That means, send
both this and the dts patch as a series (with this patch as 1/2).
Hi,
I'm not totally familiar with the process here, but it seems like my
patch was kind of forgotten? What should I do now? Is anything still
missing?
Greetings
Julian
On Sun Jun 18, 2023 at 10:00 AM CEST, Krzysztof Kozlowski wrote:
> On 17/06/2023 22:55, Julian Ribbeck wrote:
> > Add itead,iteaduino-plus-a20 bindings
> >
> > Signed-off-by: Julian Ribbeck <[email protected]>
> > ---
>
> Acked-by: Krzysztof Kozlowski <[email protected]>
>
> Best regards,
> Krzysztof
On 6/17/23 15:55, Julian Ribbeck wrote:
> Add itead,iteaduino-plus-a20 bindings
>
> Signed-off-by: Julian Ribbeck <[email protected]>
> ---
> Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++
> 1 file changed, 5 insertions(+)
Reviewed-by: Samuel Holland <[email protected]>
Hi Julian,
Next time please CC everyone reported by scripts/get_maintainer.pl on
this file, so we are aware of your patch.
On 6/17/23 15:55, Julian Ribbeck wrote:
> Iteaduino Plus A20 is very similar to Iteaduino Plus A10. In fact it
> shares the same breakout board and the Itead Core A20 on top of it, is
> only adapted to support the dual-core A20.
>
> This commits enables the following hardware:
>
> * HDMI Video output
> * USB
> * SATA (untested due to lack of hardware I could attach)
> * Ethernet
> * MMC storage
> * UART
> * USB OTG (untested, because I don't own an USB OTG cable/device)
>
> Signed-off-by: Julian Ribbeck <[email protected]>
> ---
> arch/arm/boot/dts/Makefile | 1 +
> .../dts/sun7i-a20-itead-iteaduino-plus.dts | 114 ++++++++++++++++++
> 2 files changed, 115 insertions(+)
> create mode 100644 arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 59829fc90315..3b6e284e4472 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -1334,6 +1334,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
> sun7i-a20-haoyu-marsboard.dtb \
> sun7i-a20-hummingbird.dtb \
> sun7i-a20-itead-ibox.dtb \
> + sun7i-a20-itead-iteaduino-plus.dtb \
> sun7i-a20-i12-tvbox.dtb \
> sun7i-a20-icnova-swac.dtb \
> sun7i-a20-lamobo-r1.dtb \
> diff --git a/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts b/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
> new file mode 100644
ARM devicetrees were moved into subdirectories, so this patch will need
to be rebased.
> index 000000000000..204c5f2c81c7
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun7i-a20-itead-iteaduino-plus.dts
> @@ -0,0 +1,114 @@
> +// SPDX-License-Identifier: (GPL-2.0+ or MIT)
> +
> +/dts-v1/;
> +#include "sun7i-a20.dtsi"
> +#include "sunxi-itead-core-common.dtsi"
> +#include "axp209.dtsi"
axp209.dtsi is already included by sunxi-itead-core-common.dtsi. You
don't need to include it again here.
> +
> +/ {
> + model = "Itead Iteaduino Plus A20";
> + compatible = "itead,iteaduino-plus-a20", "allwinner,sun7i-a20";
> +
> + hdmi-connector {
> + compatible = "hdmi-connector";
> + type = "a";
> +
> + port {
> + hdmi_con_in: endpoint {
> + remote-endpoint = <&hdmi_out_con>;
> + };
> + };
> + };
> +};
> +
> +&ac_power_supply {
> + status = "okay";
> +};
> +
> +&ahci {
> + target-supply = <®_ahci_5v>;
> + status = "okay";
> +};
> +
> +&axp209 {
> + interrupt-parent = <&nmi_intc>;
> + interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
> +};
> +
> +&battery_power_supply {
> + status = "okay";
> +};
> +
> +&codec {
> + stauts = "okay";
> +};
> +
> +&de {
> + status = "okay";
> +};
> +
> +&emac {
> + pinctrl-names = "default";
> + pinctrl-0 = <&emac_pa_pins>;
> + phy-handle = <&phy1>;
> + status = "okay";
> +};
> +
> +&emac_sram {
> + status = "okay";
> +};
> +
> +&hdmi {
> + status = "okay";
> +};
> +
> +&hdmi_out {
> + hdmi_out_con: endpoint {
> + remote-endpoint = <&hdmi_con_in>;
> + };
> +};
> +
> +&mdio {
> + status = "okay";
> +
> + phy1: ethernet-phy@1 {
> + reg = <1>;
> + };
> +};
> +
> +&mmc0 {
> + vmmc-supply = <®_vcc3v3>;
> + bus-width = <4>;
> + cd-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; /* PH1 */
> + status = "okay";
> +};
> +
> +
> +&otg_sram {
> + status = "okay";
> +};
> +
> +®_ahci_5v {
> + status = "okay";
> +};
> +
> +
Extra blank line here and above otg_sram.
> +®_usb0_vbus {
> + status = "okay";
> +};
> +
> +&usb_otg {
> + status = "okay";
> + dr_mode = "otg";
The mini-USB port is always powered, and the ID pin isn't hooked up in a
usable way, so this should be "host".
> +};
> +
> +&usb_power_supply {
> + status = "okay";
> +};
The board's power supply is only connected to the ACIN pins of the
AXP209, not the USBVBUS pin (which is pulled to 3.3V for some reason).
So usb_power_supply should not be enabled or used below.
> +
> +&usbphy {
> + usb0_id_det-gpios = <&pio 7 4 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH4 */
The ID pin is connected to N_VBUSEN on the PMIC, not this GPIO. Per the
schematic, this GPIO is not connected to anything.
> + usb0_vbus_det-gpios = <&pio 7 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PH5 */
Per the schematic, this GPIO is not connected to anything.
> + usb0_vbus_power-supply = <&usb_power_supply>;
As explained above, please remove this property.
Regards,
Samuel
> + usb0_vbus-supply = <®_usb0_vbus>;
> +};
> --
> 2.41.0
>
On 27/09/2023 11:38, Julian Ribbeck wrote:
> Hi,
>
> I'm not totally familiar with the process here, but it seems like my
> patch was kind of forgotten? What should I do now? Is anything still
> missing?
Cc-ing maintainers is missing. Don't expect people you do no CC, to
magically pick up patches. :/
Best regards,
Krzysztof
Iteaduino Plus A20 is very similar to Iteaduino Plus A10. In fact it
shares the same breakout board and the Itead Core A20 on top of it, is
only adapted to support the dual-core A20.
This commits enables the following hardware:
* HDMI Video output
* USB
* SATA (untested due to lack of hardware I could attach)
* Ethernet
* MMC storage
* UART
* USB OTG (untested, because I don't own an USB OTG cable/device)
Signed-off-by: Julian Ribbeck <[email protected]>
---
arch/arm/boot/dts/allwinner/Makefile | 1 +
.../sun7i-a20-itead-iteaduino-plus.dts | 104 ++++++++++++++++++
2 files changed, 105 insertions(+)
create mode 100644 arch/arm/boot/dts/allwinner/sun7i-a20-itead-iteaduino-plus.dts
diff --git a/arch/arm/boot/dts/allwinner/Makefile b/arch/arm/boot/dts/allwinner/Makefile
index eebb5a0c873a..39af5ad94590 100644
--- a/arch/arm/boot/dts/allwinner/Makefile
+++ b/arch/arm/boot/dts/allwinner/Makefile
@@ -124,6 +124,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
sun7i-a20-haoyu-marsboard.dtb \
sun7i-a20-hummingbird.dtb \
sun7i-a20-itead-ibox.dtb \
+ sun7i-a20-itead-iteaduino-plus.dts \
sun7i-a20-i12-tvbox.dtb \
sun7i-a20-icnova-a20-adb4006.dtb \
sun7i-a20-icnova-swac.dtb \
diff --git a/arch/arm/boot/dts/allwinner/sun7i-a20-itead-iteaduino-plus.dts b/arch/arm/boot/dts/allwinner/sun7i-a20-itead-iteaduino-plus.dts
new file mode 100644
index 000000000000..c9f9b0275381
--- /dev/null
+++ b/arch/arm/boot/dts/allwinner/sun7i-a20-itead-iteaduino-plus.dts
@@ -0,0 +1,104 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+
+/dts-v1/;
+#include "sun7i-a20.dtsi"
+#include "sunxi-itead-core-common.dtsi"
+
+/ {
+ model = "Itead Iteaduino Plus A20";
+ compatible = "itead,iteaduino-plus-a20", "allwinner,sun7i-a20";
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_con_in: endpoint {
+ remote-endpoint = <&hdmi_out_con>;
+ };
+ };
+ };
+};
+
+&ac_power_supply {
+ status = "okay";
+};
+
+&ahci {
+ target-supply = <®_ahci_5v>;
+ status = "okay";
+};
+
+&axp209 {
+ interrupt-parent = <&nmi_intc>;
+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+};
+
+&battery_power_supply {
+ status = "okay";
+};
+
+&codec {
+ stauts = "okay";
+};
+
+&de {
+ status = "okay";
+};
+
+&emac {
+ pinctrl-names = "default";
+ pinctrl-0 = <&emac_pa_pins>;
+ phy-handle = <&phy1>;
+ status = "okay";
+};
+
+&emac_sram {
+ status = "okay";
+};
+
+&hdmi {
+ status = "okay";
+};
+
+&hdmi_out {
+ hdmi_out_con: endpoint {
+ remote-endpoint = <&hdmi_con_in>;
+ };
+};
+
+&mdio {
+ status = "okay";
+
+ phy1: ethernet-phy@1 {
+ reg = <1>;
+ };
+};
+
+&mmc0 {
+ vmmc-supply = <®_vcc3v3>;
+ bus-width = <4>;
+ cd-gpios = <&pio 7 1 GPIO_ACTIVE_LOW>; /* PH1 */
+ status = "okay";
+};
+
+&otg_sram {
+ status = "okay";
+};
+
+®_ahci_5v {
+ status = "okay";
+};
+
+®_usb0_vbus {
+ status = "okay";
+};
+
+&usb_otg {
+ status = "okay";
+ dr_mode = "host";
+};
+
+&usbphy {
+ usb0_vbus-supply = <®_usb0_vbus>;
+};
--
2.42.0
Add itead,iteaduino-plus-a20 bindings
Signed-off-by: Julian Ribbeck <[email protected]>
---
Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
index e4dd678f4212..25251ce4b60d 100644
--- a/Documentation/devicetree/bindings/arm/sunxi.yaml
+++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
@@ -362,6 +362,11 @@ properties:
- const: itead,iteaduino-plus-a10
- const: allwinner,sun4i-a10
+ - description: Itead Iteaduino Plus A20
+ items:
+ - const: itead,iteaduino-plus-a20
+ - const: allwinner,sun7i-a20
+
- description: Jesurun Q5
items:
- const: jesurun,q5
--
2.42.0
On Thu, Sep 28, 2023 at 06:57:02PM +0200, Julian Ribbeck wrote:
> Add itead,iteaduino-plus-a20 bindings
>
> Signed-off-by: Julian Ribbeck <[email protected]>
FYI, you missed a tag from Krzysztof
| Acked-by: Krzysztof Kozlowski <[email protected]>
from https://lore.kernel.org/all/[email protected]/
Cheers,
Conor.
> ---
> Documentation/devicetree/bindings/arm/sunxi.yaml | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/arm/sunxi.yaml b/Documentation/devicetree/bindings/arm/sunxi.yaml
> index e4dd678f4212..25251ce4b60d 100644
> --- a/Documentation/devicetree/bindings/arm/sunxi.yaml
> +++ b/Documentation/devicetree/bindings/arm/sunxi.yaml
> @@ -362,6 +362,11 @@ properties:
> - const: itead,iteaduino-plus-a10
> - const: allwinner,sun4i-a10
>
> + - description: Itead Iteaduino Plus A20
> + items:
> + - const: itead,iteaduino-plus-a20
> + - const: allwinner,sun7i-a20
> +
> - description: Jesurun Q5
> items:
> - const: jesurun,q5
> --
> 2.42.0
>