[PATCH 7/7] arm64: dts: mediatek: Add support for MT6795 Sony Xperia M5 smartphone

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Thu Oct 27 03:01:16 PDT 2022


Il 27/10/22 11:40, Konrad Dybcio ha scritto:
> 
> On 27/10/2022 11:28, AngeloGioacchino Del Regno wrote:
>> Il 29/07/22 14:00, Konrad Dybcio ha scritto:
>>>
>>>
>>> On 29.07.2022 12:44, AngeloGioacchino Del Regno wrote:
>>>> Add a basic support for the Sony Xperia M5 (codename "Holly")
>>>> smartphone, powered by a MediaTek Helio X10 SoC.
>>>>
>>>> This achieves a console boot.
>>>>
>>>> Signed-off-by: AngeloGioacchino Del Regno 
>>>> <angelogioacchino.delregno at collabora.com>
>>
>> Hello Konrad,
>> First of all, I'm sorry for the very late reply.
>>
>>>> ---
>>>>   arch/arm64/boot/dts/mediatek/Makefile         |  1 +
>>>>   .../dts/mediatek/mt6795-sony-xperia-m5.dts    | 90 +++++++++++++++++++
>>>>   2 files changed, 91 insertions(+)
>>>>   create mode 100644 arch/arm64/boot/dts/mediatek/mt6795-sony-xperia-m5.dts
>>>>
>>>> diff --git a/arch/arm64/boot/dts/mediatek/Makefile 
>>>> b/arch/arm64/boot/dts/mediatek/Makefile
>>>> index af362a085a02..72fd683c9264 100644
>>>> --- a/arch/arm64/boot/dts/mediatek/Makefile
>>>> +++ b/arch/arm64/boot/dts/mediatek/Makefile
>>>> @@ -3,6 +3,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += mt2712-evb.dtb
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6755-evb.dtb
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6779-evb.dtb
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-evb.dtb
>>>> +dtb-$(CONFIG_ARCH_MEDIATEK) += mt6795-sony-xperia-m5.dtb
>>> -holly.dtb?
>>>
>>
>> I prefer using the commercial name to identify the device.
>> "Holly" is the smartphone project codename and that is mentioned almost nowhere:
>> the aim here is to enhance readability as to make it immediately understandable
>> that this devicetree is for the Xperia M5 device.
> 
> Ok, sounds good.
> 
> 
>>
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-evb.dtb
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt6797-x20-dev.dtb
>>>>   dtb-$(CONFIG_ARCH_MEDIATEK) += mt7622-rfb1.dtb
>>>> diff --git a/arch/arm64/boot/dts/mediatek/mt6795-sony-xperia-m5.dts 
>>>> b/arch/arm64/boot/dts/mediatek/mt6795-sony-xperia-m5.dts
>>>> new file mode 100644
>>>> index 000000000000..94d011c4126c
>>>> --- /dev/null
>>>> +++ b/arch/arm64/boot/dts/mediatek/mt6795-sony-xperia-m5.dts
>>>> @@ -0,0 +1,90 @@
>>>> +// SPDX-License-Identifier: GPL-2.0-only
>>>> +/*
>>>> + * Copyright (c) 2022, Collabora Ltd
>>>> + * Author: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>
>>>> + */
>>>> +
>>>> +/dts-v1/;
>>>> +#include "mt6795.dtsi"
>>>> +
>>>> +#include <dt-bindings/gpio/gpio.h>
>>> Looks unused.
>>>
>>
>> Right, I'll remove that in v2.
>>
>>>> +
>>>> +/ {
>>>> +    model = "Sony Xperia M5";
>>>> +    compatible = "sony,xperia-m5", "mediatek,mt6795";
>>> sony,holly?
>>>
>>
>> I'm sorry, but I can't understand the sense of adding that compatible string to
>> the mix. To the kernel, it doesn't mean anything - and we already have another
>> string advertising the specific machine, which is "sony,xperia-m5".
> 
> I was suggesting replacing xperia-m5 with holly, but since we agreed on keeping
> 
> m5 in the dtb name, I suppose it's fine for this one to stay too.
> 
> 
>>
>> Of course, there is no Xperia M5 with a different SoC and, even if there was a
>> xperia-m5 with a different SoC, we anyway have both a machine compatible and a
>> SoC compatible in here, so that would still not pose any issue.
>>
>>>> +    chassis-type = "handset";
>>>> +
>>>> +    aliases {
>>>> +        mmc0 = &mmc0;
>>>> +        mmc1 = &mmc1;
>>>> +        serial0 = &uart0;
>>>> +        serial1 = &uart1;
>>>> +    };
>>>> +
>>>> +    memory at 40000000 {
>>>> +        device_type = "memory";
>>>> +        reg = <0 0x40000000 0 0x1E800000>;
>>> Lowercase hex in size. Also, doesn't the bootloader fill it in?
>>>
>>
>> Updating the device to the latest software version will give you a bootloader
>> that fills that in, but the first-ever software release contains one that will
>> not do that in particular conditions (fastboot boot).
> 
> Ugh. If only vendors tested their software before shipping it to users..
> 
> I think it's worth to adding a comment mentioning that, though.
> 
> 
>>
>>>> +    };
>>>> +
>>>> +    reserved_memory: reserved-memory {
>>>> +        #address-cells = <2>;
>>>> +        #size-cells = <2>;
>>>> +        ranges;
>>>> +
>>>> +        /* 128 KiB reserved for ARM Trusted Firmware (BL31) */
>>> Is that true for all devices with this SoC, or..? If so, it may be worth
>>> moving this into mt6795.dtsi.
>>>

Sorry again, I forgot to reply to this question, so addressing that now:
no, that's not true for all devices with this SoC.

I'm practically sure that all commercial devices that were shipped at that time
require the same, but here upstream we also have a MT6795 dev board devicetree,
which uses a much newer bootloader and possibly needs a different secmon carveout,
if any at all.

Hence, this one cannot be transferred to mt6795.dtsi.




More information about the Linux-mediatek mailing list