Commit c0856b7c authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux

Pull clk fixes from Stephen Boyd:
 "A collection of clk driver fixes, and a couple OF clk patches to fix
  regressions seen in the last few weeks. The fwnode patch broke the
  build for one driver that isn't always compiled, so I waited over the
  weekend to be certain no more build issues came up.

   - Mark the firmware node (fwnode) that matches the compatible in
     CLK_OF_DECLARE() as initialized to fix a regression on u8500 SoCs
     after fw_devlink stopped checking parent nodes in
     of_link_to_phandle()

   - Remove a couple MODULE_LICENSE macros in non-modules

   - Update the maintainers file for Microchip clk drivers

   - Use 'select' instead of 'depend on' for the REGMAP config to fix
     Kconfig issues

   - Use div_u64() for portable 64-bit division in K210 clk driver"

* tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
  clk: Avoid invalid function names in CLK_OF_DECLARE()
  clk: k210: remove an implicit 64-bit division
  MAINTAINERS: add missing clock driver coverage for Microchip FPGAs
  clk: HI655X: select REGMAP instead of depending on it
  kbuild, clk: remove MODULE_LICENSE in non-modules
  kbuild, clk: bcm2835: remove MODULE_LICENSE in non-modules
  clk: Mark a fwnode as initialized when using CLK_OF_DECLARE() macro
parents 4979bf86 5cf9d015
...@@ -17990,7 +17990,7 @@ F: Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml ...@@ -17990,7 +17990,7 @@ F: Documentation/devicetree/bindings/spi/microchip,mpfs-spi.yaml
F: Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml F: Documentation/devicetree/bindings/usb/microchip,mpfs-musb.yaml
F: arch/riscv/boot/dts/microchip/ F: arch/riscv/boot/dts/microchip/
F: drivers/char/hw_random/mpfs-rng.c F: drivers/char/hw_random/mpfs-rng.c
F: drivers/clk/microchip/clk-mpfs.c F: drivers/clk/microchip/clk-mpfs*.c
F: drivers/i2c/busses/i2c-microchip-corei2c.c F: drivers/i2c/busses/i2c-microchip-corei2c.c
F: drivers/mailbox/mailbox-mpfs.c F: drivers/mailbox/mailbox-mpfs.c
F: drivers/pci/controller/pcie-microchip-host.c F: drivers/pci/controller/pcie-microchip-host.c
......
...@@ -91,7 +91,7 @@ config COMMON_CLK_RK808 ...@@ -91,7 +91,7 @@ config COMMON_CLK_RK808
config COMMON_CLK_HI655X config COMMON_CLK_HI655X
tristate "Clock driver for Hi655x" if EXPERT tristate "Clock driver for Hi655x" if EXPERT
depends on (MFD_HI655X_PMIC || COMPILE_TEST) depends on (MFD_HI655X_PMIC || COMPILE_TEST)
depends on REGMAP select REGMAP
default MFD_HI655X_PMIC default MFD_HI655X_PMIC
help help
This driver supports the hi655x PMIC clock. This This driver supports the hi655x PMIC clock. This
......
...@@ -69,4 +69,3 @@ builtin_platform_driver(bcm2835_aux_clk_driver); ...@@ -69,4 +69,3 @@ builtin_platform_driver(bcm2835_aux_clk_driver);
MODULE_AUTHOR("Eric Anholt <eric@anholt.net>"); MODULE_AUTHOR("Eric Anholt <eric@anholt.net>");
MODULE_DESCRIPTION("BCM2835 auxiliary peripheral clock driver"); MODULE_DESCRIPTION("BCM2835 auxiliary peripheral clock driver");
MODULE_LICENSE("GPL");
...@@ -2350,4 +2350,3 @@ builtin_platform_driver(bcm2835_clk_driver); ...@@ -2350,4 +2350,3 @@ builtin_platform_driver(bcm2835_clk_driver);
MODULE_AUTHOR("Eric Anholt <eric@anholt.net>"); MODULE_AUTHOR("Eric Anholt <eric@anholt.net>");
MODULE_DESCRIPTION("BCM2835 clock driver"); MODULE_DESCRIPTION("BCM2835 clock driver");
MODULE_LICENSE("GPL");
...@@ -99,4 +99,3 @@ module_platform_driver(of_fixed_mmio_clk_driver); ...@@ -99,4 +99,3 @@ module_platform_driver(of_fixed_mmio_clk_driver);
MODULE_AUTHOR("Jan Kotas <jank@cadence.com>"); MODULE_AUTHOR("Jan Kotas <jank@cadence.com>");
MODULE_DESCRIPTION("Memory Mapped IO Fixed clock driver"); MODULE_DESCRIPTION("Memory Mapped IO Fixed clock driver");
MODULE_LICENSE("GPL v2");
...@@ -88,5 +88,4 @@ module_platform_driver(fsl_sai_clk_driver); ...@@ -88,5 +88,4 @@ module_platform_driver(fsl_sai_clk_driver);
MODULE_DESCRIPTION("Freescale SAI bitclock-as-a-clock driver"); MODULE_DESCRIPTION("Freescale SAI bitclock-as-a-clock driver");
MODULE_AUTHOR("Michael Walle <michael@walle.cc>"); MODULE_AUTHOR("Michael Walle <michael@walle.cc>");
MODULE_LICENSE("GPL");
MODULE_ALIAS("platform:fsl-sai-clk"); MODULE_ALIAS("platform:fsl-sai-clk");
...@@ -495,7 +495,7 @@ static unsigned long k210_pll_get_rate(struct clk_hw *hw, ...@@ -495,7 +495,7 @@ static unsigned long k210_pll_get_rate(struct clk_hw *hw,
f = FIELD_GET(K210_PLL_CLKF, reg) + 1; f = FIELD_GET(K210_PLL_CLKF, reg) + 1;
od = FIELD_GET(K210_PLL_CLKOD, reg) + 1; od = FIELD_GET(K210_PLL_CLKOD, reg) + 1;
return (u64)parent_rate * f / (r * od); return div_u64((u64)parent_rate * f, r * od);
} }
static const struct clk_ops k210_pll_ops = { static const struct clk_ops k210_pll_ops = {
......
...@@ -841,5 +841,4 @@ static void __exit hi3559av100_crg_exit(void) ...@@ -841,5 +841,4 @@ static void __exit hi3559av100_crg_exit(void)
module_exit(hi3559av100_crg_exit); module_exit(hi3559av100_crg_exit);
MODULE_LICENSE("GPL v2");
MODULE_DESCRIPTION("HiSilicon Hi3559AV100 CRG Driver"); MODULE_DESCRIPTION("HiSilicon Hi3559AV100 CRG Driver");
...@@ -291,4 +291,3 @@ module_exit(clk_ccc_exit); ...@@ -291,4 +291,3 @@ module_exit(clk_ccc_exit);
MODULE_DESCRIPTION("Microchip PolarFire SoC Clock Conditioning Circuitry Driver"); MODULE_DESCRIPTION("Microchip PolarFire SoC Clock Conditioning Circuitry Driver");
MODULE_AUTHOR("Conor Dooley <conor.dooley@microchip.com>"); MODULE_AUTHOR("Conor Dooley <conor.dooley@microchip.com>");
MODULE_LICENSE("GPL");
...@@ -1363,7 +1363,13 @@ struct clk_hw_onecell_data { ...@@ -1363,7 +1363,13 @@ struct clk_hw_onecell_data {
struct clk_hw *hws[]; struct clk_hw *hws[];
}; };
#define CLK_OF_DECLARE(name, compat, fn) OF_DECLARE_1(clk, name, compat, fn) #define CLK_OF_DECLARE(name, compat, fn) \
static void __init __##name##_of_clk_init_declare(struct device_node *np) \
{ \
fn(np); \
fwnode_dev_initialized(of_fwnode_handle(np), true); \
} \
OF_DECLARE_1(clk, name, compat, __##name##_of_clk_init_declare)
/* /*
* Use this macro when you have a driver that requires two initialization * Use this macro when you have a driver that requires two initialization
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment