Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

pinctrl: qcom: eliza: Fix interrupt target bit

The intr_target_bit for Eliza was incorrectly set to 5, which is the
value used by older Qualcomm SoCs (e.g. SM8250, MSM8996, X1E80100).
Newer SoCs such as SM8650, SM8750, Milos, and Kaanapali all use
bit 8 for the interrupt target field in the TLMM interrupt configuration
register.

Eliza belongs to the newer generation and should use bit 8 to correctly
route interrupts to the KPSS (Applications Processor). Using the wrong
bit position means the interrupt target routing is silently misconfigured,
which can result in GPIO interrupts not being delivered to the expected
processor.

Fix this by aligning Eliza with the correct value used by its peer SoCs.

Fixes: 6f26989e15fb ("pinctrl: qcom: Add Eliza pinctrl driver")
Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Reviewed-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
Signed-off-by: Linus Walleij <linusw@kernel.org>

authored by

Mukesh Ojha and committed by
Linus Walleij
fe8933c5 a91cbf52

+1 -1
+1 -1
drivers/pinctrl/qcom/pinctrl-eliza.c
··· 47 47 .intr_status_bit = 0, \ 48 48 .intr_wakeup_present_bit = 6, \ 49 49 .intr_wakeup_enable_bit = 7, \ 50 - .intr_target_bit = 5, \ 50 + .intr_target_bit = 8, \ 51 51 .intr_target_kpss_val = 3, \ 52 52 .intr_raw_status_bit = 4, \ 53 53 .intr_polarity_bit = 1, \