Search
SailfishOS Open Build Service
>
Projects
>
home:dcthang:branches:nemo:devel:hw:ti:omap3:n900
>
kernel-adaptation-n900
> linux-2.6-dvfs-0022-OMAP-Disable-Smartreflex-across-DVFS.patch
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File linux-2.6-dvfs-0022-OMAP-Disable-Smartreflex-across-DVFS.patch of Package kernel-adaptation-n900
From 0630fc7ee536656fafb80c2f9c4a43629843fe97 Mon Sep 17 00:00:00 2001 From: Thara Gopinath <thara@ti.com> Date: Fri, 21 Jan 2011 19:30:58 +0530 Subject: [PATCH 22/32] OMAP: Disable Smartreflex across DVFS This patch disables smartreflex for a particular voltage domain when the the voltage domain and the devices belonging to it is being scaled and re-enables it back once the scaling is done. Signed-off-by: Thara Gopinath <thara@ti.com> Signed-off-by: Vishwanath BS <vishwanath.bs@ti.com> --- arch/arm/mach-omap2/dvfs.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/arch/arm/mach-omap2/dvfs.c b/arch/arm/mach-omap2/dvfs.c index 05a9ce3..1e5492c 100644 --- a/arch/arm/mach-omap2/dvfs.c +++ b/arch/arm/mach-omap2/dvfs.c @@ -529,6 +529,9 @@ static int omap_dvfs_voltage_scale(struct omap_vdd_dvfs_info *dvfs_info) curr_volt = omap_voltage_get_nom_volt(voltdm); + /* Disable smartreflex module across voltage and frequency scaling */ + omap_sr_disable(voltdm); + if (curr_volt == volt) { is_volt_scaled = 1; } else if (curr_volt < volt) { @@ -536,6 +539,7 @@ static int omap_dvfs_voltage_scale(struct omap_vdd_dvfs_info *dvfs_info) if (ret) { pr_warning("%s: Unable to scale the %s to %ld volt\n", __func__, voltdm->name, volt); + omap_sr_enable(voltdm); mutex_unlock(&dvfs_info->scaling_mutex); return ret; } @@ -570,6 +574,9 @@ static int omap_dvfs_voltage_scale(struct omap_vdd_dvfs_info *dvfs_info) if (!is_volt_scaled && !ret) omap_voltage_scale_vdd(voltdm, volt); + /* Enable Smartreflex module */ + omap_sr_enable(voltdm); + mutex_unlock(&dvfs_info->scaling_mutex); /* calculate the voltages for dependent vdd's */ -- 1.7.0.4