From: Linus Walleij <linus.walleij@linaro.org> To: SoC Team <soc@kernel.org>, arm-soc <arm@kernel.org> Cc: Linux ARM <linux-arm-kernel@lists.infradead.org>, Arnd Bergmann <arnd@arndb.de>, Imre Kaloz <kaloz@openwrt.org>, Krzysztof Halasa <khalasa@piap.pl>, Corentin Labbe <clabbe@baylibre.com> Subject: [GIT PULL] IXP4xx modernizations for v5.14 Date: Fri, 18 Jun 2021 10:50:31 +0200 [thread overview] Message-ID: <CACRpkdbw6HSpp7k6q1FYGmtafLmdAu8bFnpHQOdfBDYYsdLbkw@mail.gmail.com> (raw) Hi ARM SoC maintainers, here is a constructive pull request for modernizing IXP4xx. As modernizing architectures go, it's cutting some corners and being a bit different from regular new architectures. The main details of the contents are in the signed tag, but note the following: Arnd's patch to move CPU detection hits drivers all over the place - that is natural. hwrandom changes are ACKed by the hwrandom maintainer and PCI changes are ACKed by the PCI maintainers. Some modernization was merged in parallel into the crypto subsystem for dependencies on other modernizations of the crypto driver. These make rid of the need to include <mach/*> or <soc/*> headers but in order to not create a fuzz during the merge window or in linux-next I have added these three lines to the crypto driver: +/* Intermittent includes, delete this after v5.14-rc1 */ +#include <linux/soc/ixp4xx/cpu.h> +#include <mach/ixp4xx-regs.h> This makes everything compile and merge nicely in -next. (Tested to merge things into -next, no colissions.) We will get rid of them after the merge window. No big deal. For the next merge window we will be able to start to delete boardfiles and surplus ixp4xx drivers as modernization continues. Main stakeholder is the OpenWrt community. I would really like this to land in v5.14 as we have some momentum but I know it may be a bit late in the merge cycle. Pretty please. Please pull it in! Yours, Linus Walleij The following changes since commit 6efb943b8616ec53a5e444193dccf1af9ad627b5: Linux 5.13-rc1 (2021-05-09 14:17:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git tags/ixp4xx-arm-soc-v5.14 for you to fetch changes up to 0da518dae87dd18e5f23e406e15575f393e4a97c: ixp4xx: fix spelling mistake in Kconfig "Devce" -> "Device" (2021-06-17 15:31:05 +0200) ---------------------------------------------------------------- This is a major chunk of IXP4xx modernization: - Fist we move some registers around to make room for the predetermined PCI I/O space. - Then we add some Kconfig options to make it possible to use the old PCI driver in parallell with the new shiny one. - Then we add the new PCI driver and some bindings for it. - On top of this we add an (ages old) patch from Arnd that centralize the CPU/SoC detection in drivers/soc and make the header a standard Linux header to avoid the <mach/*> business in drivers. - Then we split out and modernize some platform data headers for pata, and hwrandom, and top it up with DT bindings and support for hwrandom. ---------------------------------------------------------------- Arnd Bergmann (3): soc: ixp4xx: move cpu detection to linux/soc/ixp4xx/cpu.h pata: ixp4xx: split platform data to its own header hw_random: ixp4xx: enable compile-testing Colin Ian King (1): ixp4xx: fix spelling mistake in Kconfig "Devce" -> "Device" Linus Walleij (8): ARM/ixp4xx: Move the virtual IObases ARM/ixp4xx: Make NEED_MACH_IO_H optional PCI: ixp4xx: Add device tree bindings for IXP4xx PCI: ixp4xx: Add a new driver for IXP4xx hw_random: ixp4xx: Use SPDX license tag hw_random: ixp4xx: Turn into a module hw_random: ixp4xx: Add DT bindings hw_random: ixp4xx: Add OF support .../devicetree/bindings/pci/intel,ixp4xx-pci.yaml | 100 +++ .../devicetree/bindings/rng/intel,ixp46x-rng.yaml | 36 ++ MAINTAINERS | 7 + arch/arm/Kconfig | 3 +- arch/arm/Kconfig.debug | 4 +- arch/arm/mach-ixp4xx/Kconfig | 35 +- arch/arm/mach-ixp4xx/avila-setup.c | 1 + arch/arm/mach-ixp4xx/common.c | 47 +- arch/arm/mach-ixp4xx/fsg-setup.c | 1 + arch/arm/mach-ixp4xx/include/mach/cpu.h | 54 -- arch/arm/mach-ixp4xx/include/mach/hardware.h | 2 +- arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h | 61 +- arch/arm/mach-ixp4xx/include/mach/platform.h | 14 - arch/arm/mach-ixp4xx/ixp4xx-of.c | 8 +- arch/arm/mach-ixp4xx/nas100d-setup.c | 1 + arch/arm/mach-ixp4xx/nslu2-setup.c | 1 + drivers/ata/Kconfig | 2 +- drivers/ata/pata_ixp4xx_cf.c | 1 + drivers/char/hw_random/Kconfig | 2 +- drivers/char/hw_random/ixp4xx-rng.c | 53 +- drivers/crypto/ixp4xx_crypto.c | 4 + drivers/net/ethernet/xscale/ixp4xx_eth.c | 2 + drivers/net/ethernet/xscale/ptp_ixp46x.c | 3 +- drivers/net/wan/ixp4xx_hss.c | 1 + drivers/pci/controller/Kconfig | 8 + drivers/pci/controller/Makefile | 1 + drivers/pci/controller/pci-ixp4xx.c | 671 +++++++++++++++++++++ drivers/soc/ixp4xx/ixp4xx-npe.c | 2 + drivers/soc/ixp4xx/ixp4xx-qmgr.c | 2 + include/linux/platform_data/pata_ixp4xx_cf.h | 21 + include/linux/soc/ixp4xx/cpu.h | 106 ++++ 31 files changed, 1079 insertions(+), 175 deletions(-) create mode 100644 Documentation/devicetree/bindings/pci/intel,ixp4xx-pci.yaml create mode 100644 Documentation/devicetree/bindings/rng/intel,ixp46x-rng.yaml delete mode 100644 arch/arm/mach-ixp4xx/include/mach/cpu.h create mode 100644 drivers/pci/controller/pci-ixp4xx.c create mode 100644 include/linux/platform_data/pata_ixp4xx_cf.h create mode 100644 include/linux/soc/ixp4xx/cpu.h
WARNING: multiple messages have this Message-ID (diff)
From: Linus Walleij <linus.walleij@linaro.org> To: SoC Team <soc@kernel.org>, arm-soc <arm@kernel.org> Cc: Linux ARM <linux-arm-kernel@lists.infradead.org>, Arnd Bergmann <arnd@arndb.de>, Imre Kaloz <kaloz@openwrt.org>, Krzysztof Halasa <khalasa@piap.pl>, Corentin Labbe <clabbe@baylibre.com> Subject: [GIT PULL] IXP4xx modernizations for v5.14 Date: Fri, 18 Jun 2021 10:50:31 +0200 [thread overview] Message-ID: <CACRpkdbw6HSpp7k6q1FYGmtafLmdAu8bFnpHQOdfBDYYsdLbkw@mail.gmail.com> (raw) Message-ID: <20210618085031.Vk4a39iYOPS9_QYuWuM7B1l4MUgye_jkA5MYoDrKY1M@z> (raw) Hi ARM SoC maintainers, here is a constructive pull request for modernizing IXP4xx. As modernizing architectures go, it's cutting some corners and being a bit different from regular new architectures. The main details of the contents are in the signed tag, but note the following: Arnd's patch to move CPU detection hits drivers all over the place - that is natural. hwrandom changes are ACKed by the hwrandom maintainer and PCI changes are ACKed by the PCI maintainers. Some modernization was merged in parallel into the crypto subsystem for dependencies on other modernizations of the crypto driver. These make rid of the need to include <mach/*> or <soc/*> headers but in order to not create a fuzz during the merge window or in linux-next I have added these three lines to the crypto driver: +/* Intermittent includes, delete this after v5.14-rc1 */ +#include <linux/soc/ixp4xx/cpu.h> +#include <mach/ixp4xx-regs.h> This makes everything compile and merge nicely in -next. (Tested to merge things into -next, no colissions.) We will get rid of them after the merge window. No big deal. For the next merge window we will be able to start to delete boardfiles and surplus ixp4xx drivers as modernization continues. Main stakeholder is the OpenWrt community. I would really like this to land in v5.14 as we have some momentum but I know it may be a bit late in the merge cycle. Pretty please. Please pull it in! Yours, Linus Walleij The following changes since commit 6efb943b8616ec53a5e444193dccf1af9ad627b5: Linux 5.13-rc1 (2021-05-09 14:17:44 -0700) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git tags/ixp4xx-arm-soc-v5.14 for you to fetch changes up to 0da518dae87dd18e5f23e406e15575f393e4a97c: ixp4xx: fix spelling mistake in Kconfig "Devce" -> "Device" (2021-06-17 15:31:05 +0200) ---------------------------------------------------------------- This is a major chunk of IXP4xx modernization: - Fist we move some registers around to make room for the predetermined PCI I/O space. - Then we add some Kconfig options to make it possible to use the old PCI driver in parallell with the new shiny one. - Then we add the new PCI driver and some bindings for it. - On top of this we add an (ages old) patch from Arnd that centralize the CPU/SoC detection in drivers/soc and make the header a standard Linux header to avoid the <mach/*> business in drivers. - Then we split out and modernize some platform data headers for pata, and hwrandom, and top it up with DT bindings and support for hwrandom. ---------------------------------------------------------------- Arnd Bergmann (3): soc: ixp4xx: move cpu detection to linux/soc/ixp4xx/cpu.h pata: ixp4xx: split platform data to its own header hw_random: ixp4xx: enable compile-testing Colin Ian King (1): ixp4xx: fix spelling mistake in Kconfig "Devce" -> "Device" Linus Walleij (8): ARM/ixp4xx: Move the virtual IObases ARM/ixp4xx: Make NEED_MACH_IO_H optional PCI: ixp4xx: Add device tree bindings for IXP4xx PCI: ixp4xx: Add a new driver for IXP4xx hw_random: ixp4xx: Use SPDX license tag hw_random: ixp4xx: Turn into a module hw_random: ixp4xx: Add DT bindings hw_random: ixp4xx: Add OF support .../devicetree/bindings/pci/intel,ixp4xx-pci.yaml | 100 +++ .../devicetree/bindings/rng/intel,ixp46x-rng.yaml | 36 ++ MAINTAINERS | 7 + arch/arm/Kconfig | 3 +- arch/arm/Kconfig.debug | 4 +- arch/arm/mach-ixp4xx/Kconfig | 35 +- arch/arm/mach-ixp4xx/avila-setup.c | 1 + arch/arm/mach-ixp4xx/common.c | 47 +- arch/arm/mach-ixp4xx/fsg-setup.c | 1 + arch/arm/mach-ixp4xx/include/mach/cpu.h | 54 -- arch/arm/mach-ixp4xx/include/mach/hardware.h | 2 +- arch/arm/mach-ixp4xx/include/mach/ixp4xx-regs.h | 61 +- arch/arm/mach-ixp4xx/include/mach/platform.h | 14 - arch/arm/mach-ixp4xx/ixp4xx-of.c | 8 +- arch/arm/mach-ixp4xx/nas100d-setup.c | 1 + arch/arm/mach-ixp4xx/nslu2-setup.c | 1 + drivers/ata/Kconfig | 2 +- drivers/ata/pata_ixp4xx_cf.c | 1 + drivers/char/hw_random/Kconfig | 2 +- drivers/char/hw_random/ixp4xx-rng.c | 53 +- drivers/crypto/ixp4xx_crypto.c | 4 + drivers/net/ethernet/xscale/ixp4xx_eth.c | 2 + drivers/net/ethernet/xscale/ptp_ixp46x.c | 3 +- drivers/net/wan/ixp4xx_hss.c | 1 + drivers/pci/controller/Kconfig | 8 + drivers/pci/controller/Makefile | 1 + drivers/pci/controller/pci-ixp4xx.c | 671 +++++++++++++++++++++ drivers/soc/ixp4xx/ixp4xx-npe.c | 2 + drivers/soc/ixp4xx/ixp4xx-qmgr.c | 2 + include/linux/platform_data/pata_ixp4xx_cf.h | 21 + include/linux/soc/ixp4xx/cpu.h | 106 ++++ 31 files changed, 1079 insertions(+), 175 deletions(-) create mode 100644 Documentation/devicetree/bindings/pci/intel,ixp4xx-pci.yaml create mode 100644 Documentation/devicetree/bindings/rng/intel,ixp46x-rng.yaml delete mode 100644 arch/arm/mach-ixp4xx/include/mach/cpu.h create mode 100644 drivers/pci/controller/pci-ixp4xx.c create mode 100644 include/linux/platform_data/pata_ixp4xx_cf.h create mode 100644 include/linux/soc/ixp4xx/cpu.h _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2021-06-18 8:50 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-18 8:50 Linus Walleij [this message] 2021-06-18 8:50 ` [GIT PULL] IXP4xx modernizations for v5.14 Linus Walleij 2021-06-24 2:40 ` patchwork-bot+linux-soc
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CACRpkdbw6HSpp7k6q1FYGmtafLmdAu8bFnpHQOdfBDYYsdLbkw@mail.gmail.com \ --to=linus.walleij@linaro.org \ --cc=arm@kernel.org \ --cc=arnd@arndb.de \ --cc=clabbe@baylibre.com \ --cc=kaloz@openwrt.org \ --cc=khalasa@piap.pl \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=soc@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).