lkml.org 
[lkml]   [2021]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [RFC PATCH V4 6/6] riscv: soc: Add Allwinner SoC kconfig option
On Tue, Sep 14, 2021 at 8:36 AM Randy Dunlap <rdunlap@infradead.org> wrote:
>
> 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.

AFAIK, having a separate defconfig for each platform is not going
to fly with distros (AFAIK). We can't expect dirstros to release
separate RISC-V kernel image for each platform. In fact, ARM64
kernel has just one defconfig whereas ARM32 kernel has
consolidated and minimized number of defconfigs.

The long term goal for Linux RISC-V is to support single kernel
image booting on multiple-platforms. Of course, users can always
strip down the kernel using their custom defconfigs.

Regards,
Anup

>
> Anyway, it's Palmer's choice.
>
> thanks.
> --
> ~Randy
>

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