[v2,1/1] leds: expresswire: Don't use "proxy" headers

Message ID 20240223203010.881065-1-andriy.shevchenko@linux.intel.com
State New
Headers
Series [v2,1/1] leds: expresswire: Don't use "proxy" headers |

Commit Message

Andy Shevchenko Feb. 23, 2024, 8:30 p.m. UTC
  Update header inclusions to follow IWYU (Include What You Use)
principle.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
v2: added one more missing header
 drivers/leds/leds-expresswire.c  | 4 ++++
 include/linux/leds-expresswire.h | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)
  

Comments

Duje Mihanović Feb. 24, 2024, 3:31 p.m. UTC | #1
On 2/23/2024 9:56 PM, Pavel Machek wrote:
>> -#include <linux/gpio/consumer.h>
>> +#include <linux/types.h>
>> +
>> +struct gpio_desc;
> 
> If include tweak means you need to declare struct, is it ian
> improvement?

In this case I'd say yes, the header in question has numerous other 
declarations (which are not used in leds-expresswire.h) and itself 
declares gpio_desc like this anyway.

Regards,
--
Duje
  
Duje Mihanović Feb. 24, 2024, 4:02 p.m. UTC | #2
On 2/23/2024 9:30 PM, Andy Shevchenko wrote:
> Update header inclusions to follow IWYU (Include What You Use)
> principle.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> v2: added one more missing header
>  drivers/leds/leds-expresswire.c  | 4 ++++
>  include/linux/leds-expresswire.h | 4 +++-
>  2 files changed, 7 insertions(+), 1 deletion(-)

Reviewed-by: Duje Mihanović <duje.mihanovic@skole.hr>
  
Andy Shevchenko Feb. 26, 2024, 2:27 p.m. UTC | #3
On Fri, Feb 23, 2024 at 09:56:56PM +0100, Pavel Machek wrote:

..

> > +struct gpio_desc;
> 
> If include tweak means you need to declare struct, is it ian
> improvement?

Of course, we increase a build time by dropping the header that's
not used for the compilation.
  
Andy Shevchenko Feb. 26, 2024, 2:34 p.m. UTC | #4
On Mon, Feb 26, 2024 at 04:28:00PM +0200, Andy Shevchenko wrote:
> On Fri, Feb 23, 2024 at 09:56:56PM +0100, Pavel Machek wrote:

..

> > > +struct gpio_desc;
> > 
> > If include tweak means you need to declare struct, is it ian
> > improvement?
> 
> Of course, we increase a build time by dropping the header that's

Should be read: increase --> decrease

> not used for the compilation.
  
Andy Shevchenko Feb. 26, 2024, 2:34 p.m. UTC | #5
On Sat, Feb 24, 2024 at 05:02:40PM +0100, Duje Mihanović wrote:
> On 2/23/2024 9:30 PM, Andy Shevchenko wrote:
> > Update header inclusions to follow IWYU (Include What You Use)
> > principle.

> Reviewed-by: Duje Mihanović <duje.mihanovic@skole.hr>

Thank you!
  
Lee Jones Feb. 29, 2024, 5:22 p.m. UTC | #6
On Fri, 23 Feb 2024 22:30:00 +0200, Andy Shevchenko wrote:
> Update header inclusions to follow IWYU (Include What You Use)
> principle.
> 
> 

Applied, thanks!

[1/1] leds: expresswire: Don't use "proxy" headers
      commit: 8471d8737e3b4915ba0802985427364cd286ca5b

--
Lee Jones [李琼斯]
  

Patch

diff --git a/drivers/leds/leds-expresswire.c b/drivers/leds/leds-expresswire.c
index 89e147b0e019..e4937a8e0f44 100644
--- a/drivers/leds/leds-expresswire.c
+++ b/drivers/leds/leds-expresswire.c
@@ -5,8 +5,12 @@ 
  * ktd2692 and ktd2801 are known to use this protocol.
  */
 
+#include <linux/bits.h>
 #include <linux/delay.h>
+#include <linux/export.h>
 #include <linux/gpio/consumer.h>
+#include <linux/types.h>
+
 #include <linux/leds-expresswire.h>
 
 void expresswire_power_off(struct expresswire_common_props *props)
diff --git a/include/linux/leds-expresswire.h b/include/linux/leds-expresswire.h
index 3c61902ccac8..a422921f4159 100644
--- a/include/linux/leds-expresswire.h
+++ b/include/linux/leds-expresswire.h
@@ -8,7 +8,9 @@ 
 #ifndef _LEDS_EXPRESSWIRE_H
 #define _LEDS_EXPRESSWIRE_H
 
-#include <linux/gpio/consumer.h>
+#include <linux/types.h>
+
+struct gpio_desc;
 
 struct expresswire_timing {
 	unsigned long poweroff_us;