Re: [RFC PATCH V4 6/6] riscv: soc: Add Allwinner SoC kconfig option

From: Maxime Ripard
Date: Tue Sep 14 2021 - 03:20:56 EST


Hi,

On Tue, Sep 14, 2021 at 05:49:52AM +0200, Heinrich Schuchardt wrote:
> > Hi,
> >
> > On Sat, Sep 11, 2021 at 05:21:39PM +0800, guoren@xxxxxxxxxx wrote:
> > > From: Liu Shaohua <liush@xxxxxxxxxxxxxxxxx>
> > >
> > > 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@xxxxxxxxxxxxxxxxx>
> > > Signed-off-by: Guo Ren <guoren@xxxxxxxxxxxxxxxxx>
> > > Signed-off-by: Wei Fu <wefu@xxxxxxxxxx>
> > > Cc: Anup Patel <anup.patel@xxxxxxx>
> > > Cc: Atish Patra <atish.patra@xxxxxxx>
> > > Cc: Christoph Hellwig <hch@xxxxxx>
> > > Cc: Chen-Yu Tsai <wens@xxxxxxxx>
> > > Cc: Drew Fustini <drew@xxxxxxxxxxxxxxx>
> > > Cc: Maxime Ripard <maxime@xxxxxxxxxx>
> > > Cc: Palmer Dabbelt <palmerdabbelt@xxxxxxxxxx>
> > > Cc: Wei Wu <lazyparser@xxxxxxxxx>
> > > ---
> > > 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.
>
> The draft of the RISC-V platform specification is available here:
> https://github.com/riscv/riscv-platform-specs/blob/main/riscv-platform-spec.adoc#uartserial-console
>
> The specification requires in section "2.1.5.1. UART/Serial Console" that on
> platforms with a rich operating system (e.g. Linux) you have a serial
> console. Hence requiring 8250 support for the D1 CPU is justified.

I mean, not really? The platform is required to have a UART, but nothing
requires the kernel to have a driver for it as far as I'm aware.

Maxime

Attachment: signature.asc
Description: PGP signature