diff options
Diffstat (limited to 'arch/arm/mach-omap2/powerdomains34xx.h')
| -rw-r--r-- | arch/arm/mach-omap2/powerdomains34xx.h | 68 |
1 files changed, 63 insertions, 5 deletions
diff --git a/arch/arm/mach-omap2/powerdomains34xx.h b/arch/arm/mach-omap2/powerdomains34xx.h index f573f7108398..4dcf94b800ab 100644 --- a/arch/arm/mach-omap2/powerdomains34xx.h +++ b/arch/arm/mach-omap2/powerdomains34xx.h | |||
| @@ -200,12 +200,33 @@ static struct powerdomain mpu_34xx_pwrdm = { | |||
| 200 | }; | 200 | }; |
| 201 | 201 | ||
| 202 | /* No wkdeps or sleepdeps for 34xx core apparently */ | 202 | /* No wkdeps or sleepdeps for 34xx core apparently */ |
| 203 | static struct powerdomain core_34xx_pwrdm = { | 203 | static struct powerdomain core_34xx_pre_es3_1_pwrdm = { |
| 204 | .name = "core_pwrdm", | 204 | .name = "core_pwrdm", |
| 205 | .prcm_offs = CORE_MOD, | 205 | .prcm_offs = CORE_MOD, |
| 206 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), | 206 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES1 | |
| 207 | CHIP_IS_OMAP3430ES2 | | ||
| 208 | CHIP_IS_OMAP3430ES3_0), | ||
| 209 | .pwrsts = PWRSTS_OFF_RET_ON, | ||
| 210 | .dep_bit = OMAP3430_EN_CORE_SHIFT, | ||
| 211 | .banks = 2, | ||
| 212 | .pwrsts_mem_ret = { | ||
| 213 | [0] = PWRSTS_OFF_RET, /* MEM1RETSTATE */ | ||
| 214 | [1] = PWRSTS_OFF_RET, /* MEM2RETSTATE */ | ||
| 215 | }, | ||
| 216 | .pwrsts_mem_on = { | ||
| 217 | [0] = PWRSTS_OFF_RET_ON, /* MEM1ONSTATE */ | ||
| 218 | [1] = PWRSTS_OFF_RET_ON, /* MEM2ONSTATE */ | ||
| 219 | }, | ||
| 220 | }; | ||
| 221 | |||
| 222 | /* No wkdeps or sleepdeps for 34xx core apparently */ | ||
| 223 | static struct powerdomain core_34xx_es3_1_pwrdm = { | ||
| 224 | .name = "core_pwrdm", | ||
| 225 | .prcm_offs = CORE_MOD, | ||
| 226 | .omap_chip = OMAP_CHIP_INIT(CHIP_GE_OMAP3430ES3_1), | ||
| 207 | .pwrsts = PWRSTS_OFF_RET_ON, | 227 | .pwrsts = PWRSTS_OFF_RET_ON, |
| 208 | .dep_bit = OMAP3430_EN_CORE_SHIFT, | 228 | .dep_bit = OMAP3430_EN_CORE_SHIFT, |
| 229 | .flags = PWRDM_HAS_HDWR_SAR, /* for USBTLL only */ | ||
| 209 | .banks = 2, | 230 | .banks = 2, |
| 210 | .pwrsts_mem_ret = { | 231 | .pwrsts_mem_ret = { |
| 211 | [0] = PWRSTS_OFF_RET, /* MEM1RETSTATE */ | 232 | [0] = PWRSTS_OFF_RET, /* MEM1RETSTATE */ |
| @@ -236,14 +257,19 @@ static struct powerdomain dss_pwrdm = { | |||
| 236 | }, | 257 | }, |
| 237 | }; | 258 | }; |
| 238 | 259 | ||
| 260 | /* | ||
| 261 | * Although the 34XX TRM Rev K Table 4-371 notes that retention is a | ||
| 262 | * possible SGX powerstate, the SGX device itself does not support | ||
| 263 | * retention. | ||
| 264 | */ | ||
| 239 | static struct powerdomain sgx_pwrdm = { | 265 | static struct powerdomain sgx_pwrdm = { |
| 240 | .name = "sgx_pwrdm", | 266 | .name = "sgx_pwrdm", |
| 241 | .prcm_offs = OMAP3430ES2_SGX_MOD, | 267 | .prcm_offs = OMAP3430ES2_SGX_MOD, |
| 242 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2), | 268 | .omap_chip = OMAP_CHIP_INIT(CHIP_GE_OMAP3430ES2), |
| 243 | .wkdep_srcs = gfx_sgx_wkdeps, | 269 | .wkdep_srcs = gfx_sgx_wkdeps, |
| 244 | .sleepdep_srcs = cam_gfx_sleepdeps, | 270 | .sleepdep_srcs = cam_gfx_sleepdeps, |
| 245 | /* XXX This is accurate for 3430 SGX, but what about GFX? */ | 271 | /* XXX This is accurate for 3430 SGX, but what about GFX? */ |
| 246 | .pwrsts = PWRSTS_OFF_RET_ON, | 272 | .pwrsts = PWRSTS_OFF_ON, |
| 247 | .pwrsts_logic_ret = PWRDM_POWER_RET, | 273 | .pwrsts_logic_ret = PWRDM_POWER_RET, |
| 248 | .banks = 1, | 274 | .banks = 1, |
| 249 | .pwrsts_mem_ret = { | 275 | .pwrsts_mem_ret = { |
| @@ -307,11 +333,12 @@ static struct powerdomain neon_pwrdm = { | |||
| 307 | static struct powerdomain usbhost_pwrdm = { | 333 | static struct powerdomain usbhost_pwrdm = { |
| 308 | .name = "usbhost_pwrdm", | 334 | .name = "usbhost_pwrdm", |
| 309 | .prcm_offs = OMAP3430ES2_USBHOST_MOD, | 335 | .prcm_offs = OMAP3430ES2_USBHOST_MOD, |
| 310 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2), | 336 | .omap_chip = OMAP_CHIP_INIT(CHIP_GE_OMAP3430ES2), |
| 311 | .wkdep_srcs = per_usbhost_wkdeps, | 337 | .wkdep_srcs = per_usbhost_wkdeps, |
| 312 | .sleepdep_srcs = dss_per_usbhost_sleepdeps, | 338 | .sleepdep_srcs = dss_per_usbhost_sleepdeps, |
| 313 | .pwrsts = PWRSTS_OFF_RET_ON, | 339 | .pwrsts = PWRSTS_OFF_RET_ON, |
| 314 | .pwrsts_logic_ret = PWRDM_POWER_RET, | 340 | .pwrsts_logic_ret = PWRDM_POWER_RET, |
| 341 | .flags = PWRDM_HAS_HDWR_SAR, /* for USBHOST ctrlr only */ | ||
| 315 | .banks = 1, | 342 | .banks = 1, |
| 316 | .pwrsts_mem_ret = { | 343 | .pwrsts_mem_ret = { |
| 317 | [0] = PWRDM_POWER_RET, /* MEMRETSTATE */ | 344 | [0] = PWRDM_POWER_RET, /* MEMRETSTATE */ |
| @@ -321,6 +348,37 @@ static struct powerdomain usbhost_pwrdm = { | |||
| 321 | }, | 348 | }, |
| 322 | }; | 349 | }; |
| 323 | 350 | ||
| 351 | static struct powerdomain dpll1_pwrdm = { | ||
| 352 | .name = "dpll1_pwrdm", | ||
| 353 | .prcm_offs = MPU_MOD, | ||
| 354 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), | ||
| 355 | }; | ||
| 356 | |||
| 357 | static struct powerdomain dpll2_pwrdm = { | ||
| 358 | .name = "dpll2_pwrdm", | ||
| 359 | .prcm_offs = OMAP3430_IVA2_MOD, | ||
| 360 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), | ||
| 361 | }; | ||
| 362 | |||
| 363 | static struct powerdomain dpll3_pwrdm = { | ||
| 364 | .name = "dpll3_pwrdm", | ||
| 365 | .prcm_offs = PLL_MOD, | ||
| 366 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), | ||
| 367 | }; | ||
| 368 | |||
| 369 | static struct powerdomain dpll4_pwrdm = { | ||
| 370 | .name = "dpll4_pwrdm", | ||
| 371 | .prcm_offs = PLL_MOD, | ||
| 372 | .omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430), | ||
| 373 | }; | ||
| 374 | |||
| 375 | static struct powerdomain dpll5_pwrdm = { | ||
| 376 | .name = "dpll5_pwrdm", | ||
| 377 | .prcm_offs = PLL_MOD, | ||
| 378 | .omap_chip = OMAP_CHIP_INIT(CHIP_GE_OMAP3430ES2), | ||
| 379 | }; | ||
| 380 | |||
| 381 | |||
| 324 | #endif /* CONFIG_ARCH_OMAP34XX */ | 382 | #endif /* CONFIG_ARCH_OMAP34XX */ |
| 325 | 383 | ||
| 326 | 384 | ||
