#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/irq.h>
#include <linux/irqdomain.h>
#include <linux/gpio.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_device.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/basic_mmio_gpio.h>
#include <linux/module.h>
Go to the source code of this file.
#define GPIO_INT_FALL_EDGE 0x0 |
#define GPIO_INT_HIGH_LEV 0x3 |
#define GPIO_INT_LEV_MASK (1 << 0) |
#define GPIO_INT_LOW_LEV 0x1 |
#define GPIO_INT_POL_MASK (1 << 1) |
#define GPIO_INT_RISE_EDGE 0x2 |
#define PINCTRL_DIN |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0600 : 0x0900) + (p->id) * 0x10) |
#define PINCTRL_DOE |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0700 : 0x0b00) + (p->id) * 0x10) |
#define PINCTRL_DOUT |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0500 : 0x0700) + (p->id) * 0x10) |
#define PINCTRL_IRQEN |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0900 : 0x1100) + (p->id) * 0x10) |
#define PINCTRL_IRQLEV |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0a00 : 0x1200) + (p->id) * 0x10) |
#define PINCTRL_IRQPOL |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0b00 : 0x1300) + (p->id) * 0x10) |
#define PINCTRL_IRQSTAT |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0c00 : 0x1400) + (p->id) * 0x10) |
#define PINCTRL_PIN2IRQ |
( |
|
p | ) |
((is_imx23_gpio(p) ? 0x0800 : 0x1000) + (p->id) * 0x10) |
MODULE_AUTHOR |
( |
"Freescale |
Semiconductor, |
|
|
""Daniel Mack< danielncaiaq.de > |
, |
|
|
""Juergen Beisert< kernel @pengutronix.de >" |
|
|
) |
| |
MODULE_DESCRIPTION |
( |
"Freescale MXS GPIO" |
| ) |
|
MODULE_DEVICE_TABLE |
( |
platform |
, |
|
|
mxs_gpio_ids |
|
|
) |
| |
MODULE_DEVICE_TABLE |
( |
of |
, |
|
|
mxs_gpio_dt_ids |
|
|
) |
| |
postcore_initcall |
( |
mxs_gpio_init |
| ) |
|