The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH v2 0/3] purwa: Drop the Hamoa PDC workaround from purwa
@ 2026-06-16 10:27 Maulik Shah
  2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Maulik Shah @ 2026-06-16 10:27 UTC (permalink / raw)
  To: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree, Konrad Dybcio,
	Maulik Shah

Purwa shares the Hamoa PDC compatible. Hamoa had the software workaround
added due to hardware register bug mentioned in commit [1] which used
Hamoa/X1E80100 compatible to apply the workaround.

As the hardware bug mentioned in [1] is fixed on purwa silicon add purwa
compatible to avoid applying workaround meant for hamoa.

[1] https://lore.kernel.org/all/20250218-x1e80100-pdc-hw-wa-v2-1-29be4c98e355@linaro.org/

---
Changes in v2:
- Remove Fixes tag from bindings
- Rename $subject to use hamoa and purwa name
- Add comment above compatible in devicetree
- Rebase and mark dependency
- Add new change to invoke SMC call for purwa PDC mode setting
- Link to v1: https://lore.kernel.org/r/20251231-purwa_pdc-v1-0-2b4979dd88ad@oss.qualcomm.com
---

To: Thomas Gleixner <tglx@kernel.org>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konradybcio@kernel.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>

---
Maulik Shah (3):
      dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC
      arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC
      irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode

 Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml | 1 +
 arch/arm64/boot/dts/qcom/purwa.dtsi                                  | 5 +++++
 drivers/irqchip/qcom-pdc.c                                           | 3 +++
 3 files changed, 9 insertions(+)
---
base-commit: 8d6dbbbe3ba62de0a63e962ee004afb848c8e3ac
change-id: 20260616-purwa-pdc-198063b482b9
prerequisite-message-id: <20260616-hamoa_pdc_v3-v3-0-4d8e1504ea75@oss.qualcomm.com>
prerequisite-patch-id: 060eef1520c1c4dd8dac1be913d3a3807e2e4297
prerequisite-patch-id: 8f3baf0a17cf193edc0a3dd072a1e148970d1818
prerequisite-patch-id: 00e0419592d6b43eb8d17bbe2ef24ccf708f15c3
prerequisite-patch-id: e6711f15783ab50499e556618767b3450e2f1367
prerequisite-patch-id: 531aa20d79ee018e28c86567c11ea88f665cb2e5
prerequisite-patch-id: 085301f3a331a482e3f16cdd4b588139cf1f2ae5
prerequisite-patch-id: aa6592f80552d5be8f73cf2068d31f1bc214c923
prerequisite-patch-id: 501c83baa6ed0870e2f535e09b64d7510e261def

Best regards,
--  
Maulik Shah <maulik.shah@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC
  2026-06-16 10:27 [PATCH v2 0/3] purwa: Drop the Hamoa PDC workaround from purwa Maulik Shah
@ 2026-06-16 10:27 ` Maulik Shah
  2026-06-16 14:09   ` Konrad Dybcio
  2026-06-17  8:14   ` Krzysztof Kozlowski
  2026-06-16 10:27 ` [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC Maulik Shah
  2026-06-16 10:27 ` [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode Maulik Shah
  2 siblings, 2 replies; 8+ messages in thread
From: Maulik Shah @ 2026-06-16 10:27 UTC (permalink / raw)
  To: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree, Konrad Dybcio,
	Maulik Shah

X1P42100 (Purwa) shares the X1E80100 (Hamoa) PDC device, but the hardware
register bug addressed in commit e9a48ea4d90b ("irqchip/qcom-pdc:
Workaround hardware register bug on X1E80100") is already fixed in
X1P42100 silicon.

X1E80100 compatible forces the software workaround. Add PDC compatible
for purwa as "qcom,x1p42100-pdc" to remove the workaround from Purwa.

Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>
---
 Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml
index 07a46c5457a4..420421863328 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml
+++ b/Documentation/devicetree/bindings/interrupt-controller/qcom,pdc.yaml
@@ -57,6 +57,7 @@ properties:
           - qcom,sm8650-pdc
           - qcom,sm8750-pdc
           - qcom,x1e80100-pdc
+          - qcom,x1p42100-pdc
       - const: qcom,pdc
 
   reg:

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC
  2026-06-16 10:27 [PATCH v2 0/3] purwa: Drop the Hamoa PDC workaround from purwa Maulik Shah
  2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
@ 2026-06-16 10:27 ` Maulik Shah
  2026-06-16 14:09   ` Konrad Dybcio
  2026-06-16 10:27 ` [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode Maulik Shah
  2 siblings, 1 reply; 8+ messages in thread
From: Maulik Shah @ 2026-06-16 10:27 UTC (permalink / raw)
  To: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree, Konrad Dybcio,
	Maulik Shah

X1P42100 (Purwa) shares the X1E80100 (Hamoa) PDC device, but the hardware
register bug addressed in commit e9a48ea4d90b ("irqchip/qcom-pdc:
Workaround hardware register bug on X1E80100") is already fixed in
X1P42100 silicon.

X1E80100 compatible forces the software workaround. Use the X1P42100
specific compatible string for the PDC node to remove the workaround.

Fixes: f08edb529916 ("arm64: dts: qcom: Add X1P42100 SoC and CRD")
Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/purwa.dtsi | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/purwa.dtsi b/arch/arm64/boot/dts/qcom/purwa.dtsi
index 9ab4f26b35f2..0db8c561e7ba 100644
--- a/arch/arm64/boot/dts/qcom/purwa.dtsi
+++ b/arch/arm64/boot/dts/qcom/purwa.dtsi
@@ -166,6 +166,11 @@ &pcie6a_phy {
 	compatible = "qcom,x1p42100-qmp-gen4x4-pcie-phy";
 };
 
+/* X1P42100 PDC is same as X1E80100, but without hardware register bug */
+&pdc {
+	compatible = "qcom,x1p42100-pdc", "qcom,pdc";
+};
+
 &qfprom {
 	gpu_speed_bin: gpu-speed-bin@119 {
 		reg = <0x119 0x2>;

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode
  2026-06-16 10:27 [PATCH v2 0/3] purwa: Drop the Hamoa PDC workaround from purwa Maulik Shah
  2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
  2026-06-16 10:27 ` [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC Maulik Shah
@ 2026-06-16 10:27 ` Maulik Shah
  2026-06-17 16:32   ` Thomas Gleixner
  2 siblings, 1 reply; 8+ messages in thread
From: Maulik Shah @ 2026-06-16 10:27 UTC (permalink / raw)
  To: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree, Konrad Dybcio,
	Maulik Shah

X1P42100 (Purwa) and X1E80100 (Hamoa) shares the same PDC and windows
firmware sets the PDC to secondary mode for X1P42100 too. Add support
to reset the PDC to pass through mode using qcom_scm_io_writel() similar
to X1E80100.

Make sure x1e_quirk to workaround a hardware bug is set only for X1E80100
as X1P42100 have this fixed in sillicon.

Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>
---
 drivers/irqchip/qcom-pdc.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/irqchip/qcom-pdc.c b/drivers/irqchip/qcom-pdc.c
index c6f2935ff788..0f638556d4d0 100644
--- a/drivers/irqchip/qcom-pdc.c
+++ b/drivers/irqchip/qcom-pdc.c
@@ -704,7 +704,10 @@ static int qcom_pdc_probe(struct platform_device *pdev, struct device_node *pare
 		}
 
 		pdc->x1e_quirk = true;
+	}
 
+	if (of_device_is_compatible(node, "qcom,x1e80100-pdc") ||
+	    of_device_is_compatible(node, "qcom,x1p42100-pdc")) {
 		if (!qcom_scm_is_available())
 			return -EPROBE_DEFER;
 

-- 
2.43.0


^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC
  2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
@ 2026-06-16 14:09   ` Konrad Dybcio
  2026-06-17  8:14   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2026-06-16 14:09 UTC (permalink / raw)
  To: Maulik Shah, Thomas Gleixner, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree

On 6/16/26 12:27 PM, Maulik Shah wrote:
> X1P42100 (Purwa) shares the X1E80100 (Hamoa) PDC device, but the hardware
> register bug addressed in commit e9a48ea4d90b ("irqchip/qcom-pdc:
> Workaround hardware register bug on X1E80100") is already fixed in
> X1P42100 silicon.
> 
> X1E80100 compatible forces the software workaround. Add PDC compatible
> for purwa as "qcom,x1p42100-pdc" to remove the workaround from Purwa.
> 
> Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>
> ---

Acked-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC
  2026-06-16 10:27 ` [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC Maulik Shah
@ 2026-06-16 14:09   ` Konrad Dybcio
  0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2026-06-16 14:09 UTC (permalink / raw)
  To: Maulik Shah, Thomas Gleixner, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree

On 6/16/26 12:27 PM, Maulik Shah wrote:
> X1P42100 (Purwa) shares the X1E80100 (Hamoa) PDC device, but the hardware
> register bug addressed in commit e9a48ea4d90b ("irqchip/qcom-pdc:
> Workaround hardware register bug on X1E80100") is already fixed in
> X1P42100 silicon.
> 
> X1E80100 compatible forces the software workaround. Use the X1P42100
> specific compatible string for the PDC node to remove the workaround.
> 
> Fixes: f08edb529916 ("arm64: dts: qcom: Add X1P42100 SoC and CRD")
> Signed-off-by: Maulik Shah <maulik.shah@oss.qualcomm.com>
> ---

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC
  2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
  2026-06-16 14:09   ` Konrad Dybcio
@ 2026-06-17  8:14   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 8+ messages in thread
From: Krzysztof Kozlowski @ 2026-06-17  8:14 UTC (permalink / raw)
  To: Maulik Shah
  Cc: Thomas Gleixner, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio, linux-arm-msm, linux-kernel,
	devicetree, Konrad Dybcio

On Tue, Jun 16, 2026 at 03:57:13PM +0530, Maulik Shah wrote:
> X1P42100 (Purwa) shares the X1E80100 (Hamoa) PDC device, but the hardware
> register bug addressed in commit e9a48ea4d90b ("irqchip/qcom-pdc:
> Workaround hardware register bug on X1E80100") is already fixed in
> X1P42100 silicon.
> 
> X1E80100 compatible forces the software workaround. Add PDC compatible
> for purwa as "qcom,x1p42100-pdc" to remove the workaround from Purwa.

That is an excellent commit msg, really very good! Thank you.

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode
  2026-06-16 10:27 ` [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode Maulik Shah
@ 2026-06-17 16:32   ` Thomas Gleixner
  0 siblings, 0 replies; 8+ messages in thread
From: Thomas Gleixner @ 2026-06-17 16:32 UTC (permalink / raw)
  To: Maulik Shah, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Bjorn Andersson, Konrad Dybcio
  Cc: linux-arm-msm, linux-kernel, devicetree, Konrad Dybcio,
	Maulik Shah

On Tue, Jun 16 2026 at 15:57, Maulik Shah wrote:
> --- a/drivers/irqchip/qcom-pdc.c
> +++ b/drivers/irqchip/qcom-pdc.c
> @@ -704,7 +704,10 @@ static int qcom_pdc_probe(struct platform_device *pdev, struct device_node *pare
>  		}
>  
>  		pdc->x1e_quirk = true;
> +	}
>  
> +	if (of_device_is_compatible(node, "qcom,x1e80100-pdc") ||
> +	    of_device_is_compatible(node, "qcom,x1p42100-pdc")) {
>  		if (!qcom_scm_is_available())
>  			return -EPROBE_DEFER;

Bah. Can you please prominently tell in the cover letter that the series
has dependencies on some other series instead of hiding that information
in a lump of sha1 references which do not exist for me?


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-06-17 16:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-16 10:27 [PATCH v2 0/3] purwa: Drop the Hamoa PDC workaround from purwa Maulik Shah
2026-06-16 10:27 ` [PATCH v2 1/3] dt-bindings: interrupt-controller: qcom,pdc: Document Purwa PDC Maulik Shah
2026-06-16 14:09   ` Konrad Dybcio
2026-06-17  8:14   ` Krzysztof Kozlowski
2026-06-16 10:27 ` [PATCH v2 2/3] arm64: dts: qcom: purwa: Drop the Hamoa workaround for PDC Maulik Shah
2026-06-16 14:09   ` Konrad Dybcio
2026-06-16 10:27 ` [PATCH v2 3/3] irqchip/qcom-pdc: Add puwra compatible for PDC secondary mode Maulik Shah
2026-06-17 16:32   ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox