[PATCH v9 0/3] Add documentation and machine driver for SC7180 sound card

From: Cheng-Yi Chiang
Date: Fri Sep 11 2020 - 06:23:29 EST

- The machine driver patch is made by the collaboration of
Cheng-Yi Chiang <cychiang@xxxxxxxxxxxx>
Rohit kumar <rohitkr@xxxxxxxxxxxxxx>
Ajit Pandey <ajitp@xxxxxxxxxxxxxx>
But Ajit has left codeaurora.
- This patch series needs HDMI DAI name defined in sc7180-lpass.h.

Changes from v1 to v2:
- Ducumentation: Addressed all suggestions from Doug.
- Machine driver:
- Fix comment style for license.
- Sort includes.
- Remove sc7180_snd_hw_params.
- Remove sc7180_dai_init and use aux device instead for headset jack registration.
- Statically define format for Primary MI2S.
- Atomic is not a concern because there is mutex in card to make sure
startup and shutdown happen sequentially.
- Fix missing return -EINVAL in startup.
- Use static sound card.
- Use devm_kzalloc to avoid kfree.

Changes from v2 to v3:
- Ducumentation: Addressed suggestions from Srini.
- Machine driver:
- Reuse qcom_snd_parse_of to parse properties.
- Remove playback-only and capture-only.
- Misc fixes to address comments.

Changes from v3 to v4:
- Ducumentation: Addressed suggestions from Rob.
- Remove definition of dai.
- Use 'sound-dai: true' for sound-dai schema.
- Add reg property to pass 'make dt_binding_check' check although reg is not used in the driver.
- Machine driver:
- Add Reviewed-by: Tzung-Bi Shih <tzungbi@xxxxxxxxxx>

Changes from v4 to v5:
- Documentation: Addressed suggestions from Rob.
- Add definition for "#address-cells" and "#size-cells".
- Add additionalProperties: false
- Add required properties.

Changes from v5 to v6:
- Documentation: Addressed suggestions from Rob.
- Drop contains in compatible strings.
- Only allow dai-link@[0-9]
- Remove reg ref since it has a type definition already.

Changes from v6 to v7
- Documentation:
- Add headset-jack and hdmi-jack to specify the codec
responsible for jack detection.
- HDMI codec driver:
- Use component set_jack ops instead of exporting hdmi_codec_set_jack_detect.
- Machine driver:
- Removed aux device following Stephan's suggestion.
- Use headset-jack and hdmi-jack to specify the codec
responsible for jack detection.
- Add support for HDMI(actually DP) playback.

Changes from v7 to v8
- Documentation:
- Remove headset-jack and hdmi-jack.
- Machine driver:
- Let machine driver decide whether there is a jack on the DAI.

Changes from v8 to v9
- hdmi-codec driver:
- Fixed the naming.
- Machine driver:
- Fixed unused fields.
- Moved snd_soc_card_set_drvdata
- Keep the naming of HDMI as dai name until v5 of lpass-hdmi patches.

Ajit Pandey (1):
ASoC: qcom: sc7180: Add machine driver for sound card registration

Cheng-Yi Chiang (2):
ASoC: hdmi-codec: Use set_jack ops to set jack
ASoC: qcom: dt-bindings: Add sc7180 machine bindings

.../bindings/sound/qcom,sc7180.yaml | 130 +++++++++
include/sound/hdmi-codec.h | 3 -
sound/soc/codecs/hdmi-codec.c | 12 +-
sound/soc/mediatek/mt8173/mt8173-rt5650.c | 5 +-
.../mediatek/mt8183/mt8183-da7219-max98357.c | 5 +-
.../mt8183/mt8183-mt6358-ts3a227-max98357.c | 5 +-
sound/soc/qcom/Kconfig | 12 +
sound/soc/qcom/Makefile | 2 +
sound/soc/qcom/sc7180.c | 267 ++++++++++++++++++
sound/soc/rockchip/rockchip_max98090.c | 3 +-
10 files changed, 422 insertions(+), 22 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/qcom,sc7180.yaml
create mode 100644 sound/soc/qcom/sc7180.c