* [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data
@ 2026-01-09 16:41 Brian Masney
2026-01-09 16:41 ` [PATCH 04/13] clk: microchip: core: update include to use pic32.h from platform_data Brian Masney
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Brian Masney @ 2026-01-09 16:41 UTC (permalink / raw)
To: Thomas Bogendoerfer, Claudiu Beznea
Cc: linux-mips, linux-kernel, Brian Masney, Michael Turquette,
Stephen Boyd, linux-clk, Thomas Gleixner, Adrian Hunter,
Ulf Hansson, linux-mmc, Linus Walleij, linux-gpio,
Alexandre Belloni, linux-rtc, Greg Kroah-Hartman, Jiri Slaby,
linux-serial, Wim Van Sebroeck, Guenter Roeck, linux-watchdog
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.
I included a patch at the end that shows enabling COMPILE_TEST for a
pic32 clk driver.
Merge Strategy
==============
- Patches 1-12 can go through the MIPS tree.
- Patch 13 I can repost to Claudiu after patches 1-12 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@mail.gmail.com/T/
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
Brian Masney (13):
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 | 2 +-
arch/mips/pic32/pic32mzda/config.c | 3 +--
arch/mips/pic32/pic32mzda/early_clk.c | 2 +-
arch/mips/pic32/pic32mzda/early_console.c | 2 +-
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, 27 insertions(+), 27 deletions(-)
---
base-commit: f417b7ffcbef7d76b0d8860518f50dae0e7e5eda
change-id: 20260109-mips-pic32-header-move-6ac9965aa70a
Best regards,
--
Brian Masney <bmasney@redhat.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 04/13] clk: microchip: core: update include to use pic32.h from platform_data
2026-01-09 16:41 [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
@ 2026-01-09 16:41 ` Brian Masney
2026-01-09 16:41 ` [PATCH 13/13] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2026-01-09 17:14 ` [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
2 siblings, 0 replies; 4+ messages in thread
From: Brian Masney @ 2026-01-09 16:41 UTC (permalink / raw)
To: Thomas Bogendoerfer, Claudiu Beznea
Cc: linux-mips, linux-kernel, Brian Masney, Michael Turquette,
Stephen Boyd, linux-clk
Use the linux/platform_data/pic32.h include instead of
asm/mach-pic32/pic32.h so that the asm variant can be dropped. This
is in preparation for allowing some drivers to be compiled on other
architectures with COMPILE_TEST enabled.
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
To: Michael Turquette <mturquette@baylibre.com>
To: Stephen Boyd <sboyd@kernel.org>
Cc: linux-clk@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
| 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c
index b34348d491f3e1b576b2b9a8a66bfddd8c2296ea..891bec5fe1bedea826ff9c3bd4099c90e2528ff9 100644
--- a/drivers/clk/microchip/clk-core.c
+++ b/drivers/clk/microchip/clk-core.c
@@ -9,7 +9,7 @@
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/iopoll.h>
-#include <asm/mach-pic32/pic32.h>
+#include <linux/platform_data/pic32.h>
#include <asm/traps.h>
#include "clk-core.h"
--
2.52.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 13/13] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2026-01-09 16:41 [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
2026-01-09 16:41 ` [PATCH 04/13] clk: microchip: core: update include to use pic32.h from platform_data Brian Masney
@ 2026-01-09 16:41 ` Brian Masney
2026-01-09 17:14 ` [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
2 siblings, 0 replies; 4+ messages in thread
From: Brian Masney @ 2026-01-09 16:41 UTC (permalink / raw)
To: Thomas Bogendoerfer, Claudiu Beznea
Cc: linux-mips, linux-kernel, Brian Masney, Michael Turquette,
Stephen Boyd, linux-clk
This driver currently only supports builds against a PIC32 target. To
avoid future breakage in the future, let's update the Kconfig and the
driver so that it can be built with CONFIG_COMPILE_TEST enabled.
Note that with the existing asm calls is not how I'd want to do this
today if this was a new driver, however I don't have access to this
hardware. To avoid any breakage, let's keep the existing behavior.
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
To: Michael Turquette <mturquette@baylibre.com>
To: Stephen Boyd <sboyd@kernel.org>
Cc: linux-clk@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
| 2 +-
| 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
--git a/drivers/clk/microchip/Kconfig b/drivers/clk/microchip/Kconfig
index 1b9e43eb54976b219a0277cc971f353fd6af226a..1e56a057319d97e20440fe4e107d26fa85c95ab1 100644
--- a/drivers/clk/microchip/Kconfig
+++ b/drivers/clk/microchip/Kconfig
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
config COMMON_CLK_PIC32
- def_bool COMMON_CLK && MACH_PIC32
+ def_bool (COMMON_CLK && MACH_PIC32) || COMPILE_TEST
config MCHP_CLK_MPFS
bool "Clk driver for PolarFire SoC"
--git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c
index 891bec5fe1bedea826ff9c3bd4099c90e2528ff9..ce3a24e061d145934c84843008efadc3b0e2cffa 100644
--- a/drivers/clk/microchip/clk-core.c
+++ b/drivers/clk/microchip/clk-core.c
@@ -75,6 +75,7 @@
/* SoC specific clock needed during SPLL clock rate switch */
static struct clk_hw *pic32_sclk_hw;
+#ifdef CONFIG_MATCH_PIC32
/* add instruction pipeline delay while CPU clock is in-transition. */
#define cpu_nop5() \
do { \
@@ -84,6 +85,9 @@ do { \
__asm__ __volatile__("nop"); \
__asm__ __volatile__("nop"); \
} while (0)
+#else
+#define cpu_nop5()
+#endif
/* Perpheral bus clocks */
struct pic32_periph_clk {
--
2.52.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data
2026-01-09 16:41 [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
2026-01-09 16:41 ` [PATCH 04/13] clk: microchip: core: update include to use pic32.h from platform_data Brian Masney
2026-01-09 16:41 ` [PATCH 13/13] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
@ 2026-01-09 17:14 ` Brian Masney
2 siblings, 0 replies; 4+ messages in thread
From: Brian Masney @ 2026-01-09 17:14 UTC (permalink / raw)
To: Thomas Bogendoerfer, Claudiu Beznea
Cc: linux-mips, linux-kernel, Michael Turquette, Stephen Boyd,
linux-clk, Thomas Gleixner, Adrian Hunter, Ulf Hansson, linux-mmc,
Linus Walleij, linux-gpio, Alexandre Belloni, linux-rtc,
Greg Kroah-Hartman, Jiri Slaby, linux-serial, Wim Van Sebroeck,
Guenter Roeck, linux-watchdog
On Fri, Jan 09, 2026 at 11:41:13AM -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.
>
> I included a patch at the end that shows enabling COMPILE_TEST for a
> pic32 clk driver.
I didn't CC everyone on patch 1 to this series that copes pic32.h from
the MIPS ASM directory to linux/platform_data/pic32.h. It's available at
the following location if you want to see it:
https://lore.kernel.org/linux-mips/20260109-mips-pic32-header-move-v1-0-99859c55783d@redhat.com/T/#m1e0e50adfe2ea4bf430025660fada7b1468d0fbf
Patch 12 of this series is where I remove the asm variant of pic32.h.
Brian
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-01-09 17:14 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-09 16:41 [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
2026-01-09 16:41 ` [PATCH 04/13] clk: microchip: core: update include to use pic32.h from platform_data Brian Masney
2026-01-09 16:41 ` [PATCH 13/13] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2026-01-09 17:14 ` [PATCH 00/13] MIPS: move pic32.h header file from asm to platform_data Brian Masney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox