msm: rpm-8930: Add RPM enumeration to support PMIC 8917
MSM8930 can support PMIC8917 in leiu of PM8038. Add RPM enumeration to
support the new PMIC and use runtime detection to use the right
enumeration data.
Change-Id: Ibf287a99143ffd52934ce043be65cae0afa136c8
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
(cherry picked from commit 75b8c81615010a78c9efc309aa61afec1552b467)
diff --git a/arch/arm/mach-msm/board-8930.c b/arch/arm/mach-msm/board-8930.c
index 5313fbd..906c050 100644
--- a/arch/arm/mach-msm/board-8930.c
+++ b/arch/arm/mach-msm/board-8930.c
@@ -2489,6 +2489,33 @@
},
};
+static struct msm_rpmrs_platform_data msm_rpmrs_data_pm8917 __initdata = {
+ .levels = &msm_rpmrs_levels[0],
+ .num_levels = ARRAY_SIZE(msm_rpmrs_levels),
+ .vdd_mem_levels = {
+ [MSM_RPMRS_VDD_MEM_RET_LOW] = 750000,
+ [MSM_RPMRS_VDD_MEM_RET_HIGH] = 750000,
+ [MSM_RPMRS_VDD_MEM_ACTIVE] = 1050000,
+ [MSM_RPMRS_VDD_MEM_MAX] = 1150000,
+ },
+ .vdd_dig_levels = {
+ [MSM_RPMRS_VDD_DIG_RET_LOW] = 0,
+ [MSM_RPMRS_VDD_DIG_RET_HIGH] = 0,
+ [MSM_RPMRS_VDD_DIG_ACTIVE] = 1,
+ [MSM_RPMRS_VDD_DIG_MAX] = 3,
+ },
+ .vdd_mask = 0x7FFFFF,
+ .rpmrs_target_id = {
+ [MSM_RPMRS_ID_PXO_CLK] = MSM_RPM_ID_PXO_CLK,
+ [MSM_RPMRS_ID_L2_CACHE_CTL] = MSM_RPM_ID_LAST,
+ [MSM_RPMRS_ID_VDD_DIG_0] = MSM_RPM_ID_VOLTAGE_CORNER,
+ [MSM_RPMRS_ID_VDD_DIG_1] = MSM_RPM_ID_LAST,
+ [MSM_RPMRS_ID_VDD_MEM_0] = MSM_RPM_ID_PM8917_L24_0,
+ [MSM_RPMRS_ID_VDD_MEM_1] = MSM_RPM_ID_PM8917_L24_1,
+ [MSM_RPMRS_ID_RPM_CTL] = MSM_RPM_ID_RPM_CTL,
+ },
+};
+
static struct msm_pm_boot_platform_data msm_pm_boot_pdata __initdata = {
.mode = MSM_PM_BOOT_CONFIG_TZ,
};
@@ -2682,8 +2709,13 @@
platform_device_register(&msm_gpio_device);
msm_tsens_early_init(&msm_tsens_pdata);
msm_thermal_init(&msm_thermal_pdata);
- BUG_ON(msm_rpm_init(&msm8930_rpm_data));
- BUG_ON(msm_rpmrs_levels_init(&msm_rpmrs_data));
+ if (socinfo_get_pmic_model() != PMIC_MODEL_PM8917) {
+ BUG_ON(msm_rpm_init(&msm8930_rpm_data));
+ BUG_ON(msm_rpmrs_levels_init(&msm_rpmrs_data));
+ } else {
+ BUG_ON(msm_rpm_init(&msm8930_rpm_data_pm8917));
+ BUG_ON(msm_rpmrs_levels_init(&msm_rpmrs_data_pm8917));
+ }
regulator_suppress_info_printing();
if (msm_xo_init())
diff --git a/arch/arm/mach-msm/devices-8930.c b/arch/arm/mach-msm/devices-8930.c
index 20205ea..9b740ab 100644
--- a/arch/arm/mach-msm/devices-8930.c
+++ b/arch/arm/mach-msm/devices-8930.c
@@ -227,13 +227,13 @@
MSM_RPM_STATUS_ID_MAP(8930, PM8038_CLK2_1),
MSM_RPM_STATUS_ID_MAP(8930, PM8038_LVS1),
MSM_RPM_STATUS_ID_MAP(8930, PM8038_LVS2),
- MSM_RPM_STATUS_ID_MAP(8930, NCP_0),
- MSM_RPM_STATUS_ID_MAP(8930, NCP_1),
- MSM_RPM_STATUS_ID_MAP(8930, CXO_BUFFERS),
- MSM_RPM_STATUS_ID_MAP(8930, USB_OTG_SWITCH),
- MSM_RPM_STATUS_ID_MAP(8930, HDMI_SWITCH),
- MSM_RPM_STATUS_ID_MAP(8930, QDSS_CLK),
- MSM_RPM_STATUS_ID_MAP(8930, VOLTAGE_CORNER),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_NCP_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_NCP_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_CXO_BUFFERS),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_USB_OTG_SWITCH),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_HDMI_SWITCH),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_QDSS_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8038_VOLTAGE_CORNER),
},
.target_ctrl_id = {
MSM_RPM_CTRL_MAP(8930, VERSION_MAJOR),
@@ -250,6 +250,259 @@
.ver = {3, 0, 0},
};
+struct msm_rpm_platform_data msm8930_rpm_data_pm8917 __initdata = {
+ .reg_base_addrs = {
+ [MSM_RPM_PAGE_STATUS] = MSM_RPM_BASE,
+ [MSM_RPM_PAGE_CTRL] = MSM_RPM_BASE + 0x400,
+ [MSM_RPM_PAGE_REQ] = MSM_RPM_BASE + 0x600,
+ [MSM_RPM_PAGE_ACK] = MSM_RPM_BASE + 0xa00,
+ },
+ .irq_ack = RPM_APCC_CPU0_GP_HIGH_IRQ,
+ .irq_err = RPM_APCC_CPU0_GP_LOW_IRQ,
+ .irq_wakeup = RPM_APCC_CPU0_WAKE_UP_IRQ,
+ .ipc_rpm_reg = MSM_APCS_GCC_BASE + 0x008,
+ .ipc_rpm_val = 4,
+ .target_id = {
+ MSM_RPM_MAP(8930, NOTIFICATION_CONFIGURED_0, NOTIFICATION, 4),
+ MSM_RPM_MAP(8930, NOTIFICATION_REGISTERED_0, NOTIFICATION, 4),
+ MSM_RPM_MAP(8930, INVALIDATE_0, INVALIDATE, 8),
+ MSM_RPM_MAP(8960, TRIGGER_TIMED_TO, TRIGGER_TIMED, 1),
+ MSM_RPM_MAP(8960, TRIGGER_TIMED_SCLK_COUNT, TRIGGER_TIMED, 1),
+ MSM_RPM_MAP(8930, RPM_CTL, RPM_CTL, 1),
+ MSM_RPM_MAP(8930, CXO_CLK, CXO_CLK, 1),
+ MSM_RPM_MAP(8930, PXO_CLK, PXO_CLK, 1),
+ MSM_RPM_MAP(8930, APPS_FABRIC_CLK, APPS_FABRIC_CLK, 1),
+ MSM_RPM_MAP(8930, SYSTEM_FABRIC_CLK, SYSTEM_FABRIC_CLK, 1),
+ MSM_RPM_MAP(8930, MM_FABRIC_CLK, MM_FABRIC_CLK, 1),
+ MSM_RPM_MAP(8930, DAYTONA_FABRIC_CLK, DAYTONA_FABRIC_CLK, 1),
+ MSM_RPM_MAP(8930, SFPB_CLK, SFPB_CLK, 1),
+ MSM_RPM_MAP(8930, CFPB_CLK, CFPB_CLK, 1),
+ MSM_RPM_MAP(8930, MMFPB_CLK, MMFPB_CLK, 1),
+ MSM_RPM_MAP(8930, EBI1_CLK, EBI1_CLK, 1),
+ MSM_RPM_MAP(8930, APPS_FABRIC_CFG_HALT_0,
+ APPS_FABRIC_CFG_HALT, 2),
+ MSM_RPM_MAP(8930, APPS_FABRIC_CFG_CLKMOD_0,
+ APPS_FABRIC_CFG_CLKMOD, 3),
+ MSM_RPM_MAP(8930, APPS_FABRIC_CFG_IOCTL,
+ APPS_FABRIC_CFG_IOCTL, 1),
+ MSM_RPM_MAP(8930, APPS_FABRIC_ARB_0, APPS_FABRIC_ARB, 6),
+ MSM_RPM_MAP(8930, SYS_FABRIC_CFG_HALT_0,
+ SYS_FABRIC_CFG_HALT, 2),
+ MSM_RPM_MAP(8930, SYS_FABRIC_CFG_CLKMOD_0,
+ SYS_FABRIC_CFG_CLKMOD, 3),
+ MSM_RPM_MAP(8930, SYS_FABRIC_CFG_IOCTL,
+ SYS_FABRIC_CFG_IOCTL, 1),
+ MSM_RPM_MAP(8930, SYSTEM_FABRIC_ARB_0,
+ SYSTEM_FABRIC_ARB, 20),
+ MSM_RPM_MAP(8930, MMSS_FABRIC_CFG_HALT_0,
+ MMSS_FABRIC_CFG_HALT, 2),
+ MSM_RPM_MAP(8930, MMSS_FABRIC_CFG_CLKMOD_0,
+ MMSS_FABRIC_CFG_CLKMOD, 3),
+ MSM_RPM_MAP(8930, MMSS_FABRIC_CFG_IOCTL,
+ MMSS_FABRIC_CFG_IOCTL, 1),
+ MSM_RPM_MAP(8930, MM_FABRIC_ARB_0, MM_FABRIC_ARB, 11),
+ MSM_RPM_MAP(8930, PM8917_S1_0, PM8917_S1, 2),
+ MSM_RPM_MAP(8930, PM8917_S2_0, PM8917_S2, 2),
+ MSM_RPM_MAP(8930, PM8917_S3_0, PM8917_S3, 2),
+ MSM_RPM_MAP(8930, PM8917_S4_0, PM8917_S4, 2),
+ MSM_RPM_MAP(8930, PM8917_S5_0, PM8917_S5, 2),
+ MSM_RPM_MAP(8930, PM8917_S6_0, PM8917_S6, 2),
+ MSM_RPM_MAP(8930, PM8917_S7_0, PM8917_S7, 2),
+ MSM_RPM_MAP(8930, PM8917_S8_0, PM8917_S8, 2),
+ MSM_RPM_MAP(8930, PM8917_L1_0, PM8917_L1, 2),
+ MSM_RPM_MAP(8930, PM8917_L2_0, PM8917_L2, 2),
+ MSM_RPM_MAP(8930, PM8917_L3_0, PM8917_L3, 2),
+ MSM_RPM_MAP(8930, PM8917_L4_0, PM8917_L4, 2),
+ MSM_RPM_MAP(8930, PM8917_L5_0, PM8917_L5, 2),
+ MSM_RPM_MAP(8930, PM8917_L6_0, PM8917_L6, 2),
+ MSM_RPM_MAP(8930, PM8917_L7_0, PM8917_L7, 2),
+ MSM_RPM_MAP(8930, PM8917_L8_0, PM8917_L8, 2),
+ MSM_RPM_MAP(8930, PM8917_L9_0, PM8917_L9, 2),
+ MSM_RPM_MAP(8930, PM8917_L10_0, PM8917_L10, 2),
+ MSM_RPM_MAP(8930, PM8917_L11_0, PM8917_L11, 2),
+ MSM_RPM_MAP(8930, PM8917_L12_0, PM8917_L12, 2),
+ MSM_RPM_MAP(8930, PM8917_L14_0, PM8917_L14, 2),
+ MSM_RPM_MAP(8930, PM8917_L15_0, PM8917_L15, 2),
+ MSM_RPM_MAP(8930, PM8917_L16_0, PM8917_L16, 2),
+ MSM_RPM_MAP(8930, PM8917_L17_0, PM8917_L17, 2),
+ MSM_RPM_MAP(8930, PM8917_L18_0, PM8917_L18, 2),
+ MSM_RPM_MAP(8930, PM8917_L21_0, PM8917_L21, 2),
+ MSM_RPM_MAP(8930, PM8917_L22_0, PM8917_L22, 2),
+ MSM_RPM_MAP(8930, PM8917_L23_0, PM8917_L23, 2),
+ MSM_RPM_MAP(8930, PM8917_L24_0, PM8917_L24, 2),
+ MSM_RPM_MAP(8930, PM8917_L25_0, PM8917_L25, 2),
+ MSM_RPM_MAP(8930, PM8917_L26_0, PM8917_L26, 2),
+ MSM_RPM_MAP(8930, PM8917_L27_0, PM8917_L27, 2),
+ MSM_RPM_MAP(8930, PM8917_L28_0, PM8917_L28, 2),
+ MSM_RPM_MAP(8930, PM8917_L29_0, PM8917_L29, 2),
+ MSM_RPM_MAP(8930, PM8917_L30_0, PM8917_L30, 2),
+ MSM_RPM_MAP(8930, PM8917_L31_0, PM8917_L31, 2),
+ MSM_RPM_MAP(8930, PM8917_L32_0, PM8917_L32, 2),
+ MSM_RPM_MAP(8930, PM8917_L33_0, PM8917_L33, 2),
+ MSM_RPM_MAP(8930, PM8917_L34_0, PM8917_L34, 2),
+ MSM_RPM_MAP(8930, PM8917_L35_0, PM8917_L35, 2),
+ MSM_RPM_MAP(8930, PM8917_L36_0, PM8917_L36, 2),
+ MSM_RPM_MAP(8930, PM8917_CLK1_0, PM8917_CLK1, 2),
+ MSM_RPM_MAP(8930, PM8917_CLK2_0, PM8917_CLK2, 2),
+ MSM_RPM_MAP(8930, PM8917_LVS1, PM8917_LVS1, 1),
+ MSM_RPM_MAP(8930, PM8917_LVS3, PM8917_LVS3, 1),
+ MSM_RPM_MAP(8930, PM8917_LVS4, PM8917_LVS4, 1),
+ MSM_RPM_MAP(8930, PM8917_LVS5, PM8917_LVS5, 1),
+ MSM_RPM_MAP(8930, PM8917_LVS6, PM8917_LVS6, 1),
+ MSM_RPM_MAP(8930, PM8917_LVS7, PM8917_LVS7, 1),
+ MSM_RPM_MAP(8930, NCP_0, NCP, 2),
+ MSM_RPM_MAP(8930, CXO_BUFFERS, CXO_BUFFERS, 1),
+ MSM_RPM_MAP(8930, USB_OTG_SWITCH, USB_OTG_SWITCH, 1),
+ MSM_RPM_MAP(8930, HDMI_SWITCH, HDMI_SWITCH, 1),
+ MSM_RPM_MAP(8930, QDSS_CLK, QDSS_CLK, 1),
+ MSM_RPM_MAP(8930, VOLTAGE_CORNER, VOLTAGE_CORNER, 1),
+ },
+ .target_status = {
+ MSM_RPM_STATUS_ID_MAP(8930, VERSION_MAJOR),
+ MSM_RPM_STATUS_ID_MAP(8930, VERSION_MINOR),
+ MSM_RPM_STATUS_ID_MAP(8930, VERSION_BUILD),
+ MSM_RPM_STATUS_ID_MAP(8930, SUPPORTED_RESOURCES_0),
+ MSM_RPM_STATUS_ID_MAP(8930, SUPPORTED_RESOURCES_1),
+ MSM_RPM_STATUS_ID_MAP(8930, SUPPORTED_RESOURCES_2),
+ MSM_RPM_STATUS_ID_MAP(8930, RESERVED_SUPPORTED_RESOURCES_0),
+ MSM_RPM_STATUS_ID_MAP(8930, SEQUENCE),
+ MSM_RPM_STATUS_ID_MAP(8930, RPM_CTL),
+ MSM_RPM_STATUS_ID_MAP(8930, CXO_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, PXO_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, APPS_FABRIC_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, SYSTEM_FABRIC_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, MM_FABRIC_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, DAYTONA_FABRIC_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, SFPB_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, CFPB_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, MMFPB_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, EBI1_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, APPS_FABRIC_CFG_HALT),
+ MSM_RPM_STATUS_ID_MAP(8930, APPS_FABRIC_CFG_CLKMOD),
+ MSM_RPM_STATUS_ID_MAP(8930, APPS_FABRIC_CFG_IOCTL),
+ MSM_RPM_STATUS_ID_MAP(8930, APPS_FABRIC_ARB),
+ MSM_RPM_STATUS_ID_MAP(8930, SYS_FABRIC_CFG_HALT),
+ MSM_RPM_STATUS_ID_MAP(8930, SYS_FABRIC_CFG_CLKMOD),
+ MSM_RPM_STATUS_ID_MAP(8930, SYS_FABRIC_CFG_IOCTL),
+ MSM_RPM_STATUS_ID_MAP(8930, SYSTEM_FABRIC_ARB),
+ MSM_RPM_STATUS_ID_MAP(8930, MMSS_FABRIC_CFG_HALT),
+ MSM_RPM_STATUS_ID_MAP(8930, MMSS_FABRIC_CFG_CLKMOD),
+ MSM_RPM_STATUS_ID_MAP(8930, MMSS_FABRIC_CFG_IOCTL),
+ MSM_RPM_STATUS_ID_MAP(8930, MM_FABRIC_ARB),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S1_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S1_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S2_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S2_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S3_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S3_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S4_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S4_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S5_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S5_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S6_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S6_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S7_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S7_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S8_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_S8_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L1_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L1_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L2_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L2_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L3_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L3_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L4_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L4_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L5_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L5_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L6_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L6_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L7_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L7_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L8_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L8_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L9_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L9_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L10_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L10_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L11_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L11_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L12_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L12_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L14_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L14_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L15_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L15_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L16_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L16_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L17_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L17_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L18_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L18_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L21_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L21_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L22_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L22_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L23_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L23_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L24_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L24_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L25_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L25_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L26_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L26_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L27_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L27_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L28_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L28_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L29_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L29_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L30_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L30_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L31_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L31_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L32_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L32_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L33_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L33_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L34_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L34_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L35_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L35_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L36_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_L36_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_CLK1_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_CLK1_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_CLK2_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_CLK2_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS3),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS4),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS5),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS6),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_LVS7),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_NCP_0),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_NCP_1),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_CXO_BUFFERS),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_USB_OTG_SWITCH),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_HDMI_SWITCH),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_QDSS_CLK),
+ MSM_RPM_STATUS_ID_MAP(8930, PM8917_VOLTAGE_CORNER),
+ },
+ .target_ctrl_id = {
+ MSM_RPM_CTRL_MAP(8930, VERSION_MAJOR),
+ MSM_RPM_CTRL_MAP(8930, VERSION_MINOR),
+ MSM_RPM_CTRL_MAP(8930, VERSION_BUILD),
+ MSM_RPM_CTRL_MAP(8930, REQ_CTX_0),
+ MSM_RPM_CTRL_MAP(8930, REQ_SEL_0),
+ MSM_RPM_CTRL_MAP(8930, ACK_CTX_0),
+ MSM_RPM_CTRL_MAP(8930, ACK_SEL_0),
+ },
+ .sel_invalidate = MSM_RPM_8930_SEL_INVALIDATE,
+ .sel_notification = MSM_RPM_8930_SEL_NOTIFICATION,
+ .sel_last = MSM_RPM_8930_SEL_LAST,
+ .ver = {3, 0, 0},
+};
struct platform_device msm8930_rpm_device = {
.name = "msm_rpm",
.id = -1,
diff --git a/arch/arm/mach-msm/include/mach/rpm-8930.h b/arch/arm/mach-msm/include/mach/rpm-8930.h
index 6fd9cf4..4ac9192 100644
--- a/arch/arm/mach-msm/include/mach/rpm-8930.h
+++ b/arch/arm/mach-msm/include/mach/rpm-8930.h
@@ -59,6 +59,8 @@
MSM_RPM_8930_SEL_MMSS_FABRIC_CFG_CLKMOD = 27,
MSM_RPM_8930_SEL_MMSS_FABRIC_CFG_IOCTL = 28,
MSM_RPM_8930_SEL_MM_FABRIC_ARB = 29,
+
+ /* PMIC 8038 */
MSM_RPM_8930_SEL_PM8038_S1 = 30,
MSM_RPM_8930_SEL_PM8038_S2 = 31,
MSM_RPM_8930_SEL_PM8038_S3 = 32,
@@ -96,12 +98,65 @@
MSM_RPM_8930_SEL_PM8038_CLK2 = 64,
MSM_RPM_8930_SEL_PM8038_LVS1 = 65,
MSM_RPM_8930_SEL_PM8038_LVS2 = 66,
+
+ /* PMIC 8917 */
+ MSM_RPM_8930_SEL_PM8917_S1 = 30,
+ MSM_RPM_8930_SEL_PM8917_S2 = 31,
+ MSM_RPM_8930_SEL_PM8917_S3 = 32,
+ MSM_RPM_8930_SEL_PM8917_S4 = 33,
+ MSM_RPM_8930_SEL_PM8917_S5 = 34,
+ MSM_RPM_8930_SEL_PM8917_S6 = 35,
+ MSM_RPM_8930_SEL_PM8917_S7 = 36,
+ MSM_RPM_8930_SEL_PM8917_S8 = 37,
+ MSM_RPM_8930_SEL_PM8917_L1 = 38,
+ MSM_RPM_8930_SEL_PM8917_L2 = 39,
+ MSM_RPM_8930_SEL_PM8917_L3 = 40,
+ MSM_RPM_8930_SEL_PM8917_L4 = 41,
+ MSM_RPM_8930_SEL_PM8917_L5 = 42,
+ MSM_RPM_8930_SEL_PM8917_L6 = 43,
+ MSM_RPM_8930_SEL_PM8917_L7 = 44,
+ MSM_RPM_8930_SEL_PM8917_L8 = 45,
+ MSM_RPM_8930_SEL_PM8917_L9 = 46,
+ MSM_RPM_8930_SEL_PM8917_L10 = 47,
+ MSM_RPM_8930_SEL_PM8917_L11 = 48,
+ MSM_RPM_8930_SEL_PM8917_L12 = 49,
+ MSM_RPM_8930_SEL_PM8917_L14 = 50,
+ MSM_RPM_8930_SEL_PM8917_L15 = 51,
+ MSM_RPM_8930_SEL_PM8917_L16 = 52,
+ MSM_RPM_8930_SEL_PM8917_L17 = 53,
+ MSM_RPM_8930_SEL_PM8917_L18 = 54,
+ MSM_RPM_8930_SEL_PM8917_L21 = 55,
+ MSM_RPM_8930_SEL_PM8917_L22 = 56,
+ MSM_RPM_8930_SEL_PM8917_L23 = 57,
+ MSM_RPM_8930_SEL_PM8917_L24 = 58,
+ MSM_RPM_8930_SEL_PM8917_L25 = 59,
+ MSM_RPM_8930_SEL_PM8917_L26 = 60,
+ MSM_RPM_8930_SEL_PM8917_L27 = 61,
+ MSM_RPM_8930_SEL_PM8917_L28 = 62,
+ MSM_RPM_8930_SEL_PM8917_L29 = 63,
+ MSM_RPM_8930_SEL_PM8917_L30 = 64,
+ MSM_RPM_8930_SEL_PM8917_L31 = 65,
+ MSM_RPM_8930_SEL_PM8917_L32 = 66,
+ MSM_RPM_8930_SEL_PM8917_L33 = 67,
+ MSM_RPM_8930_SEL_PM8917_L34 = 68,
+ MSM_RPM_8930_SEL_PM8917_L35 = 69,
+ MSM_RPM_8930_SEL_PM8917_L36 = 70,
+ MSM_RPM_8930_SEL_PM8917_CLK1 = 71,
+ MSM_RPM_8930_SEL_PM8917_CLK2 = 72,
+ MSM_RPM_8930_SEL_PM8917_LVS1 = 73,
+ MSM_RPM_8930_SEL_PM8917_LVS3 = 74,
+ MSM_RPM_8930_SEL_PM8917_LVS4 = 75,
+ MSM_RPM_8930_SEL_PM8917_LVS5 = 76,
+ MSM_RPM_8930_SEL_PM8917_LVS6 = 77,
+ MSM_RPM_8930_SEL_PM8917_LVS7 = 78,
+
MSM_RPM_8930_SEL_NCP = 80,
MSM_RPM_8930_SEL_CXO_BUFFERS = 81,
MSM_RPM_8930_SEL_USB_OTG_SWITCH = 82,
MSM_RPM_8930_SEL_HDMI_SWITCH = 83,
MSM_RPM_8930_SEL_DDR_DMM = 84,
MSM_RPM_8930_SEL_VOLTAGE_CORNER = 87,
+
MSM_RPM_8930_SEL_LAST = MSM_RPM_8930_SEL_VOLTAGE_CORNER,
};
@@ -163,6 +218,7 @@
MSM_RPM_8930_ID_MM_FABRIC_ARB_10 =
MSM_RPM_8930_ID_MM_FABRIC_ARB_0 + 10,
+ /* PMIC 8038 */
MSM_RPM_8930_ID_PM8038_S1_0 = 90,
MSM_RPM_8930_ID_PM8038_S1_1 = 91,
MSM_RPM_8930_ID_PM8038_S2_0 = 92,
@@ -235,13 +291,109 @@
MSM_RPM_8930_ID_PM8038_CLK2_1 = 159,
MSM_RPM_8930_ID_PM8038_LVS1 = 160,
MSM_RPM_8930_ID_PM8038_LVS2 = 161,
- MSM_RPM_8930_ID_NCP_0 = 162,
- MSM_RPM_8930_ID_NCP_1 = 163,
- MSM_RPM_8930_ID_CXO_BUFFERS = 164,
- MSM_RPM_8930_ID_USB_OTG_SWITCH = 165,
- MSM_RPM_8930_ID_HDMI_SWITCH = 166,
- MSM_RPM_8930_ID_QDSS_CLK = 167,
- MSM_RPM_8930_ID_VOLTAGE_CORNER = 168,
+
+ /* PMIC 8917 */
+ MSM_RPM_8930_ID_PM8917_S1_0 = 90,
+ MSM_RPM_8930_ID_PM8917_S1_1 = 91,
+ MSM_RPM_8930_ID_PM8917_S2_0 = 92,
+ MSM_RPM_8930_ID_PM8917_S2_1 = 93,
+ MSM_RPM_8930_ID_PM8917_S3_0 = 94,
+ MSM_RPM_8930_ID_PM8917_S3_1 = 95,
+ MSM_RPM_8930_ID_PM8917_S4_0 = 96,
+ MSM_RPM_8930_ID_PM8917_S4_1 = 97,
+ MSM_RPM_8930_ID_PM8917_S5_0 = 98,
+ MSM_RPM_8930_ID_PM8917_S5_1 = 99,
+ MSM_RPM_8930_ID_PM8917_S6_0 = 100,
+ MSM_RPM_8930_ID_PM8917_S6_1 = 101,
+ MSM_RPM_8930_ID_PM8917_S7_0 = 102,
+ MSM_RPM_8930_ID_PM8917_S7_1 = 103,
+ MSM_RPM_8930_ID_PM8917_S8_0 = 104,
+ MSM_RPM_8930_ID_PM8917_S8_1 = 105,
+ MSM_RPM_8930_ID_PM8917_L1_0 = 106,
+ MSM_RPM_8930_ID_PM8917_L1_1 = 107,
+ MSM_RPM_8930_ID_PM8917_L2_0 = 108,
+ MSM_RPM_8930_ID_PM8917_L2_1 = 109,
+ MSM_RPM_8930_ID_PM8917_L3_0 = 110,
+ MSM_RPM_8930_ID_PM8917_L3_1 = 111,
+ MSM_RPM_8930_ID_PM8917_L4_0 = 112,
+ MSM_RPM_8930_ID_PM8917_L4_1 = 113,
+ MSM_RPM_8930_ID_PM8917_L5_0 = 114,
+ MSM_RPM_8930_ID_PM8917_L5_1 = 115,
+ MSM_RPM_8930_ID_PM8917_L6_0 = 116,
+ MSM_RPM_8930_ID_PM8917_L6_1 = 117,
+ MSM_RPM_8930_ID_PM8917_L7_0 = 118,
+ MSM_RPM_8930_ID_PM8917_L7_1 = 119,
+ MSM_RPM_8930_ID_PM8917_L8_0 = 120,
+ MSM_RPM_8930_ID_PM8917_L8_1 = 121,
+ MSM_RPM_8930_ID_PM8917_L9_0 = 122,
+ MSM_RPM_8930_ID_PM8917_L9_1 = 123,
+ MSM_RPM_8930_ID_PM8917_L10_0 = 124,
+ MSM_RPM_8930_ID_PM8917_L10_1 = 125,
+ MSM_RPM_8930_ID_PM8917_L11_0 = 126,
+ MSM_RPM_8930_ID_PM8917_L11_1 = 127,
+ MSM_RPM_8930_ID_PM8917_L12_0 = 128,
+ MSM_RPM_8930_ID_PM8917_L12_1 = 129,
+ MSM_RPM_8930_ID_PM8917_L14_0 = 130,
+ MSM_RPM_8930_ID_PM8917_L14_1 = 131,
+ MSM_RPM_8930_ID_PM8917_L15_0 = 132,
+ MSM_RPM_8930_ID_PM8917_L15_1 = 133,
+ MSM_RPM_8930_ID_PM8917_L16_0 = 134,
+ MSM_RPM_8930_ID_PM8917_L16_1 = 135,
+ MSM_RPM_8930_ID_PM8917_L17_0 = 136,
+ MSM_RPM_8930_ID_PM8917_L17_1 = 137,
+ MSM_RPM_8930_ID_PM8917_L18_0 = 138,
+ MSM_RPM_8930_ID_PM8917_L18_1 = 139,
+ MSM_RPM_8930_ID_PM8917_L21_0 = 140,
+ MSM_RPM_8930_ID_PM8917_L21_1 = 141,
+ MSM_RPM_8930_ID_PM8917_L22_0 = 142,
+ MSM_RPM_8930_ID_PM8917_L22_1 = 143,
+ MSM_RPM_8930_ID_PM8917_L23_0 = 144,
+ MSM_RPM_8930_ID_PM8917_L23_1 = 145,
+ MSM_RPM_8930_ID_PM8917_L24_0 = 146,
+ MSM_RPM_8930_ID_PM8917_L24_1 = 147,
+ MSM_RPM_8930_ID_PM8917_L25_0 = 148,
+ MSM_RPM_8930_ID_PM8917_L25_1 = 149,
+ MSM_RPM_8930_ID_PM8917_L26_0 = 150,
+ MSM_RPM_8930_ID_PM8917_L26_1 = 151,
+ MSM_RPM_8930_ID_PM8917_L27_0 = 152,
+ MSM_RPM_8930_ID_PM8917_L27_1 = 153,
+ MSM_RPM_8930_ID_PM8917_L28_0 = 154,
+ MSM_RPM_8930_ID_PM8917_L28_1 = 155,
+ MSM_RPM_8930_ID_PM8917_L29_0 = 156,
+ MSM_RPM_8930_ID_PM8917_L29_1 = 157,
+ MSM_RPM_8930_ID_PM8917_L30_0 = 158,
+ MSM_RPM_8930_ID_PM8917_L30_1 = 159,
+ MSM_RPM_8930_ID_PM8917_L31_0 = 160,
+ MSM_RPM_8930_ID_PM8917_L31_1 = 161,
+ MSM_RPM_8930_ID_PM8917_L32_0 = 162,
+ MSM_RPM_8930_ID_PM8917_L32_1 = 163,
+ MSM_RPM_8930_ID_PM8917_L33_0 = 164,
+ MSM_RPM_8930_ID_PM8917_L33_1 = 165,
+ MSM_RPM_8930_ID_PM8917_L34_0 = 166,
+ MSM_RPM_8930_ID_PM8917_L34_1 = 167,
+ MSM_RPM_8930_ID_PM8917_L35_0 = 168,
+ MSM_RPM_8930_ID_PM8917_L35_1 = 169,
+ MSM_RPM_8930_ID_PM8917_L36_0 = 170,
+ MSM_RPM_8930_ID_PM8917_L36_1 = 171,
+ MSM_RPM_8930_ID_PM8917_CLK1_0 = 172,
+ MSM_RPM_8930_ID_PM8917_CLK1_1 = 173,
+ MSM_RPM_8930_ID_PM8917_CLK2_0 = 174,
+ MSM_RPM_8930_ID_PM8917_CLK2_1 = 175,
+ MSM_RPM_8930_ID_PM8917_LVS1 = 176,
+ MSM_RPM_8930_ID_PM8917_LVS3 = 177,
+ MSM_RPM_8930_ID_PM8917_LVS4 = 178,
+ MSM_RPM_8930_ID_PM8917_LVS5 = 179,
+ MSM_RPM_8930_ID_PM8917_LVS6 = 180,
+ MSM_RPM_8930_ID_PM8917_LVS7 = 181,
+
+ MSM_RPM_8930_ID_NCP_0 = 182,
+ MSM_RPM_8930_ID_NCP_1 = 183,
+ MSM_RPM_8930_ID_CXO_BUFFERS = 184,
+ MSM_RPM_8930_ID_USB_OTG_SWITCH = 185,
+ MSM_RPM_8930_ID_HDMI_SWITCH = 186,
+ MSM_RPM_8930_ID_QDSS_CLK = 187,
+ MSM_RPM_8930_ID_VOLTAGE_CORNER = 188,
+
MSM_RPM_8930_ID_LAST = MSM_RPM_8930_ID_VOLTAGE_CORNER,
};
@@ -278,6 +430,8 @@
MSM_RPM_8930_STATUS_ID_MMSS_FABRIC_CFG_CLKMOD = 28,
MSM_RPM_8930_STATUS_ID_MMSS_FABRIC_CFG_IOCTL = 29,
MSM_RPM_8930_STATUS_ID_MM_FABRIC_ARB = 30,
+
+ /* PMIC 8038 */
MSM_RPM_8930_STATUS_ID_PM8038_S1_0 = 31,
MSM_RPM_8930_STATUS_ID_PM8038_S1_1 = 32,
MSM_RPM_8930_STATUS_ID_PM8038_S2_0 = 33,
@@ -346,14 +500,119 @@
MSM_RPM_8930_STATUS_ID_PM8038_CLK2_1 = 100,
MSM_RPM_8930_STATUS_ID_PM8038_LVS1 = 101,
MSM_RPM_8930_STATUS_ID_PM8038_LVS2 = 102,
- MSM_RPM_8930_STATUS_ID_NCP_0 = 103,
- MSM_RPM_8930_STATUS_ID_NCP_1 = 104,
- MSM_RPM_8930_STATUS_ID_CXO_BUFFERS = 105,
- MSM_RPM_8930_STATUS_ID_USB_OTG_SWITCH = 106,
- MSM_RPM_8930_STATUS_ID_HDMI_SWITCH = 107,
- MSM_RPM_8930_STATUS_ID_QDSS_CLK = 108,
- MSM_RPM_8930_STATUS_ID_VOLTAGE_CORNER = 109,
- MSM_RPM_8930_STATUS_ID_LAST = MSM_RPM_8930_STATUS_ID_VOLTAGE_CORNER,
+ MSM_RPM_8930_STATUS_ID_PM8038_NCP_0 = 103,
+ MSM_RPM_8930_STATUS_ID_PM8038_NCP_1 = 104,
+ MSM_RPM_8930_STATUS_ID_PM8038_CXO_BUFFERS = 105,
+ MSM_RPM_8930_STATUS_ID_PM8038_USB_OTG_SWITCH = 106,
+ MSM_RPM_8930_STATUS_ID_PM8038_HDMI_SWITCH = 107,
+ MSM_RPM_8930_STATUS_ID_PM8038_QDSS_CLK = 108,
+ MSM_RPM_8930_STATUS_ID_PM8038_VOLTAGE_CORNER = 109,
+
+ MSM_RPM_8930_STATUS_ID_PM8038_LAST
+ = MSM_RPM_8930_STATUS_ID_PM8038_VOLTAGE_CORNER,
+
+ /* PMIC 8917 */
+ MSM_RPM_8930_STATUS_ID_PM8917_S1_0 = 31,
+ MSM_RPM_8930_STATUS_ID_PM8917_S1_1 = 32,
+ MSM_RPM_8930_STATUS_ID_PM8917_S2_0 = 33,
+ MSM_RPM_8930_STATUS_ID_PM8917_S2_1 = 34,
+ MSM_RPM_8930_STATUS_ID_PM8917_S3_0 = 35,
+ MSM_RPM_8930_STATUS_ID_PM8917_S3_1 = 36,
+ MSM_RPM_8930_STATUS_ID_PM8917_S4_0 = 37,
+ MSM_RPM_8930_STATUS_ID_PM8917_S4_1 = 38,
+ MSM_RPM_8930_STATUS_ID_PM8917_S5_0 = 39,
+ MSM_RPM_8930_STATUS_ID_PM8917_S5_1 = 40,
+ MSM_RPM_8930_STATUS_ID_PM8917_S6_0 = 41,
+ MSM_RPM_8930_STATUS_ID_PM8917_S6_1 = 42,
+ MSM_RPM_8930_STATUS_ID_PM8917_S7_0 = 43,
+ MSM_RPM_8930_STATUS_ID_PM8917_S7_1 = 44,
+ MSM_RPM_8930_STATUS_ID_PM8917_S8_0 = 45,
+ MSM_RPM_8930_STATUS_ID_PM8917_S8_1 = 46,
+ MSM_RPM_8930_STATUS_ID_PM8917_L1_0 = 47,
+ MSM_RPM_8930_STATUS_ID_PM8917_L1_1 = 48,
+ MSM_RPM_8930_STATUS_ID_PM8917_L2_0 = 49,
+ MSM_RPM_8930_STATUS_ID_PM8917_L2_1 = 50,
+ MSM_RPM_8930_STATUS_ID_PM8917_L3_0 = 51,
+ MSM_RPM_8930_STATUS_ID_PM8917_L3_1 = 52,
+ MSM_RPM_8930_STATUS_ID_PM8917_L4_0 = 53,
+ MSM_RPM_8930_STATUS_ID_PM8917_L4_1 = 54,
+ MSM_RPM_8930_STATUS_ID_PM8917_L5_0 = 55,
+ MSM_RPM_8930_STATUS_ID_PM8917_L5_1 = 56,
+ MSM_RPM_8930_STATUS_ID_PM8917_L6_0 = 57,
+ MSM_RPM_8930_STATUS_ID_PM8917_L6_1 = 58,
+ MSM_RPM_8930_STATUS_ID_PM8917_L7_0 = 59,
+ MSM_RPM_8930_STATUS_ID_PM8917_L7_1 = 60,
+ MSM_RPM_8930_STATUS_ID_PM8917_L8_0 = 61,
+ MSM_RPM_8930_STATUS_ID_PM8917_L8_1 = 62,
+ MSM_RPM_8930_STATUS_ID_PM8917_L9_0 = 63,
+ MSM_RPM_8930_STATUS_ID_PM8917_L9_1 = 64,
+ MSM_RPM_8930_STATUS_ID_PM8917_L10_0 = 65,
+ MSM_RPM_8930_STATUS_ID_PM8917_L10_1 = 66,
+ MSM_RPM_8930_STATUS_ID_PM8917_L11_0 = 67,
+ MSM_RPM_8930_STATUS_ID_PM8917_L11_1 = 68,
+ MSM_RPM_8930_STATUS_ID_PM8917_L12_0 = 69,
+ MSM_RPM_8930_STATUS_ID_PM8917_L12_1 = 70,
+ MSM_RPM_8930_STATUS_ID_PM8917_L14_0 = 71,
+ MSM_RPM_8930_STATUS_ID_PM8917_L14_1 = 72,
+ MSM_RPM_8930_STATUS_ID_PM8917_L15_0 = 73,
+ MSM_RPM_8930_STATUS_ID_PM8917_L15_1 = 74,
+ MSM_RPM_8930_STATUS_ID_PM8917_L16_0 = 75,
+ MSM_RPM_8930_STATUS_ID_PM8917_L16_1 = 76,
+ MSM_RPM_8930_STATUS_ID_PM8917_L17_0 = 77,
+ MSM_RPM_8930_STATUS_ID_PM8917_L17_1 = 78,
+ MSM_RPM_8930_STATUS_ID_PM8917_L18_0 = 79,
+ MSM_RPM_8930_STATUS_ID_PM8917_L18_1 = 80,
+ MSM_RPM_8930_STATUS_ID_PM8917_L21_0 = 81,
+ MSM_RPM_8930_STATUS_ID_PM8917_L21_1 = 82,
+ MSM_RPM_8930_STATUS_ID_PM8917_L22_0 = 83,
+ MSM_RPM_8930_STATUS_ID_PM8917_L22_1 = 84,
+ MSM_RPM_8930_STATUS_ID_PM8917_L23_0 = 85,
+ MSM_RPM_8930_STATUS_ID_PM8917_L23_1 = 86,
+ MSM_RPM_8930_STATUS_ID_PM8917_L24_0 = 87,
+ MSM_RPM_8930_STATUS_ID_PM8917_L24_1 = 88,
+ MSM_RPM_8930_STATUS_ID_PM8917_L25_0 = 89,
+ MSM_RPM_8930_STATUS_ID_PM8917_L25_1 = 90,
+ MSM_RPM_8930_STATUS_ID_PM8917_L26_0 = 91,
+ MSM_RPM_8930_STATUS_ID_PM8917_L26_1 = 92,
+ MSM_RPM_8930_STATUS_ID_PM8917_L27_0 = 93,
+ MSM_RPM_8930_STATUS_ID_PM8917_L27_1 = 94,
+ MSM_RPM_8930_STATUS_ID_PM8917_L28_0 = 95,
+ MSM_RPM_8930_STATUS_ID_PM8917_L28_1 = 96,
+ MSM_RPM_8930_STATUS_ID_PM8917_L29_0 = 97,
+ MSM_RPM_8930_STATUS_ID_PM8917_L29_1 = 98,
+ MSM_RPM_8930_STATUS_ID_PM8917_L30_0 = 99,
+ MSM_RPM_8930_STATUS_ID_PM8917_L30_1 = 100,
+ MSM_RPM_8930_STATUS_ID_PM8917_L31_0 = 101,
+ MSM_RPM_8930_STATUS_ID_PM8917_L31_1 = 102,
+ MSM_RPM_8930_STATUS_ID_PM8917_L32_0 = 103,
+ MSM_RPM_8930_STATUS_ID_PM8917_L32_1 = 104,
+ MSM_RPM_8930_STATUS_ID_PM8917_L33_0 = 105,
+ MSM_RPM_8930_STATUS_ID_PM8917_L33_1 = 106,
+ MSM_RPM_8930_STATUS_ID_PM8917_L34_0 = 107,
+ MSM_RPM_8930_STATUS_ID_PM8917_L34_1 = 108,
+ MSM_RPM_8930_STATUS_ID_PM8917_L35_0 = 109,
+ MSM_RPM_8930_STATUS_ID_PM8917_L35_1 = 110,
+ MSM_RPM_8930_STATUS_ID_PM8917_L36_0 = 111,
+ MSM_RPM_8930_STATUS_ID_PM8917_L36_1 = 112,
+ MSM_RPM_8930_STATUS_ID_PM8917_CLK1_0 = 113,
+ MSM_RPM_8930_STATUS_ID_PM8917_CLK1_1 = 114,
+ MSM_RPM_8930_STATUS_ID_PM8917_CLK2_0 = 115,
+ MSM_RPM_8930_STATUS_ID_PM8917_CLK2_1 = 116,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS1 = 117,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS3 = 118,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS4 = 119,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS5 = 120,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS6 = 121,
+ MSM_RPM_8930_STATUS_ID_PM8917_LVS7 = 122,
+ MSM_RPM_8930_STATUS_ID_PM8917_NCP_0 = 123,
+ MSM_RPM_8930_STATUS_ID_PM8917_NCP_1 = 124,
+ MSM_RPM_8930_STATUS_ID_PM8917_CXO_BUFFERS = 125,
+ MSM_RPM_8930_STATUS_ID_PM8917_USB_OTG_SWITCH = 126,
+ MSM_RPM_8930_STATUS_ID_PM8917_HDMI_SWITCH = 127,
+ MSM_RPM_8930_STATUS_ID_PM8917_QDSS_CLK = 128,
+ MSM_RPM_8930_STATUS_ID_PM8917_VOLTAGE_CORNER = 129,
+ MSM_RPM_8930_STATUS_ID_PM8917_PM8917_LAST
+ = MSM_RPM_8930_STATUS_ID_PM8917_VOLTAGE_CORNER,
};
#endif /* __ARCH_ARM_MACH_MSM_RPM_8930_H */
diff --git a/arch/arm/mach-msm/include/mach/rpm.h b/arch/arm/mach-msm/include/mach/rpm.h
index f6b9a6e..4ee1997 100644
--- a/arch/arm/mach-msm/include/mach/rpm.h
+++ b/arch/arm/mach-msm/include/mach/rpm.h
@@ -451,6 +451,100 @@
MSM_RPM_ID_PM8038_CLK2_1,
MSM_RPM_ID_PM8038_LVS1,
MSM_RPM_ID_PM8038_LVS2,
+
+ /* PM8917 specific */
+ MSM_RPM_ID_PM8917_S1_0,
+ MSM_RPM_ID_PM8917_S1_1,
+ MSM_RPM_ID_PM8917_S2_0,
+ MSM_RPM_ID_PM8917_S2_1,
+ MSM_RPM_ID_PM8917_S3_0,
+ MSM_RPM_ID_PM8917_S3_1,
+ MSM_RPM_ID_PM8917_S4_0,
+ MSM_RPM_ID_PM8917_S4_1,
+ MSM_RPM_ID_PM8917_S5_0,
+ MSM_RPM_ID_PM8917_S5_1,
+ MSM_RPM_ID_PM8917_S6_0,
+ MSM_RPM_ID_PM8917_S6_1,
+ MSM_RPM_ID_PM8917_S7_0,
+ MSM_RPM_ID_PM8917_S7_1,
+ MSM_RPM_ID_PM8917_S8_0,
+ MSM_RPM_ID_PM8917_S8_1,
+ MSM_RPM_ID_PM8917_L1_0,
+ MSM_RPM_ID_PM8917_L1_1,
+ MSM_RPM_ID_PM8917_L2_0,
+ MSM_RPM_ID_PM8917_L2_1,
+ MSM_RPM_ID_PM8917_L3_0,
+ MSM_RPM_ID_PM8917_L3_1,
+ MSM_RPM_ID_PM8917_L4_0,
+ MSM_RPM_ID_PM8917_L4_1,
+ MSM_RPM_ID_PM8917_L5_0,
+ MSM_RPM_ID_PM8917_L5_1,
+ MSM_RPM_ID_PM8917_L6_0,
+ MSM_RPM_ID_PM8917_L6_1,
+ MSM_RPM_ID_PM8917_L7_0,
+ MSM_RPM_ID_PM8917_L7_1,
+ MSM_RPM_ID_PM8917_L8_0,
+ MSM_RPM_ID_PM8917_L8_1,
+ MSM_RPM_ID_PM8917_L9_0,
+ MSM_RPM_ID_PM8917_L9_1,
+ MSM_RPM_ID_PM8917_L10_0,
+ MSM_RPM_ID_PM8917_L10_1,
+ MSM_RPM_ID_PM8917_L11_0,
+ MSM_RPM_ID_PM8917_L11_1,
+ MSM_RPM_ID_PM8917_L12_0,
+ MSM_RPM_ID_PM8917_L12_1,
+ MSM_RPM_ID_PM8917_L14_0,
+ MSM_RPM_ID_PM8917_L14_1,
+ MSM_RPM_ID_PM8917_L15_0,
+ MSM_RPM_ID_PM8917_L15_1,
+ MSM_RPM_ID_PM8917_L16_0,
+ MSM_RPM_ID_PM8917_L16_1,
+ MSM_RPM_ID_PM8917_L17_0,
+ MSM_RPM_ID_PM8917_L17_1,
+ MSM_RPM_ID_PM8917_L18_0,
+ MSM_RPM_ID_PM8917_L18_1,
+ MSM_RPM_ID_PM8917_L21_0,
+ MSM_RPM_ID_PM8917_L21_1,
+ MSM_RPM_ID_PM8917_L22_0,
+ MSM_RPM_ID_PM8917_L22_1,
+ MSM_RPM_ID_PM8917_L23_0,
+ MSM_RPM_ID_PM8917_L23_1,
+ MSM_RPM_ID_PM8917_L24_0,
+ MSM_RPM_ID_PM8917_L24_1,
+ MSM_RPM_ID_PM8917_L25_0,
+ MSM_RPM_ID_PM8917_L25_1,
+ MSM_RPM_ID_PM8917_L26_0,
+ MSM_RPM_ID_PM8917_L26_1,
+ MSM_RPM_ID_PM8917_L27_0,
+ MSM_RPM_ID_PM8917_L27_1,
+ MSM_RPM_ID_PM8917_L28_0,
+ MSM_RPM_ID_PM8917_L28_1,
+ MSM_RPM_ID_PM8917_L29_0,
+ MSM_RPM_ID_PM8917_L29_1,
+ MSM_RPM_ID_PM8917_L30_0,
+ MSM_RPM_ID_PM8917_L30_1,
+ MSM_RPM_ID_PM8917_L31_0,
+ MSM_RPM_ID_PM8917_L31_1,
+ MSM_RPM_ID_PM8917_L32_0,
+ MSM_RPM_ID_PM8917_L32_1,
+ MSM_RPM_ID_PM8917_L33_0,
+ MSM_RPM_ID_PM8917_L33_1,
+ MSM_RPM_ID_PM8917_L34_0,
+ MSM_RPM_ID_PM8917_L34_1,
+ MSM_RPM_ID_PM8917_L35_0,
+ MSM_RPM_ID_PM8917_L35_1,
+ MSM_RPM_ID_PM8917_L36_0,
+ MSM_RPM_ID_PM8917_L36_1,
+ MSM_RPM_ID_PM8917_CLK1_0,
+ MSM_RPM_ID_PM8917_CLK1_1,
+ MSM_RPM_ID_PM8917_CLK2_0,
+ MSM_RPM_ID_PM8917_CLK2_1,
+ MSM_RPM_ID_PM8917_LVS1,
+ MSM_RPM_ID_PM8917_LVS3,
+ MSM_RPM_ID_PM8917_LVS4,
+ MSM_RPM_ID_PM8917_LVS5,
+ MSM_RPM_ID_PM8917_LVS6,
+ MSM_RPM_ID_PM8917_LVS7,
MSM_RPM_ID_VOLTAGE_CORNER,
/* 8064 specific */
@@ -605,6 +699,29 @@
MSM_RPM_STATUS_ID_EBI1_CH1_RANGE,
MSM_RPM_STATUS_ID_QDSS_CLK,
+ /* 8930 aliases to simplify device mapping */
+ MSM_RPM_STATUS_ID_PM8038_NCP_0 = MSM_RPM_STATUS_ID_NCP_0,
+ MSM_RPM_STATUS_ID_PM8038_NCP_1 = MSM_RPM_STATUS_ID_NCP_1,
+ MSM_RPM_STATUS_ID_PM8038_CXO_BUFFERS
+ = MSM_RPM_STATUS_ID_CXO_BUFFERS,
+ MSM_RPM_STATUS_ID_PM8038_USB_OTG_SWITCH
+ = MSM_RPM_STATUS_ID_USB_OTG_SWITCH,
+ MSM_RPM_STATUS_ID_PM8038_HDMI_SWITCH
+ = MSM_RPM_STATUS_ID_HDMI_SWITCH,
+ MSM_RPM_STATUS_ID_PM8038_QDSS_CLK
+ = MSM_RPM_STATUS_ID_QDSS_CLK,
+
+ MSM_RPM_STATUS_ID_PM8917_NCP_0 = MSM_RPM_STATUS_ID_NCP_0,
+ MSM_RPM_STATUS_ID_PM8917_NCP_1 = MSM_RPM_STATUS_ID_NCP_1,
+ MSM_RPM_STATUS_ID_PM8917_CXO_BUFFERS
+ = MSM_RPM_STATUS_ID_CXO_BUFFERS,
+ MSM_RPM_STATUS_ID_PM8917_USB_OTG_SWITCH
+ = MSM_RPM_STATUS_ID_USB_OTG_SWITCH,
+ MSM_RPM_STATUS_ID_PM8917_HDMI_SWITCH
+ = MSM_RPM_STATUS_ID_HDMI_SWITCH,
+ MSM_RPM_STATUS_ID_PM8917_QDSS_CLK
+ = MSM_RPM_STATUS_ID_QDSS_CLK,
+
/* 8660 Specific */
MSM_RPM_STATUS_ID_PLL_4,
MSM_RPM_STATUS_ID_SMI_CLK,
@@ -817,7 +934,105 @@
MSM_RPM_STATUS_ID_PM8038_CLK2_1,
MSM_RPM_STATUS_ID_PM8038_LVS1,
MSM_RPM_STATUS_ID_PM8038_LVS2,
+
+ /* PMIC 8917 */
+ MSM_RPM_STATUS_ID_PM8917_S1_0,
+ MSM_RPM_STATUS_ID_PM8917_S1_1,
+ MSM_RPM_STATUS_ID_PM8917_S2_0,
+ MSM_RPM_STATUS_ID_PM8917_S2_1,
+ MSM_RPM_STATUS_ID_PM8917_S3_0,
+ MSM_RPM_STATUS_ID_PM8917_S3_1,
+ MSM_RPM_STATUS_ID_PM8917_S4_0,
+ MSM_RPM_STATUS_ID_PM8917_S4_1,
+ MSM_RPM_STATUS_ID_PM8917_S5_0,
+ MSM_RPM_STATUS_ID_PM8917_S5_1,
+ MSM_RPM_STATUS_ID_PM8917_S6_0,
+ MSM_RPM_STATUS_ID_PM8917_S6_1,
+ MSM_RPM_STATUS_ID_PM8917_S7_0,
+ MSM_RPM_STATUS_ID_PM8917_S7_1,
+ MSM_RPM_STATUS_ID_PM8917_S8_0,
+ MSM_RPM_STATUS_ID_PM8917_S8_1,
+ MSM_RPM_STATUS_ID_PM8917_L1_0,
+ MSM_RPM_STATUS_ID_PM8917_L1_1,
+ MSM_RPM_STATUS_ID_PM8917_L2_0,
+ MSM_RPM_STATUS_ID_PM8917_L2_1,
+ MSM_RPM_STATUS_ID_PM8917_L3_0,
+ MSM_RPM_STATUS_ID_PM8917_L3_1,
+ MSM_RPM_STATUS_ID_PM8917_L4_0,
+ MSM_RPM_STATUS_ID_PM8917_L4_1,
+ MSM_RPM_STATUS_ID_PM8917_L5_0,
+ MSM_RPM_STATUS_ID_PM8917_L5_1,
+ MSM_RPM_STATUS_ID_PM8917_L6_0,
+ MSM_RPM_STATUS_ID_PM8917_L6_1,
+ MSM_RPM_STATUS_ID_PM8917_L7_0,
+ MSM_RPM_STATUS_ID_PM8917_L7_1,
+ MSM_RPM_STATUS_ID_PM8917_L8_0,
+ MSM_RPM_STATUS_ID_PM8917_L8_1,
+ MSM_RPM_STATUS_ID_PM8917_L9_0,
+ MSM_RPM_STATUS_ID_PM8917_L9_1,
+ MSM_RPM_STATUS_ID_PM8917_L10_0,
+ MSM_RPM_STATUS_ID_PM8917_L10_1,
+ MSM_RPM_STATUS_ID_PM8917_L11_0,
+ MSM_RPM_STATUS_ID_PM8917_L11_1,
+ MSM_RPM_STATUS_ID_PM8917_L12_0,
+ MSM_RPM_STATUS_ID_PM8917_L12_1,
+ MSM_RPM_STATUS_ID_PM8917_L14_0,
+ MSM_RPM_STATUS_ID_PM8917_L14_1,
+ MSM_RPM_STATUS_ID_PM8917_L15_0,
+ MSM_RPM_STATUS_ID_PM8917_L15_1,
+ MSM_RPM_STATUS_ID_PM8917_L16_0,
+ MSM_RPM_STATUS_ID_PM8917_L16_1,
+ MSM_RPM_STATUS_ID_PM8917_L17_0,
+ MSM_RPM_STATUS_ID_PM8917_L17_1,
+ MSM_RPM_STATUS_ID_PM8917_L18_0,
+ MSM_RPM_STATUS_ID_PM8917_L18_1,
+ MSM_RPM_STATUS_ID_PM8917_L21_0,
+ MSM_RPM_STATUS_ID_PM8917_L21_1,
+ MSM_RPM_STATUS_ID_PM8917_L22_0,
+ MSM_RPM_STATUS_ID_PM8917_L22_1,
+ MSM_RPM_STATUS_ID_PM8917_L23_0,
+ MSM_RPM_STATUS_ID_PM8917_L23_1,
+ MSM_RPM_STATUS_ID_PM8917_L24_0,
+ MSM_RPM_STATUS_ID_PM8917_L24_1,
+ MSM_RPM_STATUS_ID_PM8917_L25_0,
+ MSM_RPM_STATUS_ID_PM8917_L25_1,
+ MSM_RPM_STATUS_ID_PM8917_L26_0,
+ MSM_RPM_STATUS_ID_PM8917_L26_1,
+ MSM_RPM_STATUS_ID_PM8917_L27_0,
+ MSM_RPM_STATUS_ID_PM8917_L27_1,
+ MSM_RPM_STATUS_ID_PM8917_L28_0,
+ MSM_RPM_STATUS_ID_PM8917_L28_1,
+ MSM_RPM_STATUS_ID_PM8917_L29_0,
+ MSM_RPM_STATUS_ID_PM8917_L29_1,
+ MSM_RPM_STATUS_ID_PM8917_L30_0,
+ MSM_RPM_STATUS_ID_PM8917_L30_1,
+ MSM_RPM_STATUS_ID_PM8917_L31_0,
+ MSM_RPM_STATUS_ID_PM8917_L31_1,
+ MSM_RPM_STATUS_ID_PM8917_L32_0,
+ MSM_RPM_STATUS_ID_PM8917_L32_1,
+ MSM_RPM_STATUS_ID_PM8917_L33_0,
+ MSM_RPM_STATUS_ID_PM8917_L33_1,
+ MSM_RPM_STATUS_ID_PM8917_L34_0,
+ MSM_RPM_STATUS_ID_PM8917_L34_1,
+ MSM_RPM_STATUS_ID_PM8917_L35_0,
+ MSM_RPM_STATUS_ID_PM8917_L35_1,
+ MSM_RPM_STATUS_ID_PM8917_L36_0,
+ MSM_RPM_STATUS_ID_PM8917_L36_1,
+ MSM_RPM_STATUS_ID_PM8917_CLK1_0,
+ MSM_RPM_STATUS_ID_PM8917_CLK1_1,
+ MSM_RPM_STATUS_ID_PM8917_CLK2_0,
+ MSM_RPM_STATUS_ID_PM8917_CLK2_1,
+ MSM_RPM_STATUS_ID_PM8917_LVS1,
+ MSM_RPM_STATUS_ID_PM8917_LVS3,
+ MSM_RPM_STATUS_ID_PM8917_LVS4,
+ MSM_RPM_STATUS_ID_PM8917_LVS5,
+ MSM_RPM_STATUS_ID_PM8917_LVS6,
+ MSM_RPM_STATUS_ID_PM8917_LVS7,
MSM_RPM_STATUS_ID_VOLTAGE_CORNER,
+ MSM_RPM_STATUS_ID_PM8917_VOLTAGE_CORNER
+ = MSM_RPM_STATUS_ID_VOLTAGE_CORNER,
+ MSM_RPM_STATUS_ID_PM8038_VOLTAGE_CORNER
+ = MSM_RPM_STATUS_ID_VOLTAGE_CORNER,
/* 8064 specific */
MSM_RPM_STATUS_ID_PM8821_S1_0,
@@ -899,6 +1114,7 @@
extern struct msm_rpm_platform_data msm8960_rpm_data;
extern struct msm_rpm_platform_data msm9615_rpm_data;
extern struct msm_rpm_platform_data msm8930_rpm_data;
+extern struct msm_rpm_platform_data msm8930_rpm_data_pm8917;
extern struct msm_rpm_platform_data apq8064_rpm_data;
#if defined(CONFIG_MSM_RPM)