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
From: Ming Yu <a0282524688@gmail.com>
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
Receive bulk-in pipe to read data packet
Changes since version 13:
- Update to guard(spinlock_irqsave)() in nct6694.c
- Add struct i2c_adapter_quirks in i2c-nct6694.c
- Rebased on top of v6.17-rc1 as requested
Changes since version 12:
- Implement IDA in MFD driver to handle per-device IDs
- Use spinlock to replace irq mutex lock
- Use same email address in the signature
Changes since version 11:
- Use platform_device's id to replace IDA
- Modify the irq_domain_add_simple() to irq_domain_create_simple() in
nct6694.c
- Update struct data_bittiming_params related part in nct6694_canfd.c
- Fix the typo in the header in nct6694-hwmon.c
Changes since version 10:
- Add change log for each patch
- Fix mfd_cell to MFD_CELL_NAME() in nct6694.c
- Implement IDA to allocate id in gpio-nct6694.c, i2c-nct6694.c,
nct6694_canfd.c and nct6694_wdt.c
- Add header <linux/bitfield.h> in nct6694_canfd.c
- Add support to config tdc in nct6694_canfd.c
- Add module parameters to configure WDT's timeout and pretimeout value
in nct6694_wdt.c
Changes since version 9:
- Add devm_add_action_or_reset() to dispose irq mapping
- Add KernelDoc to exported functions in nct6694.c
Changes since version 8:
- Modify the signed-off-by with my work address
- Rename all MFD cell names to "nct6694-xxx"
- Add irq_dispose_mapping() in the error handling path and in the remove
function
- Fix some comments in nct6694.c and in nct6694.h
- Add module parameters to configure I2C's baudrate in i2c-nct6694.c
- Rename all function names nct6694_can_xxx to nct6694_canfd_xxx in
nct6694_canfd.c
- Fix nct6694_canfd_handle_state_change() in nct6694_canfd.c
- Fix nct6694_canfd_start() to configure NBTP and DBTP in nct6694_canfd.c
- Add can_set_static_ctrlmode() in nct6694_canfd.c
Changes since version 7:
- Add error handling for devm_mutex_init()
- Modify the name of the child devices CAN1 and CAN2 to CAN0 and CAN1.
- Fix multiline comments to net-dev style in nct6694_canfd.c
Changes since version 6:
- Fix nct6694_can_handle_state_change() in nct6694_canfd.c
- Fix warnings in nct6694_canfd.c
- Move the nct6694_can_priv's bec to the end in nct6694_canfd.c
- Fix warning in nct6694_wdt.c
- Fix temp_hyst's data type to signed variable in nct6694-hwmon.c
Changes since version 5:
- Modify the module name and the driver name consistently
- Fix mfd_cell to MFD_CELL_NAME() and MFD_CELL_BASIC()
- Drop unnecessary macros in nct6694.c
- Update private data and drop mutex in nct6694_canfd.c
- Fix nct6694_can_handle_state_change() in nct6694_canfd.c
Changes since version 4:
- Modify arguments in read/write function to a pointer to cmd_header
- Modify all callers that call the read/write function
- Move the nct6694_canfd.c to drivers/net/can/usb/
- Fix the missing rx offload function in nct6694_canfd.c
- Fix warngings in nct6694-hwmon.c
Changes since version 3:
- Modify array buffer to structure for each drivers
- Fix defines and comments for each drivers
- Add header <linux/bits.h> and use BIT macro in nct6694.c and
gpio-nct6694.c
- Modify mutex_init() to devm_mutex_init()
- Add rx-offload helper in nct6694_canfd.c
- Drop watchdog_init_timeout() in nct6694_wdt.c
- Modify the division method to DIV_ROUND_CLOSEST() in nct6694-hwmon.c
- Drop private mutex and use rtc core lock in rtc-nct6694.c
- Modify device_set_wakeup_capable() to device_init_wakeup() in
rtc-nct6694.c
Changes since version 2:
- Add MODULE_ALIAS() for each child driver
- Modify gpio line names be a local variable in gpio-nct6694.c
- Drop unnecessary platform_get_drvdata() in gpio-nct6694.c
- Rename each command in nct6694_canfd.c
- Modify each function name consistently in nct6694_canfd.c
- Modify the pretimeout validation procedure in nct6694_wdt.c
- Fix warnings in nct6694-hwmon.c
Changes since version 1:
- Implement IRQ domain to handle IRQ demux in nct6694.c
- Modify USB_DEVICE to USB_DEVICE_AND_INTERFACE_INFO API in nct6694.c
- Add each driver's command structure
- Fix USB functions in nct6694.c
- Fix platform driver registration in each child driver
- Sort each driver's header files alphabetically
- Drop unnecessary header in gpio-nct6694.c
- Add gpio line names in gpio-nct6694.c
- Fix errors and warnings in nct6694_canfd.c
- Fix TX-flow control in nct6694_canfd.c
- Fix warnings in nct6694_wdt.c
- Drop unnecessary logs in nct6694_wdt.c
- Modify start() function to setup device in nct6694_wdt.c
- Add voltage sensors functionality in nct6694-hwmon.c
- Add temperature sensors functionality in nct6694-hwmon.c
- Fix overwrite error return values in nct6694-hwmon.c
- Add write value limitation for each write() function in nct6694-hwmon.c
- Drop unnecessary logs in rtc-nct6694.c
- Fix overwrite error return values in rtc-nct6694.c
- Modify to use dev_err_probe API in rtc-nct6694.c
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
--
2.34.1
On Thu, 04 Sep 2025, a0282524688@gmail.com wrote: > From: Ming Yu <a0282524688@gmail.com> > > 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 > Receive bulk-in pipe to read data packet > > Changes since version 13: > - Update to guard(spinlock_irqsave)() in nct6694.c > - Add struct i2c_adapter_quirks in i2c-nct6694.c > - Rebased on top of v6.17-rc1 as requested I thought you were going to rebase this onto v6.17-rc1? It still does not apply. > Changes since version 12: > - Implement IDA in MFD driver to handle per-device IDs > - Use spinlock to replace irq mutex lock > - Use same email address in the signature > > Changes since version 11: > - Use platform_device's id to replace IDA > - Modify the irq_domain_add_simple() to irq_domain_create_simple() in > nct6694.c > - Update struct data_bittiming_params related part in nct6694_canfd.c > - Fix the typo in the header in nct6694-hwmon.c > > Changes since version 10: > - Add change log for each patch > - Fix mfd_cell to MFD_CELL_NAME() in nct6694.c > - Implement IDA to allocate id in gpio-nct6694.c, i2c-nct6694.c, > nct6694_canfd.c and nct6694_wdt.c > - Add header <linux/bitfield.h> in nct6694_canfd.c > - Add support to config tdc in nct6694_canfd.c > - Add module parameters to configure WDT's timeout and pretimeout value > in nct6694_wdt.c > > Changes since version 9: > - Add devm_add_action_or_reset() to dispose irq mapping > - Add KernelDoc to exported functions in nct6694.c > > Changes since version 8: > - Modify the signed-off-by with my work address > - Rename all MFD cell names to "nct6694-xxx" > - Add irq_dispose_mapping() in the error handling path and in the remove > function > - Fix some comments in nct6694.c and in nct6694.h > - Add module parameters to configure I2C's baudrate in i2c-nct6694.c > - Rename all function names nct6694_can_xxx to nct6694_canfd_xxx in > nct6694_canfd.c > - Fix nct6694_canfd_handle_state_change() in nct6694_canfd.c > - Fix nct6694_canfd_start() to configure NBTP and DBTP in nct6694_canfd.c > - Add can_set_static_ctrlmode() in nct6694_canfd.c > > Changes since version 7: > - Add error handling for devm_mutex_init() > - Modify the name of the child devices CAN1 and CAN2 to CAN0 and CAN1. > - Fix multiline comments to net-dev style in nct6694_canfd.c > > Changes since version 6: > - Fix nct6694_can_handle_state_change() in nct6694_canfd.c > - Fix warnings in nct6694_canfd.c > - Move the nct6694_can_priv's bec to the end in nct6694_canfd.c > - Fix warning in nct6694_wdt.c > - Fix temp_hyst's data type to signed variable in nct6694-hwmon.c > > Changes since version 5: > - Modify the module name and the driver name consistently > - Fix mfd_cell to MFD_CELL_NAME() and MFD_CELL_BASIC() > - Drop unnecessary macros in nct6694.c > - Update private data and drop mutex in nct6694_canfd.c > - Fix nct6694_can_handle_state_change() in nct6694_canfd.c > > Changes since version 4: > - Modify arguments in read/write function to a pointer to cmd_header > - Modify all callers that call the read/write function > - Move the nct6694_canfd.c to drivers/net/can/usb/ > - Fix the missing rx offload function in nct6694_canfd.c > - Fix warngings in nct6694-hwmon.c > > Changes since version 3: > - Modify array buffer to structure for each drivers > - Fix defines and comments for each drivers > - Add header <linux/bits.h> and use BIT macro in nct6694.c and > gpio-nct6694.c > - Modify mutex_init() to devm_mutex_init() > - Add rx-offload helper in nct6694_canfd.c > - Drop watchdog_init_timeout() in nct6694_wdt.c > - Modify the division method to DIV_ROUND_CLOSEST() in nct6694-hwmon.c > - Drop private mutex and use rtc core lock in rtc-nct6694.c > - Modify device_set_wakeup_capable() to device_init_wakeup() in > rtc-nct6694.c > > Changes since version 2: > - Add MODULE_ALIAS() for each child driver > - Modify gpio line names be a local variable in gpio-nct6694.c > - Drop unnecessary platform_get_drvdata() in gpio-nct6694.c > - Rename each command in nct6694_canfd.c > - Modify each function name consistently in nct6694_canfd.c > - Modify the pretimeout validation procedure in nct6694_wdt.c > - Fix warnings in nct6694-hwmon.c > > Changes since version 1: > - Implement IRQ domain to handle IRQ demux in nct6694.c > - Modify USB_DEVICE to USB_DEVICE_AND_INTERFACE_INFO API in nct6694.c > - Add each driver's command structure > - Fix USB functions in nct6694.c > - Fix platform driver registration in each child driver > - Sort each driver's header files alphabetically > - Drop unnecessary header in gpio-nct6694.c > - Add gpio line names in gpio-nct6694.c > - Fix errors and warnings in nct6694_canfd.c > - Fix TX-flow control in nct6694_canfd.c > - Fix warnings in nct6694_wdt.c > - Drop unnecessary logs in nct6694_wdt.c > - Modify start() function to setup device in nct6694_wdt.c > - Add voltage sensors functionality in nct6694-hwmon.c > - Add temperature sensors functionality in nct6694-hwmon.c > - Fix overwrite error return values in nct6694-hwmon.c > - Add write value limitation for each write() function in nct6694-hwmon.c > - Drop unnecessary logs in rtc-nct6694.c > - Fix overwrite error return values in rtc-nct6694.c > - Modify to use dev_err_probe API in rtc-nct6694.c > > > 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 > > -- > 2.34.1 > -- Lee Jones [李琼斯]
Dear Lee, Thanks for your feedback. The series applies and builds cleanly on my local tree based on commit 8f5ae30d69d7 (v6.17-rc1). My branch currently looks like this: 1ba54e97c6fe (HEAD -> mfd_v14_v6.17-rc1) rtc: Add Nuvoton NCT6694 RTC support 6a71b8c05f1f hwmon: Add Nuvoton NCT6694 HWMON support bf0b59ad47d3 watchdog: Add Nuvoton NCT6694 WDT support 36a8e58f7368 can: Add Nuvoton NCT6694 CANFD support 8cf61471f368 i2c: Add Nuvoton NCT6694 I2C support f0d3b273fd93 gpio: Add Nuvoton NCT6694 GPIO support e86e2fb37ed7 mfd: Add core driver for Nuvoton NCT6694 8f5ae30d69d7 (tag: v6.17-rc1) Linux 6.17-rc1 To be absolutely sure there is no mismatch, I will rebase onto the same tag once more, rebuild, re-test the kernel, and then RESEND the series. Please let me know if you are applying on a different base tree or if there are other prerequisites I might have missed. Thanks again for your review and your time. Best regards, Ming Lee Jones <lee@kernel.org> 於 2025年9月11日 週四 下午6:00寫道: > > On Thu, 04 Sep 2025, a0282524688@gmail.com wrote: > > > From: Ming Yu <a0282524688@gmail.com> > > > > 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 > > Receive bulk-in pipe to read data packet > > > > Changes since version 13: > > - Update to guard(spinlock_irqsave)() in nct6694.c > > - Add struct i2c_adapter_quirks in i2c-nct6694.c > > - Rebased on top of v6.17-rc1 as requested > > I thought you were going to rebase this onto v6.17-rc1? > > It still does not apply. > > > Changes since version 12: > > - Implement IDA in MFD driver to handle per-device IDs > > - Use spinlock to replace irq mutex lock > > - Use same email address in the signature > > > > Changes since version 11: > > - Use platform_device's id to replace IDA > > - Modify the irq_domain_add_simple() to irq_domain_create_simple() in > > nct6694.c > > - Update struct data_bittiming_params related part in nct6694_canfd.c > > - Fix the typo in the header in nct6694-hwmon.c > > > > Changes since version 10: > > - Add change log for each patch > > - Fix mfd_cell to MFD_CELL_NAME() in nct6694.c > > - Implement IDA to allocate id in gpio-nct6694.c, i2c-nct6694.c, > > nct6694_canfd.c and nct6694_wdt.c > > - Add header <linux/bitfield.h> in nct6694_canfd.c > > - Add support to config tdc in nct6694_canfd.c > > - Add module parameters to configure WDT's timeout and pretimeout value > > in nct6694_wdt.c > > > > Changes since version 9: > > - Add devm_add_action_or_reset() to dispose irq mapping > > - Add KernelDoc to exported functions in nct6694.c > > > > Changes since version 8: > > - Modify the signed-off-by with my work address > > - Rename all MFD cell names to "nct6694-xxx" > > - Add irq_dispose_mapping() in the error handling path and in the remove > > function > > - Fix some comments in nct6694.c and in nct6694.h > > - Add module parameters to configure I2C's baudrate in i2c-nct6694.c > > - Rename all function names nct6694_can_xxx to nct6694_canfd_xxx in > > nct6694_canfd.c > > - Fix nct6694_canfd_handle_state_change() in nct6694_canfd.c > > - Fix nct6694_canfd_start() to configure NBTP and DBTP in nct6694_canfd.c > > - Add can_set_static_ctrlmode() in nct6694_canfd.c > > > > Changes since version 7: > > - Add error handling for devm_mutex_init() > > - Modify the name of the child devices CAN1 and CAN2 to CAN0 and CAN1. > > - Fix multiline comments to net-dev style in nct6694_canfd.c > > > > Changes since version 6: > > - Fix nct6694_can_handle_state_change() in nct6694_canfd.c > > - Fix warnings in nct6694_canfd.c > > - Move the nct6694_can_priv's bec to the end in nct6694_canfd.c > > - Fix warning in nct6694_wdt.c > > - Fix temp_hyst's data type to signed variable in nct6694-hwmon.c > > > > Changes since version 5: > > - Modify the module name and the driver name consistently > > - Fix mfd_cell to MFD_CELL_NAME() and MFD_CELL_BASIC() > > - Drop unnecessary macros in nct6694.c > > - Update private data and drop mutex in nct6694_canfd.c > > - Fix nct6694_can_handle_state_change() in nct6694_canfd.c > > > > Changes since version 4: > > - Modify arguments in read/write function to a pointer to cmd_header > > - Modify all callers that call the read/write function > > - Move the nct6694_canfd.c to drivers/net/can/usb/ > > - Fix the missing rx offload function in nct6694_canfd.c > > - Fix warngings in nct6694-hwmon.c > > > > Changes since version 3: > > - Modify array buffer to structure for each drivers > > - Fix defines and comments for each drivers > > - Add header <linux/bits.h> and use BIT macro in nct6694.c and > > gpio-nct6694.c > > - Modify mutex_init() to devm_mutex_init() > > - Add rx-offload helper in nct6694_canfd.c > > - Drop watchdog_init_timeout() in nct6694_wdt.c > > - Modify the division method to DIV_ROUND_CLOSEST() in nct6694-hwmon.c > > - Drop private mutex and use rtc core lock in rtc-nct6694.c > > - Modify device_set_wakeup_capable() to device_init_wakeup() in > > rtc-nct6694.c > > > > Changes since version 2: > > - Add MODULE_ALIAS() for each child driver > > - Modify gpio line names be a local variable in gpio-nct6694.c > > - Drop unnecessary platform_get_drvdata() in gpio-nct6694.c > > - Rename each command in nct6694_canfd.c > > - Modify each function name consistently in nct6694_canfd.c > > - Modify the pretimeout validation procedure in nct6694_wdt.c > > - Fix warnings in nct6694-hwmon.c > > > > Changes since version 1: > > - Implement IRQ domain to handle IRQ demux in nct6694.c > > - Modify USB_DEVICE to USB_DEVICE_AND_INTERFACE_INFO API in nct6694.c > > - Add each driver's command structure > > - Fix USB functions in nct6694.c > > - Fix platform driver registration in each child driver > > - Sort each driver's header files alphabetically > > - Drop unnecessary header in gpio-nct6694.c > > - Add gpio line names in gpio-nct6694.c > > - Fix errors and warnings in nct6694_canfd.c > > - Fix TX-flow control in nct6694_canfd.c > > - Fix warnings in nct6694_wdt.c > > - Drop unnecessary logs in nct6694_wdt.c > > - Modify start() function to setup device in nct6694_wdt.c > > - Add voltage sensors functionality in nct6694-hwmon.c > > - Add temperature sensors functionality in nct6694-hwmon.c > > - Fix overwrite error return values in nct6694-hwmon.c > > - Add write value limitation for each write() function in nct6694-hwmon.c > > - Drop unnecessary logs in rtc-nct6694.c > > - Fix overwrite error return values in rtc-nct6694.c > > - Modify to use dev_err_probe API in rtc-nct6694.c > > > > > > 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 > > > > -- > > 2.34.1 > > > > -- > Lee Jones [李琼斯]
On Thu, 04 Sep 2025 09:50:41 +0800, a0282524688@gmail.com wrote:
> From: Ming Yu <a0282524688@gmail.com>
>
> 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).
>
> [...]
Applied, thanks!
[1/7] mfd: Add core driver for Nuvoton NCT6694
commit: 8c13787893fde313190b7dc844a24114dcc172a2
[2/7] gpio: Add Nuvoton NCT6694 GPIO support
(no commit info)
[3/7] i2c: Add Nuvoton NCT6694 I2C support
(no commit info)
[4/7] can: Add Nuvoton NCT6694 CANFD support
(no commit info)
[5/7] watchdog: Add Nuvoton NCT6694 WDT support
(no commit info)
[6/7] hwmon: Add Nuvoton NCT6694 HWMON support
(no commit info)
[7/7] rtc: Add Nuvoton NCT6694 RTC support
(no commit info)
--
Lee Jones [李琼斯]
On Thu, 11 Sep 2025, Lee Jones wrote: > On Thu, 04 Sep 2025 09:50:41 +0800, a0282524688@gmail.com wrote: > > From: Ming Yu <a0282524688@gmail.com> > > > > 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). > > > > [...] > > Applied, thanks! > > [1/7] mfd: Add core driver for Nuvoton NCT6694 > commit: 8c13787893fde313190b7dc844a24114dcc172a2 > [2/7] gpio: Add Nuvoton NCT6694 GPIO support > (no commit info) > [3/7] i2c: Add Nuvoton NCT6694 I2C support > (no commit info) > [4/7] can: Add Nuvoton NCT6694 CANFD support > (no commit info) > [5/7] watchdog: Add Nuvoton NCT6694 WDT support > (no commit info) > [6/7] hwmon: Add Nuvoton NCT6694 HWMON support > (no commit info) > [7/7] rtc: Add Nuvoton NCT6694 RTC support > (no commit info) I have no idea what this is about! Looks like b4 just had some kind of breakdown! To be clear, none of these have been applied. -- Lee Jones [李琼斯]
© 2016 - 2026 Red Hat, Inc.