mbox series

[0/3] Use MFD for Dallas/Maxim DS1374 driver series

Message ID HK2PR01MB3281DAE412911621A7F8963BFA970@HK2PR01MB3281.apcprd01.prod.exchangelabs.com (mailing list archive)
Headers show
Series Use MFD for Dallas/Maxim DS1374 driver series | expand

Message

Johnson CH Chen (陳昭勳) June 22, 2020, 10:03 a.m. UTC
Hello all,

This patch set uses MFD structure for DS1374 so that RTC and Watchdog
functions can be separately. Therefore, we can add more Watchdog 
subfunctions here.

A DS1374 MFD core driver supports the I2C communication to RTC and
Watchdog devices.

1. Add DS1374 MFD core driver with I2C bus.
2. Let DS1374 RTC driver has RTC and Alarm functions only.
3. Add DS1374 Watchdog driver.

Thanks,
Johnson

Johnson Chen (3):
  mfd: ds1374: Introduce Dallas/Maxim DS1374 MFD core driver
  rtc: rtc-ds1374: Move out Watchdog function and I2C client
  watchdog: ds1374_wdt: Introduce Dallas/Maxim DS1374 Watchdog driver

 drivers/mfd/Kconfig           |  11 +
 drivers/mfd/Makefile          |   2 +
 drivers/mfd/ds1374.c          | 101 ++++++++
 drivers/rtc/Kconfig           |   9 +-
 drivers/rtc/rtc-ds1374.c      | 458 ++++++----------------------------
 drivers/watchdog/Kconfig      |  11 +
 drivers/watchdog/Makefile     |   1 +
 drivers/watchdog/ds1374_wdt.c | 330 ++++++++++++++++++++++++
 8 files changed, 532 insertions(+), 391 deletions(-)
 create mode 100644 drivers/mfd/ds1374.c
 create mode 100644 drivers/watchdog/ds1374_wdt.c

Comments

Alexandre Belloni June 22, 2020, 11:25 a.m. UTC | #1
Hi,

On 22/06/2020 10:03:25+0000, Johnson CH Chen (陳昭勳) wrote:
> Hello all,
> 
> This patch set uses MFD structure for DS1374 so that RTC and Watchdog
> functions can be separately. Therefore, we can add more Watchdog 
> subfunctions here.
> 
> A DS1374 MFD core driver supports the I2C communication to RTC and
> Watchdog devices.
> 
> 1. Add DS1374 MFD core driver with I2C bus.
> 2. Let DS1374 RTC driver has RTC and Alarm functions only.
> 3. Add DS1374 Watchdog driver.
> 

For reference, this was the last attempt:

https://lore.kernel.org/linux-rtc/20170718092245.tc5oosbbb6lzvqpy@dell/

The main issue I see with your series is that there is no way to select
which of the rtc or the watchdog driver has to be used as IIRC each
function is mutually exclusive. I think you should work on the DT
bindings, addressing the few remaining comments.
Johnson CH Chen (陳昭勳) June 23, 2020, 3:19 a.m. UTC | #2
Hi, 
> 
> Hi,
> 
> On 22/06/2020 10:03:25+0000, Johnson CH Chen (陳昭勳) wrote:
> > Hello all,
> >
> > This patch set uses MFD structure for DS1374 so that RTC and Watchdog
> > functions can be separately. Therefore, we can add more Watchdog
> > subfunctions here.
> >
> > A DS1374 MFD core driver supports the I2C communication to RTC and
> > Watchdog devices.
> >
> > 1. Add DS1374 MFD core driver with I2C bus.
> > 2. Let DS1374 RTC driver has RTC and Alarm functions only.
> > 3. Add DS1374 Watchdog driver.
> >
> 
> For reference, this was the last attempt:
> 
> https://lore.kernel.org/linux-rtc/20170718092245.tc5oosbbb6lzvqpy@dell/
> 
> The main issue I see with your series is that there is no way to select which of
> the rtc or the watchdog driver has to be used as IIRC each function is mutually
> exclusive. I think you should work on the DT bindings, addressing the few
> remaining comments.
> 
Thanks for your review and good suggestion! 
Usage of rtc and watchdog should be defined in DT binding if we want to keep 
them separate.

I'll work towards these later.

> --
> Alexandre Belloni, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Best regards,
Johnson