/branches/18.06.1/target/linux/brcm63xx/patches-4.14/380-pcmcia-bcm63xx_pmcia-use-the-new-named-gpio.patch |
@@ -0,0 +1,59 @@ |
From c4e04f1c54928a49b227a5420d38b18226838775 Mon Sep 17 00:00:00 2001 |
From: Jonas Gorski <jogo@openwrt.org> |
Date: Wed, 25 Mar 2015 13:54:56 +0100 |
Subject: [PATCH 2/2] pcmcia: bcm63xx_pmcia: use the new named gpio |
|
Use the new named gpio instead of relying on the hardware gpio numbers |
matching the virtual gpio numbers. |
|
Signed-off-by: Jonas Gorski <jogo@openwrt.org> |
--- |
drivers/pcmcia/bcm63xx_pcmcia.c | 9 ++++++++- |
drivers/pcmcia/bcm63xx_pcmcia.h | 4 ++++ |
2 files changed, 12 insertions(+), 1 deletion(-) |
|
--- a/drivers/pcmcia/bcm63xx_pcmcia.c |
+++ b/drivers/pcmcia/bcm63xx_pcmcia.c |
@@ -237,7 +237,7 @@ static unsigned int __get_socket_status( |
stat |= SS_XVCARD; |
stat |= SS_POWERON; |
|
- if (gpio_get_value(skt->pd->ready_gpio)) |
+ if (gpiod_get_value(skt->ready_gpio)) |
stat |= SS_READY; |
|
return stat; |
@@ -373,6 +373,13 @@ static int bcm63xx_drv_pcmcia_probe(stru |
goto err; |
} |
|
+ /* get ready gpio */ |
+ skt->ready_gpio = devm_gpiod_get(&pdev->dev, "ready", GPIOD_IN); |
+ if (IS_ERR(skt->ready_gpio)) { |
+ ret = PTR_ERR(skt->ready_gpio); |
+ goto err; |
+ } |
+ |
/* resources are static */ |
sock->resource_ops = &pccard_static_ops; |
sock->ops = &bcm63xx_pcmcia_operations; |
--- a/drivers/pcmcia/bcm63xx_pcmcia.h |
+++ b/drivers/pcmcia/bcm63xx_pcmcia.h |
@@ -4,6 +4,7 @@ |
|
#include <linux/types.h> |
#include <linux/timer.h> |
+#include <linux/gpio/consumer.h> |
#include <pcmcia/ss.h> |
#include <bcm63xx_dev_pcmcia.h> |
|
@@ -56,6 +57,9 @@ struct bcm63xx_pcmcia_socket { |
|
/* base address of io memory */ |
void __iomem *io_base; |
+ |
+ /* ready gpio */ |
+ struct gpio_desc *ready_gpio; |
}; |
|
#endif /* BCM63XX_PCMCIA_H_ */ |