You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
gpio: Add viperboard gpio driver
This adds the mfd cell to use the gpio a and gpio b part of the Nano River Technologies viperboard. Signed-off-by: Lars Poeschel <poeschel@lemonage.de> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
committed by
Samuel Ortiz
parent
f01312d846
commit
9d5b72de0d
@@ -649,4 +649,17 @@ config GPIO_MSIC
|
|||||||
Enable support for GPIO on intel MSIC controllers found in
|
Enable support for GPIO on intel MSIC controllers found in
|
||||||
intel MID devices
|
intel MID devices
|
||||||
|
|
||||||
|
comment "USB GPIO expanders:"
|
||||||
|
|
||||||
|
config GPIO_VIPERBOARD
|
||||||
|
tristate "Viperboard GPIO a & b support"
|
||||||
|
depends on MFD_VIPERBOARD && USB
|
||||||
|
help
|
||||||
|
Say yes here to access the GPIO signals of Nano River
|
||||||
|
Technologies Viperboard. There are two GPIO chips on the
|
||||||
|
board: gpioa and gpiob.
|
||||||
|
See viperboard API specification and Nano
|
||||||
|
River Tech's viperboard.h for detailed meaning
|
||||||
|
of the module parameters.
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ obj-$(CONFIG_GPIO_TPS65912) += gpio-tps65912.o
|
|||||||
obj-$(CONFIG_GPIO_TWL4030) += gpio-twl4030.o
|
obj-$(CONFIG_GPIO_TWL4030) += gpio-twl4030.o
|
||||||
obj-$(CONFIG_GPIO_TWL6040) += gpio-twl6040.o
|
obj-$(CONFIG_GPIO_TWL6040) += gpio-twl6040.o
|
||||||
obj-$(CONFIG_GPIO_UCB1400) += gpio-ucb1400.o
|
obj-$(CONFIG_GPIO_UCB1400) += gpio-ucb1400.o
|
||||||
|
obj-$(CONFIG_GPIO_VIPERBOARD) += gpio-viperboard.o
|
||||||
obj-$(CONFIG_GPIO_VR41XX) += gpio-vr41xx.o
|
obj-$(CONFIG_GPIO_VR41XX) += gpio-vr41xx.o
|
||||||
obj-$(CONFIG_GPIO_VT8500) += gpio-vt8500.o
|
obj-$(CONFIG_GPIO_VT8500) += gpio-vt8500.o
|
||||||
obj-$(CONFIG_GPIO_VX855) += gpio-vx855.o
|
obj-$(CONFIG_GPIO_VX855) += gpio-vx855.o
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -38,6 +38,9 @@ static const struct usb_device_id vprbrd_table[] = {
|
|||||||
MODULE_DEVICE_TABLE(usb, vprbrd_table);
|
MODULE_DEVICE_TABLE(usb, vprbrd_table);
|
||||||
|
|
||||||
static struct mfd_cell vprbrd_devs[] = {
|
static struct mfd_cell vprbrd_devs[] = {
|
||||||
|
{
|
||||||
|
.name = "viperboard-gpio",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static int vprbrd_probe(struct usb_interface *interface,
|
static int vprbrd_probe(struct usb_interface *interface,
|
||||||
|
|||||||
@@ -44,6 +44,8 @@
|
|||||||
#define VPRBRD_USB_TIMEOUT_MS 100
|
#define VPRBRD_USB_TIMEOUT_MS 100
|
||||||
#define VPRBRD_USB_REQUEST_MAJOR 0xea
|
#define VPRBRD_USB_REQUEST_MAJOR 0xea
|
||||||
#define VPRBRD_USB_REQUEST_MINOR 0xeb
|
#define VPRBRD_USB_REQUEST_MINOR 0xeb
|
||||||
|
#define VPRBRD_USB_REQUEST_GPIOA 0xed
|
||||||
|
#define VPRBRD_USB_REQUEST_GPIOB 0xdd
|
||||||
|
|
||||||
struct vprbrd_i2c_write_hdr {
|
struct vprbrd_i2c_write_hdr {
|
||||||
u8 cmd;
|
u8 cmd;
|
||||||
|
|||||||
Reference in New Issue
Block a user