On Tue, 15 Jul 2025, a0282524688@xxxxxxxxx wrote: > From: Ming Yu <a0282524688@xxxxxxxxx> > > This patch series introduces support for Nuvoton NCT6694, a peripheral > expander based on USB interface. It models the chip as an MFD driver > (1/7), GPIO driver(2/7), I2C Adapter driver(3/7), CANfd driver(4/7), > WDT driver(5/7), HWMON driver(6/7), and RTC driver(7/7). > > The MFD driver implements USB device functionality to issue > custom-define USB bulk pipe packets for NCT6694. Each child device can > use the USB functions nct6694_read_msg() and nct6694_write_msg() to issue > a command. They can also request interrupt that will be called when the > USB device receives its interrupt pipe. > > The following introduces the custom-define USB transactions: > nct6694_read_msg - Send bulk-out pipe to write request packet > Receive bulk-in pipe to read response packet > Receive bulk-in pipe to read data packet > > nct6694_write_msg - Send bulk-out pipe to write request packet > Send bulk-out pipe to write data packet > Receive bulk-in pipe to read response packet [...] > Ming Yu (7): > mfd: Add core driver for Nuvoton NCT6694 > gpio: Add Nuvoton NCT6694 GPIO support > i2c: Add Nuvoton NCT6694 I2C support > can: Add Nuvoton NCT6694 CANFD support > watchdog: Add Nuvoton NCT6694 WDT support > hwmon: Add Nuvoton NCT6694 HWMON support > rtc: Add Nuvoton NCT6694 RTC support > > MAINTAINERS | 12 + > drivers/gpio/Kconfig | 12 + > drivers/gpio/Makefile | 1 + > drivers/gpio/gpio-nct6694.c | 499 +++++++++++++++ > drivers/hwmon/Kconfig | 10 + > drivers/hwmon/Makefile | 1 + > drivers/hwmon/nct6694-hwmon.c | 949 ++++++++++++++++++++++++++++ > drivers/i2c/busses/Kconfig | 10 + > drivers/i2c/busses/Makefile | 1 + > drivers/i2c/busses/i2c-nct6694.c | 196 ++++++ > drivers/mfd/Kconfig | 15 + > drivers/mfd/Makefile | 2 + > drivers/mfd/nct6694.c | 388 ++++++++++++ > drivers/net/can/usb/Kconfig | 11 + > drivers/net/can/usb/Makefile | 1 + > drivers/net/can/usb/nct6694_canfd.c | 832 ++++++++++++++++++++++++ > drivers/rtc/Kconfig | 10 + > drivers/rtc/Makefile | 1 + > drivers/rtc/rtc-nct6694.c | 297 +++++++++ > drivers/watchdog/Kconfig | 11 + > drivers/watchdog/Makefile | 1 + > drivers/watchdog/nct6694_wdt.c | 307 +++++++++ > include/linux/mfd/nct6694.h | 102 +++ > 23 files changed, 3669 insertions(+) > create mode 100644 drivers/gpio/gpio-nct6694.c > create mode 100644 drivers/hwmon/nct6694-hwmon.c > create mode 100644 drivers/i2c/busses/i2c-nct6694.c > create mode 100644 drivers/mfd/nct6694.c > create mode 100644 drivers/net/can/usb/nct6694_canfd.c > create mode 100644 drivers/rtc/rtc-nct6694.c > create mode 100644 drivers/watchdog/nct6694_wdt.c > create mode 100644 include/linux/mfd/nct6694.h I will apply this the other side of the pending merge-window. -- Lee Jones [李琼斯]