brcm2708: update against latest rpi-3.10.y branch
[15.05/openwrt.git] / target / linux / brcm2708 / patches-3.10 / 0158-BCM2708-Added-support-for-HiFiBerry-Digi-board.patch
diff --git a/target/linux/brcm2708/patches-3.10/0158-BCM2708-Added-support-for-HiFiBerry-Digi-board.patch b/target/linux/brcm2708/patches-3.10/0158-BCM2708-Added-support-for-HiFiBerry-Digi-board.patch
new file mode 100644 (file)
index 0000000..e4882b2
--- /dev/null
@@ -0,0 +1,47 @@
+From cdc5a0a83c2eed46dd646f50f532f7820b18c28d Mon Sep 17 00:00:00 2001
+From: Daniel Matuschek <info@crazy-audio.com>
+Date: Thu, 16 Jan 2014 07:26:08 +0100
+Subject: [PATCH 158/174] BCM2708: Added support for HiFiBerry Digi board Board
+ initalization by I2C
+
+Signed-off-by: Daniel Matuschek <daniel@matuschek.net>
+---
+ arch/arm/mach-bcm2708/bcm2708.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+--- a/arch/arm/mach-bcm2708/bcm2708.c
++++ b/arch/arm/mach-bcm2708/bcm2708.c
+@@ -654,6 +654,21 @@ static struct platform_device snd_pcm510
+ };
+ #endif
++#if defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI) || defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI_MODULE)
++static struct platform_device snd_hifiberry_digi_device = {
++        .name = "snd-hifiberry-digi",
++        .id = 0,
++        .num_resources = 0,
++};
++
++static struct i2c_board_info __initdata snd_wm8804_i2c_devices[] = {
++        {
++                I2C_BOARD_INFO("wm8804", 0x3b)
++        },
++};
++
++#endif
++
+ #if defined(CONFIG_SND_BCM2708_SOC_RPI_DAC) || defined(CONFIG_SND_BCM2708_SOC_RPI_DAC_MODULE)
+ static struct platform_device snd_rpi_dac_device = {
+         .name = "snd-rpi-dac",
+@@ -804,6 +819,11 @@ void __init bcm2708_init(void)
+         bcm_register_device(&snd_pcm5102a_codec_device);
+ #endif
++#if defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI) || defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI_MODULE)
++        bcm_register_device(&snd_hifiberry_digi_device);
++        i2c_register_board_info(1, snd_wm8804_i2c_devices, ARRAY_SIZE(snd_wm8804_i2c_devices));
++#endif
++
+ #if defined(CONFIG_SND_BCM2708_SOC_RPI_DAC) || defined(CONFIG_SND_BCM2708_SOC_RPI_DAC_MODULE)
+         bcm_register_device(&snd_rpi_dac_device);
+         bcm_register_device(&snd_pcm1794a_codec_device);