From nobody Tue Apr 7 18:00:37 2026 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 C9D45397E71 for ; Thu, 12 Mar 2026 11:53:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773316404; cv=none; b=o3AIQfvT0ARVaoSY6da7Jf7G7FjFmurqUMgGOycQOxyoRMLkGsBs+nfvuEMV/FXLp26k+6jnxbtLBotLURiCBR60AZ81U3m0gSDCuOwvhNb9EthGQ4KbGn4w9Gr5dHmlFoMHVm2FCcSS7kT0NzbGg6DK6f5u0cBaaYk/OkOjvQs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773316404; c=relaxed/simple; bh=8Xyy00oxH9BoglqKEOMhdKaA9OWY9AsQ82hA9RGRF9g=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DoJuws6qbZzpdmPyE6U7u3okfcYTYyfPson8BNZVOB1BegCGk4S+bXnsy+0W+9KaDHjbSSJWtiVTt1ypmK6JAJrl3LarZXOYOZ40E/o51Cgg4ojgESaWuaQ/FxRgxGOgNON+HtxwQ31FTwsuCM0HVsO+viZqBnxJg3ieeDOeyOY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OT+8NL6Q; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OT+8NL6Q" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-483487335c2so7686765e9.2 for ; Thu, 12 Mar 2026 04:53:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773316401; x=1773921201; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ksNpMcFOkdRuvwTL39BI4yY5vtgJD4Unsj/0RB7GtmA=; b=OT+8NL6Q+xa9qHCGj2CVJkyOoECqJ1v9JHMe8rCzCj5LCZih+hJlyYbntbXByED7nE C//0CInB9fYLGmnx12w+C1dSKVGW8/0XzJ4vb5dO8c2XilB4SV6C3J9pvWXRJvQJsXgk SaDoyC68C7wOAbLbDfXQ+GrlZUP5y/kqvRqI3q8yFlnD1KZ0ZfaVspztCJyPGXUfKzR8 MWt+cQFFEFCkZg5txBi45OKQMhbSyUTuW9kthysNYCiZZFVbZsX5mtsC5TcbccJY0Pod bDo0viXRzkYjnmQBNchN6r/yQrqNdR/fyka2UrAadBl4zMvZ5eh6t8urKVPn0X2XWZFQ A41g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773316401; x=1773921201; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ksNpMcFOkdRuvwTL39BI4yY5vtgJD4Unsj/0RB7GtmA=; b=Dx49VYzOVNg3B+iBBzvA1fGhRUhEORfuObrG9JV3lnD+oxHg0yUoaP0XavcQHpFssk y9mnyoZ/UYwgB+E3dS3MvDvbAIxXPcPk6Q8KRpOPuX8h4O2hgZR1C+mxo/eZ5QizcpFy jKVT6PHTOf027WPjIhb5XBHbs5iptvvCmNhRuZXdTcl2WoDqo8aMGsW+aSFSU6LNa3A9 dX+oI/f77xDOpzdzwxfkpYk4LqNr1Y2fkTDRo7d1KDZmZWimkYrwCCkw3oGHhLqblJ1P W19XYU1I1hzjMreaW2XNuQQycYYMyOXILGlFWd142FGnqUNyiwfEJBBCy7t8fCqUDoFh +AFA== X-Forwarded-Encrypted: i=1; AJvYcCUwQJTadKwXUlMuLg4HqnEsj71iwx7BOR/kcxpgL4P5sLAieGEzAaa0NW/7Sg+bzYCH//sknwXNCw0sNfo=@vger.kernel.org X-Gm-Message-State: AOJu0Yz77SLEhk+3SmyPwrA5CVgCegXeS/4WszO6tBYnOYrGIfR1tXVP n62i/4YulwMaRfykZBiLD573PDad/t87WfEoyiBRJ9tDRJfTlnaeB2cV X-Gm-Gg: ATEYQzwHz2E7QLjGlW7s8B78uwUxYptQo7TF+upjbuY+iT5/ySj+RbC6z/wkurLPrtu sOHUoUA3GHZcK57lnGhps0IHeShtwLYsCX0xxgQ52mBO652PbrmxfyRGYNsPIr5bahojinuqSA+ Ri3CqR3jKUOyvDspjzgrcf20XjHrP6EXrrhE1j2jsnPG3qvUX6dnHqC8qxauGTpx1BaJAxH2gnF Kdxq8OIRA0PtU0r3gLWHIutJFogVxr7YrWSPtiJdlSzqLR4+gebtBZU0b0eiWld8Ks1OK/TP5zl XSsjD/QnypaAKXseXy+cpSnHRxpItzn+7n4pIWJmQkPKupf/utNWcsPE3zGLAsCQjn+ovM+242R 46Wa2mGZCX7Iau7kq8m1AaMqIF/INV2Tip09k6/MOwl55imcmu3ipHiaC+jO86RwLO/0wjIhs0O wwp6I5NHWlkWg6cKjTx3xpfTvpeA== X-Received: by 2002:a05:600c:630f:b0:480:4ae2:def1 with SMTP id 5b1f17b1804b1-4854b0c7c1cmr116758785e9.13.1773316401185; Thu, 12 Mar 2026 04:53:21 -0700 (PDT) Received: from [192.168.0.39] ([79.133.247.80]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-439fe22529csm7044960f8f.31.2026.03.12.04.53.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Mar 2026 04:53:20 -0700 (PDT) From: Erikas Bitovtas Date: Thu, 12 Mar 2026 13:53:13 +0200 Subject: [PATCH v2 2/3] iio: light: vcnl4000: add support for regulators Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260312-vcnl4000-regulators-v2-2-2bdebbcbb58a@gmail.com> References: <20260312-vcnl4000-regulators-v2-0-2bdebbcbb58a@gmail.com> In-Reply-To: <20260312-vcnl4000-regulators-v2-0-2bdebbcbb58a@gmail.com> To: Jonathan Cameron , David Lechner , =?utf-8?q?Nuno_S=C3=A1?= , Andy Shevchenko , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Peter Meerwald Cc: linux-iio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, phone-devel@vger.kernel.org, Erikas Bitovtas , Raymond Hackley X-Mailer: b4 0.14.3 Add supply, I2C and cathode voltage regulators to the sensor and enable them. This keeps the sensor powered on even after its only supply shared by another device shuts down. This bug was reported outside of LKML, so no Closes: tag can be attached. Signed-off-by: Erikas Bitovtas Reported-by: Raymond Hackley --- drivers/iio/light/vcnl4000.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/iio/light/vcnl4000.c b/drivers/iio/light/vcnl4000.c index 5e03c3d8874b..04bde498aec4 100644 --- a/drivers/iio/light/vcnl4000.c +++ b/drivers/iio/light/vcnl4000.c @@ -18,12 +18,13 @@ */ =20 #include -#include -#include -#include #include -#include +#include +#include #include +#include +#include +#include #include =20 #include @@ -1983,6 +1984,7 @@ static int vcnl4010_probe_trigger(struct iio_dev *ind= io_dev) static int vcnl4000_probe(struct i2c_client *client) { const struct i2c_device_id *id =3D i2c_client_get_device_id(client); + const char * const regulator_names[] =3D { "vdd", "vddio", "vled" }; struct vcnl4000_data *data; struct iio_dev *indio_dev; int ret; @@ -1997,6 +1999,12 @@ static int vcnl4000_probe(struct i2c_client *client) data->id =3D id->driver_data; data->chip_spec =3D &vcnl4000_chip_spec_cfg[data->id]; =20 + ret =3D devm_regulator_bulk_get_enable(&client->dev, + ARRAY_SIZE(regulator_names), + regulator_names); + if (ret < 0) + return ret; + mutex_init(&data->vcnl4000_lock); =20 ret =3D data->chip_spec->init(data); --=20 2.53.0