linux-tegra.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] HDA: Add Tegra264 support
@ 2025-05-12  6:42 Sheetal .
  2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Sheetal . @ 2025-05-12  6:42 UTC (permalink / raw)
  To: lgirdwood, broonie, robh, krzk+dt, conor+dt
  Cc: linux-sound, devicetree, linux-tegra, linux-kernel,
	thierry.reding, jonathanh, perex, tiwai, Sheetal

From: Sheetal <sheetal@nvidia.com>

The patch series is to add support for Tegra264 in HDA driver.

Mohan Kumar D (1):
  ALSA: hda/tegra: Add Tegra264 support

Sheetal (2):
  dt-bindings: hda: Update Tegra compatible requirements
  dt-bindings: Document Tegra264 HDA Support

 .../bindings/sound/nvidia,tegra30-hda.yaml    | 108 +++++++++++++++---
 sound/pci/hda/hda_tegra.c                     |  51 ++++++++-
 sound/pci/hda/patch_hdmi.c                    |   1 +
 3 files changed, 141 insertions(+), 19 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings
  2025-05-12  6:42 [PATCH 0/2] HDA: Add Tegra264 support Sheetal .
@ 2025-05-12  6:42 ` Sheetal .
  2025-05-14 21:49   ` Rob Herring
  2025-05-14 21:50   ` Rob Herring (Arm)
  2025-05-12  6:42 ` [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support Sheetal .
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 9+ messages in thread
From: Sheetal . @ 2025-05-12  6:42 UTC (permalink / raw)
  To: lgirdwood, broonie, robh, krzk+dt, conor+dt
  Cc: linux-sound, devicetree, linux-tegra, linux-kernel,
	thierry.reding, jonathanh, perex, tiwai, Sheetal

From: Sheetal <sheetal@nvidia.com>

- 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>
---
 .../bindings/sound/nvidia,tegra30-hda.yaml    | 83 ++++++++++++++++---
 1 file changed, 72 insertions(+), 11 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
index 3ca9affb79a2..703f009862a4 100644
--- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
@@ -20,11 +20,12 @@ properties:
 
   compatible:
     oneOf:
-      - const: nvidia,tegra30-hda
+      - enum:
+          - nvidia,tegra30-hda
+          - nvidia,tegra194-hda
+          - nvidia,tegra234-hda
       - items:
           - enum:
-              - nvidia,tegra234-hda
-              - nvidia,tegra194-hda
               - nvidia,tegra186-hda
               - nvidia,tegra210-hda
               - nvidia,tegra124-hda
@@ -48,10 +49,7 @@ properties:
 
   clock-names:
     minItems: 2
-    items:
-      - const: hda
-      - const: hda2hdmi
-      - const: hda2codec_2x
+    maxItems: 3
 
   resets:
     minItems: 2
@@ -59,10 +57,7 @@ properties:
 
   reset-names:
     minItems: 2
-    items:
-      - const: hda
-      - const: hda2hdmi
-      - const: hda2codec_2x
+    maxItems: 3
 
   power-domains:
     maxItems: 1
@@ -93,6 +88,72 @@ required:
 
 additionalProperties: false
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - nvidia,tegra30-hda
+    then:
+      properties:
+        clocks:
+          minItems: 3
+        clock-names:
+          items:
+            - const: hda
+            - const: hda2hdmi
+            - const: hda2codec_2x
+        resets:
+          minItems: 3
+        reset-names:
+          items:
+            - const: hda
+            - const: hda2hdmi
+            - const: hda2codec_2x
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - nvidia,tegra194-hda
+    then:
+      properties:
+        clocks:
+          minItems: 3
+        clock-names:
+          items:
+            - const: hda
+            - const: hda2hdmi
+            - const: hda2codec_2x
+        resets:
+          maxItems: 2
+        reset-names:
+          items:
+            - const: hda
+            - const: hda2hdmi
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - nvidia,tegra234-hda
+    then:
+      properties:
+        clocks:
+          minItems: 2
+          maxItems: 2
+        clock-names:
+          items:
+            - const: hda
+            - const: hda2codec_2x
+        resets:
+          maxItems: 2
+        reset-names:
+          items:
+            - const: hda
+            - const: hda2codec_2x
+
 examples:
   - |
     #include<dt-bindings/clock/tegra124-car-common.h>
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support
  2025-05-12  6:42 [PATCH 0/2] HDA: Add Tegra264 support Sheetal .
  2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
@ 2025-05-12  6:42 ` Sheetal .
  2025-05-14 21:52   ` Rob Herring (Arm)
  2025-05-12  6:42 ` [PATCH 3/3] ALSA: hda/tegra: Add Tegra264 support Sheetal .
  2025-05-15 10:48 ` [PATCH 0/2] HDA: " Takashi Iwai
  3 siblings, 1 reply; 9+ messages in thread
From: Sheetal . @ 2025-05-12  6:42 UTC (permalink / raw)
  To: lgirdwood, broonie, robh, krzk+dt, conor+dt
  Cc: linux-sound, devicetree, linux-tegra, linux-kernel,
	thierry.reding, jonathanh, perex, tiwai, Sheetal

From: Sheetal <sheetal@nvidia.com>

For Tegra264 device there is one clock, two resets and no power-domain.
Add the Tegra264 compatible and necessary logic to the binding doc to
determine appropriate clocks, resets and power-domain properties based
on the compatible string.

Signed-off-by: Sheetal <sheetal@nvidia.com>
---
 .../bindings/sound/nvidia,tegra30-hda.yaml    | 25 +++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
index 703f009862a4..8a8767589ee0 100644
--- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
+++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
@@ -24,6 +24,7 @@ properties:
           - nvidia,tegra30-hda
           - nvidia,tegra194-hda
           - nvidia,tegra234-hda
+          - nvidia,tegra264-hda
       - items:
           - enum:
               - nvidia,tegra186-hda
@@ -44,11 +45,11 @@ properties:
     maxItems: 1
 
   clocks:
-    minItems: 2
+    minItems: 1
     maxItems: 3
 
   clock-names:
-    minItems: 2
+    minItems: 1
     maxItems: 3
 
   resets:
@@ -153,6 +154,26 @@ allOf:
           items:
             - const: hda
             - const: hda2codec_2x
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - nvidia,tegra264-hda
+    then:
+      properties:
+        clocks:
+          maxItems: 1
+        clock-names:
+          items:
+            - const: hda
+        resets:
+          maxItems: 2
+        reset-names:
+          items:
+            - const: hda
+            - const: hda2codec_2x
+        power-domains: false
 
 examples:
   - |
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/3] ALSA: hda/tegra: Add Tegra264 support
  2025-05-12  6:42 [PATCH 0/2] HDA: Add Tegra264 support Sheetal .
  2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
  2025-05-12  6:42 ` [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support Sheetal .
@ 2025-05-12  6:42 ` Sheetal .
  2025-05-15 10:48 ` [PATCH 0/2] HDA: " Takashi Iwai
  3 siblings, 0 replies; 9+ messages in thread
From: Sheetal . @ 2025-05-12  6:42 UTC (permalink / raw)
  To: lgirdwood, broonie, robh, krzk+dt, conor+dt
  Cc: linux-sound, devicetree, linux-tegra, linux-kernel,
	thierry.reding, jonathanh, perex, tiwai, Mohan Kumar D, Sheetal

From: Mohan Kumar D <mkumard@nvidia.com>

Update HDA driver to support Tegra264 differences from legacy HDA,
which includes: clocks/resets, always power on, and hardware-managed
FPCI/IPFS initialization. The driver retrieves this chip-specific
information from soc_data.

Signed-off-by: Mohan Kumar D <mkumard@nvidia.com>
Signed-off-by: Sheetal <sheetal@nvidia.com>
---
 sound/pci/hda/hda_tegra.c  | 51 +++++++++++++++++++++++++++++++++-----
 sound/pci/hda/patch_hdmi.c |  1 +
 2 files changed, 46 insertions(+), 6 deletions(-)

diff --git a/sound/pci/hda/hda_tegra.c b/sound/pci/hda/hda_tegra.c
index a590d431c5ff..8c0dd439f5a5 100644
--- a/sound/pci/hda/hda_tegra.c
+++ b/sound/pci/hda/hda_tegra.c
@@ -72,6 +72,10 @@
 struct hda_tegra_soc {
 	bool has_hda2codec_2x_reset;
 	bool has_hda2hdmi;
+	bool has_hda2codec_2x;
+	bool input_stream;
+	bool always_on;
+	bool requires_init;
 };
 
 struct hda_tegra {
@@ -187,7 +191,9 @@ static int hda_tegra_runtime_resume(struct device *dev)
 	if (rc != 0)
 		return rc;
 	if (chip->running) {
-		hda_tegra_init(hda);
+		if (hda->soc->requires_init)
+			hda_tegra_init(hda);
+
 		azx_init_chip(chip, 1);
 		/* disable controller wake up event*/
 		azx_writew(chip, WAKEEN, azx_readw(chip, WAKEEN) &
@@ -250,7 +256,8 @@ static int hda_tegra_init_chip(struct azx *chip, struct platform_device *pdev)
 	bus->remap_addr = hda->regs + HDA_BAR0;
 	bus->addr = res->start + HDA_BAR0;
 
-	hda_tegra_init(hda);
+	if (hda->soc->requires_init)
+		hda_tegra_init(hda);
 
 	return 0;
 }
@@ -323,7 +330,7 @@ static int hda_tegra_first_init(struct azx *chip, struct platform_device *pdev)
 	 * starts with offset 0 which is wrong as HW register for output stream
 	 * offset starts with 4.
 	 */
-	if (of_device_is_compatible(np, "nvidia,tegra234-hda"))
+	if (!hda->soc->input_stream)
 		chip->capture_streams = 4;
 
 	chip->playback_streams = (gcap >> 12) & 0x0f;
@@ -419,7 +426,6 @@ static int hda_tegra_create(struct snd_card *card,
 	chip->driver_caps = driver_caps;
 	chip->driver_type = driver_caps & 0xff;
 	chip->dev_index = 0;
-	chip->jackpoll_interval = msecs_to_jiffies(5000);
 	INIT_LIST_HEAD(&chip->pcm_list);
 
 	chip->codec_probe_mask = -1;
@@ -436,7 +442,16 @@ static int hda_tegra_create(struct snd_card *card,
 	chip->bus.core.sync_write = 0;
 	chip->bus.core.needs_damn_long_delay = 1;
 	chip->bus.core.aligned_mmio = 1;
-	chip->bus.jackpoll_in_suspend = 1;
+
+	/*
+	 * HDA power domain and clocks are always on for Tegra264 and
+	 * the jack detection logic would work always, so no need of
+	 * jack polling mechanism running.
+	 */
+	if (!hda->soc->always_on) {
+		chip->jackpoll_interval = msecs_to_jiffies(5000);
+		chip->bus.jackpoll_in_suspend = 1;
+	}
 
 	err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops);
 	if (err < 0) {
@@ -450,22 +465,44 @@ static int hda_tegra_create(struct snd_card *card,
 static const struct hda_tegra_soc tegra30_data = {
 	.has_hda2codec_2x_reset = true,
 	.has_hda2hdmi = true,
+	.has_hda2codec_2x = true,
+	.input_stream = true,
+	.always_on = false,
+	.requires_init = true,
 };
 
 static const struct hda_tegra_soc tegra194_data = {
 	.has_hda2codec_2x_reset = false,
 	.has_hda2hdmi = true,
+	.has_hda2codec_2x = true,
+	.input_stream = true,
+	.always_on = false,
+	.requires_init = true,
 };
 
 static const struct hda_tegra_soc tegra234_data = {
 	.has_hda2codec_2x_reset = true,
 	.has_hda2hdmi = false,
+	.has_hda2codec_2x = true,
+	.input_stream = false,
+	.always_on = false,
+	.requires_init = true,
+};
+
+static const struct hda_tegra_soc tegra264_data = {
+	.has_hda2codec_2x_reset = true,
+	.has_hda2hdmi = false,
+	.has_hda2codec_2x = false,
+	.input_stream = false,
+	.always_on = true,
+	.requires_init = false,
 };
 
 static const struct of_device_id hda_tegra_match[] = {
 	{ .compatible = "nvidia,tegra30-hda", .data = &tegra30_data },
 	{ .compatible = "nvidia,tegra194-hda", .data = &tegra194_data },
 	{ .compatible = "nvidia,tegra234-hda", .data = &tegra234_data },
+	{ .compatible = "nvidia,tegra264-hda", .data = &tegra264_data },
 	{},
 };
 MODULE_DEVICE_TABLE(of, hda_tegra_match);
@@ -520,7 +557,9 @@ static int hda_tegra_probe(struct platform_device *pdev)
 	hda->clocks[hda->nclocks++].id = "hda";
 	if (hda->soc->has_hda2hdmi)
 		hda->clocks[hda->nclocks++].id = "hda2hdmi";
-	hda->clocks[hda->nclocks++].id = "hda2codec_2x";
+
+	if (hda->soc->has_hda2codec_2x)
+		hda->clocks[hda->nclocks++].id = "hda2codec_2x";
 
 	err = devm_clk_bulk_get(&pdev->dev, hda->nclocks, hda->clocks);
 	if (err < 0)
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 7167989a8d86..6c860fda6648 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -4551,6 +4551,7 @@ HDA_CODEC_ENTRY(0x10de002e, "Tegra186 HDMI/DP1", patch_tegra_hdmi),
 HDA_CODEC_ENTRY(0x10de002f, "Tegra194 HDMI/DP2", patch_tegra_hdmi),
 HDA_CODEC_ENTRY(0x10de0030, "Tegra194 HDMI/DP3", patch_tegra_hdmi),
 HDA_CODEC_ENTRY(0x10de0031, "Tegra234 HDMI/DP", patch_tegra234_hdmi),
+HDA_CODEC_ENTRY(0x10de0034, "Tegra264 HDMI/DP",	patch_tegra234_hdmi),
 HDA_CODEC_ENTRY(0x10de0040, "GPU 40 HDMI/DP",	patch_nvhdmi),
 HDA_CODEC_ENTRY(0x10de0041, "GPU 41 HDMI/DP",	patch_nvhdmi),
 HDA_CODEC_ENTRY(0x10de0042, "GPU 42 HDMI/DP",	patch_nvhdmi),
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings
  2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
@ 2025-05-14 21:49   ` Rob Herring
  2025-05-15  5:24     ` Sheetal .
  2025-05-14 21:50   ` Rob Herring (Arm)
  1 sibling, 1 reply; 9+ messages in thread
From: Rob Herring @ 2025-05-14 21:49 UTC (permalink / raw)
  To: Sheetal .
  Cc: lgirdwood, broonie, krzk+dt, conor+dt, linux-sound, devicetree,
	linux-tegra, linux-kernel, thierry.reding, jonathanh, perex,
	tiwai

On Mon, May 12, 2025 at 06:42:56AM +0000, Sheetal . wrote:
> From: Sheetal <sheetal@nvidia.com>

Needs a 'ASoC' subject prefix on both patches.

> 
> - 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>
> ---
>  .../bindings/sound/nvidia,tegra30-hda.yaml    | 83 ++++++++++++++++---
>  1 file changed, 72 insertions(+), 11 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
> index 3ca9affb79a2..703f009862a4 100644
> --- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
> +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
> @@ -20,11 +20,12 @@ properties:
>  
>    compatible:
>      oneOf:
> -      - const: nvidia,tegra30-hda
> +      - enum:
> +          - nvidia,tegra30-hda
> +          - nvidia,tegra194-hda
> +          - nvidia,tegra234-hda
>        - items:
>            - enum:
> -              - nvidia,tegra234-hda
> -              - nvidia,tegra194-hda
>                - nvidia,tegra186-hda
>                - nvidia,tegra210-hda
>                - nvidia,tegra124-hda
> @@ -48,10 +49,7 @@ properties:
>  
>    clock-names:
>      minItems: 2
> -    items:
> -      - const: hda
> -      - const: hda2hdmi
> -      - const: hda2codec_2x
> +    maxItems: 3
>  
>    resets:
>      minItems: 2
> @@ -59,10 +57,7 @@ properties:
>  
>    reset-names:
>      minItems: 2
> -    items:
> -      - const: hda
> -      - const: hda2hdmi
> -      - const: hda2codec_2x
> +    maxItems: 3
>  
>    power-domains:
>      maxItems: 1
> @@ -93,6 +88,72 @@ required:
>  
>  additionalProperties: false
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - nvidia,tegra30-hda
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 3
> +        clock-names:
> +          items:
> +            - const: hda
> +            - const: hda2hdmi
> +            - const: hda2codec_2x
> +        resets:
> +          minItems: 3
> +        reset-names:
> +          items:
> +            - const: hda
> +            - const: hda2hdmi
> +            - const: hda2codec_2x
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - nvidia,tegra194-hda
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 3
> +        clock-names:
> +          items:
> +            - const: hda
> +            - const: hda2hdmi
> +            - const: hda2codec_2x
> +        resets:
> +          maxItems: 2
> +        reset-names:
> +          items:
> +            - const: hda
> +            - const: hda2hdmi
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - nvidia,tegra234-hda
> +    then:
> +      properties:
> +        clocks:
> +          minItems: 2
> +          maxItems: 2
> +        clock-names:
> +          items:
> +            - const: hda
> +            - const: hda2codec_2x
> +        resets:
> +          maxItems: 2
> +        reset-names:
> +          items:
> +            - const: hda
> +            - const: hda2codec_2x
> +
>  examples:
>    - |
>      #include<dt-bindings/clock/tegra124-car-common.h>
> -- 
> 2.17.1
> 

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings
  2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
  2025-05-14 21:49   ` Rob Herring
@ 2025-05-14 21:50   ` Rob Herring (Arm)
  1 sibling, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-05-14 21:50 UTC (permalink / raw)
  To: Sheetal .
  Cc: linux-tegra, conor+dt, linux-kernel, thierry.reding, perex, tiwai,
	devicetree, broonie, jonathanh, lgirdwood, krzk+dt, linux-sound


On Mon, 12 May 2025 06:42:56 +0000, Sheetal . wrote:
> From: Sheetal <sheetal@nvidia.com>
> 
> - 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>
> ---
>  .../bindings/sound/nvidia,tegra30-hda.yaml    | 83 ++++++++++++++++---
>  1 file changed, 72 insertions(+), 11 deletions(-)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support
  2025-05-12  6:42 ` [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support Sheetal .
@ 2025-05-14 21:52   ` Rob Herring (Arm)
  0 siblings, 0 replies; 9+ messages in thread
From: Rob Herring (Arm) @ 2025-05-14 21:52 UTC (permalink / raw)
  To: Sheetal .
  Cc: linux-sound, broonie, krzk+dt, linux-kernel, devicetree,
	thierry.reding, jonathanh, perex, conor+dt, lgirdwood,
	linux-tegra, tiwai


On Mon, 12 May 2025 06:42:57 +0000, Sheetal . wrote:
> From: Sheetal <sheetal@nvidia.com>
> 
> For Tegra264 device there is one clock, two resets and no power-domain.
> Add the Tegra264 compatible and necessary logic to the binding doc to
> determine appropriate clocks, resets and power-domain properties based
> on the compatible string.
> 
> Signed-off-by: Sheetal <sheetal@nvidia.com>
> ---
>  .../bindings/sound/nvidia,tegra30-hda.yaml    | 25 +++++++++++++++++--
>  1 file changed, 23 insertions(+), 2 deletions(-)
> 

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings
  2025-05-14 21:49   ` Rob Herring
@ 2025-05-15  5:24     ` Sheetal .
  0 siblings, 0 replies; 9+ messages in thread
From: Sheetal . @ 2025-05-15  5:24 UTC (permalink / raw)
  To: Rob Herring
  Cc: lgirdwood, broonie, krzk+dt, conor+dt, linux-sound, devicetree,
	linux-tegra, linux-kernel, thierry.reding, jonathanh, perex,
	tiwai



On 15-05-2025 03:19, Rob Herring wrote:
> External email: Use caution opening links or attachments
> 
> 
> On Mon, May 12, 2025 at 06:42:56AM +0000, Sheetal . wrote:
>> From: Sheetal <sheetal@nvidia.com>
> 
> Needs a 'ASoC' subject prefix on both patches.

ASoC prefix shouldn't be used here as HDA driver is not under sound/soc.

> 
>>
>> - 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>
>> ---
>>   .../bindings/sound/nvidia,tegra30-hda.yaml    | 83 ++++++++++++++++---
>>   1 file changed, 72 insertions(+), 11 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
>> index 3ca9affb79a2..703f009862a4 100644
>> --- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
>> +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.yaml
>> @@ -20,11 +20,12 @@ properties:
>>
>>     compatible:
>>       oneOf:
>> -      - const: nvidia,tegra30-hda
>> +      - enum:
>> +          - nvidia,tegra30-hda
>> +          - nvidia,tegra194-hda
>> +          - nvidia,tegra234-hda
>>         - items:
>>             - enum:
>> -              - nvidia,tegra234-hda
>> -              - nvidia,tegra194-hda
>>                 - nvidia,tegra186-hda
>>                 - nvidia,tegra210-hda
>>                 - nvidia,tegra124-hda
>> @@ -48,10 +49,7 @@ properties:
>>
>>     clock-names:
>>       minItems: 2
>> -    items:
>> -      - const: hda
>> -      - const: hda2hdmi
>> -      - const: hda2codec_2x
>> +    maxItems: 3
>>
>>     resets:
>>       minItems: 2
>> @@ -59,10 +57,7 @@ properties:
>>
>>     reset-names:
>>       minItems: 2
>> -    items:
>> -      - const: hda
>> -      - const: hda2hdmi
>> -      - const: hda2codec_2x
>> +    maxItems: 3
>>
>>     power-domains:
>>       maxItems: 1
>> @@ -93,6 +88,72 @@ required:
>>
>>   additionalProperties: false
>>
>> +allOf:
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - nvidia,tegra30-hda
>> +    then:
>> +      properties:
>> +        clocks:
>> +          minItems: 3
>> +        clock-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2hdmi
>> +            - const: hda2codec_2x
>> +        resets:
>> +          minItems: 3
>> +        reset-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2hdmi
>> +            - const: hda2codec_2x
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - nvidia,tegra194-hda
>> +    then:
>> +      properties:
>> +        clocks:
>> +          minItems: 3
>> +        clock-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2hdmi
>> +            - const: hda2codec_2x
>> +        resets:
>> +          maxItems: 2
>> +        reset-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2hdmi
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - nvidia,tegra234-hda
>> +    then:
>> +      properties:
>> +        clocks:
>> +          minItems: 2
>> +          maxItems: 2
>> +        clock-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2codec_2x
>> +        resets:
>> +          maxItems: 2
>> +        reset-names:
>> +          items:
>> +            - const: hda
>> +            - const: hda2codec_2x
>> +
>>   examples:
>>     - |
>>       #include<dt-bindings/clock/tegra124-car-common.h>
>> --
>> 2.17.1
>>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 0/2] HDA: Add Tegra264 support
  2025-05-12  6:42 [PATCH 0/2] HDA: Add Tegra264 support Sheetal .
                   ` (2 preceding siblings ...)
  2025-05-12  6:42 ` [PATCH 3/3] ALSA: hda/tegra: Add Tegra264 support Sheetal .
@ 2025-05-15 10:48 ` Takashi Iwai
  3 siblings, 0 replies; 9+ messages in thread
From: Takashi Iwai @ 2025-05-15 10:48 UTC (permalink / raw)
  To: Sheetal .
  Cc: lgirdwood, broonie, robh, krzk+dt, conor+dt, linux-sound,
	devicetree, linux-tegra, linux-kernel, thierry.reding, jonathanh,
	perex, tiwai

On Mon, 12 May 2025 08:42:55 +0200,
Sheetal . wrote:
> 
> From: Sheetal <sheetal@nvidia.com>
> 
> The patch series is to add support for Tegra264 in HDA driver.
> 
> Mohan Kumar D (1):
>   ALSA: hda/tegra: Add Tegra264 support
> 
> Sheetal (2):
>   dt-bindings: hda: Update Tegra compatible requirements
>   dt-bindings: Document Tegra264 HDA Support

Applied all patches now to for-next branch.


thanks,

Takashi

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-05-15 10:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-12  6:42 [PATCH 0/2] HDA: Add Tegra264 support Sheetal .
2025-05-12  6:42 ` [PATCH 1/3] dt-bindings: Update Tegra194 and Tegra234 HDA bindings Sheetal .
2025-05-14 21:49   ` Rob Herring
2025-05-15  5:24     ` Sheetal .
2025-05-14 21:50   ` Rob Herring (Arm)
2025-05-12  6:42 ` [PATCH 2/3] dt-bindings: Document Tegra264 HDA Support Sheetal .
2025-05-14 21:52   ` Rob Herring (Arm)
2025-05-12  6:42 ` [PATCH 3/3] ALSA: hda/tegra: Add Tegra264 support Sheetal .
2025-05-15 10:48 ` [PATCH 0/2] HDA: " Takashi Iwai

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).