* [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions
@ 2026-11-02 9:42 Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 1/2] staging: iio: addac: adt7316: sort headers alphabetically Abdelnasser Hussein
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Abdelnasser Hussein @ 2026-11-02 9:42 UTC (permalink / raw)
To: Jonathan Cameron, Greg Kroah-Hartman, Nuno Sá,
Michael Hennerich
Cc: David Lechner, Andy Shevchenko, Joshua Crofts, linux, linux-iio,
linux-staging, linux-kernel, Abdelnasser Hussein
This series cleans up header inclusions in adt7316.c by following
the Include What You Use (IWYU) principle.
The series is split into two logical steps:
1. Sort existing header inclusions alphabetically without modifying the
list of included headers. Keep subsystem <linux/iio/*> headers
separated and insert a blank line before "adt7316.h".
2. Drop proxy header <linux/kernel.h>, explicitly add missing headers
(<linux/bits.h>, <linux/err.h>, <linux/errno.h>, <linux/kstrtox.h>,
<linux/pm.h>, <linux/string.h>, <linux/types.h>), drop unused headers
(<linux/i2c.h>, <linux/list.h>, <linux/rtc.h>, <linux/slab.h>,
<linux/workqueue.h>), and maintain alphabetical sorting.
v3:
- Split the series as suggested by Joshua Crofts: patch 1 only sorts
the headers, patch 2 replaces kernel.h and adds/drops headers.
- Explicitly include <linux/err.h>, <linux/errno.h>, and
<linux/types.h> per IWYU following verification of symbols used.
v2:
- Address review feedback from Andy Shevchenko: drop <linux/kernel.h>
and include the headers actually used.
- Split the original patch into a 2-patch series.
v1:
- Initial submission.
Abdelnasser Hussein (2):
staging: iio: addac: adt7316: sort headers alphabetically
staging: iio: addac: adt7316: replace kernel.h with explicit headers
drivers/staging/iio/addac/adt7316.c | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
--
2.56.0
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v3 1/2] staging: iio: addac: adt7316: sort headers alphabetically
2026-11-02 9:42 [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Abdelnasser Hussein
@ 2026-11-02 9:42 ` Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 2/2] staging: iio: addac: adt7316: replace kernel.h with explicit headers Abdelnasser Hussein
2026-11-02 10:01 ` [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Joshua Crofts
2 siblings, 0 replies; 4+ messages in thread
From: Abdelnasser Hussein @ 2026-11-02 9:42 UTC (permalink / raw)
To: Jonathan Cameron, Greg Kroah-Hartman, Nuno Sá,
Michael Hennerich
Cc: David Lechner, Andy Shevchenko, Joshua Crofts, linux, linux-iio,
linux-staging, linux-kernel, Abdelnasser Hussein
Sort included headers alphabetically without altering the list of
inclusions. Keep the <linux/iio/*> subsystem headers separated from
the <linux/*> group, and add a blank line before the local "adt7316.h"
header.
Signed-off-by: Abdelnasser Hussein <abdelnasserhussein11@gmail.com>
---
v3:
- New patch in v3: sort existing headers alphabetically without
additions or removals, as suggested by Joshua Crofts.
drivers/staging/iio/addac/adt7316.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/drivers/staging/iio/addac/adt7316.c b/drivers/staging/iio/addac/adt7316.c
index 20f6052cc7fb..515f1fdae46b 100644
--- a/drivers/staging/iio/addac/adt7316.c
+++ b/drivers/staging/iio/addac/adt7316.c
@@ -5,22 +5,23 @@
* Copyright 2010 Analog Devices Inc.
*/
-#include <linux/interrupt.h>
+#include <linux/device.h>
#include <linux/gpio/consumer.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
#include <linux/irq.h>
-#include <linux/workqueue.h>
-#include <linux/device.h>
#include <linux/kernel.h>
-#include <linux/slab.h>
-#include <linux/sysfs.h>
#include <linux/list.h>
-#include <linux/i2c.h>
-#include <linux/rtc.h>
#include <linux/module.h>
+#include <linux/rtc.h>
+#include <linux/slab.h>
+#include <linux/sysfs.h>
+#include <linux/workqueue.h>
-#include <linux/iio/iio.h>
#include <linux/iio/events.h>
+#include <linux/iio/iio.h>
#include <linux/iio/sysfs.h>
+
#include "adt7316.h"
/*
--
2.56.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH v3 2/2] staging: iio: addac: adt7316: replace kernel.h with explicit headers
2026-11-02 9:42 [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 1/2] staging: iio: addac: adt7316: sort headers alphabetically Abdelnasser Hussein
@ 2026-11-02 9:42 ` Abdelnasser Hussein
2026-11-02 10:01 ` [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Joshua Crofts
2 siblings, 0 replies; 4+ messages in thread
From: Abdelnasser Hussein @ 2026-11-02 9:42 UTC (permalink / raw)
To: Jonathan Cameron, Greg Kroah-Hartman, Nuno Sá,
Michael Hennerich
Cc: David Lechner, Andy Shevchenko, Joshua Crofts, linux, linux-iio,
linux-staging, linux-kernel, Abdelnasser Hussein
Drop the proxy header <linux/kernel.h> and replace it with direct
inclusions per the Include What You Use (IWYU) principle. Also remove
unused headers and keep the list alphabetically sorted.
Explicitly add:
- <linux/bits.h> for BIT()
- <linux/err.h> for IS_ERR() and PTR_ERR()
- <linux/errno.h> for error codes (-EIO, -EPERM, -EINVAL, -ENOMEM,
-ENODEV)
- <linux/kstrtox.h> for kstrtou8(), kstrtou16(), and kstrtoint()
- <linux/pm.h> for EXPORT_GPL_SIMPLE_DEV_PM_OPS()
- <linux/string.h> for memcmp()
- <linux/types.h> for fixed-width and standard types (u8, u16, bool, s64)
Drop unused headers:
- <linux/i2c.h> (no I2C symbols used in core driver)
- <linux/kernel.h> (proxy header)
- <linux/list.h> (no linked list symbols used)
- <linux/rtc.h> (no RTC symbols used)
- <linux/slab.h> (no kmalloc/kfree symbols used)
- <linux/workqueue.h> (no workqueue symbols used)
Signed-off-by: Abdelnasser Hussein <abdelnasserhussein11@gmail.com>
---
v3:
- Replace <linux/kernel.h> and add/remove headers in this patch, as
suggested by Joshua Crofts.
- Explicitly add <linux/err.h>, <linux/errno.h>, and <linux/types.h>
per IWYU after symbol verification.
v2:
- Split from original monolithic patch.
drivers/staging/iio/addac/adt7316.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/iio/addac/adt7316.c b/drivers/staging/iio/addac/adt7316.c
index 515f1fdae46b..54d942cae586 100644
--- a/drivers/staging/iio/addac/adt7316.c
+++ b/drivers/staging/iio/addac/adt7316.c
@@ -5,18 +5,19 @@
* Copyright 2010 Analog Devices Inc.
*/
+#include <linux/bits.h>
#include <linux/device.h>
+#include <linux/err.h>
+#include <linux/errno.h>
#include <linux/gpio/consumer.h>
-#include <linux/i2c.h>
#include <linux/interrupt.h>
#include <linux/irq.h>
-#include <linux/kernel.h>
-#include <linux/list.h>
+#include <linux/kstrtox.h>
#include <linux/module.h>
-#include <linux/rtc.h>
-#include <linux/slab.h>
+#include <linux/pm.h>
+#include <linux/string.h>
#include <linux/sysfs.h>
-#include <linux/workqueue.h>
+#include <linux/types.h>
#include <linux/iio/events.h>
#include <linux/iio/iio.h>
--
2.56.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions
2026-11-02 9:42 [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 1/2] staging: iio: addac: adt7316: sort headers alphabetically Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 2/2] staging: iio: addac: adt7316: replace kernel.h with explicit headers Abdelnasser Hussein
@ 2026-11-02 10:01 ` Joshua Crofts
2 siblings, 0 replies; 4+ messages in thread
From: Joshua Crofts @ 2026-11-02 10:01 UTC (permalink / raw)
To: Abdelnasser Hussein
Cc: Jonathan Cameron, Greg Kroah-Hartman, Nuno Sá,
Michael Hennerich, David Lechner, Andy Shevchenko, linux,
linux-iio, linux-staging, linux-kernel
On Mon, 2 Nov 2026 11:42:34 +0200
Abdelnasser Hussein <abdelnasserhussein11@gmail.com> wrote:
> This series cleans up header inclusions in adt7316.c by following
> the Include What You Use (IWYU) principle.
>
> The series is split into two logical steps:
> 1. Sort existing header inclusions alphabetically without modifying the
> list of included headers. Keep subsystem <linux/iio/*> headers
> separated and insert a blank line before "adt7316.h".
> 2. Drop proxy header <linux/kernel.h>, explicitly add missing headers
> (<linux/bits.h>, <linux/err.h>, <linux/errno.h>, <linux/kstrtox.h>,
> <linux/pm.h>, <linux/string.h>, <linux/types.h>), drop unused headers
> (<linux/i2c.h>, <linux/list.h>, <linux/rtc.h>, <linux/slab.h>,
> <linux/workqueue.h>), and maintain alphabetical sorting.
>
> v3:
> - Split the series as suggested by Joshua Crofts: patch 1 only sorts
> the headers, patch 2 replaces kernel.h and adds/drops headers.
> - Explicitly include <linux/err.h>, <linux/errno.h>, and
> <linux/types.h> per IWYU following verification of symbols used.
>
> v2:
> - Address review feedback from Andy Shevchenko: drop <linux/kernel.h>
> and include the headers actually used.
> - Split the original patch into a 2-patch series.
>
> v1:
> - Initial submission.
>
> Abdelnasser Hussein (2):
> staging: iio: addac: adt7316: sort headers alphabetically
> staging: iio: addac: adt7316: replace kernel.h with explicit headers
>
> drivers/staging/iio/addac/adt7316.c | 22 ++++++++++++----------
> 1 file changed, 12 insertions(+), 10 deletions(-)
>
Much more readable in this order.
Reviewed-by: Joshua Crofts <crofts@kernel.org>
--
Kind regards,
Joshua Crofts
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2026-11-02 10:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-02 9:42 [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 1/2] staging: iio: addac: adt7316: sort headers alphabetically Abdelnasser Hussein
2026-11-02 9:42 ` [PATCH v3 2/2] staging: iio: addac: adt7316: replace kernel.h with explicit headers Abdelnasser Hussein
2026-11-02 10:01 ` [PATCH v3 0/2] staging: iio: addac: adt7316: clean up header inclusions Joshua Crofts
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.