[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e46bb02d-961d-672d-76c7-9844d76ee69b@canonical.com>
Date: Tue, 14 Sep 2021 05:49:52 +0200
From: Heinrich Schuchardt <heinrich.schuchardt@...onical.com>
To: guoren@...nel.org, Liu Shaohua <liush@...winnertech.com>,
wefu@...hat.com
Cc: anup.patel@....com, atish.patra@....com, palmerdabbelt@...gle.com,
christoph.muellner@...ll.eu, philipp.tomsich@...ll.eu, hch@....de,
liush@...winnertech.com, lazyparser@...il.com,
drew@...gleboard.org, linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org, taiten.peng@...onical.com,
aniket.ponkshe@...onical.com, gordan.markus@...onical.com,
Guo Ren <guoren@...ux.alibaba.com>,
Chen-Yu Tsai <wens@...e.org>, Maxime Ripard <maxime@...no.tech>
Subject: Re: [RFC PATCH V4 6/6] riscv: soc: Add Allwinner SoC kconfig option
On 9/13/21 10:45 AM, Maxime Ripard wrote:
> Hi,
>
> On Sat, Sep 11, 2021 at 05:21:39PM +0800, guoren@...nel.org wrote:
>> From: Liu Shaohua <liush@...winnertech.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@...winnertech.com>
>> Signed-off-by: Guo Ren <guoren@...ux.alibaba.com>
>> Signed-off-by: Wei Fu <wefu@...hat.com>
>> Cc: Anup Patel <anup.patel@....com>
>> Cc: Atish Patra <atish.patra@....com>
>> Cc: Christoph Hellwig <hch@....de>
>> Cc: Chen-Yu Tsai <wens@...e.org>
>> Cc: Drew Fustini <drew@...gleboard.org>
>> Cc: Maxime Ripard <maxime@...no.tech>
>> Cc: Palmer Dabbelt <palmerdabbelt@...gle.com>
>> Cc: Wei Wu <lazyparser@...il.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.
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.
In the riscv defconfig as of v5.14 we have:
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y
# CONFIG_SERIAL_8250_DW is not set
(Support for Synopsys DesignWare 8250 quirks)
CONFIG_SERIAL_8250_DW should be enabled (=y) in the defconfig.
As the specification requires a 16550 UART and marks 8250 as deprecated
I expect that future Allwinner SoCs will move to 16550. Calling a
Kconfig menu item "Allwinner SoCs" which includes all future Allwinner
SoCs irritates me. How about CONFIG_SOC_SUNXI_D1 instead?
Why does the patch use 'depends on MMU' and does not 'select MMU'?
Best regards
Heinrich
>
> These options should be in the defconfig.
>
> Maxime
>
Powered by blists - more mailing lists