cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

st,sti-asoc-card.txt (4646B)


      1STMicroelectronics sti ASoC cards
      2
      3The sti ASoC Sound Card can be used, for all sti SoCs using internal sti-sas
      4codec or external codecs.
      5
      6sti sound drivers allows to expose sti SoC audio interface through the
      7generic ASoC simple card. For details about sound card declaration please refer to
      8Documentation/devicetree/bindings/sound/simple-card.yaml.
      9
     101) sti-uniperiph-dai: audio dai device.
     11---------------------------------------
     12
     13Required properties:
     14  - compatible: "st,stih407-uni-player-hdmi", "st,stih407-uni-player-pcm-out",
     15		"st,stih407-uni-player-dac", "st,stih407-uni-player-spdif",
     16		"st,stih407-uni-reader-pcm_in", "st,stih407-uni-reader-hdmi",
     17
     18  - st,syscfg: phandle to boot-device system configuration registers
     19
     20  - clock-names: name of the clocks listed in clocks property in the same order
     21
     22  - reg: CPU DAI IP Base address and size entries, listed  in same
     23	 order than the CPU_DAI properties.
     24
     25  - reg-names: names of the mapped memory regions listed in regs property in
     26	       the same order.
     27
     28  - interrupts: CPU_DAI interrupt line, listed in the same order than the
     29		CPU_DAI properties.
     30
     31  - dma: CPU_DAI DMA controller phandle and DMA request line, listed in the same
     32	 order than the CPU_DAI properties.
     33
     34  - dma-names: identifier string for each DMA request line in the dmas property.
     35	"tx" for "st,sti-uni-player" compatibility
     36	"rx" for "st,sti-uni-reader" compatibility
     37
     38Required properties ("st,sti-uni-player" compatibility only):
     39  - clocks: CPU_DAI IP clock source, listed in the same order than the
     40	    CPU_DAI properties.
     41
     42Optional properties:
     43  - pinctrl-0: defined for CPU_DAI@1 and CPU_DAI@4 to describe I2S PIOs for
     44	       external codecs connection.
     45
     46  - pinctrl-names: should contain only one value - "default".
     47
     48  - st,tdm-mode: to declare to set TDM mode for unireader and uniplayer IPs.
     49	Only compartible with IPs in charge of the external I2S/TDM bus.
     50	Should be declared depending on associated codec.
     51
     52Example:
     53
     54	sti_uni_player1: sti-uni-player@8d81000 {
     55		compatible = "st,stih407-uni-player-hdmi";
     56		#sound-dai-cells = <0>;
     57		st,syscfg = <&syscfg_core>;
     58		clocks = <&clk_s_d0_flexgen CLK_PCM_1>;
     59		reg = <0x8D81000 0x158>;
     60		interrupts = <GIC_SPI 85 IRQ_TYPE_NONE>;
     61		dmas = <&fdma0 3 0 1>;
     62		dma-names = "tx";
     63		st,tdm-mode = <1>;
     64	};
     65
     66	sti_uni_player2: sti-uni-player@8d82000 {
     67		compatible = "st,stih407-uni-player-pcm-out";
     68		#sound-dai-cells = <0>;
     69		st,syscfg = <&syscfg_core>;
     70		clocks = <&clk_s_d0_flexgen CLK_PCM_2>;
     71		reg = <0x8D82000 0x158>;
     72		interrupts = <GIC_SPI 86 IRQ_TYPE_NONE>;
     73		dmas = <&fdma0 4 0 1>;
     74		dma-names = "tx";
     75	};
     76
     77	sti_uni_player3: sti-uni-player@8d85000 {
     78		compatible = "st,stih407-uni-player-spdif";
     79		#sound-dai-cells = <0>;
     80		st,syscfg = <&syscfg_core>;
     81		clocks = <&clk_s_d0_flexgen CLK_SPDIFF>;
     82		reg = <0x8D85000 0x158>;
     83		interrupts = <GIC_SPI 89 IRQ_TYPE_NONE>;
     84		dmas = <&fdma0 7 0 1>;
     85		dma-names = "tx";
     86	};
     87
     88	sti_uni_reader1: sti-uni-reader@8d84000 {
     89		compatible = "st,stih407-uni-reader-hdmi";
     90		#sound-dai-cells = <0>;
     91		st,syscfg = <&syscfg_core>;
     92		reg = <0x8D84000 0x158>;
     93		interrupts = <GIC_SPI 88 IRQ_TYPE_NONE>;
     94		dmas = <&fdma0 6 0 1>;
     95		dma-names = "rx";
     96	};
     97
     982) sti-sas-codec: internal audio codec IPs driver
     99-------------------------------------------------
    100
    101Required properties:
    102  - compatible: "st,sti<chip>-sas-codec" .
    103	Should be chip "st,stih416-sas-codec" or "st,stih407-sas-codec"
    104
    105  - st,syscfg: phandle to boot-device system configuration registers.
    106
    107  - pinctrl-0: SPDIF PIO description.
    108
    109  - pinctrl-names: should contain only one value - "default".
    110
    111Example:
    112	sti_sas_codec: sti-sas-codec {
    113		compatible = "st,stih407-sas-codec";
    114		#sound-dai-cells = <1>;
    115		st,reg_audio = <&syscfg_core>;
    116		pinctrl-names = "default";
    117		pinctrl-0 = <&pinctrl_spdif_out >;
    118	};
    119
    120Example of audio card declaration:
    121	sound {
    122		compatible = "simple-audio-card";
    123		simple-audio-card,name = "sti audio card";
    124
    125		simple-audio-card,dai-link@0 {
    126			/* DAC */
    127			format = "i2s";
    128			dai-tdm-slot-width = <32>;
    129			cpu {
    130				sound-dai = <&sti_uni_player2>;
    131			};
    132
    133			codec {
    134				sound-dai = <&sti_sasg_codec 1>;
    135			};
    136		};
    137		simple-audio-card,dai-link@1 {
    138			/* SPDIF */
    139			format = "left_j";
    140			cpu {
    141				sound-dai = <&sti_uni_player3>;
    142			};
    143
    144			codec {
    145				sound-dai = <&sti_sasg_codec 0>;
    146			};
    147		};
    148		simple-audio-card,dai-link@2 {
    149			/* TDM playback  */
    150			format = "left_j";
    151			frame-inversion = <1>;
    152			cpu {
    153				sound-dai = <&sti_uni_player1>;
    154				dai-tdm-slot-num = <16>;
    155				dai-tdm-slot-width = <16>;
    156				dai-tdm-slot-tx-mask =
    157					<1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1>;
    158			};
    159
    160			codec {
    161				sound-dai = <&sti_sasg_codec 3>;
    162			};
    163		};
    164	};