opp4xxx_data.c 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /*
  2. * OMAP4 OPP table definitions.
  3. *
  4. * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/
  5. * Nishanth Menon
  6. * Kevin Hilman
  7. * Thara Gopinath
  8. * Copyright (C) 2010 Nokia Corporation.
  9. * Eduardo Valentin
  10. *
  11. * This program is free software; you can redistribute it and/or modify
  12. * it under the terms of the GNU General Public License version 2 as
  13. * published by the Free Software Foundation.
  14. *
  15. * This program is distributed "as is" WITHOUT ANY WARRANTY of any
  16. * kind, whether express or implied; without even the implied warranty
  17. * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. * GNU General Public License for more details.
  19. */
  20. #include <linux/module.h>
  21. #include <plat/cpu.h>
  22. #include "omap_opp_data.h"
  23. #include "pm.h"
  24. static struct omap_opp_def __initdata omap44xx_opp_def_list[] = {
  25. /* MPU OPP1 - OPP50 */
  26. OPP_INITIALIZER("mpu", true, 300000000, 1100000),
  27. /* MPU OPP2 - OPP100 */
  28. OPP_INITIALIZER("mpu", true, 600000000, 1200000),
  29. /* MPU OPP3 - OPP-Turbo */
  30. OPP_INITIALIZER("mpu", false, 800000000, 1260000),
  31. /* MPU OPP4 - OPP-SB */
  32. OPP_INITIALIZER("mpu", false, 1008000000, 1350000),
  33. /* L3 OPP1 - OPP50 */
  34. OPP_INITIALIZER("l3_main_1", true, 100000000, 930000),
  35. /* L3 OPP2 - OPP100, OPP-Turbo, OPP-SB */
  36. OPP_INITIALIZER("l3_main_1", true, 200000000, 1100000),
  37. /* TODO: add IVA, DSP, aess, fdif, gpu */
  38. };
  39. /**
  40. * omap4_opp_init() - initialize omap4 opp table
  41. */
  42. int __init omap4_opp_init(void)
  43. {
  44. int r = -ENODEV;
  45. if (!cpu_is_omap44xx())
  46. return r;
  47. r = omap_init_opp_table(omap44xx_opp_def_list,
  48. ARRAY_SIZE(omap44xx_opp_def_list));
  49. return r;
  50. }
  51. device_initcall(omap4_opp_init);