RE: [PATCH v6 2/2] ARM: dts: at91: Adding SAMA5D3-EDS board

From: Jerry.Ray
Date: Thu Sep 08 2022 - 11:33:00 EST


>>>>>> The SAMA5D3-EDS board is an Ethernet Development Platform allowing
>>>>>> for evaluating many Microchip ethernet switch and PHY products.
>>>>>> Various daughter cards can connect up via an RGMII connector or an RMII connector.
>>>>>>
>>>>>> The EDS board is not intended for stand-alone use and has no
>>>>>> ethernet capabilities when no daughter board is connected. As
>>>>>> such, this device tree is intended to be used with a DT overlay defining the add-on board.
>>>>>> To better ensure consistency, some items are defined here as a
>>>>>> form of documentation so that all add-on overlays will use the same terms.
>>>>>>
>>>>>> Google search keywords: "Microchip SAMA5D3-EDS"
>>>>>>
>>>>>> Signed-off-by: Jerry Ray <jerry.ray@xxxxxxxxxxxxx>
>>>>>> ---
>>>>>> v5->v6:
>>>>>> - Replaced underscores in names where I can, improving naming.
>>>>>> v4->v5:
>>>>>> - patch now applies to v6.0-rc2
>>>>>> v3->v4:
>>>>>> - Fixed regulators as necessary to get the board to boot from SD Card.
>>>>>> v2->v3:
>>>>>> - Alphabetized pinctrl entries.
>>>>>> - cleaned up a warning in the regulators section.
>>>>>> - License tweaked to 'OR MIT'
>>>>>> - Included Makefile change
>>>>>> v1->v2:
>>>>>> - Modified the compatible field in the device tree to reflect Microchip
>>>>>> Ethernet Development System Board.
>>>>>> ---
>>>>>> arch/arm/boot/dts/Makefile | 1 +
>>>>>> arch/arm/boot/dts/at91-sama5d3_eds.dts | 309
>>>>>> +++++++++++++++++++++++++
>>>>>> 2 files changed, 310 insertions(+) create mode 100644
>>>>>> arch/arm/boot/dts/at91-sama5d3_eds.dts
>>>>>>
>>>>>> diff --git a/arch/arm/boot/dts/Makefile
>>>>>> b/arch/arm/boot/dts/Makefile index 05d8aef6e5d2..e92e639a2dc3
>>>>>> 100644
>>>>>> --- a/arch/arm/boot/dts/Makefile
>>>>>> +++ b/arch/arm/boot/dts/Makefile
>>>>>> @@ -61,6 +61,7 @@ dtb-$(CONFIG_SOC_SAM_V7) += \
>>>>>> at91-sama5d2_icp.dtb \
>>>>>> at91-sama5d2_ptc_ek.dtb \
>>>>>> at91-sama5d2_xplained.dtb \
>>>>>> + at91-sama5d3_eds.dtb \
>>>>>> at91-sama5d3_ksz9477_evb.dtb \
>>>>>> at91-sama5d3_xplained.dtb \
>>>>>> at91-dvk_som60.dtb \
>>>>>> diff --git a/arch/arm/boot/dts/at91-sama5d3_eds.dts
>>>>>> b/arch/arm/boot/dts/at91-sama5d3_eds.dts
>>>>>> new file mode 100644
>>>>>> index 000000000000..b4fe1c5f2997
>>>>>> --- /dev/null
>>>>>> +++ b/arch/arm/boot/dts/at91-sama5d3_eds.dts
>>>>>> @@ -0,0 +1,309 @@
>>>>>> +// SPDX-License-Identifier: GPL-2.0+ OR MIT
>>>>>> +/*
>>>>>> + * at91-sama5d3_eds.dts - Device Tree file for the SAMA5D3 Ethernet
>>>>>> + * Development System board.
>>>>>> + *
>>>>>> + * Copyright (C) 2022 Microchip Technology Inc. and its
>>>>>> +subsidiaries
>>>>>> + *
>>>>>> + * Author: Jerry Ray <jerry.ray@xxxxxxxxxxxxx> */ /dts-v1/;
>>>>>> +#include "sama5d36.dtsi"
>>>>>> +
>>>>>> +/ {
>>>>>> + model = "SAMA5D3 Ethernet Development System";
>>>>>> + compatible = "microchip,sama5d3-eds", "atmel,sama5d36",
>>>>>> + "atmel,sama5d3", "atmel,sama5";
>>>>>> +
>>>>>> + chosen {
>>>>>> + stdout-path = "serial0:115200n8";
>>>>>> + };
>>>>>> +
>>>>>> + clocks {
>>>>>> + slow_xtal {
>>>>>
>>>>> No underscores in node names. Override by label.
>>>>>

I am not at liberty to change this as both node name and label are defined in the sama5d3.dtsi source file.
If there is a way to override the label, please share the syntax as nothing I have tried is working.

>>>>>> + clock-frequency = <32768>;
>>>>>> + };
>>>>>> +
>>>>>> + main_xtal {
>>>>>> + clock-frequency = <12000000>;
>>>>>> + };
>>>>>> + };
>>>>>> +
>>>>>> + gpio {
>>>>>> + compatible = "gpio-keys";
>>>>>> +
>>>>>> + pinctrl-names = "default";
>>>>>> + pinctrl-0 = <&pinctrl_key_gpio>;
>>>>>> +
>>>>>> + button-3 {
>>>>>> + label = "PB_USER";
>>>>>> + gpios = <&pioE 29 GPIO_ACTIVE_LOW>;
>>>>>> + linux,code = <0x104>;
>>>>>> + wakeup-source;
>>>>>> + };
>>>>>> + };
>>>>>> +
>>>>>> + memory@20000000 {
>>>>>> + reg = <0x20000000 0x10000000>;
>>>>>> + };
>>>>>> +
>>>>>> + vcc_3v3_reg: buck-regulator-1 {
>>>>>
>>>>> Keep consistent prefix or suffix, so:
>>>>> regulator-buck-1
>>>>>
>>>>>> + compatible = "regulator-fixed";
>>>>>> + regulator-name = "VCC_3V3";
>>>>>> + regulator-min-microvolt = <3300000>;
>>>>>> + regulator-max-microvolt = <3300000>;
>>>>>> + regulator-always-on;
>>>>>> + };
>>>>>> +
>>>>>> + vcc_2v5_reg: ldo-regulator-2 {
>>>>>
>>>>> regulator-ldo-1
>>>>> (why numbering of LDO regulators starts from 2? keep some sense in
>>>>> this)
>>>>>
>>>>>
>>>>
>>>> There are N regulators on the board, so they are numbered 1 thru N.
>>>> Regulator 2 is regulator 2 whether it's a buck or LDO.
>>>
>>> So if this is supposed to match board schematics (which is good idea), then maybe just "regulator-2"? The point is to have same generic name and customize either prefix or suffix, but not both.
>>>
>>> Best regards,
>>> Krzysztof
>>>
>>
>> I prefer names to be descriptive, but I suppose I can have the name generic and add a comment into the dts file.
>> However, the comment doesn't make it into the loaded device tree. Would you be okay with "regulator-2-ldo"?
>
>You have the descriptive name in the regulator-name property, but ok, can be in node name as well.
>
>Best regards,
>Krzysztof
>

Regards,
Jerry.