[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <406c40be-757b-44d1-b6a1-a5d6d4d07e6f@linaro.org>
Date: Tue, 21 Oct 2025 12:39:52 +0200
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Timothy Pearson <tpearson@...torengineering.com>,
devicetree <devicetree@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>, Rob Herring
<robh+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Lee Jones <lee@...nel.org>, Georgy Yakovlev <Georgy.Yakovlev@...y.com>
Subject: Re: [PATCH v4 2/4] mfd: sony-cronos-smc: Add driver for Sony Cronos
SMC
On 20/10/2025 20:14, Timothy Pearson wrote:
> The Sony Cronos Platform Controller is a multi-purpose platform controller
> that provides both a watchdog timer and an LED controller for the Sony
> Interactive Entertainment Cronos x86 server platform. As both functions
> are provided by the same CPLD, a multi-function device is exposed as the
> parent of both functions.
>
> Signed-off-by: Timothy Pearson <tpearson@...torengineering.com>
> Signed-off-by: Shawn Anastasio <sanastasio@...torengineering.com>
Your threading is completely broken. git format-patch -v4 -4 --cover-letter.
Or just use b4.
https://elixir.bootlin.com/linux/v6.16-rc2/source/Documentation/process/submitting-patches.rst#L830
> ---
> MAINTAINERS | 7 ++
> drivers/mfd/Kconfig | 11 ++
> drivers/mfd/Makefile | 2 +
> drivers/mfd/sony-cronos-smc.c | 212 ++++++++++++++++++++++++++++++++
> include/linux/mfd/sony-cronos.h | 61 +++++++++
> 5 files changed, 293 insertions(+)
> create mode 100644 drivers/mfd/sony-cronos-smc.c
> create mode 100644 include/linux/mfd/sony-cronos.h
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 545a4776795e..8570b12a3f66 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -23881,6 +23881,13 @@ S: Maintained
> F: drivers/ssb/
> F: include/linux/ssb/
>
> +SONY CRONOS SMC DRIVER
> +M: Georgy Yakovlev <Georgy.Yakovlev@...y.com>
> +S: Maintained
> +F: Documentation/devicetree/bindings/mfd/sony,cronos-smc.yaml
> +F: drivers/mfd/sony-cronos-smc.c
> +F: include/linux/mfd/sony-cronos.h
> +
> SONY IMX208 SENSOR DRIVER
> M: Sakari Ailus <sakari.ailus@...ux.intel.com>
> L: linux-media@...r.kernel.org
> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 6cec1858947b..1b08f5ae648d 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -2382,6 +2382,17 @@ config MFD_QCOM_PM8008
> under it in the device tree. Additional drivers must be enabled in
> order to use the functionality of the device.
>
> +config MFD_SONY_CRONOS_SMC
> + tristate "Sony Cronos System Management Controller"
> + select MFD_CORE
> + select REGMAP_I2C
> + depends on I2C && OF
> + help
> + Support for the Sony Cronos system controller. Additional drivers must
> + be enabled in order to use the functionality of the device, including LED
> + control and the system watchdog. The controller itself is a custom design
> + tailored to the specific needs of the Sony Cronos hardware platform.
> +
> menu "Multimedia Capabilities Port drivers"
> depends on ARCH_SA1100
>
> diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
> index 865e9f12faff..99700f423fe7 100644
> --- a/drivers/mfd/Makefile
> +++ b/drivers/mfd/Makefile
> @@ -300,6 +300,8 @@ obj-$(CONFIG_MFD_QNAP_MCU) += qnap-mcu.o
> obj-$(CONFIG_MFD_RSMU_I2C) += rsmu_i2c.o rsmu_core.o
> obj-$(CONFIG_MFD_RSMU_SPI) += rsmu_spi.o rsmu_core.o
>
> +obj-$(CONFIG_MFD_SONY_CRONOS_SMC) += sony-cronos-smc.o
> +
> obj-$(CONFIG_MFD_UPBOARD_FPGA) += upboard-fpga.o
>
> obj-$(CONFIG_MFD_LOONGSON_SE) += loongson-se.o
> diff --git a/drivers/mfd/sony-cronos-smc.c b/drivers/mfd/sony-cronos-smc.c
> new file mode 100644
> index 000000000000..9d9b5402f89b
> --- /dev/null
> +++ b/drivers/mfd/sony-cronos-smc.c
> @@ -0,0 +1,212 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Device driver for Sony Cronos SMCs
> + * Copyright (C) 2015-2017 Dialog Semiconductor
> + * Copyright (C) 2022-2025 Raptor Engineering, LLC
> + */
> +
> +#include <linux/device.h>
> +#include <linux/i2c.h>
> +#include <linux/init.h>
> +#include <linux/interrupt.h>
> +#include <linux/kernel.h>
> +#include <linux/mfd/core.h>
> +#include <linux/mfd/sony-cronos.h>
> +#include <linux/module.h>
> +#include <linux/regmap.h>
> +
> +static const struct mfd_cell cronos_smc_devs[] = {
> + {
> + .name = "cronos-watchdog",
> + .of_compatible = "sony,cronos-watchdog",
Undocumented compatible drop.
Best regards,
Krzysztof
Powered by blists - more mailing lists