Qualcomm pin control fixes for v7.2-rc3

- add missing wakeup entries for GPIO143/151 in pinctrl-sc8280xp
 - fix GPIO wakeup interrupt detection in pinctrl-msm
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEkeUTLeW1Rh17omX8BZ0uy/82hMMFAmpQs+0ACgkQBZ0uy/82
 hMNObQ/7BrN/oZ6kg1Zb0AQDDILXBKtJM/KWs1m39EAnYA3So5EMctwCmSZP8aaB
 DXS2eoMx2EztEZxJ6GazJFBwgBy66kl3wyI+6brOr+/jCqwND+lnjfki/IAiF2mU
 4i1eRBqjgmLo732t4kew4rqBbzRWhM7E8J3QCO1+IbyWV8KSiluOqNpTuVA0Fiu6
 qDlzxoTvWC6nSWbzwTuIpH6VbyZ16xJFDbC09MRPzHTBQiRfNlCKU/QajPjOtfBR
 /RUtks25L18woQGm/m7TbQ8C8cHiw3YtRa5qi6lb3jVAOif+DhnccEKXZy8LAAZo
 qVPyaFf0iuFiaONdkqVKx4P2iHoWWqC5wEs/Vcv3xE1YLJT9ARTj8a3vq7ZqXuWC
 oEIav7XLZtAk/ED3tzzbOSugEA9iP+L0n1DOe8Bnj80owxSuXROjLNdSQlx2tjzL
 ICh/i7hs7izyewBBcBppstwKfUNM4D8inAs1Pzxau+C8BUtqxmqqCIqZyMOD0b25
 uOg5v+4BibaMHCgKJ6Ue9j18OrkyC0hstNsCuz5fE+bXPqIJClwSuC2TKwUUYZgt
 QbxaRpIbOZr2PYiPdfBOuaPtnXqwwhJs9M9ZWN7Z2sWzG6riPG5yZ+O3SO1KkGbt
 /AXnzKn98tbRX/9y8WpW2mB4615FUzHxd88Gqx+dmMJCZhRwPOg=
 =rT/K
 -----END PGP SIGNATURE-----

Merge tag 'pinctrl-qcom-fixes-for-v7.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into fixes

Qualcomm pin control fixes for v7.2-rc3

- add missing wakeup entries for GPIO143/151 in pinctrl-sc8280xp
- fix GPIO wakeup interrupt detection in pinctrl-msm

Signed-off-by: Linus Walleij <linusw@kernel.org>
This commit is contained in:
Linus Walleij 2026-07-10 12:16:08 +02:00
commit b2b5eb6883
2 changed files with 15 additions and 14 deletions

View File

@ -1240,12 +1240,12 @@ static int msm_gpio_irq_reqres(struct irq_data *d)
/*
* If the wakeup_enable bit is present and marked as available for the
* requested GPIO, it should be enabled when the GPIO is marked as
* wake irq in order to allow the interrupt event to be transfered to
* the PDC HW.
* wake irq in order to allow the interrupt event to be transferred to
* the PDC/MPM HW.
* While the name implies only the wakeup event, it's also required for
* the interrupt event.
*/
if (test_bit(d->hwirq, pctrl->skip_wake_irqs) && g->intr_wakeup_present_bit) {
if (g->intr_wakeup_present_bit) {
u32 intr_cfg;
raw_spin_lock_irqsave(&pctrl->lock, flags);
@ -1273,7 +1273,7 @@ static void msm_gpio_irq_relres(struct irq_data *d)
unsigned long flags;
/* Disable the wakeup_enable bit if it has been set in msm_gpio_irq_reqres() */
if (test_bit(d->hwirq, pctrl->skip_wake_irqs) && g->intr_wakeup_present_bit) {
if (g->intr_wakeup_present_bit) {
u32 intr_cfg;
raw_spin_lock_irqsave(&pctrl->lock, flags);

View File

@ -1881,16 +1881,17 @@ static const struct msm_gpio_wakeirq_map sc8280xp_pdc_map[] = {
{ 126, 200 }, { 127, 225 }, { 128, 262 }, { 129, 201 },
{ 130, 209 }, { 131, 173 }, { 132, 202 }, { 136, 210 },
{ 138, 171 }, { 139, 226 }, { 140, 227 }, { 142, 228 },
{ 144, 229 }, { 145, 230 }, { 146, 231 }, { 148, 232 },
{ 149, 233 }, { 150, 234 }, { 152, 235 }, { 154, 212 },
{ 157, 213 }, { 161, 219 }, { 170, 236 }, { 171, 221 },
{ 174, 222 }, { 175, 237 }, { 176, 223 }, { 177, 170 },
{ 180, 238 }, { 181, 239 }, { 182, 240 }, { 183, 241 },
{ 184, 242 }, { 185, 243 }, { 190, 178 }, { 193, 184 },
{ 196, 185 }, { 198, 186 }, { 200, 174 }, { 201, 175 },
{ 205, 176 }, { 206, 177 }, { 208, 187 }, { 210, 198 },
{ 211, 199 }, { 212, 204 }, { 215, 205 }, { 220, 188 },
{ 221, 194 }, { 223, 195 }, { 225, 196 }, { 227, 197 },
{ 143, 261 }, { 144, 229 }, { 145, 230 }, { 146, 231 },
{ 148, 232 }, { 149, 233 }, { 150, 234 }, { 151, 264 },
{ 152, 235 }, { 154, 212 }, { 157, 213 }, { 161, 219 },
{ 170, 236 }, { 171, 221 }, { 174, 222 }, { 175, 237 },
{ 176, 223 }, { 177, 170 }, { 180, 238 }, { 181, 239 },
{ 182, 240 }, { 183, 241 }, { 184, 242 }, { 185, 243 },
{ 190, 178 }, { 193, 184 }, { 196, 185 }, { 198, 186 },
{ 200, 174 }, { 201, 175 }, { 205, 176 }, { 206, 177 },
{ 208, 187 }, { 210, 198 }, { 211, 199 }, { 212, 204 },
{ 215, 205 }, { 220, 188 }, { 221, 194 }, { 223, 195 },
{ 225, 196 }, { 227, 197 },
};
static struct msm_pinctrl_soc_data sc8280xp_pinctrl = {