From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 E362A2D5C74; Tue, 17 Feb 2026 10:23:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323808; cv=none; b=Y/fj4qu6U7FSK/15eTckmhJ/K5ooGyg3amG7SwzRin8gqeddq3jZQRf1MEgidP1JzYGfE6KDiSpB9M5MaE60WasXEHxLtuhT4DAaHIl5EvN0ciQS2vTmWWm0u01IdF3fPomRX+TJ74V+I5pOi9RSVgP/1Wr2dfGECb6+ZaEryBw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323808; c=relaxed/simple; bh=rX1P69sdtaumgGfAdEzd/kpdfyrC/RaYgdKXlWIuJ8U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MhdFH8BxyB11GTNnC0XNHpAxhl3TFIrRVemIzff0MwhUhggAxIjB0PRPmPZ8n6kiAfXhAxCwSrGiIWxqfyfhEuVnGZOVAesQADueruviqxcgw/0IIIycS4pJbAn+ggv1/Aa0+fHBkEwc6+9e2ZPdNujcph5P1Sn7HwIrvSSjDQo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=MbGyUjJa; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="MbGyUjJa" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323807; x=1802859807; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=rX1P69sdtaumgGfAdEzd/kpdfyrC/RaYgdKXlWIuJ8U=; b=MbGyUjJadeCdFtGJNpmLVAnCmG6WWnfQga5K+h44x6vuKumkkXgH9k4j au9UsyNWvg27ekN1JiFLzrVXxE5sxnfgSQ3f7rvCm0YGNY8S0KNwgEIEv QLYA3FWvRBALT4WCb8f7E4Q8/c4lDflP07F+Il2NcDetNjB89IkRl1cJu 2ii2auockwpnW01t7Gt0SRrHTkL7ss9L0+rnIUwZDArAh4veP1L3fvLXC xDjJKfUj8+caOVnKbMUCtAg2gXZe4j/hpMyoy593EtxZz9p+ws1m/93/F Cr1FIkuWSf+pSBfhJdeI6QmIjGuZThn5izNd09T7IUj6K3OlVE+oWN8dr Q==; X-CSE-ConnectionGUID: HAQMYdgVR/WroJsWNeJKeg== X-CSE-MsgGUID: kuZZogovQy6kV/r2SgfimA== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099164" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099164" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:26 -0800 X-CSE-ConnectionGUID: jF7FbONaQhmTMFtRJATJwQ== X-CSE-MsgGUID: yYUJ/SG2ScyDil2WqQioqg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851651" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:24 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 54B0899; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 1/7] iio: light: gp2ap020a00f: Use correct types for 16-bit LE data Date: Tue, 17 Feb 2026 11:15:11 +0100 Message-ID: <20260217102318.1354103-2-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" Instead of using byte arrays and then explicit castings, change the types of byte arrays to be __le16 and update the endianness conversions accordingly. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index fae7605f2f5c..6f75c845f258 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -462,7 +462,7 @@ static int gp2ap020a00f_write_event_threshold(struct gp= 2ap020a00f_data *data, =20 return regmap_bulk_write(data->regmap, GP2AP020A00F_THRESH_REG(th_val_id), - (u8 *)&thresh_buf, 2); + &thresh_buf, sizeof(thresh_buf)); } =20 static int gp2ap020a00f_alter_opmode(struct gp2ap020a00f_data *data, @@ -698,18 +698,18 @@ static int wait_conversion_complete_irq(struct gp2ap0= 20a00f_data *data) static int gp2ap020a00f_read_output(struct gp2ap020a00f_data *data, unsigned int output_reg, int *val) { - u8 reg_buf[2]; + __le16 reg_buf; int err; =20 err =3D wait_conversion_complete_irq(data); if (err < 0) dev_dbg(&data->client->dev, "data ready timeout\n"); =20 - err =3D regmap_bulk_read(data->regmap, output_reg, reg_buf, 2); + err =3D regmap_bulk_read(data->regmap, output_reg, ®_buf, sizeof(reg_b= uf)); if (err < 0) return err; =20 - *val =3D le16_to_cpup((__le16 *)reg_buf); + *val =3D le16_to_cpu(reg_buf); =20 return err; } @@ -867,8 +867,9 @@ static irqreturn_t gp2ap020a00f_thresh_event_handler(in= t irq, void *data) { struct iio_dev *indio_dev =3D data; struct gp2ap020a00f_data *priv =3D iio_priv(indio_dev); - u8 op_reg_flags, d0_reg_buf[2]; unsigned int output_val, op_reg_val; + __le16 d0_reg_buf; + u8 op_reg_flags; int thresh_val_id, ret; =20 /* Read interrupt flags */ @@ -896,11 +897,11 @@ static irqreturn_t gp2ap020a00f_thresh_event_handler(= int irq, void *data) * transition is required. */ ret =3D regmap_bulk_read(priv->regmap, GP2AP020A00F_D0_L_REG, - d0_reg_buf, 2); + &d0_reg_buf, sizeof(d0_reg_buf)); if (ret < 0) goto done; =20 - output_val =3D le16_to_cpup((__le16 *)d0_reg_buf); + output_val =3D le16_to_cpu(d0_reg_buf); =20 if (gp2ap020a00f_adjust_lux_mode(priv, output_val)) goto done; @@ -967,17 +968,15 @@ static irqreturn_t gp2ap020a00f_trigger_handler(int i= rq, void *data) int i, out_val, ret; =20 iio_for_each_active_channel(indio_dev, i) { - ret =3D regmap_bulk_read(priv->regmap, - GP2AP020A00F_DATA_REG(i), - &priv->buffer[d_size], 2); + ret =3D regmap_bulk_read(priv->regmap, GP2AP020A00F_DATA_REG(i), + &priv->buffer[d_size], 2); if (ret < 0) goto done; =20 if (i =3D=3D GP2AP020A00F_SCAN_MODE_LIGHT_CLEAR || i =3D=3D GP2AP020A00F_SCAN_MODE_LIGHT_IR) { - out_val =3D le16_to_cpup((__le16 *)&priv->buffer[d_size]); + out_val =3D get_unaligned_le16(&priv->buffer[d_size]); gp2ap020a00f_output_to_lux(priv, &out_val); - put_unaligned_le32(out_val, &priv->buffer[d_size]); d_size +=3D 4; } else { --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 2C3752E3360; Tue, 17 Feb 2026 10:23:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323809; cv=none; b=h+0VSoqwmkLA7aDuSTt/E16m2QBCK9j0njyQYmKhp3P5mbfiVB6Kmkt7+3/BRBMTYVDY1mSnnXLED0GQMT7UJbx1L85rLLku1LnYHP9nfzE0icjaHMmY93wJWvSRXyLXwsKkwvnuU5eItjNLZzJyQ5gIYv91BnartI5E2Lu5bgc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323809; c=relaxed/simple; bh=U/ogBITXVXdOtdX/tjVKkffvwQl07ULXr24qES0ZlpE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=uRupt6/7N/wDqpb0QUidLdMd31DTXFJD65jonbmh6ahoi+PdxVwS75xuCxdBfkPXjVkECKk2cDiWgTca7KZMk4mMz2N3126bEe/YEYFgvb9CrWS/UU9Jw9TzJxG+75H9wt55EJEuNAqDud8s6iP5sV1MGnUZd4OKny3FDbOWj54= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=mcz9OMNv; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="mcz9OMNv" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323808; x=1802859808; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=U/ogBITXVXdOtdX/tjVKkffvwQl07ULXr24qES0ZlpE=; b=mcz9OMNvp6BHJ786jYzICeohy+hvHrygi5ECpXSrdw0lwXkNhn+y9CdV kQD6nBfpYySeTYjBficD0Zc401mh6jTW1PY0iKLZb9isSM39Pd/2t5NoR /W7s9uP2uhRtrVor/9Dlsi3UZlGS/3H3mnRqL5iFdN3QJNYxfRyJTMFxU WXLz7cRK96CQUBEeAbWB4aI97X75GRp6mULaLTi4r7Xrfyt4Khs3GFH3B RZk2uvzUTIA0xDR0IAGBdCxZX7RgAFCrteaNN4Lqj6TbYN69cuhyJmRG6 QZdNY7VJveYzpRDoWgBpwqdOr49okUK+9YOEePPSPXuRNfnfmCvDaBKUs w==; X-CSE-ConnectionGUID: Nc97z9FRQsmb6VuhX0wmqQ== X-CSE-MsgGUID: fDVYSI/9SJS03nbGeAoW/Q== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099171" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099171" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:26 -0800 X-CSE-ConnectionGUID: kzzAVFqdR++gGUND2HS5vw== X-CSE-MsgGUID: ewfZyTPwSWOoFhfygJuwVQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851650" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:24 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 599B39B; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 2/7] iio: light: gp2ap020a00f: Replace custom implementation of min() Date: Tue, 17 Feb 2026 11:15:12 +0100 Message-ID: <20260217102318.1354103-3-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" Replace custom implementation of min() to save a few lines of code. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index 6f75c845f258..64945690cfaf 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -45,6 +46,7 @@ #include #include #include + #include #include #include @@ -454,9 +456,7 @@ static int gp2ap020a00f_write_event_threshold(struct gp= 2ap020a00f_data *data, */ thresh_reg_val =3D data->thresh_val[th_val_id] / 16; else - thresh_reg_val =3D data->thresh_val[th_val_id] > 16000 ? - 16000 : - data->thresh_val[th_val_id]; + thresh_reg_val =3D min(data->thresh_val[th_val_id], 16000U); =20 thresh_buf =3D cpu_to_le16(thresh_reg_val); =20 --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 6984B3233F4; Tue, 17 Feb 2026 10:23:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323810; cv=none; b=uuJbh20SVnQEIHDSDmnfnBIIrGCB5Abhc7n+22bvcq4+8UnELMS46Kch/uNXR6k4qzQ6TPVeWCdCD4fjisBp0n72iSvGtk0RBQNtm1E3WOaklrA+qlg+p7/xdTOzEXqtTcxP4Vv72qIgCd/s804S73wBPpnO+97U12Se5BEizbk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323810; c=relaxed/simple; bh=z5+gHOsy3k74vfj74pPBY43I/aqOzMIVt4gUtOwP+7I=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=G1r8pJfmJ4SMPQyfE/lnaPsFb6j2Dx5mTdTBzmoB6f8+1KloVthuMOi0jOfSy/cQvpA/X/v8KbyzcvD4wSL8iImY+RgLPHtBADpwgZmO9KybUZJrqt0PuqHnAgDPH5AylPry4HdXbym7SMl3J48ZcwOFxGea9METnThepkLhKiM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=NIHNFnJQ; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="NIHNFnJQ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323809; x=1802859809; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=z5+gHOsy3k74vfj74pPBY43I/aqOzMIVt4gUtOwP+7I=; b=NIHNFnJQ3mMSHulNoTZNa8zr48TvbazGdP8EYac0HE0g1xWIcDcom7qk v6DHHTuzL/Y5YGXlRnY6dipQEifBD+Q6Sn1gJ9voaSqG2CYe1d47R5LbT bjpWnNQ69LH6/nX7vOhTc2UPVLYQEzqZDwli8HH4Psn17GUAWeeXtyNC3 4bkR0GyhHS9BYNt6DefrEabk1LZM4zbDpoCaBqYrLhbUgU4Rj8VzjZaVC APMmfNGu9WY2meRw3vpQf6KmvzdD55I8A5KoztFVwoAN9Yk29Xk5lrI1R RI+9Y1SI7ZMuqEtZh2pfqs/r1xHa7CqPeg8+XkARG39xyyYUWC7ZT2ym3 Q==; X-CSE-ConnectionGUID: kb6POmrhSkiR8HjIpJpSFg== X-CSE-MsgGUID: sUt5CTPrTRKa34x4zZRPxw== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099181" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099181" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:26 -0800 X-CSE-ConnectionGUID: QxKartTkQ0WcWmSkf/UEQQ== X-CSE-MsgGUID: oecdtysoRmWPbOsJJ84R3A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851652" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:24 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 5E40A9D; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 3/7] iio: light: gp2ap020a00f: Return directly from the switch cases Date: Tue, 17 Feb 2026 11:15:13 +0100 Message-ID: <20260217102318.1354103-4-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" Return directly from the switch cases which makes code easier to follow. In some cases convert pieces to the standard pattern which also unifies it with the accepted kernel practices. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 98 +++++++++++++------------------- 1 file changed, 38 insertions(+), 60 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index 64945690cfaf..6c0788720af4 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -494,27 +494,24 @@ static int gp2ap020a00f_alter_opmode(struct gp2ap020a= 00f_data *data, static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_data *data, enum gp2ap020a00f_cmd cmd) { - int err =3D 0; + int err; =20 switch (cmd) { case GP2AP020A00F_CMD_READ_RAW_CLEAR: if (data->cur_opmode !=3D GP2AP020A00F_OPMODE_SHUTDOWN) return -EBUSY; - err =3D gp2ap020a00f_set_operation_mode(data, + return gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_READ_RAW_CLEAR); - break; case GP2AP020A00F_CMD_READ_RAW_IR: if (data->cur_opmode !=3D GP2AP020A00F_OPMODE_SHUTDOWN) return -EBUSY; - err =3D gp2ap020a00f_set_operation_mode(data, + return gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_READ_RAW_IR); - break; case GP2AP020A00F_CMD_READ_RAW_PROXIMITY: if (data->cur_opmode !=3D GP2AP020A00F_OPMODE_SHUTDOWN) return -EBUSY; - err =3D gp2ap020a00f_set_operation_mode(data, + return gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_READ_RAW_PROXIMITY); - break; case GP2AP020A00F_CMD_TRIGGER_CLEAR_EN: if (data->cur_opmode =3D=3D GP2AP020A00F_OPMODE_PROX_DETECT) return -EBUSY; @@ -522,16 +519,17 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_= data *data, err =3D gp2ap020a00f_alter_opmode(data, GP2AP020A00F_OPMODE_ALS, GP2AP020A00F_ADD_MODE); + else + err =3D 0; set_bit(GP2AP020A00F_FLAG_ALS_CLEAR_TRIGGER, &data->flags); - break; + return err; case GP2AP020A00F_CMD_TRIGGER_CLEAR_DIS: clear_bit(GP2AP020A00F_FLAG_ALS_CLEAR_TRIGGER, &data->flags); if (gp2ap020a00f_als_enabled(data)) break; - err =3D gp2ap020a00f_alter_opmode(data, + return gp2ap020a00f_alter_opmode(data, GP2AP020A00F_OPMODE_ALS, GP2AP020A00F_SUBTRACT_MODE); - break; case GP2AP020A00F_CMD_TRIGGER_IR_EN: if (data->cur_opmode =3D=3D GP2AP020A00F_OPMODE_PROX_DETECT) return -EBUSY; @@ -539,16 +537,17 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_= data *data, err =3D gp2ap020a00f_alter_opmode(data, GP2AP020A00F_OPMODE_ALS, GP2AP020A00F_ADD_MODE); + else + err =3D 0; set_bit(GP2AP020A00F_FLAG_ALS_IR_TRIGGER, &data->flags); - break; + return err; case GP2AP020A00F_CMD_TRIGGER_IR_DIS: clear_bit(GP2AP020A00F_FLAG_ALS_IR_TRIGGER, &data->flags); if (gp2ap020a00f_als_enabled(data)) break; - err =3D gp2ap020a00f_alter_opmode(data, + return gp2ap020a00f_alter_opmode(data, GP2AP020A00F_OPMODE_ALS, GP2AP020A00F_SUBTRACT_MODE); - break; case GP2AP020A00F_CMD_TRIGGER_PROX_EN: if (data->cur_opmode =3D=3D GP2AP020A00F_OPMODE_PROX_DETECT) return -EBUSY; @@ -556,13 +555,12 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_= data *data, GP2AP020A00F_OPMODE_PS, GP2AP020A00F_ADD_MODE); set_bit(GP2AP020A00F_FLAG_PROX_TRIGGER, &data->flags); - break; + return err; case GP2AP020A00F_CMD_TRIGGER_PROX_DIS: clear_bit(GP2AP020A00F_FLAG_PROX_TRIGGER, &data->flags); - err =3D gp2ap020a00f_alter_opmode(data, + return gp2ap020a00f_alter_opmode(data, GP2AP020A00F_OPMODE_PS, GP2AP020A00F_SUBTRACT_MODE); - break; case GP2AP020A00F_CMD_ALS_HIGH_EV_EN: if (test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, &data->flags)) return 0; @@ -576,9 +574,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, return err; } set_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, &data->flags); - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_TH, true); - break; case GP2AP020A00F_CMD_ALS_HIGH_EV_DIS: if (!test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, &data->flags)) return 0; @@ -590,9 +587,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, if (err < 0) return err; } - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_TH, false); - break; case GP2AP020A00F_CMD_ALS_LOW_EV_EN: if (test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, &data->flags)) return 0; @@ -606,9 +602,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, return err; } set_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, &data->flags); - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_TL, true); - break; case GP2AP020A00F_CMD_ALS_LOW_EV_DIS: if (!test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, &data->flags)) return 0; @@ -620,9 +615,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, if (err < 0) return err; } - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_TL, false); - break; case GP2AP020A00F_CMD_PROX_HIGH_EV_EN: if (test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, &data->flags)) return 0; @@ -636,9 +630,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, return err; } set_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, &data->flags); - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_PH, true); - break; case GP2AP020A00F_CMD_PROX_HIGH_EV_DIS: if (!test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, &data->flags)) return 0; @@ -647,9 +640,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, GP2AP020A00F_OPMODE_SHUTDOWN); if (err < 0) return err; - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_PH, false); - break; case GP2AP020A00F_CMD_PROX_LOW_EV_EN: if (test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, &data->flags)) return 0; @@ -663,9 +655,8 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_da= ta *data, return err; } set_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, &data->flags); - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_PL, true); - break; case GP2AP020A00F_CMD_PROX_LOW_EV_DIS: if (!test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, &data->flags)) return 0; @@ -674,12 +665,11 @@ static int gp2ap020a00f_exec_cmd(struct gp2ap020a00f_= data *data, GP2AP020A00F_OPMODE_SHUTDOWN); if (err < 0) return err; - err =3D gp2ap020a00f_write_event_threshold(data, + return gp2ap020a00f_write_event_threshold(data, GP2AP020A00F_THRESH_PL, false); - break; + default: + return 0; } - - return err; } =20 static int wait_conversion_complete_irq(struct gp2ap020a00f_data *data) @@ -1007,10 +997,8 @@ static int gp2ap020a00f_get_thresh_reg(const struct i= io_chan_spec *chan, else return GP2AP020A00F_TL_L_REG; default: - break; + return -EINVAL; } - - return -EINVAL; } =20 static int gp2ap020a00f_write_event_val(struct iio_dev *indio_dev, @@ -1184,33 +1172,23 @@ static int gp2ap020a00f_read_event_config(struct ii= o_dev *indio_dev, enum iio_event_direction dir) { struct gp2ap020a00f_data *data =3D iio_priv(indio_dev); - int event_en =3D 0; =20 guard(mutex)(&data->lock); =20 switch (chan->type) { case IIO_PROXIMITY: if (dir =3D=3D IIO_EV_DIR_RISING) - event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, - &data->flags); + return test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, &data->flags); else - event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, - &data->flags); - break; + return test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, &data->flags); case IIO_LIGHT: if (dir =3D=3D IIO_EV_DIR_RISING) - event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, - &data->flags); + return test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, &data->flags); else - event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, - &data->flags); - break; + return test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, &data->flags); default: - event_en =3D -EINVAL; - break; + return -EINVAL; } - - return event_en; } =20 static int gp2ap020a00f_read_channel(struct gp2ap020a00f_data *data, @@ -1368,7 +1346,7 @@ static const struct iio_info gp2ap020a00f_info =3D { static int gp2ap020a00f_buffer_postenable(struct iio_dev *indio_dev) { struct gp2ap020a00f_data *data =3D iio_priv(indio_dev); - int i, err =3D 0; + int i, err; =20 guard(mutex)(&data->lock); =20 @@ -1402,15 +1380,15 @@ static int gp2ap020a00f_buffer_postenable(struct ii= o_dev *indio_dev) =20 data->buffer =3D kmalloc(indio_dev->scan_bytes, GFP_KERNEL); if (!data->buffer) - err =3D -ENOMEM; + return -ENOMEM; =20 - return err; + return 0; } =20 static int gp2ap020a00f_buffer_predisable(struct iio_dev *indio_dev) { struct gp2ap020a00f_data *data =3D iio_priv(indio_dev); - int i, err =3D 0; + int i, err; =20 guard(mutex)(&data->lock); =20 @@ -1429,12 +1407,12 @@ static int gp2ap020a00f_buffer_predisable(struct ii= o_dev *indio_dev) GP2AP020A00F_CMD_TRIGGER_PROX_DIS); break; } + if (err) + return err; } =20 - if (err =3D=3D 0) - kfree(data->buffer); - - return err; + kfree(data->buffer); + return 0; } =20 static const struct iio_buffer_setup_ops gp2ap020a00f_buffer_setup_ops =3D= { --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 7083630CDBD; Tue, 17 Feb 2026 10:23:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323809; cv=none; b=TAG4BUGwgdoRKGurHanFWHGE3+PxocoTzRStx2DkA3W/xY2bmwkE8cPSVrETC4j6GKvVa1qd4Mi8qOmZKm05dSvbwqSLUM1+2gAdQISpzmXpTZUk1BzZeU1qSHm2CJ+iIUbOy1M74LxzpCDAmJpM4FRrnAOxcgF++V3wi/CQHdw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323809; c=relaxed/simple; bh=eGUs7x+4HZuePC29IWZg62VTGnfMD8N37njny/g88lE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jPGjzG8SW5gEKbrpoBgDc5Rnb9lkFYBqz7fhxjBh12BsS+sDFs7EU51S2jQP7vsB9hy9BQlW2G+vEK8uCnP/Xxcs3w38cR3z5VdqRqlVmdq80VnQFwKaDzp0Bttfr7dSgwtjXjorZPqwsdPHWwntRgse/XvJ2oIAWc5UUoHViZw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=kiSIvQA1; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="kiSIvQA1" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323808; x=1802859808; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=eGUs7x+4HZuePC29IWZg62VTGnfMD8N37njny/g88lE=; b=kiSIvQA1c1vRm5VlpT+f95nEDlEoyIg3euxE9YI2WS9U6d0CFcYxXTas 0WgeFVPBOPcQCxktCYio0KXLag6U2GgzXpzjsXYEZ4pPXUi0zaASjl9fj ZaXjTPbnHB68UiFZK1V+CB7+ZgNjjuPoSl+VwEEzoa7Kt8tzH/lJaBfs4 jNrD/60N1T0jpu31gHeJFe9eoepCnneWyJclGDjQk8nHFnREGcqCgI7Ph TMi66Goh8FH0v7n7dd6OyV+Okn09lvrFHrXCNaVzE70dWQ2c5UyHdCGco Zaf7OkvyPgsIrQVMXEXm2XvVYhcChW/or9iH0L7FIeBi+5PZ5K/mm3ulL w==; X-CSE-ConnectionGUID: Itw+QNC8SHC9IL5swhh6VQ== X-CSE-MsgGUID: 8EyFO1pzTn+g/RsFOsmXJw== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099177" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099177" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:26 -0800 X-CSE-ConnectionGUID: SxfS74WyT8ubVHUXr7SVEQ== X-CSE-MsgGUID: AOUNGkuqTDS3Hi8Ww8GK+w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851649" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:24 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 62AB89E; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 4/7] iio: light: gp2ap020a00f: Use temporary variable for struct device Date: Tue, 17 Feb 2026 11:15:14 +0100 Message-ID: <20260217102318.1354103-5-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" Use temporary variable for struct device to make code neater. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 34 +++++++++++++++----------------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index 6c0788720af4..af5eb77cb8c6 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -1194,6 +1194,7 @@ static int gp2ap020a00f_read_event_config(struct iio_= dev *indio_dev, static int gp2ap020a00f_read_channel(struct gp2ap020a00f_data *data, struct iio_chan_spec const *chan, int *val) { + struct device *dev =3D &data->client->dev; enum gp2ap020a00f_cmd cmd; int err; =20 @@ -1213,27 +1214,23 @@ static int gp2ap020a00f_read_channel(struct gp2ap02= 0a00f_data *data, =20 err =3D gp2ap020a00f_exec_cmd(data, cmd); if (err < 0) { - dev_err(&data->client->dev, - "gp2ap020a00f_exec_cmd failed\n"); - goto error_ret; + dev_err(dev, "gp2ap020a00f_exec_cmd failed\n"); + return err; } =20 err =3D gp2ap020a00f_read_output(data, chan->address, val); if (err < 0) - dev_err(&data->client->dev, - "gp2ap020a00f_read_output failed\n"); + dev_err(dev, "gp2ap020a00f_read_output failed\n"); =20 err =3D gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_SHUTDOWN); if (err < 0) - dev_err(&data->client->dev, - "Failed to shut down the device.\n"); + dev_err(dev, "Failed to shut down the device.\n"); =20 if (cmd =3D=3D GP2AP020A00F_CMD_READ_RAW_CLEAR || cmd =3D=3D GP2AP020A00F_CMD_READ_RAW_IR) gp2ap020a00f_output_to_lux(data, val); =20 -error_ret: return err; } =20 @@ -1423,18 +1420,19 @@ static const struct iio_buffer_setup_ops gp2ap020a0= 0f_buffer_setup_ops =3D { static int gp2ap020a00f_probe(struct i2c_client *client) { const struct i2c_device_id *id =3D i2c_client_get_device_id(client); + struct device *dev =3D &client->dev; struct gp2ap020a00f_data *data; struct iio_dev *indio_dev; struct regmap *regmap; int err; =20 - indio_dev =3D devm_iio_device_alloc(&client->dev, sizeof(*data)); + indio_dev =3D devm_iio_device_alloc(dev, sizeof(*data)); if (!indio_dev) return -ENOMEM; =20 data =3D iio_priv(indio_dev); =20 - data->vled_reg =3D devm_regulator_get(&client->dev, "vled"); + data->vled_reg =3D devm_regulator_get(dev, "vled"); if (IS_ERR(data->vled_reg)) return PTR_ERR(data->vled_reg); =20 @@ -1444,7 +1442,7 @@ static int gp2ap020a00f_probe(struct i2c_client *clie= nt) =20 regmap =3D devm_regmap_init_i2c(client, &gp2ap020a00f_regmap_config); if (IS_ERR(regmap)) { - dev_err(&client->dev, "Regmap initialization failed.\n"); + dev_err(dev, "Regmap initialization failed.\n"); err =3D PTR_ERR(regmap); goto error_regulator_disable; } @@ -1455,7 +1453,7 @@ static int gp2ap020a00f_probe(struct i2c_client *clie= nt) ARRAY_SIZE(gp2ap020a00f_reg_init_tab)); =20 if (err < 0) { - dev_err(&client->dev, "Device initialization failed.\n"); + dev_err(dev, "Device initialization failed.\n"); goto error_regulator_disable; } =20 @@ -1480,11 +1478,10 @@ static int gp2ap020a00f_probe(struct i2c_client *cl= ient) goto error_regulator_disable; =20 /* Allocate trigger */ - data->trig =3D devm_iio_trigger_alloc(&client->dev, "%s-trigger", - indio_dev->name); + data->trig =3D devm_iio_trigger_alloc(dev, "%s-trigger", indio_dev->name); if (data->trig =3D=3D NULL) { err =3D -ENOMEM; - dev_err(&indio_dev->dev, "Failed to allocate iio trigger.\n"); + dev_err(dev, "Failed to allocate iio trigger.\n"); goto error_uninit_buffer; } =20 @@ -1496,7 +1493,7 @@ static int gp2ap020a00f_probe(struct i2c_client *clie= nt) "gp2ap020a00f_als_event", indio_dev); if (err < 0) { - dev_err(&client->dev, "Irq request failed.\n"); + dev_err(dev, "Irq request failed.\n"); goto error_uninit_buffer; } =20 @@ -1504,7 +1501,7 @@ static int gp2ap020a00f_probe(struct i2c_client *clie= nt) =20 err =3D iio_trigger_register(data->trig); if (err < 0) { - dev_err(&client->dev, "Failed to register iio trigger.\n"); + dev_err(dev, "Failed to register iio trigger.\n"); goto error_free_irq; } =20 @@ -1530,12 +1527,13 @@ static void gp2ap020a00f_remove(struct i2c_client *= client) { struct iio_dev *indio_dev =3D i2c_get_clientdata(client); struct gp2ap020a00f_data *data =3D iio_priv(indio_dev); + struct device *dev =3D &client->dev; int err; =20 err =3D gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_SHUTDOWN); if (err < 0) - dev_err(&indio_dev->dev, "Failed to power off the device.\n"); + dev_err(dev, "Failed to power off the device.\n"); =20 iio_device_unregister(indio_dev); iio_trigger_unregister(data->trig); --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 C150F3242BC; Tue, 17 Feb 2026 10:23:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323811; cv=none; b=PCeT6cQxr4z7iWBaYHDPomudrPytD8KdvE7zxT1mr5wUKZL5qaHbJxW+NpGKh94fKHrguhPhX1uokK4+fpq5njYFlj7mgzqjasquNQdtxfYQcJlhOZgqsqCRmjgo3ylkcX3rfm6yup1oO/auilcgQ8GYQO5KvOoaqId0GOlXRW8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323811; c=relaxed/simple; bh=3OBvj/BQDbaPGFFl/kIrB7KUIA0fjprmv7Ti3sv84DI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=I/av9z3s0wkoaaY5VSKId09eqPAT+erUKLZfMPqYuCUdKW/DdN6mdxp8j3ArQ5xVXUk2WQpkx8dFmeTr5QsF2Jg5o6DfUH43MQc57B5A6MqBiuNYKrtV44O5hmAgwyobAWh6atSS5U5awLQySZFRguERqaeOStXW3EjMnwFJnKg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=cmRqbBLz; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="cmRqbBLz" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323809; x=1802859809; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=3OBvj/BQDbaPGFFl/kIrB7KUIA0fjprmv7Ti3sv84DI=; b=cmRqbBLz0BGnsUYzSbavyYR84jtPuS4/+TWY9CVBu2Z5brhznURPbJNe iwvNDsKoFFIHGx8Y2/5QQ+A2yNE0jQuCP5RHJoHPiyvO6Iqb9bnAtE4mo JbHMe6GO9QBi/XaViy4PHmpyet3mmhK7fnm+ZC4at8/n/7BtoBLbyYlwo s4vCErsvO0/NroqZhuF8B9yMys/lJxk5HbWqiDmXk30PSXEM444F78RoY DPZD83V1YGD3sUH+ELVHecfctVEe4TSVXPTc/GV3XgsUJjzzkMr2zbzju r4bWuJ52WU3RXTVIffGF9kGcieZ/1poUF9Za0DUZuB7DwudrmNt66v7Si w==; X-CSE-ConnectionGUID: 48E0xAklRIKy1U0JeXnEug== X-CSE-MsgGUID: a2ni3mxiT6ipWRhJOAXgXQ== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099192" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099192" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:28 -0800 X-CSE-ConnectionGUID: Dmf5qDUxRPWBkev/Sl2Keg== X-CSE-MsgGUID: nBn/AEfVSWOoJDEnUqQVEw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851657" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:27 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 68299A1; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 5/7] iio: light: gp2ap020a00f: Explicitly use string literal for driver name Date: Tue, 17 Feb 2026 11:15:15 +0100 Message-ID: <20260217102318.1354103-6-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" The driver name should be easily greppable and clearly spelled. Replace a level of indirection and explicitly use string literal. While at it, remove useless blank lines before module_*() and MODULE_*() macros. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index af5eb77cb8c6..95479154b6a4 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -55,8 +55,6 @@ #include #include =20 -#define GP2A_I2C_NAME "gp2ap020a00f" - /* Registers */ #define GP2AP020A00F_OP_REG 0x00 /* Basic operations */ #define GP2AP020A00F_ALS_REG 0x01 /* ALS related settings */ @@ -1543,10 +1541,9 @@ static void gp2ap020a00f_remove(struct i2c_client *c= lient) } =20 static const struct i2c_device_id gp2ap020a00f_id[] =3D { - { GP2A_I2C_NAME }, + { "gp2ap020a00f" }, { } }; - MODULE_DEVICE_TABLE(i2c, gp2ap020a00f_id); =20 static const struct of_device_id gp2ap020a00f_of_match[] =3D { @@ -1557,14 +1554,13 @@ MODULE_DEVICE_TABLE(of, gp2ap020a00f_of_match); =20 static struct i2c_driver gp2ap020a00f_driver =3D { .driver =3D { - .name =3D GP2A_I2C_NAME, + .name =3D "gp2ap020a00f", .of_match_table =3D gp2ap020a00f_of_match, }, .probe =3D gp2ap020a00f_probe, .remove =3D gp2ap020a00f_remove, .id_table =3D gp2ap020a00f_id, }; - module_i2c_driver(gp2ap020a00f_driver); =20 MODULE_AUTHOR("Jacek Anaszewski "); --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 8F6693242A5; Tue, 17 Feb 2026 10:23:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323810; cv=none; b=g3/XPLTl7/pwUAD6aXNxtr9fh9M/wy2vMxGDj/j4cfn/Z/39kUEf8fJpn92GvtS5/d2f9G3uhpau5f1QwV9kpkESpftUl/JAN3FORLNNtwxYZJdPYp6YFvrVLG3Z+bHnaTbomN+ngetRTsChhEvWapLLjOc0e4FciNkNsjtLGi8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323810; c=relaxed/simple; bh=QJfNQH3aPqYRQAKfbv0DQakWT3JiLi+G+CyBfYPttIM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=c2xK0ycqG8/XlSTAxrFnXKg6iAn4jKjNj7NNNM3QEZvRoYYlK5RIi9VS8/sNp+GS0GJU3wDdRUesSXG8n6iBvqJrYLh7jdLs3GlOJjlfixSTorIqEE+866XTQIDiHhd1ijtIbx6HY4U4w9fNM1ojje3MUtOGg9Pn1/jrQx5HXDs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=jih+KyI1; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="jih+KyI1" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323809; x=1802859809; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QJfNQH3aPqYRQAKfbv0DQakWT3JiLi+G+CyBfYPttIM=; b=jih+KyI1VISgemMhb8DRTxcITQcSjBNyawF7HYe4eEIkbU45yVAS4c/i zJcXd8lqwGAf5VmKndmjN/lphST3el6MqhsJ7B5pgzARC3GlPfLBkpqjM 8voch2oIZm7Ex0BQEZk1XqTWBYBMEhEtayFbpnxyUocrSCGDC2qzyOfIE /VEaj9PJPKmySyP30SfPhPILwRKMlBJdOd9OTMED1PNXFZAB+S9k/MEpU 4VDduUkpwYeXJ2G+o8zAaQzF3rN91bjjyGGDRxWhw8aUxYcwXtWgnCjoe 9ohaQ3D5fN9E/3fL8w8LzTDppMAagxuCPX6RPBkcsgQ81dM4d1eBeGPyC Q==; X-CSE-ConnectionGUID: XbS9h22CT1aQD1t0+Y3l3A== X-CSE-MsgGUID: yjkbJcCcSXCGQLNNg+Iqhw== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099184" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099184" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:28 -0800 X-CSE-ConnectionGUID: 51IgBdYFTPaZ0trdo44sSw== X-CSE-MsgGUID: 4JnYDAAASoCpNhfjkxncdg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851656" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:27 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 6AEDAA2; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 6/7] iio: light: gp2ap020a00f: Remove trailing comma in termination entry Date: Tue, 17 Feb 2026 11:15:16 +0100 Message-ID: <20260217102318.1354103-7-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" Termination entry by definition should be the last one, hence remove stray comma after it. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index 95479154b6a4..4b7afb62ebf0 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -195,7 +195,7 @@ enum gp2ap020a00f_opmode { GP2AP020A00F_OPMODE_ALS_AND_PS, GP2AP020A00F_OPMODE_PROX_DETECT, GP2AP020A00F_OPMODE_SHUTDOWN, - GP2AP020A00F_NUM_OPMODES, + GP2AP020A00F_NUM_OPMODES }; =20 enum gp2ap020a00f_cmd { --=20 2.50.1 From nobody Fri Apr 3 03:13:50 2026 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.20]) (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 CBF21324712; Tue, 17 Feb 2026 10:23:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323812; cv=none; b=TbIIHhvZxHB4N8Egwo8mLi/via1cqS6pVVLqEa9OutDc3DTb5aKOhyZhr7pfzQ/MbL3bwr5w4uuNBFCXEYUOoDaAgWjKLpiRwVWjOwlq3zfHdsDeQ0qZjBfcn7imbvae8ReIN2XvqyU11H3CJcqp0FpECRAKJTj8z6LQ5OQ36qQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771323812; c=relaxed/simple; bh=QnXDZ5b/3hDTcHEgMiTJIX7eOp4DZps/MTOJPu83meg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nwvSeeOOU8vhzfwFooL50JqutpKFtG3Hlqz89h18YHxlDcqkJCQGOS910wqqgiW6nxaDgSLelx0wbIPhDqs+VwbjOzVwUGyQ5m6OvWvlMf9NXcv7K9iVi1g+tQqmGchigzCXY+m/CbTfjrvC0yp7y5gaz5YEhW1wA/kt6bGKh6E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=pass smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=covBc9fN; arc=none smtp.client-ip=198.175.65.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="covBc9fN" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1771323811; x=1802859811; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QnXDZ5b/3hDTcHEgMiTJIX7eOp4DZps/MTOJPu83meg=; b=covBc9fNOlhiPMVOylyWFyJMCDOtfLLqQGFcT0LWpiK973hK8zKW5fzZ nQLgKMMT0vNqIO4kPWDnzaLf9YURLpVGqbFBalsK8EjGOs4k8isGE2paA bFliB5pSeArPY/sAnoDYogBFIyspqhcsbsIRnpRXbyfKEG90uoeEsgTBq GbzfHA+cqyTQjHyArlN6qs3VNKCT7gtjzQeJMQGFyt6CMxCwOg0N1wwM9 hnDWO/WvNJMG0qpX2s5Fm8ItSJl6uQIklp1N9KUDmj3pxO7M32GRqXbPP dihytrtU1caJ9YPegV1CmiQdV4c+GD4/P/lWIwO2gcwZURSsGZWLbDNvq g==; X-CSE-ConnectionGUID: /oOumK4SRNWwC3eGDx5L8g== X-CSE-MsgGUID: ujEOmQQUTJytnknleasDmw== X-IronPort-AV: E=McAfee;i="6800,10657,11703"; a="72099194" X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="72099194" Received: from fmviesa002.fm.intel.com ([10.60.135.142]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2026 02:23:28 -0800 X-CSE-ConnectionGUID: 7ctxf3WIQl6Hai87vWXNmg== X-CSE-MsgGUID: ugbVO7vTS2mzbyDgyd2hyQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.21,296,1763452800"; d="scan'208";a="236851658" Received: from black.igk.intel.com ([10.91.253.5]) by fmviesa002.fm.intel.com with ESMTP; 17 Feb 2026 02:23:27 -0800 Received: by black.igk.intel.com (Postfix, from userid 1003) id 6EA42A4; Tue, 17 Feb 2026 11:23:23 +0100 (CET) From: Andy Shevchenko To: Andy Shevchenko , linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Jonathan Cameron , David Lechner , =?UTF-8?q?Nuno=20S=C3=A1?= , Andy Shevchenko , Ethan Tidmore Subject: [PATCH v1 7/7] iio: light: gp2ap020a00f: Join some lines of code to be a single line Date: Tue, 17 Feb 2026 11:15:17 +0100 Message-ID: <20260217102318.1354103-8-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.com> References: <20260217102318.1354103-1-andriy.shevchenko@linux.intel.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" In some cases the wrapped lines are harder to follow. Join them despite being longer than 80 characters in some cases. Signed-off-by: Andy Shevchenko --- drivers/iio/light/gp2ap020a00f.c | 39 +++++++++++--------------------- 1 file changed, 13 insertions(+), 26 deletions(-) diff --git a/drivers/iio/light/gp2ap020a00f.c b/drivers/iio/light/gp2ap020a= 00f.c index 4b7afb62ebf0..c9eac0496ae2 100644 --- a/drivers/iio/light/gp2ap020a00f.c +++ b/drivers/iio/light/gp2ap020a00f.c @@ -175,10 +175,8 @@ #define GP2AP020A00F_CHAN_TIMESTAMP 3 =20 #define GP2AP020A00F_DATA_READY_TIMEOUT msecs_to_jiffies(1000) -#define GP2AP020A00F_DATA_REG(chan) (GP2AP020A00F_D0_L_REG + \ - (chan) * 2) -#define GP2AP020A00F_THRESH_REG(th_val_id) (GP2AP020A00F_TL_L_REG + \ - (th_val_id) * 2) +#define GP2AP020A00F_DATA_REG(chan) (GP2AP020A00F_D0_L_REG + (chan) * 2) +#define GP2AP020A00F_THRESH_REG(th_val_id) (GP2AP020A00F_TL_L_REG + (th_va= l_id) * 2) #define GP2AP020A00F_THRESH_VAL_ID(reg_addr) ((reg_addr - 4) / 2) =20 #define GP2AP020A00F_SUBTRACT_MODE 0 @@ -390,20 +388,17 @@ static int gp2ap020a00f_set_operation_mode(struct gp2= ap020a00f_data *data, } =20 err =3D regmap_update_bits(data->regmap, GP2AP020A00F_ALS_REG, - GP2AP020A00F_PRST_MASK, opmode_regs_settings[op] - .als_reg); + GP2AP020A00F_PRST_MASK, opmode_regs_settings[op].als_reg); if (err < 0) return err; =20 err =3D regmap_update_bits(data->regmap, GP2AP020A00F_PS_REG, - GP2AP020A00F_INTTYPE_MASK, opmode_regs_settings[op] - .ps_reg); + GP2AP020A00F_INTTYPE_MASK, opmode_regs_settings[op].ps_reg); if (err < 0) return err; =20 err =3D regmap_update_bits(data->regmap, GP2AP020A00F_LED_REG, - GP2AP020A00F_PIN_MASK, opmode_regs_settings[op] - .led_reg); + GP2AP020A00F_PIN_MASK, opmode_regs_settings[op].led_reg); if (err < 0) return err; } @@ -861,8 +856,7 @@ static irqreturn_t gp2ap020a00f_thresh_event_handler(in= t irq, void *data) int thresh_val_id, ret; =20 /* Read interrupt flags */ - ret =3D regmap_read(priv->regmap, GP2AP020A00F_OP_REG, - &op_reg_val); + ret =3D regmap_read(priv->regmap, GP2AP020A00F_OP_REG, &op_reg_val); if (ret < 0) goto done; =20 @@ -874,8 +868,7 @@ static irqreturn_t gp2ap020a00f_thresh_event_handler(in= t irq, void *data) =20 /* Clear interrupt flags (if not in INTTYPE_PULSE mode) */ if (priv->cur_opmode !=3D GP2AP020A00F_OPMODE_PROX_DETECT) { - ret =3D regmap_write(priv->regmap, GP2AP020A00F_OP_REG, - op_reg_val); + ret =3D regmap_write(priv->regmap, GP2AP020A00F_OP_REG, op_reg_val); if (ret < 0) goto done; } @@ -972,8 +965,7 @@ static irqreturn_t gp2ap020a00f_trigger_handler(int irq= , void *data) } } =20 - iio_push_to_buffers_with_timestamp(indio_dev, priv->buffer, - pf->timestamp); + iio_push_to_buffers_with_timestamp(indio_dev, priv->buffer, pf->timestamp= ); done: iio_trigger_notify_done(indio_dev->trig); =20 @@ -1024,26 +1016,22 @@ static int gp2ap020a00f_write_event_val(struct iio_= dev *indio_dev, =20 switch (thresh_reg_l) { case GP2AP020A00F_TH_L_REG: - event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, - &data->flags); + event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_RISING_EV, &data->flags); break; case GP2AP020A00F_TL_L_REG: - event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, - &data->flags); + event_en =3D test_bit(GP2AP020A00F_FLAG_ALS_FALLING_EV, &data->flags); break; case GP2AP020A00F_PH_L_REG: if (val =3D=3D 0) return -EINVAL; =20 - event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, - &data->flags); + event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_RISING_EV, &data->flags); break; case GP2AP020A00F_PL_L_REG: if (val =3D=3D 0) return -EINVAL; =20 - event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, - &data->flags); + event_en =3D test_bit(GP2AP020A00F_FLAG_PROX_FALLING_EV, &data->flags); break; } =20 @@ -1528,8 +1516,7 @@ static void gp2ap020a00f_remove(struct i2c_client *cl= ient) struct device *dev =3D &client->dev; int err; =20 - err =3D gp2ap020a00f_set_operation_mode(data, - GP2AP020A00F_OPMODE_SHUTDOWN); + err =3D gp2ap020a00f_set_operation_mode(data, GP2AP020A00F_OPMODE_SHUTDOW= N); if (err < 0) dev_err(dev, "Failed to power off the device.\n"); =20 --=20 2.50.1