On 27/07/2024 22:23, Stephan Gerhold wrote: > On Tue, Jul 23, 2024 at 10:33:00AM +0200, Krzysztof Kozlowski wrote: >> The APQ8016 SBC and MSM8916 QDSP6 sound cards are a bit different from >> others: they have additional IO muxing address space and pin control. >> Move them to separate schema, so the original qcom,sm8250.yaml will be >> easier to manage. New schema is going to grow for other platforms >> having more of IO muxing address spaces. >> >> Cc: Adam Skladowski <a39.skl@xxxxxxxxx> >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> >> --- >> .../sound/qcom,apq8016-sbc-sndcard.yaml | 205 ++++++++++++++++++ >> .../bindings/sound/qcom,sm8250.yaml | 137 ------------ >> 2 files changed, 205 insertions(+), 137 deletions(-) >> create mode 100644 Documentation/devicetree/bindings/sound/qcom,apq8016-sbc-sndcard.yaml >> >> diff --git a/Documentation/devicetree/bindings/sound/qcom,apq8016-sbc-sndcard.yaml b/Documentation/devicetree/bindings/sound/qcom,apq8016-sbc-sndcard.yaml >> new file mode 100644 >> index 000000000000..6ad451549036 >> [...] >> diff --git a/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml b/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml >> index c9076dcd44c1..1d3acdc0c733 100644 >> --- a/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml >> +++ b/Documentation/devicetree/bindings/sound/qcom,sm8250.yaml >> @@ -27,9 +27,7 @@ properties: >> - qcom,sm8650-sndcard >> - const: qcom,sm8450-sndcard >> - enum: >> - - qcom,apq8016-sbc-sndcard >> - qcom,apq8096-sndcard >> - - qcom,msm8916-qdsp6-sndcard >> - qcom,qcm6490-idp-sndcard >> - qcom,qcs6490-rb3gen2-sndcard >> - qcom,qrb5165-rb5-sndcard >> @@ -58,18 +56,6 @@ properties: >> $ref: /schemas/types.yaml#/definitions/string >> description: User visible long sound card name >> >> - pin-switches: >> - description: List of widget names for which pin switches should be created. >> - $ref: /schemas/types.yaml#/definitions/string-array >> - >> - widgets: >> - description: User specified audio sound widgets. >> - $ref: /schemas/types.yaml#/definitions/non-unique-string-array >> - > > These two properties are also valid and supported on all newer > platforms, please keep them here! There are certain use cases where > these are needed independent of the platform, e.g. to control an analog > switch or mux connected to speaker or headphone outputs. > > I agree that it is cleaner to move the IO muxing to a new schema though. > Perhaps we could define something like a shared qcom,sndcard-common.yaml > schema to avoid duplication for these generic properties? In the Linux > driver, these are handled for all platforms in sound/soc/qcom/common.c. This was added to the common driver code but it does not mean it is reasonable binding. I don't understand why for example we even accept here aux-devs, instead of putting them into one of DAI links. The pin-switches and widgets could be used, but are they? The only valid argument to keep them is that you added them to common driver code. Best regards, Krzysztof