diff options
author | Ziyann <jaraidaniel@gmail.com> | 2014-07-11 12:39:19 +0200 |
---|---|---|
committer | Ziyann <jaraidaniel@gmail.com> | 2014-11-19 21:12:54 +0100 |
commit | 435575a21f91913af2207a95770719851772b212 (patch) | |
tree | 4df16c76101e6ac15adb51cafaea792229f35bb5 /drivers/omap_hsi | |
parent | ba8528cc16500866abf42f3c7384053f1c9f7c5d (diff) | |
download | kernel_samsung_tuna-435575a21f91913af2207a95770719851772b212.zip kernel_samsung_tuna-435575a21f91913af2207a95770719851772b212.tar.gz kernel_samsung_tuna-435575a21f91913af2207a95770719851772b212.tar.bz2 |
Revert "OMAP4: DPLL cascading: usage of DPLL cascading blocker API on HSI activity"
This reverts commit 053b228cb68b554b1d94ffb7fa0e22af745f86c5.
Diffstat (limited to 'drivers/omap_hsi')
-rwxr-xr-x | drivers/omap_hsi/hsi_driver.c | 51 |
1 files changed, 7 insertions, 44 deletions
diff --git a/drivers/omap_hsi/hsi_driver.c b/drivers/omap_hsi/hsi_driver.c index a216c99..a2ed3c2 100755 --- a/drivers/omap_hsi/hsi_driver.c +++ b/drivers/omap_hsi/hsi_driver.c @@ -43,17 +43,6 @@ #define HSI_RESETDONE_NORMAL_RETRIES 1 /* Reset should complete in 1 R/W */ /* cycle */ -#ifdef CONFIG_OMAP4_DPLL_CASCADING -struct hsi_dpll_cascading_blocker { - bool lock_dpll_cascading; - struct device *dev; - struct work_struct dpll_blocker_work; -}; - -static struct hsi_dpll_cascading_blocker dpll_blocker = { - .lock_dpll_cascading = true, -}; -#endif void hsi_hsr_suspend(struct hsi_dev *hsi_ctrl) { @@ -665,22 +654,6 @@ static int __init hsi_init_gdd_chan_count(struct hsi_dev *hsi_ctrl) return 0; } -#ifdef CONFIG_OMAP4_DPLL_CASCADING -static void hsi_dpll_cascading_blocker_work(struct work_struct *work) -{ - struct hsi_dpll_cascading_blocker *dpll_blocker; - - dpll_blocker = container_of(work, - struct hsi_dpll_cascading_blocker, - dpll_blocker_work); - - if (dpll_blocker->lock_dpll_cascading) - omap4_dpll_cascading_blocker_hold(dpll_blocker->dev); - else - omap4_dpll_cascading_blocker_release(dpll_blocker->dev); -} -#endif - /** * hsi_clocks_disable_channel - virtual wrapper for disabling HSI clocks for * a given channel @@ -717,11 +690,10 @@ void hsi_clocks_disable_channel(struct device *dev, u8 channel_number, if (hsi_is_hst_controller_busy(hsi_ctrl)) dev_dbg(dev, "Disabling clocks with HST FSM not IDLE !\n"); -#ifdef CONFIG_OMAP4_DPLL_CASCADING +#ifdef K3_0_PORTING_HSI_MISSING_FEATURE /* Allow Fclk to change */ - dpll_blocker.lock_dpll_cascading = false; - dpll_blocker.dev = dev; - schedule_work(&dpll_blocker.dpll_blocker_work); + if (dpll_cascading_blocker_release(dev) < 0) + dev_warn(dev, "Error releasing DPLL cascading constraint\n"); #endif pm_runtime_put_sync_suspend(dev); @@ -759,11 +731,10 @@ int hsi_clocks_enable_channel(struct device *dev, u8 channel_number, return -EEXIST; } -#ifdef CONFIG_OMAP4_DPLL_CASCADING - /* Prevent Fclk to change */ - dpll_blocker.lock_dpll_cascading = true; - dpll_blocker.dev = dev; - schedule_work(&dpll_blocker.dpll_blocker_work); +#ifdef K3_0_PORTING_HSI_MISSING_FEATURE + /* Prevent Fclk change */ + if (dpll_cascading_blocker_hold(dev) < 0) + dev_warn(dev, "Error holding DPLL cascading constraint\n"); #endif return pm_runtime_get_sync(dev); @@ -1252,11 +1223,6 @@ static int __init hsi_driver_init(void) goto rback1; } -#ifdef CONFIG_OMAP4_DPLL_CASCADING - INIT_WORK(&dpll_blocker.dpll_blocker_work, - hsi_dpll_cascading_blocker_work); -#endif - /* Register the HSI platform driver */ err = platform_driver_probe(&hsi_pdriver, hsi_platform_device_probe); if (err < 0) { @@ -1274,9 +1240,6 @@ rback1: static void __exit hsi_driver_exit(void) { -#ifdef CONFIG_OMAP4_DPLL_CASCADING - flush_work_sync(&dpll_blocker.dpll_blocker_work); -#endif platform_driver_unregister(&hsi_pdriver); hsi_debug_exit(); hsi_bus_exit(); |