Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 112258b1 authored by Tony Lindgren's avatar Tony Lindgren
Browse files

Merge branch 'for_2.6.38/pm-fixes' of...

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
parents 0e6d8cad 8353584e
Loading
Loading
Loading
Loading
+4 −3
Original line number Original line Diff line number Diff line
@@ -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();
+5 −6
Original line number Original line Diff line number Diff line
@@ -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;
+1 −0
Original line number Original line Diff line number Diff line
@@ -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);