[PATCH v2 1/2] dt-bindings: sound: ep93xx: Add I2S description
Add device tree bindings for Cirrus Logic EP93xx internal SoCs' I2S controller.
Signed-off-by: Alexander Sverdlin alexander.sverdlin@gmail.com --- Changelog: v2: - Incorporated most of the suggestions from Krzysztof Kozlowski [1] - Dropped AC97 (deleted from the tree)
[1]. https://lore.kernel.org/lkml/46d5b6af-23e1-4178-83bc-b4a435b1426e@linaro.org...
.../bindings/sound/cirrus,ep9301-i2s.yaml | 66 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 67 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml
diff --git a/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml new file mode 100644 index 000000000000..9c01310a5445 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/cirrus,ep9301-i2s.yaml @@ -0,0 +1,66 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/cirrus,ep9301-i2s.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Cirrus EP93xx I2S Controller + +description: | + The I2S controller is used to stream serial audio data between the external + I2S CODECs’, ADCs/DACs, and the ARM Core. The controller supports I2S, Left- + and Right-Justified DSP formats. + +maintainers: + - Alexander Sverdlin alexander.sverdlin@gmail.com + +allOf: + - $ref: dai-common.yaml# + +properties: + compatible: + const: cirrus,ep9301-i2s + + '#sound-dai-cells': + const: 0 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 3 + maxItems: 3 + + clock-names: + items: + - const: mclk + - const: sclk + - const: lrclk + +required: + - compatible + - '#sound-dai-cells' + - reg + - clocks + - clock-names + +additionalProperties: false + +examples: + - | + i2s: i2s@80820000 { + compatible = "cirrus,ep9301-i2s"; + #sound-dai-cells = <0>; + reg = <0x80820000 0x100>; + interrupt-parent = <&vic1>; + interrupts = <28>; + clocks = <&syscon 29>, + <&syscon 30>, + <&syscon 31>; + clock-names = "mclk", "sclk", "lrclk"; + }; + +... diff --git a/MAINTAINERS b/MAINTAINERS index 4485969f58f1..da829bedb89b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2072,6 +2072,7 @@ M: Alexander Sverdlin alexander.sverdlin@gmail.com L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) S: Maintained F: Documentation/devicetree/bindings/iio/adc/cirrus,ep9301-adc.yaml +F: Documentation/devicetree/bindings/sound/cirrus,ep9301-* F: arch/arm/boot/compressed/misc-ep93xx.h F: arch/arm/mach-ep93xx/ F: drivers/iio/adc/ep93xx_adc.c
Add the new cirrus,ep9301-ac97 and cirrus,ep9301-i2s compatibles.
Signed-off-by: Alexander Sverdlin alexander.sverdlin@gmail.com --- Changelog: v2: - Dropped AC97 (deleted from the tree)
sound/soc/cirrus/ep93xx-i2s.c | 8 ++++++++ 2 files changed, 16 insertions(+)
diff --git a/sound/soc/cirrus/ep93xx-i2s.c b/sound/soc/cirrus/ep93xx-i2s.c index 0e396bff147b..bbbb1065b2f1 100644 --- a/sound/soc/cirrus/ep93xx-i2s.c +++ b/sound/soc/cirrus/ep93xx-i2s.c @@ -15,6 +15,7 @@ #include <linux/slab.h> #include <linux/clk.h> #include <linux/io.h> +#include <linux/of.h>
#include <sound/core.h> #include <sound/dmaengine_pcm.h> @@ -515,11 +516,18 @@ static int ep93xx_i2s_remove(struct platform_device *pdev) return 0; }
+static const struct of_device_id ep93xx_i2s_of_ids[] = { + { .compatible = "cirrus,ep9301-i2s" }, + {} +}; +MODULE_DEVICE_TABLE(of, ep93xx_i2s_of_ids); + static struct platform_driver ep93xx_i2s_driver = { .probe = ep93xx_i2s_probe, .remove = ep93xx_i2s_remove, .driver = { .name = "ep93xx-i2s", + .of_match_table = ep93xx_i2s_of_ids, }, };
On 11/04/2023 00:29, Alexander Sverdlin wrote:
Add device tree bindings for Cirrus Logic EP93xx internal SoCs' I2S controller.
Signed-off-by: Alexander Sverdlin alexander.sverdlin@gmail.com
Changelog:
Reviewed-by: Krzysztof Kozlowski krzysztof.kozlowski@linaro.org
Best regards, Krzysztof
On Tue, 11 Apr 2023 00:29:57 +0200, Alexander Sverdlin wrote:
Add device tree bindings for Cirrus Logic EP93xx internal SoCs' I2S controller.
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/2] dt-bindings: sound: ep93xx: Add I2S description (no commit info) [2/2] ASoC: ep93xx: Add OF support commit: b599a4d7d905a8e8cf5c36ccae0b3dd97c956075
All being well this means that it will be integrated into the linux-next tree (usually sometime in the next 24 hours) and sent to Linus during the next merge window (or sooner if it is a bug fix), however if problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing and review of the tree, please engage with people reporting problems and send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they should be sent as incremental updates against current git, existing patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying to this mail.
Thanks, Mark
participants (3)
-
Alexander Sverdlin
-
Krzysztof Kozlowski
-
Mark Brown