From: Yangyu Chen <cyy@cyyself.name>
To: Damien Le Moal <dlemoal@kernel.org>
Cc: Conor Dooley <conor@kernel.org>,
linux-riscv@lists.infradead.org, Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>, Guo Ren <guoren@kernel.org>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
Conor Dooley <conor.dooley@microchip.com>
Subject: Re: [PATCH v3 5/7] riscv: Kconfig.socs: Allow SOC_CANAAN with MMU for K230
Date: Thu, 14 Mar 2024 00:56:56 +0800 [thread overview]
Message-ID: <tencent_9543398AE3BAC424842837CEF01508D6680A@qq.com> (raw)
In-Reply-To: <tencent_FF86EF51905CFBDF1102F721663984B2F105@qq.com>
On 2024/3/8 05:03, Yangyu Chen wrote:
>
>
>> On Mar 6, 2024, at 07:58, Damien Le Moal <dlemoal@kernel.org> wrote:
>>
>> On 3/6/24 02:20, Conor Dooley wrote:
>>> On Tue, Mar 05, 2024 at 03:47:15PM +0800, Yangyu Chen wrote:
>>>> On 2024/3/5 07:46, Damien Le Moal wrote:
>>>>> On 3/5/24 06:05, Yangyu Chen wrote:
>>>>>> Since K230 was released, SOC_CANAAN is no longer only referred to the K210.
>>>>>> Remove it depends on !MMU will allow building dts for K230 and remove the
>>>>>> K210 string from the help message.
>>>>>>
>>>>>> Signed-off-by: Yangyu Chen <cyy@cyyself.name>
>>>>>> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
>>>>>> ---
>>>>>> arch/riscv/Kconfig.socs | 5 ++---
>>>>>> 1 file changed, 2 insertions(+), 3 deletions(-)
>>>>>>
>>>>>> diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
>>>>>> index 623de5f8a208..b4e9b7f75510 100644
>>>>>> --- a/arch/riscv/Kconfig.socs
>>>>>> +++ b/arch/riscv/Kconfig.socs
>>>>>> @@ -75,13 +75,12 @@ config ARCH_CANAAN
>>>>>> def_bool SOC_CANAAN
>>>>>> config SOC_CANAAN
>>>>>> - bool "Canaan Kendryte K210 SoC"
>>>>>> - depends on !MMU
>>>>>
>>>>> This seems wrong to me. The k210 support does require no-mmu. So why remove
>>>>> this ?
>>>>
>>>> It just allows SOC_CANAAN to be selected when MMU=y. With this patch,
>>>> nommu_k210_defconfig still works.
>>>
>>> I think the concern here is that this would allow people to build a
>>> kernel for the k120 with the MMU enabled, not that the existing nommu
>>> build will be affected.
>>
>> Yes, this is my concern. Apologies for the lack of clarity.
>>
>
> Hi,
>
> Thanks for the review comments. After thinking about it for a while,
> I think we don't need to change it as we have changed the help
> message which deleted the "K210". And the dts on k210.dtsi shows
> mmu-type is riscv.none, I think if someone noticed this would know
> why it fails to boot on the S-Mode MMU Kernel on K210. The only
> special thing for ARCH_CANAAN is that a loader.bin will be built
> when M-Mode is on arch/riscv/Makefile. However, Canaan has no other
> M-Mode chips except for K210. So I think we don't need to change
> it.
>
> Another reason is that SOC_CANAAN for K210 is somehow hard to change.
> If we continue using SOC_CANAAN for K210 but not for other Canaan
> SoCs such as K230, it will cause some confusion to users. If we
> rename SOC_CANAAN to SOC_CANAAN_K210, it will change many drivers
> in many subsystems like my patch v5 [1]. So I don't think we need
> to fix it.
>
>
> If we don't change it, A concern for this is that some drivers for
> K210 will be built when SOC_CANAAN=y and if we add this to defconfig,
> all riscv builds will also build some K210 drivers even on MMU. But
> I think this will not be a problem just need some memory/storage
> for a slightly bigger kernel. Also, we will enable some new configs
> in defconfig when a new soc gets supported, it's normal for K210
> SoC drivers.
>
> Thus, I think we don't need to change it. If you have some other
> opinions, please let me know.
>
> [1] https://lore.kernel.org/linux-riscv/tencent_6F35FEF31908DE6AEB385AE30AC658863C0A@qq.com/
>
> Thanks,
> Yangyu Chen
>
Hi Damien,
I'm waiting for your decision before sending the next patch revision.
Please reply to this when you are free.
Thanks,
Yangyu Chen
>>>
>>> Maybe you could squash in something like the following?
>>>
>>> diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
>>> index b4e9b7f75510..75d55059163f 100644
>>> --- a/arch/riscv/Kconfig.socs
>>> +++ b/arch/riscv/Kconfig.socs
>>> @@ -72,15 +72,19 @@ config SOC_VIRT
>>> This enables support for QEMU Virt Machine.
>>>
>>> config ARCH_CANAAN
>>> - def_bool SOC_CANAAN
>>> + bool "Canaan Kendryte SoCs"
>>> + help
>>> + This enables support for Canaan Kendryte SoC platform hardware.
>>>
>>> config SOC_CANAAN
>>> - bool "Canaan Kendryte SoC"
>>> + bool "Canaan Kendryte K210 SoC"
>>> + depends on !MMU
>>> + depends on ARCH_CANAAN
>>> select CLINT_TIMER if RISCV_M_MODE
>>> select ARCH_HAS_RESET_CONTROLLER
>>> select PINCTRL
>>> select COMMON_CLK
>>> help
>>> - This enables support for Canaan Kendryte SoC platform hardware.
>>> + This enables support for Canaan Kendryte K210 SoC platform hardware.
>>>
>>> endmenu # "SoC selection"
>>>
>>> (Which reminds me, I really need to go and finish sorting out the ARCH_
>>> stuff)
>>
>> --
>> Damien Le Moal
>> Western Digital Research
>
>
next prev parent reply other threads:[~2024-03-13 16:57 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-04 21:03 [PATCH v3 0/7] riscv: add initial support for Canaan Kendryte K230 Yangyu Chen
2024-03-04 21:05 ` [PATCH v3 1/7] dt-bindings: riscv: Add T-HEAD C908 compatible Yangyu Chen
2024-03-04 21:05 ` [PATCH v3 2/7] dt-bindings: add Canaan K230 boards compatible strings Yangyu Chen
2024-03-04 23:44 ` Damien Le Moal
2024-03-04 21:05 ` [PATCH v3 3/7] dt-bindings: timer: Add Canaan K230 CLINT Yangyu Chen
2024-03-05 14:47 ` Rob Herring
2024-03-04 21:05 ` [PATCH v3 4/7] dt-bindings: interrupt-controller: Add Canaan K230 PLIC Yangyu Chen
2024-03-05 14:48 ` Rob Herring
2024-03-04 21:05 ` [PATCH v3 5/7] riscv: Kconfig.socs: Allow SOC_CANAAN with MMU for K230 Yangyu Chen
2024-03-04 23:46 ` Damien Le Moal
2024-03-05 7:47 ` Yangyu Chen
2024-03-05 17:20 ` Conor Dooley
2024-03-05 17:50 ` Resend: " Yangyu Chen
2024-03-05 18:32 ` Yangyu Chen
2024-03-05 23:58 ` Damien Le Moal
2024-03-07 21:03 ` Yangyu Chen
2024-03-13 16:56 ` Yangyu Chen [this message]
2024-03-15 8:19 ` Damien Le Moal
2024-03-04 21:06 ` [PATCH v3 6/7] riscv: dts: add initial canmv-k230 and k230-evb dts Yangyu Chen
2024-03-05 15:54 ` Palmer Dabbelt
2024-03-05 16:22 ` Yangyu Chen
[not found] ` <7A86D933-B85F-4B29-8D6D-AB414A42AC06@cyyself.name>
2024-03-05 16:37 ` Yangyu Chen
2024-03-05 17:01 ` Conor Dooley
2024-03-05 17:17 ` Yangyu Chen
2024-03-05 17:24 ` Conor Dooley
2024-03-04 21:06 ` [PATCH v3 7/7] riscv: config: enable SOC_CANAAN in defconfig Yangyu Chen
2024-03-04 23:50 ` Damien Le Moal
2024-03-05 16:55 ` Yangyu Chen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tencent_9543398AE3BAC424842837CEF01508D6680A@qq.com \
--to=cyy@cyyself.name \
--cc=aou@eecs.berkeley.edu \
--cc=conor.dooley@microchip.com \
--cc=conor@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlemoal@kernel.org \
--cc=guoren@kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®