Hi Jonathan,
On Thu, Jan 29, 2026 at 05:58:19PM +0000, Jonathan Cameron wrote:
On Wed, 28 Jan 2026 16:38:17 +0100
Oleksij Rempel [off-list ref] wrote:
quoted
The DS442x DAC uses sign-magnitude encoding, so -128 cannot be represented.
Previously, passing -128 resulted in a truncated value that programmed 0mA.
Fix this by validating the input against the 7-bit magnitude limit.
Additionally, refactor the raw access logic to use symmetrical bitwise
operations, replacing the union structure.
Fixes: d632a2bd8ffc ("iio: dac: ds4422/ds4424 dac driver")
Cc: <redacted>
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Hi Olkesij
This is good stuff but, this fails the test of being the minimal fix
suited for a trivial backport.
The right solution here is split it. Just apply the correct
limit in the fix patch, then the refactors in a patch on top of
that which most likely won't be backported for stable.
The v1 of this patch was implemented according to the fix patch
requirements:
https://lore.kernel.org/all/20260119182424.1660601-5-o.rempel@pengutronix.de/ (local)
May be keep v1 as is and rebase v3 as refactoring stage on top of it?
Best Regards,
Oleksij
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |