From nobody Thu Sep 24 23:33:23 2026 Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BCFA14E535B for ; Fri, 18 Sep 2026 12:21:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.202.193.197 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734091; cv=none; b=NCyxrzl/fwN8CIQWevVizu9cQD5xpGDeSsplct062HSU+V1XisLOcf5RfNgKyqGye7wauHb2fn8KMgxxf1MOUWsV6+VsLjHLBZwhECRucpWdYzkajwDHq+pKk21nwiUaLibmuNs44Mw5qFbqLSjiADOheMcSsxA43+BtKi8g21Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734091; c=relaxed/simple; bh=a07U5kp7Ed56BcaidCAcdWRKpOlR81d1yd1MM3ojZNg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=VmW/rfiB30T0BZgVeRCt5WLVztf0ASqpVAhJOlbpvq9xmk6w3J2N66KJ11CJfp8Ah0gbzpMJ9dLAma49g38HRd8cL9T6pCL8oDFzgh5U0fvQQrfBjBOtUG7KiPxBoSFDL/chEgBqVMcu3g1RjM5AY67NmoEhyfH5njfYT2geBeI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net; spf=pass smtp.mailfrom=arkamondal.net; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b=e8NJ7vwn; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b=Wm13VU4N; arc=none smtp.client-ip=34.202.193.197 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b="e8NJ7vwn"; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b="Wm13VU4N" DKIM-Signature: a=rsa-sha256; b=e8NJ7vwnoCVNM0jWTGe1403nhCrKGqKxBeJC/WFSkJlTqdu4e/qDvD7hhLYJoO9m5lN6tF8lK+9Ubvrnm2FyjmtnXjFSV6nz1S+Q1vr6FwH9QzvaFuLg2RoImt0Pdw3kMPCE6BhgTcCHJ/CXVlVZkduX4gznAU80L1Miwk+t+bV3ilYe0ZCVhrFDYVkiMXYLopcrcMC9LTlaX4Z+Nz+FwjEm9IOEyM3PUVRkD98M7Q4l8jE19SPegh40fPy5AcCBHgm1HsupWdkCvk4wGpGv2G6kPyHal+drhRnAt44OW4SvOUAJf/HoH9pZCxY3QSks7Jpxzw7cumS4Ec2E46FIVQ==; s=purelymail2; d=arkamondal.net; v=1; bh=a07U5kp7Ed56BcaidCAcdWRKpOlR81d1yd1MM3ojZNg=; h=Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=Wm13VU4NDyaQOzeylNe+YJ+zKpOnVlNbpdrYc7GAa8uDpMRGjw2giL/FDO8d8/hlnC6lmEXVM+9LO5lu7VblGglvem+7hinaWVyUCbgt7ellwnu3E/P0agMJTMxT5kmxuCcPE2STWwXiYOokZlXwnh9SLmJVwLFGcrOeWBElPejdJ1+Lf6XJMpUKkd3Z/9dYK7n1lnRh5gWgMdQh9EyQgle6I/MHF+onqGfuCFb2HtM423DU2IA4xexxbaBCTiu2ITmuAyPeo9PsQIIQDBJ+ARLvJ+s9Twp8Cw7rZGTp/BEaJ2zIQ8jkhJqbtMzaX/GO3GSFX2pAbtH10FhP6ODPhQ==; s=purelymail2; d=purelymail.com; v=1; bh=a07U5kp7Ed56BcaidCAcdWRKpOlR81d1yd1MM3ojZNg=; h=Feedback-ID:Received:From:To:Subject:Date; Feedback-ID: 1246644:48769:null:purelymail X-Pm-Original-To: linux-kernel@vger.kernel.org Authentication-Results: purelymail.com; auth=pass Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -450814046; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 18 Sep 2026 12:20:51 +0000 (UTC) From: Arka Mondal To: Jonathan Cameron , =?UTF-8?q?Nuno=20S=C3=A1?= , Michael Hennerich Cc: David Lechner , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, arkamondalofficial@gmail.com, Arka Mondal Subject: [PATCH 1/5] iio: dac: ad5758: Fix alignment for DMA safety Date: Fri, 18 Sep 2026 21:20:28 +0900 Message-ID: <20260918122032.134947-2-arka@arkamondal.net> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260918122032.134947-1-arka@arkamondal.net> References: <20260918122032.134947-1-arka@arkamondal.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by Purelymail Content-Type: text/plain; charset="utf-8" ad5758_spi_reg_read() reads into st->d32[2] with spi_sync_transfer(), but d32 is not marked __aligned(IIO_DMA_MINALIGN), so it can share a cacheline with the fields before it. When DMA is not cache coherent, the cache invalidation after the read can discard CPU writes to those fields. Mark d32 __aligned(IIO_DMA_MINALIGN). It is the last member of the struct, so nothing comes after it. Fixes: 28d1a7ac2a0d ("iio: dac: Add AD5758 support") Signed-off-by: Arka Mondal Reviewed-by: Nuno S=C3=A1 --- Notes: Compile tested only; no relevant hardware available. drivers/iio/dac/ad5758.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/dac/ad5758.c b/drivers/iio/dac/ad5758.c index 44efa373cd80..ba381bd252d1 100644 --- a/drivers/iio/dac/ad5758.c +++ b/drivers/iio/dac/ad5758.c @@ -117,7 +117,7 @@ struct ad5758_state { unsigned int dc_dc_ilim; unsigned int slew_time; bool pwr_down; - __be32 d32[3]; + __be32 d32[3] __aligned(IIO_DMA_MINALIGN); }; =20 /* --=20 2.55.0 From nobody Thu Sep 24 23:33:23 2026 Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 628D54E73D3 for ; Fri, 18 Sep 2026 12:21:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.202.193.197 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734093; cv=none; b=eTkH6kAqw6uWgCd2LCuMYqxcfl2XEjYyXyyqscOL/SztYJuI3GGUHc9Su2sOqy9yi6cpXgCWqmvxFyI5TOYWWYDZpRwoc86gL3I7tSWUCKxUSJnvj2gmcSe+6V8rLakOhczNQaKMjtYaTnWx1QsIntlqiUyM0x4gXdKiVTFdMUM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734093; c=relaxed/simple; bh=ib4SDiCj1gxthZP03lLIECcZx7+5SyPWlQBW0JrWDow=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=EnWP0hjCcPYtHDWOBewPCK+zpiDuwMcwZS+vQ6sYn0dtKOAJCwB+p8mI3wP1Bf/RgALf0sxIdKrK0d425UjWF99DeQ8SOnfYKvN/YBA74Jkn+mSgjH4Nr8jnhPNyQKr5DFxC2P99EplhGgKVmGAdA8yKpozUTdVcTXA/Pl5Tq+E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net; spf=pass smtp.mailfrom=arkamondal.net; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b=dudFhndH; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b=WZJkOXZx; arc=none smtp.client-ip=34.202.193.197 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b="dudFhndH"; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b="WZJkOXZx" DKIM-Signature: a=rsa-sha256; b=dudFhndHLz3pF2gVpwCdmN7F6QkBFZ9gADI7hjXL3PNC/wQSFYFeIsx40op+MLEOKXO6rYck/Xb4ZBwQiodTL9GrFF6WcCkFZLy5hRSdL/BEZdSApdXyP8wNWvLMGqqA/booMM5pWExVMZXxTY5usDVM6QPrHeOOSKLiedDlIhJIjjjyJCL6vT46iR2xb7CWJxbq/i8V1mZKjiZmZ8J7CLjhv6V67R9vBZe4D1lxP7bmZVZZK5T2Hw//NujPOXRVa8UhD3TxSRKg0RdzRnxQA/u5HPUa3tKq3oxwpTURVmgMjUKLivycr0cd1ptwWLPQgl20U5WlqhvfHAbVl2hExA==; s=purelymail2; d=arkamondal.net; v=1; bh=ib4SDiCj1gxthZP03lLIECcZx7+5SyPWlQBW0JrWDow=; h=Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=WZJkOXZx63nbDfbFVYfZf+F4GC0l/BETUBMnrb+yxgdRQjiVBjS/ZXKG3HhbicxKR/5IJIS0NW7azerC0uLCkZvoSJVRcBXTgoDSd2zqtRPJil9iFriuOWxL+Sn25aO8+S1JBT1+ffrd1B5kHY4C8QteDVBLgwHCpWb+YLub8Ge4cAF6BI+UfjZYwOKNmG4KlZRB+X/4nh+r9To+mW6Pr++Gl3c+Ys1qx+cMrZuULP/t9OeuKeZh1xK7jIeekB25g1u8owFj0VC+78gZgW3lacA0Lje7Bb8jsI1X92FslylJ/2Ra/g1WcLCrP0vsYHavGStiriKz9FAtKIzC5vGfNA==; s=purelymail2; d=purelymail.com; v=1; bh=ib4SDiCj1gxthZP03lLIECcZx7+5SyPWlQBW0JrWDow=; h=Feedback-ID:Received:From:To:Subject:Date; Feedback-ID: 1246644:48769:null:purelymail X-Pm-Original-To: linux-kernel@vger.kernel.org Authentication-Results: purelymail.com; auth=pass Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id 1394276197; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 18 Sep 2026 12:20:54 +0000 (UTC) From: Arka Mondal To: Jonathan Cameron , =?UTF-8?q?Nuno=20S=C3=A1?= , Michael Hennerich Cc: David Lechner , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, arkamondalofficial@gmail.com, Arka Mondal Subject: [PATCH 2/5] iio: dac: ad5758: Reject out-of-range raw values Date: Fri, 18 Sep 2026 21:20:29 +0900 Message-ID: <20260918122032.134947-3-arka@arkamondal.net> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260918122032.134947-1-arka@arkamondal.net> References: <20260918122032.134947-1-arka@arkamondal.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by Purelymail Content-Type: text/plain; charset="utf-8" ad5758_write_raw() passes the value from userspace straight to ad5758_spi_reg_write(), which keeps only the low 16 bits. Writing -1 to the raw attribute gives full-scale output, and 65536 gives code 0. Return -EINVAL for values outside 0 to U16_MAX, as ad5755 does. Fixes: 28d1a7ac2a0d ("iio: dac: Add AD5758 support") Signed-off-by: Arka Mondal Reviewed-by: Nuno S=C3=A1 --- Notes: Compile tested only; no relevant hardware available. drivers/iio/dac/ad5758.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/iio/dac/ad5758.c b/drivers/iio/dac/ad5758.c index ba381bd252d1..2a9e907b5eb8 100644 --- a/drivers/iio/dac/ad5758.c +++ b/drivers/iio/dac/ad5758.c @@ -556,6 +556,9 @@ static int ad5758_write_raw(struct iio_dev *indio_dev, =20 switch (info) { case IIO_CHAN_INFO_RAW: + if (val < 0 || val > U16_MAX) + return -EINVAL; + mutex_lock(&st->lock); ret =3D ad5758_spi_reg_write(st, AD5758_DAC_INPUT, val); mutex_unlock(&st->lock); --=20 2.55.0 From nobody Thu Sep 24 23:33:23 2026 Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9BE274E80CC for ; Fri, 18 Sep 2026 12:21:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.202.193.197 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734096; cv=none; b=KaW9pp0tkXR/hDNUcaT1C0MzSOT5BwH1VN0ARb/VrMpCEZLLs5h84KlWfZocwKK77vjw+S4ZZKXQAPSN3q8in49263IKLtEbxujnFvifUABNDCCGl0mCWCd/79r4uKWfLQn9VFJxKpx8qs1ycFNVqqkRG+H39DtOcz1k94KIZbc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734096; c=relaxed/simple; bh=ch9ve9LQc6Qi8boGhcrG9lniA/EangmgdJ2IcddcQ0Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=HDmWt5q0Od/CkCC/0YoSyXQnWxyAUVghlCis7Ry/yut0DesgB/9XS4/MDIRJAf5j2KEhOOjoKZBUszXUkcjhftXXEkj2y5fnWfMQzMyCEgXSnbwKAKUPliwq9imNgXhbM3oX5AjpUG+uBx5ECCLjpQxIFA/5TI5/Vl2Z6nUJUCo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net; spf=pass smtp.mailfrom=arkamondal.net; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b=mbtnZaa8; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b=N2RC5Tly; arc=none smtp.client-ip=34.202.193.197 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b="mbtnZaa8"; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b="N2RC5Tly" DKIM-Signature: a=rsa-sha256; b=mbtnZaa8rOJRE6LUGuCasPAjdBOOXlgr0Eu1bBaxxeb3gXdzJmZdUuceuahICnfdtjYGJBzhknE8CEzBtGjP71gZxMGLgHQyrufMaVscip2vhiGuv1hnCUtDx6ZGtoDRnk7Erv2ndbJVbvGRyv8y+f8wizXQ7sP2q+OgOhoDnBJi4lGpOPJBRPCbbLol+uckOuNQAXt6bvm14wFwTFdHsXQzXYOjcE2eZw61I8pwmLwr0VtTzap5mALydGjqTu+GHNbCahWeAEA/YrEjKNJHG7FA2L0bgGivhLvBlDNap1BjcevZOPHAcGxTK8Y7JlWnCGKrQPVvMWF0yvZuZeePWQ==; s=purelymail2; d=arkamondal.net; v=1; bh=ch9ve9LQc6Qi8boGhcrG9lniA/EangmgdJ2IcddcQ0Q=; h=Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=N2RC5TlyEsV8HQbwsrVD0GRsp9fL1DtI6XJn64yybnuaQ3pRDwlq/TaXXxuhpi92C/H5RRoOBm4P18lp1uu70Nr2JaYq4IXjMhPNPICEvCs6/Q1RRpZWv573VtXLWOnjVKOlRClzwwrQEIkQN95Mfl/CoRJI6hqHC57crURYmjNiOwpGrcyxElb4kQ607NdCTD1mRbHxNzIjsnRHooolfD2K4L5b18STpIIwbev47T8HL39O/sysX7mgJhLTISo7tWfPAsfZS+b+Gro0cNChtmDeQ9R9ZX//gvvyqJO2TbUZNss/PPrIlObkLjtZN2WHHM9iJEduMW8D9d7QttfR7g==; s=purelymail2; d=purelymail.com; v=1; bh=ch9ve9LQc6Qi8boGhcrG9lniA/EangmgdJ2IcddcQ0Q=; h=Feedback-ID:Received:From:To:Subject:Date; Feedback-ID: 1246644:48769:null:purelymail X-Pm-Original-To: linux-kernel@vger.kernel.org Authentication-Results: purelymail.com; auth=pass Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -934585299; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 18 Sep 2026 12:20:56 +0000 (UTC) From: Arka Mondal To: Jonathan Cameron , =?UTF-8?q?Nuno=20S=C3=A1?= , Michael Hennerich Cc: David Lechner , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, arkamondalofficial@gmail.com, Arka Mondal Subject: [PATCH 3/5] iio: dac: ad5758: Fix the offset calculation Date: Fri, 18 Sep 2026 21:20:30 +0900 Message-ID: <20260918122032.134947-4-arka@arkamondal.net> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260918122032.134947-1-arka@arkamondal.net> References: <20260918122032.134947-1-arka@arkamondal.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by Purelymail Content-Type: text/plain; charset="utf-8" The offset is a count of DAC codes, so the microamp or microvolt units of min and max cancel out and the final division by 1000 is wrong. For the +-20 mA range the driver reports -32 instead of -32768. For the +-5 V and +-10 V ranges min * (1 << 16) also overflows int, and the reported offset is 0. Drop the division and do the multiplication in 64 bits. Fixes: 28d1a7ac2a0d ("iio: dac: Add AD5758 support") Signed-off-by: Arka Mondal Reviewed-by: Nuno S=C3=A1 --- Notes: Compile tested only; no relevant hardware available. drivers/iio/dac/ad5758.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/iio/dac/ad5758.c b/drivers/iio/dac/ad5758.c index 2a9e907b5eb8..1e21ad2a050d 100644 --- a/drivers/iio/dac/ad5758.c +++ b/drivers/iio/dac/ad5758.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -540,7 +541,7 @@ static int ad5758_read_raw(struct iio_dev *indio_dev, case IIO_CHAN_INFO_OFFSET: min =3D st->out_range.min; max =3D st->out_range.max; - *val =3D ((min * (1 << 16)) / (max - min)) / 1000; + *val =3D div_s64((s64)min * (1 << 16), max - min); return IIO_VAL_INT; default: return -EINVAL; --=20 2.55.0 From nobody Thu Sep 24 23:33:23 2026 Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7B32C4E1C73 for ; Fri, 18 Sep 2026 12:21:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.202.193.197 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734101; cv=none; b=dnQwZo11hV5YwbW+BeRz5peXuAczhsIjwDpQoPTAhs5A+aB8/QLwtSPQqYUoQrzzjFbYiJXYNZY7y5fcjy0d2uDaYgcHpzBpAkXhxv8rXkNBX2Q2/8ubXvgu0Om57nHPwtWg6PnBYo5jhF+2W0RcNaOdH+G8mscQq4kVmBL8TYw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734101; c=relaxed/simple; bh=TuyjP1INHvUXJ5wQEnbUv/JdqrdpqiKRoAq0rTSCrCY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=HASvgOPn45TmE2s8IPxYm41G6tvHKU6IivN/15ZBta1yIXXRQi6GGAuFQ9fUUDtq2gceTW7ulT4edKgttatzOerSgrlVGVzAIxDVXvpLSyx/hwywkpVFVvbnoSb8KkAKRG01c37vRc22RJ98y7Z76PtbfxQaBV8tra35TbTVIXk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net; spf=pass smtp.mailfrom=arkamondal.net; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b=EGEDyB08; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b=AWcpesa/; arc=none smtp.client-ip=34.202.193.197 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b="EGEDyB08"; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b="AWcpesa/" DKIM-Signature: a=rsa-sha256; b=EGEDyB08keu9dVEZp5bKYTdcoJDL+Y3TWUSXTv9PqZtRlDVUT2JTNqtFsKYZGD1tcmeZjL1Z8JVB0zlYM9tgQ10jLq2PiagG4iH9hI4DVbf92MjhfYEAKSeod31/2HAlKD0JBZ4Xtr10KLBtZC5/wTJWNx7iUC+reSy0CD8UrTyAj5gPUkJmEkwlZ3AWeHaXa49EL2Ln3GCr2IA/JDXSrwxR4fZYpZZAZrylHZ8Jk19oxfELaxNlLxbHgWmbc2RvcrFA7AgQqybN7iJc32Amco91OiR0aN50I02rn2ODjMgvzMrUx79Lrq3ehT9EIib+iZqOrDL7G5lv5d5OlkuYgA==; s=purelymail2; d=arkamondal.net; v=1; bh=TuyjP1INHvUXJ5wQEnbUv/JdqrdpqiKRoAq0rTSCrCY=; h=Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=AWcpesa/QylHKvcA1n3mvYVUrGpxtfuQWzi8ZXbZPiPcuu0N+BNtMg2FiCbJJO6dWDkpRTSAgv390pnoCWW7tMCSS8cJfALD7UMyfjtN4Il9ssBAUFPZDQDBdGW01GO66vMIzUz77WoCPgw2tH/SYTd8gD4DnujRyBNWqQzuBybTftpO2RFIO4ot+Lo9mkQQpuebFYikvpbTVpL68atFzkl0zPyabzbTLr+H4PH2ZKa7B3UM8JbTKV4W1S8YB/TkEK5ozqMX/gbUBbe5CBmi6aiHm+EexdqIJ0k1JbrHcgLkMb+4cVDHV8ejvo3kzqLbqeWPseSo+YN4vsBPSTwrkA==; s=purelymail2; d=purelymail.com; v=1; bh=TuyjP1INHvUXJ5wQEnbUv/JdqrdpqiKRoAq0rTSCrCY=; h=Feedback-ID:Received:From:To:Subject:Date; Feedback-ID: 1246644:48769:null:purelymail X-Pm-Original-To: linux-kernel@vger.kernel.org Authentication-Results: purelymail.com; auth=pass Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -998652841; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 18 Sep 2026 12:20:59 +0000 (UTC) From: Arka Mondal To: Jonathan Cameron , =?UTF-8?q?Nuno=20S=C3=A1?= , Michael Hennerich Cc: David Lechner , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, arkamondalofficial@gmail.com, Arka Mondal Subject: [PATCH 4/5] dt-bindings: iio: dac: adi,ad5758: Fix the 4 mA to 20 mA current range Date: Fri, 18 Sep 2026 21:20:31 +0900 Message-ID: <20260918122032.134947-5-arka@arkamondal.net> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260918122032.134947-1-arka@arkamondal.net> References: <20260918122032.134947-1-arka@arkamondal.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by Purelymail Content-Type: text/plain; charset="utf-8" adi,range-microamp gives the 4 mA to 20 mA range as <4 24000>. The values are in microamps, so this reads as 4 uA to 24 mA. The original text binding described <4 24000> as the "4 mA to 20 mA current range", and the data sheet (Rev. B, Table 32) confirms range code 1010 is 4 mA to 20 mA. Add <4000 20000> and mark <4 24000> deprecated, so existing device trees still validate. Fixes: 777baca07ef1 ("dt-bindings: iio: dac: Add docs for AD5758 DAC") Signed-off-by: Arka Mondal Reviewed-by: Nuno S=C3=A1 --- Notes: Checked with make dt_binding_check; no relevant hardware available. Documentation/devicetree/bindings/iio/dac/adi,ad5758.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad5758.yaml b/Do= cumentation/devicetree/bindings/iio/dac/adi,ad5758.yaml index 5121685337b5..ef0398170eb7 100644 --- a/Documentation/devicetree/bindings/iio/dac/adi,ad5758.yaml +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad5758.yaml @@ -65,9 +65,13 @@ properties: - items: - const: 0 - enum: [20000, 24000] + - items: + - const: 4000 + - const: 20000 - items: - const: 4 - const: 24000 + deprecated: true - items: - const: -20000 - const: 20000 --=20 2.55.0 From nobody Thu Sep 24 23:33:23 2026 Received: from sendmail.purelymail.com (sendmail.purelymail.com [34.202.193.197]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 52A8D4ED1B1 for ; Fri, 18 Sep 2026 12:21:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.202.193.197 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734112; cv=none; b=sAnZWyq/I2txi6XjamPFBaHtNPnTr6+0KNYNSssW3Eg2kUctIs8a+OmhF/p1jSCrvglpmPwDl7Ng63dCuhbGu99bCs+yAYh5184d+oW6XbmqV3nD8tfDiFbeWnIqqDKx3Z5Qff5xTlDrqHBr0EVz7EmvNu5Vo++Ce2wJ+R7f6U4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789734112; c=relaxed/simple; bh=3W5C2796scL1/2OyZXCyBa69zoV5O+l8I3JiNOsPG1s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=YDNK74qulG7HDvb+ZkuMQrudWZBKudQaHvvrgYm2aGQVCjTvutlAKSDiXJdTHqtDFOGP7zSf55SswuBhqUSruGwlfJh84srgIuF9AhXgMIvvLVBZ0xsxGbhTEa6gf/WK/i0jAuTDym7IyQP6gFYd9E8AQ1eRlhEpVxFeecmLfaE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net; spf=pass smtp.mailfrom=arkamondal.net; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b=iKKniw34; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b=Mw9NieBh; arc=none smtp.client-ip=34.202.193.197 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arkamondal.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=arkamondal.net header.i=@arkamondal.net header.b="iKKniw34"; dkim=pass (2048-bit key) header.d=purelymail.com header.i=@purelymail.com header.b="Mw9NieBh" DKIM-Signature: a=rsa-sha256; b=iKKniw34QGt1RnfPqgD7aWTuV+gA/dsto3IpW5q2/6XClb4WP1H/re0GZj0aY/HbPicotMh66E5St+hmJ+3v8KCU2b92z7odfXjKjKwcccoxcAn8zUnTl2JL0Vljffk/qroaL2luIV6md9XaDOytJ93q7zekb8V6Jkawt1eJs/O5G5aLoeiUmHs0Di/JWUzX9CS9BRRKvRckQ9qRpDUVETPVucPl2rweU1GjgGDhBJnLzUamfDiXDgPwT9zdCdCetGxEuTvum2nUvv0EzDwl1Fu2aWMQFN/RaXNlEfcylXMf3Emt3MklO+K5tF6ruCfLPBnWcuV6bNJS5jqWRFpbZw==; s=purelymail2; d=arkamondal.net; v=1; bh=3W5C2796scL1/2OyZXCyBa69zoV5O+l8I3JiNOsPG1s=; h=Received:From:To:Subject:Date; DKIM-Signature: a=rsa-sha256; b=Mw9NieBh0cu5hEJVKYVdRoMkeslcT7GQSsFtqB2fZkRI+tyg728cdWkoJRa4VHU1su4r0beyyQYiA9bWXppH7rhOHXgCF+tcehI2gb4lbkpc7RzHirER3KjLppBI60tRYnw7Q4P6DjGMU72DxmTvYkYU3pgPdCNBeu9w5OyJlDsclQx7YhbScC5g/Hv3qd+HoQR7nco/oOdKhsgWKM923clh6AojupRVF9xcY6VJ5CXTLLe3foxTGnaWvSOpoiV1qvLTyEajaY0OiI5NVOaP34aQ8qZ/M0CTFnVkQf0k25U1s85spO018bCMtsZ56TfNCR9eR73wdEPrxUaNBqt/dw==; s=purelymail2; d=purelymail.com; v=1; bh=3W5C2796scL1/2OyZXCyBa69zoV5O+l8I3JiNOsPG1s=; h=Feedback-ID:Received:From:To:Subject:Date; Feedback-ID: 1246644:48769:null:purelymail X-Pm-Original-To: linux-kernel@vger.kernel.org Authentication-Results: purelymail.com; auth=pass Received: by smtp.purelymail.com (Purelymail SMTP) with ESMTPSA id -646422619; (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Fri, 18 Sep 2026 12:21:02 +0000 (UTC) From: Arka Mondal To: Jonathan Cameron , =?UTF-8?q?Nuno=20S=C3=A1?= , Michael Hennerich Cc: David Lechner , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, arkamondalofficial@gmail.com, Arka Mondal Subject: [PATCH 5/5] iio: dac: ad5758: Fix the 4 mA to 20 mA current range Date: Fri, 18 Sep 2026 21:20:32 +0900 Message-ID: <20260918122032.134947-6-arka@arkamondal.net> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260918122032.134947-1-arka@arkamondal.net> References: <20260918122032.134947-1-arka@arkamondal.net> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by Purelymail Content-Type: text/plain; charset="utf-8" Range code 1010 selects 4 mA to 20 mA (data sheet Rev. B, Table 32), but the driver describes it as 4 uA to 24 mA. With the reported scale and offset, userspace converts raw code 0 to about 0 mA instead of 4 mA, and full scale to about 23 mA instead of 20 mA. Describe the range as 4000 to 20000 uA and rename the enum entry to match. Map the deprecated <4 24000> device tree value to the corrected range, so existing device trees keep working. Fixes: 28d1a7ac2a0d ("iio: dac: Add AD5758 support") Signed-off-by: Arka Mondal Reviewed-by: Nuno S=C3=A1 --- Notes: Compile tested only; no relevant hardware available. drivers/iio/dac/ad5758.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/iio/dac/ad5758.c b/drivers/iio/dac/ad5758.c index 1e21ad2a050d..b152001f38d4 100644 --- a/drivers/iio/dac/ad5758.c +++ b/drivers/iio/dac/ad5758.c @@ -141,7 +141,7 @@ enum ad5758_output_range { AD5758_RANGE_PLUSMINUS_10V, AD5758_RANGE_0mA_20mA =3D 8, AD5758_RANGE_0mA_24mA, - AD5758_RANGE_4mA_24mA, + AD5758_RANGE_4mA_20mA, AD5758_RANGE_PLUSMINUS_20mA, AD5758_RANGE_PLUSMINUS_24mA, AD5758_RANGE_MINUS_1mA_PLUS_22mA, @@ -164,7 +164,7 @@ static const struct ad5758_range ad5758_voltage_range[]= =3D { static const struct ad5758_range ad5758_current_range[] =3D { { AD5758_RANGE_0mA_20mA, 0, 20000}, { AD5758_RANGE_0mA_24mA, 0, 24000 }, - { AD5758_RANGE_4mA_24mA, 4, 24000 }, + { AD5758_RANGE_4mA_20mA, 4000, 20000 }, { AD5758_RANGE_PLUSMINUS_20mA, -20000, 20000 }, { AD5758_RANGE_PLUSMINUS_24mA, -24000, 24000 }, { AD5758_RANGE_MINUS_1mA_PLUS_22mA, -1000, 22000 }, @@ -747,6 +747,12 @@ static int ad5758_parse_dt(struct ad5758_state *st) "Missing \"range-microamp\" property\n"); return ret; } + + if (tmparray[0] =3D=3D 4 && tmparray[1] =3D=3D 24000) { + tmparray[0] =3D 4000; + tmparray[1] =3D 20000; + } + range =3D ad5758_current_range; size =3D ARRAY_SIZE(ad5758_current_range); } --=20 2.55.0