From nobody Sat Jul 25 22:31:46 2026 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) (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 B9215353A65 for ; Mon, 13 Jul 2026 03:57:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915069; cv=none; b=JBhY+F9rNvqe+xdHdDlmc239te3hUNNRsxsltltRkFcFPUuN/2g/c97iiLJAmlGwzFKO9E8qUkGkQ1hx2NwHesylqQ6KUuqRk/yqy4JLn7/3wxN5w3kjE0ZPlti9F8z3XEFns6UOoZ+O3YExGGrAqpWc87fNgDekn1L36qptJ9k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915069; c=relaxed/simple; bh=WcD/SwZ51u5D7/QlDApFgv7wv7BrDF1ptkN3NyTZTK4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Wu3bRFmRGpwceR78FGBuPt+LpWcpmG9HbnH9DQCAsBd7SIfJENG6EyT1eE+Dhks4kWUGZOLqoX9hYpYqc8EzWh7d2A+FbjBvJgmwkJr3w48W2quh4aao4j6u4c6WlybLuX//R6fwPhlgD2f68gF7We8IC3aZPWGoZnhJH8Rb1Ow= 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=Z98qlz8U; arc=none smtp.client-ip=209.85.214.174 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="Z98qlz8U" Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-2c7cfa17fedso38070925ad.3 for ; Sun, 12 Jul 2026 20:57:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783915068; x=1784519868; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=wxIbOIh/93KyJON4/kBivEyvzBtFQfz4AT0SG4ihafY=; b=Z98qlz8UmWwZApTJ2fQ8I/YU03u/g+VOfY09HQbOluyyQI1fDcNDxj8Z+9P6qscZrq oWSFKJluYqHyWRnPohxdFOsl2BuQzPa+T5tuOWHhCYFlM4BLxxWXJf1cdSs2elDfmQAR 40yjfE75x+67m3YDMZMnbIEd1W9fV4+5cuNrBH7FaWD1nSTdqeLodPNBoxYmZeKu27Jo i0keOAcgICFjtTnQ7XthTWsB4D9skb3QjWDLVLod2IQZrmvBFuTUXoEyAcypKkX1A3a4 0yGjtt5P24skCycCTBKoPtcxPzU3I4LT3P0Ubkj2KHXS6h52rH6T9/HwUiY/FU3J7ym6 FOoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783915068; x=1784519868; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=wxIbOIh/93KyJON4/kBivEyvzBtFQfz4AT0SG4ihafY=; b=PCAI+APPTpt65QiADQz/pjdEz1CMBMR9MgLctNoAtBtggOMR778kjGztW/vY5HoV+e L3SO79KZZw1vxj4gNzFpxpOuT5o3EDbmPycCFGgJH8mO7FbEa/b+f7/Eucz/bB34NxlH dsUf+i6SaB/SFX2ezT3QcymukLph1+qn133C4Z7rclbrx0pvZfBxUH7e1qzhUH7E4VQv QYoWq1MnFVtHjtuHineHaSHqCVnJzfvWCvRabPW+MWgDtJjQSfZt5pDEvBYHhVTHb8P8 rM4+4An0rgsYlgYo2J6vZRA6sowKVfbposWdry7eK89FVixQTZFWkGwfjIPUULEbI5Yy f0xQ== X-Forwarded-Encrypted: i=1; AHgh+RpukEgaa0TFj5zsZPcj66lkLNXhkrlZZp+q3iziaew32I3RbIFr8hMWB61XwlPmeKVqF0IyyqHx13TJSNA=@vger.kernel.org X-Gm-Message-State: AOJu0YwbnLW7EMlfZp3NQp/J24tC8rm+nj+SUKs8IB6GCWHeMuK9ai+f dw3AYLVUvCUX75ts3dT2sCU4SpawT1GdcvbHWPbQnT/ASt0jv8IdHSMh6tud+yU= X-Gm-Gg: AfdE7cnna4PEVVFN1c9Ul8pATbX6Jr0tIBJsExu0TxWnSvWiLAKVzuNjJeC/Mx4jAbO 8DY82SnmX6blljv95fjXf0dctmGQVZ/nhuvMeuSpNDC6klEfRSZlUrH27+h2ozeMNVVGdoDQOCM ipNCbsoIV4nsc+t5QPjD88rAye3mQoSHpSVDXE3SRNLK6FYg8fnGmwMqniuzWCGwHLB7EIynplV w3g1DX45WV1JwIGj7Q+2jfePIrdZS+DXDoktr69G3UzaH0yBNyuL5KU5ejKyLq6Sn9fDYFQGVbz iOemlNQTFw7GTcNegrJDb3W5DxOUXghUej+9XXqdShuwKWRkY1aUg8CXO3yzFPkFvuvexMOwg1/ ZoNKuFXogMPdHFFCgKZLhMDF2EmncoWgtIfHa/Or2bIOUjT/F6jKUC0iCtp826KP0MRYQ6qhx0x +rRXRqXiKeIA+Wd66bNX4m16KRG4QQlv3CRSlngNaiyq4VdJ84MsCo X-Received: by 2002:a05:6a21:6817:b0:3bf:ab02:439e with SMTP id adf61e73a8af0-3c11028952amr8112912637.27.1783915067796; Sun, 12 Jul 2026 20:57:47 -0700 (PDT) Received: from localhost.localdomain ([101.0.63.154]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311747f5975sm60862704eec.4.2026.07.12.20.57.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2026 20:57:47 -0700 (PDT) From: Nikhil Gautam To: Jonathan Cameron Cc: David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Stefan Windfeldt-Prytz , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Nikhil Gautam Subject: [PATCH v2 1/4] iio: light: opt4001: Fix reversed GENMASK() arguments in fault count mask Date: Mon, 13 Jul 2026 09:27:33 +0530 Message-Id: <20260713035736.11346-2-nikhilgtr@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260713035736.11346-1-nikhilgtr@gmail.com> References: <20260713035736.11346-1-nikhilgtr@gmail.com> 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 Content-Type: text/plain; charset="utf-8" GENMASK(h, l) requires h >=3D l, but OPT4001_CTRL_FAULT_COUNT is defined as GENMASK(0, 1). The define is currently unused so there is no functional impact, but fix it before anyone builds on it, and add the _MASK suffix for consistency with the neighbouring definitions. Fixes: 9a9608418292 ("iio: light: Add support for TI OPT4001 light sensor") Signed-off-by: Nikhil Gautam --- drivers/iio/light/opt4001.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/light/opt4001.c b/drivers/iio/light/opt4001.c index ba4eb82d9bc2..0a2d2273355f 100644 --- a/drivers/iio/light/opt4001.c +++ b/drivers/iio/light/opt4001.c @@ -39,7 +39,7 @@ #define OPT4001_CTRL_OPER_MODE_MASK GENMASK(5, 4) #define OPT4001_CTRL_LATCH_MASK GENMASK(3, 3) #define OPT4001_CTRL_INT_POL_MASK GENMASK(2, 2) -#define OPT4001_CTRL_FAULT_COUNT GENMASK(0, 1) +#define OPT4001_CTRL_FAULT_COUNT_MASK GENMASK(1, 0) =20 /* OPT4001 constants */ #define OPT4001_DEVICE_ID_VAL 0x121 --=20 2.39.5 From nobody Sat Jul 25 22:31:46 2026 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 25C20377019 for ; Mon, 13 Jul 2026 03:57:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915073; cv=none; b=IILo1+iRILPcyD6BvKCzCmNhfFOPauLupI0OWt32DfyRZ8rnRbpvs4oYeeoy0Uyd/2Z/9niDXqMkreOuhzU5nIwt0JVtG4IZNQMb3SUm1SEKC/0xwAAMHWcVmQReMmKH4LK4anH89PqZwn7mTIpc4/AU+TNVPrM6xom+abQVnrU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915073; c=relaxed/simple; bh=z+U8oayBtbyDjiqzkSugPHEzyalDbZXOfve5HtCvp4s=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=XATimFNM0tHnmQMMN08G1+5r5s+Rg5o5yWqIzTr+PUxYuPh6X5lzZSyN24K8wmuu1lv8abTs1jGsHPM1PB1P+fHXweKOodDOvL7Vwhx4bK6XBGuH1tQZQMuLxIlShD8462mhfjJGo/rb1eoZDiaVJD8Y5MCaC4GY54UIxJ4HW9A= 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=YxBQltby; arc=none smtp.client-ip=209.85.214.182 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="YxBQltby" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-2caed617615so28979625ad.3 for ; Sun, 12 Jul 2026 20:57:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783915071; x=1784519871; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=vxnQGcuHLKcf9MzGH2TOhY5/hCrMKAUAuuzoIzFw4Gs=; b=YxBQltbyyfo8kSN2MC8465WvRj9Vn25AXVcXoF+lG1WFxYlGzI31e83YUqWkSdWLHM MIXLlOcSMvlk7VDaHXF2E16KMGug2tCrVmlN55wnU1Y2jZdv13NHZrLwNQGnyGSDxu7k cmR7+1YIKOmIjZtz/ptkYEWocTv2MYFur+tMhQ6ZHC1KTIU54MMceZekGiERDRxiW4hl FUZWtPsc9kMKNb2n8PV2GE9d4zAjNFzFJ8MLOly7Mbp3y6/smWA2U55XPTUVwhXc33Zl FCvb9ilsH7+zbei5bunYKZxrssxTNoOoiPEhGE/3rBUEBBfRRAdKlWHOKTFwygl89i+6 pMNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783915071; x=1784519871; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=vxnQGcuHLKcf9MzGH2TOhY5/hCrMKAUAuuzoIzFw4Gs=; b=ickyG7X05Ex6qgh+0iLWtDbJZFIGK9iqzThOgZS7kiYnUYSOzkWv/1HRU9SXSDIOmK /KyKp9lvl7LnuqmIcqA2beHsQ0EjZAZ0+3NMSPIXPBH+BZt8LgSu9MceFqckeR+dDLpP 5LvmUSlAEMH/iiVKeTPZsp9bb0pkrAbknRF8MgWlFDH8AkJurX/V4kaP4YSNAEiOH1xX tn68C//HiNm3XNjZoiNPtskv8lZYuHdWD439nT73bIjsShFEkE2X6Q1VQKbeK99Ja2ds qR8nvmo1gu8PxPfuJfrMY5IG2pSxT8n3ABftaJUIbql005nypFA4BwxriyJf4t+WIsua PMiw== X-Forwarded-Encrypted: i=1; AHgh+RoDtpuFF/N8zj+FhcgbN98dK98M2h8zih1GUajAlVgNYdD28/lDDy4IcvSWhFvGHeikx+9SdKZOdRXAWkA=@vger.kernel.org X-Gm-Message-State: AOJu0Ywc6p92bz3WiyBjxIfXeCheljS7wuNA2jOPomvy3d/4pb4OZA3x dDDrztKbnlapj6OpoLNAsOHnvrkMnAZlR33DOoTrvLOxYdd5VAlg2hPZYUMwqJI= X-Gm-Gg: AfdE7cmMpeLD7tijbhHlQuSK566neHS267CmM868Em6OLHKkN1l8FbmudIEpDKNwHS+ BK1LmU0T8xFU35dBX0dsoCs82YrCt0ip4LcJxq5uNpSrJHycPsu6OwU7MtyAWki3+Y3/dR+qk6n /KDbiYbNcm9iM+SVeUUS79t3ctTKgI2p8oneQ5K/GiD+qPn24rGDbyeQQPpRI8K28swHl31nmov No6kyZFnB0k5qp8ivCPNhMC1bThvuxJXkRSwcuT3Qe0+xF9Wchk59OswtNmDiUnOrypHtgZNBpi ORVBs043bAfkK1XvBcMRyo2SxEt2UcuruNkJvX6fc7on0ZnFpGPiWfKHjMVqxHggHCg4lCmJCbl 4XVXfYXjAOEI8vwEIZvRhYf5Jw6xeClGxaabJslwW+1g1uD9SFwLkgRvZyz8NGlsR8giaSb/utE RI/No420NrP2492LL73XO83IUBLvbY9IRE4ci5he1bOFounOt/CC1h X-Received: by 2002:a05:6a21:386:b0:3c0:9c19:659f with SMTP id adf61e73a8af0-3c110b7b9d2mr8245371637.71.1783915071565; Sun, 12 Jul 2026 20:57:51 -0700 (PDT) Received: from localhost.localdomain ([101.0.63.154]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311747f5975sm60862704eec.4.2026.07.12.20.57.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2026 20:57:51 -0700 (PDT) From: Nikhil Gautam To: Jonathan Cameron Cc: David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Stefan Windfeldt-Prytz , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Nikhil Gautam Subject: [PATCH v2 2/4] iio: light: opt4001: Reject integration times with a non-zero seconds part Date: Mon, 13 Jul 2026 09:27:34 +0530 Message-Id: <20260713035736.11346-3-nikhilgtr@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260713035736.11346-1-nikhilgtr@gmail.com> References: <20260713035736.11346-1-nikhilgtr@gmail.com> 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 Content-Type: text/plain; charset="utf-8" opt4001_write_raw() only looks at val2 when setting the integration time, so a write such as 1.000600 is silently accepted as 600 us. Return -EINVAL if val is non-zero. Fixes: 9a9608418292 ("iio: light: Add support for TI OPT4001 light sensor") Signed-off-by: Nikhil Gautam --- drivers/iio/light/opt4001.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/iio/light/opt4001.c b/drivers/iio/light/opt4001.c index 0a2d2273355f..9ff99c19b6ae 100644 --- a/drivers/iio/light/opt4001.c +++ b/drivers/iio/light/opt4001.c @@ -287,6 +287,9 @@ static int opt4001_write_raw(struct iio_dev *indio_dev, =20 switch (mask) { case IIO_CHAN_INFO_INT_TIME: + if (val) + return -EINVAL; + int_time =3D opt4001_als_time_to_index(val2); if (int_time < 0) return int_time; --=20 2.39.5 From nobody Sat Jul 25 22:31:46 2026 Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) (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 E269E33D4E1 for ; Mon, 13 Jul 2026 03:57:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915077; cv=none; b=nywJk2DT2V1439anjACCEC4chQ1q3agF2nuEWOrdXf1u3Jn5N+Yauezi3ULS20ewogF2EFlfjid+/pxlx2hUii3nk4v4EyxqVeG22Li1hsS3cc0OJaiPaSOnSylp+gWLX709KYBMENizaR9m9UoS6Yx0324u9zLc2rdkJn17oBI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915077; c=relaxed/simple; bh=FttQ8RmdF7jMEA9kPV1TdKHVweC3ujH2gsNMi5NimDc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=fpOs9Q0fJ7dNeewgBeueanmrs7OLAFoGOrTTkFB0QyBzzXpNKKVuOgKYmqEGZEmxKkT/r0KR0QrYiM+Jk2q8wfqxOktt8BdlrhlWlkKzUo6teIRQDHo3q+/WYxqh2JBvX11tRl3TOpqBeyC7T02wxKLX6UuUFppVFO7OFBfhPeM= 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=VzSJkx/9; arc=none smtp.client-ip=209.85.215.177 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="VzSJkx/9" Received: by mail-pg1-f177.google.com with SMTP id 41be03b00d2f7-c966b9ee9cbso1350951a12.1 for ; Sun, 12 Jul 2026 20:57:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783915075; x=1784519875; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=9u3/eEAOJr6IzOF2yv7lerO2luzOs8+kGo7tSPCV4fA=; b=VzSJkx/9iHOnxZelQlalNFhY0zHE77wJniaHHMrfEG+c4JKXD4l5mbHjGmO6AYId6s 1zMoXVqxwDCCdURQ82FQDAaikL0Oasi3tTTZcoWhYhsguYqK0It7jsXlJFuV2VbH1Xh8 g6D4+R9S6jRsLQvmSt4r+X11dghjvTy6+Fqzhqwq7z6hvVnayWRdp8t+HRpnKM5pqy8Q YsBPwn1nyGcAVVzLlYt4xKBrm99TpwyNOAgJsEB6ED+cpuFz3M0boU4KwCovv36PNPsU RpKVlJ0GoETDqUzqVQeWQ4raYfkYncoSFQ4B+HicF4aGoh2Jqse9jrMv9cSNIlw9aAVz SjTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783915075; x=1784519875; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=9u3/eEAOJr6IzOF2yv7lerO2luzOs8+kGo7tSPCV4fA=; b=ma4xLVl1dDpKTixmpTSwBbUICko236hmcPZFb2l+AQUHgkYbKu3QOPiF3rSF8S0c/k 0W2gxUufSPv9+yhJErIqePLmhHRCTr85XT5Yb6aE0cyhVFqpY0e0FSvxY4j0JjfzYBnn 0UkGMzz8xbTKp3Sf6Hf9IKYfe38UiltaBsEs/7/BqIdwlIgelSj3BA4d36tAjs+uSCFj MMED1wC0FcVlKkTCEjv8F1GvwM82LygtUQzGCDFEfknwqktI0JSYEAP2NEReVA4naOjT CRvL8eIQKQFMnlf0hsAilqSI85aaWqKqUbCXj3YUh8dVOL8ItEFgkJ65g3GrnAHe6mw+ S+rQ== X-Forwarded-Encrypted: i=1; AHgh+Ronc/C0XZyJKqFUc5YpRn4OVoCXE3l9Br3WkS8WDzCDIUp5yArHPcH7OQ40W0zbgt6Cgea/v1VSIuQy4KY=@vger.kernel.org X-Gm-Message-State: AOJu0YzD/EpLqDRHIALRE13TBPzz+Bw14rY8sBGMReny9kNxFcjewYM8 pQOzcHb7hl3XXqP9imC8G1Cbjs1WK0buLhHCfSUJd4hZXsumviK6X1E= X-Gm-Gg: AfdE7cl1phTYtER3lT99QM1vztMwOAc+FD5WDiI/bWP7KfUQ1WiJU02wZWa4T78E2pF GJ6CTuCCyUmCwgbu6+ht5oLpVsk9DXCUhsf+hjWtRJ/qvbB3gyW7weV1Y++IzI0KeGYEmNSStsM eyfSM0FEacoTVHJb6tIsR5uNYckVd2wXyPTVIHyfNGhcq/0smNilf4wj742YWQEvYdm+jkLXJJT cHK0MfTGwMRhqRmLLJ4BBy6ZK3waibH/TcF6LIuIhoIMOYcvoPuDkFVD+ZfAWiD1GLm+yK4mtbn QddY17F+CS6oP+m02etT8SHb+WN00mClENSWx7eTTFi9VxESQESylSc7fbtMGuGzvCE1SBRoh8c +PrLXBaBoklgJD/BqPAsIwKtjONUIUhRn21c2H863NxqTaatUJ4/7K08wMdNNX251+Ni7tR2IbM xl7tReox8Vz83iT7aKxoLyYnttvusuwFRNcP8Pnrh573O7LEm/IZ66FAkjf4WKqvM= X-Received: by 2002:a05:6a20:9f8c:b0:3c0:9c19:659c with SMTP id adf61e73a8af0-3c110b7ba39mr7967809637.68.1783915075371; Sun, 12 Jul 2026 20:57:55 -0700 (PDT) Received: from localhost.localdomain ([101.0.63.154]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311747f5975sm60862704eec.4.2026.07.12.20.57.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2026 20:57:54 -0700 (PDT) From: Nikhil Gautam To: Jonathan Cameron Cc: David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Stefan Windfeldt-Prytz , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Nikhil Gautam Subject: [PATCH v2 3/4] iio: light: opt4001: Fix incompatible pointer type passed to div_u64_rem() Date: Mon, 13 Jul 2026 09:27:35 +0530 Message-Id: <20260713035736.11346-4-nikhilgtr@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260713035736.11346-1-nikhilgtr@gmail.com> References: <20260713035736.11346-1-nikhilgtr@gmail.com> 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 Content-Type: text/plain; charset="utf-8" div_u64_rem() takes a u32 * for the remainder but is passed val2, which is an int *. There is no functional impact as int and u32 have the same size and representation on all supported architectures and the remainder is always smaller than the divisor, so it fits in the positive range of int. Fix the type mismatch by using a local u32 for the remainder and assigning the result to *val2. Fixes: 9a9608418292 ("iio: light: Add support for TI OPT4001 light sensor") Signed-off-by: Nikhil Gautam --- drivers/iio/light/opt4001.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/iio/light/opt4001.c b/drivers/iio/light/opt4001.c index 9ff99c19b6ae..9f877c5798b9 100644 --- a/drivers/iio/light/opt4001.c +++ b/drivers/iio/light/opt4001.c @@ -173,6 +173,7 @@ static int opt4001_read_lux_value(struct iio_dev *indio= _dev, u8 crc; u8 calc_crc; u64 lux_raw; + u32 rem; int ret; =20 ret =3D regmap_read(chip->regmap, OPT4001_LIGHT1_MSB, &light1); @@ -199,8 +200,8 @@ static int opt4001_read_lux_value(struct iio_dev *indio= _dev, =20 lux_raw =3D lux_raw << exp; lux_raw =3D lux_raw * chip->chip_info->mul; - *val =3D div_u64_rem(lux_raw, chip->chip_info->div, val2); - *val2 =3D *val2 * 100; + *val =3D div_u64_rem(lux_raw, chip->chip_info->div, &rem); + *val2 =3D rem * 100; =20 return IIO_VAL_INT_PLUS_NANO; } --=20 2.39.5 From nobody Sat Jul 25 22:31:46 2026 Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) (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 DF16837EFF1 for ; Mon, 13 Jul 2026 03:57:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915081; cv=none; b=QbCIn4qdi4bSCdPTzp37ko7rkIvM3rC2PsGBzbJBjK+AKktYun4ftsenYQLBDOLrdWClT33blAdLnnnkqFRhkRr7F8KImjY7Ap9bHLfuhysB0mNqndQ0yWR53X96MG0akUlziEmxJQdWSBVMg7tmhU3NzAH7IbQZMa8ERuI7GXw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783915081; c=relaxed/simple; bh=3AV+ps6EwvWuPnkmEuMQHEqXd01rXxUa8mWVFvh7hyE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=W/d9Uc5gJlIYWHOKvbLEVX5Ms3C0Mbpmjsz9x5U1Nbv2YSZ0yqTA5q/6hFlrZXtyjINh2TZfwde6O6aF1giQEB3Lo/9dA+aU3PqWyZ821QosrGZAu1BX+IbjmGK7dmgeKsucjJom8IsemWiJ/lEZLB23mQ9Np/8agdDLc4aJNAc= 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=AeQSIt8L; arc=none smtp.client-ip=209.85.216.42 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="AeQSIt8L" Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-38dfe910e9dso328692a91.3 for ; Sun, 12 Jul 2026 20:57:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783915079; x=1784519879; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=CEhF1/knVdM88rzwDUG3Vwh5GZfToHHXGSRevQ99B4E=; b=AeQSIt8LNm54Loac9AiIWOgDjKnYzud/QK62CiXRhDDGjEKbNK0FqMO3iX1v49738Z X/a8d11+7HCERHRxgUI7EL+aMpeTORPPCMYKYjWZjhwLGfkmRXstGaCn+1JbvFjIWqGC IZBy43x/05odic4Rf4s4fVo1msrhKEKpKnqW0XWzPA8drxB9f5ZboBLmqPW6qjSl4SII r4Y8t+ZZEReMTAsxfrJo6J2bwt+XCbsUvKBwTXTHBKRS1380iOx7M4Po7izhLBwOs6Ua JRL7pLvKTr5IagWzkbqW0nT3clojS++pJTSOBDVWnGxzJwK2IEfJC0sLbkBZ/taX1fgc u6Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783915079; x=1784519879; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=CEhF1/knVdM88rzwDUG3Vwh5GZfToHHXGSRevQ99B4E=; b=tPulWamDfbRy2i0G7KFk6cHcL5BAnhVIvTMFCl9rDG11Nhh4iP0TZsXi3kcn3dQPEz ABRJJ4Etc2eKPOw6+gYLAyroS1HUV+ZIN0ujVs1BxjMHBsTEM+VypbhHXLfcf8+cp4wl pUXkUTY0EEyVSFOlbFeewCR5IDfTU8Pfe6OjY0VAIFrxylm8hKM4M9rAacSkEA5ytyKL YRRIcWK7IPfBDyIIXW/G1gdx8Gvx3uqPeC63o3LyD/rCPUWIiOaK1NDPZ7bkpDRMruAF C0+USa01Ra46QT7h+C3u9wYFlgGtD2OqA9pVLqTbVSAuF8Al090JJmjqmpfVS+FGdLQK 5scA== X-Forwarded-Encrypted: i=1; AHgh+Rq52qNuRy6gqSqa7RtbxmIecF2jJGYahjaZr9xJzvpN07m19/vO95vWbdR9aFKEZlI+3FjpjF+SCw2WmZQ=@vger.kernel.org X-Gm-Message-State: AOJu0YzBphPz0B9vULd/xXjrxDEKinCrw5KIO93eizM+I019sFWob12f rpJEdqMdUijBxHKvPPGjz3WHhvmX/OO7RZ42MrZOUKOjOX3ki4eroiw= X-Gm-Gg: AfdE7cm+Qrnzb+iYg/TIhppBwvpfnoKZo14nEGnl0/FU8ZOg6lHVw9Im2pEfFxRtN9a p+SrO4oUL1EcuOnRYYBk3Yu/lGhIeSPt59ZNvM0x9vDCQeG2Suhg3S+luA8jGPpXQgfYvBcTPPf MT+ko/+h5TNRwcjlIp8LuaRjcVIQqeaONs5cuNkFMs01wtYwAtOTBSvDf/9/UiCkY5iVE+oA4tI BI7w7C25rRDGxNa/OYJbnFQoNQAwEThoxwuO7Sb3hRB45aVdsLV4zUQohUXMqBZqOSLESnnstW3 jsW4ZHKtwl3TqFh4eNXk7LObvtzNr3uB1bEOnQOVCLaTPi+K3od0zpdiMsaMx2itamDeRVo0bgz pStSR10nzuusb0oZAdFt8/KQgesrAcw8q9K4H859jlrm+81MU7qBJx+X9Dx6AoRgtMVwkK85w+D zjH5SY5jFwjxpUJS7SEtRRQOMo6QuOH9rAgnoxhr+IhhZYzRyd4zQch6WsfMAKmP0= X-Received: by 2002:a17:90b:3bd0:b0:37f:9cdf:f0ac with SMTP id 98e67ed59e1d1-38dc77f1987mr7274394a91.27.1783915079198; Sun, 12 Jul 2026 20:57:59 -0700 (PDT) Received: from localhost.localdomain ([101.0.63.154]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311747f5975sm60862704eec.4.2026.07.12.20.57.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2026 20:57:58 -0700 (PDT) From: Nikhil Gautam To: Jonathan Cameron Cc: David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Stefan Windfeldt-Prytz , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, Nikhil Gautam Subject: [PATCH v2 4/4] iio: light: opt4001: Fix power down clearing bits of the wrong register Date: Mon, 13 Jul 2026 09:27:36 +0530 Message-Id: <20260713035736.11346-5-nikhilgtr@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260713035736.11346-1-nikhilgtr@gmail.com> References: <20260713035736.11346-1-nikhilgtr@gmail.com> 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 Content-Type: text/plain; charset="utf-8" opt4001_power_down() intends to clear the operating mode bits in the CTRL register but reads OPT4001_DEVICE_ID instead of OPT4001_CTRL, so the value written back to CTRL contains device ID bits rather than the current configuration. Fix and simplify this by using regmap_clear_bits() on the CTRL register directly in the devm action, and drop opt4001_power_down() which has no other users. Suggested-by: Jonathan Cameron Fixes: 9a9608418292 ("iio: light: Add support for TI OPT4001 light sensor") Signed-off-by: Nikhil Gautam --- drivers/iio/light/opt4001.c | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/drivers/iio/light/opt4001.c b/drivers/iio/light/opt4001.c index 9f877c5798b9..b7e9d361c2e3 100644 --- a/drivers/iio/light/opt4001.c +++ b/drivers/iio/light/opt4001.c @@ -223,33 +223,14 @@ static int opt4001_set_conf(struct opt4001_chip *chip) return ret; } =20 -static int opt4001_power_down(struct opt4001_chip *chip) -{ - struct device *dev =3D &chip->client->dev; - int ret; - unsigned int reg; - - ret =3D regmap_read(chip->regmap, OPT4001_DEVICE_ID, ®); - if (ret) { - dev_err(dev, "Failed to read configuration\n"); - return ret; - } - - /* MODE_OFF is 0x0 so just set bits to 0 */ - reg &=3D ~OPT4001_CTRL_OPER_MODE_MASK; - - ret =3D regmap_write(chip->regmap, OPT4001_CTRL, reg); - if (ret) - dev_err(dev, "Failed to set configuration to power down\n"); - - return ret; -} - static void opt4001_chip_off_action(void *data) { struct opt4001_chip *chip =3D data; + int ret; =20 - opt4001_power_down(chip); + ret =3D regmap_clear_bits(chip->regmap, OPT4001_CTRL, OPT4001_CTRL_OPER_M= ODE_MASK); + if (ret) + dev_err(&chip->client->dev, "Failed to power down\n"); } =20 static const struct iio_chan_spec opt4001_channels[] =3D { --=20 2.39.5