diff options
author | Olof Johansson <olof@lixom.net> | 2013-06-27 20:04:27 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-06-27 20:04:27 -0400 |
commit | 8c3d913888cfb0066d62831969c3a992f7e4aba5 (patch) | |
tree | 0b52b0b71cb6b7c141ffa050b36245a13cff4f54 /drivers/mmc | |
parent | fbd1a04b210d56ef84200df56fc0291746d4d4dc (diff) | |
parent | 8cc7f5338e729b79194e6c22e3c794faaef974b8 (diff) |
Merge tag 'msm-clock-for-3.11b' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm into next/late
From David Brown:
MSM clock updates for 3.11.
Per Stephen Boyd's coverletter:
Resending to collect higher level maintainer acks per Olof's request.
The plan is to push this patchset through MSM to the arm-soc tree.
This patchset moves the existing MSM clock code and affected drivers
to the common clock framework. A prerequisite of moving to the common
clock framework is to use clk_prepare() and clk_enable() so the first
few patches migrate drivers to that call (clk_prepare() is a no-op on
MSM right now). It also removes some custom clock APIs that MSM
provides and finally moves the proc_comm clock code to the common
struct clk.
This patch series will be used as the foundation of the MSM 8660/8960
clock code that I plan to send out after this series.
* tag 'msm-clock-for-3.11b' of git://git.kernel.org/pub/scm/linux/kernel/git/davidb/linux-msm:
ARM: msm: Migrate to common clock framework
ARM: msm: Make proc_comm clock control into a platform driver
ARM: msm: Prepare clk_get() users in mach-msm for clock-pcom driver
ARM: msm: Remove clock-7x30.h include file
ARM: msm: Remove custom clk_set_{max,min}_rate() API
ARM: msm: Remove custom clk_set_flags() API
msm: iommu: Use clk_set_rate() instead of clk_set_min_rate()
msm: iommu: Convert to clk_prepare/unprepare
msm_sdcc: Convert to clk_prepare/unprepare
usb: otg: msm: Convert to clk_prepare/unprepare
msm_serial: Use devm_clk_get() and properly return errors
msm_serial: Convert to clk_prepare/unprepare
Acked-by: Chris Ball <cjb@laptop.org> # for msm_sdcc.c
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/msm_sdcc.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/mmc/host/msm_sdcc.c b/drivers/mmc/host/msm_sdcc.c index 0ee4a57fe6b2..b900de4e7e94 100644 --- a/drivers/mmc/host/msm_sdcc.c +++ b/drivers/mmc/host/msm_sdcc.c | |||
@@ -1268,10 +1268,18 @@ msmsdcc_probe(struct platform_device *pdev) | |||
1268 | goto clk_put; | 1268 | goto clk_put; |
1269 | } | 1269 | } |
1270 | 1270 | ||
1271 | ret = clk_prepare(host->pclk); | ||
1272 | if (ret) | ||
1273 | goto clk_put; | ||
1274 | |||
1275 | ret = clk_prepare(host->clk); | ||
1276 | if (ret) | ||
1277 | goto clk_unprepare_p; | ||
1278 | |||
1271 | /* Enable clocks */ | 1279 | /* Enable clocks */ |
1272 | ret = msmsdcc_enable_clocks(host); | 1280 | ret = msmsdcc_enable_clocks(host); |
1273 | if (ret) | 1281 | if (ret) |
1274 | goto clk_put; | 1282 | goto clk_unprepare; |
1275 | 1283 | ||
1276 | host->pclk_rate = clk_get_rate(host->pclk); | 1284 | host->pclk_rate = clk_get_rate(host->pclk); |
1277 | host->clk_rate = clk_get_rate(host->clk); | 1285 | host->clk_rate = clk_get_rate(host->clk); |
@@ -1386,6 +1394,10 @@ msmsdcc_probe(struct platform_device *pdev) | |||
1386 | free_irq(host->stat_irq, host); | 1394 | free_irq(host->stat_irq, host); |
1387 | clk_disable: | 1395 | clk_disable: |
1388 | msmsdcc_disable_clocks(host, 0); | 1396 | msmsdcc_disable_clocks(host, 0); |
1397 | clk_unprepare: | ||
1398 | clk_unprepare(host->clk); | ||
1399 | clk_unprepare_p: | ||
1400 | clk_unprepare(host->pclk); | ||
1389 | clk_put: | 1401 | clk_put: |
1390 | clk_put(host->clk); | 1402 | clk_put(host->clk); |
1391 | pclk_put: | 1403 | pclk_put: |