* [PATCH v2 0/3] clk: microchip: core: fix issue with round_rate conversion and allow compile test
@ 2025-12-01 22:06 Brian Masney
2025-12-01 22:06 ` [PATCH v2 1/3] clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops Brian Masney
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-01 22:06 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Maxime Ripard, Claudiu Beznea,
Conor Dooley
Cc: linux-clk, linux-kernel, Brian Masney, kernel test robot
Here's a series that fixes an issue that fixes an issue with my
round_rate conversion on this PIC32 driver, drops an unused include
file, and a change that allows building this driver on other
architectures with COMPILE_TEST enabled.
Changes in v2:
- Add new patch to drop unused asm/traps.h
- Link to v1: https://lore.kernel.org/r/20251125-clk-microchip-fixes-v1-0-6c1f5573d1b9@redhat.com
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
Brian Masney (3):
clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops
clk: microchip: core: remove unused include asm/traps.h
clk: microchip: core: allow driver to be compiled with COMPILE_TEST
drivers/clk/microchip/Kconfig | 2 +-
drivers/clk/microchip/clk-core.c | 19 ++++++++-----------
2 files changed, 9 insertions(+), 12 deletions(-)
---
base-commit: 92fd6e84175befa1775e5c0ab682938eca27c0b2
change-id: 20251125-clk-microchip-fixes-d0864e21ef0d
Best regards,
--
Brian Masney <bmasney@redhat.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/3] clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops
2025-12-01 22:06 [PATCH v2 0/3] clk: microchip: core: fix issue with round_rate conversion and allow compile test Brian Masney
@ 2025-12-01 22:06 ` Brian Masney
2025-12-01 22:06 ` [PATCH v2 2/3] clk: microchip: core: remove unused include asm/traps.h Brian Masney
2025-12-01 22:06 ` [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2 siblings, 0 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-01 22:06 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Maxime Ripard, Claudiu Beznea,
Conor Dooley
Cc: linux-clk, linux-kernel, Brian Masney, kernel test robot
pic32_sclk_ops previously had a sclk_round_rate() member, and this was
recently converted over to sclk_determine_rate() with the help of a
Coccinelle semantic patch. pic32_sclk_ops now has two conflicting
determine_rate ops members.
Prior to the conversion, pic32_sclk_ops already had a determine_rate
member that points to __clk_mux_determine_rate(). When both the
round_rate() and determine_rate() ops are defined, the clk core only
uses the determine_rate() op. Let's go ahead and drop the recently
converted sclk_determine_rate() to match the previous functionality
prior to the conversion.
Fixes: e9f039c08cdc ("clk: microchip: core: convert from round_rate() to determine_rate()")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202511222115.uvHrP95A-lkp@intel.com/
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
drivers/clk/microchip/clk-core.c | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c
index b34348d491f3e1b576b2b9a8a66bfddd8c2296ea..a0163441dfe5c1dfc27dae48e64cf3cb3d6b764f 100644
--- a/drivers/clk/microchip/clk-core.c
+++ b/drivers/clk/microchip/clk-core.c
@@ -780,15 +780,6 @@ static unsigned long sclk_get_rate(struct clk_hw *hw, unsigned long parent_rate)
return parent_rate / div;
}
-static int sclk_determine_rate(struct clk_hw *hw,
- struct clk_rate_request *req)
-{
- req->rate = calc_best_divided_rate(req->rate, req->best_parent_rate,
- SLEW_SYSDIV, 1);
-
- return 0;
-}
-
static int sclk_set_rate(struct clk_hw *hw,
unsigned long rate, unsigned long parent_rate)
{
@@ -912,7 +903,6 @@ static int sclk_init(struct clk_hw *hw)
const struct clk_ops pic32_sclk_ops = {
.get_parent = sclk_get_parent,
.set_parent = sclk_set_parent,
- .determine_rate = sclk_determine_rate,
.set_rate = sclk_set_rate,
.recalc_rate = sclk_get_rate,
.init = sclk_init,
--
2.51.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/3] clk: microchip: core: remove unused include asm/traps.h
2025-12-01 22:06 [PATCH v2 0/3] clk: microchip: core: fix issue with round_rate conversion and allow compile test Brian Masney
2025-12-01 22:06 ` [PATCH v2 1/3] clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops Brian Masney
@ 2025-12-01 22:06 ` Brian Masney
2025-12-01 22:06 ` [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2 siblings, 0 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-01 22:06 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Maxime Ripard, Claudiu Beznea,
Conor Dooley
Cc: linux-clk, linux-kernel, Brian Masney
The asm/traps.h include file is not actually used, so let's go ahead and
remove it.
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
drivers/clk/microchip/clk-core.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c
index a0163441dfe5c1dfc27dae48e64cf3cb3d6b764f..664663d9d7765ee0c61203ea11211da54b709377 100644
--- a/drivers/clk/microchip/clk-core.c
+++ b/drivers/clk/microchip/clk-core.c
@@ -10,7 +10,6 @@
#include <linux/io.h>
#include <linux/iopoll.h>
#include <asm/mach-pic32/pic32.h>
-#include <asm/traps.h>
#include "clk-core.h"
--
2.51.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2025-12-01 22:06 [PATCH v2 0/3] clk: microchip: core: fix issue with round_rate conversion and allow compile test Brian Masney
2025-12-01 22:06 ` [PATCH v2 1/3] clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops Brian Masney
2025-12-01 22:06 ` [PATCH v2 2/3] clk: microchip: core: remove unused include asm/traps.h Brian Masney
@ 2025-12-01 22:06 ` Brian Masney
2025-12-05 3:51 ` kernel test robot
2025-12-05 7:21 ` Dan Carpenter
2 siblings, 2 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-01 22:06 UTC (permalink / raw)
To: Michael Turquette, Stephen Boyd, Maxime Ripard, Claudiu Beznea,
Conor Dooley
Cc: linux-clk, linux-kernel, Brian Masney
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.
Signed-off-by: Brian Masney <bmasney@redhat.com>
---
drivers/clk/microchip/Kconfig | 2 +-
drivers/clk/microchip/clk-core.c | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --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"
diff --git a/drivers/clk/microchip/clk-core.c b/drivers/clk/microchip/clk-core.c
index 664663d9d7765ee0c61203ea11211da54b709377..49c7b8b487ed6bc0e43d7177cb7c4cee9008f544 100644
--- a/drivers/clk/microchip/clk-core.c
+++ b/drivers/clk/microchip/clk-core.c
@@ -9,7 +9,15 @@
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/iopoll.h>
+
+#if !defined(CONFIG_MACH_PIC32) && defined(CONFIG_COMPILE_TEST)
+#define PIC32_CLR(_reg) ((_reg) + 0x04)
+#define PIC32_SET(_reg) ((_reg) + 0x08)
+#define PIC32_INV(_reg) ((_reg) + 0x0C)
+#define pic32_syskey_unlock()
+#else
#include <asm/mach-pic32/pic32.h>
+#endif
#include "clk-core.h"
--
2.51.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2025-12-01 22:06 ` [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
@ 2025-12-05 3:51 ` kernel test robot
2025-12-05 11:33 ` Brian Masney
2025-12-05 7:21 ` Dan Carpenter
1 sibling, 1 reply; 8+ messages in thread
From: kernel test robot @ 2025-12-05 3:51 UTC (permalink / raw)
To: Brian Masney, Michael Turquette, Stephen Boyd, Maxime Ripard,
Claudiu Beznea, Conor Dooley
Cc: oe-kbuild-all, linux-clk, linux-kernel, Brian Masney
Hi Brian,
kernel test robot noticed the following build errors:
[auto build test ERROR on 92fd6e84175befa1775e5c0ab682938eca27c0b2]
url: https://github.com/intel-lab-lkp/linux/commits/Brian-Masney/clk-microchip-core-remove-duplicate-determine_rate-on-pic32_sclk_ops/20251202-060924
base: 92fd6e84175befa1775e5c0ab682938eca27c0b2
patch link: https://lore.kernel.org/r/20251201-clk-microchip-fixes-v2-3-9d5a0daadd98%40redhat.com
patch subject: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
config: openrisc-allmodconfig (https://download.01.org/0day-ci/archive/20251205/202512051151.N3iZUKEG-lkp@intel.com/config)
compiler: or1k-linux-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251205/202512051151.N3iZUKEG-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512051151.N3iZUKEG-lkp@intel.com/
All errors (new ones prefixed by >>):
drivers/clk/microchip/clk-core.c: Assembler messages:
>> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
>> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
>> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
>> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
>> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
vim +721 drivers/clk/microchip/clk-core.c
ce6e11884659988 Purna Chandra Mandal 2016-05-13 682
ce6e11884659988 Purna Chandra Mandal 2016-05-13 683 static int spll_clk_set_rate(struct clk_hw *hw, unsigned long rate,
ce6e11884659988 Purna Chandra Mandal 2016-05-13 684 unsigned long parent_rate)
ce6e11884659988 Purna Chandra Mandal 2016-05-13 685 {
ce6e11884659988 Purna Chandra Mandal 2016-05-13 686 struct pic32_sys_pll *pll = clkhw_to_spll(hw);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 687 unsigned long ret, flags;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 688 u32 mult, odiv, v;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 689 int err;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 690
ce6e11884659988 Purna Chandra Mandal 2016-05-13 691 ret = spll_calc_mult_div(pll, rate, parent_rate, &mult, &odiv);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 692 if (!ret)
ce6e11884659988 Purna Chandra Mandal 2016-05-13 693 return -EINVAL;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 694
ce6e11884659988 Purna Chandra Mandal 2016-05-13 695 /*
ce6e11884659988 Purna Chandra Mandal 2016-05-13 696 * We can't change SPLL counters when it is in-active use
ce6e11884659988 Purna Chandra Mandal 2016-05-13 697 * by SYSCLK. So check before applying new counters/rate.
ce6e11884659988 Purna Chandra Mandal 2016-05-13 698 */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 699
ce6e11884659988 Purna Chandra Mandal 2016-05-13 700 /* Is spll_clk active parent of sys_clk ? */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 701 if (unlikely(clk_hw_get_parent(pic32_sclk_hw) == hw)) {
ce6e11884659988 Purna Chandra Mandal 2016-05-13 702 pr_err("%s: failed, clk in-use\n", __func__);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 703 return -EBUSY;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 704 }
ce6e11884659988 Purna Chandra Mandal 2016-05-13 705
ce6e11884659988 Purna Chandra Mandal 2016-05-13 706 spin_lock_irqsave(&pll->core->reg_lock, flags);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 707
ce6e11884659988 Purna Chandra Mandal 2016-05-13 708 /* apply new multiplier & divisor */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 709 v = readl(pll->ctrl_reg);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 710 v &= ~(PLL_MULT_MASK << PLL_MULT_SHIFT);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 711 v &= ~(PLL_ODIV_MASK << PLL_ODIV_SHIFT);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 712 v |= (mult << PLL_MULT_SHIFT) | (odiv << PLL_ODIV_SHIFT);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 713
ce6e11884659988 Purna Chandra Mandal 2016-05-13 714 /* sys unlock before write */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 715 pic32_syskey_unlock();
ce6e11884659988 Purna Chandra Mandal 2016-05-13 716
ce6e11884659988 Purna Chandra Mandal 2016-05-13 717 writel(v, pll->ctrl_reg);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 718 cpu_relax();
ce6e11884659988 Purna Chandra Mandal 2016-05-13 719
ce6e11884659988 Purna Chandra Mandal 2016-05-13 720 /* insert few nops (5-stage) to ensure CPU does not hang */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 @721 cpu_nop5();
ce6e11884659988 Purna Chandra Mandal 2016-05-13 722 cpu_nop5();
ce6e11884659988 Purna Chandra Mandal 2016-05-13 723
ce6e11884659988 Purna Chandra Mandal 2016-05-13 724 /* Wait until PLL is locked (maximum 100 usecs). */
ce6e11884659988 Purna Chandra Mandal 2016-05-13 725 err = readl_poll_timeout_atomic(pll->status_reg, v,
ce6e11884659988 Purna Chandra Mandal 2016-05-13 726 v & pll->lock_mask, 1, 100);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 727 spin_unlock_irqrestore(&pll->core->reg_lock, flags);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 728
ce6e11884659988 Purna Chandra Mandal 2016-05-13 729 return err;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 730 }
ce6e11884659988 Purna Chandra Mandal 2016-05-13 731
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2025-12-01 22:06 ` [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2025-12-05 3:51 ` kernel test robot
@ 2025-12-05 7:21 ` Dan Carpenter
2025-12-05 11:35 ` Brian Masney
1 sibling, 1 reply; 8+ messages in thread
From: Dan Carpenter @ 2025-12-05 7:21 UTC (permalink / raw)
To: oe-kbuild, Brian Masney, Michael Turquette, Stephen Boyd,
Maxime Ripard, Claudiu Beznea, Conor Dooley
Cc: lkp, oe-kbuild-all, linux-clk, linux-kernel, Brian Masney
Hi Brian,
kernel test robot noticed the following build warnings:
url: https://github.com/intel-lab-lkp/linux/commits/Brian-Masney/clk-microchip-core-remove-duplicate-determine_rate-on-pic32_sclk_ops/20251202-060924
base: 92fd6e84175befa1775e5c0ab682938eca27c0b2
patch link: https://lore.kernel.org/r/20251201-clk-microchip-fixes-v2-3-9d5a0daadd98%40redhat.com
patch subject: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
config: arm-randconfig-r071-20251204 (https://download.01.org/0day-ci/archive/20251205/202512050233.R9hAWsJN-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.5.0
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202512050233.R9hAWsJN-lkp@intel.com/
smatch warnings:
drivers/clk/microchip/clk-core.c:300 roclk_get_parent() warn: signedness bug returning '(-22)'
drivers/clk/microchip/clk-core.c:833 sclk_get_parent() warn: signedness bug returning '(-22)'
vim +300 drivers/clk/microchip/clk-core.c
ce6e11884659988 Purna Chandra Mandal 2016-05-13 286 static u8 roclk_get_parent(struct clk_hw *hw)
^^
returns a u8.
ce6e11884659988 Purna Chandra Mandal 2016-05-13 287 {
ce6e11884659988 Purna Chandra Mandal 2016-05-13 288 struct pic32_ref_osc *refo = clkhw_to_refosc(hw);
ce6e11884659988 Purna Chandra Mandal 2016-05-13 289 u32 v, i;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 290
ce6e11884659988 Purna Chandra Mandal 2016-05-13 291 v = (readl(refo->ctrl_reg) >> REFO_SEL_SHIFT) & REFO_SEL_MASK;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 292
ce6e11884659988 Purna Chandra Mandal 2016-05-13 293 if (!refo->parent_map)
ce6e11884659988 Purna Chandra Mandal 2016-05-13 294 return v;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 295
ce6e11884659988 Purna Chandra Mandal 2016-05-13 296 for (i = 0; i < clk_hw_get_num_parents(hw); i++)
ce6e11884659988 Purna Chandra Mandal 2016-05-13 297 if (refo->parent_map[i] == v)
ce6e11884659988 Purna Chandra Mandal 2016-05-13 298 return i;
ce6e11884659988 Purna Chandra Mandal 2016-05-13 299
ce6e11884659988 Purna Chandra Mandal 2016-05-13 @300 return -EINVAL;
^^^^^^^^^^^^^^^
So it can't return negative error codes.
ce6e11884659988 Purna Chandra Mandal 2016-05-13 301 }
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2025-12-05 3:51 ` kernel test robot
@ 2025-12-05 11:33 ` Brian Masney
0 siblings, 0 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-05 11:33 UTC (permalink / raw)
To: kernel test robot
Cc: Michael Turquette, Stephen Boyd, Maxime Ripard, Claudiu Beznea,
Conor Dooley, oe-kbuild-all, linux-clk, linux-kernel
On Fri, Dec 05, 2025 at 11:51:12AM +0800, kernel test robot wrote:
> drivers/clk/microchip/clk-core.c: Assembler messages:
> >> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
> >> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
> >> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
> >> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
> >> drivers/clk/microchip/clk-core.c:721: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:722: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
> drivers/clk/microchip/clk-core.c:862: Error: unrecognized instruction `nop'
That's related to these calls: __asm__ __volatile__("nop");
In the case of compile test, I'll just make this a noop. I'll post a new
version.
Brian
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST
2025-12-05 7:21 ` Dan Carpenter
@ 2025-12-05 11:35 ` Brian Masney
0 siblings, 0 replies; 8+ messages in thread
From: Brian Masney @ 2025-12-05 11:35 UTC (permalink / raw)
To: Dan Carpenter
Cc: oe-kbuild, Michael Turquette, Stephen Boyd, Maxime Ripard,
Claudiu Beznea, Conor Dooley, lkp, oe-kbuild-all, linux-clk,
linux-kernel
On Fri, Dec 05, 2025 at 10:21:55AM +0300, Dan Carpenter wrote:
> smatch warnings:
> drivers/clk/microchip/clk-core.c:300 roclk_get_parent() warn: signedness bug returning '(-22)'
> drivers/clk/microchip/clk-core.c:833 sclk_get_parent() warn: signedness bug returning '(-22)'
>
> vim +300 drivers/clk/microchip/clk-core.c
>
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 286 static u8 roclk_get_parent(struct clk_hw *hw)
> ^^
> returns a u8.
>
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 287 {
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 288 struct pic32_ref_osc *refo = clkhw_to_refosc(hw);
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 289 u32 v, i;
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 290
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 291 v = (readl(refo->ctrl_reg) >> REFO_SEL_SHIFT) & REFO_SEL_MASK;
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 292
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 293 if (!refo->parent_map)
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 294 return v;
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 295
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 296 for (i = 0; i < clk_hw_get_num_parents(hw); i++)
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 297 if (refo->parent_map[i] == v)
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 298 return i;
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 299
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 @300 return -EINVAL;
> ^^^^^^^^^^^^^^^
> So it can't return negative error codes.
>
> ce6e11884659988 Purna Chandra Mandal 2016-05-13 301 }
This was an existing bug in the driver. Since I'm making changes
to this driver, I'll go ahead and fix this as well.
Brian
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2025-12-05 11:35 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-01 22:06 [PATCH v2 0/3] clk: microchip: core: fix issue with round_rate conversion and allow compile test Brian Masney
2025-12-01 22:06 ` [PATCH v2 1/3] clk: microchip: core: remove duplicate determine_rate on pic32_sclk_ops Brian Masney
2025-12-01 22:06 ` [PATCH v2 2/3] clk: microchip: core: remove unused include asm/traps.h Brian Masney
2025-12-01 22:06 ` [PATCH v2 3/3] clk: microchip: core: allow driver to be compiled with COMPILE_TEST Brian Masney
2025-12-05 3:51 ` kernel test robot
2025-12-05 11:33 ` Brian Masney
2025-12-05 7:21 ` Dan Carpenter
2025-12-05 11:35 ` Brian Masney
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).