* [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
@ 2026-04-19 17:32 Pengyu Luo
2026-04-19 17:32 ` [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin Pengyu Luo
2026-04-20 8:32 ` [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Konrad Dybcio
0 siblings, 2 replies; 8+ messages in thread
From: Pengyu Luo @ 2026-04-19 17:32 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Pengyu Luo, linux-arm-msm, devicetree, linux-kernel
pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
are mapped to them respectively, so add the map entries from pdc to
gic. These entries are reversed from .data section of qcgpio.sys
Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
---
arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
index 8d526ffede36..fa1bd27aa16f 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
@@ -5365,7 +5365,7 @@ pdc: interrupt-controller@b220000 {
<211 699 1>,
<212 705 1>,
<213 450 1>,
- <214 643 1>,
+ <214 643 2>,
<216 646 5>,
<221 390 5>,
<226 700 3>,
@@ -5388,7 +5388,7 @@ pdc: interrupt-controller@b220000 {
<252 798 1>,
<253 765 1>,
<254 763 1>,
- <255 454 1>,
+ <255 454 3>,
<258 139 1>,
<259 786 2>,
<261 370 2>,
--
2.53.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin
2026-04-19 17:32 [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Pengyu Luo
@ 2026-04-19 17:32 ` Pengyu Luo
2026-04-20 8:33 ` Konrad Dybcio
2026-04-20 8:32 ` [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Konrad Dybcio
1 sibling, 1 reply; 8+ messages in thread
From: Pengyu Luo @ 2026-04-19 17:32 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Pengyu Luo, linux-arm-msm, devicetree, linux-kernel
Unlike other sc8280xp platforms, on this platform, in dsdt, gpio 0x2c0
is not mapped to gpio107, it is gpio103, so fix it. I found this until
I did a trigger track, irq is regularly triggerd every several
millisecs. In the past, since here gpio107 was low forever, ec irq
would keep to be triggered and polling the event every several
millisecs.
About how to get the map, please check openbsd driver for it
https://github.com/openbsd/src/blob/master/sys/dev/acpi/qcgpio.c
Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
---
arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts b/arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts
index 9819454abe13..d9d55241336e 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-huawei-gaokun3.dts
@@ -637,7 +637,7 @@ embedded-controller@38 {
compatible = "huawei,gaokun3-ec";
reg = <0x38>;
- interrupts-extended = <&tlmm 107 IRQ_TYPE_LEVEL_LOW>;
+ interrupts-extended = <&tlmm 103 IRQ_TYPE_LEVEL_LOW>;
#address-cells = <1>;
#size-cells = <0>;
--
2.53.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
2026-04-19 17:32 [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Pengyu Luo
2026-04-19 17:32 ` [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin Pengyu Luo
@ 2026-04-20 8:32 ` Konrad Dybcio
2026-04-20 9:53 ` Pengyu Luo
1 sibling, 1 reply; 8+ messages in thread
From: Konrad Dybcio @ 2026-04-20 8:32 UTC (permalink / raw)
To: Pengyu Luo, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel
On 4/19/26 7:32 PM, Pengyu Luo wrote:
> pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
> are mapped to them respectively, so add the map entries from pdc to
> gic. These entries are reversed from .data section of qcgpio.sys
>
> Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
The below change on top will fully align it with the data in the docs
(no functional change)
(yes that's a removal of one irq mapping)
diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
index 761f229e8f47..23e80c765384 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
@@ -5310,7 +5310,7 @@ pdc: interrupt-controller@b220000 {
<66 438 3>,
<69 86 1>,
<70 520 54>,
- <124 609 28>,
+ <124 609 27>,
<159 638 1>,
<160 720 8>,
<168 801 1>,
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin
2026-04-19 17:32 ` [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin Pengyu Luo
@ 2026-04-20 8:33 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2026-04-20 8:33 UTC (permalink / raw)
To: Pengyu Luo, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel
On 4/19/26 7:32 PM, Pengyu Luo wrote:
> Unlike other sc8280xp platforms, on this platform, in dsdt, gpio 0x2c0
> is not mapped to gpio107, it is gpio103, so fix it. I found this until
> I did a trigger track, irq is regularly triggerd every several
> millisecs. In the past, since here gpio107 was low forever, ec irq
> would keep to be triggered and polling the event every several
> millisecs.
>
> About how to get the map, please check openbsd driver for it
> https://github.com/openbsd/src/blob/master/sys/dev/acpi/qcgpio.c
>
> Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
2026-04-20 8:32 ` [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Konrad Dybcio
@ 2026-04-20 9:53 ` Pengyu Luo
2026-04-20 10:21 ` Konrad Dybcio
0 siblings, 1 reply; 8+ messages in thread
From: Pengyu Luo @ 2026-04-20 9:53 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-arm-msm, devicetree, linux-kernel
On Mon, Apr 20, 2026 at 4:32 PM Konrad Dybcio
<konrad.dybcio@oss.qualcomm.com> wrote:
>
> On 4/19/26 7:32 PM, Pengyu Luo wrote:
> > pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
> > are mapped to them respectively, so add the map entries from pdc to
> > gic. These entries are reversed from .data section of qcgpio.sys
> >
> > Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
> > ---
>
> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>
> Konrad
>
> The below change on top will fully align it with the data in the docs
> (no functional change)
>
Glad to know. Could you please help to check the tlmm map too? When I
was parsing the binary, I found
tlmm 65535 => pdc 70 => gic 520
tlmm 65535 => pdc 174 => gic 733
tlmm 65535 => pdc 175 => gic 734
tlmm 65535 => pdc 176 => gic 735
tlmm 65535 => pdc 177 => gic 736
tlmm 65535 => pdc 178 => gic 737
tlmm 65535 => pdc 184 => gic 743
tlmm 65535 => pdc 185 => gic 744
tlmm 65535 => pdc 186 => gic 745
tlmm 65535 => pdc 187 => gic 746
tlmm 65535 => pdc 188 => gic 747
tlmm 65535 => pdc 194 => gic 753
tlmm 65535 => pdc 195 => gic 754
tlmm 65535 => pdc 196 => gic 755
tlmm 65535 => pdc 197 => gic 756
tlmm 65535 => pdc 198 => gic 757
tlmm 65535 => pdc 199 => gic 416
tlmm 65535 => pdc 204 => gic 462
tlmm 65535 => pdc 205 => gic 264
If 65536 means the pin is missing, I will send v2 to remove the tlmm
map together with the pdc removal.
Best wishes,
Pengyu
> (yes that's a removal of one irq mapping)
>
> diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> index 761f229e8f47..23e80c765384 100644
> --- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> @@ -5310,7 +5310,7 @@ pdc: interrupt-controller@b220000 {
> <66 438 3>,
> <69 86 1>,
> <70 520 54>,
> - <124 609 28>,
> + <124 609 27>,
> <159 638 1>,
> <160 720 8>,
> <168 801 1>,
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
2026-04-20 9:53 ` Pengyu Luo
@ 2026-04-20 10:21 ` Konrad Dybcio
2026-04-20 10:47 ` Pengyu Luo
0 siblings, 1 reply; 8+ messages in thread
From: Konrad Dybcio @ 2026-04-20 10:21 UTC (permalink / raw)
To: Pengyu Luo
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-arm-msm, devicetree, linux-kernel
On 4/20/26 11:53 AM, Pengyu Luo wrote:
> On Mon, Apr 20, 2026 at 4:32 PM Konrad Dybcio
> <konrad.dybcio@oss.qualcomm.com> wrote:
>>
>> On 4/19/26 7:32 PM, Pengyu Luo wrote:
>>> pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
>>> are mapped to them respectively, so add the map entries from pdc to
>>> gic. These entries are reversed from .data section of qcgpio.sys
>>>
>>> Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
>>> ---
>>
>> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>>
>> Konrad
>>
>> The below change on top will fully align it with the data in the docs
>> (no functional change)
>>
>
> Glad to know. Could you please help to check the tlmm map too? When I
> was parsing the binary, I found
>
> tlmm 65535 => pdc 70 => gic 520
> tlmm 65535 => pdc 174 => gic 733
> tlmm 65535 => pdc 175 => gic 734
> tlmm 65535 => pdc 176 => gic 735
> tlmm 65535 => pdc 177 => gic 736
> tlmm 65535 => pdc 178 => gic 737
> tlmm 65535 => pdc 184 => gic 743
> tlmm 65535 => pdc 185 => gic 744
> tlmm 65535 => pdc 186 => gic 745
> tlmm 65535 => pdc 187 => gic 746
> tlmm 65535 => pdc 188 => gic 747
> tlmm 65535 => pdc 194 => gic 753
> tlmm 65535 => pdc 195 => gic 754
> tlmm 65535 => pdc 196 => gic 755
> tlmm 65535 => pdc 197 => gic 756
> tlmm 65535 => pdc 198 => gic 757
> tlmm 65535 => pdc 199 => gic 416
> tlmm 65535 => pdc 204 => gic 462
> tlmm 65535 => pdc 205 => gic 264
>
> If 65536 means the pin is missing, I will send v2 to remove the tlmm
> map together with the pdc removal.
These seem to be LPASS/SSC GPIOs
There are missing pairs of:
TLMM 151 -> PDC 264 -> GIC 191
TLMM 143 -> PDC 261 -> GIC 402
and very interestingly, GPIO 190 has two mappings:
PDC 70 -> GIC 552
PDC 178 -> GIC 769
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
2026-04-20 10:21 ` Konrad Dybcio
@ 2026-04-20 10:47 ` Pengyu Luo
2026-04-20 10:58 ` Konrad Dybcio
0 siblings, 1 reply; 8+ messages in thread
From: Pengyu Luo @ 2026-04-20 10:47 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-arm-msm, devicetree, linux-kernel
On Mon, Apr 20, 2026 at 6:21 PM Konrad Dybcio
<konrad.dybcio@oss.qualcomm.com> wrote:
>
> On 4/20/26 11:53 AM, Pengyu Luo wrote:
> > On Mon, Apr 20, 2026 at 4:32 PM Konrad Dybcio
> > <konrad.dybcio@oss.qualcomm.com> wrote:
> >>
> >> On 4/19/26 7:32 PM, Pengyu Luo wrote:
> >>> pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
> >>> are mapped to them respectively, so add the map entries from pdc to
> >>> gic. These entries are reversed from .data section of qcgpio.sys
> >>>
> >>> Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
> >>> ---
> >>
> >> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
> >>
> >> Konrad
> >>
> >> The below change on top will fully align it with the data in the docs
> >> (no functional change)
> >>
> >
> > Glad to know. Could you please help to check the tlmm map too? When I
> > was parsing the binary, I found
> >
> > tlmm 65535 => pdc 70 => gic 520
> > tlmm 65535 => pdc 174 => gic 733
> > tlmm 65535 => pdc 175 => gic 734
> > tlmm 65535 => pdc 176 => gic 735
> > tlmm 65535 => pdc 177 => gic 736
> > tlmm 65535 => pdc 178 => gic 737
> > tlmm 65535 => pdc 184 => gic 743
> > tlmm 65535 => pdc 185 => gic 744
> > tlmm 65535 => pdc 186 => gic 745
> > tlmm 65535 => pdc 187 => gic 746
> > tlmm 65535 => pdc 188 => gic 747
> > tlmm 65535 => pdc 194 => gic 753
> > tlmm 65535 => pdc 195 => gic 754
> > tlmm 65535 => pdc 196 => gic 755
> > tlmm 65535 => pdc 197 => gic 756
> > tlmm 65535 => pdc 198 => gic 757
> > tlmm 65535 => pdc 199 => gic 416
> > tlmm 65535 => pdc 204 => gic 462
> > tlmm 65535 => pdc 205 => gic 264
> >
> > If 65536 means the pin is missing, I will send v2 to remove the tlmm
> > map together with the pdc removal.
>
> These seem to be LPASS/SSC GPIOs
>
> There are missing pairs of:
>
> TLMM 151 -> PDC 264 -> GIC 191
> TLMM 143 -> PDC 261 -> GIC 402
>
> and very interestingly, GPIO 190 has two mappings:
> PDC 70 -> GIC 552
PDC 70 is connected to swr2, which is wakeable. Speaking of this, in
qcom,pdc.yaml
Drivers requiring wakeup capabilities of their device interrupts
routed through the PDC, must specify PDC as their interrupt controller
and request the PDC port associated with the GIC interrupt.
But swr2 specifies GIC.
I wonder, when should we use tlmm, when pdc, when gic?
Best wishes,
Pengyu
> PDC 178 -> GIC 769
>
>
> Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries
2026-04-20 10:47 ` Pengyu Luo
@ 2026-04-20 10:58 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2026-04-20 10:58 UTC (permalink / raw)
To: Pengyu Luo
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, linux-arm-msm, devicetree, linux-kernel
On 4/20/26 12:47 PM, Pengyu Luo wrote:
> On Mon, Apr 20, 2026 at 6:21 PM Konrad Dybcio
> <konrad.dybcio@oss.qualcomm.com> wrote:
>>
>> On 4/20/26 11:53 AM, Pengyu Luo wrote:
>>> On Mon, Apr 20, 2026 at 4:32 PM Konrad Dybcio
>>> <konrad.dybcio@oss.qualcomm.com> wrote:
>>>>
>>>> On 4/19/26 7:32 PM, Pengyu Luo wrote:
>>>>> pdc 215, 256, 257 are missing, but we can find tlmm pin 103, 84, 90
>>>>> are mapped to them respectively, so add the map entries from pdc to
>>>>> gic. These entries are reversed from .data section of qcgpio.sys
>>>>>
>>>>> Signed-off-by: Pengyu Luo <mitltlatltl@gmail.com>
>>>>> ---
>>>>
>>>> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
>>>>
>>>> Konrad
>>>>
>>>> The below change on top will fully align it with the data in the docs
>>>> (no functional change)
>>>>
>>>
>>> Glad to know. Could you please help to check the tlmm map too? When I
>>> was parsing the binary, I found
>>>
>>> tlmm 65535 => pdc 70 => gic 520
>>> tlmm 65535 => pdc 174 => gic 733
>>> tlmm 65535 => pdc 175 => gic 734
>>> tlmm 65535 => pdc 176 => gic 735
>>> tlmm 65535 => pdc 177 => gic 736
>>> tlmm 65535 => pdc 178 => gic 737
>>> tlmm 65535 => pdc 184 => gic 743
>>> tlmm 65535 => pdc 185 => gic 744
>>> tlmm 65535 => pdc 186 => gic 745
>>> tlmm 65535 => pdc 187 => gic 746
>>> tlmm 65535 => pdc 188 => gic 747
>>> tlmm 65535 => pdc 194 => gic 753
>>> tlmm 65535 => pdc 195 => gic 754
>>> tlmm 65535 => pdc 196 => gic 755
>>> tlmm 65535 => pdc 197 => gic 756
>>> tlmm 65535 => pdc 198 => gic 757
>>> tlmm 65535 => pdc 199 => gic 416
>>> tlmm 65535 => pdc 204 => gic 462
>>> tlmm 65535 => pdc 205 => gic 264
>>>
>>> If 65536 means the pin is missing, I will send v2 to remove the tlmm
>>> map together with the pdc removal.
>>
>> These seem to be LPASS/SSC GPIOs
>>
>> There are missing pairs of:
>>
>> TLMM 151 -> PDC 264 -> GIC 191
>> TLMM 143 -> PDC 261 -> GIC 402
>>
>> and very interestingly, GPIO 190 has two mappings:
>> PDC 70 -> GIC 552
>
> PDC 70 is connected to swr2, which is wakeable. Speaking of this, in
> qcom,pdc.yaml
>
> Drivers requiring wakeup capabilities of their device interrupts
> routed through the PDC, must specify PDC as their interrupt controller
> and request the PDC port associated with the GIC interrupt.
>
> But swr2 specifies GIC.
>
> I wonder, when should we use tlmm, when pdc, when gic?
I would assume "pdc, whenever available"
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-04-20 10:59 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-19 17:32 [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Pengyu Luo
2026-04-19 17:32 ` [PATCH 2/2] arm64: dts: qcom: sc8280xp: gaokun3: correct EC interrupt pin Pengyu Luo
2026-04-20 8:33 ` Konrad Dybcio
2026-04-20 8:32 ` [PATCH 1/2] arm64: dts: qcom: sc8280xp: add several missing pdc map entries Konrad Dybcio
2026-04-20 9:53 ` Pengyu Luo
2026-04-20 10:21 ` Konrad Dybcio
2026-04-20 10:47 ` Pengyu Luo
2026-04-20 10:58 ` Konrad Dybcio
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox