lantiq: fix an endless loop in the vmmc platform code

this was caused by not honoured error return codes of of_gpio_count()

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 38878
This commit is contained in:
John Crispin 2013-11-20 16:56:32 +00:00
parent 2bc70cfbac
commit 06ada4b10f

View file

@ -54,7 +54,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
+ (void*)CPHYSADDR(dma_alloc_coherent(NULL, CP1_SIZE, &dma, GFP_ATOMIC)); + (void*)CPHYSADDR(dma_alloc_coherent(NULL, CP1_SIZE, &dma, GFP_ATOMIC));
+ +
+ gpio_count = of_gpio_count(pdev->dev.of_node); + gpio_count = of_gpio_count(pdev->dev.of_node);
+ while (gpio_count) { + while (gpio_count > 0) {
+ enum of_gpio_flags flags; + enum of_gpio_flags flags;
+ int gpio = of_get_gpio_flags(pdev->dev.of_node, --gpio_count, &flags); + int gpio = of_get_gpio_flags(pdev->dev.of_node, --gpio_count, &flags);
+ if (gpio_request(gpio, "vmmc-relay")) + if (gpio_request(gpio, "vmmc-relay"))