[PATCH v2 11/11] mfd: motorola-cpcap: add support for Mot CPCAP composition

Svyatoslav Ryhel posted 11 patches 2 days, 12 hours ago
[PATCH v2 11/11] mfd: motorola-cpcap: add support for Mot CPCAP composition
Posted by Svyatoslav Ryhel 2 days, 12 hours ago
Add a MFD subdevice composition used in Tegra20 based Mot board
(Motorola Atrix 4G and Droid X2).

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 drivers/mfd/motorola-cpcap.c | 50 ++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/drivers/mfd/motorola-cpcap.c b/drivers/mfd/motorola-cpcap.c
index bea11868e823..d64c83614f12 100644
--- a/drivers/mfd/motorola-cpcap.c
+++ b/drivers/mfd/motorola-cpcap.c
@@ -206,6 +206,7 @@ static const struct spi_device_id cpcap_spi_ids[] = {
 	{ .name = "cpcap", },
 	{ .name = "6556002", },
 	{ .name = "mapphone-cpcap", },
+	{ .name = "mot-cpcap", },
 	{},
 };
 MODULE_DEVICE_TABLE(spi, cpcap_spi_ids);
@@ -343,6 +344,54 @@ static const struct cpcap_chip_data cpcap_mapphone_data = {
 	.num_devices = ARRAY_SIZE(cpcap_mapphone_mfd_devices),
 };
 
+/*
+ * The Mot board features a USB-PHY and charger similar to the ones in
+ * Mapphone; however, because Mot is based on Tegra20, it is incompatible
+ * with the existing implementation, which is tightly interconnected with
+ * the OMAP USB PHY.
+ */
+static const struct mfd_cell cpcap_mot_mfd_devices[] = {
+	{
+		.name          = "cpcap_adc",
+		.of_compatible = "motorola,mot-cpcap-adc",
+	}, {
+		.name          = "cpcap_battery",
+		.of_compatible = "motorola,cpcap-battery",
+	}, {
+		.name          = "cpcap-regulator",
+		.of_compatible = "motorola,mot-cpcap-regulator",
+	}, {
+		.name          = "cpcap-rtc",
+		.of_compatible = "motorola,cpcap-rtc",
+	}, {
+		.name          = "cpcap-pwrbutton",
+		.of_compatible = "motorola,cpcap-pwrbutton",
+	}, {
+		.name          = "cpcap-led",
+		.id            = 0,
+		.of_compatible = "motorola,cpcap-led-red",
+	}, {
+		.name          = "cpcap-led",
+		.id            = 1,
+		.of_compatible = "motorola,cpcap-led-green",
+	}, {
+		.name          = "cpcap-led",
+		.id            = 2,
+		.of_compatible = "motorola,cpcap-led-blue",
+	}, {
+		.name          = "cpcap-led",
+		.id            = 3,
+		.of_compatible = "motorola,cpcap-led-adl",
+	}, {
+		.name          = "cpcap-codec",
+	},
+};
+
+static const struct cpcap_chip_data cpcap_mot_data = {
+	.mfd_devices = cpcap_mot_mfd_devices,
+	.num_devices = ARRAY_SIZE(cpcap_mot_mfd_devices),
+};
+
 static int cpcap_probe(struct spi_device *spi)
 {
 	struct cpcap_ddata *cpcap;
@@ -398,6 +447,7 @@ static const struct of_device_id cpcap_of_match[] = {
 	{ .compatible = "motorola,cpcap", .data = &cpcap_default_data },
 	{ .compatible = "st,6556002", .data = &cpcap_default_data },
 	{ .compatible = "motorola,mapphone-cpcap", .data = &cpcap_mapphone_data	},
+	{ .compatible = "motorola,mot-cpcap", .data = &cpcap_mot_data },
 	{ /* sentinel */ }
 };
 MODULE_DEVICE_TABLE(of, cpcap_of_match);
-- 
2.51.0
Re: [PATCH v2 11/11] mfd: motorola-cpcap: add support for Mot CPCAP composition
Posted by Andy Shevchenko 16 hours ago
On Fri, Feb 06, 2026 at 07:28:45PM +0200, Svyatoslav Ryhel wrote:
> Add a MFD subdevice composition used in Tegra20 based Mot board
> (Motorola Atrix 4G and Droid X2).

...

>  	{ .name = "cpcap", },
>  	{ .name = "6556002", },
>  	{ .name = "mapphone-cpcap", },
> +	{ .name = "mot-cpcap", },

Drop inner trailing comma.

>  	{},

Drop a comma at the terminator.

>  };
>  MODULE_DEVICE_TABLE(spi, cpcap_spi_ids);

This can be done in the patch that adds driver data.

-- 
With Best Regards,
Andy Shevchenko
Re: [PATCH v2 11/11] mfd: motorola-cpcap: add support for Mot CPCAP composition
Posted by Svyatoslav Ryhel 15 hours ago

8 лютого 2026 р. 14:56:18 GMT+02:00, Andy Shevchenko <andriy.shevchenko@intel.com> пише:
>On Fri, Feb 06, 2026 at 07:28:45PM +0200, Svyatoslav Ryhel wrote:
>> Add a MFD subdevice composition used in Tegra20 based Mot board
>> (Motorola Atrix 4G and Droid X2).
>
>...
>
>>  	{ .name = "cpcap", },
>>  	{ .name = "6556002", },
>>  	{ .name = "mapphone-cpcap", },
>> +	{ .name = "mot-cpcap", },
>
>Drop inner trailing comma.
>

That would be a stray change, wouldn't it?

>>  	{},
>
>Drop a comma at the terminator.
>

That would be a stray change as well, wouldn't it?

>>  };
>>  MODULE_DEVICE_TABLE(spi, cpcap_spi_ids);
>
>This can be done in the patch that adds driver data.
>

Then lets move there.
Re: [PATCH v2 11/11] mfd: motorola-cpcap: add support for Mot CPCAP composition
Posted by Andy Shevchenko 15 hours ago
On Sun, Feb 8, 2026 at 4:41 PM Svyatoslav Ryhel <clamor95@gmail.com> wrote:
> 8 лютого 2026 р. 14:56:18 GMT+02:00, Andy Shevchenko <andriy.shevchenko@intel.com> пише:
> >On Fri, Feb 06, 2026 at 07:28:45PM +0200, Svyatoslav Ryhel wrote:

...

> >>      { .name = "cpcap", },
> >>      { .name = "6556002", },
> >>      { .name = "mapphone-cpcap", },
> >> +    { .name = "mot-cpcap", },
> >
> >Drop inner trailing comma.
> >
>
> That would be a stray change, wouldn't it?

Have you read below?

> >>      {},
> >
> >Drop a comma at the terminator.
> >
>
> That would be a stray change as well, wouldn't it?

Have you read below?

> >>  };
> >>  MODULE_DEVICE_TABLE(spi, cpcap_spi_ids);
> >
> >This can be done in the patch that adds driver data.

^^^

> Then lets move there.

Exactly!

-- 
With Best Regards,
Andy Shevchenko