[RFC 00/27] RISC-V: Convert SOC_FOO symbols to ARCH_FOO
Conor Dooley
conor.dooley at microchip.com
Mon Sep 26 01:02:57 PDT 2022
On Mon, Sep 26, 2022 at 10:50:42AM +0900, Damien Le Moal wrote:
> On 9/24/22 03:55, Conor Dooley wrote:
> > From: Conor Dooley <conor.dooley at microchip.com>
> >
> > Following on from LPC, here's the start of my efforts to clean up
> > Kconfig.socs.
> >
> > My preference would be to take the whole thing through the RISC-V tree
> > for v6.2 to make things a bit less fiddly, but I am sending this as an
> > RFC in the hopes of getting some opinions on how the series should be
> > split up & merged. I guess it would always be possible to create a few
> > immutable branches for the individual subsystems that are being modified
> > & take the series through the riscv tree unless we hit a conflict in
> > -next. Obiviously for that route, maintainer acks will be needed.
> >
> > The only SoCs I have, at the moment ;), are the jh7100, mpfs, fu540 and
> > the k210 so I've given those a whirl to make sure I didn't break
> > something.
> >
> > I have also yet to deal with ARCH_VIRT, but just throwing this out for
> > some opinions on how to apply/split up the set before finalising a v1.
> >
> > I've CCed a few people that may have an opinion here, but anyone that
> > has an opinion here - please shout!
> >
> > One other point, is it worth adding something to the patch acceptance
> > policy to say "do your kconfig xyz way" or is that not something that's
> > worth doing since it is easy to push people in the right direction
> > during review?
> >
> > The series is currently on top of:
> > https://lore.kernel.org/all/20220908142914.359777-1-cristian.ciocaltea@collabora.com/
>
> It is not very nice to change the config option names as that can break
> user build environments, e.g. buildroot setups that have tweaked kernel
> configs.
Yeah & I am not sure what could be done there other than define both
symbols in the defconfig externally. I am loathe to break someone's
setup, but defconfig is not in the "thou shalt not break" category is
it?
> What's wrong with the SOC_XXX names? Changing these to ARCH_XXX is
> weird since the ARCH prefix is generally used for ISA differentiation
> rather than boards/SoCs.
The ARM{,64} vendors coming to RISC-V already have an ARCH_FOO symbol
defined. For the sake of consistency (and to avoid having two symbols
for one SoC since they already have ARCH_FOO scattered around the
kernel) I renamed the "incumbent" symbols to match. FWIW ARCH_FOO for
uarchs is more common than SOC_FOO..
My heart is not dead-set on the rename, only my OCD!
Thanks,
Conor.
> >
> > Conor Dooley (27):
> > clk: microchip: replace SOC_MICROCHIP_POLARFIRE with ARCH_MICROCHIP
> > i2c: microchip-corei2c: replace SOC_MICROCHIP_POLARFIRE with
> > ARCH_MICROCHIP
> > mailbox: mpfs: replace SOC_MICROCHIP_POLARFIRE with ARCH_MICROCHIP
> > usb: musb: mpfs: replace SOC_MICROCHIP_POLARFIRE with ARCH_MICROCHIP
> > rtc: mpfs: replace SOC_MICROCHIP_POLARFIRE with ARCH_MICROCHIP
> > riscv: stop selecting the PolarFire SoC clock driver
> > riscv: replace SOC_STARFIVE with ARCH_STARFIVE
> > clk: starfive: replace SOC_STARFIVE with ARCH_STARFIVE
> > pinctrl: starfive: replace SOC_STARFIVE with ARCH_STARFIVE
> > reset: starfive: replace SOC_STARFIVE with ARCH_STARFIVE
> > riscv: replace SOC_SIFIVE with ARCH_SIFIVE
> > soc: sifive: convert SOC_SIFIVE to ARCH_SIFIVE
> > clk: sifive: convert SOC_SIFIVE to ARCH_SIFIVE
> > clk: sifive: select by default if ARCH_SIFIVE
> > serial: sifive: select by default if ARCH_SIFIVE
> > PCI: dwc: fu740: convert SOC_SIFIVE to ARCH_SIFIVE
> > riscv: stop selecting SiFive clock and serial drivers directly
> > riscv: convert SOC_VIRT to ARCH_VIRT
> > kunit: tool: rename SOC_VIRT to ARCH_VIRT in riscv's QEMU config
> > wireguard: selftests: swap SOC_VIRT for ARCH_VIRT on riscv
> > riscv: convert SOC_CANAAN to ARCH_CANAAN
> > clk: k210: convert SOC_CANAAN to ARCH_CANAAN
> > pinctrl: k210: convert SOC_CANAAN to ARCH_CANAAN
> > soc: k210: convert SOC_CANAAN to ARCH_CANAAN
> > reset: k210: convert SOC_CANAAN to ARCH_CANAAN
> > serial: sifive: select by default if ARCH_CANAAN
> > riscv: stop directly selecting drivers for ARCH_CANAAN
> >
> > arch/riscv/Kconfig.socs | 30 +++++++------------
> > arch/riscv/Makefile | 2 +-
> > arch/riscv/boot/dts/Makefile | 2 +-
> > arch/riscv/boot/dts/canaan/Makefile | 14 ++++-----
> > arch/riscv/boot/dts/sifive/Makefile | 2 +-
> > arch/riscv/boot/dts/starfive/Makefile | 2 +-
> > arch/riscv/configs/defconfig | 6 ++--
> > arch/riscv/configs/nommu_k210_defconfig | 2 +-
> > .../riscv/configs/nommu_k210_sdcard_defconfig | 2 +-
> > arch/riscv/configs/nommu_virt_defconfig | 2 +-
> > arch/riscv/configs/rv32_defconfig | 4 +--
> > drivers/clk/Kconfig | 4 +--
> > drivers/clk/Makefile | 2 +-
> > drivers/clk/microchip/Kconfig | 3 +-
> > drivers/clk/sifive/Kconfig | 4 ++-
> > drivers/clk/starfive/Kconfig | 6 ++--
> > drivers/i2c/busses/Kconfig | 2 +-
> > drivers/mailbox/Kconfig | 2 +-
> > drivers/pci/controller/dwc/Kconfig | 2 +-
> > drivers/pinctrl/Kconfig | 8 ++---
> > drivers/reset/Kconfig | 8 ++---
> > drivers/rtc/Kconfig | 2 +-
> > drivers/soc/Makefile | 4 +--
> > drivers/soc/canaan/Kconfig | 4 +--
> > drivers/soc/sifive/Kconfig | 2 +-
> > drivers/tty/serial/Kconfig | 2 ++
> > drivers/usb/musb/Kconfig | 2 +-
> > tools/testing/kunit/qemu_configs/riscv.py | 2 +-
> > .../wireguard/qemu/arch/riscv32.config | 2 +-
> > .../wireguard/qemu/arch/riscv64.config | 2 +-
> > 30 files changed, 64 insertions(+), 67 deletions(-)
> >
>
> --
> Damien Le Moal
> Western Digital Research
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv
More information about the linux-riscv
mailing list