bump to v3.8
[openwrt/openwrt.git] / target / linux / lantiq / patches-3.8 / 0018-MIPS-lantiq-improve-pci-reset-gpio-handling.patch
1 From b6684dd3036513e4f91986fe982356512458f711 Mon Sep 17 00:00:00 2001
2 From: John Crispin <blogic@openwrt.org>
3 Date: Sat, 19 Jan 2013 08:54:26 +0000
4 Subject: [PATCH 18/40] MIPS: lantiq: improve pci reset gpio handling
5
6 We need to make sure that the reset gpio is available and also set a sane
7 default state.
8
9 Signed-off-by: John Crispin <blogic@openwrt.org>
10 Patchwork: http://patchwork.linux-mips.org/patch/4817/
11 ---
12 arch/mips/pci/pci-lantiq.c | 12 ++++++++++--
13 1 file changed, 10 insertions(+), 2 deletions(-)
14
15 diff --git a/arch/mips/pci/pci-lantiq.c b/arch/mips/pci/pci-lantiq.c
16 index 9568178..f32664b 100644
17 --- a/arch/mips/pci/pci-lantiq.c
18 +++ b/arch/mips/pci/pci-lantiq.c
19 @@ -129,8 +129,16 @@ static int ltq_pci_startup(struct platform_device *pdev)
20
21 /* setup reset gpio used by pci */
22 reset_gpio = of_get_named_gpio(node, "gpio-reset", 0);
23 - if (gpio_is_valid(reset_gpio))
24 - devm_gpio_request(&pdev->dev, reset_gpio, "pci-reset");
25 + if (gpio_is_valid(reset_gpio)) {
26 + int ret = devm_gpio_request(&pdev->dev,
27 + reset_gpio, "pci-reset");
28 + if (ret) {
29 + dev_err(&pdev->dev,
30 + "failed to request gpio %d\n", reset_gpio);
31 + return ret;
32 + }
33 + gpio_direction_output(reset_gpio, 1);
34 + }
35
36 /* enable auto-switching between PCI and EBU */
37 ltq_pci_w32(0xa, PCI_CR_CLK_CTRL);
38 --
39 1.7.10.4
40