diff options
| -rw-r--r-- | arch/arm/mach-omap2/clockdomain2xxx_3xxx.c | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c index 9a7792aec673..70294f54e35a 100644 --- a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c +++ b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c | |||
| @@ -183,17 +183,6 @@ static int omap2_clkdm_clk_enable(struct clockdomain *clkdm) | |||
| 183 | if (!clkdm->clktrctrl_mask) | 183 | if (!clkdm->clktrctrl_mask) |
| 184 | return 0; | 184 | return 0; |
| 185 | 185 | ||
| 186 | /* | ||
| 187 | * The CLKDM_MISSING_IDLE_REPORTING flag documentation has | ||
| 188 | * more details on the unpleasant problem this is working | ||
| 189 | * around | ||
| 190 | */ | ||
| 191 | if (clkdm->flags & CLKDM_MISSING_IDLE_REPORTING && | ||
| 192 | !(clkdm->flags & CLKDM_CAN_FORCE_SLEEP)) { | ||
| 193 | _enable_hwsup(clkdm); | ||
| 194 | return 0; | ||
| 195 | } | ||
| 196 | |||
| 197 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, | 186 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, |
| 198 | clkdm->clktrctrl_mask); | 187 | clkdm->clktrctrl_mask); |
| 199 | 188 | ||
| @@ -217,17 +206,6 @@ static int omap2_clkdm_clk_disable(struct clockdomain *clkdm) | |||
| 217 | if (!clkdm->clktrctrl_mask) | 206 | if (!clkdm->clktrctrl_mask) |
| 218 | return 0; | 207 | return 0; |
| 219 | 208 | ||
| 220 | /* | ||
| 221 | * The CLKDM_MISSING_IDLE_REPORTING flag documentation has | ||
| 222 | * more details on the unpleasant problem this is working | ||
| 223 | * around | ||
| 224 | */ | ||
| 225 | if ((clkdm->flags & CLKDM_MISSING_IDLE_REPORTING) && | ||
| 226 | (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP)) { | ||
| 227 | omap3_clkdm_wakeup(clkdm); | ||
| 228 | return 0; | ||
| 229 | } | ||
| 230 | |||
| 231 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, | 209 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, |
| 232 | clkdm->clktrctrl_mask); | 210 | clkdm->clktrctrl_mask); |
| 233 | 211 | ||
| @@ -269,6 +247,17 @@ static int omap3xxx_clkdm_clk_enable(struct clockdomain *clkdm) | |||
| 269 | if (!clkdm->clktrctrl_mask) | 247 | if (!clkdm->clktrctrl_mask) |
| 270 | return 0; | 248 | return 0; |
| 271 | 249 | ||
| 250 | /* | ||
| 251 | * The CLKDM_MISSING_IDLE_REPORTING flag documentation has | ||
| 252 | * more details on the unpleasant problem this is working | ||
| 253 | * around | ||
| 254 | */ | ||
| 255 | if ((clkdm->flags & CLKDM_MISSING_IDLE_REPORTING) && | ||
| 256 | (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP)) { | ||
| 257 | omap3_clkdm_wakeup(clkdm); | ||
| 258 | return 0; | ||
| 259 | } | ||
| 260 | |||
| 272 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, | 261 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, |
| 273 | clkdm->clktrctrl_mask); | 262 | clkdm->clktrctrl_mask); |
| 274 | 263 | ||
| @@ -292,6 +281,17 @@ static int omap3xxx_clkdm_clk_disable(struct clockdomain *clkdm) | |||
| 292 | if (!clkdm->clktrctrl_mask) | 281 | if (!clkdm->clktrctrl_mask) |
| 293 | return 0; | 282 | return 0; |
| 294 | 283 | ||
| 284 | /* | ||
| 285 | * The CLKDM_MISSING_IDLE_REPORTING flag documentation has | ||
| 286 | * more details on the unpleasant problem this is working | ||
| 287 | * around | ||
| 288 | */ | ||
| 289 | if (clkdm->flags & CLKDM_MISSING_IDLE_REPORTING && | ||
| 290 | !(clkdm->flags & CLKDM_CAN_FORCE_SLEEP)) { | ||
| 291 | _enable_hwsup(clkdm); | ||
| 292 | return 0; | ||
| 293 | } | ||
| 294 | |||
| 295 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, | 295 | hwsup = omap2_cm_is_clkdm_in_hwsup(clkdm->pwrdm.ptr->prcm_offs, |
| 296 | clkdm->clktrctrl_mask); | 296 | clkdm->clktrctrl_mask); |
| 297 | 297 | ||
