-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This driver adds support for digital audio (I2S) for the BCM2835 SoC that is used by the Raspberry Pi. External audio codecs can be connected to the Raspberry Pi via P5 header. It relies on cyclic DMA engine support for BCM2835. Signed-off-by: Florian Meier <florian.meier@koalo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
- Loading branch information
Florian Meier
authored and
Mark Brown
committed
Nov 25, 2013
1 parent
6ce4eac
commit c6aeb7d
Showing
6 changed files
with
928 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
* Broadcom BCM2835 SoC I2S/PCM module | ||
|
||
Required properties: | ||
- compatible: "brcm,bcm2835-i2s" | ||
- reg: A list of base address and size entries: | ||
* The first entry should cover the PCM registers | ||
* The second entry should cover the PCM clock registers | ||
- dmas: List of DMA controller phandle and DMA request line ordered pairs. | ||
- dma-names: Identifier string for each DMA request line in the dmas property. | ||
These strings correspond 1:1 with the ordered pairs in dmas. | ||
|
||
One of the DMA channels will be responsible for transmission (should be | ||
named "tx") and one for reception (should be named "rx"). | ||
|
||
Example: | ||
|
||
bcm2835_i2s: i2s@7e203000 { | ||
compatible = "brcm,bcm2835-i2s"; | ||
reg = <0x7e203000 0x20>, | ||
<0x7e101098 0x02>; | ||
|
||
dmas = <&dma 2>, | ||
<&dma 3>; | ||
dma-names = "tx", "rx"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
config SND_BCM2835_SOC_I2S | ||
tristate "SoC Audio support for the Broadcom BCM2835 I2S module" | ||
depends on ARCH_BCM2835 || COMPILE_TEST | ||
select SND_SOC_DMAENGINE_PCM | ||
select SND_SOC_GENERIC_DMAENGINE_PCM | ||
select REGMAP_MMIO | ||
help | ||
Say Y or M if you want to add support for codecs attached to | ||
the BCM2835 I2S interface. You will also need | ||
to select the audio interfaces to support below. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# BCM2835 Platform Support | ||
snd-soc-bcm2835-i2s-objs := bcm2835-i2s.o | ||
|
||
obj-$(CONFIG_SND_BCM2835_SOC_I2S) += snd-soc-bcm2835-i2s.o | ||
|
Oops, something went wrong.