2013-04-05 18:46:59

by Stephen Warren

[permalink] [raw]
Subject: [GIT PULL] dt: run C pre-processor on *.dts, create some standard headers

Rob, it might be worth keeping this in a separate branch in linux-next
so you can pull it out if it causes any issues. I've been using these
patches for quite a while now, but there's always opportunity for
surprises on architectures I don't use. I did just fix a bug when
building with O= a few days back, hence the V2 that I posted as patches.

----------------------------------------------------------------

This branch enhances the support for running dtc on device tree files.

A dedicated directory is created for header files that provide constants
for device-tree bindings.

The kbuild dependency script processor is enhanced to support processing
the dependency outputs from multiple separate commands at once.

The kbuild dtc rule is modified so that the C pre-processor is always
applied when compiling any device tree.

Some standard headers are created which define common constants for GPIO,
IRQ, and ARM GIC device tree bindings.

----------------------------------------------------------------

The following changes since commit 6dbe51c251a327e012439c4772097a13df43c5b8:

Linux 3.9-rc1

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git tegra-for-3.10-dtc-cpp-chroot-std-headers

for you to fetch changes up to 4be505d4fc7a07371a2b658469ca1dda99993ca3:

ARM: dt: create a DT header for the GIC

----------------------------------------------------------------

Stephen Warren (7):
kbuild: create an "include chroot" for DT bindings
kbuild: fixdep: support concatenated dep files
kbuild: cmd_dtc_cpp: extract deps from both gcc -E and dtc
kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp
ARM: dt: add header to define GPIO flags
ARM: dt: add header to define IRQ flags
ARM: dt: create a DT header for the GIC

arch/arm/boot/dts/include/dt-bindings | 1 +
include/dt-bindings/gpio/gpio.h | 15 +++
.../dt-bindings/interrupt-controller/arm-gic.h | 22 +++++
include/dt-bindings/interrupt-controller/irq.h | 19 ++++
scripts/Makefile.lib | 17 ++--
scripts/basic/fixdep.c | 93 ++++++++++++------
6 files changed, 125 insertions(+), 42 deletions(-)
create mode 120000 arch/arm/boot/dts/include/dt-bindings
create mode 100644 include/dt-bindings/gpio/gpio.h
create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
create mode 100644 include/dt-bindings/interrupt-controller/irq.h


2013-04-05 18:54:50

by Rob Herring

[permalink] [raw]
Subject: Re: [GIT PULL] dt: run C pre-processor on *.dts, create some standard headers

On 04/05/2013 01:46 PM, Stephen Warren wrote:
> Rob, it might be worth keeping this in a separate branch in linux-next
> so you can pull it out if it causes any issues. I've been using these
> patches for quite a while now, but there's always opportunity for
> surprises on architectures I don't use. I did just fix a bug when
> building with O= a few days back, hence the V2 that I posted as patches.
>

No, you're on the hook to fix anything. :) My next branch is pulled by
Grant and is not rebased. Perhaps we should change that, but it's not
going to happen right away.

Rob

> ----------------------------------------------------------------
>
> This branch enhances the support for running dtc on device tree files.
>
> A dedicated directory is created for header files that provide constants
> for device-tree bindings.
>
> The kbuild dependency script processor is enhanced to support processing
> the dependency outputs from multiple separate commands at once.
>
> The kbuild dtc rule is modified so that the C pre-processor is always
> applied when compiling any device tree.
>
> Some standard headers are created which define common constants for GPIO,
> IRQ, and ARM GIC device tree bindings.
>
> ----------------------------------------------------------------
>
> The following changes since commit 6dbe51c251a327e012439c4772097a13df43c5b8:
>
> Linux 3.9-rc1
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git tegra-for-3.10-dtc-cpp-chroot-std-headers
>
> for you to fetch changes up to 4be505d4fc7a07371a2b658469ca1dda99993ca3:
>
> ARM: dt: create a DT header for the GIC
>
> ----------------------------------------------------------------
>
> Stephen Warren (7):
> kbuild: create an "include chroot" for DT bindings
> kbuild: fixdep: support concatenated dep files
> kbuild: cmd_dtc_cpp: extract deps from both gcc -E and dtc
> kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp
> ARM: dt: add header to define GPIO flags
> ARM: dt: add header to define IRQ flags
> ARM: dt: create a DT header for the GIC
>
> arch/arm/boot/dts/include/dt-bindings | 1 +
> include/dt-bindings/gpio/gpio.h | 15 +++
> .../dt-bindings/interrupt-controller/arm-gic.h | 22 +++++
> include/dt-bindings/interrupt-controller/irq.h | 19 ++++
> scripts/Makefile.lib | 17 ++--
> scripts/basic/fixdep.c | 93 ++++++++++++------
> 6 files changed, 125 insertions(+), 42 deletions(-)
> create mode 120000 arch/arm/boot/dts/include/dt-bindings
> create mode 100644 include/dt-bindings/gpio/gpio.h
> create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
> create mode 100644 include/dt-bindings/interrupt-controller/irq.h
>

2013-04-07 07:15:47

by Shawn Guo

[permalink] [raw]
Subject: Re: [GIT PULL] dt: run C pre-processor on *.dts, create some standard headers

On Fri, Apr 05, 2013 at 12:46:50PM -0600, Stephen Warren wrote:
> Rob, it might be worth keeping this in a separate branch in linux-next
> so you can pull it out if it causes any issues. I've been using these
> patches for quite a while now, but there's always opportunity for
> surprises on architectures I don't use. I did just fix a bug when
> building with O= a few days back, hence the V2 that I posted as patches.
>
> ----------------------------------------------------------------
>
> This branch enhances the support for running dtc on device tree files.
>
> A dedicated directory is created for header files that provide constants
> for device-tree bindings.
>
> The kbuild dependency script processor is enhanced to support processing
> the dependency outputs from multiple separate commands at once.
>
> The kbuild dtc rule is modified so that the C pre-processor is always
> applied when compiling any device tree.
>
> Some standard headers are created which define common constants for GPIO,
> IRQ, and ARM GIC device tree bindings.
>
> ----------------------------------------------------------------
>
> The following changes since commit 6dbe51c251a327e012439c4772097a13df43c5b8:
>
> Linux 3.9-rc1
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git tegra-for-3.10-dtc-cpp-chroot-std-headers
>
I just rebuilt my imx/dt branch based on this to avoid all those dts
files renaming. So regardless of the path it goes to mainline, I will
need it as a dependency in arm-soc tree.

Shawn

> for you to fetch changes up to 4be505d4fc7a07371a2b658469ca1dda99993ca3:
>
> ARM: dt: create a DT header for the GIC
>
> ----------------------------------------------------------------
>
> Stephen Warren (7):
> kbuild: create an "include chroot" for DT bindings
> kbuild: fixdep: support concatenated dep files
> kbuild: cmd_dtc_cpp: extract deps from both gcc -E and dtc
> kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp
> ARM: dt: add header to define GPIO flags
> ARM: dt: add header to define IRQ flags
> ARM: dt: create a DT header for the GIC
>
> arch/arm/boot/dts/include/dt-bindings | 1 +
> include/dt-bindings/gpio/gpio.h | 15 +++
> .../dt-bindings/interrupt-controller/arm-gic.h | 22 +++++
> include/dt-bindings/interrupt-controller/irq.h | 19 ++++
> scripts/Makefile.lib | 17 ++--
> scripts/basic/fixdep.c | 93 ++++++++++++------
> 6 files changed, 125 insertions(+), 42 deletions(-)
> create mode 120000 arch/arm/boot/dts/include/dt-bindings
> create mode 100644 include/dt-bindings/gpio/gpio.h
> create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
> create mode 100644 include/dt-bindings/interrupt-controller/irq.h
> _______________________________________________
> devicetree-discuss mailing list
> [email protected]
> https://lists.ozlabs.org/listinfo/devicetree-discuss

2013-04-09 20:15:39

by Rob Herring

[permalink] [raw]
Subject: Re: [GIT PULL] dt: run C pre-processor on *.dts, create some standard headers

On 04/05/2013 01:46 PM, Stephen Warren wrote:
> Rob, it might be worth keeping this in a separate branch in linux-next
> so you can pull it out if it causes any issues. I've been using these
> patches for quite a while now, but there's always opportunity for
> surprises on architectures I don't use. I did just fix a bug when
> building with O= a few days back, hence the V2 that I posted as patches.
>

Pulled into my for-next branch.

Rob

> ----------------------------------------------------------------
>
> This branch enhances the support for running dtc on device tree files.
>
> A dedicated directory is created for header files that provide constants
> for device-tree bindings.
>
> The kbuild dependency script processor is enhanced to support processing
> the dependency outputs from multiple separate commands at once.
>
> The kbuild dtc rule is modified so that the C pre-processor is always
> applied when compiling any device tree.
>
> Some standard headers are created which define common constants for GPIO,
> IRQ, and ARM GIC device tree bindings.
>
> ----------------------------------------------------------------
>
> The following changes since commit 6dbe51c251a327e012439c4772097a13df43c5b8:
>
> Linux 3.9-rc1
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git tegra-for-3.10-dtc-cpp-chroot-std-headers
>
> for you to fetch changes up to 4be505d4fc7a07371a2b658469ca1dda99993ca3:
>
> ARM: dt: create a DT header for the GIC
>
> ----------------------------------------------------------------
>
> Stephen Warren (7):
> kbuild: create an "include chroot" for DT bindings
> kbuild: fixdep: support concatenated dep files
> kbuild: cmd_dtc_cpp: extract deps from both gcc -E and dtc
> kbuild: always run gcc -E on *.dts, remove cmd_dtc_cpp
> ARM: dt: add header to define GPIO flags
> ARM: dt: add header to define IRQ flags
> ARM: dt: create a DT header for the GIC
>
> arch/arm/boot/dts/include/dt-bindings | 1 +
> include/dt-bindings/gpio/gpio.h | 15 +++
> .../dt-bindings/interrupt-controller/arm-gic.h | 22 +++++
> include/dt-bindings/interrupt-controller/irq.h | 19 ++++
> scripts/Makefile.lib | 17 ++--
> scripts/basic/fixdep.c | 93 ++++++++++++------
> 6 files changed, 125 insertions(+), 42 deletions(-)
> create mode 120000 arch/arm/boot/dts/include/dt-bindings
> create mode 100644 include/dt-bindings/gpio/gpio.h
> create mode 100644 include/dt-bindings/interrupt-controller/arm-gic.h
> create mode 100644 include/dt-bindings/interrupt-controller/irq.h
> _______________________________________________
> devicetree-discuss mailing list
> [email protected]
> https://lists.ozlabs.org/listinfo/devicetree-discuss
>
>