All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/7] Add Nuvoton NCT6694 MFD drivers
@ 2024-11-21  6:40 Ming Yu
  2024-11-21  6:40 ` [PATCH v2 1/7] mfd: Add core driver for Nuvoton NCT6694 Ming Yu
                   ` (6 more replies)
  0 siblings, 7 replies; 20+ messages in thread
From: Ming Yu @ 2024-11-21  6:40 UTC (permalink / raw)
  To: tmyu0, lee, linus.walleij, brgl, andi.shyti, mkl, mailhol.vincent,
	andrew+netdev, davem, edumazet, kuba, pabeni, wim, linux,
	jdelvare, alexandre.belloni
  Cc: linux-kernel, linux-gpio, linux-i2c, linux-can, netdev,
	linux-watchdog, linux-hwmon, linux-rtc

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 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 CAN support
  watchdog: Add Nuvoton NCT6694 WDT support
  hwmon: Add Nuvoton NCT6694 HWMON support
  rtc: Add Nuvoton NCT6694 RTC support

 MAINTAINERS                      |  13 +
 drivers/gpio/Kconfig             |  12 +
 drivers/gpio/Makefile            |   1 +
 drivers/gpio/gpio-nct6694.c      | 441 +++++++++++++++
 drivers/hwmon/Kconfig            |  10 +
 drivers/hwmon/Makefile           |   1 +
 drivers/hwmon/nct6694-hwmon.c    | 771 +++++++++++++++++++++++++
 drivers/i2c/busses/Kconfig       |  10 +
 drivers/i2c/busses/Makefile      |   1 +
 drivers/i2c/busses/i2c-nct6694.c | 152 +++++
 drivers/mfd/Kconfig              |  10 +
 drivers/mfd/Makefile             |   2 +
 drivers/mfd/nct6694.c            | 382 +++++++++++++
 drivers/net/can/Kconfig          |  10 +
 drivers/net/can/Makefile         |   1 +
 drivers/net/can/nct6694_canfd.c  | 926 +++++++++++++++++++++++++++++++
 drivers/rtc/Kconfig              |  10 +
 drivers/rtc/Makefile             |   1 +
 drivers/rtc/rtc-nct6694.c        | 263 +++++++++
 drivers/watchdog/Kconfig         |  11 +
 drivers/watchdog/Makefile        |   1 +
 drivers/watchdog/nct6694_wdt.c   | 277 +++++++++
 include/linux/mfd/nct6694.h      | 139 +++++
 23 files changed, 3445 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/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


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2024-11-22 23:10 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-21  6:40 [PATCH v2 0/7] Add Nuvoton NCT6694 MFD drivers Ming Yu
2024-11-21  6:40 ` [PATCH v2 1/7] mfd: Add core driver for Nuvoton NCT6694 Ming Yu
2024-11-21  6:40 ` [PATCH v2 2/7] gpio: Add Nuvoton NCT6694 GPIO support Ming Yu
2024-11-21  8:28   ` Bartosz Golaszewski
2024-11-22  7:20     ` Ming Yu
2024-11-21  6:40 ` [PATCH v2 3/7] i2c: Add Nuvoton NCT6694 I2C support Ming Yu
2024-11-21  6:40 ` [PATCH v2 4/7] can: Add Nuvoton NCT6694 CAN support Ming Yu
2024-11-21  7:47   ` Vincent Mailhol
2024-11-22  8:03     ` Ming Yu
2024-11-22  8:18       ` Vincent Mailhol
2024-11-22  9:51         ` Ming Yu
2024-11-21  6:40 ` [PATCH v2 5/7] watchdog: Add Nuvoton NCT6694 WDT support Ming Yu
2024-11-21 14:15   ` Guenter Roeck
2024-11-22  8:11     ` Ming Yu
2024-11-21  6:40 ` [PATCH v2 6/7] hwmon: Add Nuvoton NCT6694 HWMON support Ming Yu
2024-11-21 14:22   ` Guenter Roeck
2024-11-22  8:15     ` Ming Yu
2024-11-22 11:51   ` kernel test robot
2024-11-22 23:10   ` kernel test robot
2024-11-21  6:40 ` [PATCH v2 7/7] rtc: Add Nuvoton NCT6694 RTC support Ming Yu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.