diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2019-06-09 01:11:38 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2019-06-10 16:01:54 +0200 |
commit | 7fae8a9ced742f364604a88a53084f471cc9c6e5 (patch) | |
tree | fa7be419e46f1398ca873bf0aece9fcb04592eec | |
parent | dt-bindings: gpio: davinci: Add k3 am654 compatible (diff) | |
download | linux-7fae8a9ced742f364604a88a53084f471cc9c6e5.tar.xz linux-7fae8a9ced742f364604a88a53084f471cc9c6e5.zip |
fmc: Decouple from Linux GPIO subsystem
FMC has its own GPIO handling, the inclusion of <linux/gpio.h>
is only to reuse some flags that we can just as well provide
using local defines.
Cc: Federico Vaga <federico.vaga@cern.ch>
Cc: Pat Riehecky <riehecky@fnal.gov>
Acked-by: Alessandro Rubini <rubini@gnudd.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/fmc/fmc-trivial.c | 1 | ||||
-rw-r--r-- | include/linux/fmc.h | 18 |
2 files changed, 10 insertions, 9 deletions
diff --git a/drivers/fmc/fmc-trivial.c b/drivers/fmc/fmc-trivial.c index 8defdee3e3a3..b99dbc7ee203 100644 --- a/drivers/fmc/fmc-trivial.c +++ b/drivers/fmc/fmc-trivial.c @@ -15,7 +15,6 @@ #include <linux/module.h> #include <linux/init.h> #include <linux/interrupt.h> -#include <linux/gpio.h> #include <linux/fmc.h> static struct fmc_driver t_drv; /* initialized later */ diff --git a/include/linux/fmc.h b/include/linux/fmc.h index b355f3806f3f..8661a46a676f 100644 --- a/include/linux/fmc.h +++ b/include/linux/fmc.h @@ -100,7 +100,7 @@ struct fmc_gpio { char *carrier_name; /* name or NULL for virtual pins */ int gpio; int _gpio; /* internal use by the carrier */ - int mode; /* GPIOF_DIR_OUT etc, from <linux/gpio.h> */ + int mode; /* GPIOF_DIR_OUT etc */ int irqmode; /* IRQF_TRIGGER_LOW and so on */ }; @@ -114,13 +114,15 @@ struct fmc_gpio { #define FMC_GPIO_USER(x) ((x) + 0x1400) /* 256 of them */ /* We may add SCL and SDA, or other roles if the need arises */ -/* GPIOF_DIR_IN etc are missing before 3.0. copy from <linux/gpio.h> */ -#ifndef GPIOF_DIR_IN -# define GPIOF_DIR_OUT (0 << 0) -# define GPIOF_DIR_IN (1 << 0) -# define GPIOF_INIT_LOW (0 << 1) -# define GPIOF_INIT_HIGH (1 << 1) -#endif +/* + * These are similar to the legacy Linux GPIO defines from <linux/gpio.h> + * but in fact FMC has its own GPIO handling and is not using the Linux + * GPIO subsystem. + */ +#define GPIOF_DIR_OUT (0 << 0) +#define GPIOF_DIR_IN (1 << 0) +#define GPIOF_INIT_LOW (0 << 1) +#define GPIOF_INIT_HIGH (1 << 1) /* * The operations are offered by each carrier and should make driver |