1. 31 Jan, 2020 3 commits
    • Stephen Boyd's avatar
      Merge branches 'clk-debugfs-danger', 'clk-basic-hw', 'clk-renesas',... · 6e7a9f0c
      Stephen Boyd authored
      Merge branches 'clk-debugfs-danger', 'clk-basic-hw', 'clk-renesas', 'clk-amlogic' and 'clk-allwinner' into clk-next
      
       - Support dangerous debugfs actions on clks with dead code
       - Convert gpio, fixed-factor, mux, gate, divider basic clks to hw based APIs
      
      * clk-debugfs-danger:
        clk: Add support for setting clk_rate via debugfs
      
      * clk-basic-hw:
        clk: divider: Add support for specifying parents via DT/pointers
        clk: gate: Add support for specifying parents via DT/pointers
        clk: mux: Add support for specifying parents via DT/pointers
        clk: asm9260: Use parent accuracy in fixed rate clk
        clk: fixed-rate: Document that accuracy isn't a rate
        clk: fixed-rate: Add clk flags for parent accuracy
        clk: fixed-rate: Add support for specifying parents via DT/pointers
        clk: fixed-rate: Document accuracy member
        clk: fixed-rate: Move to_clk_fixed_rate() to C file
        clk: fixed-rate: Remove clk_register_fixed_rate_with_accuracy()
        clk: fixed-rate: Convert to clk_hw based APIs
        clk: gpio: Use DT way of specifying parents
      
      * clk-renesas:
        clk: renesas: Prepare for split of R-Car H3 config symbol
        dt-bindings: clock: renesas: cpg-mssr: Fix r8a774b1 typo
        clk: renesas: r7s9210: Add SPIBSC clock
        clk: renesas: rcar-gen3: Allow changing the RPC[D2] clocks
        clk: renesas: Remove use of ARCH_R8A7796
        clk: renesas: rcar-gen2: Change multipliers and dividers to u8
      
      * clk-amlogic:
        clk: clarify that clk_set_rate() does updates from top to bottom
        clk: meson: meson8b: make the CCF use the glitch-free mali mux
        clk: meson: pll: Fix by 0 division in __pll_params_to_rate()
        clk: meson: g12a: fix missing uart2 in regmap table
        clk: meson: meson8b: use of_clk_hw_register to register the clocks
        clk: meson: meson8b: don't register the XTAL clock when provided via OF
        clk: meson: meson8b: change references to the XTAL clock to use [fw_]name
        clk: meson: meson8b: use clk_hw_set_parent in the CPU clock notifier
        clk: meson: add a driver for the Meson8/8b/8m2 DDR clock controller
        dt-bindings: clock: meson8b: add the clock inputs
        dt-bindings: clock: add the Amlogic Meson8 DDR clock controller binding
      
      * clk-allwinner:
        clk: sunxi: a23/a33: Export the MIPI PLL
        clk: sunxi: a31: Export the MIPI PLL
        clk: sunxi-ng: a64: export CLK_CPUX clock for DVFS
        clk: sunxi-ng: add mux and pll notifiers for A64 CPU clock
        clk: sunxi-ng: r40: Export MBUS clock
        clk: sunxi: use of_device_get_match_data
      6e7a9f0c
    • Stephen Boyd's avatar
      Merge branches 'clk-uniphier', 'clk-warn-critical', 'clk-ux500', 'clk-kconfig'... · 36bf7a5b
      Stephen Boyd authored
      Merge branches 'clk-uniphier', 'clk-warn-critical', 'clk-ux500', 'clk-kconfig' and 'clk-at91' into clk-next
      
       - Warn about critical clks that fail to enable or prepare
       - Detect more PRMCU variants in ux500 driver
      
      * clk-uniphier:
        clk: uniphier: Add SCSSI clock gate for each channel
      
      * clk-warn-critical:
        clk: Warn about critical clks that fail to enable
        clk: Don't try to enable critical clocks if prepare failed
        clk: tegra: Fix double-free in tegra_clk_init()
        clk: samsung: exynos5420: Keep top G3D clocks enabled
        clk: qcom: Avoid SMMU/cx gdsc corner cases
        clk: qcom: gcc-sc7180: Fix setting flag for votable GDSCs
        clk: Move clk_core_reparent_orphans() under CONFIG_OF
        clk: at91: fix possible deadlock
        clk: walk orphan list on clock provider registration
        clk: imx: pll14xx: fix clk_pll14xx_wait_lock
        clk: imx: clk-imx7ulp: Add missing sentinel of ulp_div_table
        clk: imx: clk-composite-8m: add lock to gate/mux
      
      * clk-ux500:
        clk: ux500: Fix up the SGA clock for some variants
      
      * clk-kconfig:
        clk: Fix Kconfig indentation
      
      * clk-at91:
        clk: at91: sam9x60: fix programmable clock prescaler
        clk: at91: sam9x60-pll: adapt PMC_PLL_ACR default value
      36bf7a5b
    • Stephen Boyd's avatar
      Merge branches 'clk-init-allocation', 'clk-unused' and 'clk-register-dt-node-better' into clk-next · 28db9a8c
      Stephen Boyd authored
       - Let clk_ops::init() return an error code
       - Add a clk_ops::terminate() callback to undo clk_ops::init()
      
      * clk-init-allocation:
        clk: add terminate callback to clk_ops
        clk: let init callback return an error code
        clk: actually call the clock init before any other callback of the clock
      
      * clk-unused:
        clk: bm1800: Remove set but not used variable 'fref'
      
      * clk-register-dt-node-better:
        clk: Use parent node pointer during registration if necessary
      28db9a8c
  2. 22 Jan, 2020 1 commit
  3. 17 Jan, 2020 1 commit
    • Stephen Boyd's avatar
      Merge tag 'clk-meson-v5.6-1' of https://github.com/BayLibre/clk-meson into clk-amlogic · 31ef0917
      Stephen Boyd authored
      Pull Amlogic clk driver updates from Jerome Brunet:
      
       - Add meson8b DDR clock controller
       - Add input clocks to meson8b controllers
       - Fix meson8b mali clock update using the glitch free mux
       - Fix pll driver division by zero init
      
      * tag 'clk-meson-v5.6-1' of https://github.com/BayLibre/clk-meson:
        clk: clarify that clk_set_rate() does updates from top to bottom
        clk: meson: meson8b: make the CCF use the glitch-free mali mux
        clk: meson: pll: Fix by 0 division in __pll_params_to_rate()
        clk: meson: g12a: fix missing uart2 in regmap table
        clk: meson: meson8b: use of_clk_hw_register to register the clocks
        clk: meson: meson8b: don't register the XTAL clock when provided via OF
        clk: meson: meson8b: change references to the XTAL clock to use [fw_]name
        clk: meson: meson8b: use clk_hw_set_parent in the CPU clock notifier
        clk: meson: add a driver for the Meson8/8b/8m2 DDR clock controller
        dt-bindings: clock: meson8b: add the clock inputs
        dt-bindings: clock: add the Amlogic Meson8 DDR clock controller binding
      31ef0917
  4. 10 Jan, 2020 1 commit
  5. 08 Jan, 2020 2 commits
  6. 07 Jan, 2020 7 commits
  7. 06 Jan, 2020 3 commits
  8. 05 Jan, 2020 11 commits
  9. 04 Jan, 2020 4 commits
  10. 03 Jan, 2020 1 commit
  11. 26 Dec, 2019 1 commit
    • Guenter Roeck's avatar
      clk: Don't try to enable critical clocks if prepare failed · 12ead774
      Guenter Roeck authored
      The following traceback is seen if a critical clock fails to prepare.
      
      bcm2835-clk 3f101000.cprman: plld: couldn't lock PLL
      ------------[ cut here ]------------
      Enabling unprepared plld_per
      WARNING: CPU: 1 PID: 1 at drivers/clk/clk.c:1014 clk_core_enable+0xcc/0x2c0
      ...
      Call trace:
       clk_core_enable+0xcc/0x2c0
       __clk_register+0x5c4/0x788
       devm_clk_hw_register+0x4c/0xb0
       bcm2835_register_pll_divider+0xc0/0x150
       bcm2835_clk_probe+0x134/0x1e8
       platform_drv_probe+0x50/0xa0
       really_probe+0xd4/0x308
       driver_probe_device+0x54/0xe8
       device_driver_attach+0x6c/0x78
       __driver_attach+0x54/0xd8
      ...
      
      Check return values from clk_core_prepare() and clk_core_enable() and
      bail out if any of those functions returns an error.
      
      Cc: Jerome Brunet <jbrunet@baylibre.com>
      Fixes: 99652a46 ("clk: migrate the count of orphaned clocks at init")
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Link: https://lkml.kernel.org/r/20191225163429.29694-1-linux@roeck-us.netSigned-off-by: default avatarStephen Boyd <sboyd@kernel.org>
      12ead774
  12. 24 Dec, 2019 5 commits