[i.MX6][CPLD][driver/seco] Add driver v1.0 for SECO CPLD LPC/GPIO
This driver coming from SECO driver library: - driver: seco_cpld_imx6 - version: v1.0 This driver is generic but is used only by [i.MX6][928]. The WEIM bus is used to communicate with the CPLD. There are two CPLD's versions: - LPC bridge: a LPC bridge is implemented and the actual drivers compatible with this bus are: - sio_xr28v382: support for MaxLinear XR28V382 with x2 UARTs - sio_w83627: support for Nuvoton W83627 superIO - GPIO x8 + PWM: a GPIO expander plus a PWM controller are present into CPLD. In this case the driver are cgpio_expander.c and pwm_cpld.c respectively. The serial_core of the kernel has been modified inorder to support the specific UART type coming from LPC compatible driver. Since, as mentioned, this driver is used only by the [928] module, please, refer to its dts file about the device-tree, where there is the hierarchy: WEIM |__ CPLD |__ GPIO + PWM |__ LPC |__ XR28V382 |__ W83627 Note: all node on the same level are mutually exclusive
Showing
- drivers/seco/Kconfig 9 additions, 0 deletionsdrivers/seco/Kconfig
- drivers/seco/Makefile 2 additions, 0 deletionsdrivers/seco/Makefile
- drivers/seco/cgpio_expander.c 614 additions, 0 deletionsdrivers/seco/cgpio_expander.c
- drivers/seco/cpld.c 305 additions, 0 deletionsdrivers/seco/cpld.c
- drivers/seco/lpc_bridge.c 509 additions, 0 deletionsdrivers/seco/lpc_bridge.c
- drivers/seco/pwm_cpld.c 289 additions, 0 deletionsdrivers/seco/pwm_cpld.c
- drivers/seco/sio_w83627.c 461 additions, 0 deletionsdrivers/seco/sio_w83627.c
- drivers/seco/sio_w83627_gpio.c 497 additions, 0 deletionsdrivers/seco/sio_w83627_gpio.c
- drivers/seco/sio_w83627_serial.c 292 additions, 0 deletionsdrivers/seco/sio_w83627_serial.c
- drivers/seco/sio_xr28v382.c 807 additions, 0 deletionsdrivers/seco/sio_xr28v382.c
- drivers/seco/sio_xr28v382_reg.h 146 additions, 0 deletionsdrivers/seco/sio_xr28v382_reg.h
- drivers/seco/sio_xr28v382_serial.c 244 additions, 0 deletionsdrivers/seco/sio_xr28v382_serial.c
- drivers/tty/serial/serial_core.c 4 additions, 0 deletionsdrivers/tty/serial/serial_core.c
- include/linux/seco_cpld.h 61 additions, 0 deletionsinclude/linux/seco_cpld.h
- include/linux/seco_lpc.h 32 additions, 0 deletionsinclude/linux/seco_lpc.h
- include/linux/serial_core.h 1 addition, 0 deletionsinclude/linux/serial_core.h
- include/linux/sio-w83627.h 20 additions, 0 deletionsinclude/linux/sio-w83627.h
- include/linux/sio-xr28v382.h 19 additions, 0 deletionsinclude/linux/sio-xr28v382.h
- include/linux/sio_lpc_serial.h 68 additions, 0 deletionsinclude/linux/sio_lpc_serial.h
- include/uapi/linux/serial.h 1 addition, 0 deletionsinclude/uapi/linux/serial.h
Loading
Please register or sign in to comment