lkml.org 
[lkml]   [2021]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC PATCH V4 6/6] riscv: soc: Add Allwinner SoC kconfig option
From
Date
On 9/13/21 7:34 PM, Guo Ren wrote:
> On Tue, Sep 14, 2021 at 2:49 AM Randy Dunlap <rdunlap@infradead.org> wrote:
>>
>> On 9/13/21 2:20 AM, Guo Ren wrote:
>>> On Mon, Sep 13, 2021 at 4:45 PM Maxime Ripard <maxime@cerno.tech> wrote:
>>>>
>>>> Hi,
>>>>
>>>> On Sat, Sep 11, 2021 at 05:21:39PM +0800, guoren@kernel.org wrote:
>>>>> From: Liu Shaohua <liush@allwinnertech.com>
>>>>>
>>>>> Add Allwinner kconfig option which selects SoC specific and common
>>>>> drivers that is required for this SoC.
>>>>>
>>>>> Allwinner D1 uses custom PTE attributes to solve non-coherency SOC
>>>>> interconnect issues for dma synchronization, so we set the default
>>>>> value when SOC_SUNXI selected.
>>>>>
>>>>> Signed-off-by: Liu Shaohua <liush@allwinnertech.com>
>>>>> Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
>>>>> Signed-off-by: Wei Fu <wefu@redhat.com>
>>>>> Cc: Anup Patel <anup.patel@wdc.com>
>>>>> Cc: Atish Patra <atish.patra@wdc.com>
>>>>> Cc: Christoph Hellwig <hch@lst.de>
>>>>> Cc: Chen-Yu Tsai <wens@csie.org>
>>>>> Cc: Drew Fustini <drew@beagleboard.org>
>>>>> Cc: Maxime Ripard <maxime@cerno.tech>
>>>>> Cc: Palmer Dabbelt <palmerdabbelt@google.com>
>>>>> Cc: Wei Wu <lazyparser@gmail.com>
>>>>> ---
>>>>> arch/riscv/Kconfig.socs | 15 +++++++++++++++
>>>>> arch/riscv/configs/defconfig | 1 +
>>>>> 2 files changed, 16 insertions(+)
>>>>>
>>>>> diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
>>>>> index 30676ebb16eb..8721c000ef23 100644
>>>>> --- a/arch/riscv/Kconfig.socs
>>>>> +++ b/arch/riscv/Kconfig.socs
>>>>> @@ -70,4 +70,19 @@ config SOC_CANAAN_K210_DTB_SOURCE
>>>>>
>>>>> endif
>>>>>
>>>>> +config SOC_SUNXI
>>>>> + bool "Allwinner SoCs"
>>>>> + depends on MMU
>>>>> + select DWMAC_GENERIC
>>>>> + select ERRATA_THEAD
>>>>> + select RISCV_DMA_NONCOHERENT
>>>>> + select RISCV_ERRATA_ALTERNATIVE
>>>>> + select SERIAL_8250
>>>>> + select SERIAL_8250_CONSOLE
>>>>> + select SERIAL_8250_DW
>>>>> + select SIFIVE_PLIC
>>>>> + select STMMAC_ETH
>>>>> + help
>>>>> + This enables support for Allwinner SoC platforms like the D1.
>>>>> +
>>>>
>>>> I'm not sure we should select the drivers there. We could very well
>>>> imagine a board without UART, or even more so without ethernet.
>>> We just want people could bring D1 up easier, 8250 is the basic component.
>>>
>>>
>>>>
>>>> These options should be in the defconfig.
>>
>> Agreed, using a defconfig is the right way to do this.
> Put 8250 related configs into arch/riscv/configs/defconfig?
>
> @Palmer Dabbelt @Arnd Bergmann, How do you think about that?
> (defconfig or Kconfig.soc)
> My purpose is when people make the Image from riscv/defconfig, then
> the Image could run on all platforms include D1.

Hi,

I certainly did not understand your purpose with the patch being
able to build a kernel that would run on multiple platforms.
Still, I would not expect to see one platform cause unnecessary
drivers to be built for platforms that don't need them.

Kconfig.socs in arch/riscv/ is a bit of an unusual Kconfig file
IMO -- I suppose what you want to do fits into its style.

AFAIK the suggestion to use a defconfig (at least my suggestion)
was expecting to have a defconfig for each platform, but that
would not give you a boot image that could run on all platforms.

Anyway, it's Palmer's choice.

thanks.
--
~Randy

\
 
 \ /
  Last update: 2021-09-14 05:06    [W:0.102 / U:0.144 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site