diff mbox series

arm64: Explicitly include correct DT includes

Message ID 20230714174021.4039807-1-robh@kernel.org (mailing list archive)
State New, archived
Headers show
Series arm64: Explicitly include correct DT includes | expand

Commit Message

Rob Herring July 14, 2023, 5:40 p.m. UTC
The DT of_device.h and of_platform.h date back to the separate
of_platform_bus_type before it as merged into the regular platform bus.
As part of that merge prepping Arm DT support 13 years ago, they
"temporarily" include each other. They also include platform_device.h
and of.h. As a result, there's a pretty much random mix of those include
files used throughout the tree. In order to detangle these headers and
replace the implicit includes with struct declarations, users need to
explicitly include the correct includes.

Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm64/kernel/cpuidle.c | 2 --
 arch/arm64/kernel/pci.c     | 2 --
 2 files changed, 4 deletions(-)

Comments

Will Deacon July 17, 2023, 9:06 a.m. UTC | #1
On Fri, Jul 14, 2023 at 11:40:20AM -0600, Rob Herring wrote:
> The DT of_device.h and of_platform.h date back to the separate
> of_platform_bus_type before it as merged into the regular platform bus.
> As part of that merge prepping Arm DT support 13 years ago, they
> "temporarily" include each other. They also include platform_device.h
> and of.h. As a result, there's a pretty much random mix of those include
> files used throughout the tree. In order to detangle these headers and
> replace the implicit includes with struct declarations, users need to
> explicitly include the correct includes.
> 
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm64/kernel/cpuidle.c | 2 --
>  arch/arm64/kernel/pci.c     | 2 --
>  2 files changed, 4 deletions(-)
> 
> diff --git a/arch/arm64/kernel/cpuidle.c b/arch/arm64/kernel/cpuidle.c
> index d1f68599c29f..f372295207fb 100644
> --- a/arch/arm64/kernel/cpuidle.c
> +++ b/arch/arm64/kernel/cpuidle.c
> @@ -9,8 +9,6 @@
>  #include <linux/acpi.h>
>  #include <linux/cpuidle.h>
>  #include <linux/cpu_pm.h>
> -#include <linux/of.h>
> -#include <linux/of_device.h>
>  #include <linux/psci.h>

I don't grok how dropping 'linux/of.h' follows from the commit message.
Is it simply not needed by this file?

Will
Rob Herring July 17, 2023, 5:56 p.m. UTC | #2
On Mon, Jul 17, 2023 at 3:06 AM Will Deacon <will@kernel.org> wrote:
>
> On Fri, Jul 14, 2023 at 11:40:20AM -0600, Rob Herring wrote:
> > The DT of_device.h and of_platform.h date back to the separate
> > of_platform_bus_type before it as merged into the regular platform bus.
> > As part of that merge prepping Arm DT support 13 years ago, they
> > "temporarily" include each other. They also include platform_device.h
> > and of.h. As a result, there's a pretty much random mix of those include
> > files used throughout the tree. In order to detangle these headers and
> > replace the implicit includes with struct declarations, users need to
> > explicitly include the correct includes.
> >
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > ---
> >  arch/arm64/kernel/cpuidle.c | 2 --
> >  arch/arm64/kernel/pci.c     | 2 --
> >  2 files changed, 4 deletions(-)
> >
> > diff --git a/arch/arm64/kernel/cpuidle.c b/arch/arm64/kernel/cpuidle.c
> > index d1f68599c29f..f372295207fb 100644
> > --- a/arch/arm64/kernel/cpuidle.c
> > +++ b/arch/arm64/kernel/cpuidle.c
> > @@ -9,8 +9,6 @@
> >  #include <linux/acpi.h>
> >  #include <linux/cpuidle.h>
> >  #include <linux/cpu_pm.h>
> > -#include <linux/of.h>
> > -#include <linux/of_device.h>
> >  #include <linux/psci.h>
>
> I don't grok how dropping 'linux/of.h' follows from the commit message.
> Is it simply not needed by this file?

The motivation is to disentangle of_device.h includes. The fix is
making sure the explicit DT includes match what is used. The result
varies and here none of the DT headers are needed.

Rob
Will Deacon July 31, 2023, 5:44 p.m. UTC | #3
On Fri, 14 Jul 2023 11:40:20 -0600, Rob Herring wrote:
> The DT of_device.h and of_platform.h date back to the separate
> of_platform_bus_type before it as merged into the regular platform bus.
> As part of that merge prepping Arm DT support 13 years ago, they
> "temporarily" include each other. They also include platform_device.h
> and of.h. As a result, there's a pretty much random mix of those include
> files used throughout the tree. In order to detangle these headers and
> replace the implicit includes with struct declarations, users need to
> explicitly include the correct includes.
> 
> [...]

Applied to arm64 (for-next/misc), thanks!

[1/1] arm64: Explicitly include correct DT includes
      https://git.kernel.org/arm64/c/b9d601249740

Cheers,
diff mbox series

Patch

diff --git a/arch/arm64/kernel/cpuidle.c b/arch/arm64/kernel/cpuidle.c
index d1f68599c29f..f372295207fb 100644
--- a/arch/arm64/kernel/cpuidle.c
+++ b/arch/arm64/kernel/cpuidle.c
@@ -9,8 +9,6 @@ 
 #include <linux/acpi.h>
 #include <linux/cpuidle.h>
 #include <linux/cpu_pm.h>
-#include <linux/of.h>
-#include <linux/of_device.h>
 #include <linux/psci.h>
 
 #ifdef CONFIG_ACPI_PROCESSOR_IDLE
diff --git a/arch/arm64/kernel/pci.c b/arch/arm64/kernel/pci.c
index 2276689b5411..f872c57e9909 100644
--- a/arch/arm64/kernel/pci.c
+++ b/arch/arm64/kernel/pci.c
@@ -11,8 +11,6 @@ 
 #include <linux/io.h>
 #include <linux/kernel.h>
 #include <linux/mm.h>
-#include <linux/of_pci.h>
-#include <linux/of_platform.h>
 #include <linux/pci.h>
 #include <linux/pci-acpi.h>
 #include <linux/pci-ecam.h>