diff mbox

[RESEND,PATCHv2,03/28] ARM: OMAP2+: omap_device: create clock alias purely from DT data

Message ID 1465844702-12200-4-git-send-email-t-kristo@ti.com
State Superseded
Headers show

Commit Message

Tero Kristo June 13, 2016, 7:04 p.m. UTC
This avoids the need to add most of the clock aliases under
drivers/clk/ti/clk-xyz.c files.

Signed-off-by: Tero Kristo <t-kristo@ti.com>

---
 arch/arm/mach-omap2/omap_device.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Tero Kristo June 29, 2016, 7:08 a.m. UTC | #1
On 28/06/16 10:00, Tony Lindgren wrote:
> * Tero Kristo <t-kristo@ti.com> [160613 12:07]:

>> This avoids the need to add most of the clock aliases under

>> drivers/clk/ti/clk-xyz.c files.

>

> This is a nice improvment, probably best to queu this along

> with the rest of the series via the clock tree:

>

> Acked-by: Tony Lindgren <tony@atomide.com>

>

> Or please let me know if you want me to pick this separately.

>

> Regards,

>

> Tony

>


Patches #3, #6, #7, #8 you can pick up separately (but you will have 
some conflicts due to missing ti_clk_get implementation.) These patches 
are required for this series to work properly though.

If we want to re-work the clk_get / ti_clk_get implementation, we should 
probably postpone it to 4.8, and that would push this series forward 
also. In that case, you can pick up the above patches for merge 
yourself, and we would handle the rest separately.

-Tero
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tero Kristo June 29, 2016, 7:10 a.m. UTC | #2
On 29/06/16 10:08, Tero Kristo wrote:
> On 28/06/16 10:00, Tony Lindgren wrote:

>> * Tero Kristo <t-kristo@ti.com> [160613 12:07]:

>>> This avoids the need to add most of the clock aliases under

>>> drivers/clk/ti/clk-xyz.c files.

>>

>> This is a nice improvment, probably best to queu this along

>> with the rest of the series via the clock tree:

>>

>> Acked-by: Tony Lindgren <tony@atomide.com>

>>

>> Or please let me know if you want me to pick this separately.

>>

>> Regards,

>>

>> Tony

>>

>

> Patches #3, #6, #7, #8 you can pick up separately (but you will have

> some conflicts due to missing ti_clk_get implementation.) These patches

> are required for this series to work properly though.


And patch #9 you can pick up also obviously...

>

> If we want to re-work the clk_get / ti_clk_get implementation, we should

> probably postpone it to 4.8, and that would push this series forward

> also. In that case, you can pick up the above patches for merge

> yourself, and we would handle the rest separately.

>

> -Tero


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tero Kristo June 29, 2016, 9 a.m. UTC | #3
On 29/06/16 10:54, Tony Lindgren wrote:
> * Tero Kristo <t-kristo@ti.com> [160629 00:13]:

>> On 29/06/16 10:08, Tero Kristo wrote:

>>> On 28/06/16 10:00, Tony Lindgren wrote:

>>>> * Tero Kristo <t-kristo@ti.com> [160613 12:07]:

>>>>> This avoids the need to add most of the clock aliases under

>>>>> drivers/clk/ti/clk-xyz.c files.

>>>>

>>>> This is a nice improvment, probably best to queu this along

>>>> with the rest of the series via the clock tree:

>>>>

>>>> Acked-by: Tony Lindgren <tony@atomide.com>

>>>>

>>>> Or please let me know if you want me to pick this separately.

>>>>

>>>> Regards,

>>>>

>>>> Tony

>>>>

>>>

>>> Patches #3, #6, #7, #8 you can pick up separately (but you will have

>>> some conflicts due to missing ti_clk_get implementation.) These patches

>>> are required for this series to work properly though.

>>

>> And patch #9 you can pick up also obviously...

>

> OK can you please repost the ones I can pick for v4.8 merge window

> to get them out of the way? There were some merge conflicts against

> Linux next when I tried to apply them for testing yesterday.


Yeah, I can repost these separately once I split up the series.

-Tero

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
index f7ff3b9..b32d7c8 100644
--- a/arch/arm/mach-omap2/omap_device.c
+++ b/arch/arm/mach-omap2/omap_device.c
@@ -63,7 +63,22 @@  static void _add_clkdev(struct omap_device *od, const char *clk_alias,
 		return;
 	}
 
-	rc = clk_add_alias(clk_alias, dev_name(&od->pdev->dev), clk_name, NULL);
+	r = clk_get_sys(NULL, clk_name);
+
+	if (IS_ERR(r) && of_have_populated_dt()) {
+		struct of_phandle_args clkspec;
+
+		clkspec.np = of_find_node_by_name(NULL, clk_name);
+
+		r = of_clk_get_from_provider(&clkspec);
+
+		rc = clk_register_clkdev(r, clk_alias,
+					 dev_name(&od->pdev->dev));
+	} else {
+		rc = clk_add_alias(clk_alias, dev_name(&od->pdev->dev),
+				   clk_name, NULL);
+	}
+
 	if (rc) {
 		if (rc == -ENODEV || rc == -ENOMEM)
 			dev_err(&od->pdev->dev,