Re: [PATCH v2 1/4] iio: magnetometer: ak8975: header cleanup

From: Jonathan Cameron

Date: Tue Apr 21 2026 - 06:37:31 EST


On Tue, 21 Apr 2026 10:07:19 +0000
Joshua Crofts <joshua.crofts1@xxxxxxxxx> wrote:

> Clean up headers by removing proxy kernel.h header and adding new
> headers to ensure atomicity (array_size.h, dev_printk.h, types.h,
> asm/byteorder.h). Removed unused headers (slab.h, iio/sysfs.h,
> iio/trigger.h) and added minmax.h, property.h, wait.h, irqreturn.h to
> mitigate transient dependencies during compilation.
>
> Audited using the include-what-you-use tool.
>
> Signed-off-by: Joshua Crofts <joshua.crofts1@xxxxxxxxx>
I just saw your reply to v1 thread. General advice would be slow down a bit.
Even if you have reviews, a new patch set should sit for at least a few days
to gather multiple reviews before a revision.

For this sort of change I'd expect two patches.
1. Sort headers as is, not changes.
2. Add and remove headers.

Both are good to do, but if you do them together as you had in v1
it is annoyingly hard to review.

> ---
> drivers/iio/magnetometer/ak8975.c | 14 ++++++++++----
> 1 file changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/iio/magnetometer/ak8975.c b/drivers/iio/magnetometer/ak8975.c
> index 44782c26698..a829bee4cf8 100644
> --- a/drivers/iio/magnetometer/ak8975.c
> +++ b/drivers/iio/magnetometer/ak8975.c
> @@ -9,8 +9,6 @@
>
> #include <linux/module.h>
> #include <linux/mod_devicetable.h>
> -#include <linux/kernel.h>
> -#include <linux/slab.h>
> #include <linux/i2c.h>
> #include <linux/interrupt.h>
> #include <linux/err.h>
> @@ -20,11 +18,19 @@
> #include <linux/gpio/consumer.h>
> #include <linux/regulator/consumer.h>
> #include <linux/pm_runtime.h>
> +#include <linux/array_size.h>
> +#include <linux/delay.h>
> +#include <linux/dev_printk.h>
> +#include <linux/irqreturn.h>
> +#include <linux/minmax.h>
> +#include <linux/property.h>
> +#include <linux/types.h>
> +#include <linux/wait.h>
Even if you don't sort, these should be inserted as near
as possible to where they'd end up in a sorted list.

> +
> +#include <asm/byteorder.h>
>
> #include <linux/iio/iio.h>
> -#include <linux/iio/sysfs.h>
> #include <linux/iio/buffer.h>
> -#include <linux/iio/trigger.h>
> #include <linux/iio/trigger_consumer.h>
> #include <linux/iio/triggered_buffer.h>
>