diff options
author | Michael Hennerich <michael.hennerich@analog.com> | 2008-05-06 23:41:26 -0400 |
---|---|---|
committer | Bryan Wu <cooloney@kernel.org> | 2008-05-06 23:41:26 -0400 |
commit | 14b03204c8060d036b04cbb18bbd6f6f311f4fed (patch) | |
tree | e4ac8f5e2a74fc63dd811aac9e349ac890670134 /arch/blackfin/mach-bf537/boards/cm_bf537.c | |
parent | 19d6d7d53c8ff809182a1f092d2c6918146414e9 (diff) |
[Blackfin] arch: Functional power management support: Add CPU and platform voltage scaling support
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch/blackfin/mach-bf537/boards/cm_bf537.c')
-rw-r--r-- | arch/blackfin/mach-bf537/boards/cm_bf537.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/blackfin/mach-bf537/boards/cm_bf537.c b/arch/blackfin/mach-bf537/boards/cm_bf537.c index d8a23cd9b9ed..706e1a574f09 100644 --- a/arch/blackfin/mach-bf537/boards/cm_bf537.c +++ b/arch/blackfin/mach-bf537/boards/cm_bf537.c | |||
@@ -41,6 +41,7 @@ | |||
41 | #include <asm/dma.h> | 41 | #include <asm/dma.h> |
42 | #include <asm/bfin5xx_spi.h> | 42 | #include <asm/bfin5xx_spi.h> |
43 | #include <asm/portmux.h> | 43 | #include <asm/portmux.h> |
44 | #include <asm/dpmc.h> | ||
44 | 45 | ||
45 | /* | 46 | /* |
46 | * Name the Board for the /proc/cpuinfo | 47 | * Name the Board for the /proc/cpuinfo |
@@ -428,7 +429,37 @@ static struct platform_device bfin_pata_device = { | |||
428 | }; | 429 | }; |
429 | #endif | 430 | #endif |
430 | 431 | ||
432 | static const unsigned int cclk_vlev_datasheet[] = | ||
433 | { | ||
434 | VRPAIR(VLEV_085, 250000000), | ||
435 | VRPAIR(VLEV_090, 376000000), | ||
436 | VRPAIR(VLEV_095, 426000000), | ||
437 | VRPAIR(VLEV_100, 426000000), | ||
438 | VRPAIR(VLEV_105, 476000000), | ||
439 | VRPAIR(VLEV_110, 476000000), | ||
440 | VRPAIR(VLEV_115, 476000000), | ||
441 | VRPAIR(VLEV_120, 500000000), | ||
442 | VRPAIR(VLEV_125, 533000000), | ||
443 | VRPAIR(VLEV_130, 600000000), | ||
444 | }; | ||
445 | |||
446 | static struct bfin_dpmc_platform_data bfin_dmpc_vreg_data = { | ||
447 | .tuple_tab = cclk_vlev_datasheet, | ||
448 | .tabsize = ARRAY_SIZE(cclk_vlev_datasheet), | ||
449 | .vr_settling_time = 25 /* us */, | ||
450 | }; | ||
451 | |||
452 | static struct platform_device bfin_dpmc = { | ||
453 | .name = "bfin dpmc", | ||
454 | .dev = { | ||
455 | .platform_data = &bfin_dmpc_vreg_data, | ||
456 | }, | ||
457 | }; | ||
458 | |||
431 | static struct platform_device *cm_bf537_devices[] __initdata = { | 459 | static struct platform_device *cm_bf537_devices[] __initdata = { |
460 | |||
461 | &bfin_dpmc, | ||
462 | |||
432 | #if defined(CONFIG_FB_HITACHI_TX09) || defined(CONFIG_FB_HITACHI_TX09_MODULE) | 463 | #if defined(CONFIG_FB_HITACHI_TX09) || defined(CONFIG_FB_HITACHI_TX09_MODULE) |
433 | &hitachi_fb_device, | 464 | &hitachi_fb_device, |
434 | #endif | 465 | #endif |