Commit a327e870 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski

dt-bindings: pinctrl: qcom,sm8250: fix matching pin config

The TLMM pin controller follows generic pin-controller bindings, so
should have subnodes with '-state' and '-pins'.  Otherwise the subnodes
(level one and two) are not properly matched.  This method also unifies
the bindings with other Qualcomm TLMM and LPASS pinctrl bindings.

The change causes indentation decrement, so the diff-hunk looks big, but
there are no functional changes in the subnode "properties" section.
The only difference there is removal of blank lines between common GPIO
pinconf properties.
Acked-by: default avatarRob Herring <robh@kernel.org>
Reviewed-by: default avatarBjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20221016172212.49105-14-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
parent fd69e8be
...@@ -58,62 +58,69 @@ properties: ...@@ -58,62 +58,69 @@ properties:
wakeup-parent: true wakeup-parent: true
#PIN CONFIGURATION NODES
patternProperties: patternProperties:
'^.*$': "-state$":
if: oneOf:
type: object - $ref: "#/$defs/qcom-sm8250-tlmm-state"
then: - patternProperties:
$ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state "-pins$":
properties: $ref: "#/$defs/qcom-sm8250-tlmm-state"
pins: additionalProperties: false
description:
List of gpio pins affected by the properties specified in this $defs:
subnode. qcom-sm8250-tlmm-state:
items: type: object
oneOf: description:
- pattern: "^gpio([0-9]|[1-9][0-9]|1[0-7][0-9])$" Pinctrl node's client devices use subnodes for desired pin configuration.
- enum: [ sdc2_clk, sdc2_cmd, sdc2_data, ufs_reset ] Client device subnodes use below standard properties.
minItems: 1 $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state
maxItems: 36
properties:
function: pins:
description: description:
Specify the alternative function to be configured for the specified List of gpio pins affected by the properties specified in this
pins. subnode.
items:
enum: [ aoss_cti, atest, audio_ref, cam_mclk, cci_async, cci_i2c, oneOf:
cci_timer0, cci_timer1, cci_timer2, cci_timer3, cci_timer4, cri_trng, - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-7][0-9])$"
cri_trng0, cri_trng1, dbg_out, ddr_bist, ddr_pxi0, ddr_pxi1, - enum: [ sdc2_clk, sdc2_cmd, sdc2_data, ufs_reset ]
ddr_pxi2, ddr_pxi3, dp_hot, dp_lcd, gcc_gp1, gcc_gp2, gcc_gp3, gpio, minItems: 1
ibi_i3c, jitter_bist, lpass_slimbus, mdp_vsync, mdp_vsync0, maxItems: 36
mdp_vsync1, mdp_vsync2, mdp_vsync3, mi2s0_data0, mi2s0_data1,
mi2s0_sck, mi2s0_ws, mi2s1_data0, mi2s1_data1, mi2s1_sck, mi2s1_ws, function:
mi2s2_data0, mi2s2_data1, mi2s2_sck, mi2s2_ws, pci_e0, pci_e1, description:
pci_e2, phase_flag, pll_bist, pll_bypassnl, pll_clk, pll_reset, Specify the alternative function to be configured for the specified
pri_mi2s, prng_rosc, qdss_cti, qdss_gpio, qspi0, qspi1, qspi2, qspi3, pins.
qspi_clk, qspi_cs, qup0, qup1, qup10, qup11, qup12, qup13, qup14,
qup15, qup16, qup17, qup18, qup19, qup2, qup3, qup4, qup5, qup6, enum: [ aoss_cti, atest, audio_ref, cam_mclk, cci_async, cci_i2c,
qup7, qup8, qup9, qup_l4, qup_l5, qup_l6, sd_write, sdc40, sdc41, cci_timer0, cci_timer1, cci_timer2, cci_timer3, cci_timer4, cri_trng,
sdc42, sdc43, sdc4_clk, sdc4_cmd, sec_mi2s, sp_cmu, tgu_ch0, tgu_ch1, cri_trng0, cri_trng1, dbg_out, ddr_bist, ddr_pxi0, ddr_pxi1,
tgu_ch2, tgu_ch3, tsense_pwm1, tsense_pwm2, tsif0_clk, tsif0_data, ddr_pxi2, ddr_pxi3, dp_hot, dp_lcd, gcc_gp1, gcc_gp2, gcc_gp3, gpio,
tsif0_en, tsif0_error, tsif0_sync, tsif1_clk, tsif1_data, tsif1_en, ibi_i3c, jitter_bist, lpass_slimbus, mdp_vsync, mdp_vsync0,
tsif1_error, tsif1_sync, usb2phy_ac, usb_phy, vsense_trigger ] mdp_vsync1, mdp_vsync2, mdp_vsync3, mi2s0_data0, mi2s0_data1,
mi2s0_sck, mi2s0_ws, mi2s1_data0, mi2s1_data1, mi2s1_sck, mi2s1_ws,
bias-pull-down: true mi2s2_data0, mi2s2_data1, mi2s2_sck, mi2s2_ws, pci_e0, pci_e1,
pci_e2, phase_flag, pll_bist, pll_bypassnl, pll_clk, pll_reset,
bias-pull-up: true pri_mi2s, prng_rosc, qdss_cti, qdss_gpio, qspi0, qspi1, qspi2, qspi3,
qspi_clk, qspi_cs, qup0, qup1, qup10, qup11, qup12, qup13, qup14,
bias-disable: true qup15, qup16, qup17, qup18, qup19, qup2, qup3, qup4, qup5, qup6,
drive-strength: true qup7, qup8, qup9, qup_l4, qup_l5, qup_l6, sd_write, sdc40, sdc41,
output-high: true sdc42, sdc43, sdc4_clk, sdc4_cmd, sec_mi2s, sp_cmu, tgu_ch0, tgu_ch1,
tgu_ch2, tgu_ch3, tsense_pwm1, tsense_pwm2, tsif0_clk, tsif0_data,
output-low: true tsif0_en, tsif0_error, tsif0_sync, tsif1_clk, tsif1_data, tsif1_en,
tsif1_error, tsif1_sync, usb2phy_ac, usb_phy, vsense_trigger ]
required:
- pins bias-pull-down: true
bias-pull-up: true
additionalProperties: false bias-disable: true
drive-strength: true
output-high: true
output-low: true
required:
- pins
additionalProperties: false
allOf: allOf:
- $ref: "pinctrl.yaml#" - $ref: "pinctrl.yaml#"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment