]> Git Repo - J-linux.git/commitdiff
Merge branches 'clk-actions', 'clk-rockchip', 'clk-iproc', 'clk-intel' and 'clk-debug...
authorStephen Boyd <[email protected]>
Mon, 3 Aug 2020 22:06:53 +0000 (15:06 -0700)
committerStephen Boyd <[email protected]>
Mon, 3 Aug 2020 22:06:53 +0000 (15:06 -0700)
 - RMU and DMAC/GPIO clock support for Actions Semi S500 SoCs

* clk-actions:
  MAINTAINERS: Add reset binding entry for Actions Semi Owl SoCs
  clk: actions: Add Actions S500 SoC Reset Management Unit support
  dt-bindings: reset: Add binding constants for Actions S500 RMU
  clk: actions: Add APB, DMAC, GPIO clock support for Actions S500 SoC
  dt-bindings: clock: Add APB, DMAC, GPIO bindings for Actions S500 SoC
  clk: actions: Fix h_clk for Actions S500 SoC

* clk-rockchip:
  clk: rockchip: add sclk_mac_lbtest to rk3188_critical_clocks
  clk: rockchip: Revert "fix wrong mmc sample phase shift for rk3328"
  clk: rockchip: use separate compatibles for rk3288w-cru
  dt-bindings: clocks: add rk3288w variant compatible
  clk: rockchip: Handle clock tree for rk3288w variant
  clk: rockchip: convert rk3036 pll type to use internal lock status
  clk: rockchip: convert basic pll lock_wait to use regmap_read_poll_timeout
  clk: rockchip: convert rk3399 pll type to use readl_relaxed_poll_timeout

* clk-iproc:
  clk: iproc: round clock rate to the closest

* clk-intel:
  clk: intel: Avoid unnecessary memset by improving code
  clk: intel: Improve locking in the driver
  clk: intel: Use devm_clk_hw_register() instead of clk_hw_register()

* clk-debugfs:
  clk: Add support for enabling/disabling clocks from debugfs

1  2  3  4  5  6 
MAINTAINERS
drivers/clk/clk.c

diff --combined MAINTAINERS
index 09d6efd1d0d0e25cd45b5b8b77a354e8734e447a,931c78a5e035bc0f86def1651f896d892655978b,68f21d46614c46ce8e21ea80507610eb47a9ff30,68f21d46614c46ce8e21ea80507610eb47a9ff30,68f21d46614c46ce8e21ea80507610eb47a9ff30,68f21d46614c46ce8e21ea80507610eb47a9ff30..344564ae01346a62a68009f298448838b9b0562e
@@@@@@@ -1533,6 -1533,7 -1533,6 -1533,6 -1533,6 -1533,6 +1533,7 @@@@@@@ F:      drivers/mmc/host/owl-mmc.
      F:        drivers/pinctrl/actions/*
      F:        drivers/soc/actions/
      F:        include/dt-bindings/power/owl-*
+ ++++F:        include/dt-bindings/reset/actions,*
      F:        include/linux/soc/actions/
      N:        owl
      
@@@@@@@ -8324,9 -8325,8 -8324,8 -8324,8 -8324,8 -8324,8 +8325,9 @@@@@@@ W:      https://github.com/o2genum/ideapad-s
      F:        drivers/input/misc/ideapad_slidebar.c
      
      IDT VersaClock 5 CLOCK DRIVER
 -----M:        Marek Vasut <[email protected]>
 +++++M:        Luca Ceresoli <[email protected]>
      S:        Maintained
 +++++F:        Documentation/devicetree/bindings/clock/idt,versaclock5.yaml
      F:        drivers/clk/clk-versaclock5.c
      
      IEEE 802.15.4 SUBSYSTEM
diff --combined drivers/clk/clk.c
index 47c0ee9da4620b157e447e21b46ea1525573c3cf,3f588ed06ce31abed8f91436603e07d9b7068455,3f588ed06ce31abed8f91436603e07d9b7068455,3f588ed06ce31abed8f91436603e07d9b7068455,3f588ed06ce31abed8f91436603e07d9b7068455,4d455a657b01898ba4d11471e06fa8fe055393ac..8aed0c3ff122043de1f358b1eb452b1d0a2171bf
@@@@@@@ -1400,21 -1400,6 -1400,6 -1400,6 -1400,6 -1400,6 +1400,21 @@@@@@@ int __clk_determine_rate(struct clk_hw 
      }
      EXPORT_SYMBOL_GPL(__clk_determine_rate);
      
 +++++/**
 +++++ * clk_hw_round_rate() - round the given rate for a hw clk
 +++++ * @hw: the hw clk for which we are rounding a rate
 +++++ * @rate: the rate which is to be rounded
 +++++ *
 +++++ * Takes in a rate as input and rounds it to a rate that the clk can actually
 +++++ * use.
 +++++ *
 +++++ * Context: prepare_lock must be held.
 +++++ *          For clk providers to call from within clk_ops such as .round_rate,
 +++++ *          .determine_rate.
 +++++ *
 +++++ * Return: returns rounded rate of hw clk if clk supports round_rate operation
 +++++ *         else returns the parent rate.
 +++++ */
      unsigned long clk_hw_round_rate(struct clk_hw *hw, unsigned long rate)
      {
        int ret;
@@@@@@@ -3054,6 -3039,6 -3039,6 -3039,6 -3039,6 -3039,31 +3054,31 @@@@@@@ static int clk_rate_set(void *data, u6
      }
      
      #define clk_rate_mode     0644
+++++ 
+++++ static int clk_prepare_enable_set(void *data, u64 val)
+++++ {
+++++   struct clk_core *core = data;
+++++   int ret = 0;
+++++ 
+++++   if (val)
+++++           ret = clk_prepare_enable(core->hw->clk);
+++++   else
+++++           clk_disable_unprepare(core->hw->clk);
+++++ 
+++++   return ret;
+++++ }
+++++ 
+++++ static int clk_prepare_enable_get(void *data, u64 *val)
+++++ {
+++++   struct clk_core *core = data;
+++++ 
+++++   *val = core->enable_count && core->prepare_count;
+++++   return 0;
+++++ }
+++++ 
+++++ DEFINE_DEBUGFS_ATTRIBUTE(clk_prepare_enable_fops, clk_prepare_enable_get,
+++++                    clk_prepare_enable_set, "%llu\n");
+++++ 
      #else
      #define clk_rate_set      NULL
      #define clk_rate_mode     0444
@@@@@@@ -3231,6 -3216,6 -3216,6 -3216,6 -3216,6 -3241,10 +3256,10 @@@@@@@ static void clk_debug_create_one(struc
        debugfs_create_u32("clk_notifier_count", 0444, root, &core->notifier_count);
        debugfs_create_file("clk_duty_cycle", 0444, root, core,
                            &clk_duty_cycle_fops);
+++++ #ifdef CLOCK_ALLOW_WRITE_DEBUGFS
+++++   debugfs_create_file("clk_prepare_enable", 0644, root, core,
+++++                       &clk_prepare_enable_fops);
+++++ #endif
      
        if (core->num_parents > 0)
                debugfs_create_file("clk_parent", 0444, root, core,
@@@@@@@ -4135,7 -4120,6 -4120,6 -4120,6 -4120,6 -4149,6 +4164,7 @@@@@@@ static int devm_clk_hw_match(struct dev
      
      /**
       * devm_clk_unregister - resource managed clk_unregister()
 +++++ * @dev: device that is unregistering the clock data
       * @clk: clock to unregister
       *
       * Deallocate a clock allocated with devm_clk_register(). Normally
@@@@@@@ -4325,8 -4309,6 -4309,6 -4309,6 -4309,6 -4338,6 +4354,8 @@@@@@@ static void clk_core_reparent_orphans(v
       * @node: Pointer to device tree node of clock provider
       * @get: Get clock callback.  Returns NULL or a struct clk for the
       *       given clock specifier
 +++++ * @get_hw: Get clk_hw callback.  Returns NULL, ERR_PTR or a
 +++++ *       struct clk_hw for the given clock specifier
       * @data: context pointer to be passed into @get callback
       */
      struct of_clk_provider {
This page took 0.141838 seconds and 4 git commands to generate.