* [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support
@ 2026-07-03 7:30 Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl Ravi Hothi
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Ravi Hothi @ 2026-07-03 7:30 UTC (permalink / raw)
To: Bjorn Andersson, Linus Walleij, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Luca Weiss
Cc: linux-arm-msm, linux-gpio, devicetree, linux-kernel,
mohammad.rafi.shaik, ajay.nandam
Eliza is a Qualcomm SoC that uses the same LPASS LPI pin mux
functions as Milos. The key difference is the slew rate register
layout — on Eliza the slew rate field lives in the same GPIO config
register rather than a separate dedicated register.
This series adds support for the Eliza LPASS LPI pin controller by
extending the existing Milos driver with a new variant data struct
that uses the correct slew offsets and sets LPI_FLAG_SLEW_RATE_SAME_REG.
The pin descriptors and function table are shared with Milos since
they are identical.
Patch 1 updates the binding to document the new compatible and the
single reg entry used by Eliza.
Patch 2 adds the driver support.
Ravi Hothi (2):
dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl
pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM
.../pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml | 22 ++++++++--
.../pinctrl/qcom/pinctrl-milos-lpass-lpi.c | 40 +++++++++++++++++++
2 files changed, 58 insertions(+), 4 deletions(-)
base-commit: 7de6ae9e12207ec146f2f3f1e58d1a99317e88bc
--
2.34.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl
2026-07-03 7:30 [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Ravi Hothi
@ 2026-07-03 7:30 ` Ravi Hothi
2026-07-07 13:31 ` Rob Herring (Arm)
2026-07-03 7:30 ` [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM Ravi Hothi
2026-07-03 21:04 ` [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Linus Walleij
2 siblings, 1 reply; 8+ messages in thread
From: Ravi Hothi @ 2026-07-03 7:30 UTC (permalink / raw)
To: Bjorn Andersson, Linus Walleij, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Luca Weiss
Cc: linux-arm-msm, linux-gpio, devicetree, linux-kernel,
mohammad.rafi.shaik, ajay.nandam
Document compatible for Qualcomm Eliza SoC LPASS LPI pin controller.
Eliza has the same pin mux functions as Milos but uses a different
slew rate register layout where the slew rate field is in the same
GPIO config register rather than a separate dedicated register. As a
result, Eliza only has a single reg entry instead of two.
Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
---
.../pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml | 22 +++++++++++++++----
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml
index 73e84f188591..5cb9addb975f 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml
@@ -15,12 +15,13 @@ description:
properties:
compatible:
- const: qcom,milos-lpass-lpi-pinctrl
+ oneOf:
+ - const: qcom,milos-lpass-lpi-pinctrl
+ - const: qcom,eliza-lpass-lpi-pinctrl
reg:
- items:
- - description: LPASS LPI TLMM Control and Status registers
- - description: LPASS LPI MCC registers
+ minItems: 1
+ maxItems: 2
clocks:
items:
@@ -74,6 +75,19 @@ $defs:
allOf:
- $ref: qcom,lpass-lpi-common.yaml#
+ - if:
+ properties:
+ compatible:
+ const: qcom,eliza-lpass-lpi-pinctrl
+ then:
+ properties:
+ reg:
+ maxItems: 1
+ else:
+ properties:
+ reg:
+ minItems: 2
+
required:
- compatible
- reg
--
2.34.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM
2026-07-03 7:30 [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl Ravi Hothi
@ 2026-07-03 7:30 ` Ravi Hothi
2026-07-06 10:29 ` Konrad Dybcio
2026-07-03 21:04 ` [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Linus Walleij
2 siblings, 1 reply; 8+ messages in thread
From: Ravi Hothi @ 2026-07-03 7:30 UTC (permalink / raw)
To: Bjorn Andersson, Linus Walleij, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Luca Weiss
Cc: linux-arm-msm, linux-gpio, devicetree, linux-kernel,
mohammad.rafi.shaik, ajay.nandam
Eliza SoC has the same LPASS LPI pin mux functions as Milos but the
slew rate control is in the same GPIO config register rather than a
separate register. Add a new variant data struct with updated slew
offsets and LPI_FLAG_SLEW_RATE_SAME_REG flag, reusing the existing
pin descriptors and function table from Milos.
Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
---
.../pinctrl/qcom/pinctrl-milos-lpass-lpi.c | 40 +++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/drivers/pinctrl/qcom/pinctrl-milos-lpass-lpi.c b/drivers/pinctrl/qcom/pinctrl-milos-lpass-lpi.c
index 72b8ffd97860..cb4934cd6f75 100644
--- a/drivers/pinctrl/qcom/pinctrl-milos-lpass-lpi.c
+++ b/drivers/pinctrl/qcom/pinctrl-milos-lpass-lpi.c
@@ -148,6 +148,33 @@ static const struct lpi_pingroup milos_groups[] = {
LPI_PINGROUP(22, LPI_NO_SLEW, i2s3_data, dmic4_data, ext_mclk1_e, _),
};
+static const struct lpi_pingroup eliza_groups[] = {
+ LPI_PINGROUP(0, 11, swr_tx_clk, i2s0_clk, _, _),
+ LPI_PINGROUP(1, 11, swr_tx_data, i2s0_ws, _, _),
+ LPI_PINGROUP(2, 11, swr_tx_data, i2s0_data, _, _),
+ LPI_PINGROUP(3, 11, swr_rx_clk, i2s0_data, _, _),
+ LPI_PINGROUP(4, 11, swr_rx_data, i2s0_data, _, _),
+ LPI_PINGROUP(5, 11, swr_rx_data, ext_mclk1_c, i2s0_data, _),
+ LPI_PINGROUP(6, LPI_NO_SLEW, dmic1_clk, i2s1_clk, _, _),
+ LPI_PINGROUP(7, LPI_NO_SLEW, dmic1_data, i2s1_ws, _, _),
+ LPI_PINGROUP(8, LPI_NO_SLEW, dmic2_clk, i2s1_data, _, _),
+ LPI_PINGROUP(9, LPI_NO_SLEW, dmic2_data, i2s1_data, ext_mclk1_b, _),
+ LPI_PINGROUP(10, 11, wsa_swr_clk, i2s2_clk, _, _),
+ LPI_PINGROUP(11, 11, wsa_swr_data, i2s2_ws, _, _),
+ LPI_PINGROUP(12, LPI_NO_SLEW, dmic3_clk, i2s2_data, _, _),
+ LPI_PINGROUP(13, LPI_NO_SLEW, dmic3_data, i2s2_data, ext_mclk1_a, _),
+ LPI_PINGROUP(14, 11, swr_tx_data, ext_mclk1_d, _, _),
+ /* gpio15 - gpio18 do not really exist */
+ LPI_PINGROUP(15, 11, _, _, _, _),
+ LPI_PINGROUP(16, 11, _, _, _, _),
+ LPI_PINGROUP(17, LPI_NO_SLEW, _, _, _, _),
+ LPI_PINGROUP(18, LPI_NO_SLEW, _, _, _, _),
+ LPI_PINGROUP(19, LPI_NO_SLEW, i2s3_clk, slimbus_clk, qca_swr_clk, _),
+ LPI_PINGROUP(20, LPI_NO_SLEW, i2s3_ws, slimbus_data, qca_swr_data, _),
+ LPI_PINGROUP(21, LPI_NO_SLEW, i2s3_data, dmic4_clk, _, _),
+ LPI_PINGROUP(22, LPI_NO_SLEW, i2s3_data, dmic4_data, ext_mclk1_e, _),
+};
+
static const struct lpi_function milos_functions[] = {
LPI_FUNCTION(gpio),
LPI_FUNCTION(dmic1_clk),
@@ -196,8 +223,21 @@ static const struct lpi_pinctrl_variant_data milos_lpi_data = {
.nfunctions = ARRAY_SIZE(milos_functions),
};
+static const struct lpi_pinctrl_variant_data eliza_lpi_data = {
+ .pins = milos_lpi_pins,
+ .npins = ARRAY_SIZE(milos_lpi_pins),
+ .groups = eliza_groups,
+ .ngroups = ARRAY_SIZE(eliza_groups),
+ .functions = milos_functions,
+ .nfunctions = ARRAY_SIZE(milos_functions),
+ .flags = LPI_FLAG_SLEW_RATE_SAME_REG,
+};
+
static const struct of_device_id lpi_pinctrl_of_match[] = {
{
+ .compatible = "qcom,eliza-lpass-lpi-pinctrl",
+ .data = &eliza_lpi_data,
+ }, {
.compatible = "qcom,milos-lpass-lpi-pinctrl",
.data = &milos_lpi_data,
},
--
2.34.1
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support
2026-07-03 7:30 [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM Ravi Hothi
@ 2026-07-03 21:04 ` Linus Walleij
2026-07-06 10:25 ` Bartosz Golaszewski
2 siblings, 1 reply; 8+ messages in thread
From: Linus Walleij @ 2026-07-03 21:04 UTC (permalink / raw)
To: Ravi Hothi, Bartosz Golaszewski
Cc: Bjorn Andersson, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Luca Weiss, linux-arm-msm, linux-gpio, devicetree, linux-kernel,
mohammad.rafi.shaik, ajay.nandam
Hi Ravi,
we are in a bit of maintainer transition for Qcom stuff,
Bartosz will apply and coordinate qcom pin control
patches!
Acked-by: Linus Walleij <linusw@kernel.org>
Yours,
Linus Walleij
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support
2026-07-03 21:04 ` [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Linus Walleij
@ 2026-07-06 10:25 ` Bartosz Golaszewski
0 siblings, 0 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2026-07-06 10:25 UTC (permalink / raw)
To: Linus Walleij
Cc: Ravi Hothi, Bartosz Golaszewski, Bjorn Andersson, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Luca Weiss, linux-arm-msm,
linux-gpio, devicetree, linux-kernel, mohammad.rafi.shaik,
ajay.nandam
On Fri, 3 Jul 2026 23:04:03 +0200, Linus Walleij <linusw@kernel.org> said:
> Hi Ravi,
>
> we are in a bit of maintainer transition for Qcom stuff,
> Bartosz will apply and coordinate qcom pin control
> patches!
>
> Acked-by: Linus Walleij <linusw@kernel.org>
>
> Yours,
> Linus Walleij
>
Yes, Ravi please Cc brgl@kernel.org from now on, the MAINTAINERS file in
linux-next is already updated.
I'm waiting for an ack on patch 1/2 on this series.
Bart
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM
2026-07-03 7:30 ` [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM Ravi Hothi
@ 2026-07-06 10:29 ` Konrad Dybcio
0 siblings, 0 replies; 8+ messages in thread
From: Konrad Dybcio @ 2026-07-06 10:29 UTC (permalink / raw)
To: Ravi Hothi, Bjorn Andersson, Linus Walleij, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Luca Weiss
Cc: linux-arm-msm, linux-gpio, devicetree, linux-kernel,
mohammad.rafi.shaik, ajay.nandam
On 7/3/26 9:30 AM, Ravi Hothi wrote:
> Eliza SoC has the same LPASS LPI pin mux functions as Milos but the
> slew rate control is in the same GPIO config register rather than a
> separate register. Add a new variant data struct with updated slew
> offsets and LPI_FLAG_SLEW_RATE_SAME_REG flag, reusing the existing
> pin descriptors and function table from Milos.
>
> Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl
2026-07-03 7:30 ` [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl Ravi Hothi
@ 2026-07-07 13:31 ` Rob Herring (Arm)
2026-07-08 11:33 ` Ravi Hothi
0 siblings, 1 reply; 8+ messages in thread
From: Rob Herring (Arm) @ 2026-07-07 13:31 UTC (permalink / raw)
To: Ravi Hothi
Cc: linux-gpio, linux-arm-msm, Conor Dooley, Linus Walleij,
Bjorn Andersson, Krzysztof Kozlowski, devicetree,
mohammad.rafi.shaik, linux-kernel, ajay.nandam, Luca Weiss
On Fri, 03 Jul 2026 13:00:28 +0530, Ravi Hothi wrote:
> Document compatible for Qualcomm Eliza SoC LPASS LPI pin controller.
> Eliza has the same pin mux functions as Milos but uses a different
> slew rate register layout where the slew rate field is in the same
> GPIO config register rather than a separate dedicated register. As a
> result, Eliza only has a single reg entry instead of two.
>
> Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
> ---
> .../pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml | 22 +++++++++++++++----
> 1 file changed, 18 insertions(+), 4 deletions(-)
>
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml: properties:compatible:oneOf: [{'const': 'qcom,milos-lpass-lpi-pinctrl'}, {'const': 'qcom,eliza-lpass-lpi-pinctrl'}] should not be valid under {'items': {'propertyNames': {'const': 'const'}, 'required': ['const']}}
hint: Use 'enum' rather than 'oneOf' + 'const' entries
from schema $id: http://devicetree.org/meta-schemas/keywords.yaml
doc reference errors (make refcheckdocs):
See https://patchwork.kernel.org/project/devicetree/patch/20260703073029.2588960-2-ravi.hothi@oss.qualcomm.com
The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.
If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:
pip3 install dtschema --upgrade
Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl
2026-07-07 13:31 ` Rob Herring (Arm)
@ 2026-07-08 11:33 ` Ravi Hothi
0 siblings, 0 replies; 8+ messages in thread
From: Ravi Hothi @ 2026-07-08 11:33 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: linux-gpio, linux-arm-msm, Conor Dooley, Linus Walleij,
Bjorn Andersson, Krzysztof Kozlowski, devicetree,
mohammad.rafi.shaik, linux-kernel, ajay.nandam, Luca Weiss
On 7/7/2026 7:01 PM, Rob Herring (Arm) wrote:
>
> On Fri, 03 Jul 2026 13:00:28 +0530, Ravi Hothi wrote:
>> Document compatible for Qualcomm Eliza SoC LPASS LPI pin controller.
>> Eliza has the same pin mux functions as Milos but uses a different
>> slew rate register layout where the slew rate field is in the same
>> GPIO config register rather than a separate dedicated register. As a
>> result, Eliza only has a single reg entry instead of two.
>>
>> Signed-off-by: Ravi Hothi <ravi.hothi@oss.qualcomm.com>
>> ---
>> .../pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml | 22 +++++++++++++++----
>> 1 file changed, 18 insertions(+), 4 deletions(-)
>>
>
> My bot found errors running 'make dt_binding_check' on your patch:
>
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/pinctrl/qcom,milos-lpass-lpi-pinctrl.yaml: properties:compatible:oneOf: [{'const': 'qcom,milos-lpass-lpi-pinctrl'}, {'const': 'qcom,eliza-lpass-lpi-pinctrl'}] should not be valid under {'items': {'propertyNames': {'const': 'const'}, 'required': ['const']}}
> hint: Use 'enum' rather than 'oneOf' + 'const' entries
> from schema $id: http://devicetree.org/meta-schemas/keywords.yaml
>
> doc reference errors (make refcheckdocs):
>
> See https://patchwork.kernel.org/project/devicetree/patch/20260703073029.2588960-2-ravi.hothi@oss.qualcomm.com
>
> The base for the series is generally the latest rc1. A different dependency
> should be noted in *this* patch.
>
> If you already ran 'make dt_binding_check' and didn't see the above
> error(s), then make sure 'yamllint' is installed and dt-schema is up to
> date:
>
> pip3 install dtschema --upgrade
>
> Please check and re-submit after running the above command yourself. Note
> that DT_SCHEMA_FILES can be set to your schema file to speed up checking
> your schema. However, it must be unset to test all examples with your schema.
>
ACK, Will update in next version.
Thanks,
Ravi Hothi
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-07-08 11:33 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-03 7:30 [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 1/2] dt-bindings: pinctrl: qcom,milos-lpass-lpi-pinctrl: Add Eliza pinctrl Ravi Hothi
2026-07-07 13:31 ` Rob Herring (Arm)
2026-07-08 11:33 ` Ravi Hothi
2026-07-03 7:30 ` [PATCH v1 2/2] pinctrl: qcom: milos-lpass-lpi: Add Eliza LPASS LPI TLMM Ravi Hothi
2026-07-06 10:29 ` Konrad Dybcio
2026-07-03 21:04 ` [PATCH v1 0/2] pinctrl: qcom: Add Eliza LPASS LPI support Linus Walleij
2026-07-06 10:25 ` Bartosz Golaszewski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®