OMAP2/3 McBSP: add temporary clockdomain fix for McBSP virtual clocks
Subsystems (3)
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 1/1 OMAP2/3 McBSP: add temporary clockdomain fix for McBSP virtual clocks
The McBSP driver uses virtual clocks to handle enabling and disabling its hardware clocks. These virtual clocks have no associated clockdomain. After commit 60b8b431e47d8c5b8c02a2e4fa9af388aae20790, this prevents the McBSP clocks from registering correctly. Resolve this for the short term by using virt_opp_clkdm for these clocks. These McBSP virtual clocks should be removed, but such a fix would require significant changes to the McBSP drivers that would require testing on OMAP1, 2, and 3 platforms.
Tested on 2430SDP and 3430SDP GP ES2.1.
--- arch/arm/mach-omap2/mcbsp.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
arch/arm/mach-omap2/mcbsp.c +5 -0
@@ -77,6 +77,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 1, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },
@@ -85,6 +86,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 2, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },
@@ -93,6 +95,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 3, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },
@@ -101,6 +104,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 4, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },
@@ -109,6 +113,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 5, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },
Tony Lindgren
maintainerQuoted 10 lines · Paul Walmsley
The McBSP driver uses virtual clocks to handle enabling and disabling its hardware clocks. These virtual clocks have no associated clockdomain. After commit
60b8b431e47d8c5b8c02a2e4fa9af388aae20790, this prevents the McBSP clocks from registering correctly. Resolve this for the short term by usingvirt_opp_clkdmfor these clocks. These McBSP virtual clocks should be removed, but such a fix would require significant changes to the McBSP drivers that would require testing on OMAP1, 2, and 3 platforms.Tested on 2430SDP and 3430SDP GP ES2.1.
Thanks, pushing to l-o tree.
Tony
Quoted 53 lines
Signed-off-by Paul Walmsley <[email protected]>Cc Tony Lindgren <[email protected]>Cc Eero Nurkkala <[email protected]>--- arch/arm/mach-omap2/mcbsp.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)arch/arm/mach-omap2/mcbsp.c +5
-0@@ -77,6 +77,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 1, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },@@ -85,6 +86,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 2, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },@@ -93,6 +95,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 3, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },@@ -101,6 +104,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 4, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },@@ -109,6 +113,7 @@ static struct mcbsp_internal_clk omap_mcbsp_clks[] = { .clk = { .name = "mcbsp_clk", .id = 5, + .clkdm = { .name = "virt_opp_clkdm" }, .enable = omap_mcbsp_clk_enable, .disable = omap_mcbsp_clk_disable, },