Re: [PATCH v3 00/10] iio: adc: at91-sama5d2_adc: add support for sama7g5
From: Nicolas Ferre <nicolas.ferre@microchip.com>
Date: 2021-09-15 09:16:43
Also in:
linux-arm-kernel, linux-iio, lkml
On 05/09/2021 at 12:28, Jonathan Cameron wrote:
EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe On Wed, 1 Sep 2021 15:30:03 +0300 Eugen Hristev [off-list ref] wrote:quoted
Hi, This series adds support for sama7g5. The sama7g5 is slightly different from sama5d2, but has the same basic operations. The register map is a bit different, so, I added some primitives to differentiate between the two classes of hardware blocks (sama5d2-sam9x60 and sama7g5). Sama7g5 has 16 channels ADC, no resistive touch, and extra features (FIFOs, better oversampling , not implemented yet). It is a rework of the series initially sent here: https://marc.info/?l=linux-iio&m=161461656807826&w=2 Changes in v3: updates for the channel indexes ABI minor nitpicks fixes fixed krobot reportv2 dropped, v3 1-8 applied to the togreg branch of iio.git and initially pushed out as testing for 0-day to poke at and to allow me to rebase after rc1 is available.
v3 9-10 applied to the at91-dt branch for 5.16. It will go through the arm-soc tree. Thanks, best regards, Nicolas
quoted
Changes in v2: I reworked this according to review by Jonathan, meaning that first I created a no-op patch that will convert the driver to a more platform specific data dedicated type of driver. This adds various structures that hold things like register layout and channel information. After this I created few patches that implement the main differences between sama7g5 and older products: the end-of-conversion new register. I added helper functions to make code more easy to read and more simple. One the last patches adds the layout and channels for sama7g5. At this moment in linux-next, the DT for sama7g5 and sama7g5ek is present, and the last patches add and enable this node in DT for this board. Eugen Eugen Hristev (10): dt-bindings: iio: adc: at91-sama5d2: add compatible for sama7g5-adc iio: adc: at91-sama5d2_adc: initialize hardware after clock is started iio: adc: at91-sama5d2_adc: remove unused definition iio: adc: at91-sama5d2_adc: convert to platform specific data structures iio: adc: at91-sama5d2_adc: add support for separate end of conversion registers iio: adc: at91-sama5d2_adc: add helper for COR register iio: adc: at91-sama5d2_adc: add support for sama7g5 device iio: adc: at91-sama5d2_adc: update copyright and authors information ARM: dts: at91: sama7g5: add node for the ADC ARM: dts: at91: sama7g5ek: enable ADC on the board .../bindings/iio/adc/atmel,sama5d2-adc.yaml | 1 + arch/arm/boot/dts/at91-sama7g5ek.dts | 8 + arch/arm/boot/dts/sama7g5.dtsi | 16 + drivers/iio/adc/at91-sama5d2_adc.c | 594 ++++++++++++------ 4 files changed, 432 insertions(+), 187 deletions(-)
-- Nicolas Ferre