Re: [PATCH 0/3] Convert clk-fixed into module platform driver
From: Stephen Boyd <hidden>
Date: 2016-06-16 00:27:31
Also in:
lkml
On 06/15, Ricardo Ribalda Delgado wrote:
Hi Stephen
Assume this device tree overlay:
&bus0{
axi_clk: axi_clk {
compatible = "fixed-clock";
#clock-cells = <0x0>;
clock-frequency = <125000000>;
};
iic_0: iic {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,xps-iic-2.00.a";
reg = < 0x00030000 0x10000 >;
interrupt-parent = <&xps_intc_0>;
interrupts = < 2 2 >;
clocks = <&axi_clk>;
} ;
}
Which is basically a new i2c master and a fixed clock definition.
The fixed clock driver will only be probed to the driver at arch
initialization, when of_clk_init is called. The device overlay can be
added at any point, usually after arch init. Which will result in ii_0
failing to probe, because it is missing its clock.
This changeset allows fixed clocks to be added after of_clk_init is
called, by converting the driver into a platform driver.Ok, so this is about supporting clks in overlays. I2C only comes into the picture here because it's a consumer and happens to also be on the same overlay. -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project