When clock providers are added to the device tree after of_clk_init is called
they are not added to the clock provider list. This makes that drivers such
as i2c-xiic.c fail to init, as they may depend on the unadded clock provider.

We first introduce a new function clk.c that will check if a device_node is
already a clock provider or not.

Later we add two patches, one for clk-fixed-factor and another to
clk-fixed-rate that make us of that function and also convert both drivers
to module platform driver, but keeping all the previous functionality intact.

Ricardo Ribalda Delgado (3):
  clk: Add new function of_clk_is_provider()
  clk: fixed-factor: Convert into a module platform driver
  clk: fixed-rate: Convert into a module platform driver

 drivers/clk/clk-fixed-factor.c | 66 ++++++++++++++++++++++++++++++++++++++++--
 drivers/clk/clk-fixed-rate.c   | 62 +++++++++++++++++++++++++++++++++++++--
 drivers/clk/clk.c              | 20 +++++++++++++
 include/linux/clk-provider.h   |  5 ++++
 4 files changed, 148 insertions(+), 5 deletions(-)

-- 
2.8.1

Reply via email to