1. 26 Jun, 2023 3 commits
    • Stephen Boyd's avatar
      Merge branches 'clk-imx', 'clk-microchip', 'clk-cleanup', 'clk-bindings',... · b9a40506
      Stephen Boyd authored
      Merge branches 'clk-imx', 'clk-microchip', 'clk-cleanup', 'clk-bindings', 'clk-ti' and 'clk-kasprintf' into clk-next
      
       - Handle allocation failures from kasprintf() and friends
      
      * clk-imx:
        clk: imx: clk-imx8mp: improve error handling in imx8mp_clocks_probe()
        clk: imx93: fix memory leak and missing unwind goto in imx93_clocks_probe
        clk: imx: clk-imx8mn: fix memory leak in imx8mn_clocks_probe
        dt-bindings: clock: imx8m: Add missing interrupt property
        clk: imx: clk-imxrt1050: fix memory leak in imxrt1050_clocks_probe
        clk: imx: composite-8m: Add imx8m_divider_determine_rate
        clk: imx: scu: use _safe list iterator to avoid a use after free
        clk: imx: drop imx_unregister_clocks
        clk: imx6ul: retain early UART clocks during kernel init
        clk: imx: imx6sx: Remove CLK_SET_RATE_PARENT from the LDB clocks
      
      * clk-microchip:
        dt-bindings: clocks: at91sam9x5-sckc: convert to yaml
        dt-bindings: clocks: atmel,at91rm9200-pmc: convert to yaml
        clk: microchip: Use of_property_read_bool() for boolean properties
        clk: microchip: convert SOC_MICROCHIP_POLARFIRE to ARCH_MICROCHIP_POLARFIRE
      
      * clk-cleanup:
        clk: fix typo in clk_hw_register_fixed_rate_parent_data() macro
        clk: Fix memory leak in devm_clk_notifier_register()
        clk: mvebu: Iterate over possible CPUs instead of DT CPU nodes
        clk: mvebu: Use of_get_cpu_hwid() to read CPU ID
        MAINTAINERS: Add Marvell mvebu clock drivers
        clk: mvebu: Use of_address_to_resource()
        clk: tegra: tegra124-emc: Fix potential memory leak
        clk: clocking-wizard: Fix Oops in clk_wzrd_register_divider()
        clk: bcm: rpi: Fix off by one in raspberrypi_discover_clocks()
        clk: sifive: Use devm_platform_ioremap_resource()
      
      * clk-bindings:
        dt-bindings: clock: drop unneeded quotes and use absolute /schemas path
        dt-bindings: rcc: stm32: Sync with u-boot copy for STM32MP13 SoC
      
      * clk-ti:
        clk: keystone: syscon-clk: Add support for audio refclk
        dt-bindings: clock: Add binding documentation for TI Audio REFCLK
        dt-bindings: clock: ehrpwm: Remove unneeded syscon compatible
        clk: keystone: syscon-clk: Allow the clock node to not be of type syscon
      
      * clk-kasprintf:
        clk: clocking-wizard: check return value of devm_kasprintf()
        clk: ti: clkctrl: check return value of kasprintf()
        clk: keystone: sci-clk: check return value of kasprintf()
        clk: si5341: free unused memory on probe failure
        clk: si5341: check return value of {devm_}kasprintf()
        clk: si5341: return error if one synth clock registration fails
        clk: cdce925: check return value of kasprintf()
        clk: vc5: check memory returned by kasprintf()
      b9a40506
    • Stephen Boyd's avatar
      Merge branches 'clk-renesas', 'clk-determine-rate', 'clk-allwinner',... · 6e11940a
      Stephen Boyd authored
      Merge branches 'clk-renesas', 'clk-determine-rate', 'clk-allwinner', 'clk-samsung' and 'clk-amlogic' into clk-next
      
       - Make clk_ops::determine_rate mandatory for muxes
      
      * clk-renesas:
        clk: renesas: rzg2l: Convert to readl_poll_timeout_atomic()
        clk: renesas: mstp: Convert to readl_poll_timeout_atomic()
        clk: renesas: cpg-mssr: Convert to readl_poll_timeout_atomic()
        iopoll: Do not use timekeeping in read_poll_timeout_atomic()
        iopoll: Call cpu_relax() in busy loops
        clk: renesas: rzg2l: Fix CPG_SIPLL5_CLK1 register write
        clk: renesas: r8a779a0: Add PWM clock
      
      * clk-determine-rate: (71 commits)
        clk: sprd: composite: Simplify determine_rate implementation
        ASoC: tlv320aic32x4: pll: Remove impossible condition in clk_aic32x4_pll_determine_rate()
        clk: Fix best_parent_rate after moving code into a separate function
        clk: Forbid to register a mux without determine_rate
        ASoC: tlv320aic32x4: div: Switch to determine_rate
        ASoC: tlv320aic32x4: pll: Switch to determine_rate
        clk: tegra: super: Switch to determine_rate
        clk: tegra: periph: Switch to determine_rate
        clk: stm32: composite: Switch to determine_rate
        clk: st: flexgen: Switch to determine_rate
        clk: sprd: composite: Switch to determine_rate
        clk: ingenic: tcu: Switch to determine_rate
        clk: ingenic: cgu: Switch to determine_rate
        clk: imx: scu: Switch to determine_rate
        clk: da8xx: clk48: Switch to determine_rate
        clk: si5351: clkout: Switch to determine_rate
        clk: si5351: msynth: Switch to determine_rate
        clk: si5351: pll: Switch to determine_rate
        clk: si5341: Switch to determine_rate
        clk: cdce706: clkout: Switch to determine_rate
        ...
      
      * clk-allwinner:
        clk: sunxi-ng: a64: force select PLL_MIPI in TCON0 mux
      
      * clk-samsung:
        clk: samsung: add CONFIG_OF dependency
        clk: samsung: Re-add support for Exynos4212 CPU clock
        clk: samsung: Add Exynos4212 compatible to CLKOUT driver
        dt-bindings: clock: samsung,exynos: add Exynos4212 clock compatible
      
      * clk-amlogic:
        MAINTAINERS: repair pattern in ARM/Amlogic Meson SoC CLOCK FRAMEWORK
        clk: meson: pll: remove unneeded semicolon
        clk: meson: a1: Staticize rtc clk
        clk: meson: a1: add Amlogic A1 Peripherals clock controller driver
        clk: meson: a1: add Amlogic A1 PLL clock controller driver
        clk: meson: introduce new pll power-on sequence for A1 SoC family
        clk: meson: make pll rst bit as optional
        dt-bindings: clock: meson: add A1 Peripherals clock controller bindings
        dt-bindings: clock: meson: add A1 PLL clock controller bindings
      6e11940a
    • Stephen Boyd's avatar
      Merge branches 'clk-platform', 'clk-i2c', 'clk-mediatek', 'clk-i2cid' and 'clk-vc5' into clk-next · e155a366
      Stephen Boyd authored
       - Migrate platform clk drivers to .remove_new()
       - Migrate i2c clk drivers to .probe() instead of .probe_new()
       - Remove CLK_SET_PARENT from all Mediatek MSDC core clocks
       - Add infra_ao reset support for Mediatek MT8188 SoCs
       - Align driver_data to i2c_device_id tables in some i2c clk drivers
       - Use device_get_match_data() in vc5 clk driver
      
      * clk-platform:
        clk: mediatek: Convert all remaining drivers to platform_driver's .remove_new()
        clk: mediatek: Make mtk_clk_pdev_remove() return void
        clk: mediatek: Make mtk_clk_simple_remove() return void
      
      * clk-i2c:
        clk: si521xx: Switch i2c driver back to use .probe()
        clk: Switch i2c drivers back to use .probe()
      
      * clk-mediatek:
        clk: mediatek: clk-mt8173-apmixedsys: Fix iomap not released issue
        clk: mediatek: clk-mt8173-apmixedsys: Fix return value for of_iomap() error
        clk: mediatek: clk-mtk: Grab iomem pointer for divider clocks
        clk: mediatek: fix of_iomap memory leak
        clk: mediatek: reset: add infra_ao reset support for MT8188
        dt-bindings: reset: mt8188: add thermal reset control bit
        clk: mediatek: Remove CLK_SET_PARENT from all MSDC core clocks
        clk: mediatek: mux: Stop forcing CLK_SET_RATE_PARENT flag
        clk: mediatek: Enable all MT8192 clocks by default
      
      * clk-i2cid:
        clk: rs9: Fix .driver_data content in i2c_device_id
        clk: vc7: Fix .driver_data content in i2c_device_id
        clk: vc5: Fix .driver_data content in i2c_device_id
      
      * clk-vc5:
        clk: vc7: Use device_get_match_data() instead of of_device_get_match_data()
        clk: vc5: Use device_get_match_data() instead of of_device_get_match_data()
      e155a366
  2. 20 Jun, 2023 5 commits
  3. 17 Jun, 2023 8 commits
  4. 16 Jun, 2023 8 commits
  5. 15 Jun, 2023 9 commits
  6. 14 Jun, 2023 3 commits
    • Stephen Boyd's avatar
      Merge tag 'clk-microchip-6.5' of... · 3973bcc9
      Stephen Boyd authored
      Merge tag 'clk-microchip-6.5' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux into clk-microchip
      
      Pull Microchip clk driver updates from Claudiu Beznea:
      
      Polarfire:
       - new Kconfig symbol name (SOC_MICROCHIP_POLARFIRE) for Microchip FPGA
         clock drivers
      
      PIC32:
       - use of_property_read_bool() to read "microchip,pic32mzda-sosc" boolean
         DT property in clk-pic32mzda
      
      AT91:
       - convert clock dt-bindings to YAML
      
      * tag 'clk-microchip-6.5' of https://git.kernel.org/pub/scm/linux/kernel/git/at91/linux:
        dt-bindings: clocks: at91sam9x5-sckc: convert to yaml
        dt-bindings: clocks: atmel,at91rm9200-pmc: convert to yaml
        clk: microchip: Use of_property_read_bool() for boolean properties
        clk: microchip: convert SOC_MICROCHIP_POLARFIRE to ARCH_MICROCHIP_POLARFIRE
      3973bcc9
    • Stephen Boyd's avatar
      Merge tag 'clk-imx-6.5' of... · 989e4659
      Stephen Boyd authored
      Merge tag 'clk-imx-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/abelvesa/linux into clk-imx
      
      Pull i.MX clk driver updates from Abel Vesa:
      
       - Remove CLK_SET_RATE_PARENT flag from LDB clocks on i.MX6SX
       - Keep UART clocks enabled during kernel boot if earlycon is set
       - Drop the imx_unregister_clocks as there are no users for it
       - Switch to _safe iterator on imx_clk_scu_unregister to avoid use after free
       - Add determine_rate op to the imx8m composite clock
       - Use device managed API for iomap and kzalloc for i.MXRT1050,
         i.MX8MN, i.MX8MP and i.MX93 clock controller drivers
       - Add missing interrupt DT property for the i.MX8M clock controller
      
      * tag 'clk-imx-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/abelvesa/linux:
        clk: imx: clk-imx8mp: improve error handling in imx8mp_clocks_probe()
        clk: imx93: fix memory leak and missing unwind goto in imx93_clocks_probe
        clk: imx: clk-imx8mn: fix memory leak in imx8mn_clocks_probe
        dt-bindings: clock: imx8m: Add missing interrupt property
        clk: imx: clk-imxrt1050: fix memory leak in imxrt1050_clocks_probe
        clk: imx: composite-8m: Add imx8m_divider_determine_rate
        clk: imx: scu: use _safe list iterator to avoid a use after free
        clk: imx: drop imx_unregister_clocks
        clk: imx6ul: retain early UART clocks during kernel init
        clk: imx: imx6sx: Remove CLK_SET_RATE_PARENT from the LDB clocks
      989e4659
    • Stephen Boyd's avatar
      clk: sprd: composite: Simplify determine_rate implementation · 587dd448
      Stephen Boyd authored
      The sprd_div_helper_round_rate() function calls divider_round_rate()
      which calls divider_round_rate_parent() which calls
      divider_determine_rate(). This call chain converts back and forth from
      the rate request structure to make a determine_rate clk_op fit with a
      round_rate clk_op. Simplify the code here by directly calling
      divider_determine_rate() instead.
      
      This fixes a smatch warning where an unsigned long is compared to less
      than zero, which is impossible. This makes sprd_div_helper_round_rate()
      unnecessary as well so simply remove it and fold it into the only caller
      left.
      Reported-by: default avatarHarshit Mogalapalli <harshit.m.mogalapalli@oracle.com>
      Closes: https://lore.kernel.org/r/45fdc54e-7ab6-edd6-d55a-473485608473@oracle.com
      Cc: Maxime Ripard <maxime@cerno.tech>
      Fixes: 302d2f83 ("clk: sprd: composite: Switch to determine_rate")
      Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      Link: https://lore.kernel.org/r/20230613195443.1555132-1-sboyd@kernel.orgReviewed-by: default avatarMaxime Ripard <mripard@kernel.org>
      587dd448
  7. 13 Jun, 2023 4 commits