2e5dad3d809ceac4939fc58a8484188e253498fa
[openwrt/openwrt.git] / target / linux / brcm2708 / patches-3.14 / 0045-BCM2708-Added-support-for-HiFiBerry-Digi-board-Board.patch
1 From fc11caaeda3eec0b6338988f411b71151fee25a9 Mon Sep 17 00:00:00 2001
2 From: Daniel Matuschek <info@crazy-audio.com>
3 Date: Thu, 16 Jan 2014 07:26:08 +0100
4 Subject: [PATCH 45/54] BCM2708: Added support for HiFiBerry Digi board Board
5 initalization by I2C
6
7 Signed-off-by: Daniel Matuschek <daniel@matuschek.net>
8 ---
9 arch/arm/mach-bcm2708/bcm2708.c | 20 ++++++++++++++++++++
10 1 file changed, 20 insertions(+)
11
12 diff --git a/arch/arm/mach-bcm2708/bcm2708.c b/arch/arm/mach-bcm2708/bcm2708.c
13 index cf10f74..beb2eca 100644
14 --- a/arch/arm/mach-bcm2708/bcm2708.c
15 +++ b/arch/arm/mach-bcm2708/bcm2708.c
16 @@ -651,6 +651,21 @@ static struct platform_device snd_pcm5102a_codec_device = {
17 };
18 #endif
19
20 +#if defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI) || defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI_MODULE)
21 +static struct platform_device snd_hifiberry_digi_device = {
22 + .name = "snd-hifiberry-digi",
23 + .id = 0,
24 + .num_resources = 0,
25 +};
26 +
27 +static struct i2c_board_info __initdata snd_wm8804_i2c_devices[] = {
28 + {
29 + I2C_BOARD_INFO("wm8804", 0x3b)
30 + },
31 +};
32 +
33 +#endif
34 +
35 #if defined(CONFIG_SND_BCM2708_SOC_RPI_DAC) || defined(CONFIG_SND_BCM2708_SOC_RPI_DAC_MODULE)
36 static struct platform_device snd_rpi_dac_device = {
37 .name = "snd-rpi-dac",
38 @@ -797,6 +812,11 @@ void __init bcm2708_init(void)
39 bcm_register_device(&snd_pcm5102a_codec_device);
40 #endif
41
42 +#if defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI) || defined(CONFIG_SND_BCM2708_SOC_HIFIBERRY_DIGI_MODULE)
43 + bcm_register_device(&snd_hifiberry_digi_device);
44 + i2c_register_board_info(1, snd_wm8804_i2c_devices, ARRAY_SIZE(snd_wm8804_i2c_devices));
45 +#endif
46 +
47 #if defined(CONFIG_SND_BCM2708_SOC_RPI_DAC) || defined(CONFIG_SND_BCM2708_SOC_RPI_DAC_MODULE)
48 bcm_register_device(&snd_rpi_dac_device);
49 bcm_register_device(&snd_pcm1794a_codec_device);
50 --
51 1.9.1
52