From 98dfb46503be34dc9f5f0eb34b3ecb1329d7d1e5 Mon Sep 17 00:00:00 2001 From: Tushar Nimkar Date: Thu, 11 Mar 2021 17:35:07 +0530 Subject: [PATCH 1/3] irqchip: mpm: Add check for irq_set_affinity implementation GIC-V2 driver does not implement irq_set_affinity function. This change checks same before calling. Change-Id: I3adb5681281b85bf5fa272d6ad7e968a01b95398 Signed-off-by: Tushar Nimkar --- drivers/irqchip/qcom-mpm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/irqchip/qcom-mpm.c b/drivers/irqchip/qcom-mpm.c index 5c4b0679c6d0..5f364c66851e 100644 --- a/drivers/irqchip/qcom-mpm.c +++ b/drivers/irqchip/qcom-mpm.c @@ -447,7 +447,7 @@ void msm_mpm_enter_sleep(struct cpumask *cpumask) if (!irq_data) return; - if (cpumask) + if (cpumask && irq_chip->irq_set_affinity) irq_chip->irq_set_affinity(irq_data, cpumask, true); } From bf15a2e3b075971415c1d9440aa99bcaabba69b9 Mon Sep 17 00:00:00 2001 From: Raghavendra Kakarla Date: Mon, 1 Feb 2021 09:20:47 +0530 Subject: [PATCH 2/3] drivers: pinctrl: Add the mpm map for wakeup gpios Add mpm pin mapping for the wakeup capable gpio for sdxnightjar. Change-Id: I3ecf690960585bba495eaa98c8fdec139eea0a7b Signed-off-by: Raghavendra Kakarla Signed-off-by: Tushar Nimkar --- drivers/pinctrl/qcom/pinctrl-sdxnightjar.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/qcom/pinctrl-sdxnightjar.c b/drivers/pinctrl/qcom/pinctrl-sdxnightjar.c index 6d7fcb91b3ac..28d7c7817862 100644 --- a/drivers/pinctrl/qcom/pinctrl-sdxnightjar.c +++ b/drivers/pinctrl/qcom/pinctrl-sdxnightjar.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. */ #include @@ -1169,6 +1169,22 @@ static const struct msm_pingroup sdxnightjar_groups[] = { SDC_QDSD_PINGROUP(qdsd_data3, 0x19c000, 28, 25), }; +static const struct msm_gpio_wakeirq_map sdxnightjar_mpm_map[] = { + {86, 3}, {91, 4}, {1, 5}, {2, 6}, + {92, 7}, {93, 8}, {5, 9}, {6, 10}, + {94, 11}, {9, 13}, {10, 14}, {11, 15}, + {12, 16}, {13, 17}, {14, 18}, {88, 19}, + {16, 20}, {17, 21}, {18, 22}, {19, 23}, + {22, 24}, {21, 25}, {24, 26}, {25, 27}, + {51, 28}, {87, 29}, {62, 30}, {63, 31}, + {64, 32}, {65, 33}, {66, 34}, {67, 35}, + {43, 36}, {50, 37}, {53, 38}, {54, 39}, + {55, 40}, {15, 41}, {56, 42}, {82, 43}, + {77, 47}, {61, 48}, {83, 50}, {84, 51}, + {85, 52}, {58, 53}, {81, 55}, {60, 56}, + {68, 57}, {70, 59}, {41, 60}, +}; + static const struct msm_pinctrl_soc_data sdxnightjar_pinctrl = { .pins = sdxnightjar_pins, .npins = ARRAY_SIZE(sdxnightjar_pins), @@ -1177,6 +1193,8 @@ static const struct msm_pinctrl_soc_data sdxnightjar_pinctrl = { .groups = sdxnightjar_groups, .ngroups = ARRAY_SIZE(sdxnightjar_groups), .ngpios = 100, + .wakeirq_map = sdxnightjar_mpm_map, + .nwakeirq_map = ARRAY_SIZE(sdxnightjar_mpm_map), }; static int sdxnightjar_pinctrl_probe(struct platform_device *pdev) From 167d16f625b345ca5635552c2313beb905d57ebf Mon Sep 17 00:00:00 2001 From: Raghavendra Kakarla Date: Mon, 1 Feb 2021 09:26:42 +0530 Subject: [PATCH 3/3] defconfig: Enable MPM, SPM and legacy LPM drivers Enable MPM, SPM and legacy LPM drivers for sdxnightjar. Change-Id: Iacfbf418a60881db19fdf049a2e0aa8b7abb10ab Signed-off-by: Raghavendra Kakarla Signed-off-by: Tushar Nimkar --- arch/arm/configs/vendor/sdxnightjar-debug.config | 4 ++++ arch/arm/configs/vendor/sdxnightjar.config | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/arch/arm/configs/vendor/sdxnightjar-debug.config b/arch/arm/configs/vendor/sdxnightjar-debug.config index e8f18192b596..c9380b073c4c 100644 --- a/arch/arm/configs/vendor/sdxnightjar-debug.config +++ b/arch/arm/configs/vendor/sdxnightjar-debug.config @@ -876,3 +876,7 @@ CONFIG_THERMAL_TSENS=y CONFIG_QTI_QMI_COOLING_DEVICE=y CONFIG_REGULATOR_COOLING_DEVICE=y CONFIG_LKDTM=m +CONFIG_MSM_PM_LEGACY=y +CONFIG_MSM_SPM=y +CONFIG_QCOM_MPM=y +CONFIG_QTI_SYSTEM_PM_RPM=y diff --git a/arch/arm/configs/vendor/sdxnightjar.config b/arch/arm/configs/vendor/sdxnightjar.config index 7c4711dd46bd..ff8678589ad8 100644 --- a/arch/arm/configs/vendor/sdxnightjar.config +++ b/arch/arm/configs/vendor/sdxnightjar.config @@ -904,3 +904,7 @@ CONFIG_THERMAL_GOV_USER_SPACE=y CONFIG_THERMAL_TSENS=y CONFIG_QTI_QMI_COOLING_DEVICE=y CONFIG_REGULATOR_COOLING_DEVICE=y +CONFIG_MSM_PM_LEGACY=y +CONFIG_MSM_SPM=y +CONFIG_QCOM_MPM=y +CONFIG_QTI_SYSTEM_PM_RPM=y