Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: Update Tegra194 and Tegra234 HDA bindings

- Tegra194 and Tegra234 HDA is not compatible with Tegra30, hence update
them as standalone compatibles. Also, add necessary logic to the binding
doc as HDA clocks and resets for Tegra194 and Tegra234 are different from
Tegra30. This fixes below dtbs_check errors:
- compatible: 'oneOf' conditional failed, one must be fixed:
['nvidia,tegra194-hda'] is too short
'nvidia,tegra30-hda' was expected
'nvidia,tegra132-hda' was expected
- compatible: 'oneOf' conditional failed, one must be fixed:
['nvidia,tegra234-hda'] is too short
'nvidia,tegra30-hda' was expected
'nvidia,tegra132-hda' was expected
- hda@3510000: clock-names:1: 'hda2hdmi' was expected
- hda@3510000: reset-names:1: 'hda2hdmi' was expected

Signed-off-by: Sheetal <sheetal@nvidia.com>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20250512064258.1028331-2-sheetal@nvidia.com

authored by

Sheetal and committed by
Takashi Iwai
494475e5 eef5bccf

+72 -11
+72 -11
Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
··· 20 20 21 21 compatible: 22 22 oneOf: 23 - - const: nvidia,tegra30-hda 23 + - enum: 24 + - nvidia,tegra30-hda 25 + - nvidia,tegra194-hda 26 + - nvidia,tegra234-hda 24 27 - items: 25 28 - enum: 26 - - nvidia,tegra234-hda 27 - - nvidia,tegra194-hda 28 29 - nvidia,tegra186-hda 29 30 - nvidia,tegra210-hda 30 31 - nvidia,tegra124-hda ··· 49 48 50 49 clock-names: 51 50 minItems: 2 52 - items: 53 - - const: hda 54 - - const: hda2hdmi 55 - - const: hda2codec_2x 51 + maxItems: 3 56 52 57 53 resets: 58 54 minItems: 2 ··· 57 59 58 60 reset-names: 59 61 minItems: 2 60 - items: 61 - - const: hda 62 - - const: hda2hdmi 63 - - const: hda2codec_2x 62 + maxItems: 3 64 63 65 64 power-domains: 66 65 maxItems: 1 ··· 87 92 - clock-names 88 93 89 94 additionalProperties: false 95 + 96 + allOf: 97 + - if: 98 + properties: 99 + compatible: 100 + contains: 101 + enum: 102 + - nvidia,tegra30-hda 103 + then: 104 + properties: 105 + clocks: 106 + minItems: 3 107 + clock-names: 108 + items: 109 + - const: hda 110 + - const: hda2hdmi 111 + - const: hda2codec_2x 112 + resets: 113 + minItems: 3 114 + reset-names: 115 + items: 116 + - const: hda 117 + - const: hda2hdmi 118 + - const: hda2codec_2x 119 + - if: 120 + properties: 121 + compatible: 122 + contains: 123 + enum: 124 + - nvidia,tegra194-hda 125 + then: 126 + properties: 127 + clocks: 128 + minItems: 3 129 + clock-names: 130 + items: 131 + - const: hda 132 + - const: hda2hdmi 133 + - const: hda2codec_2x 134 + resets: 135 + maxItems: 2 136 + reset-names: 137 + items: 138 + - const: hda 139 + - const: hda2hdmi 140 + - if: 141 + properties: 142 + compatible: 143 + contains: 144 + enum: 145 + - nvidia,tegra234-hda 146 + then: 147 + properties: 148 + clocks: 149 + minItems: 2 150 + maxItems: 2 151 + clock-names: 152 + items: 153 + - const: hda 154 + - const: hda2codec_2x 155 + resets: 156 + maxItems: 2 157 + reset-names: 158 + items: 159 + - const: hda 160 + - const: hda2codec_2x 90 161 91 162 examples: 92 163 - |