Loading Documentation/devicetree/bindings/sound/omap-mcpdm.txt +10 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ Required properties: - interrupts: Interrupt number for McPDM - interrupt-parent: The parent interrupt controller - ti,hwmods: Name of the hwmod associated to the McPDM - clocks: phandle for the pdmclk provider, likely <&twl6040> - clock-names: Must be "pdmclk" Example: Loading @@ -19,3 +21,11 @@ mcpdm: mcpdm@40132000 { interrupt-parent = <&gic>; ti,hwmods = "mcpdm"; }; In board DTS file the pdmclk needs to be added: &mcpdm { clocks = <&twl6040>; clock-names = "pdmclk"; status = "okay"; }; Documentation/devicetree/bindings/sound/renesas,rsnd.txt +2 −0 Original line number Diff line number Diff line Loading @@ -373,6 +373,8 @@ Optional properties: - #clock-cells : it must be 0 if your system has audio_clkout it must be 1 if your system has audio_clkout0/1/2/3 - clock-frequency : for all audio_clkout0/1/2/3 - clkout-lr-asynchronous : boolean property. it indicates that audio_clkoutn is asynchronizes with lr-clock. SSI subnode properties: - interrupts : Should contain SSI interrupt for PIO transfer Loading Documentation/devicetree/bindings/sound/rockchip-i2s.txt +5 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,11 @@ Required properties: - rockchip,playback-channels: max playback channels, if not set, 8 channels default. - rockchip,capture-channels: max capture channels, if not set, 2 channels default. Required properties for controller which support multi channels playback/capture: - rockchip,grf: the phandle of the syscon node for GRF register. Example for rk3288 I2S controller: i2s@ff890000 { Loading include/sound/simple_card.h +1 −10 Original line number Diff line number Diff line Loading @@ -13,16 +13,7 @@ #define __SIMPLE_CARD_H #include <sound/soc.h> struct asoc_simple_dai { const char *name; unsigned int sysclk; int slots; int slot_width; unsigned int tx_slot_mask; unsigned int rx_slot_mask; struct clk *clk; }; #include <sound/simple_card_utils.h> struct asoc_simple_card_info { const char *name; Loading include/sound/simple_card_utils.h 0 → 100644 +36 −0 Original line number Diff line number Diff line /* * simple_card_core.h * * Copyright (c) 2016 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __SIMPLE_CARD_CORE_H #define __SIMPLE_CARD_CORE_H #include <sound/soc.h> struct asoc_simple_dai { const char *name; unsigned int sysclk; int slots; int slot_width; unsigned int tx_slot_mask; unsigned int rx_slot_mask; struct clk *clk; }; int asoc_simple_card_parse_daifmt(struct device *dev, struct device_node *node, struct device_node *codec, char *prefix, unsigned int *retfmt); int asoc_simple_card_set_dailink_name(struct device *dev, struct snd_soc_dai_link *dai_link, const char *fmt, ...); int asoc_simple_card_parse_card_name(struct snd_soc_card *card, char *prefix); #endif /* __SIMPLE_CARD_CORE_H */ Loading
Documentation/devicetree/bindings/sound/omap-mcpdm.txt +10 −0 Original line number Diff line number Diff line Loading @@ -8,6 +8,8 @@ Required properties: - interrupts: Interrupt number for McPDM - interrupt-parent: The parent interrupt controller - ti,hwmods: Name of the hwmod associated to the McPDM - clocks: phandle for the pdmclk provider, likely <&twl6040> - clock-names: Must be "pdmclk" Example: Loading @@ -19,3 +21,11 @@ mcpdm: mcpdm@40132000 { interrupt-parent = <&gic>; ti,hwmods = "mcpdm"; }; In board DTS file the pdmclk needs to be added: &mcpdm { clocks = <&twl6040>; clock-names = "pdmclk"; status = "okay"; };
Documentation/devicetree/bindings/sound/renesas,rsnd.txt +2 −0 Original line number Diff line number Diff line Loading @@ -373,6 +373,8 @@ Optional properties: - #clock-cells : it must be 0 if your system has audio_clkout it must be 1 if your system has audio_clkout0/1/2/3 - clock-frequency : for all audio_clkout0/1/2/3 - clkout-lr-asynchronous : boolean property. it indicates that audio_clkoutn is asynchronizes with lr-clock. SSI subnode properties: - interrupts : Should contain SSI interrupt for PIO transfer Loading
Documentation/devicetree/bindings/sound/rockchip-i2s.txt +5 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,11 @@ Required properties: - rockchip,playback-channels: max playback channels, if not set, 8 channels default. - rockchip,capture-channels: max capture channels, if not set, 2 channels default. Required properties for controller which support multi channels playback/capture: - rockchip,grf: the phandle of the syscon node for GRF register. Example for rk3288 I2S controller: i2s@ff890000 { Loading
include/sound/simple_card.h +1 −10 Original line number Diff line number Diff line Loading @@ -13,16 +13,7 @@ #define __SIMPLE_CARD_H #include <sound/soc.h> struct asoc_simple_dai { const char *name; unsigned int sysclk; int slots; int slot_width; unsigned int tx_slot_mask; unsigned int rx_slot_mask; struct clk *clk; }; #include <sound/simple_card_utils.h> struct asoc_simple_card_info { const char *name; Loading
include/sound/simple_card_utils.h 0 → 100644 +36 −0 Original line number Diff line number Diff line /* * simple_card_core.h * * Copyright (c) 2016 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #ifndef __SIMPLE_CARD_CORE_H #define __SIMPLE_CARD_CORE_H #include <sound/soc.h> struct asoc_simple_dai { const char *name; unsigned int sysclk; int slots; int slot_width; unsigned int tx_slot_mask; unsigned int rx_slot_mask; struct clk *clk; }; int asoc_simple_card_parse_daifmt(struct device *dev, struct device_node *node, struct device_node *codec, char *prefix, unsigned int *retfmt); int asoc_simple_card_set_dailink_name(struct device *dev, struct snd_soc_dai_link *dai_link, const char *fmt, ...); int asoc_simple_card_parse_card_name(struct snd_soc_card *card, char *prefix); #endif /* __SIMPLE_CARD_CORE_H */