linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO
@ 2022-08-17 13:14 Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 01/12] dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older SoCs Krzysztof Kozlowski
                   ` (11 more replies)
  0 siblings, 12 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Hi,

Switch older Qualcomm SoCs to use MMIO-based method instead of syscon.

Not tested on hardware. Please kindly provide tests.

Dependency
==========
Context in bindings depends on:
arm64: dts: qcom: improvements to TCSR mutex in DTS
https://lore.kernel.org/linux-devicetree/20220817130342.568396-1-krzysztof.kozlowski@linaro.org/T/#t

Best regards,
Krzysztof

Krzysztof Kozlowski (12):
  dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older
    SoCs
  dt-bindings: hwlock: qcom-hwspinlock: correct example indentation
  dt-bindings: mfd: qcom,tcsr: add MSM8974
  hwspinlock: qcom: correct MMIO max register for newer SoCs
  hwspinlock: qcom: add support for MMIO on older SoCs
  arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO
  arm64: dts: qcom: msm8994: switch TCSR mutex to MMIO
  ARM: dts: qcom: msm8974: add missing TCSR syscon compatible
  ARM: dts: qcom: msm8974: split TCSR halt regs out of mutex
  ARM: dts: qcom: msm8974: switch TCSR mutex to MMIO
  ARM: dts: qcom: apq8084: switch TCSR mutex to MMIO
  ARM: dts: qcom: msm8226: switch TCSR mutex to MMIO

 .../bindings/hwlock/qcom-hwspinlock.yaml      | 25 +++++++----
 .../devicetree/bindings/mfd/qcom,tcsr.yaml    |  1 +
 .../arm/boot/dts/qcom-apq8074-dragonboard.dts |  2 +-
 arch/arm/boot/dts/qcom-apq8084.dtsi           | 11 ++---
 arch/arm/boot/dts/qcom-msm8226.dtsi           | 14 ++-----
 .../qcom-msm8974-lge-nexus5-hammerhead.dts    |  2 +-
 .../dts/qcom-msm8974-sony-xperia-rhine.dtsi   |  2 +-
 arch/arm/boot/dts/qcom-msm8974.dtsi           | 25 ++++++-----
 .../dts/qcom-msm8974pro-fairphone-fp2.dts     |  2 +-
 .../boot/dts/qcom-msm8974pro-samsung-klte.dts |  2 +-
 ...-msm8974pro-sony-xperia-shinano-castor.dts |  2 +-
 arch/arm64/boot/dts/qcom/ipq6018.dtsi         | 13 ++----
 arch/arm64/boot/dts/qcom/msm8994.dtsi         | 13 ++----
 drivers/hwspinlock/qcom_hwspinlock.c          | 42 ++++++++++++++-----
 14 files changed, 83 insertions(+), 73 deletions(-)

-- 
2.34.1


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

* [RFT PATCH 01/12] dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older SoCs
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 02/12] dt-bindings: hwlock: qcom-hwspinlock: correct example indentation Krzysztof Kozlowski
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Older Qualcomm SoCs have TCSR mutex registers with 0x80 stride, instead
of 0x1000.  Add dedicated compatibles for such case.  Unfortunately the
binding started using a generic "qcom,tcsr-mutex" compatible without
specifying the SoC part, thus it looks now quite inconsistent.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

If anyone ever says "I want a generic compatible because I am sure all
devices are compatible", that's one more argument they are wrong. :)
---
 .../bindings/hwlock/qcom-hwspinlock.yaml          | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml b/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
index 1c7149f7d171..de98b961fb38 100644
--- a/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
+++ b/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
@@ -15,9 +15,18 @@ description:
 
 properties:
   compatible:
-    enum:
-      - qcom,sfpb-mutex
-      - qcom,tcsr-mutex
+    oneOf:
+      - enum:
+          - qcom,sfpb-mutex
+          - qcom,tcsr-mutex
+      - items:
+          - enum:
+              - qcom,apq8084-tcsr-mutex
+              - qcom,ipq6018-tcsr-mutex
+              - qcom,msm8226-tcsr-mutex
+              - qcom,msm8974-tcsr-mutex
+              - qcom,msm8994-tcsr-mutex
+          - const: qcom,tcsr-mutex
 
   reg:
     maxItems: 1
-- 
2.34.1


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

* [RFT PATCH 02/12] dt-bindings: hwlock: qcom-hwspinlock: correct example indentation
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 01/12] dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older SoCs Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974 Krzysztof Kozlowski
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Use some consistent indentation (4-space) for DTS example.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 .../devicetree/bindings/hwlock/qcom-hwspinlock.yaml    | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml b/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
index de98b961fb38..1a3adf75934b 100644
--- a/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
+++ b/Documentation/devicetree/bindings/hwlock/qcom-hwspinlock.yaml
@@ -43,9 +43,9 @@ additionalProperties: false
 
 examples:
   - |
-        tcsr_mutex: hwlock@1f40000 {
-                compatible = "qcom,tcsr-mutex";
-                reg = <0x01f40000 0x40000>;
-                #hwlock-cells = <1>;
-        };
+    hwlock@1f40000 {
+        compatible = "qcom,tcsr-mutex";
+        reg = <0x01f40000 0x40000>;
+        #hwlock-cells = <1>;
+    };
 ...
-- 
2.34.1


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

* [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 01/12] dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older SoCs Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 02/12] dt-bindings: hwlock: qcom-hwspinlock: correct example indentation Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:37   ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs Krzysztof Kozlowski
                   ` (8 subsequent siblings)
  11 siblings, 1 reply; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Document new MSM8974 TCSR compatible.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
index e1c4936a0352..e7383dcad83b 100644
--- a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
+++ b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
@@ -18,6 +18,7 @@ properties:
     oneOf:
       - items:
           - enum:
+              - qcom,msm8974-tcsr
               - qcom,msm8998-tcsr
               - qcom,sc7180-tcsr
               - qcom,sc7280-tcsr
-- 
2.34.1


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

* [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974 Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 21:08   ` Konrad Dybcio
  2022-08-17 13:14 ` [RFT PATCH 05/12] hwspinlock: qcom: add support for MMIO on older SoCs Krzysztof Kozlowski
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Newer ARMv8 Qualcomm SoCs using 0x1000 register stride have maximum
register 0x20000 (32 mutexes * 0x1000).

Fixes: 7a1e6fb1c606 ("hwspinlock: qcom: Allow mmio usage in addition to syscon")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/hwspinlock/qcom_hwspinlock.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/hwspinlock/qcom_hwspinlock.c b/drivers/hwspinlock/qcom_hwspinlock.c
index 80ea45b3a815..9734e149d981 100644
--- a/drivers/hwspinlock/qcom_hwspinlock.c
+++ b/drivers/hwspinlock/qcom_hwspinlock.c
@@ -121,7 +121,7 @@ static const struct regmap_config tcsr_mutex_config = {
 	.reg_bits		= 32,
 	.reg_stride		= 4,
 	.val_bits		= 32,
-	.max_register		= 0x40000,
+	.max_register		= 0x20000,
 	.fast_io		= true,
 };
 
-- 
2.34.1


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

* [RFT PATCH 05/12] hwspinlock: qcom: add support for MMIO on older SoCs
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 06/12] arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

Older Qualcomm SoCs have TCSR mutex registers with 0x80 stride, instead
of 0x1000.  Add dedicated compatibles and regmap for such case.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 drivers/hwspinlock/qcom_hwspinlock.c | 42 +++++++++++++++++++++-------
 1 file changed, 32 insertions(+), 10 deletions(-)

diff --git a/drivers/hwspinlock/qcom_hwspinlock.c b/drivers/hwspinlock/qcom_hwspinlock.c
index 9734e149d981..9cf186362ae2 100644
--- a/drivers/hwspinlock/qcom_hwspinlock.c
+++ b/drivers/hwspinlock/qcom_hwspinlock.c
@@ -22,6 +22,7 @@
 struct qcom_hwspinlock_of_data {
 	u32 offset;
 	u32 stride;
+	const struct regmap_config *regmap_config;
 };
 
 static int qcom_hwspinlock_trylock(struct hwspinlock *lock)
@@ -73,15 +74,42 @@ static const struct qcom_hwspinlock_of_data of_sfpb_mutex = {
 	.stride = 0x4,
 };
 
-/* All modern platform has offset 0 and stride of 4k */
+static const struct regmap_config tcsr_msm8226_mutex_config = {
+	.reg_bits		= 32,
+	.reg_stride		= 4,
+	.val_bits		= 32,
+	.max_register		= 0x1000,
+	.fast_io		= true,
+};
+
+static const struct qcom_hwspinlock_of_data of_msm8226_tcsr_mutex = {
+	.offset = 0,
+	.stride = 0x80,
+	.regmap_config = &tcsr_msm8226_mutex_config,
+};
+
+static const struct regmap_config tcsr_mutex_config = {
+	.reg_bits		= 32,
+	.reg_stride		= 4,
+	.val_bits		= 32,
+	.max_register		= 0x20000,
+	.fast_io		= true,
+};
+
 static const struct qcom_hwspinlock_of_data of_tcsr_mutex = {
 	.offset = 0,
 	.stride = 0x1000,
+	.regmap_config = &tcsr_mutex_config,
 };
 
 static const struct of_device_id qcom_hwspinlock_of_match[] = {
 	{ .compatible = "qcom,sfpb-mutex", .data = &of_sfpb_mutex },
 	{ .compatible = "qcom,tcsr-mutex", .data = &of_tcsr_mutex },
+	{ .compatible = "qcom,apq8084-tcsr-mutex", .data = &of_msm8226_tcsr_mutex },
+	{ .compatible = "qcom,ipq6018-tcsr-mutex", .data = &of_msm8226_tcsr_mutex },
+	{ .compatible = "qcom,msm8226-tcsr-mutex", .data = &of_msm8226_tcsr_mutex },
+	{ .compatible = "qcom,msm8974-tcsr-mutex", .data = &of_msm8226_tcsr_mutex },
+	{ .compatible = "qcom,msm8994-tcsr-mutex", .data = &of_msm8226_tcsr_mutex },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, qcom_hwspinlock_of_match);
@@ -117,14 +145,6 @@ static struct regmap *qcom_hwspinlock_probe_syscon(struct platform_device *pdev,
 	return regmap;
 }
 
-static const struct regmap_config tcsr_mutex_config = {
-	.reg_bits		= 32,
-	.reg_stride		= 4,
-	.val_bits		= 32,
-	.max_register		= 0x20000,
-	.fast_io		= true,
-};
-
 static struct regmap *qcom_hwspinlock_probe_mmio(struct platform_device *pdev,
 						 u32 *offset, u32 *stride)
 {
@@ -133,6 +153,8 @@ static struct regmap *qcom_hwspinlock_probe_mmio(struct platform_device *pdev,
 	void __iomem *base;
 
 	data = of_device_get_match_data(dev);
+	if (!data->regmap_config)
+		return ERR_PTR(-EINVAL);
 
 	*offset = data->offset;
 	*stride = data->stride;
@@ -141,7 +163,7 @@ static struct regmap *qcom_hwspinlock_probe_mmio(struct platform_device *pdev,
 	if (IS_ERR(base))
 		return ERR_CAST(base);
 
-	return devm_regmap_init_mmio(dev, base, &tcsr_mutex_config);
+	return devm_regmap_init_mmio(dev, base, data->regmap_config);
 }
 
 static int qcom_hwspinlock_probe(struct platform_device *pdev)
-- 
2.34.1


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

* [RFT PATCH 06/12] arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 05/12] hwspinlock: qcom: add support for MMIO on older SoCs Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 07/12] arm64: dts: qcom: msm8994: " Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR mutex bindings allow device to be described only with address
space (so it uses MMIO, not syscon regmap).  This seems reasonable as
TCSR mutex is actually a dedicated IO address space and it also fixes DT
schema checks:

  qcom/ipq6018-cp01-c1.dtb: hwlock: 'reg' is a required property
  qcom/ipq6018-cp01-c1.dtb: hwlock: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/qcom/ipq6018.dtsi | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/ipq6018.dtsi b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
index aaad7d9059f6..ae56fccebe21 100644
--- a/arch/arm64/boot/dts/qcom/ipq6018.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq6018.dtsi
@@ -129,12 +129,6 @@ scm {
 		};
 	};
 
-	tcsr_mutex: hwlock {
-		compatible = "qcom,tcsr-mutex";
-		syscon = <&tcsr_mutex_regs 0 0x80>;
-		#hwlock-cells = <1>;
-	};
-
 	pmuv8: pmu {
 		compatible = "arm,cortex-a53-pmu";
 		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) |
@@ -252,9 +246,10 @@ gcc: gcc@1800000 {
 			#reset-cells = <1>;
 		};
 
-		tcsr_mutex_regs: syscon@1905000 {
-			compatible = "syscon";
-			reg = <0x0 0x01905000 0x0 0x8000>;
+		tcsr_mutex: hwlock@1905000 {
+			compatible = "qcom,ipq6018-tcsr-mutex", "qcom,tcsr-mutex";
+			reg = <0x0 0x01905000 0x0 0x1000>;
+			#hwlock-cells = <1>;
 		};
 
 		tcsr: syscon@1937000 {
-- 
2.34.1


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

* [RFT PATCH 07/12] arm64: dts: qcom: msm8994: switch TCSR mutex to MMIO
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 06/12] arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR mutex bindings allow device to be described only with address
space (so it uses MMIO, not syscon regmap).  This seems reasonable as
TCSR mutex is actually a dedicated IO address space and it also fixes DT
schema checks:

  qcom/msm8994-sony-xperia-kitakami-suzuran.dtb: hwlock: 'reg' is a required property
  qcom/msm8994-sony-xperia-kitakami-suzuran.dtb: hwlock: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm64/boot/dts/qcom/msm8994.dtsi | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8994.dtsi b/arch/arm64/boot/dts/qcom/msm8994.dtsi
index 8bc6c070e306..6a9bca6c2c5f 100644
--- a/arch/arm64/boot/dts/qcom/msm8994.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994.dtsi
@@ -164,12 +164,6 @@ memory@80000000 {
 		reg = <0 0x80000000 0 0>;
 	};
 
-	tcsr_mutex: hwlock {
-		compatible = "qcom,tcsr-mutex";
-		syscon = <&tcsr_mutex_regs 0 0x80>;
-		#hwlock-cells = <1>;
-	};
-
 	pmu {
 		compatible = "arm,cortex-a53-pmu";
 		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4)| IRQ_TYPE_LEVEL_HIGH)>;
@@ -762,9 +756,10 @@ spmi_bus: spmi@fc4c0000 {
 			#interrupt-cells = <4>;
 		};
 
-		tcsr_mutex_regs: syscon@fd484000 {
-			compatible = "syscon";
-			reg = <0xfd484000 0x2000>;
+		tcsr_mutex: hwlock@fd484000 {
+			compatible = "qcom,msm8994-tcsr-mutex", "qcom,tcsr-mutex";
+			reg = <0xfd484000 0x1000>;
+			#hwlock-cells = <1>;
 		};
 
 		tlmm: pinctrl@fd510000 {
-- 
2.34.1


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

* [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 07/12] arm64: dts: qcom: msm8994: " Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:38   ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 09/12] ARM: dts: qcom: msm8974: split TCSR halt regs out of mutex Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

TCSR syscon node should come with dedicated compatible.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 8baca2a77717..0a9f252c88a7 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1234,7 +1234,7 @@ tcsr_mutex_block: syscon@fd484000 {
 		};
 
 		tcsr: syscon@fd4a0000 {
-			compatible = "syscon";
+			compatible = "qcom,msm8974-tcsr", "syscon";
 			reg = <0xfd4a0000 0x10000>;
 		};
 
-- 
2.34.1


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

* [RFT PATCH 09/12] ARM: dts: qcom: msm8974: split TCSR halt regs out of mutex
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (7 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 10/12] ARM: dts: qcom: msm8974: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR halt regs are next to TCSR mutex, so before converting the TCSR
mutex into device with address space, we need to split the halt regs to
its own syscon device.  This also describes more accurately the devices
and their IO address space.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm/boot/dts/qcom-apq8074-dragonboard.dts        |  2 +-
 .../boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts   |  2 +-
 arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi |  2 +-
 arch/arm/boot/dts/qcom-msm8974.dtsi                   | 11 ++++++++---
 arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts   |  2 +-
 arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts    |  2 +-
 .../qcom-msm8974pro-sony-xperia-shinano-castor.dts    |  2 +-
 7 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
index 3051a861ff0c..2709a99e5c4c 100644
--- a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
+++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
@@ -38,7 +38,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs2_phy>;
-	phy-select = <&tcsr 0xb000 1>;
+	phy-select = <&tcsr_2 0xb000 1>;
 	extcon = <&smbb>, <&usb_id>;
 	vbus-supply = <&chg_otg>;
 	hnp-disable;
diff --git a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
index ec5d340562b6..5fd94dd6a427 100644
--- a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
@@ -251,7 +251,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs1_phy>;
-	phy-select = <&tcsr 0xb000 0>;
+	phy-select = <&tcsr_2 0xb000 0>;
 
 	extcon = <&charger>, <&usb_id>;
 	vbus-supply = <&usb_otg_vbus>;
diff --git a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
index 5a70683d9103..118b231f3137 100644
--- a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
@@ -136,7 +136,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs1_phy>;
-	phy-select = <&tcsr 0xb000 0>;
+	phy-select = <&tcsr_2 0xb000 0>;
 	extcon = <&smbb>, <&usb_id>;
 	vbus-supply = <&chg_otg>;
 
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 0a9f252c88a7..4b602410d72a 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1189,7 +1189,7 @@ remoteproc_mss: remoteproc@fc880000 {
 			resets = <&gcc GCC_MSS_RESTART>;
 			reset-names = "mss_restart";
 
-			qcom,halt-regs = <&tcsr_mutex_block 0x1180 0x1200 0x1280>;
+			qcom,halt-regs = <&tcsr_1 0x180 0x200 0x280>;
 
 			qcom,smem-states = <&modem_smp2p_out 0>;
 			qcom,smem-state-names = "stop";
@@ -1230,10 +1230,15 @@ smd-edge {
 
 		tcsr_mutex_block: syscon@fd484000 {
 			compatible = "syscon";
-			reg = <0xfd484000 0x2000>;
+			reg = <0xfd484000 0x1000>;
 		};
 
-		tcsr: syscon@fd4a0000 {
+		tcsr_1: syscon@fd485000 {
+			compatible = "qcom,msm8974-tcsr", "syscon";
+			reg = <0xfd485000 0x1000>;
+		};
+
+		tcsr_2: syscon@fd4a0000 {
 			compatible = "qcom,msm8974-tcsr", "syscon";
 			reg = <0xfd4a0000 0x10000>;
 		};
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts b/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
index ff6e0066768b..c264d17e0953 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
@@ -89,7 +89,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs1_phy>;
-	phy-select = <&tcsr 0xb000 0>;
+	phy-select = <&tcsr_2 0xb000 0>;
 	extcon = <&smbb>, <&usb_id>;
 	vbus-supply = <&chg_otg>;
 
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
index 983e10c3d863..2691a6dbbb8b 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
@@ -379,7 +379,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs1_phy>;
-	phy-select = <&tcsr 0xb000 0>;
+	phy-select = <&tcsr_2 0xb000 0>;
 
 	hnp-disable;
 	srp-disable;
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts b/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
index 3f45f5c5d37b..d2bef3896c82 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
@@ -216,7 +216,7 @@ &otg {
 	status = "okay";
 
 	phys = <&usb_hs1_phy>;
-	phy-select = <&tcsr 0xb000 0>;
+	phy-select = <&tcsr_2 0xb000 0>;
 	extcon = <&smbb>, <&usb_id>;
 	vbus-supply = <&chg_otg>;
 
-- 
2.34.1


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

* [RFT PATCH 10/12] ARM: dts: qcom: msm8974: switch TCSR mutex to MMIO
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (8 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 09/12] ARM: dts: qcom: msm8974: split TCSR halt regs out of mutex Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 11/12] ARM: dts: qcom: apq8084: " Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 12/12] ARM: dts: qcom: msm8226: " Krzysztof Kozlowski
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR mutex bindings allow device to be described only with address
space (so it uses MMIO, not syscon regmap).  This seems reasonable as
TCSR mutex is actually a dedicated IO address space and it also fixes DT
schema checks:

  qcom-msm8974-sony-xperia-rhine-amami.dtb: tcsr-mutex: 'reg' is a required property
  qcom-msm8974-sony-xperia-rhine-amami.dtb: tcsr-mutex: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm/boot/dts/qcom-msm8974.dtsi | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
index 4b602410d72a..5f674aa819ae 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -1228,9 +1228,10 @@ smd-edge {
 			};
 		};
 
-		tcsr_mutex_block: syscon@fd484000 {
-			compatible = "syscon";
+		tcsr_mutex: hwlock@fd484000 {
+			compatible = "qcom,msm8974-tcsr-mutex", "qcom,tcsr-mutex";
 			reg = <0xfd484000 0x1000>;
+			#hwlock-cells = <1>;
 		};
 
 		tcsr_1: syscon@fd485000 {
@@ -1719,13 +1720,6 @@ reboot-mode {
 		};
 	};
 
-	tcsr_mutex: tcsr-mutex {
-		compatible = "qcom,tcsr-mutex";
-		syscon = <&tcsr_mutex_block 0 0x80>;
-
-		#hwlock-cells = <1>;
-	};
-
 	thermal-zones {
 		cpu0-thermal {
 			polling-delay-passive = <250>;
-- 
2.34.1


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

* [RFT PATCH 11/12] ARM: dts: qcom: apq8084: switch TCSR mutex to MMIO
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (9 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 10/12] ARM: dts: qcom: msm8974: switch TCSR mutex to MMIO Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  2022-08-17 13:14 ` [RFT PATCH 12/12] ARM: dts: qcom: msm8226: " Krzysztof Kozlowski
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR mutex bindings allow device to be described only with address
space (so it uses MMIO, not syscon regmap).  This seems reasonable as
TCSR mutex is actually a dedicated IO address space and it also fixes DT
schema checks:

  qcom-apq8084-mtp.dtb: hwlock: 'reg' is a required property
  qcom-apq8084-mtp.dtb: hwlock: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm/boot/dts/qcom-apq8084.dtsi | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-apq8084.dtsi b/arch/arm/boot/dts/qcom-apq8084.dtsi
index 72f9255855a1..5e07255fe5ea 100644
--- a/arch/arm/boot/dts/qcom-apq8084.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8084.dtsi
@@ -383,14 +383,9 @@ gcc: clock-controller@fc400000 {
 			reg = <0xfc400000 0x4000>;
 		};
 
-		tcsr_mutex_regs: syscon@fd484000 {
-			compatible = "syscon";
-			reg = <0xfd484000 0x2000>;
-		};
-
-		tcsr_mutex: hwlock {
-			compatible = "qcom,tcsr-mutex";
-			syscon = <&tcsr_mutex_regs 0 0x80>;
+		tcsr_mutex: hwlock@fd484000 {
+			compatible = "qcom,apq8084-tcsr-mutex", "qcom,tcsr-mutex";
+			reg = <0xfd484000 0x1000>;
 			#hwlock-cells = <1>;
 		};
 
-- 
2.34.1


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

* [RFT PATCH 12/12] ARM: dts: qcom: msm8226: switch TCSR mutex to MMIO
  2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
                   ` (10 preceding siblings ...)
  2022-08-17 13:14 ` [RFT PATCH 11/12] ARM: dts: qcom: apq8084: " Krzysztof Kozlowski
@ 2022-08-17 13:14 ` Krzysztof Kozlowski
  11 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:14 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel
  Cc: Krzysztof Kozlowski

The TCSR mutex bindings allow device to be described only with address
space (so it uses MMIO, not syscon regmap).  This seems reasonable as
TCSR mutex is actually a dedicated IO address space and it also fixes DT
schema checks:

  qcom-msm8226-samsung-s3ve3g.dtb: hwlock: 'reg' is a required property
  qcom-msm8226-samsung-s3ve3g.dtb: hwlock: 'syscon' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
---
 arch/arm/boot/dts/qcom-msm8226.dtsi | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-msm8226.dtsi b/arch/arm/boot/dts/qcom-msm8226.dtsi
index 0b5effdb269a..efb5d1edc3a8 100644
--- a/arch/arm/boot/dts/qcom-msm8226.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8226.dtsi
@@ -44,13 +44,6 @@ scm {
 		};
 	};
 
-	tcsr_mutex: hwlock {
-		compatible = "qcom,tcsr-mutex";
-		syscon = <&tcsr_mutex_block 0 0x80>;
-
-		#hwlock-cells = <1>;
-	};
-
 	reserved-memory {
 		#address-cells = <1>;
 		#size-cells = <1>;
@@ -508,9 +501,10 @@ rpm_msg_ram: memory@fc428000 {
 			reg = <0xfc428000 0x4000>;
 		};
 
-		tcsr_mutex_block: syscon@fd484000 {
-			compatible = "syscon";
-			reg = <0xfd484000 0x2000>;
+		tcsr_mutex: hwlock@fd484000 {
+			compatible = "qcom,msm8226-tcsr-mutex", "qcom,tcsr-mutex";
+			reg = <0xfd484000 0x1000>;
+			#hwlock-cells = <1>;
 		};
 	};
 
-- 
2.34.1


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

* Re: [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974
  2022-08-17 13:14 ` [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974 Krzysztof Kozlowski
@ 2022-08-17 13:37   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:37 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel

On 17/08/2022 16:14, Krzysztof Kozlowski wrote:
> Document new MSM8974 TCSR compatible.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
>  Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
> index e1c4936a0352..e7383dcad83b 100644
> --- a/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
> +++ b/Documentation/devicetree/bindings/mfd/qcom,tcsr.yaml
> @@ -18,6 +18,7 @@ properties:
>      oneOf:
>        - items:
>            - enum:
> +              - qcom,msm8974-tcsr

There is already qcom,tcsr-msm8974 so the patch can be dropped.

Best regards,
Krzysztof

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

* Re: [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible
  2022-08-17 13:14 ` [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible Krzysztof Kozlowski
@ 2022-08-17 13:38   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 16+ messages in thread
From: Krzysztof Kozlowski @ 2022-08-17 13:38 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel

On 17/08/2022 16:14, Krzysztof Kozlowski wrote:
> diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
> index 8baca2a77717..0a9f252c88a7 100644
> --- a/arch/arm/boot/dts/qcom-msm8974.dtsi
> +++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
> @@ -1234,7 +1234,7 @@ tcsr_mutex_block: syscon@fd484000 {
>  		};
>  
>  		tcsr: syscon@fd4a0000 {
> -			compatible = "syscon";
> +			compatible = "qcom,msm8974-tcsr", "syscon";

I noticed that existing qcom,tcsr-msm8974 should be used.

Best regards,
Krzysztof

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

* Re: [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs
  2022-08-17 13:14 ` [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs Krzysztof Kozlowski
@ 2022-08-17 21:08   ` Konrad Dybcio
  0 siblings, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2022-08-17 21:08 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Andy Gross, Bjorn Andersson, Ohad Ben-Cohen,
	Baolin Wang, Rob Herring, Krzysztof Kozlowski, Lee Jones,
	Vinod Koul, linux-arm-msm, linux-remoteproc, devicetree,
	linux-kernel



On 17.08.2022 15:14, Krzysztof Kozlowski wrote:
> Newer ARMv8 Qualcomm SoCs using 0x1000 register stride have maximum
> register 0x20000 (32 mutexes * 0x1000).
> 
> Fixes: 7a1e6fb1c606 ("hwspinlock: qcom: Allow mmio usage in addition to syscon")
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>

Konrad
>  drivers/hwspinlock/qcom_hwspinlock.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/hwspinlock/qcom_hwspinlock.c b/drivers/hwspinlock/qcom_hwspinlock.c
> index 80ea45b3a815..9734e149d981 100644
> --- a/drivers/hwspinlock/qcom_hwspinlock.c
> +++ b/drivers/hwspinlock/qcom_hwspinlock.c
> @@ -121,7 +121,7 @@ static const struct regmap_config tcsr_mutex_config = {
>  	.reg_bits		= 32,
>  	.reg_stride		= 4,
>  	.val_bits		= 32,
> -	.max_register		= 0x40000,
> +	.max_register		= 0x20000,
>  	.fast_io		= true,
>  };
>  

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

end of thread, other threads:[~2022-08-17 21:08 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-17 13:14 [RFT PATCH 00/12] ARM/hwlock: qcom: switch TCSR mutex to MMIO Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 01/12] dt-bindings: hwlock: qcom-hwspinlock: add support for MMIO on older SoCs Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 02/12] dt-bindings: hwlock: qcom-hwspinlock: correct example indentation Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 03/12] dt-bindings: mfd: qcom,tcsr: add MSM8974 Krzysztof Kozlowski
2022-08-17 13:37   ` Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 04/12] hwspinlock: qcom: correct MMIO max register for newer SoCs Krzysztof Kozlowski
2022-08-17 21:08   ` Konrad Dybcio
2022-08-17 13:14 ` [RFT PATCH 05/12] hwspinlock: qcom: add support for MMIO on older SoCs Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 06/12] arm64: dts: qcom: ipq6018: switch TCSR mutex to MMIO Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 07/12] arm64: dts: qcom: msm8994: " Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 08/12] ARM: dts: qcom: msm8974: add missing TCSR syscon compatible Krzysztof Kozlowski
2022-08-17 13:38   ` Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 09/12] ARM: dts: qcom: msm8974: split TCSR halt regs out of mutex Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 10/12] ARM: dts: qcom: msm8974: switch TCSR mutex to MMIO Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 11/12] ARM: dts: qcom: apq8084: " Krzysztof Kozlowski
2022-08-17 13:14 ` [RFT PATCH 12/12] ARM: dts: qcom: msm8226: " Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).