Messages in this thread |  | | Subject | Re: [PATCH v3 1/2] iio: adc: driver for ti adc081s/adc101s/adc121s | From | Milan Stevanovic <> | Date | Sat, 27 Jan 2018 09:17:49 +0100 |
| |
On 01/26/2018 07:43 PM, Andy Shevchenko wrote: > On Fri, Jan 26, 2018 at 8:25 PM, Lars-Peter Clausen <lars@metafoo.de> wrote: >> On 01/26/2018 07:19 PM, Andy Shevchenko wrote: >>> On Sun, Jan 14, 2018 at 10:32 PM, Milan Stevanovic >>> <milan.o.stevanovic@gmail.com> wrote: >>>> Add Linux device driver for TI single-channel CMOS >>>> 8/10/12-bit analog-to-digital converter with a >>>> high-speed serial interface. >>>> >>>> Signed-off-by: Milan Stevanovic <milan.o.stevanovic@gmail.com> >>>> + * Analog Devices AD7466/7/8 AD7476/5/7/8 (A) SPI ADC driver >>>> + * TI ADC081S/ADC101S/ADC121S 8/10/12-bit SPI ADC driver >>> Guys, I'm not sure I understood this mix. >> You often have the case where two or even more vendors produce parts that >> are (mostly) pin and register map compatible. This is typically to fulfill >> the second source requirement that some customers have. >> >> It is not uncommon to see drivers that support parts from different vendors. > Yep, though in this case we have, it seems, a counterpart (i2c > variant) in drivers/iio/adc/ti-adc081c.c > >>> We have like few TI drivers here: >>> >>> drivers/iio/adc/ti-adc0832.c:352:module_spi_driver(adc0832_driver); >>> drivers/iio/adc/ti-adc084s021.c:269:module_spi_driver(adc084s021_driver); >>> drivers/iio/adc/ti-adc108s102.c:343:module_spi_driver(adc108s102_driver); >>> drivers/iio/adc/ti-adc12138.c:547:module_spi_driver(adc12138_driver); >>> drivers/iio/adc/ti-adc128s052.c:211:module_spi_driver(adc128_driver); >>> drivers/iio/adc/ti-adc161s626.c:276:module_spi_driver(ti_adc_driver); >>> drivers/iio/adc/ti-ads7950.c:519:module_spi_driver(ti_ads7950_driver); >>> drivers/iio/adc/ti-ads8688.c:481:module_spi_driver(ads8688_driver); >>> drivers/iio/adc/ti-tlc4541.c:266:module_spi_driver(tlc4541_driver); >>> >>> What's wrong with them? >> They are probably not register map compatible with those other drivers. (Or >> nobody cared to check if they are register map compatible). > I would believe in the latter than former. > >>> Is it here code duplication between two vendors? > ...and instead of doing such mix I would really rather have a separate > glue driver to the same code. > I spoke about this with Jonathan. Generally we can share a few lines here and there but not enough to overcome the fact that the drivers just became a lot less readable. There are comments for that in patch/10132693
|  |