Merge branch 'for_2.6.38/pm-fixes' of ssh://master.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into devel-fixes
This commit is contained in:
commit
112258b1d2
3 changed files with 10 additions and 9 deletions
|
@ -168,9 +168,10 @@ static void omap3_core_restore_context(void)
|
||||||
* once during boot sequence, but this works as we are not using secure
|
* once during boot sequence, but this works as we are not using secure
|
||||||
* services.
|
* services.
|
||||||
*/
|
*/
|
||||||
static void omap3_save_secure_ram_context(u32 target_mpu_state)
|
static void omap3_save_secure_ram_context(void)
|
||||||
{
|
{
|
||||||
u32 ret;
|
u32 ret;
|
||||||
|
int mpu_next_state = pwrdm_read_next_pwrst(mpu_pwrdm);
|
||||||
|
|
||||||
if (omap_type() != OMAP2_DEVICE_TYPE_GP) {
|
if (omap_type() != OMAP2_DEVICE_TYPE_GP) {
|
||||||
/*
|
/*
|
||||||
|
@ -181,7 +182,7 @@ static void omap3_save_secure_ram_context(u32 target_mpu_state)
|
||||||
pwrdm_set_next_pwrst(mpu_pwrdm, PWRDM_POWER_ON);
|
pwrdm_set_next_pwrst(mpu_pwrdm, PWRDM_POWER_ON);
|
||||||
ret = _omap_save_secure_sram((u32 *)
|
ret = _omap_save_secure_sram((u32 *)
|
||||||
__pa(omap3_secure_ram_storage));
|
__pa(omap3_secure_ram_storage));
|
||||||
pwrdm_set_next_pwrst(mpu_pwrdm, target_mpu_state);
|
pwrdm_set_next_pwrst(mpu_pwrdm, mpu_next_state);
|
||||||
/* Following is for error tracking, it should not happen */
|
/* Following is for error tracking, it should not happen */
|
||||||
if (ret) {
|
if (ret) {
|
||||||
printk(KERN_ERR "save_secure_sram() returns %08x\n",
|
printk(KERN_ERR "save_secure_sram() returns %08x\n",
|
||||||
|
@ -1094,7 +1095,7 @@ static int __init omap3_pm_init(void)
|
||||||
local_fiq_disable();
|
local_fiq_disable();
|
||||||
|
|
||||||
omap_dma_global_context_save();
|
omap_dma_global_context_save();
|
||||||
omap3_save_secure_ram_context(PWRDM_POWER_ON);
|
omap3_save_secure_ram_context();
|
||||||
omap_dma_global_context_restore();
|
omap_dma_global_context_restore();
|
||||||
|
|
||||||
local_irq_enable();
|
local_irq_enable();
|
||||||
|
|
|
@ -780,8 +780,7 @@ static int omap_sr_autocomp_show(void *data, u64 *val)
|
||||||
struct omap_sr *sr_info = (struct omap_sr *) data;
|
struct omap_sr *sr_info = (struct omap_sr *) data;
|
||||||
|
|
||||||
if (!sr_info) {
|
if (!sr_info) {
|
||||||
pr_warning("%s: omap_sr struct for sr_%s not found\n",
|
pr_warning("%s: omap_sr struct not found\n", __func__);
|
||||||
__func__, sr_info->voltdm->name);
|
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -795,8 +794,7 @@ static int omap_sr_autocomp_store(void *data, u64 val)
|
||||||
struct omap_sr *sr_info = (struct omap_sr *) data;
|
struct omap_sr *sr_info = (struct omap_sr *) data;
|
||||||
|
|
||||||
if (!sr_info) {
|
if (!sr_info) {
|
||||||
pr_warning("%s: omap_sr struct for sr_%s not found\n",
|
pr_warning("%s: omap_sr struct not found\n", __func__);
|
||||||
__func__, sr_info->voltdm->name);
|
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -834,7 +832,8 @@ static int __init omap_sr_probe(struct platform_device *pdev)
|
||||||
|
|
||||||
if (!pdata) {
|
if (!pdata) {
|
||||||
dev_err(&pdev->dev, "%s: platform data missing\n", __func__);
|
dev_err(&pdev->dev, "%s: platform data missing\n", __func__);
|
||||||
return -EINVAL;
|
ret = -EINVAL;
|
||||||
|
goto err_free_devinfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
|
||||||
|
@ -966,7 +965,7 @@ static int __devexit omap_sr_remove(struct platform_device *pdev)
|
||||||
}
|
}
|
||||||
|
|
||||||
sr_info = _sr_lookup(pdata->voltdm);
|
sr_info = _sr_lookup(pdata->voltdm);
|
||||||
if (!sr_info) {
|
if (IS_ERR(sr_info)) {
|
||||||
dev_warn(&pdev->dev, "%s: omap_sr struct not found\n",
|
dev_warn(&pdev->dev, "%s: omap_sr struct not found\n",
|
||||||
__func__);
|
__func__);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
|
@ -471,6 +471,7 @@ static void __init vdd_debugfs_init(struct omap_vdd_info *vdd)
|
||||||
strcat(name, vdd->voltdm.name);
|
strcat(name, vdd->voltdm.name);
|
||||||
|
|
||||||
vdd->debug_dir = debugfs_create_dir(name, voltage_dir);
|
vdd->debug_dir = debugfs_create_dir(name, voltage_dir);
|
||||||
|
kfree(name);
|
||||||
if (IS_ERR(vdd->debug_dir)) {
|
if (IS_ERR(vdd->debug_dir)) {
|
||||||
pr_warning("%s: Unable to create debugfs directory for"
|
pr_warning("%s: Unable to create debugfs directory for"
|
||||||
" vdd_%s\n", __func__, vdd->voltdm.name);
|
" vdd_%s\n", __func__, vdd->voltdm.name);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue