openwrt/target/linux/bcm63xx/patches-4.14/380-pcmcia-bcm63xx_pmcia-use-the-new-named-gpio.patch
Adrian Schmutzler e7bfda2c24 brcm63xx: rename target to bcm63xx
This change makes the names of Broadcom targets consistent by using
the common notation based on SoC/CPU ID (which is used internally
anyway), bcmXXXX instead of brcmXXXX.
This is even used for target TITLE in make menuconfig already,
only the short target name used brcm so far.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2020-02-14 14:10:51 +01:00

60 lines
1.6 KiB
Diff

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_ */