mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 1/6] mfd: rn5t568: rename to rn5t618
@ 2026-06-11 11:21 Lucas Stach
  2026-06-11 11:21 ` [PATCH 2/6] mfd: rn5t618: use defined compatibles Lucas Stach
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

For unclear reasons the driver is based on the Linux rn5t618 driver,
but has been added to Barebox under a different name. To avoid
confusion sync the name with the Linux driver.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/mfd/Kconfig                  |   6 +-
 drivers/mfd/Makefile                 |   2 +-
 drivers/mfd/{rn5t568.c => rn5t618.c} |  76 +++++++--------
 drivers/watchdog/Kconfig             |   2 +-
 include/mfd/rn5t568.h                | 134 ---------------------------
 include/mfd/rn5t618.h                | 134 +++++++++++++++++++++++++++
 6 files changed, 177 insertions(+), 177 deletions(-)
 rename drivers/mfd/{rn5t568.c => rn5t618.c} (53%)
 delete mode 100644 include/mfd/rn5t568.h
 create mode 100644 include/mfd/rn5t618.h

diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 22b57eee1669..305a79baca46 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -81,12 +81,12 @@ config MFD_PCA9450
 	help
 	  Select this to support communication with the PCA9450 PMIC.
 
-config MFD_RN568PMIC
+config MFD_RN5T618
 	depends on I2C
 	select REGMAP_I2C
-	bool "Ricoh RN5T568 MFD driver"
+	bool "Ricoh RN5T567/618 MFD driver"
 	help
-	  Select this to support communication with the Ricoh RN5T568 PMIC.
+	  Select this to support communication with the Ricoh RN5T567/618 PMIC.
 
 config MFD_SUPERIO
 	bool
diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
index 9d27b0bc336a..ae36d40d51be 100644
--- a/drivers/mfd/Makefile
+++ b/drivers/mfd/Makefile
@@ -15,7 +15,7 @@ obj-$(CONFIG_MFD_TWL4030)	+= twl4030.o
 obj-$(CONFIG_MFD_TWL6030)	+= twl6030.o
 obj-$(CONFIG_RAVE_SP_CORE)	+= rave-sp.o
 obj-$(CONFIG_MFD_STPMIC1)	+= stpmic1.o
-obj-$(CONFIG_MFD_RN568PMIC)	+= rn5t568.o
+obj-$(CONFIG_MFD_RN5T618)	+= rn5t618.o
 obj-$(CONFIG_MFD_SUPERIO)	+= superio.o
 obj-$(CONFIG_FINTEK_SUPERIO)	+= fintek-superio.o
 obj-$(CONFIG_SMSC_SUPERIO)	+= smsc-superio.o
diff --git a/drivers/mfd/rn5t568.c b/drivers/mfd/rn5t618.c
similarity index 53%
rename from drivers/mfd/rn5t568.c
rename to drivers/mfd/rn5t618.c
index 5a0cec464a07..3af3e6e3e039 100644
--- a/drivers/mfd/rn5t568.c
+++ b/drivers/mfd/rn5t618.c
@@ -16,29 +16,29 @@
 #include <linux/regmap.h>
 #include <reset_source.h>
 #include <restart.h>
-#include <mfd/rn5t568.h>
+#include <mfd/rn5t618.h>
 
-struct rn5t568 {
+struct rn5t618 {
 	struct restart_handler restart;
 	struct regmap *regmap;
 };
 
-static void rn5t568_restart(struct restart_handler *rst,
+static void rn5t618_restart(struct restart_handler *rst,
 			    unsigned long flags)
 {
-	struct rn5t568 *rn5t568 = container_of(rst, struct rn5t568, restart);
+	struct rn5t618 *rn5t618 = container_of(rst, struct rn5t618, restart);
 
-	regmap_write(rn5t568->regmap, RN5T568_SLPCNT, RN5T568_SLPCNT_SWPPWROFF);
+	regmap_write(rn5t618->regmap, RN5T618_SLPCNT, RN5T618_SLPCNT_SWPPWROFF);
 }
 
-static int rn5t568_reset_reason_detect(struct device *dev,
+static int rn5t618_reset_reason_detect(struct device *dev,
 				       struct regmap *regmap)
 {
 	enum reset_src_type type;
 	unsigned int reg;
 	int ret;
 
-	ret = regmap_read(regmap, RN5T568_PONHIS, &reg);
+	ret = regmap_read(regmap, RN5T618_PONHIS, &reg);
 	if (ret)
 		return ret;
 
@@ -49,32 +49,32 @@ static int rn5t568_reset_reason_detect(struct device *dev,
 		return 0;
 	}
 
-	if (reg & (RN5T568_PONHIS_ON_EXTINPON | RN5T568_PONHIS_ON_PWRONPON)) {
+	if (reg & (RN5T618_PONHIS_ON_EXTINPON | RN5T618_PONHIS_ON_PWRONPON)) {
 		type = RESET_POR;
-	} else if (!(reg & RN5T568_PONHIS_ON_REPWRPON)) {
+	} else if (!(reg & RN5T618_PONHIS_ON_REPWRPON)) {
 		return -EINVAL;
 	} else {
-		ret = regmap_read(regmap, RN5T568_POFFHIS, &reg);
+		ret = regmap_read(regmap, RN5T618_POFFHIS, &reg);
 		if (ret)
 			return ret;
 
 		dev_dbg(dev, "Power-off history: %x\n", reg);
 
-		if (reg & RN5T568_POFFHIS_PWRONPOFF)
+		if (reg & RN5T618_POFFHIS_PWRONPOFF)
 			type = RESET_POR;
-		else if (reg & RN5T568_POFFHIS_TSHUTPOFF)
+		else if (reg & RN5T618_POFFHIS_TSHUTPOFF)
 			type = RESET_THERM;
-		else if (reg & RN5T568_POFFHIS_VINDETPOFF)
+		else if (reg & RN5T618_POFFHIS_VINDETPOFF)
 			type = RESET_BROWNOUT;
-		else if (reg & RN5T568_POFFHIS_IODETPOFF)
+		else if (reg & RN5T618_POFFHIS_IODETPOFF)
 			type = RESET_UKWN;
-		else if (reg & RN5T568_POFFHIS_CPUPOFF)
+		else if (reg & RN5T618_POFFHIS_CPUPOFF)
 			type = RESET_RST;
-		else if (reg & RN5T568_POFFHIS_WDGPOFF)
+		else if (reg & RN5T618_POFFHIS_WDGPOFF)
 			type = RESET_WDG;
-		else if (reg & RN5T568_POFFHIS_DCLIMPOFF)
+		else if (reg & RN5T618_POFFHIS_DCLIMPOFF)
 			type = RESET_BROWNOUT;
-		else if (reg & RN5T568_POFFHIS_N_OEPOFF)
+		else if (reg & RN5T618_POFFHIS_N_OEPOFF)
 			type = RESET_EXT;
 		else
 			return -EINVAL;
@@ -84,20 +84,20 @@ static int rn5t568_reset_reason_detect(struct device *dev,
 	return 0;
 }
 
-static const struct regmap_config rn5t568_regmap_config = {
+static const struct regmap_config rn5t618_regmap_config = {
 	.reg_bits	= 8,
 	.val_bits	= 8,
-	.max_register	= RN5T568_MAX_REG,
+	.max_register	= RN5T618_MAX_REG,
 };
 
-static int __init rn5t568_i2c_probe(struct device *dev)
+static int __init rn5t618_i2c_probe(struct device *dev)
 {
-	struct rn5t568 *pmic_instance;
+	struct rn5t618 *pmic_instance;
 	unsigned char reg[2];
 	int ret;
 
-	pmic_instance = xzalloc(sizeof(struct rn5t568));
-	pmic_instance->regmap = regmap_init_i2c(to_i2c_client(dev), &rn5t568_regmap_config);
+	pmic_instance = xzalloc(sizeof(struct rn5t618));
+	pmic_instance->regmap = regmap_init_i2c(to_i2c_client(dev), &rn5t618_regmap_config);
 	if (IS_ERR(pmic_instance->regmap))
 		return PTR_ERR(pmic_instance->regmap);
 
@@ -105,41 +105,41 @@ static int __init rn5t568_i2c_probe(struct device *dev)
 	if (ret)
 		return ret;
 
-	ret = regmap_bulk_read(pmic_instance->regmap, RN5T568_LSIVER, &reg, 2);
+	ret = regmap_bulk_read(pmic_instance->regmap, RN5T618_LSIVER, &reg, 2);
 	if (ret) {
 		dev_err(dev, "Failed to read PMIC version via I2C\n");
 		return ret;
 	}
 
-	dev_info(dev, "Found NMD RN5T568 LSI %x, OTP: %x\n", reg[0], reg[1]);
+	dev_info(dev, "Found NMD RN5T567/618 LSI %x, OTP: %x\n", reg[0], reg[1]);
 
 	/* Settings used to trigger software reset and by a watchdog trigger */
-	regmap_write(pmic_instance->regmap, RN5T568_REPCNT, RN5T568_REPCNT_OFF_RESETO_16MS |
-		     RN5T568_REPCNT_OFF_REPWRTIM_1000MS | RN5T568_REPCNT_OFF_REPWRON);
+	regmap_write(pmic_instance->regmap, RN5T618_REPCNT, RN5T618_REPCNT_OFF_RESETO_16MS |
+		     RN5T618_REPCNT_OFF_REPWRTIM_1000MS | RN5T618_REPCNT_OFF_REPWRON);
 
 	pmic_instance->restart.of_node = dev->of_node;
-	pmic_instance->restart.name = "RN5T568";
-	pmic_instance->restart.restart = &rn5t568_restart;
+	pmic_instance->restart.name = "RN5T618";
+	pmic_instance->restart.restart = &rn5t618_restart;
 	restart_handler_register(&pmic_instance->restart);
 	dev_dbg(dev, "RN5t: Restart handler with priority %d registered\n", pmic_instance->restart.priority);
 
-	ret = rn5t568_reset_reason_detect(dev, pmic_instance->regmap);
+	ret = rn5t618_reset_reason_detect(dev, pmic_instance->regmap);
 	if (ret)
 		dev_warn(dev, "Failed to query reset reason\n");
 
 	return of_platform_populate(dev->of_node, NULL, dev);
 }
 
-static __maybe_unused const struct of_device_id rn5t568_of_match[] = {
+static __maybe_unused const struct of_device_id rn5t618_of_match[] = {
 	{ .compatible = "ricoh,rn5t568", .data = NULL, },
 	{ }
 };
-MODULE_DEVICE_TABLE(of, rn5t568_of_match);
+MODULE_DEVICE_TABLE(of, rn5t618_of_match);
 
-static struct driver rn5t568_i2c_driver = {
-	.name		= "rn5t568-i2c",
-	.probe		= rn5t568_i2c_probe,
-	.of_compatible	= DRV_OF_COMPAT(rn5t568_of_match),
+static struct driver rn5t618_i2c_driver = {
+	.name		= "rn5t618-i2c",
+	.probe		= rn5t618_i2c_probe,
+	.of_compatible	= DRV_OF_COMPAT(rn5t618_of_match),
 };
 
-coredevice_i2c_driver(rn5t568_i2c_driver);
+coredevice_i2c_driver(rn5t618_i2c_driver);
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index c962e8f22e5a..97a305c164dc 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -128,7 +128,7 @@ config STPMIC1_WATCHDOG
 
 config RN568_WATCHDOG
 	bool "Ricoh RN5t568 PMIC based Watchdog"
-	depends on MFD_RN568PMIC
+	depends on MFD_RN5T618
 	help
 	  Enable to support system control via the PMIC based watchdog.
 
diff --git a/include/mfd/rn5t568.h b/include/mfd/rn5t568.h
deleted file mode 100644
index 04b6c832a5d5..000000000000
--- a/include/mfd/rn5t568.h
+++ /dev/null
@@ -1,134 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
- * Copyright (C) 2016 Toradex AG
- */
-
-#ifndef __MFD_RN5T568_H
-#define __MFD_RN5T568_H
-
-#include <linux/bits.h>
-
-/* RN5T568 registers */
-enum {
-	RN5T568_LSIVER		= 0x00,
-	RN5T568_OTPVER		= 0x01,
-	RN5T568_IODAC		= 0x02,
-	RN5T568_VINDAC		= 0x03,
-	RN5T568_OUT32KEN	= 0x05,
-
-	RN5T568_CPUCNT		= 0x06,
-
-	RN5T568_PSWR		= 0x07,
-	RN5T568_PONHIS		= 0x09,
-	RN5T568_POFFHIS		= 0x0A,
-	RN5T568_WATCHDOG	= 0x0B,
-	RN5T568_WATCHDOGCNT	= 0x0C,
-	RN5T568_PWRFUNC		= 0x0D,
-	RN5T568_SLPCNT		= 0x0E,
-	RN5T568_REPCNT		= 0x0F,
-	RN5T568_PWRONTIMSET	= 0x10,
-	RN5T568_NOETIMSETCNT	= 0x11,
-	RN5T568_PWRIREN		= 0x12,
-	RN5T568_PWRIRQ		= 0x13,
-	RN5T568_PWRMON		= 0x14,
-	RN5T568_PWRIRSEL	= 0x15,
-
-	RN5T568_DC1_SLOT	= 0x16,
-	RN5T568_DC2_SLOT	= 0x17,
-	RN5T568_DC3_SLOT	= 0x18,
-	RN5T568_DC4_SLOT	= 0x19,
-
-	RN5T568_LDO1_SLOT	= 0x1B,
-	RN5T568_LDO2_SLOT	= 0x1C,
-	RN5T568_LDO3_SLOT	= 0x1D,
-	RN5T568_LDO4_SLOT	= 0x1E,
-	RN5T568_LDO5_SLOT	= 0x1F,
-
-	RN5T568_PSO0_SLOT	= 0x25,
-	RN5T568_PSO1_SLOT	= 0x26,
-	RN5T568_PSO2_SLOT	= 0x27,
-	RN5T568_PSO3_SLOT	= 0x28,
-
-	RN5T568_LDORTC1_SLOT	= 0x2A,
-
-	RN5T568_DC1CTL		= 0x2C,
-	RN5T568_DC1CTL2		= 0x2D,
-	RN5T568_DC2CTL		= 0x2E,
-	RN5T568_DC2CTL2		= 0x2F,
-	RN5T568_DC3CTL		= 0x30,
-	RN5T568_DC3CTL2		= 0x31,
-	RN5T568_DC4CTL		= 0x32,
-	RN5T568_DC4CTL2		= 0x33,
-
-	RN5T568_DC1DAC		= 0x36,
-	RN5T568_DC2DAC		= 0x37,
-	RN5T568_DC3DAC		= 0x38,
-	RN5T568_DC4DAC		= 0x39,
-
-	RN5T568_DC1DAC_SLP	= 0x3B,
-	RN5T568_DC2DAC_SLP	= 0x3C,
-	RN5T568_DC3DAC_SLP	= 0x3D,
-	RN5T568_DC4DAC_SLP	= 0x3E,
-
-	RN5T568_DCIREN		= 0x40,
-	RN5T568_DCIRQ		= 0x41,
-	RN5T568_DCIRMON		= 0x42,
-
-	RN5T568_LDOEN1		= 0x44,
-	RN5T568_LDOEN2		= 0x45,
-	RN5T568_LDODIS1		= 0x46,
-
-	RN5T568_LDO1DAC		= 0x4C,
-	RN5T568_LDO2DAC		= 0x4D,
-	RN5T568_LDO3DAC		= 0x4E,
-	RN5T568_LDO4DAC		= 0x4F,
-	RN5T568_LDO5DAC		= 0x50,
-
-	RN5T568_LDORTC1DAC	= 0x56,
-	RN5T568_LDORTC2DAC	= 0x57,
-
-	RN5T568_LDO1DAC_SLP	= 0x58,
-	RN5T568_LDO2DAC_SLP	= 0x59,
-	RN5T568_LDO3DAC_SLP	= 0x5A,
-	RN5T568_LDO4DAC_SLP	= 0x5B,
-	RN5T568_LDO5DAC_SLP	= 0x5C,
-
-	RN5T568_IOSEL		= 0x90,
-	RN5T568_IOOUT		= 0x91,
-	RN5T568_GPEDGE1		= 0x92,
-	RN5T568_EN_GPIR		= 0x94,
-	RN5T568_IR_GPR		= 0x95,
-	RN5T568_IR_GPF		= 0x96,
-	RN5T568_MON_IOIN	= 0x97,
-	RN5T568_GPLED_FUNC	= 0x98,
-	RN5T568_INTPOL		= 0x9C,
-	RN5T568_INTEN		= 0x9D,
-	RN5T568_INTMON		= 0x9E,
-
-	RN5T568_PREVINDAC	= 0xB0,
-	RN5T568_OVTEMP		= 0xBC,
-
-	RN5T568_MAX_REG		= 0xBC,
-};
-
-#define RN5T568_PONHIS_ON_EXTINPON		BIT(3)
-#define RN5T568_PONHIS_ON_REPWRPON		BIT(1)
-#define RN5T568_PONHIS_ON_PWRONPON		BIT(0)
-
-#define RN5T568_POFFHIS_N_OEPOFF		BIT(7)
-#define RN5T568_POFFHIS_DCLIMPOFF		BIT(6)
-#define RN5T568_POFFHIS_WDGPOFF			BIT(5)
-#define RN5T568_POFFHIS_CPUPOFF			BIT(4)
-#define RN5T568_POFFHIS_IODETPOFF		BIT(3)
-#define RN5T568_POFFHIS_VINDETPOFF		BIT(2)
-#define RN5T568_POFFHIS_TSHUTPOFF		BIT(1)
-#define RN5T568_POFFHIS_PWRONPOFF		BIT(0)
-
-#define RN5T568_SLPCNT_SWPPWROFF		BIT(0)
-
-#define RN5T568_REPCNT_OFF_RESETO_16MS		0x30
-#define RN5T568_REPCNT_OFF_REPWRTIM_1000MS	0x06
-#define RN5T568_REPCNT_OFF_REPWRON		BIT(0)
-
-#endif
diff --git a/include/mfd/rn5t618.h b/include/mfd/rn5t618.h
new file mode 100644
index 000000000000..196ae00fb5b1
--- /dev/null
+++ b/include/mfd/rn5t618.h
@@ -0,0 +1,134 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
+ * Copyright (C) 2016 Toradex AG
+ */
+
+#ifndef __MFD_RN5T618_H
+#define __MFD_RN5T618_H
+
+#include <linux/bits.h>
+
+/* RN5T618 registers */
+enum {
+	RN5T618_LSIVER		= 0x00,
+	RN5T618_OTPVER		= 0x01,
+	RN5T618_IODAC		= 0x02,
+	RN5T618_VINDAC		= 0x03,
+	RN5T618_OUT32KEN	= 0x05,
+
+	RN5T618_CPUCNT		= 0x06,
+
+	RN5T618_PSWR		= 0x07,
+	RN5T618_PONHIS		= 0x09,
+	RN5T618_POFFHIS		= 0x0A,
+	RN5T618_WATCHDOG	= 0x0B,
+	RN5T618_WATCHDOGCNT	= 0x0C,
+	RN5T618_PWRFUNC		= 0x0D,
+	RN5T618_SLPCNT		= 0x0E,
+	RN5T618_REPCNT		= 0x0F,
+	RN5T618_PWRONTIMSET	= 0x10,
+	RN5T618_NOETIMSETCNT	= 0x11,
+	RN5T618_PWRIREN		= 0x12,
+	RN5T618_PWRIRQ		= 0x13,
+	RN5T618_PWRMON		= 0x14,
+	RN5T618_PWRIRSEL	= 0x15,
+
+	RN5T618_DC1_SLOT	= 0x16,
+	RN5T618_DC2_SLOT	= 0x17,
+	RN5T618_DC3_SLOT	= 0x18,
+	RN5T618_DC4_SLOT	= 0x19,
+
+	RN5T618_LDO1_SLOT	= 0x1B,
+	RN5T618_LDO2_SLOT	= 0x1C,
+	RN5T618_LDO3_SLOT	= 0x1D,
+	RN5T618_LDO4_SLOT	= 0x1E,
+	RN5T618_LDO5_SLOT	= 0x1F,
+
+	RN5T618_PSO0_SLOT	= 0x25,
+	RN5T618_PSO1_SLOT	= 0x26,
+	RN5T618_PSO2_SLOT	= 0x27,
+	RN5T618_PSO3_SLOT	= 0x28,
+
+	RN5T618_LDORTC1_SLOT	= 0x2A,
+
+	RN5T618_DC1CTL		= 0x2C,
+	RN5T618_DC1CTL2		= 0x2D,
+	RN5T618_DC2CTL		= 0x2E,
+	RN5T618_DC2CTL2		= 0x2F,
+	RN5T618_DC3CTL		= 0x30,
+	RN5T618_DC3CTL2		= 0x31,
+	RN5T618_DC4CTL		= 0x32,
+	RN5T618_DC4CTL2		= 0x33,
+
+	RN5T618_DC1DAC		= 0x36,
+	RN5T618_DC2DAC		= 0x37,
+	RN5T618_DC3DAC		= 0x38,
+	RN5T618_DC4DAC		= 0x39,
+
+	RN5T618_DC1DAC_SLP	= 0x3B,
+	RN5T618_DC2DAC_SLP	= 0x3C,
+	RN5T618_DC3DAC_SLP	= 0x3D,
+	RN5T618_DC4DAC_SLP	= 0x3E,
+
+	RN5T618_DCIREN		= 0x40,
+	RN5T618_DCIRQ		= 0x41,
+	RN5T618_DCIRMON		= 0x42,
+
+	RN5T618_LDOEN1		= 0x44,
+	RN5T618_LDOEN2		= 0x45,
+	RN5T618_LDODIS1		= 0x46,
+
+	RN5T618_LDO1DAC		= 0x4C,
+	RN5T618_LDO2DAC		= 0x4D,
+	RN5T618_LDO3DAC		= 0x4E,
+	RN5T618_LDO4DAC		= 0x4F,
+	RN5T618_LDO5DAC		= 0x50,
+
+	RN5T618_LDORTC1DAC	= 0x56,
+	RN5T618_LDORTC2DAC	= 0x57,
+
+	RN5T618_LDO1DAC_SLP	= 0x58,
+	RN5T618_LDO2DAC_SLP	= 0x59,
+	RN5T618_LDO3DAC_SLP	= 0x5A,
+	RN5T618_LDO4DAC_SLP	= 0x5B,
+	RN5T618_LDO5DAC_SLP	= 0x5C,
+
+	RN5T618_IOSEL		= 0x90,
+	RN5T618_IOOUT		= 0x91,
+	RN5T618_GPEDGE1		= 0x92,
+	RN5T618_EN_GPIR		= 0x94,
+	RN5T618_IR_GPR		= 0x95,
+	RN5T618_IR_GPF		= 0x96,
+	RN5T618_MON_IOIN	= 0x97,
+	RN5T618_GPLED_FUNC	= 0x98,
+	RN5T618_INTPOL		= 0x9C,
+	RN5T618_INTEN		= 0x9D,
+	RN5T618_INTMON		= 0x9E,
+
+	RN5T618_PREVINDAC	= 0xB0,
+	RN5T618_OVTEMP		= 0xBC,
+
+	RN5T618_MAX_REG		= 0xBC,
+};
+
+#define RN5T618_PONHIS_ON_EXTINPON		BIT(3)
+#define RN5T618_PONHIS_ON_REPWRPON		BIT(1)
+#define RN5T618_PONHIS_ON_PWRONPON		BIT(0)
+
+#define RN5T618_POFFHIS_N_OEPOFF		BIT(7)
+#define RN5T618_POFFHIS_DCLIMPOFF		BIT(6)
+#define RN5T618_POFFHIS_WDGPOFF			BIT(5)
+#define RN5T618_POFFHIS_CPUPOFF			BIT(4)
+#define RN5T618_POFFHIS_IODETPOFF		BIT(3)
+#define RN5T618_POFFHIS_VINDETPOFF		BIT(2)
+#define RN5T618_POFFHIS_TSHUTPOFF		BIT(1)
+#define RN5T618_POFFHIS_PWRONPOFF		BIT(0)
+
+#define RN5T618_SLPCNT_SWPPWROFF		BIT(0)
+
+#define RN5T618_REPCNT_OFF_RESETO_16MS		0x30
+#define RN5T618_REPCNT_OFF_REPWRTIM_1000MS	0x06
+#define RN5T618_REPCNT_OFF_REPWRON		BIT(0)
+
+#endif

base-commit: 6c70fb327d486376c1f2e37dfff2212cb9eebb1b
-- 
2.47.3




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

* [PATCH 2/6] mfd: rn5t618: use defined compatibles
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
@ 2026-06-11 11:21 ` Lucas Stach
  2026-06-11 11:21 ` [PATCH 3/6] mfd: rn5t618: demote probe message to debug level Lucas Stach
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

Match to the compatibles defined in the ricoh,rn5t618.yaml DT schema.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/mfd/rn5t618.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/rn5t618.c b/drivers/mfd/rn5t618.c
index 3af3e6e3e039..2cecdac49b5f 100644
--- a/drivers/mfd/rn5t618.c
+++ b/drivers/mfd/rn5t618.c
@@ -131,7 +131,9 @@ static int __init rn5t618_i2c_probe(struct device *dev)
 }
 
 static __maybe_unused const struct of_device_id rn5t618_of_match[] = {
-	{ .compatible = "ricoh,rn5t568", .data = NULL, },
+	{ .compatible = "ricoh,rn5t567" },
+	{ .compatible = "ricoh,rn5t618" },
+	{ .compatible = "ricoh,rc5t619" },
 	{ }
 };
 MODULE_DEVICE_TABLE(of, rn5t618_of_match);
-- 
2.47.3




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

* [PATCH 3/6] mfd: rn5t618: demote probe message to debug level
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
  2026-06-11 11:21 ` [PATCH 2/6] mfd: rn5t618: use defined compatibles Lucas Stach
@ 2026-06-11 11:21 ` Lucas Stach
  2026-06-11 11:21 ` [PATCH 4/6] mfd: rn5t618: wait a bit after triggering restart Lucas Stach
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/mfd/rn5t618.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mfd/rn5t618.c b/drivers/mfd/rn5t618.c
index 2cecdac49b5f..d0c8824489a1 100644
--- a/drivers/mfd/rn5t618.c
+++ b/drivers/mfd/rn5t618.c
@@ -111,7 +111,7 @@ static int __init rn5t618_i2c_probe(struct device *dev)
 		return ret;
 	}
 
-	dev_info(dev, "Found NMD RN5T567/618 LSI %x, OTP: %x\n", reg[0], reg[1]);
+	dev_dbg(dev, "Found NMD RN5T567/618 LSI %x, OTP: %x\n", reg[0], reg[1]);
 
 	/* Settings used to trigger software reset and by a watchdog trigger */
 	regmap_write(pmic_instance->regmap, RN5T618_REPCNT, RN5T618_REPCNT_OFF_RESETO_16MS |
-- 
2.47.3




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

* [PATCH 4/6] mfd: rn5t618: wait a bit after triggering restart
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
  2026-06-11 11:21 ` [PATCH 2/6] mfd: rn5t618: use defined compatibles Lucas Stach
  2026-06-11 11:21 ` [PATCH 3/6] mfd: rn5t618: demote probe message to debug level Lucas Stach
@ 2026-06-11 11:21 ` Lucas Stach
  2026-06-11 11:21 ` [PATCH 5/6] watchdog: RN568: rename to rn5t618 Lucas Stach
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

The shutdown sequence performed by the PMIC after the
restart is triggered isn't instantaneous. Wait a bit
to allow the PMIC to act on our request.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/mfd/rn5t618.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/mfd/rn5t618.c b/drivers/mfd/rn5t618.c
index d0c8824489a1..d757802b5363 100644
--- a/drivers/mfd/rn5t618.c
+++ b/drivers/mfd/rn5t618.c
@@ -29,6 +29,8 @@ static void rn5t618_restart(struct restart_handler *rst,
 	struct rn5t618 *rn5t618 = container_of(rst, struct rn5t618, restart);
 
 	regmap_write(rn5t618->regmap, RN5T618_SLPCNT, RN5T618_SLPCNT_SWPPWROFF);
+
+	mdelay(100);
 }
 
 static int rn5t618_reset_reason_detect(struct device *dev,
-- 
2.47.3




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

* [PATCH 5/6] watchdog: RN568: rename to rn5t618
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
                   ` (2 preceding siblings ...)
  2026-06-11 11:21 ` [PATCH 4/6] mfd: rn5t618: wait a bit after triggering restart Lucas Stach
@ 2026-06-11 11:21 ` Lucas Stach
  2026-06-11 11:21 ` [PATCH 6/6] rn5t618: mfd/watchdog: switch to mfd device population Lucas Stach
  2026-06-15  7:50 ` [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Sascha Hauer
  5 siblings, 0 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

Align driver name with the Linux driver.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/watchdog/Kconfig       |   4 +-
 drivers/watchdog/Makefile      |   2 +-
 drivers/watchdog/rn5t568_wdt.c | 147 ---------------------------------
 drivers/watchdog/rn5t618_wdt.c | 140 +++++++++++++++++++++++++++++++
 include/mfd/rn5t618.h          |   6 ++
 5 files changed, 149 insertions(+), 150 deletions(-)
 delete mode 100644 drivers/watchdog/rn5t568_wdt.c
 create mode 100644 drivers/watchdog/rn5t618_wdt.c

diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 97a305c164dc..14fdb7cf68f3 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -126,8 +126,8 @@ config STPMIC1_WATCHDOG
 	help
 	  Enable to support configuration of the stpmic1's built-in watchdog.
 
-config RN568_WATCHDOG
-	bool "Ricoh RN5t568 PMIC based Watchdog"
+config RN5T618_WATCHDOG
+	bool "Ricoh RN5T618/567 PMIC based Watchdog"
 	depends on MFD_RN5T618
 	help
 	  Enable to support system control via the PMIC based watchdog.
diff --git a/drivers/watchdog/Makefile b/drivers/watchdog/Makefile
index 187ab247ddcf..c49d090f8d7c 100644
--- a/drivers/watchdog/Makefile
+++ b/drivers/watchdog/Makefile
@@ -17,7 +17,7 @@ obj-$(CONFIG_ARCH_BCM283X) += bcm2835_wdt.o
 obj-$(CONFIG_RAVE_SP_WATCHDOG) += rave-sp-wdt.o
 obj-$(CONFIG_STM32_IWDG_WATCHDOG) += stm32_iwdg.o
 obj-$(CONFIG_STPMIC1_WATCHDOG) += stpmic1_wdt.o
-obj-$(CONFIG_RN568_WATCHDOG) += rn5t568_wdt.o
+obj-$(CONFIG_RN5T618_WATCHDOG) += rn5t618_wdt.o
 obj-$(CONFIG_F71808E_WDT) += f71808e_wdt.o
 obj-$(CONFIG_GPIO_WATCHDOG) += gpio_wdt.o
 obj-$(CONFIG_ITCO_WDT) += itco_wdt.o
diff --git a/drivers/watchdog/rn5t568_wdt.c b/drivers/watchdog/rn5t568_wdt.c
deleted file mode 100644
index 8c3e4175f9c0..000000000000
--- a/drivers/watchdog/rn5t568_wdt.c
+++ /dev/null
@@ -1,147 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Watchdog driver for Ricoh RN5T618 PMIC
- *
- * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
- */
-
-#include <common.h>
-#include <init.h>
-#include <watchdog.h>
-#include <linux/regmap.h>
-#include <of.h>
-
-#define RN5T568_WATCHDOG 0x0b
-# define RN5T568_WATCHDOG_WDPWROFFEN BIT(2)
-# define RN5T568_WATCHDOG_WDOGTIM_M (BIT(0) | BIT(1))
-#define RN5T568_PWRIREN 0x12
-# define RN5T568_PWRIREN_EN_WDOG BIT(6)
-#define RN5T568_PWRIRQ 0x13
-# define RN5T568_PWRIRQ_IR_WDOG BIT(6)
-
-struct rn5t568_wdt {
-	struct watchdog wdd;
-	struct regmap *regmap;
-	unsigned int timeout;
-};
-
-struct rn5t568_wdt_tim {
-	u8 reg_val;
-	u8 time;
-};
-
-static const struct rn5t568_wdt_tim rn5t568_wdt_timeout[] = {
-	{ .reg_val = 0, .time = 1, },
-	{ .reg_val = 1, .time = 8, },
-	{ .reg_val = 2, .time = 32, },
-	{ .reg_val = 3, .time = 128, },
-};
-
-#define PMIC_WDT_MAX_TIMEOUT 128
-
-static int rn5t568_wdt_start(struct regmap *regmap, int idx)
-{
-	int ret;
-
-	ret = regmap_update_bits(regmap, RN5T568_WATCHDOG, RN5T568_WATCHDOG_WDOGTIM_M,
-				 rn5t568_wdt_timeout[idx].reg_val);
-	if (ret)
-		return ret;
-
-	regmap_clear_bits(regmap, RN5T568_PWRIRQ, RN5T568_PWRIRQ_IR_WDOG);
-	regmap_set_bits(regmap, RN5T568_PWRIREN, RN5T568_PWRIREN_EN_WDOG);
-
-	pr_debug("RN5t: Starting the watchdog with %u seconds\n", rn5t568_wdt_timeout[idx].time);
-
-	return regmap_set_bits(regmap, RN5T568_WATCHDOG, RN5T568_WATCHDOG_WDPWROFFEN);
-}
-
-static int rn5t568_wdt_stop(struct regmap *regmap)
-{
-	int ret;
-
-	ret  = regmap_clear_bits(regmap, RN5T568_PWRIREN, RN5T568_PWRIREN_EN_WDOG);
-	if (ret)
-		return ret;
-
-	return regmap_clear_bits(regmap, RN5T568_WATCHDOG, RN5T568_WATCHDOG_WDPWROFFEN);
-}
-
-static int rn5t568_wdt_ping(struct regmap *regmap)
-{
-	unsigned int val;
-	int ret;
-
-	ret = regmap_read(regmap, RN5T568_WATCHDOG, &val);
-	if (ret)
-		return ret;
-
-	return regmap_write(regmap, RN5T568_WATCHDOG, val);
-}
-
-static int rn5t568_wdt_set_timeout(struct watchdog *wdd, unsigned int timeout)
-{
-	struct rn5t568_wdt *wdt = container_of(wdd, struct rn5t568_wdt, wdd);
-	int ret, i;
-
-	if (!timeout)
-		return rn5t568_wdt_stop(wdt->regmap);
-
-	for (i = 0; i < ARRAY_SIZE(rn5t568_wdt_timeout); i++) {
-		if (timeout < rn5t568_wdt_timeout[i].time)
-			break;
-	}
-
-	if (i == ARRAY_SIZE(rn5t568_wdt_timeout))
-		return -EINVAL;
-
-	if (wdt->timeout == timeout)
-		return rn5t568_wdt_ping(wdt->regmap);
-
-	ret = rn5t568_wdt_start(wdt->regmap, i);
-	if (ret)
-		return ret;
-
-	wdt->timeout = rn5t568_wdt_timeout[i].time;
-
-	return ret;
-}
-
-static int rn5t568_wdt_probe(struct device *dev)
-{
-	struct rn5t568_wdt *wdt;
-	struct watchdog *wdd;
-	unsigned int val;
-	int ret;
-
-	wdt = xzalloc(sizeof(*wdt));
-
-	wdt->regmap = dev_get_regmap(dev->parent, NULL);
-	if (!wdt->regmap)
-		return -ENOENT;
-
-	wdd = &wdt->wdd;
-	wdd->hwdev = dev;
-	wdd->set_timeout = rn5t568_wdt_set_timeout;
-	wdd->timeout_max = PMIC_WDT_MAX_TIMEOUT;
-
-	ret = regmap_read(wdt->regmap, RN5T568_WATCHDOG, &val);
-	if (ret == 0)
-		wdd->running = val & RN5T568_WATCHDOG_WDPWROFFEN ?
-			       WDOG_HW_RUNNING : WDOG_HW_NOT_RUNNING;
-
-	return watchdog_register(wdd);
-}
-
-static __maybe_unused const struct of_device_id rn5t568_wdt_of_match[] = {
-	{ .compatible = "ricoh,rn5t568-wdt" },
-	{ /* sentinel */ }
-};
-MODULE_DEVICE_TABLE(of, rn5t568_wdt_of_match);
-
-static struct driver rn5t568_wdt_driver = {
-	.name  = "rn5t568-wdt",
-	.probe = rn5t568_wdt_probe,
-	.of_compatible = DRV_OF_COMPAT(rn5t568_wdt_of_match),
-};
-device_platform_driver(rn5t568_wdt_driver);
diff --git a/drivers/watchdog/rn5t618_wdt.c b/drivers/watchdog/rn5t618_wdt.c
new file mode 100644
index 000000000000..95089ac7c885
--- /dev/null
+++ b/drivers/watchdog/rn5t618_wdt.c
@@ -0,0 +1,140 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Watchdog driver for Ricoh RN5T618 PMIC
+ *
+ * Copyright (C) 2014 Beniamino Galvani <b.galvani@gmail.com>
+ */
+
+#include <common.h>
+#include <init.h>
+#include <watchdog.h>
+#include <linux/regmap.h>
+#include <of.h>
+#include <mfd/rn5t618.h>
+
+struct rn5t618_wdt {
+	struct watchdog wdd;
+	struct regmap *regmap;
+	unsigned int timeout;
+};
+
+struct rn5t618_wdt_tim {
+	u8 reg_val;
+	u8 time;
+};
+
+static const struct rn5t618_wdt_tim rn5t618_wdt_timeout[] = {
+	{ .reg_val = 0, .time = 1, },
+	{ .reg_val = 1, .time = 8, },
+	{ .reg_val = 2, .time = 32, },
+	{ .reg_val = 3, .time = 128, },
+};
+
+#define PMIC_WDT_MAX_TIMEOUT 128
+
+static int rn5t618_wdt_start(struct regmap *regmap, int idx)
+{
+	int ret;
+
+	ret = regmap_update_bits(regmap, RN5T618_WATCHDOG, RN5T618_WATCHDOG_WDOGTIM_M,
+				 rn5t618_wdt_timeout[idx].reg_val);
+	if (ret)
+		return ret;
+
+	regmap_clear_bits(regmap, RN5T618_PWRIRQ, RN5T618_PWRIRQ_IR_WDOG);
+	regmap_set_bits(regmap, RN5T618_PWRIREN, RN5T618_PWRIREN_EN_WDOG);
+
+	pr_debug("RN5t: Starting the watchdog with %u seconds\n", rn5t618_wdt_timeout[idx].time);
+
+	return regmap_set_bits(regmap, RN5T618_WATCHDOG, RN5T618_WATCHDOG_WDPWROFFEN);
+}
+
+static int rn5t618_wdt_stop(struct regmap *regmap)
+{
+	int ret;
+
+	ret  = regmap_clear_bits(regmap, RN5T618_PWRIREN, RN5T618_PWRIREN_EN_WDOG);
+	if (ret)
+		return ret;
+
+	return regmap_clear_bits(regmap, RN5T618_WATCHDOG, RN5T618_WATCHDOG_WDPWROFFEN);
+}
+
+static int rn5t618_wdt_ping(struct regmap *regmap)
+{
+	unsigned int val;
+	int ret;
+
+	ret = regmap_read(regmap, RN5T618_WATCHDOG, &val);
+	if (ret)
+		return ret;
+
+	return regmap_write(regmap, RN5T618_WATCHDOG, val);
+}
+
+static int rn5t618_wdt_set_timeout(struct watchdog *wdd, unsigned int timeout)
+{
+	struct rn5t618_wdt *wdt = container_of(wdd, struct rn5t618_wdt, wdd);
+	int ret, i;
+
+	if (!timeout)
+		return rn5t618_wdt_stop(wdt->regmap);
+
+	for (i = 0; i < ARRAY_SIZE(rn5t618_wdt_timeout); i++) {
+		if (timeout < rn5t618_wdt_timeout[i].time)
+			break;
+	}
+
+	if (i == ARRAY_SIZE(rn5t618_wdt_timeout))
+		return -EINVAL;
+
+	if (wdt->timeout == timeout)
+		return rn5t618_wdt_ping(wdt->regmap);
+
+	ret = rn5t618_wdt_start(wdt->regmap, i);
+	if (ret)
+		return ret;
+
+	wdt->timeout = rn5t618_wdt_timeout[i].time;
+
+	return ret;
+}
+
+static int rn5t618_wdt_probe(struct device *dev)
+{
+	struct rn5t618_wdt *wdt;
+	struct watchdog *wdd;
+	unsigned int val;
+	int ret;
+
+	wdt = xzalloc(sizeof(*wdt));
+
+	wdt->regmap = dev_get_regmap(dev->parent, NULL);
+	if (!wdt->regmap)
+		return -ENOENT;
+
+	wdd = &wdt->wdd;
+	wdd->hwdev = dev;
+	wdd->set_timeout = rn5t618_wdt_set_timeout;
+	wdd->timeout_max = PMIC_WDT_MAX_TIMEOUT;
+
+	ret = regmap_read(wdt->regmap, RN5T618_WATCHDOG, &val);
+	if (ret == 0)
+		wdd->running = val & RN5T618_WATCHDOG_WDPWROFFEN ?
+			       WDOG_HW_RUNNING : WDOG_HW_NOT_RUNNING;
+
+	return watchdog_register(wdd);
+}
+
+static __maybe_unused const struct of_device_id rn5t618_wdt_of_match[] = {
+	{ .compatible = "ricoh,rn5t568-wdt" },
+	{ /* sentinel */ }
+};
+MODULE_DEVICE_TABLE(of, rn5t618_wdt_of_match);
+
+static struct driver rn5t618_wdt_driver = {
+	.name  = "rn5t618-wdt",
+	.probe = rn5t618_wdt_probe,
+	.of_compatible = DRV_OF_COMPAT(rn5t618_wdt_of_match),
+};
+device_platform_driver(rn5t618_wdt_driver);
diff --git a/include/mfd/rn5t618.h b/include/mfd/rn5t618.h
index 196ae00fb5b1..0bf1417d98d3 100644
--- a/include/mfd/rn5t618.h
+++ b/include/mfd/rn5t618.h
@@ -131,4 +131,10 @@ enum {
 #define RN5T618_REPCNT_OFF_REPWRTIM_1000MS	0x06
 #define RN5T618_REPCNT_OFF_REPWRON		BIT(0)
 
+#define RN5T618_WATCHDOG_WDPWROFFEN		BIT(2)
+#define RN5T618_WATCHDOG_WDOGTIM_M		(BIT(0) | BIT(1))
+
+#define RN5T618_PWRIREN_EN_WDOG			BIT(6)
+#define RN5T618_PWRIRQ_IR_WDOG			BIT(6)
+
 #endif
-- 
2.47.3




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

* [PATCH 6/6] rn5t618: mfd/watchdog: switch to mfd device population
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
                   ` (3 preceding siblings ...)
  2026-06-11 11:21 ` [PATCH 5/6] watchdog: RN568: rename to rn5t618 Lucas Stach
@ 2026-06-11 11:21 ` Lucas Stach
  2026-06-15  7:50 ` [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Sascha Hauer
  5 siblings, 0 replies; 7+ messages in thread
From: Lucas Stach @ 2026-06-11 11:21 UTC (permalink / raw)
  To: barebox

The upstream binding for the rn5t618 does not describe a
separate watchdog node. Switch to MFD device population to
probe the watchdog without DT matching.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 drivers/mfd/rn5t618.c          | 8 +++++++-
 drivers/watchdog/rn5t618_wdt.c | 5 -----
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/drivers/mfd/rn5t618.c b/drivers/mfd/rn5t618.c
index d757802b5363..5fd9fe6e6ac2 100644
--- a/drivers/mfd/rn5t618.c
+++ b/drivers/mfd/rn5t618.c
@@ -13,11 +13,17 @@
 #include <i2c/i2c.h>
 #include <init.h>
 #include <of.h>
+#include <linux/mfd/core.h>
 #include <linux/regmap.h>
 #include <reset_source.h>
 #include <restart.h>
 #include <mfd/rn5t618.h>
 
+static const struct mfd_cell rn5t618_cells[] = {
+        { .name = "rn5t618-regulator" },
+        { .name = "rn5t618-wdt" },
+};
+
 struct rn5t618 {
 	struct restart_handler restart;
 	struct regmap *regmap;
@@ -129,7 +135,7 @@ static int __init rn5t618_i2c_probe(struct device *dev)
 	if (ret)
 		dev_warn(dev, "Failed to query reset reason\n");
 
-	return of_platform_populate(dev->of_node, NULL, dev);
+	return mfd_add_devices(dev, rn5t618_cells, ARRAY_SIZE(rn5t618_cells));
 }
 
 static __maybe_unused const struct of_device_id rn5t618_of_match[] = {
diff --git a/drivers/watchdog/rn5t618_wdt.c b/drivers/watchdog/rn5t618_wdt.c
index 95089ac7c885..53da358d451e 100644
--- a/drivers/watchdog/rn5t618_wdt.c
+++ b/drivers/watchdog/rn5t618_wdt.c
@@ -126,15 +126,10 @@ static int rn5t618_wdt_probe(struct device *dev)
 	return watchdog_register(wdd);
 }
 
-static __maybe_unused const struct of_device_id rn5t618_wdt_of_match[] = {
-	{ .compatible = "ricoh,rn5t568-wdt" },
-	{ /* sentinel */ }
-};
 MODULE_DEVICE_TABLE(of, rn5t618_wdt_of_match);
 
 static struct driver rn5t618_wdt_driver = {
 	.name  = "rn5t618-wdt",
 	.probe = rn5t618_wdt_probe,
-	.of_compatible = DRV_OF_COMPAT(rn5t618_wdt_of_match),
 };
 device_platform_driver(rn5t618_wdt_driver);
-- 
2.47.3




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

* Re: [PATCH 1/6] mfd: rn5t568: rename to rn5t618
  2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
                   ` (4 preceding siblings ...)
  2026-06-11 11:21 ` [PATCH 6/6] rn5t618: mfd/watchdog: switch to mfd device population Lucas Stach
@ 2026-06-15  7:50 ` Sascha Hauer
  5 siblings, 0 replies; 7+ messages in thread
From: Sascha Hauer @ 2026-06-15  7:50 UTC (permalink / raw)
  To: barebox, Lucas Stach


On Thu, 11 Jun 2026 13:21:10 +0200, Lucas Stach wrote:
> For unclear reasons the driver is based on the Linux rn5t618 driver,
> but has been added to Barebox under a different name. To avoid
> confusion sync the name with the Linux driver.
> 
> 

Applied, thanks!

[1/6] mfd: rn5t568: rename to rn5t618
      https://git.pengutronix.de/cgit/barebox/commit/?id=01bfade80406 (link may not be stable)
[2/6] mfd: rn5t618: use defined compatibles
      https://git.pengutronix.de/cgit/barebox/commit/?id=950031d3915d (link may not be stable)
[3/6] mfd: rn5t618: demote probe message to debug level
      https://git.pengutronix.de/cgit/barebox/commit/?id=a41b38a880f4 (link may not be stable)
[4/6] mfd: rn5t618: wait a bit after triggering restart
      https://git.pengutronix.de/cgit/barebox/commit/?id=8436a10f415d (link may not be stable)
[5/6] watchdog: RN568: rename to rn5t618
      https://git.pengutronix.de/cgit/barebox/commit/?id=79db4ccfa736 (link may not be stable)
[6/6] rn5t618: mfd/watchdog: switch to mfd device population
      https://git.pengutronix.de/cgit/barebox/commit/?id=3e562fe2cac8 (link may not be stable)

Best regards,
-- 
Sascha Hauer <s.hauer@pengutronix.de>




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

end of thread, other threads:[~2026-06-15  7:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-11 11:21 [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Lucas Stach
2026-06-11 11:21 ` [PATCH 2/6] mfd: rn5t618: use defined compatibles Lucas Stach
2026-06-11 11:21 ` [PATCH 3/6] mfd: rn5t618: demote probe message to debug level Lucas Stach
2026-06-11 11:21 ` [PATCH 4/6] mfd: rn5t618: wait a bit after triggering restart Lucas Stach
2026-06-11 11:21 ` [PATCH 5/6] watchdog: RN568: rename to rn5t618 Lucas Stach
2026-06-11 11:21 ` [PATCH 6/6] rn5t618: mfd/watchdog: switch to mfd device population Lucas Stach
2026-06-15  7:50 ` [PATCH 1/6] mfd: rn5t568: rename to rn5t618 Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox