[PATCH 5/6] riscv: microchip: mpfs: drop duplicated MMC/SDHC node
Krzysztof Kozlowski
krzysztof.kozlowski at canonical.com
Tue Aug 24 12:07:14 PDT 2021
On 24/08/2021 17:37, Geert Uytterhoeven wrote:
> Hi Krzysztof,
>
> On Thu, Aug 19, 2021 at 5:45 PM Krzysztof Kozlowski
> <krzysztof.kozlowski at canonical.com> wrote:
>> Devicetree source is a description of hardware and hardware has only one
>> block @20008000 which can be configured either as eMMC or SDHC. Having
>> two node for different modes is an obscure, unusual and confusing way to
>> configure it. Instead the board file is supposed to customize the block
>> to its needs, e.g. to SDHC mode.
>>
>> This fixes dtbs_check warning:
>> arch/riscv/boot/dts/microchip/microchip-mpfs-icicle-kit.dt.yaml: sdhc at 20008000: $nodename:0: 'sdhc at 20008000' does not match '^mmc(@.*)?$'
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at canonical.com>
>
> Thanks for your patch!
>
>> --- a/arch/riscv/boot/dts/microchip/microchip-mpfs-icicle-kit.dts
>> +++ b/arch/riscv/boot/dts/microchip/microchip-mpfs-icicle-kit.dts
>> @@ -43,8 +43,16 @@ &serial3 {
>> status = "okay";
>> };
>>
>> -&sdcard {
>> +&mmc {
>> status = "okay";
>> +
>> + disable-wp;
>> + cap-sd-highspeed;
>> + card-detect-delay = <200>;
>> + sd-uhs-sdr12;
>> + sd-uhs-sdr25;
>> + sd-uhs-sdr50;
>> + sd-uhs-sdr104;
>> };
>>
>> &emac0 {
>> diff --git a/arch/riscv/boot/dts/microchip/microchip-mpfs.dtsi b/arch/riscv/boot/dts/microchip/microchip-mpfs.dtsi
>> index cb54da0cc3c4..c4ccd7e4d3eb 100644
>> --- a/arch/riscv/boot/dts/microchip/microchip-mpfs.dtsi
>> +++ b/arch/riscv/boot/dts/microchip/microchip-mpfs.dtsi
>> @@ -262,25 +262,7 @@ serial3: serial at 20104000 {
>> status = "disabled";
>> };
>>
>> - emmc: mmc at 20008000 {
>> - compatible = "cdns,sd4hc";
>> - reg = <0x0 0x20008000 0x0 0x1000>;
>> - interrupt-parent = <&plic>;
>> - interrupts = <88 89>;
>
> Note that the other node has only a single interrupt.
> Which one is correct?
I assume the one put there initially, since it was tested (sdcard wsas
enabled, emmc was disabled).
>
>> - pinctrl-names = "default";
>> - clocks = <&clkcfg 6>;
>> - bus-width = <4>;
>> - cap-mmc-highspeed;
>> - mmc-ddr-3_3v;
>> - max-frequency = <200000000>;
>> - non-removable;
>> - no-sd;
>> - no-sdio;
>> - voltage-ranges = <3300 3300>;
>> - status = "disabled";
>> - };
>> -
>> - sdcard: sdhc at 20008000 {
>> + mmc: mmc at 20008000 {
>> compatible = "cdns,sd4hc";
>> reg = <0x0 0x20008000 0x0 0x1000>;
>> interrupt-parent = <&plic>;
>> @@ -288,13 +270,6 @@ sdcard: sdhc at 20008000 {
>> pinctrl-names = "default";
>> clocks = <&clkcfg 6>;
>> bus-width = <4>;
>
> I think bus-width should be moved to the board .dts, too.
Makes sense. Thanks for review!
Best regards,
Krzysztof
More information about the linux-riscv
mailing list