Re: [PATCH v2 00/16] MIPS: move pic32.h header file from asm to platform_data

From: Thomas Bogendoerfer

Date: Fri Jan 30 2026 - 09:49:48 EST


On Mon, Jan 12, 2026 at 05:47:54PM -0500, Brian Masney wrote:
> There are currently some pic32 MIPS drivers that are in tree, and are
> only configured to be compiled on the MIPS pic32 platform. There's a
> risk of breaking some of these drivers when migrating drivers away from
> legacy APIs. It happened to me with a pic32 clk driver.
>
> Let's go ahead and move the pic32.h from the asm to the platform_data
> include directory in the tree. This will make it easier, and cleaner to
> enable COMPILE_TEST for some of these pic32 drivers. To do this requires
> updating some includes, which I do at the beginning of this series.
>
> This series was compile tested on a centos-stream-10 arm64 host in two
> different configurations:
>
> - native arm64 build with COMPILE_TEST (via make allmodconfig)
> - MIPS cross compile on arm64 with:
> ARCH=mips CROSS_COMPILE=mips64-linux-gnu- make pic32mzda_defconfig
>
> Note that there is a separate MIPS compile error in linux-next, and I
> reported it at https://lore.kernel.org/all/aWVs2gVB418WiMVa@xxxxxxxxxx/
>
> I included a patch at the end that shows enabling COMPILE_TEST for a
> pic32 clk driver.
>
> Merge Strategy
> ==============
> - Patches 1-15 can go through the MIPS tree.
> - Patch 16 I can repost to Claudiu after patches 1-15 are in Linus's
> tree after the next merge window. There is a separate patch set that
> fixes a compiler error I unintentionally introduced via the clk tree.
> https://lore.kernel.org/linux-clk/CABx5tq+eOocJ41X-GSgkGy6S+s+Am1yCS099wqP695NtwALTmg@xxxxxxxxxxxxxx/T/
>
> Signed-off-by: Brian Masney <bmasney@xxxxxxxxxx>
> ---
> Changes in v2:
> - Fix native MIPS build by updating include files
> - Link to v1: https://lore.kernel.org/r/20260109-mips-pic32-header-move-v1-0-99859c55783d@xxxxxxxxxx
>
> ---
> Brian Masney (16):
> MIPS: pic32: include linux/io.h header on several files
> MIPS: pic32: include linux/types.h on pic32.h
> MIPS: pic32: drop unused include linux/io.h from pic32.h
> MIPS: copy pic32.h header file from asm/mach-pic32/ to include/platform-data/
> MAINTAINERS: add include/linux/platform_data/pic32.h to MIPS entry
> MIPS: update include to use pic32.h from platform_data
> clk: microchip: core: update include to use pic32.h from platform_data
> irqchip/irq-pic32-evic: update include to use pic32.h from platform_data
> mmc: sdhci-pic32: update include to use pic32.h from platform_data
> pinctrl: pic32: update include to use pic32.h from platform_data
> rtc: pic32: update include to use pic32.h from platform_data
> serial: pic32_uart: update include to use pic32.h from platform_data
> watchdog: pic32-dmt: update include to use pic32.h from platform_data
> watchdog: pic32-wdt: update include to use pic32.h from platform_data
> MIPS: drop unused pic32.h header
> clk: microchip: core: allow driver to be compiled with COMPILE_TEST
>
> MAINTAINERS | 1 +
> arch/mips/pic32/common/reset.c | 3 ++-
> arch/mips/pic32/pic32mzda/config.c | 3 +--
> arch/mips/pic32/pic32mzda/early_clk.c | 3 ++-
> arch/mips/pic32/pic32mzda/early_console.c | 3 ++-
> drivers/clk/microchip/Kconfig | 2 +-
> drivers/clk/microchip/clk-core.c | 6 +++++-
> drivers/irqchip/irq-pic32-evic.c | 2 +-
> drivers/mmc/host/sdhci-pic32.c | 2 +-
> drivers/pinctrl/pinctrl-pic32.c | 3 +--
> drivers/rtc/rtc-pic32.c | 3 +--
> drivers/tty/serial/pic32_uart.c | 3 +--
> drivers/watchdog/pic32-dmt.c | 3 +--
> drivers/watchdog/pic32-wdt.c | 3 +--
> .../mach-pic32 => include/linux/platform_data}/pic32.h | 17 ++++++++++-------
> 15 files changed, 31 insertions(+), 26 deletions(-)
> ---
> base-commit: f417b7ffcbef7d76b0d8860518f50dae0e7e5eda
> change-id: 20260109-mips-pic32-header-move-6ac9965aa70a

series applied to mips-next
Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]