From: Joshua Crofts <joshua.crofts1@gmail.com>
To: "Jonathan Cameron" <jic23@kernel.org>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>
Cc: linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
Joshua Crofts <joshua.crofts1@gmail.com>,
Conor Dooley <conor.dooley@microchip.com>
Subject: [PATCH v3 0/2] iio: dac: mcp47a1: add support for new device
Date: Mon, 03 Aug 2026 19:32:24 +0200 [thread overview]
Message-ID: <20260803-mcp47a1-add-support-v3-0-540e71b4fd2e@gmail.com> (raw)
This patch series adds support for the MCP47A1 DAC.
The Microchip MCP47A1 is a volatile 6-bit Digital-to-Analog converter
which communicates via I2C. It is a low-power, low-cost DAC commonly
used in embedded systems.
Reasons for adding a new driver:
- Existing Microchip DACs use a more complicated set of commands
whereas the MCP47A1 communicates via SMBus using only one command.
- The closest Microchip DAC already in the tree - the MCP4725 - uses
an EEPROM while the MCP47A1 is volatile, meaning that altering
the driver of the former would worsen the code flow.
- The MCP47A1 maps cleanly to a standard regmap.
The driver was tested on a Raspberry Pi 4 using a breakout board with
the MCP47A1.
The datasheet can be viewed here:
https://ww1.microchip.com/downloads/aemDocuments/documents/OTH/ProductDocuments/DataSheets/25154A.pdf
Signed-off-by: Joshua Crofts <joshua.crofts1@gmail.com>
---
Changes in v3:
- remove iio_chan_spec array and define a separate single channel as
only one is used
- change scale denominator from 63 to 64 as former would produce scaling
errors
- Link to v2: https://lore.kernel.org/r/20260727-mcp47a1-add-support-v2-0-d4591a2ce69e@gmail.com
Changes in v2:
- dt-bindings: add slave address enum to dt-binding
- dt-bindings: remove unnecessary example
- move driver from regmap to i2c_smbus_* functions to reduce overhead
- remove read test on probe as it's too unstable
- add 20us delay on startup
- style changes
- remove excess mailing list entry from MAINTAINERS
- Link to v1: https://lore.kernel.org/r/20260721-mcp47a1-add-support-v1-0-da045a2567e3@gmail.com
---
Joshua Crofts (2):
dt-bindings: iio: dac: add support for mcp47a1
iio: dac: mcp47a1: add support for new device
.../bindings/iio/dac/microchip,mcp47a1.yaml | 50 +++++++
MAINTAINERS | 6 +
drivers/iio/dac/Kconfig | 10 ++
drivers/iio/dac/Makefile | 1 +
drivers/iio/dac/mcp47a1.c | 166 +++++++++++++++++++++
5 files changed, 233 insertions(+)
---
base-commit: e0484d62e8e1cff75b210938be835ea6221bda59
change-id: 20260711-mcp47a1-add-support-3af1248f13a5
Best regards,
--
Kind regards,
Joshua Crofts
next reply other threads:[~2026-08-03 17:32 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-03 17:32 Joshua Crofts [this message]
2026-08-03 17:32 ` [PATCH v3 1/2] dt-bindings: iio: dac: add support for mcp47a1 Joshua Crofts
2026-08-03 18:07 ` sashiko-bot
2026-08-03 19:35 ` Joshua Crofts
2026-08-03 17:32 ` [PATCH v3 2/2] iio: dac: mcp47a1: add support for new device Joshua Crofts
2026-08-03 17:44 ` sashiko-bot
2026-08-03 19:42 ` Joshua Crofts
2026-08-05 0:14 ` [PATCH v3 0/2] " Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260803-mcp47a1-add-support-v3-0-540e71b4fd2e@gmail.com \
--to=joshua.crofts1@gmail.com \
--cc=andy@kernel.org \
--cc=conor+dt@kernel.org \
--cc=conor.dooley@microchip.com \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox