From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ot1-f51.google.com (mail-ot1-f51.google.com [209.85.210.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CE04835F610 for ; Sat, 20 Jun 2026 16:14:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781972070; cv=none; b=PwsjKl/toUU5D7cAIDFu97cE4u4jquxdOAvMad8szRHe1DoQPC8B4A0lLYSKAAzqdv48yB8PddMw+ZYNnmPH41Ah6ZDzjX5aB7tyD6IO6i3bVV+dpOtQbNUAmWTZKR8nUX17/YTXKYP9iS0OREXp9HuMULmkQ+Gih8PrsYS57Ks= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781972070; c=relaxed/simple; bh=VDtfdO15TmSPd1YLF4tUzPuukTeoidBLVzbiod0dE00=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=RtVS8zt9VQ70t4RbPaFuZyhQ+bgSAyljh4YehIAePusv7jj5ay55mDz1Qlj4gr8z8YbLMgaw4/sMl/dftSF6uVeMSnavpZhGoq11dSYGjs8ho80GNBPNWV4p1DxDiVXQUm7swAENJFgQjWicv8RxMij02Jt4WpdfQBD58qdqyps= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.b=SDZ03XKK; arc=none smtp.client-ip=209.85.210.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre.com header.i=@baylibre.com header.b="SDZ03XKK" Received: by mail-ot1-f51.google.com with SMTP id 46e09a7af769-7e6fa36a1b6so2282708a34.1 for ; Sat, 20 Jun 2026 09:14:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre.com; s=google; t=1781972066; x=1782576866; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=stc9e+NuTJE390Jhi5x3KXowpSGWUhAucrUQzkG/9Rw=; b=SDZ03XKKcfO/O04ALEvwuwqdEXBk+jOYzB89SvCsht9gA8SKqn76eNznYPuWM4UQbJ sPA1oVDRrMymwuWIsCR4E+AIVr+EGwifiaZCwZFx8YpmMNKYO0IG+aCy/qHEB833nZzo eJfr+/V1Zj/mant2RCEaorgygEt5xZAJSj0DA9Ile3Jmur91kTpwB795LdEgF+wUG0/R LmXPG0i+GucraZPzGmP1CNvP74FsDFiYk1j8HWlt4t6Ks4f1uwt1Zehbb9BCAN7ZK6op RTaoxpwfwIU/SWgDm3WRyOJI87Ep24Xc9kkI1OBr6l2hoUs7SzmAggbeHUL4ASsuNkap RZ7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781972066; x=1782576866; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=stc9e+NuTJE390Jhi5x3KXowpSGWUhAucrUQzkG/9Rw=; b=W2joD4pVipG2HLdYnygdQCq/2Cw8+VwpukkK2l6jpNYW/ujUeSyqxQCJHYHZPfJpE5 cjOOO4q0pXRxVvMJ6BuK2cca54ynMr0WSVFG6cO37cAIty4aDxIR41AD43PXE4IIqYzp xHI11l5IxKPWwRd3kRzHXrFLlBGT9FOCoAlgn+JcjVLtv73z4gtwRhm9IcLaO0cghXXi xWBaDfmAWApdME09R7GRZ3/KTohVvLnty0ajXT1r5sg9gYbyCjKTLobtuuPjpLT0ZFPZ lVmaN3y7p/dI3rzpF5LK7lvDkhaBEq0W1OFG5UOEn1fhtqIaC4WxgFpLwR3bG2AZxB5I BEnA== X-Forwarded-Encrypted: i=1; AFNElJ9qXDFjSg0G+RvpdHfiAPlRGYbGsx1M+jZtiHM1nNTcOxpLnb5hPsQxeHxPpWKFe8+ksMdL5FjR/VB+Ag8=@vger.kernel.org X-Gm-Message-State: AOJu0Yzk18sqjWWtT554nYvq1IrTpR+w9syzypJnWLjTvfkePZ3KmqYA wbAoxAZxBHRsAmLDkJAtkj8mytb11sli5ATnAHSM70jkeNjENOezFRCjpe4IsXhLlmY= X-Gm-Gg: AfdE7clr/c4wy3PtJk7dvHtzlI1UrcHU1raPsdPsTjv4KIvMTuCZOrq3Ya2keiWIc+S 8WHDqqyAfVsS8JFSLRUiiyzjFr2HGqimgWGNtfuo+RpmvdOECqnDFrPIYXCTUlNxkiGgUGiU9wm gFAVcV3UrC4H+6VcaptzvhVt2AgRPKHBlxueSzp+X7QH6rs8jsZ844BKamOgXpgUsL936tKyLn6 gASHu+WQduLfXTPKeOOp3WrWcP4h+k7Rg2E8dNf6R1SEOglQPEVzvOhIHBAgjQIOC0694+Qq47y molhgucYUF7BXZZ54Hw8Rl9hpnre5x49jCHwHANktJHRkOIQiLDGkwoh0H/cy2+NyEGEyi55eNR zX3zQIR4qIj1roAwf88M2tg+BS3G3uuHxvZCrNiBFAHCfPbPp8XqaRiH560zhaqvs3BKlqqWsnW gRLT8swlZKQxkYcGbIClTVfT43M4mMBAKr+81Byt10OCaM3w+HEKrD5ynLD19rg60= X-Received: by 2002:a05:6830:3749:b0:7de:84b5:88e3 with SMTP id 46e09a7af769-7e92d879fdfmr6842830a34.8.1781972065809; Sat, 20 Jun 2026 09:14:25 -0700 (PDT) Received: from ?IPV6:2600:8803:e7e4:500:3ad0:4082:8242:2d72? ([2600:8803:e7e4:500:3ad0:4082:8242:2d72]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7e94424c93fsm2202181a34.14.2026.06.20.09.14.25 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 20 Jun 2026 09:14:25 -0700 (PDT) Message-ID: Date: Sat, 20 Jun 2026 11:14:24 -0500 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 07/12] iio: dac: ad5686: add ldac gpio To: rodrigo.alencar@analog.com, Michael Auchter , linux@analog.com, linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-hardening@vger.kernel.org Cc: Michael Hennerich , Jonathan Cameron , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Philipp Zabel , Kees Cook , "Gustavo A. R. Silva" References: <20260616-ad5686-new-features-v3-0-f829fb7e9262@analog.com> <20260616-ad5686-new-features-v3-7-f829fb7e9262@analog.com> Content-Language: en-US From: David Lechner In-Reply-To: <20260616-ad5686-new-features-v3-7-f829fb7e9262@analog.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 6/16/26 3:21 AM, Rodrigo Alencar via B4 Relay wrote: > From: Rodrigo Alencar > > If wired LDAC, should be held low when unused (pin is active-low), which Would better match the implementation if this said "asserted" instead of "held low" (code says GPIOD_OUT_HIGH which should be read as "asserted"). > allows for synchronous DAC updates. This will be used to update all the > channels at the same time when adding buffer support. > > Signed-off-by: Rodrigo Alencar > --- > drivers/iio/dac/ad5686.c | 6 ++++++ > drivers/iio/dac/ad5686.h | 3 +++ > 2 files changed, 9 insertions(+) > > diff --git a/drivers/iio/dac/ad5686.c b/drivers/iio/dac/ad5686.c > index a48acedff51c..73105c197964 100644 > --- a/drivers/iio/dac/ad5686.c > +++ b/drivers/iio/dac/ad5686.c > @@ -12,6 +12,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -515,6 +516,11 @@ int ad5686_probe(struct device *dev, > return dev_err_probe(dev, PTR_ERR(rstc), > "Failed to get reset control\n"); > > + st->ldac_gpio = devm_gpiod_get_optional(dev, "ldac", GPIOD_OUT_HIGH); > + if (IS_ERR(st->ldac_gpio)) > + return dev_err_probe(dev, PTR_ERR(st->ldac_gpio), > + "Failed to get LDAC GPIO\n"); > + > reset_control_assert(rstc); > fsleep(1); /* reset pulse: comfortably bigger than the spec */ > reset_control_deassert(rstc); > diff --git a/drivers/iio/dac/ad5686.h b/drivers/iio/dac/ad5686.h > index a06fe7d89305..f3110410d89b 100644 > --- a/drivers/iio/dac/ad5686.h > +++ b/drivers/iio/dac/ad5686.h > @@ -60,6 +60,7 @@ enum ad5686_regmap_type { > AD5686_REGMAP, > }; > > +struct gpio_desc; > struct ad5686_state; > > /** > @@ -119,6 +120,7 @@ extern const struct ad5686_chip_info ad5679r_chip_info; > * @dev: device instance > * @chip_info: chip model specific constants, available modes etc > * @ops: bus specific operations > + * @ldac_gpio: LDAC pin GPIO descriptor > * @vref_mv: actual reference voltage used > * @pwr_down_mask: power down mask > * @pwr_down_mode: current power down mode > @@ -131,6 +133,7 @@ struct ad5686_state { > struct device *dev; > const struct ad5686_chip_info *chip_info; > const struct ad5686_bus_ops *ops; > + struct gpio_desc *ldac_gpio; > unsigned short vref_mv; > unsigned int pwr_down_mask; > unsigned int pwr_down_mode; >