opp4xxx_data.c 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. // SPDX-License-Identifier: GPL-2.0-only
  2. /*
  3. * OMAP4 OPP table definitions.
  4. *
  5. * Copyright (C) 2010-2012 Texas Instruments Incorporated - https://www.ti.com/
  6. * Nishanth Menon
  7. * Kevin Hilman
  8. * Thara Gopinath
  9. * Copyright (C) 2010-2011 Nokia Corporation.
  10. * Eduardo Valentin
  11. * Paul Walmsley
  12. */
  13. #include <linux/module.h>
  14. #include "soc.h"
  15. #include "control.h"
  16. #include "omap_opp_data.h"
  17. #include "pm.h"
  18. /*
  19. * Structures containing OMAP4430 voltage supported and various
  20. * voltage dependent data for each VDD.
  21. */
  22. #define OMAP4430_VDD_MPU_OPP50_UV 1025000
  23. #define OMAP4430_VDD_MPU_OPP100_UV 1200000
  24. #define OMAP4430_VDD_MPU_OPPTURBO_UV 1325000
  25. #define OMAP4430_VDD_MPU_OPPNITRO_UV 1388000
  26. #define OMAP4430_VDD_MPU_OPPNITROSB_UV 1398000
  27. struct omap_volt_data omap443x_vdd_mpu_volt_data[] = {
  28. VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPP50_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP50, 0xf4, 0x0c),
  29. VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPP100_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP100, 0xf9, 0x16),
  30. VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO, 0xfa, 0x23),
  31. VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO, 0xfa, 0x27),
  32. VOLT_DATA_DEFINE(OMAP4430_VDD_MPU_OPPNITROSB_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITROSB, 0xfa, 0x27),
  33. VOLT_DATA_DEFINE(0, 0, 0, 0),
  34. };
  35. #define OMAP4430_VDD_IVA_OPP50_UV 950000
  36. #define OMAP4430_VDD_IVA_OPP100_UV 1114000
  37. #define OMAP4430_VDD_IVA_OPPTURBO_UV 1291000
  38. struct omap_volt_data omap443x_vdd_iva_volt_data[] = {
  39. VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPP50_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP50, 0xf4, 0x0c),
  40. VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPP100_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP100, 0xf9, 0x16),
  41. VOLT_DATA_DEFINE(OMAP4430_VDD_IVA_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO, 0xfa, 0x23),
  42. VOLT_DATA_DEFINE(0, 0, 0, 0),
  43. };
  44. #define OMAP4430_VDD_CORE_OPP50_UV 962000
  45. #define OMAP4430_VDD_CORE_OPP100_UV 1127000
  46. struct omap_volt_data omap443x_vdd_core_volt_data[] = {
  47. VOLT_DATA_DEFINE(OMAP4430_VDD_CORE_OPP50_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP50, 0xf4, 0x0c),
  48. VOLT_DATA_DEFINE(OMAP4430_VDD_CORE_OPP100_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100, 0xf9, 0x16),
  49. VOLT_DATA_DEFINE(0, 0, 0, 0),
  50. };
  51. #define OMAP4460_VDD_MPU_OPP50_UV 1025000
  52. #define OMAP4460_VDD_MPU_OPP100_UV 1200000
  53. #define OMAP4460_VDD_MPU_OPPTURBO_UV 1313000
  54. #define OMAP4460_VDD_MPU_OPPNITRO_UV 1375000
  55. struct omap_volt_data omap446x_vdd_mpu_volt_data[] = {
  56. VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPP50_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP50, 0xf4, 0x0c),
  57. VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPP100_UV, OMAP44XX_CONTROL_FUSE_MPU_OPP100, 0xf9, 0x16),
  58. VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPTURBO, 0xfa, 0x23),
  59. VOLT_DATA_DEFINE(OMAP4460_VDD_MPU_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_MPU_OPPNITRO, 0xfa, 0x27),
  60. VOLT_DATA_DEFINE(0, 0, 0, 0),
  61. };
  62. #define OMAP4460_VDD_IVA_OPP50_UV 1025000
  63. #define OMAP4460_VDD_IVA_OPP100_UV 1200000
  64. #define OMAP4460_VDD_IVA_OPPTURBO_UV 1313000
  65. #define OMAP4460_VDD_IVA_OPPNITRO_UV 1375000
  66. struct omap_volt_data omap446x_vdd_iva_volt_data[] = {
  67. VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPP50_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP50, 0xf4, 0x0c),
  68. VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPP100_UV, OMAP44XX_CONTROL_FUSE_IVA_OPP100, 0xf9, 0x16),
  69. VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPPTURBO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPTURBO, 0xfa, 0x23),
  70. VOLT_DATA_DEFINE(OMAP4460_VDD_IVA_OPPNITRO_UV, OMAP44XX_CONTROL_FUSE_IVA_OPPNITRO, 0xfa, 0x23),
  71. VOLT_DATA_DEFINE(0, 0, 0, 0),
  72. };
  73. #define OMAP4460_VDD_CORE_OPP50_UV 1025000
  74. #define OMAP4460_VDD_CORE_OPP100_UV 1200000
  75. #define OMAP4460_VDD_CORE_OPP100_OV_UV 1250000
  76. struct omap_volt_data omap446x_vdd_core_volt_data[] = {
  77. VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP50_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP50, 0xf4, 0x0c),
  78. VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP100_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100, 0xf9, 0x16),
  79. VOLT_DATA_DEFINE(OMAP4460_VDD_CORE_OPP100_OV_UV, OMAP44XX_CONTROL_FUSE_CORE_OPP100OV, 0xf9, 0x16),
  80. VOLT_DATA_DEFINE(0, 0, 0, 0),
  81. };