diff --git a/arch/arm/configs/vendor/sdxlemur.config b/arch/arm/configs/vendor/sdxlemur.config index 9f24fdac83e5..3fcf1eb9ce10 100644 --- a/arch/arm/configs/vendor/sdxlemur.config +++ b/arch/arm/configs/vendor/sdxlemur.config @@ -35,3 +35,12 @@ CONFIG_USB_CONFIGFS_F_QDSS=y CONFIG_USB_CONFIGFS_F_CDEV=y CONFIG_USB_CONFIGFS_F_GSI=y CONFIG_USB_CONFIGFS_F_DIAG=y +CONFIG_ARM_PSCI=y +CONFIG_ARM_QCOM_LPM_CPUIDLE=y +CONFIG_QCOM_COMMAND_DB=y +CONFIG_QCOM_PM=y +CONFIG_QCOM_RPMH=y +CONFIG_QTI_RPM_STATS_LOG=y +CONFIG_QTI_DDR_STATS_LOG=y +CONFIG_QCOM_SOC_SLEEP_STATS=y +CONFIG_QCOM_PDC=y diff --git a/drivers/pinctrl/qcom/pinctrl-sdxlemur.c b/drivers/pinctrl/qcom/pinctrl-sdxlemur.c index be69219d1ee6..234919f5f0b1 100644 --- a/drivers/pinctrl/qcom/pinctrl-sdxlemur.c +++ b/drivers/pinctrl/qcom/pinctrl-sdxlemur.c @@ -1035,6 +1035,18 @@ static const struct msm_pingroup sdxlemur_groups[] = { [112] = UFS_RESET(ufs_reset, 0x0), }; +static const struct msm_gpio_wakeirq_map sdxlemur_pdc_map[] = { + {1, 20}, {2, 21}, {5, 22}, {6, 23}, {9, 24}, {10, 25}, + {11, 26}, {12, 27}, {13, 28}, {14, 29}, {15, 30}, {16, 31}, + {17, 32}, {18, 33}, {19, 34}, {21, 35}, {22, 36}, {23, 70}, + {24, 37}, {25, 38}, {35, 40}, {43, 41}, {46, 44}, {48, 45}, + {49, 57}, {50, 46}, {52, 47}, {54, 49}, {55, 50}, {60, 53}, + {61, 54}, {64, 55}, {65, 81}, {68, 56}, {71, 58}, {73, 59}, + {77, 77}, {81, 65}, {83, 63}, {84, 64}, {86, 66}, {88, 67}, + {89, 68}, {90, 69}, {93, 71}, {94, 72}, {95, 73}, {96, 74}, + {99, 75}, {103, 78}, {104, 79} +}; + static const struct msm_pinctrl_soc_data sdxlemur_pinctrl = { .pins = sdxlemur_pins, .npins = ARRAY_SIZE(sdxlemur_pins), @@ -1043,6 +1055,8 @@ static const struct msm_pinctrl_soc_data sdxlemur_pinctrl = { .groups = sdxlemur_groups, .ngroups = ARRAY_SIZE(sdxlemur_groups), .ngpios = 108, + .wakeirq_map = sdxlemur_pdc_map, + .nwakeirq_map = ARRAY_SIZE(sdxlemur_pdc_map), }; static int sdxlemur_pinctrl_probe(struct platform_device *pdev)