* [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3]
@ 2025-08-18 8:11 Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3] Matti Vaittinen
` (4 more replies)
0 siblings, 5 replies; 9+ messages in thread
From: Matti Vaittinen @ 2025-08-18 8:11 UTC (permalink / raw)
To: Matti Vaittinen, Matti Vaittinen
Cc: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matti Vaittinen,
David Heidelberg, linux-iio, devicetree, linux-kernel,
Sukrut Bellary, Lothar Rubusch
[-- Attachment #1: Type: text/plain, Size: 1405 bytes --]
Add support for ROHM BD7910[0,1,2,3] ADCs.
The ROHM BD79100, BD79101, BD79102 and BD79103 are ADCs derived from the
BD79104. According to the data-sheets, the BD79103 is compatible with the
BD79104. Rest of the ICs have different number of analog input channels.
This series adds support for these ICs using the ti-adc128s052.c.
NOTE: There has been work on couple of other patch series [1][2] touching
this same driver. I haven't considered those changes because, AFAICS,
there has been no new revisions of these series since mid June.
[1]: https://lore.kernel.org/all/20250614091504.575685-1-sbellary@baylibre.com/
[2]: https://lore.kernel.org/all/20250625170218.545654-2-l.rubusch@gmail.com/
Revision history:
v1 => v2:
dt-bindings:
- Fix the fallback compatible for BD79103.
- Drop the excess 'items'
other:
- Rename the channel structs as discussed during v1 review.
Matti Vaittinen (4):
dt-bindings: iio: adc: Add BD7910[0,1,2,3]
iio: adc: adc128s052: Simplify matching chip_data
iio: adc: adc128s052: Rename channel structs
iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3]
.../bindings/iio/adc/rohm,bd79104.yaml | 10 +-
drivers/iio/adc/ti-adc128s052.c | 132 ++++++++++++------
2 files changed, 95 insertions(+), 47 deletions(-)
base-commit: 856d7be7f3c459a6d646b1f8432c6f616ade0d10
--
2.50.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3]
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
@ 2025-08-18 8:12 ` Matti Vaittinen
2025-08-18 17:07 ` Conor Dooley
2025-08-18 8:12 ` [PATCH v2 2/4] iio: adc: adc128s052: Simplify matching chip_data Matti Vaittinen
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Matti Vaittinen @ 2025-08-18 8:12 UTC (permalink / raw)
To: Matti Vaittinen, Matti Vaittinen
Cc: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matti Vaittinen,
David Heidelberg, linux-iio, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1291 bytes --]
The ROHM BD79100, BD79101, BD79102, BD79103 are very similar ADCs as the
ROHM BD79104. The BD79100 has only 1 channel. BD79101 has 2 channels and
the BD79102 has 4 channels. Both BD79103 and BD79104 have 4 channels,
and, based on the data sheets, they seem identical from the software
point-of-view.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
---
Revision history:
v1 => v2:
- Drop unnecessary "items"
- Fix the order of fallback compatible for the bd79103
---
.../devicetree/bindings/iio/adc/rohm,bd79104.yaml | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/iio/adc/rohm,bd79104.yaml b/Documentation/devicetree/bindings/iio/adc/rohm,bd79104.yaml
index f0a1347ba4db..d5192ec58f59 100644
--- a/Documentation/devicetree/bindings/iio/adc/rohm,bd79104.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/rohm,bd79104.yaml
@@ -14,7 +14,15 @@ description: |
properties:
compatible:
- const: rohm,bd79104
+ oneOf:
+ - enum:
+ - rohm,bd79100
+ - rohm,bd79101
+ - rohm,bd79102
+ - rohm,bd79104
+ - items:
+ - const: rohm,bd79103
+ - const: rohm,bd79104
reg:
maxItems: 1
--
2.50.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 2/4] iio: adc: adc128s052: Simplify matching chip_data
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3] Matti Vaittinen
@ 2025-08-18 8:12 ` Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 3/4] iio: adc: adc128s052: Rename channel structs Matti Vaittinen
` (2 subsequent siblings)
4 siblings, 0 replies; 9+ messages in thread
From: Matti Vaittinen @ 2025-08-18 8:12 UTC (permalink / raw)
To: Matti Vaittinen, Matti Vaittinen
Cc: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matti Vaittinen,
David Heidelberg, linux-iio, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 5671 bytes --]
The adc128s052 driver supports a few different ICs. IC specific
configuration data is stored in an array. IC data, residing in a
specific point of the array, is pointed from the SPI device match data.
There is no need to have the chip config data structures in an array
and splitting them out of an array has at least following benefits:
- Chip-specific structures can be named after the chips they support.
This makes referring them a tad cleaner, compared to using a generic
array name with a numerical index.
- Avoid all potential 'out of bounds' errors which can result if the
array is changed.
Split the chip configuration data array to individual structures.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Reviewed-by: David Lechner <dlechner@baylibre.com>
---
Revision history:
v1 =>
- No changes
There are couple of other series[1][2] changing this driver ongoing. I
haven't heard of those latelty (after JUN?) so those changes haven't
been taken into account and will conflict if those serieses are re-spun.
Please, let me know if I should rebase my changes.
[1]: https://lore.kernel.org/all/20250614091504.575685-1-sbellary@baylibre.com/
[2]: https://lore.kernel.org/all/20250625170218.545654-2-l.rubusch@gmail.com/
---
drivers/iio/adc/ti-adc128s052.c | 78 +++++++++++++++++----------------
1 file changed, 41 insertions(+), 37 deletions(-)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 1b46a8155803..81153253529e 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -124,26 +124,30 @@ static const struct iio_chan_spec adc124s021_channels[] = {
static const char * const bd79104_regulators[] = { "iovdd" };
-static const struct adc128_configuration adc128_config[] = {
- {
- .channels = adc128s052_channels,
- .num_channels = ARRAY_SIZE(adc128s052_channels),
- .refname = "vref",
- }, {
- .channels = adc122s021_channels,
- .num_channels = ARRAY_SIZE(adc122s021_channels),
- .refname = "vref",
- }, {
- .channels = adc124s021_channels,
- .num_channels = ARRAY_SIZE(adc124s021_channels),
- .refname = "vref",
- }, {
- .channels = adc128s052_channels,
- .num_channels = ARRAY_SIZE(adc128s052_channels),
- .refname = "vdd",
- .other_regulators = &bd79104_regulators,
- .num_other_regulators = 1,
- },
+static const struct adc128_configuration adc122s_config = {
+ .channels = adc122s021_channels,
+ .num_channels = ARRAY_SIZE(adc122s021_channels),
+ .refname = "vref",
+};
+
+static const struct adc128_configuration adc124s_config = {
+ .channels = adc124s021_channels,
+ .num_channels = ARRAY_SIZE(adc124s021_channels),
+ .refname = "vref",
+};
+
+static const struct adc128_configuration adc128s_config = {
+ .channels = adc128s052_channels,
+ .num_channels = ARRAY_SIZE(adc128s052_channels),
+ .refname = "vref",
+};
+
+static const struct adc128_configuration bd79104_config = {
+ .channels = adc128s052_channels,
+ .num_channels = ARRAY_SIZE(adc128s052_channels),
+ .refname = "vdd",
+ .other_regulators = &bd79104_regulators,
+ .num_other_regulators = 1,
};
static const struct iio_info adc128_info = {
@@ -199,33 +203,33 @@ static int adc128_probe(struct spi_device *spi)
}
static const struct of_device_id adc128_of_match[] = {
- { .compatible = "ti,adc128s052", .data = &adc128_config[0] },
- { .compatible = "ti,adc122s021", .data = &adc128_config[1] },
- { .compatible = "ti,adc122s051", .data = &adc128_config[1] },
- { .compatible = "ti,adc122s101", .data = &adc128_config[1] },
- { .compatible = "ti,adc124s021", .data = &adc128_config[2] },
- { .compatible = "ti,adc124s051", .data = &adc128_config[2] },
- { .compatible = "ti,adc124s101", .data = &adc128_config[2] },
- { .compatible = "rohm,bd79104", .data = &adc128_config[3] },
+ { .compatible = "ti,adc128s052", .data = &adc128s_config },
+ { .compatible = "ti,adc122s021", .data = &adc122s_config },
+ { .compatible = "ti,adc122s051", .data = &adc122s_config },
+ { .compatible = "ti,adc122s101", .data = &adc122s_config },
+ { .compatible = "ti,adc124s021", .data = &adc124s_config },
+ { .compatible = "ti,adc124s051", .data = &adc124s_config },
+ { .compatible = "ti,adc124s101", .data = &adc124s_config },
+ { .compatible = "rohm,bd79104", .data = &bd79104_config },
{ }
};
MODULE_DEVICE_TABLE(of, adc128_of_match);
static const struct spi_device_id adc128_id[] = {
- { "adc128s052", (kernel_ulong_t)&adc128_config[0] },
- { "adc122s021", (kernel_ulong_t)&adc128_config[1] },
- { "adc122s051", (kernel_ulong_t)&adc128_config[1] },
- { "adc122s101", (kernel_ulong_t)&adc128_config[1] },
- { "adc124s021", (kernel_ulong_t)&adc128_config[2] },
- { "adc124s051", (kernel_ulong_t)&adc128_config[2] },
- { "adc124s101", (kernel_ulong_t)&adc128_config[2] },
- { "bd79104", (kernel_ulong_t)&adc128_config[3] },
+ { "adc128s052", (kernel_ulong_t)&adc128s_config },
+ { "adc122s021", (kernel_ulong_t)&adc122s_config },
+ { "adc122s051", (kernel_ulong_t)&adc122s_config },
+ { "adc122s101", (kernel_ulong_t)&adc122s_config },
+ { "adc124s021", (kernel_ulong_t)&adc124s_config },
+ { "adc124s051", (kernel_ulong_t)&adc124s_config },
+ { "adc124s101", (kernel_ulong_t)&adc124s_config },
+ { "bd79104", (kernel_ulong_t)&bd79104_config },
{ }
};
MODULE_DEVICE_TABLE(spi, adc128_id);
static const struct acpi_device_id adc128_acpi_match[] = {
- { "AANT1280", (kernel_ulong_t)&adc128_config[2] },
+ { "AANT1280", (kernel_ulong_t)&adc124s_config },
{ }
};
MODULE_DEVICE_TABLE(acpi, adc128_acpi_match);
--
2.50.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 3/4] iio: adc: adc128s052: Rename channel structs
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 2/4] iio: adc: adc128s052: Simplify matching chip_data Matti Vaittinen
@ 2025-08-18 8:12 ` Matti Vaittinen
2025-08-18 8:13 ` [PATCH v2 4/4] iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 18:19 ` [PATCH v2 0/4] " Jonathan Cameron
4 siblings, 0 replies; 9+ messages in thread
From: Matti Vaittinen @ 2025-08-18 8:12 UTC (permalink / raw)
To: Matti Vaittinen, Matti Vaittinen
Cc: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matti Vaittinen,
David Heidelberg, linux-iio, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 3305 bytes --]
The adc128s052 can be used to drive a few other ADCs but the TI's ADCs
it was originally intended for. The TI's IC variants model numbers don't
(trivially) explain the channel configuration (for a reader working with
other than TI's ICs).
Rename the channel configuration structures to explicitly explain they
are used for simple ADCs, having 2, 4 or 8 channels.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
---
Revision history:
v1 => v2:
- Rename channel configuration structs as discussed during review round
1.
---
drivers/iio/adc/ti-adc128s052.c | 34 ++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 81153253529e..9b8ecaca01ed 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -99,52 +99,52 @@ static int adc128_read_raw(struct iio_dev *indio_dev,
.info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE) \
}
-static const struct iio_chan_spec adc128s052_channels[] = {
+static const struct iio_chan_spec simple_2chan_adc_channels[] = {
ADC128_VOLTAGE_CHANNEL(0),
ADC128_VOLTAGE_CHANNEL(1),
- ADC128_VOLTAGE_CHANNEL(2),
- ADC128_VOLTAGE_CHANNEL(3),
- ADC128_VOLTAGE_CHANNEL(4),
- ADC128_VOLTAGE_CHANNEL(5),
- ADC128_VOLTAGE_CHANNEL(6),
- ADC128_VOLTAGE_CHANNEL(7),
};
-static const struct iio_chan_spec adc122s021_channels[] = {
+static const struct iio_chan_spec simple_4chan_adc_channels[] = {
ADC128_VOLTAGE_CHANNEL(0),
ADC128_VOLTAGE_CHANNEL(1),
+ ADC128_VOLTAGE_CHANNEL(2),
+ ADC128_VOLTAGE_CHANNEL(3),
};
-static const struct iio_chan_spec adc124s021_channels[] = {
+static const struct iio_chan_spec simple_8chan_adc_channels[] = {
ADC128_VOLTAGE_CHANNEL(0),
ADC128_VOLTAGE_CHANNEL(1),
ADC128_VOLTAGE_CHANNEL(2),
ADC128_VOLTAGE_CHANNEL(3),
+ ADC128_VOLTAGE_CHANNEL(4),
+ ADC128_VOLTAGE_CHANNEL(5),
+ ADC128_VOLTAGE_CHANNEL(6),
+ ADC128_VOLTAGE_CHANNEL(7),
};
static const char * const bd79104_regulators[] = { "iovdd" };
static const struct adc128_configuration adc122s_config = {
- .channels = adc122s021_channels,
- .num_channels = ARRAY_SIZE(adc122s021_channels),
+ .channels = simple_2chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_2chan_adc_channels),
.refname = "vref",
};
static const struct adc128_configuration adc124s_config = {
- .channels = adc124s021_channels,
- .num_channels = ARRAY_SIZE(adc124s021_channels),
+ .channels = simple_4chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_4chan_adc_channels),
.refname = "vref",
};
static const struct adc128_configuration adc128s_config = {
- .channels = adc128s052_channels,
- .num_channels = ARRAY_SIZE(adc128s052_channels),
+ .channels = simple_8chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_8chan_adc_channels),
.refname = "vref",
};
static const struct adc128_configuration bd79104_config = {
- .channels = adc128s052_channels,
- .num_channels = ARRAY_SIZE(adc128s052_channels),
+ .channels = simple_8chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_8chan_adc_channels),
.refname = "vdd",
.other_regulators = &bd79104_regulators,
.num_other_regulators = 1,
--
2.50.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [PATCH v2 4/4] iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3]
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
` (2 preceding siblings ...)
2025-08-18 8:12 ` [PATCH v2 3/4] iio: adc: adc128s052: Rename channel structs Matti Vaittinen
@ 2025-08-18 8:13 ` Matti Vaittinen
2025-08-18 18:19 ` [PATCH v2 0/4] " Jonathan Cameron
4 siblings, 0 replies; 9+ messages in thread
From: Matti Vaittinen @ 2025-08-18 8:13 UTC (permalink / raw)
To: Matti Vaittinen, Matti Vaittinen
Cc: Jonathan Cameron, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Matti Vaittinen,
David Heidelberg, linux-iio, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 3431 bytes --]
The ROHM BD79100, BD79101, BD79102, BD79103 are very similar ADCs as the
ROHM BD79104. The BD79100 has only 1 channel. BD79101 has 2 channels and
the BD79102 has 4 channels. Both BD79103 and BD79104 have 4 channels,
and, based on the data sheets, they seem identical from the software
point-of-view.
Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
---
Revision history:
v1 => v2
- Rename channel structs as discussed in review round 1.
Tested only using the BD79104. The ROHM hardware colleagues swore this
testing should be sufficient...
---
drivers/iio/adc/ti-adc128s052.c | 36 +++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/drivers/iio/adc/ti-adc128s052.c b/drivers/iio/adc/ti-adc128s052.c
index 9b8ecaca01ed..4ae65793ad9b 100644
--- a/drivers/iio/adc/ti-adc128s052.c
+++ b/drivers/iio/adc/ti-adc128s052.c
@@ -99,6 +99,10 @@ static int adc128_read_raw(struct iio_dev *indio_dev,
.info_mask_shared_by_type = BIT(IIO_CHAN_INFO_SCALE) \
}
+static const struct iio_chan_spec simple_1chan_adc_channels[] = {
+ ADC128_VOLTAGE_CHANNEL(0),
+};
+
static const struct iio_chan_spec simple_2chan_adc_channels[] = {
ADC128_VOLTAGE_CHANNEL(0),
ADC128_VOLTAGE_CHANNEL(1),
@@ -142,6 +146,30 @@ static const struct adc128_configuration adc128s_config = {
.refname = "vref",
};
+static const struct adc128_configuration bd79100_config = {
+ .channels = simple_1chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_1chan_adc_channels),
+ .refname = "vdd",
+ .other_regulators = &bd79104_regulators,
+ .num_other_regulators = 1,
+};
+
+static const struct adc128_configuration bd79101_config = {
+ .channels = simple_2chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_2chan_adc_channels),
+ .refname = "vdd",
+ .other_regulators = &bd79104_regulators,
+ .num_other_regulators = 1,
+};
+
+static const struct adc128_configuration bd79102_config = {
+ .channels = simple_4chan_adc_channels,
+ .num_channels = ARRAY_SIZE(simple_4chan_adc_channels),
+ .refname = "vdd",
+ .other_regulators = &bd79104_regulators,
+ .num_other_regulators = 1,
+};
+
static const struct adc128_configuration bd79104_config = {
.channels = simple_8chan_adc_channels,
.num_channels = ARRAY_SIZE(simple_8chan_adc_channels),
@@ -210,6 +238,10 @@ static const struct of_device_id adc128_of_match[] = {
{ .compatible = "ti,adc124s021", .data = &adc124s_config },
{ .compatible = "ti,adc124s051", .data = &adc124s_config },
{ .compatible = "ti,adc124s101", .data = &adc124s_config },
+ { .compatible = "rohm,bd79100", .data = &bd79100_config },
+ { .compatible = "rohm,bd79101", .data = &bd79101_config },
+ { .compatible = "rohm,bd79102", .data = &bd79102_config },
+ { .compatible = "rohm,bd79103", .data = &bd79104_config },
{ .compatible = "rohm,bd79104", .data = &bd79104_config },
{ }
};
@@ -223,6 +255,10 @@ static const struct spi_device_id adc128_id[] = {
{ "adc124s021", (kernel_ulong_t)&adc124s_config },
{ "adc124s051", (kernel_ulong_t)&adc124s_config },
{ "adc124s101", (kernel_ulong_t)&adc124s_config },
+ { "bd79100", (kernel_ulong_t)&bd79100_config },
+ { "bd79101", (kernel_ulong_t)&bd79101_config },
+ { "bd79102", (kernel_ulong_t)&bd79102_config },
+ { "bd79103", (kernel_ulong_t)&bd79104_config },
{ "bd79104", (kernel_ulong_t)&bd79104_config },
{ }
};
--
2.50.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3]
2025-08-18 8:12 ` [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3] Matti Vaittinen
@ 2025-08-18 17:07 ` Conor Dooley
0 siblings, 0 replies; 9+ messages in thread
From: Conor Dooley @ 2025-08-18 17:07 UTC (permalink / raw)
To: Matti Vaittinen
Cc: Matti Vaittinen, Jonathan Cameron, David Lechner, Nuno Sá,
Andy Shevchenko, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
David Heidelberg, linux-iio, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 54 bytes --]
Acked-by: Conor Dooley <conor.dooley@microchip.com>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3]
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
` (3 preceding siblings ...)
2025-08-18 8:13 ` [PATCH v2 4/4] iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3] Matti Vaittinen
@ 2025-08-18 18:19 ` Jonathan Cameron
2025-08-18 18:46 ` David Lechner
4 siblings, 1 reply; 9+ messages in thread
From: Jonathan Cameron @ 2025-08-18 18:19 UTC (permalink / raw)
To: Matti Vaittinen
Cc: Matti Vaittinen, David Lechner, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, David Heidelberg,
linux-iio, devicetree, linux-kernel, Sukrut Bellary,
Lothar Rubusch
On Mon, 18 Aug 2025 11:11:56 +0300
Matti Vaittinen <mazziesaccount@gmail.com> wrote:
> Add support for ROHM BD7910[0,1,2,3] ADCs.
>
> The ROHM BD79100, BD79101, BD79102 and BD79103 are ADCs derived from the
> BD79104. According to the data-sheets, the BD79103 is compatible with the
> BD79104. Rest of the ICs have different number of analog input channels.
>
> This series adds support for these ICs using the ti-adc128s052.c.
>
> NOTE: There has been work on couple of other patch series [1][2] touching
> this same driver. I haven't considered those changes because, AFAICS,
> there has been no new revisions of these series since mid June.
>
> [1]: https://lore.kernel.org/all/20250614091504.575685-1-sbellary@baylibre.com/
> [2]: https://lore.kernel.org/all/20250625170218.545654-2-l.rubusch@gmail.com/
Pretty simple replies to the changes requested in v1 reviews and nice and clean
so I'll gamble (a tiny bit) that everyone is happy with this and at least
queue it up for build testing.
Applied to the togreg branch of iio.git and pushed out as testing for
0-day to have it's fun.
Jonathan
>
> Revision history:
> v1 => v2:
> dt-bindings:
> - Fix the fallback compatible for BD79103.
> - Drop the excess 'items'
> other:
> - Rename the channel structs as discussed during v1 review.
>
> Matti Vaittinen (4):
> dt-bindings: iio: adc: Add BD7910[0,1,2,3]
> iio: adc: adc128s052: Simplify matching chip_data
> iio: adc: adc128s052: Rename channel structs
> iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3]
>
> .../bindings/iio/adc/rohm,bd79104.yaml | 10 +-
> drivers/iio/adc/ti-adc128s052.c | 132 ++++++++++++------
> 2 files changed, 95 insertions(+), 47 deletions(-)
>
>
> base-commit: 856d7be7f3c459a6d646b1f8432c6f616ade0d10
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3]
2025-08-18 18:19 ` [PATCH v2 0/4] " Jonathan Cameron
@ 2025-08-18 18:46 ` David Lechner
2025-08-18 19:12 ` Jonathan Cameron
0 siblings, 1 reply; 9+ messages in thread
From: David Lechner @ 2025-08-18 18:46 UTC (permalink / raw)
To: Jonathan Cameron, Matti Vaittinen
Cc: Matti Vaittinen, Nuno Sá, Andy Shevchenko, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, David Heidelberg, linux-iio,
devicetree, linux-kernel, Sukrut Bellary, Lothar Rubusch
On 8/18/25 1:19 PM, Jonathan Cameron wrote:
> On Mon, 18 Aug 2025 11:11:56 +0300
> Matti Vaittinen <mazziesaccount@gmail.com> wrote:
>
>> Add support for ROHM BD7910[0,1,2,3] ADCs.
>>
>> The ROHM BD79100, BD79101, BD79102 and BD79103 are ADCs derived from the
>> BD79104. According to the data-sheets, the BD79103 is compatible with the
>> BD79104. Rest of the ICs have different number of analog input channels.
>>
>> This series adds support for these ICs using the ti-adc128s052.c.
>>
>> NOTE: There has been work on couple of other patch series [1][2] touching
>> this same driver. I haven't considered those changes because, AFAICS,
>> there has been no new revisions of these series since mid June.
>>
>> [1]: https://lore.kernel.org/all/20250614091504.575685-1-sbellary@baylibre.com/
>> [2]: https://lore.kernel.org/all/20250625170218.545654-2-l.rubusch@gmail.com/
>
> Pretty simple replies to the changes requested in v1 reviews and nice and clean
> so I'll gamble (a tiny bit) that everyone is happy with this and at least
> queue it up for build testing.
>
Reviewed-by: David Lechner <dlechner@baylibre.com>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3]
2025-08-18 18:46 ` David Lechner
@ 2025-08-18 19:12 ` Jonathan Cameron
0 siblings, 0 replies; 9+ messages in thread
From: Jonathan Cameron @ 2025-08-18 19:12 UTC (permalink / raw)
To: David Lechner
Cc: Matti Vaittinen, Matti Vaittinen, Nuno Sá, Andy Shevchenko,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, David Heidelberg,
linux-iio, devicetree, linux-kernel, Sukrut Bellary,
Lothar Rubusch
On Mon, 18 Aug 2025 13:46:12 -0500
David Lechner <dlechner@baylibre.com> wrote:
> On 8/18/25 1:19 PM, Jonathan Cameron wrote:
> > On Mon, 18 Aug 2025 11:11:56 +0300
> > Matti Vaittinen <mazziesaccount@gmail.com> wrote:
> >
> >> Add support for ROHM BD7910[0,1,2,3] ADCs.
> >>
> >> The ROHM BD79100, BD79101, BD79102 and BD79103 are ADCs derived from the
> >> BD79104. According to the data-sheets, the BD79103 is compatible with the
> >> BD79104. Rest of the ICs have different number of analog input channels.
> >>
> >> This series adds support for these ICs using the ti-adc128s052.c.
> >>
> >> NOTE: There has been work on couple of other patch series [1][2] touching
> >> this same driver. I haven't considered those changes because, AFAICS,
> >> there has been no new revisions of these series since mid June.
> >>
> >> [1]: https://lore.kernel.org/all/20250614091504.575685-1-sbellary@baylibre.com/
> >> [2]: https://lore.kernel.org/all/20250625170218.545654-2-l.rubusch@gmail.com/
> >
> > Pretty simple replies to the changes requested in v1 reviews and nice and clean
> > so I'll gamble (a tiny bit) that everyone is happy with this and at least
> > queue it up for build testing.
> >
> Reviewed-by: David Lechner <dlechner@baylibre.com>
>
Thanks. Added to the 3 you hadn't tagged already.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-08-18 19:13 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-18 8:11 [PATCH v2 0/4] Support ROHM BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 1/4] dt-bindings: iio: adc: Add BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 17:07 ` Conor Dooley
2025-08-18 8:12 ` [PATCH v2 2/4] iio: adc: adc128s052: Simplify matching chip_data Matti Vaittinen
2025-08-18 8:12 ` [PATCH v2 3/4] iio: adc: adc128s052: Rename channel structs Matti Vaittinen
2025-08-18 8:13 ` [PATCH v2 4/4] iio: adc: adc128s052: Support ROHM BD7910[0,1,2,3] Matti Vaittinen
2025-08-18 18:19 ` [PATCH v2 0/4] " Jonathan Cameron
2025-08-18 18:46 ` David Lechner
2025-08-18 19:12 ` Jonathan Cameron
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).