From 16ab7bb96a2dac9f9c3b7d68231c1e0360137907 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 11 Feb 2015 13:05:23 +0000 Subject: brcm2708: remove 3.14 support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Álvaro Fernández Rojas git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44402 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../0053-Move-GPIO-setup-to-hw_params.patch | 96 ---------------------- 1 file changed, 96 deletions(-) delete mode 100644 target/linux/brcm2708/patches-3.14/0053-Move-GPIO-setup-to-hw_params.patch (limited to 'target/linux/brcm2708/patches-3.14/0053-Move-GPIO-setup-to-hw_params.patch') diff --git a/target/linux/brcm2708/patches-3.14/0053-Move-GPIO-setup-to-hw_params.patch b/target/linux/brcm2708/patches-3.14/0053-Move-GPIO-setup-to-hw_params.patch deleted file mode 100644 index 130da2b5e2..0000000000 --- a/target/linux/brcm2708/patches-3.14/0053-Move-GPIO-setup-to-hw_params.patch +++ /dev/null @@ -1,96 +0,0 @@ -From 3eae00b73609f4e5a19260bfa4ca9021f295c0af Mon Sep 17 00:00:00 2001 -From: Gordon Hollingworth -Date: Fri, 2 May 2014 16:13:59 +0100 -Subject: [PATCH 53/54] Move GPIO setup to hw_params. - -This is used to stop the I2S driver from breaking -the GPIO setup for other uses of the PCM interface ---- - sound/soc/bcm/bcm2708-i2s.c | 55 +++++++++++++++++++++++---------------------- - 1 file changed, 28 insertions(+), 27 deletions(-) - ---- a/sound/soc/bcm/bcm2708-i2s.c -+++ b/sound/soc/bcm/bcm2708-i2s.c -@@ -305,6 +305,31 @@ static int bcm2708_i2s_set_dai_bclk_rati - return 0; - } - -+ -+static void bcm2708_i2s_setup_gpio(void) -+{ -+ /* -+ * This is the common way to handle the GPIO pins for -+ * the Raspberry Pi. -+ * TODO Better way would be to handle -+ * this in the device tree! -+ */ -+#define INP_GPIO(g) *(gpio+((g)/10)) &= ~(7<<(((g)%10)*3)) -+#define SET_GPIO_ALT(g,a) *(gpio+(((g)/10))) |= (((a)<=3?(a)+4:(a)==4?3:2)<<(((g)%10)*3)) -+ -+ unsigned int *gpio; -+ int pin; -+ gpio = ioremap(GPIO_BASE, SZ_16K); -+ -+ /* SPI is on GPIO 7..11 */ -+ for (pin = 28; pin <= 31; pin++) { -+ INP_GPIO(pin); /* set mode to GPIO input first */ -+ SET_GPIO_ALT(pin, 2); /* set mode to ALT 0 */ -+ } -+#undef INP_GPIO -+#undef SET_GPIO_ALT -+} -+ - static int bcm2708_i2s_hw_params(struct snd_pcm_substream *substream, - struct snd_pcm_hw_params *params, - struct snd_soc_dai *dai) -@@ -334,6 +359,9 @@ static int bcm2708_i2s_hw_params(struct - if (csreg & (BCM2708_I2S_TXON | BCM2708_I2S_RXON)) - return 0; - -+ -+ bcm2708_i2s_setup_gpio(); -+ - /* - * Adjust the data length according to the format. - * We prefill the half frame length with an integer -@@ -790,31 +818,6 @@ static const struct snd_soc_component_dr - .name = "bcm2708-i2s-comp", - }; - -- --static void bcm2708_i2s_setup_gpio(void) --{ -- /* -- * This is the common way to handle the GPIO pins for -- * the Raspberry Pi. -- * TODO Better way would be to handle -- * this in the device tree! -- */ --#define INP_GPIO(g) *(gpio+((g)/10)) &= ~(7<<(((g)%10)*3)) --#define SET_GPIO_ALT(g,a) *(gpio+(((g)/10))) |= (((a)<=3?(a)+4:(a)==4?3:2)<<(((g)%10)*3)) -- -- unsigned int *gpio; -- int pin; -- gpio = ioremap(GPIO_BASE, SZ_16K); -- -- /* SPI is on GPIO 7..11 */ -- for (pin = 28; pin <= 31; pin++) { -- INP_GPIO(pin); /* set mode to GPIO input first */ -- SET_GPIO_ALT(pin, 2); /* set mode to ALT 0 */ -- } --#undef INP_GPIO --#undef SET_GPIO_ALT --} -- - static const struct snd_pcm_hardware bcm2708_pcm_hardware = { - .info = SNDRV_PCM_INFO_INTERLEAVED | - SNDRV_PCM_INFO_JOINT_DUPLEX, -@@ -865,8 +868,6 @@ static int bcm2708_i2s_probe(struct plat - if (IS_ERR(dev)) - return PTR_ERR(dev); - -- bcm2708_i2s_setup_gpio(); -- - dev->i2s_regmap = regmap[0]; - dev->clk_regmap = regmap[1]; - -- cgit v1.2.3