Commit 65ab16fd authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz Committed by Kukjin Kim

ARM: EXYNOS: Remove leftovers of the Samsung specific power domain control

Nowadays we use generic power domain support instead of Samsung
specific power domain control driver.

Cc: Thomas Abraham <thomas.abraham@linaro.org>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Signed-off-by: default avatarKyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: default avatarKukjin Kim <kgene.kim@samsung.com>
parent 8f748e20
...@@ -50,7 +50,6 @@ ...@@ -50,7 +50,6 @@
#include <plat/gpio-cfg.h> #include <plat/gpio-cfg.h>
#include <plat/iic.h> #include <plat/iic.h>
#include <plat/mfc.h> #include <plat/mfc.h>
#include <plat/pd.h>
#include <plat/fimc-core.h> #include <plat/fimc-core.h>
#include <plat/camport.h> #include <plat/camport.h>
#include <plat/mipi_csis.h> #include <plat/mipi_csis.h>
......
...@@ -38,7 +38,6 @@ ...@@ -38,7 +38,6 @@
#include <plat/clock.h> #include <plat/clock.h>
#include <plat/gpio-cfg.h> #include <plat/gpio-cfg.h>
#include <plat/backlight.h> #include <plat/backlight.h>
#include <plat/pd.h>
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/mfc.h> #include <plat/mfc.h>
......
...@@ -34,7 +34,6 @@ ...@@ -34,7 +34,6 @@
#include <plat/keypad.h> #include <plat/keypad.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
#include <plat/iic.h> #include <plat/iic.h>
#include <plat/pd.h>
#include <plat/gpio-cfg.h> #include <plat/gpio-cfg.h>
#include <plat/backlight.h> #include <plat/backlight.h>
#include <plat/mfc.h> #include <plat/mfc.h>
......
...@@ -39,7 +39,6 @@ ...@@ -39,7 +39,6 @@
#include <plat/fb.h> #include <plat/fb.h>
#include <plat/mfc.h> #include <plat/mfc.h>
#include <plat/sdhci.h> #include <plat/sdhci.h>
#include <plat/pd.h>
#include <plat/regs-fb-v4.h> #include <plat/regs-fb-v4.h>
#include <plat/fimc-core.h> #include <plat/fimc-core.h>
#include <plat/s5p-time.h> #include <plat/s5p-time.h>
......
...@@ -491,14 +491,6 @@ config S5P_SLEEP ...@@ -491,14 +491,6 @@ config S5P_SLEEP
Internal config node to apply common S5P sleep management code. Internal config node to apply common S5P sleep management code.
Can be selected by S5P and newer SoCs with similar sleep procedure. Can be selected by S5P and newer SoCs with similar sleep procedure.
comment "Power Domain"
config SAMSUNG_PD
bool "Samsung Power Domain"
depends on PM_RUNTIME
help
Say Y here if you want to control Power Domain by Runtime PM.
config DEBUG_S3C_UART config DEBUG_S3C_UART
depends on PLAT_SAMSUNG depends on PLAT_SAMSUNG
int int
......
...@@ -60,10 +60,6 @@ obj-$(CONFIG_SAMSUNG_WAKEMASK) += wakeup-mask.o ...@@ -60,10 +60,6 @@ obj-$(CONFIG_SAMSUNG_WAKEMASK) += wakeup-mask.o
obj-$(CONFIG_S5P_PM) += s5p-pm.o s5p-irq-pm.o obj-$(CONFIG_S5P_PM) += s5p-pm.o s5p-irq-pm.o
obj-$(CONFIG_S5P_SLEEP) += s5p-sleep.o obj-$(CONFIG_S5P_SLEEP) += s5p-sleep.o
# PD support
obj-$(CONFIG_SAMSUNG_PD) += pd.o
# PWM support # PWM support
obj-$(CONFIG_HAVE_PWM) += pwm.o obj-$(CONFIG_HAVE_PWM) += pwm.o
...@@ -131,7 +131,6 @@ extern struct platform_device exynos4_device_ohci; ...@@ -131,7 +131,6 @@ extern struct platform_device exynos4_device_ohci;
extern struct platform_device exynos4_device_pcm0; extern struct platform_device exynos4_device_pcm0;
extern struct platform_device exynos4_device_pcm1; extern struct platform_device exynos4_device_pcm1;
extern struct platform_device exynos4_device_pcm2; extern struct platform_device exynos4_device_pcm2;
extern struct platform_device exynos4_device_pd[];
extern struct platform_device exynos4_device_spdif; extern struct platform_device exynos4_device_spdif;
extern struct platform_device exynos_device_drm; extern struct platform_device exynos_device_drm;
......
/* linux/arch/arm/plat-samsung/include/plat/pd.h
*
* Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
* http://www.samsung.com
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#ifndef __ASM_PLAT_SAMSUNG_PD_H
#define __ASM_PLAT_SAMSUNG_PD_H __FILE__
struct samsung_pd_info {
int (*enable)(struct device *dev);
int (*disable)(struct device *dev);
void __iomem *base;
};
enum exynos4_pd_block {
PD_MFC,
PD_G3D,
PD_LCD0,
PD_LCD1,
PD_TV,
PD_CAM,
PD_GPS
};
#endif /* __ASM_PLAT_SAMSUNG_PD_H */
/* linux/arch/arm/plat-samsung/pd.c
*
* Copyright (c) 2010 Samsung Electronics Co., Ltd.
* http://www.samsung.com
*
* Samsung Power domain support
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include <linux/init.h>
#include <linux/export.h>
#include <linux/platform_device.h>
#include <linux/err.h>
#include <linux/pm_runtime.h>
#include <plat/pd.h>
static int samsung_pd_probe(struct platform_device *pdev)
{
struct samsung_pd_info *pdata = pdev->dev.platform_data;
struct device *dev = &pdev->dev;
if (!pdata) {
dev_err(dev, "no device data specified\n");
return -ENOENT;
}
pm_runtime_set_active(dev);
pm_runtime_enable(dev);
dev_info(dev, "power domain registered\n");
return 0;
}
static int __devexit samsung_pd_remove(struct platform_device *pdev)
{
struct device *dev = &pdev->dev;
pm_runtime_disable(dev);
return 0;
}
static int samsung_pd_runtime_suspend(struct device *dev)
{
struct samsung_pd_info *pdata = dev->platform_data;
int ret = 0;
if (pdata->disable)
ret = pdata->disable(dev);
dev_dbg(dev, "suspended\n");
return ret;
}
static int samsung_pd_runtime_resume(struct device *dev)
{
struct samsung_pd_info *pdata = dev->platform_data;
int ret = 0;
if (pdata->enable)
ret = pdata->enable(dev);
dev_dbg(dev, "resumed\n");
return ret;
}
static const struct dev_pm_ops samsung_pd_pm_ops = {
.runtime_suspend = samsung_pd_runtime_suspend,
.runtime_resume = samsung_pd_runtime_resume,
};
static struct platform_driver samsung_pd_driver = {
.driver = {
.name = "samsung-pd",
.owner = THIS_MODULE,
.pm = &samsung_pd_pm_ops,
},
.probe = samsung_pd_probe,
.remove = __devexit_p(samsung_pd_remove),
};
static int __init samsung_pd_init(void)
{
int ret;
ret = platform_driver_register(&samsung_pd_driver);
if (ret)
printk(KERN_ERR "%s: failed to add PD driver\n", __func__);
return ret;
}
arch_initcall(samsung_pd_init);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment