| Submitter | Tony Lindgren |
|---|---|
| Date | Oct. 19, 2012, 2:33 a.m. |
| Message ID | <20121019023300.GN30550@atomide.com> |
| Download | mbox |
| Permalink | /patch/192484/ |
| State | New |
| Headers | show |
Pull-request
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v3.8/cleanup-headers-signedComments
On Friday 19 October 2012, Tony Lindgren wrote: > Hi Arnd & Olof, > > Here's the first set of omap plat header removal for v3.8 merge > window. I have at least one more related set coming, but I wanted > to get these into linux next before driver patches add more > things for me to chase down and fix. > > Oh, forgot to mention in the tag that the increase in diffstat > is mostly because plat-omap/clock shared clock code is duplicated > as that's also needed for the common clock framework patches > coming up. Hi Tony, This is very cool, great work! I'm sorry for taking so long before we processed them, I wasn't coordinating well with Olof for the last week. I've applied all of it to a new next/headers branch. I thought about using the next/cleanup branch, but since it touches a lot of files outside of arch/arm, I decided to keep it separate. We might decide to merge it later after all. I tried running my old multiplatform scripts again and have a few comments, but none of them serious: $ git grep include.*mach-omap2 arch/arm/plat-omap/debug-devices.c:#include "../mach-omap2/debug-devices.h" arch/arm/plat-omap/dma.c:#include "../mach-omap2/soc.h" arch/arm/plat-omap/dmtimer.c:#include "../mach-omap2/omap-pm.h" arch/arm/plat-omap/i2c.c:#include "../mach-omap2/soc.h" arch/arm/plat-omap/include/plat/cpu.h:#include "../../mach-omap2/soc.h" arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap_device.h" arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap-pm.h" arch/arm/plat-omap/sram.c:#include "../mach-omap2/soc.h" arch/arm/plat-omap/sram.c:#include "../mach-omap2/iomap.h" arch/arm/plat-omap/sram.c:#include "../mach-omap2/prm2xxx_3xxx.h" arch/arm/plat-omap/sram.c:#include "../mach-omap2/sdrc.h" I don't like the relative include paths too much. I would have preferred adding the mach-omap2/include/mach path in the plat-omap Makefile, but I suppose you want to leave it like it is now since you mention you have already built on top of it. drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/powerdomain.h> drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/clockdomain.h> drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/cm2xxx_3xxx.h> drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/prm-regbits-34xx.h> drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/cm-regbits-34xx.h> drivers/staging/tidspbridge/core/tiomap3430_pwr.c:#include <mach-omap2/prm-regbits-34xx.h> drivers/staging/tidspbridge/core/tiomap3430_pwr.c:#include <mach-omap2/cm-regbits-34xx.h> drivers/staging/tidspbridge/rmgr/drv_interface.c:#include <mach-omap2/omap3-opp.h> This code is broken now. I wonder whether it's time to remove it from staging since we now have rpmsg/remoteproc, rather than getting it to compile again. sound/soc/omap/am3517evm.c:#include <mach-omap2/hardware.h> sound/soc/omap/am3517evm.c:#include <mach-omap2/gpio.h> sound/soc/omap/ams-delta.c:#include <mach-omap2/board-ams-delta.h> sound/soc/omap/n810.c:#include <mach-omap2/hardware.h> sound/soc/omap/sdp3430.c:#include <mach-omap2/hardware.h> sound/soc/omap/sdp3430.c:#include <mach-omap2/gpio.h> sound/soc/omap/zoom2.c:#include <mach-omap2/hardware.h> sound/soc/omap/zoom2.c:#include <mach-omap2/gpio.h> sound/soc/omap/zoom2.c:#include <mach-omap2/board-zoom.h> Not sure if you were just missing these or if you already have other patch lined up for them. $ git grep include.*mach-omap1 drivers/video/omap/lcd_ams_delta.c:#include <mach-omap1/board-ams-delta.h> drivers/video/omap/lcd_inn1510.c:#include <mach-omap1/hardware.h> drivers/video/omap/lcd_osk.c:#include <mach-omap1/mux.h> drivers/video/omap/lcdc.c:#include <mach-omap1/lcdc.h> sound/soc/omap/osk5912.c:#include <mach-omap1/hardware.h> Same thing here. Arnd
* Arnd Bergmann <arnd@arndb.de> [121026 07:04]: > On Friday 19 October 2012, Tony Lindgren wrote: > > Hi Arnd & Olof, > > > > Here's the first set of omap plat header removal for v3.8 merge > > window. I have at least one more related set coming, but I wanted > > to get these into linux next before driver patches add more > > things for me to chase down and fix. > > > > Oh, forgot to mention in the tag that the increase in diffstat > > is mostly because plat-omap/clock shared clock code is duplicated > > as that's also needed for the common clock framework patches > > coming up. > > Hi Tony, > > This is very cool, great work! I'm sorry for taking so long before > we processed them, I wasn't coordinating well with Olof for the last > week. > > I've applied all of it to a new next/headers branch. I thought about > using the next/cleanup branch, but since it touches a lot of files > outside of arch/arm, I decided to keep it separate. We might decide > to merge it later after all. OK thanks, yes it's OK to keep it separate as I have few more pull requests coming to this as I get acks. It should all merge fine with other branches, let me know if that's not the case. > I tried running my old multiplatform scripts again and have a few > comments, but none of them serious: > > $ git grep include.*mach-omap2 > arch/arm/plat-omap/debug-devices.c:#include "../mach-omap2/debug-devices.h" > arch/arm/plat-omap/dma.c:#include "../mach-omap2/soc.h" > arch/arm/plat-omap/dmtimer.c:#include "../mach-omap2/omap-pm.h" > arch/arm/plat-omap/i2c.c:#include "../mach-omap2/soc.h" > arch/arm/plat-omap/include/plat/cpu.h:#include "../../mach-omap2/soc.h" > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap_device.h" > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap-pm.h" > arch/arm/plat-omap/sram.c:#include "../mach-omap2/soc.h" > arch/arm/plat-omap/sram.c:#include "../mach-omap2/iomap.h" > arch/arm/plat-omap/sram.c:#include "../mach-omap2/prm2xxx_3xxx.h" > arch/arm/plat-omap/sram.c:#include "../mach-omap2/sdrc.h" > > I don't like the relative include paths too much. I would have preferred > adding the mach-omap2/include/mach path in the plat-omap Makefile, but > I suppose you want to leave it like it is now since you mention you > have already built on top of it. Well I wanted to keep them local to arch/arm/*omap*/ directories, and not have them exposed at all for drivers. Other than that I don't have an issue using non-relative paths, except mach-omap2/include/mach traditionally has been exposed to drivers as the legacy #include <mach/*.h>, so IMHO local headers in the arch/arm/*omap*/ directories are better. But now I wonder if we can somehow have drivers not be able to include these local headers? > drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/powerdomain.h> > drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/clockdomain.h> > drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/cm2xxx_3xxx.h> > drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/prm-regbits-34xx.h> > drivers/staging/tidspbridge/core/_tiomap.h:#include <mach-omap2/cm-regbits-34xx.h> > drivers/staging/tidspbridge/core/tiomap3430_pwr.c:#include <mach-omap2/prm-regbits-34xx.h> > drivers/staging/tidspbridge/core/tiomap3430_pwr.c:#include <mach-omap2/cm-regbits-34xx.h> > drivers/staging/tidspbridge/rmgr/drv_interface.c:#include <mach-omap2/omap3-opp.h> > > This code is broken now. I wonder whether it's time to remove it from > staging since we now have rpmsg/remoteproc, rather than getting it to > compile again. Oh crap, I totally missed these :( The drivers _should_not_ include these files at all. Whatever they are doing with those includes is totally wrong and a bad layering violation. If it's not fixed, then yeah, I'd say let's just remove the breaking pieces. Let's give Omar and Laurent a quick chance to fix it up before dropping it though, I've added them to cc. > sound/soc/omap/am3517evm.c:#include <mach-omap2/hardware.h> > sound/soc/omap/am3517evm.c:#include <mach-omap2/gpio.h> > sound/soc/omap/ams-delta.c:#include <mach-omap2/board-ams-delta.h> > sound/soc/omap/n810.c:#include <mach-omap2/hardware.h> > sound/soc/omap/sdp3430.c:#include <mach-omap2/hardware.h> > sound/soc/omap/sdp3430.c:#include <mach-omap2/gpio.h> > sound/soc/omap/zoom2.c:#include <mach-omap2/hardware.h> > sound/soc/omap/zoom2.c:#include <mach-omap2/gpio.h> > sound/soc/omap/zoom2.c:#include <mach-omap2/board-zoom.h> > > Not sure if you were just missing these or if you already have other > patch lined up for them. In which branch do you see the above? I'm not seeing them in v3.7-rc2, looks like all sound/soc/omap/*.c files have already been fixed up. > $ git grep include.*mach-omap1 > drivers/video/omap/lcd_ams_delta.c:#include <mach-omap1/board-ams-delta.h> > drivers/video/omap/lcd_inn1510.c:#include <mach-omap1/hardware.h> > drivers/video/omap/lcd_osk.c:#include <mach-omap1/mux.h> > drivers/video/omap/lcdc.c:#include <mach-omap1/lcdc.h> > sound/soc/omap/osk5912.c:#include <mach-omap1/hardware.h> > > Same thing here. I'm not seeing these either, you're probably looking at some experimental branch modified with your automated scripts? In any case, let's not have #include <mach-omap1/*.h> or #include <mach-omap2/*.h> includes in the drivers, they are wrong. Those headers are meant to be local, the legacy shared headers should be in #include <mach/*.h>. Whatever needs to be passed from arch/arm/*omap*/ to drivers, should be done using include/linux/platform_data/*.h files. For omap1, we might as well keep the existing ones from #include <mach/*.h> as they are until somebody wants to fix up things properly for omap1 for CONFIG_MULTIPLATFORM. Regards, Tony
On Friday 26 October 2012, Tony Lindgren wrote: > * Arnd Bergmann <arnd@arndb.de> [121026 07:04]: > > > I tried running my old multiplatform scripts again and have a few > > comments, but none of them serious: > > > > $ git grep include.*mach-omap2 > > arch/arm/plat-omap/debug-devices.c:#include "../mach-omap2/debug-devices.h" > > arch/arm/plat-omap/dma.c:#include "../mach-omap2/soc.h" > > arch/arm/plat-omap/dmtimer.c:#include "../mach-omap2/omap-pm.h" > > arch/arm/plat-omap/i2c.c:#include "../mach-omap2/soc.h" > > arch/arm/plat-omap/include/plat/cpu.h:#include "../../mach-omap2/soc.h" > > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap_device.h" > > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap-pm.h" > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/soc.h" > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/iomap.h" > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/prm2xxx_3xxx.h" > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/sdrc.h" > > > > I don't like the relative include paths too much. I would have preferred > > adding the mach-omap2/include/mach path in the plat-omap Makefile, but > > I suppose you want to leave it like it is now since you mention you > > have already built on top of it. > > Well I wanted to keep them local to arch/arm/*omap*/ directories, > and not have them exposed at all for drivers. > > Other than that I don't have an issue using non-relative paths, except > mach-omap2/include/mach traditionally has been exposed to drivers > as the legacy #include <mach/*.h>, so IMHO local headers in the > arch/arm/*omap*/ directories are better. > > But now I wonder if we can somehow have drivers not be able to > include these local headers? Well, once CONFIG_MULTIPLATFORM gets enabled, the mach/*.h files are not visible to drivers any more, but they are still visible to files in plat-omap if you add a line like ccflags-$(CONFIG_ARCH_OMAP2) := -I$(srctree)/arch/arm/mach-omap2/include ccflags-$(CONFIG_ARCH_OMAP1) := -I$(srctree)/arch/arm/mach-omap1/include to arch/arm/plat-omap/Makefile. That is how the other multiplatform Makefiles do it. If a driver writer really wants to cheat, they can of course do the same thing in their directory, but they can also do #include "../../../../arch/arm/mach-omap2/foo.h" > > sound/soc/omap/am3517evm.c:#include <mach-omap2/hardware.h> > > sound/soc/omap/am3517evm.c:#include <mach-omap2/gpio.h> > > sound/soc/omap/ams-delta.c:#include <mach-omap2/board-ams-delta.h> > > sound/soc/omap/n810.c:#include <mach-omap2/hardware.h> > > sound/soc/omap/sdp3430.c:#include <mach-omap2/hardware.h> > > sound/soc/omap/sdp3430.c:#include <mach-omap2/gpio.h> > > sound/soc/omap/zoom2.c:#include <mach-omap2/hardware.h> > > sound/soc/omap/zoom2.c:#include <mach-omap2/gpio.h> > > sound/soc/omap/zoom2.c:#include <mach-omap2/board-zoom.h> > > > > Not sure if you were just missing these or if you already have other > > patch lined up for them. > > In which branch do you see the above? > > I'm not seeing them in v3.7-rc2, looks like all sound/soc/omap/*.c > files have already been fixed up. I am looking at the arm-soc for-next branch, which is based on v3.7-rc2. Note that before my script, this reads #include <mach/hardware.h> not #include <mach-omap2/hardware.h> but the effect is the same if the file is not available. > In any case, let's not have #include <mach-omap1/*.h> or > #include <mach-omap2/*.h> includes in the drivers, they are > wrong. Those headers are meant to be local, the legacy shared > headers should be in #include <mach/*.h>. Whatever needs to > be passed from arch/arm/*omap*/ to drivers, should be done > using include/linux/platform_data/*.h files. I'm not suggesting to use mach-omap2/*.h, it's just what my old script shows when hunting for platform header files that are used in device drivers. > For omap1, we might as well keep the existing ones from > #include <mach/*.h> as they are until somebody wants to fix > up things properly for omap1 for CONFIG_MULTIPLATFORM. Fair enough. Arnd
* Arnd Bergmann <arnd@arndb.de> [121026 10:30]: > On Friday 26 October 2012, Tony Lindgren wrote: > > * Arnd Bergmann <arnd@arndb.de> [121026 07:04]: > > > > > I tried running my old multiplatform scripts again and have a few > > > comments, but none of them serious: > > > > > > $ git grep include.*mach-omap2 > > > arch/arm/plat-omap/debug-devices.c:#include "../mach-omap2/debug-devices.h" > > > arch/arm/plat-omap/dma.c:#include "../mach-omap2/soc.h" > > > arch/arm/plat-omap/dmtimer.c:#include "../mach-omap2/omap-pm.h" > > > arch/arm/plat-omap/i2c.c:#include "../mach-omap2/soc.h" > > > arch/arm/plat-omap/include/plat/cpu.h:#include "../../mach-omap2/soc.h" > > > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap_device.h" > > > arch/arm/plat-omap/omap-pm-noop.c:#include "../mach-omap2/omap-pm.h" > > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/soc.h" > > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/iomap.h" > > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/prm2xxx_3xxx.h" > > > arch/arm/plat-omap/sram.c:#include "../mach-omap2/sdrc.h" > > > > > > I don't like the relative include paths too much. I would have preferred > > > adding the mach-omap2/include/mach path in the plat-omap Makefile, but > > > I suppose you want to leave it like it is now since you mention you > > > have already built on top of it. > > > > Well I wanted to keep them local to arch/arm/*omap*/ directories, > > and not have them exposed at all for drivers. > > > > Other than that I don't have an issue using non-relative paths, except > > mach-omap2/include/mach traditionally has been exposed to drivers > > as the legacy #include <mach/*.h>, so IMHO local headers in the > > arch/arm/*omap*/ directories are better. > > > > But now I wonder if we can somehow have drivers not be able to > > include these local headers? > > Well, once CONFIG_MULTIPLATFORM gets enabled, the mach/*.h files are > not visible to drivers any more, but they are still visible to files > in plat-omap if you add a line like > > ccflags-$(CONFIG_ARCH_OMAP2) := -I$(srctree)/arch/arm/mach-omap2/include > ccflags-$(CONFIG_ARCH_OMAP1) := -I$(srctree)/arch/arm/mach-omap1/include > > to arch/arm/plat-omap/Makefile. That is how the other multiplatform > Makefiles do it. If a driver writer really wants to cheat, they can of > course do the same thing in their directory, but they can also do > #include "../../../../arch/arm/mach-omap2/foo.h" OK thanks for clarifying that. Sounds like that can be used to fix up the relative includes for plat-omap. I'll do some patches for that after we have the #include <plat/*.h> and #include <mach/*.h> issue sorted out. > > > sound/soc/omap/am3517evm.c:#include <mach-omap2/hardware.h> > > > sound/soc/omap/am3517evm.c:#include <mach-omap2/gpio.h> > > > sound/soc/omap/ams-delta.c:#include <mach-omap2/board-ams-delta.h> > > > sound/soc/omap/n810.c:#include <mach-omap2/hardware.h> > > > sound/soc/omap/sdp3430.c:#include <mach-omap2/hardware.h> > > > sound/soc/omap/sdp3430.c:#include <mach-omap2/gpio.h> > > > sound/soc/omap/zoom2.c:#include <mach-omap2/hardware.h> > > > sound/soc/omap/zoom2.c:#include <mach-omap2/gpio.h> > > > sound/soc/omap/zoom2.c:#include <mach-omap2/board-zoom.h> > > > > > > Not sure if you were just missing these or if you already have other > > > patch lined up for them. > > > > In which branch do you see the above? > > > > I'm not seeing them in v3.7-rc2, looks like all sound/soc/omap/*.c > > files have already been fixed up. > > I am looking at the arm-soc for-next branch, which is based on v3.7-rc2. > > Note that before my script, this reads > > #include <mach/hardware.h> > > not > > #include <mach-omap2/hardware.h> > > but the effect is the same if the file is not available. Well for omap2+, drivers should no longer include anything with #include <mach/*.h> (or #include <mach-omap2/hardware.h>) and the drivers should be fixed instead. For omap2+, mach/hardware.h is empty now. It still needs to be included for omap1, so that might require some conditional includes for the shared code between omap1 and omap2+ like sound/soc/omap/*mcbsp*.c. And that code should just be able to use platform_data for omap1, and not need hardware.h either eventually. AFAIK, all the sound/soc/omap/*.c files are almost fixed up for omap2+, so let's not change those includes in arm-soc tree as that will just cause conflicts. All the remaining #include <mach/*.h> and #include <plat/*.h> under sound/soc/omap can eventually be just removed for omap2+. For omap1, we can just leave them as they are for now. Those are the sound/soc/omap/ams-delta.c and sound/soc/omap/osk5912.c files for omap1. > > In any case, let's not have #include <mach-omap1/*.h> or > > #include <mach-omap2/*.h> includes in the drivers, they are > > wrong. Those headers are meant to be local, the legacy shared > > headers should be in #include <mach/*.h>. Whatever needs to > > be passed from arch/arm/*omap*/ to drivers, should be done > > using include/linux/platform_data/*.h files. > > I'm not suggesting to use mach-omap2/*.h, it's just what my > old script shows when hunting for platform header files that are > used in device drivers. OK makes sense :) Well we should no have any of them after v3.8 merge window except for the legacy ones for omap1. Your script found a real issue though, and that's the tidspbridge include of private headers from mach-omap2! That's something that needs to be fixed or removed to cut the dependency between core omap code and device drivers. > > For omap1, we might as well keep the existing ones from > > #include <mach/*.h> as they are until somebody wants to fix > > up things properly for omap1 for CONFIG_MULTIPLATFORM. > > Fair enough. Sounds good. Tony
On Friday 26 October 2012, Tony Lindgren wrote: > Here's a patch for that. It's against what I have queued up in > omap-for-v3.8/cleanup-headers. Does that look OK to you? Hi Tony, thanks for the quick follow-up. Using the absolute #include statements again looks good, but now there is another problem: > diff --git a/arch/arm/mach-omap1/Makefile b/arch/arm/mach-omap1/Makefile > index cd169c3..03b1e80 100644 > --- a/arch/arm/mach-omap1/Makefile > +++ b/arch/arm/mach-omap1/Makefile > @@ -2,6 +2,8 @@ > # Makefile for the linux kernel. > # > > +ccflags-$(CONFIG_ARCH_OMAP) := -I$(srctree)/arch/arm > + This is not what I meant, I don't think we want to have the entire arch/arm/ hierarchy visible in platform directories. Instead, I thought we'd keep using the existing arch/arm/mach-$foo/include/mach directories that are currently visible to all files and make them available only to platforms that explicitly add -I$(srctree)/arch/arm/include/mach-$foo/include to their local include path. This of course requires moving all those headers back to where they just came from. Arnd
On Fri, Oct 26, 2012 at 03:38:49PM -0700, Tony Lindgren wrote: > * Tony Lindgren <tony@atomide.com> [121026 10:57]: > > * Arnd Bergmann <arnd@arndb.de> [121026 10:30]: > > > > > > Well, once CONFIG_MULTIPLATFORM gets enabled, the mach/*.h files are > > > not visible to drivers any more, but they are still visible to files > > > in plat-omap if you add a line like > > > > > > ccflags-$(CONFIG_ARCH_OMAP2) := -I$(srctree)/arch/arm/mach-omap2/include > > > ccflags-$(CONFIG_ARCH_OMAP1) := -I$(srctree)/arch/arm/mach-omap1/include > > > > > > to arch/arm/plat-omap/Makefile. That is how the other multiplatform > > > Makefiles do it. If a driver writer really wants to cheat, they can of > > > course do the same thing in their directory, but they can also do > > > #include "../../../../arch/arm/mach-omap2/foo.h" > > > > OK thanks for clarifying that. Sounds like that can be used to > > fix up the relative includes for plat-omap. I'll do some patches > > for that after we have the #include <plat/*.h> and #include <mach/*.h> > > issue sorted out. > > Here's a patch for that. It's against what I have queued up in > omap-for-v3.8/cleanup-headers. Does that look OK to you? > > Regards, > > Tony > > > From: Tony Lindgren <tony@atomide.com> > Date: Fri, 26 Oct 2012 15:06:40 -0700 > Subject: [PATCH] ARM: OMAP: Fix relative includes for plat-omap with ccflags > > As suggested by Arnd Bergmann <arnd@arndb.de>, we can keep > these headers local to arch/arm/*omap*/ by modifying the > ccflags in plat/omap/Makefile. > > Note that eventually even most of these will go away > as things like SRAM and PRCM become just regular device > drivers. > > Also note that this will not fix plat/cpu.h, but that > will be removed anyways as soon as the drivers are > fixed. > > While at it, also sort the includes the standard way. > > Signed-off-by: Tony Lindgren <tony@atomide.com> > > diff --git a/arch/arm/mach-omap1/Makefile b/arch/arm/mach-omap1/Makefile > index cd169c3..03b1e80 100644 > --- a/arch/arm/mach-omap1/Makefile > +++ b/arch/arm/mach-omap1/Makefile > @@ -2,6 +2,8 @@ > # Makefile for the linux kernel. > # > > +ccflags-$(CONFIG_ARCH_OMAP) := -I$(srctree)/arch/arm > + Rather than moving all the files from plat-omap/include/plat into plat-omap and then having all these totally disgusting relative includes, why don't you add to these makefiles: ccflags += -I$(srctree)/arch/arm/plat-omap/include and avoid all that include moving and all the include name fixup?
* Arnd Bergmann <arnd@arndb.de> [121027 01:11]: > On Friday 26 October 2012, Tony Lindgren wrote: > > Here's a patch for that. It's against what I have queued up in > > omap-for-v3.8/cleanup-headers. Does that look OK to you? > > Hi Tony, > > thanks for the quick follow-up. Using the absolute #include statements > again looks good, but now there is another problem: > > > diff --git a/arch/arm/mach-omap1/Makefile b/arch/arm/mach-omap1/Makefile > > index cd169c3..03b1e80 100644 > > --- a/arch/arm/mach-omap1/Makefile > > +++ b/arch/arm/mach-omap1/Makefile > > @@ -2,6 +2,8 @@ > > # Makefile for the linux kernel. > > # > > > > +ccflags-$(CONFIG_ARCH_OMAP) := -I$(srctree)/arch/arm > > + > > This is not what I meant, I don't think we want to have the entire > arch/arm/ hierarchy visible in platform directories. Instead, I thought > we'd keep using the existing arch/arm/mach-$foo/include/mach directories > that are currently visible to all files and make them available only > to platforms that explicitly add -I$(srctree)/arch/arm/include/mach-$foo/include > to their local include path. > > This of course requires moving all those headers back to where they just came > from. OK I'll take a look. Most of them should be local to mach-omap2, so it may not be that bad with the file moves. Regards, Tony
* Russell King - ARM Linux <linux@arm.linux.org.uk> [121027 02:03]: > > Rather than moving all the files from plat-omap/include/plat into plat-omap > and then having all these totally disgusting relative includes, why don't > you add to these makefiles: > > ccflags += -I$(srctree)/arch/arm/plat-omap/include > > and avoid all that include moving and all the include name fixup? I'll take a look. Most of these headers should be local, so it should not be too many files to move for plat-omap to fix this. Regards, Tony
* Tony Lindgren <tony@atomide.com> [121027 09:34]: > * Russell King - ARM Linux <linux@arm.linux.org.uk> [121027 02:03]: > > > > Rather than moving all the files from plat-omap/include/plat into plat-omap > > and then having all these totally disgusting relative includes, why don't > > you add to these makefiles: > > > > ccflags += -I$(srctree)/arch/arm/plat-omap/include > > > > and avoid all that include moving and all the include name fixup? > > I'll take a look. Most of these headers should be local, > so it should not be too many files to move for plat-omap > to fix this. Posted a series to fix the issue with relative includes as "[PATCH 00/11] Fix relative includes for omaps introduced by recent clean-up". Regards, Tony
Hi Arnd & Olof, Here's the first set of omap plat header removal for v3.8 merge window. I have at least one more related set coming, but I wanted to get these into linux next before driver patches add more things for me to chase down and fix. Oh, forgot to mention in the tag that the increase in diffstat is mostly because plat-omap/clock shared clock code is duplicated as that's also needed for the common clock framework patches coming up. Regards, Tony The following changes since commit ddffeb8c4d0331609ef2581d84de4d763607bd37: Linux 3.7-rc1 (2012-10-14 14:41:04 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap tags/omap-for-v3.8/cleanup-headers-signed for you to fetch changes up to e4c060db2c13f10de09101afc564763f9fd0019a: ARM: OMAP: Split plat/cpu.h into local soc.h for mach-omap1 and mach-omap2 (2012-10-18 16:23:46 -0700) ---------------------------------------------------------------- This is the first set of omap cleanup patches for v3.8 merge window to remove most of the remaining plat includes to get us closer to ARM common zImage support. To avoid a huge amount of trivial merge conflicts with includes, this branch is based on several small topic branches coordinated with the driver subsystem maintainers. These branches are based on v3.7-rc1 and can also be merged into the related driver subsystem branches as needed: omap-for-v3.8/cleanup-headers-prepare few trivial driver changes omap-for-v3.8/cleanup-headers-dma move of the DMA header omap-for-v3.8/cleanup-headers-gpmc GPMC and MTD changes omap-for-v3.8/cleanup-headers-mmc MMC related changes omap-for-v3.8/cleanup-headers-dss DSS related changes omap-for-v3.8/cleanup-headers-asoc ASoC related changes Note that for the dma-omap.h, it was decided that it should be is completed. For the related discussion, please see: https://patchwork.kernel.org/patch/1519591/# After these patches we still have a few plat headers remaining that will be handled in later pull requests. ---------------------------------------------------------------- Afzal Mohammed (16): ARM: OMAP2+: nand: unify init functions ARM: OMAP2+: onenand: refactor for clarity ARM: OMAP2+: gpmc: remove cs# in sync clk div calc mtd: onenand: omap: cleanup gpmc dependency mtd: nand: omap: free region as per resource size mtd: nand: omap: read nand using register address ARM: OMAP2+: onenand: connected soc info in pdata mtd: onenand: omap: use pdata info instead of cpu_is ARM: OMAP2+: onenand: header cleanup ARM: OMAP2+: nand: header cleanup mtd: nand: omap: bring in gpmc nand macros ARM: OMAP2+: nand: bch capability check ARM: OMAP2+: gpmc: nand register helper bch update mtd: nand: omap: handle gpmc bch[48] ARM: OMAP2+: gpmc: remove exported nand functions ARM: OMAP2+: gpmc: localize gpmc header Jon Hunter (1): ARM: OMAP2+: GPMC: Remove unused OneNAND get_freq() platform function Lokesh Vutla (7): ARM: OMAP: DMA: Removing plat/dma-44xx.h ARM: OMAP1: DMA: Moving OMAP1 DMA channel definitions to mach-omap1 ARM: OMAP2+: DMA: Moving OMAP2+ DMA channel definitions to mach-omap2 ARM: OMAP: DMA: Move plat/dma.h to plat-omap/dma-omap.h ARM: OMAP1: Remove omap_reserve() callback for all omap1 boards ARM: OMAP2+: Move omap_reserve() locally to mach-omap2 ARM: OMAP: Move plat/omap-secure.h locally to mach-omap2 Paul Walmsley (5): staging: tidspbridge: remove unnecessary include of <plat/clock.h> ARM: OMAP: move plat-omap/include/plat/sdrc.h into mach-omap2/sdrc.h ARM: OMAP: duplicate plat-omap/clock.c into mach-omap[12]/clock.c ARM: OMAP: remove plat/clock.h ARM: OMAP: clock: split plat/clkdev_omap.h into OMAP1/2 files Peter Ujfalusi (2): ASoC: omap-abe-twl6040: Fix typo of Vibrator ASoC: omap-mcpdm: Remove OMAP revision check Tomi Valkeinen (11): OMAPDSS: add omapdss_version OMAPDSS: use omapdss_version in dss_features.c OMAPDSS: DISPC: use omapdss_version OMAPDSS: DSS: use omapdss_version OMAPDSS: HDMI: use omapdss_version OMAPDSS: remove <plat/cpu.h> includes OMAP: VRFB: convert vrfb to platform device OMAP: move arch/arm/plat-omap/include/plat/vrfb.h OMAP: SDRC: remove VRFB code OMAPDSS: VRFB: add omap_vrfb_supported() OMAPFB: use omap_vrfb_supported() Tony Lindgren (23): ASoC: Fix wrong include for McPDM ARM: OMAP: Split plat/mmc.h into local headers and platform_data mmc: omap: Remove cpu_is_omap usage from the driver ARM: OMAP: Trivial driver changes to remove include plat/cpu.h Merge tag 'gpmc-czimage' of git://gitorious.org/x0148406-public/linux-kernel into omap-for-v3.8/cleanup-headers-gpmc Merge remote-tracking branch 'tomi/3.8/vrfb-conversion' into omap-for-v3.8/cleanup-headers-dss Merge branch 'omap-for-v3.8/cleanup-headers-dma' into omap-for-v3.8/cleanup-headers Merge branch 'omap-for-v3.8/cleanup-headers-gpmc' into omap-for-v3.8/cleanup-headers Merge branch 'omap-for-v3.8/cleanup-headers-mmc' into omap-for-v3.8/cleanup-headers Merge branch 'omap-for-v3.8/cleanup-headers-dss' into omap-for-v3.8/cleanup-headers ARM: OMAP: Make plat/fpga.h local to arch/arm/plat-omap ARM: OMAP1: Move plat/tc.h to mach/tc.h for omap1 ARM: OMAP2+: Make board-zoom.h local ARM: OMAP: Split plat-omap/i2c.c into mach-omap1 and mach-omap2 ARM: OMAP: Make plat/common.h local to mach-omap1 and mach-omap2 ARM: OMAP: Move plat/led.h to include/linux/platform_data ARM: OMAP: Make plat/sram.h local to plat-omap ARM: OMAP: Make omap_device local to mach-omap2 Merge branch 'omap-for-v3.8/cleanup-headers-asoc' into omap-for-v3.8/cleanup-headers ARM: OMAP: Make plat/omap_hwmod.h local to mach-omap2 ARM: OMAP: Merge plat/multi.h into plat/cpu.h ARM: OMAP: Make plat/omap-pm.h local to mach-omap2 ARM: OMAP: Split plat/cpu.h into local soc.h for mach-omap1 and mach-omap2 arch/arm/mach-omap1/board-ams-delta.c | 1 - arch/arm/mach-omap1/board-fsample.c | 9 +- arch/arm/mach-omap1/board-generic.c | 1 - arch/arm/mach-omap1/board-h2-mmc.c | 5 +- arch/arm/mach-omap1/board-h2.c | 6 +- arch/arm/mach-omap1/board-h3-mmc.c | 3 +- arch/arm/mach-omap1/board-h3.c | 5 +- arch/arm/mach-omap1/board-htcherald.c | 3 +- arch/arm/mach-omap1/board-innovator.c | 31 +- arch/arm/mach-omap1/board-nokia770.c | 5 +- arch/arm/mach-omap1/board-osk.c | 3 +- arch/arm/mach-omap1/board-palmte.c | 6 +- arch/arm/mach-omap1/board-palmtt.c | 8 +- arch/arm/mach-omap1/board-palmz71.c | 6 +- arch/arm/mach-omap1/board-perseus2.c | 9 +- arch/arm/mach-omap1/board-sx1-mmc.c | 3 +- arch/arm/mach-omap1/board-sx1.c | 6 +- arch/arm/mach-omap1/board-voiceblue.c | 3 +- arch/arm/mach-omap1/clock.c | 506 +++++++++++++++++- arch/arm/mach-omap1/clock.h | 178 ++++++- arch/arm/mach-omap1/clock_data.c | 17 +- arch/arm/mach-omap1/common.h | 6 +- arch/arm/mach-omap1/devices.c | 15 +- arch/arm/mach-omap1/dma.c | 6 +- arch/arm/mach-omap1/dma.h | 83 +++ arch/arm/mach-omap1/flash.c | 2 +- arch/arm/mach-omap1/fpga.c | 2 +- arch/arm/mach-omap1/i2c.c | 61 ++- arch/arm/mach-omap1/id.c | 2 +- arch/arm/mach-omap1/include/mach/hardware.h | 4 +- arch/arm/mach-omap1/include/mach/memory.h | 2 +- arch/arm/mach-omap1/include/mach/omap1510.h | 113 ++++ .../include/plat => mach-omap1/include/mach}/tc.h | 0 arch/arm/mach-omap1/io.c | 4 +- arch/arm/mach-omap1/irq.c | 2 +- arch/arm/mach-omap1/lcd_dma.c | 4 +- arch/arm/mach-omap1/mcbsp.c | 5 +- arch/arm/mach-omap1/mmc.h | 18 + arch/arm/mach-omap1/opp_data.c | 2 +- arch/arm/mach-omap1/pm.c | 10 +- arch/arm/mach-omap1/pm_bus.c | 3 - arch/arm/mach-omap1/serial.c | 1 - arch/arm/mach-omap1/soc.h | 229 ++++++++ arch/arm/mach-omap2/Makefile | 3 +- arch/arm/mach-omap2/am35xx-emac.c | 2 +- arch/arm/mach-omap2/board-2430sdp.c | 2 +- arch/arm/mach-omap2/board-3430sdp.c | 5 +- arch/arm/mach-omap2/board-3630sdp.c | 2 +- arch/arm/mach-omap2/board-4430sdp.c | 2 +- arch/arm/mach-omap2/board-apollon.c | 4 +- arch/arm/mach-omap2/board-cm-t35.c | 5 +- arch/arm/mach-omap2/board-cm-t3517.c | 5 +- arch/arm/mach-omap2/board-devkit8000.c | 10 +- arch/arm/mach-omap2/board-flash.c | 52 +- arch/arm/mach-omap2/board-flash.h | 8 +- arch/arm/mach-omap2/board-h4.c | 4 +- arch/arm/mach-omap2/board-igep0020.c | 5 +- arch/arm/mach-omap2/board-ldp.c | 8 +- arch/arm/mach-omap2/board-n8x0.c | 3 +- arch/arm/mach-omap2/board-omap3beagle.c | 13 +- arch/arm/mach-omap2/board-omap3evm.c | 9 +- arch/arm/mach-omap2/board-omap3logic.c | 5 +- arch/arm/mach-omap2/board-omap3pandora.c | 3 +- arch/arm/mach-omap2/board-omap3stalker.c | 2 +- arch/arm/mach-omap2/board-omap3touchbook.c | 10 +- arch/arm/mach-omap2/board-omap4panda.c | 2 +- arch/arm/mach-omap2/board-overo.c | 9 +- arch/arm/mach-omap2/board-rm680.c | 6 +- arch/arm/mach-omap2/board-rx51-peripherals.c | 7 +- arch/arm/mach-omap2/board-rx51.c | 6 +- arch/arm/mach-omap2/board-zoom-debugboard.c | 4 +- arch/arm/mach-omap2/board-zoom-display.c | 3 +- arch/arm/mach-omap2/board-zoom-peripherals.c | 2 +- arch/arm/mach-omap2/board-zoom.c | 7 +- .../arm/mach-omap2/{include/mach => }/board-zoom.h | 0 arch/arm/mach-omap2/clkt2xxx_apll.c | 1 - arch/arm/mach-omap2/clkt2xxx_dpll.c | 2 - arch/arm/mach-omap2/clkt2xxx_dpllcore.c | 5 +- arch/arm/mach-omap2/clkt2xxx_osc.c | 2 - arch/arm/mach-omap2/clkt2xxx_sys.c | 2 - arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c | 5 +- arch/arm/mach-omap2/clkt34xx_dpll3m2.c | 4 +- arch/arm/mach-omap2/clkt_clksel.c | 2 - arch/arm/mach-omap2/clkt_dpll.c | 2 - arch/arm/mach-omap2/clkt_iclk.c | 1 - arch/arm/mach-omap2/clock.c | 518 ++++++++++++++++++- arch/arm/mach-omap2/clock.h | 317 +++++++++++- arch/arm/mach-omap2/clock2420_data.c | 4 - arch/arm/mach-omap2/clock2430.c | 2 - arch/arm/mach-omap2/clock2430_data.c | 4 - arch/arm/mach-omap2/clock2xxx.c | 2 - arch/arm/mach-omap2/clock33xx_data.c | 5 +- arch/arm/mach-omap2/clock34xx.c | 2 - arch/arm/mach-omap2/clock3517.c | 2 - arch/arm/mach-omap2/clock36xx.c | 2 - arch/arm/mach-omap2/clock3xxx.c | 2 - arch/arm/mach-omap2/clock3xxx_data.c | 4 - arch/arm/mach-omap2/clock44xx_data.c | 4 - arch/arm/mach-omap2/clockdomain.c | 3 +- arch/arm/mach-omap2/clockdomain.h | 5 +- arch/arm/mach-omap2/clockdomain2xxx_3xxx.c | 2 + arch/arm/mach-omap2/clockdomains2420_data.c | 1 + arch/arm/mach-omap2/clockdomains2430_data.c | 1 + arch/arm/mach-omap2/clockdomains3xxx_data.c | 1 + arch/arm/mach-omap2/cm33xx.c | 2 +- arch/arm/mach-omap2/common-board-devices.c | 46 -- arch/arm/mach-omap2/common-board-devices.h | 1 - arch/arm/mach-omap2/common.c | 22 +- arch/arm/mach-omap2/common.h | 9 +- arch/arm/mach-omap2/control.c | 4 +- arch/arm/mach-omap2/devices.c | 8 +- arch/arm/mach-omap2/display.c | 45 +- arch/arm/mach-omap2/dma.c | 8 +- arch/arm/mach-omap2/dma.h | 131 +++++ arch/arm/mach-omap2/dpll3xxx.c | 2 - arch/arm/mach-omap2/dpll44xx.c | 2 - arch/arm/mach-omap2/drm.c | 4 +- arch/arm/mach-omap2/dsp.c | 2 +- arch/arm/mach-omap2/gpio.c | 6 +- arch/arm/mach-omap2/gpmc-nand.c | 85 +-- arch/arm/mach-omap2/gpmc-nand.h | 27 + arch/arm/mach-omap2/gpmc-onenand.c | 214 ++++---- arch/arm/mach-omap2/gpmc-onenand.h | 24 + arch/arm/mach-omap2/gpmc-smc91x.c | 2 +- arch/arm/mach-omap2/gpmc-smsc911x.c | 2 +- arch/arm/mach-omap2/gpmc.c | 464 +---------------- .../{plat-omap/include/plat => mach-omap2}/gpmc.h | 61 +-- arch/arm/mach-omap2/hdq1w.c | 4 +- arch/arm/mach-omap2/hdq1w.h | 2 +- arch/arm/mach-omap2/hsmmc.c | 7 +- arch/arm/mach-omap2/hwspinlock.c | 4 +- arch/arm/mach-omap2/i2c.c | 53 +- .../{plat-omap/include/plat => mach-omap2}/i2c.h | 25 +- arch/arm/mach-omap2/io.c | 12 +- arch/arm/mach-omap2/mcbsp.c | 7 +- arch/arm/mach-omap2/mmc.h | 23 + arch/arm/mach-omap2/msdi.c | 7 +- arch/arm/mach-omap2/mux.c | 3 +- arch/arm/mach-omap2/omap-mpuss-lowpower.c | 1 + .../include/plat => mach-omap2}/omap-pm.h | 0 arch/arm/mach-omap2/omap-secure.c | 1 - arch/arm/mach-omap2/omap-secure.h | 7 + arch/arm/mach-omap2/omap4-common.c | 7 +- arch/arm/{plat-omap => mach-omap2}/omap_device.c | 5 +- .../include/plat => mach-omap2}/omap_device.h | 2 +- arch/arm/mach-omap2/omap_hwmod.c | 4 +- .../include/plat => mach-omap2}/omap_hwmod.h | 1 - arch/arm/mach-omap2/omap_hwmod_2420_data.c | 12 +- arch/arm/mach-omap2/omap_hwmod_2430_data.c | 12 +- .../omap_hwmod_2xxx_3xxx_interconnect_data.c | 3 +- .../mach-omap2/omap_hwmod_2xxx_3xxx_ipblock_data.c | 10 +- .../mach-omap2/omap_hwmod_2xxx_interconnect_data.c | 3 +- arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c | 5 +- arch/arm/mach-omap2/omap_hwmod_33xx_data.c | 10 +- arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 13 +- arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 13 +- arch/arm/mach-omap2/omap_hwmod_common_data.c | 2 +- arch/arm/mach-omap2/omap_hwmod_common_data.h | 2 +- arch/arm/mach-omap2/omap_opp_data.h | 2 +- arch/arm/mach-omap2/omap_twl.c | 1 + arch/arm/mach-omap2/opp.c | 2 +- arch/arm/mach-omap2/opp3xxx_data.c | 1 + arch/arm/mach-omap2/pm-debug.c | 5 +- arch/arm/mach-omap2/pm.c | 5 +- arch/arm/mach-omap2/pm24xx.c | 8 +- arch/arm/mach-omap2/pm34xx.c | 9 +- arch/arm/mach-omap2/pm44xx.c | 1 + arch/arm/mach-omap2/pmu.c | 5 +- arch/arm/mach-omap2/powerdomain.h | 2 - arch/arm/mach-omap2/powerdomains2xxx_data.c | 1 + arch/arm/mach-omap2/prcm.c | 1 + arch/arm/mach-omap2/prm33xx.c | 2 +- arch/arm/mach-omap2/prm_common.c | 2 +- arch/arm/mach-omap2/sdram-hynix-h8mbx00u0mer-0em.h | 2 +- arch/arm/mach-omap2/sdram-micron-mt46h32m32lf-6.h | 2 +- arch/arm/mach-omap2/sdram-nokia.c | 4 +- arch/arm/mach-omap2/sdram-numonyx-m65kxxxxam.h | 2 +- .../mach-omap2/sdram-qimonda-hyb18m512160af-6.h | 2 +- arch/arm/mach-omap2/sdrc.c | 23 +- arch/arm/mach-omap2/sdrc.h | 146 +++++- arch/arm/mach-omap2/sdrc2xxx.c | 4 +- arch/arm/mach-omap2/serial.c | 11 +- arch/arm/mach-omap2/sleep34xx.S | 2 +- arch/arm/mach-omap2/soc.h | 468 ++++++++++++++++- arch/arm/mach-omap2/sr_device.c | 4 +- arch/arm/mach-omap2/timer.c | 6 +- arch/arm/mach-omap2/twl-common.c | 1 - arch/arm/mach-omap2/usb-host.c | 3 +- arch/arm/mach-omap2/usb-musb.c | 5 +- arch/arm/mach-omap2/usb-tusb6010.c | 2 +- arch/arm/mach-omap2/wd_timer.c | 2 +- arch/arm/mach-omap2/wd_timer.h | 2 +- arch/arm/plat-omap/Makefile | 3 +- arch/arm/plat-omap/clock.c | 544 -------------------- arch/arm/plat-omap/common.c | 25 +- arch/arm/plat-omap/{include/plat => }/common.h | 10 +- arch/arm/plat-omap/counter_32k.c | 3 +- arch/arm/plat-omap/debug-leds.c | 2 +- arch/arm/plat-omap/dma.c | 30 +- arch/arm/plat-omap/dmtimer.c | 3 +- arch/arm/plat-omap/fb.c | 61 +++ arch/arm/plat-omap/fpga.h | 74 +++ arch/arm/plat-omap/i2c.c | 133 +---- arch/arm/plat-omap/i2c.h | 47 ++ .../include/{plat/dma.h => plat-omap/dma-omap.h} | 181 +------ arch/arm/plat-omap/include/plat/clkdev_omap.h | 51 -- arch/arm/plat-omap/include/plat/clock.h | 309 ----------- arch/arm/plat-omap/include/plat/cpu.h | 468 +---------------- arch/arm/plat-omap/include/plat/dma-44xx.h | 147 ------ arch/arm/plat-omap/include/plat/fpga.h | 193 ------- arch/arm/plat-omap/include/plat/multi.h | 120 ----- arch/arm/plat-omap/include/plat/omap-secure.h | 14 - arch/arm/plat-omap/include/plat/sdrc.h | 164 ------ arch/arm/plat-omap/include/plat/sram.h | 105 ---- arch/arm/plat-omap/omap-pm-noop.c | 5 +- arch/arm/plat-omap/sram.c | 4 +- arch/arm/plat-omap/sram.h | 109 +++- drivers/char/hw_random/omap-rng.c | 2 - drivers/crypto/omap-aes.c | 8 +- drivers/crypto/omap-sham.c | 10 +- drivers/dma/omap-dma.c | 11 +- drivers/media/platform/omap/omap_vout.c | 4 +- drivers/media/platform/omap/omap_vout_vrfb.c | 6 +- drivers/media/platform/omap/omap_voutdef.h | 2 +- drivers/media/platform/omap3isp/isphist.c | 2 + drivers/media/platform/omap3isp/ispstat.h | 2 +- drivers/media/platform/soc_camera/omap1_camera.c | 3 +- drivers/media/rc/ir-rx51.c | 1 - drivers/mmc/host/omap.c | 35 +- drivers/mmc/host/omap_hsmmc.c | 4 +- drivers/mtd/nand/omap2.c | 129 ++++- drivers/mtd/onenand/omap2.c | 11 +- drivers/pcmcia/omap_cf.c | 2 +- .../tidspbridge/include/dspbridge/host_os.h | 1 - drivers/usb/gadget/omap_udc.c | 4 +- drivers/usb/host/ohci-omap.c | 5 +- drivers/usb/musb/tusb6010_omap.c | 9 +- drivers/video/omap/lcd_inn1510.c | 7 +- drivers/video/omap/lcdc.c | 2 +- drivers/video/omap/omapfb_main.c | 2 +- drivers/video/omap/sossi.c | 2 +- drivers/video/omap2/dss/core.c | 2 +- drivers/video/omap2/dss/dispc.c | 43 +- drivers/video/omap2/dss/dss.c | 39 +- drivers/video/omap2/dss/dss_features.c | 64 ++- drivers/video/omap2/dss/dss_features.h | 5 +- drivers/video/omap2/dss/hdmi.c | 3 +- drivers/video/omap2/omapfb/omapfb-ioctl.c | 2 +- drivers/video/omap2/omapfb/omapfb-main.c | 8 +- drivers/video/omap2/omapfb/omapfb-sysfs.c | 2 +- drivers/video/omap2/vrfb.c | 142 ++++- .../linux/platform_data/leds-omap.h | 2 - .../linux/platform_data/mmc-omap.h | 48 +- include/linux/platform_data/mtd-nand-omap2.h | 46 +- include/linux/platform_data/mtd-onenand-omap2.h | 28 +- include/video/omapdss.h | 14 + .../plat/vrfb.h => include/video/omapvrfb.h | 2 + sound/soc/omap/omap-abe-twl6040.c | 2 +- sound/soc/omap/omap-mcpdm.c | 9 +- sound/soc/omap/omap-pcm.c | 9 +- 260 files changed, 4351 insertions(+), 3860 deletions(-) create mode 100644 arch/arm/mach-omap1/dma.h rename arch/arm/{plat-omap/include/plat => mach-omap1/include/mach}/tc.h (100%) create mode 100644 arch/arm/mach-omap1/mmc.h create mode 100644 arch/arm/mach-omap1/soc.h rename arch/arm/mach-omap2/{include/mach => }/board-zoom.h (100%) create mode 100644 arch/arm/mach-omap2/dma.h create mode 100644 arch/arm/mach-omap2/gpmc-nand.h create mode 100644 arch/arm/mach-omap2/gpmc-onenand.h rename arch/arm/{plat-omap/include/plat => mach-omap2}/gpmc.h (67%) rename arch/arm/{plat-omap/include/plat => mach-omap2}/i2c.h (66%) create mode 100644 arch/arm/mach-omap2/mmc.h rename arch/arm/{plat-omap/include/plat => mach-omap2}/omap-pm.h (100%) rename arch/arm/{plat-omap => mach-omap2}/omap_device.c (99%) rename arch/arm/{plat-omap/include/plat => mach-omap2}/omap_device.h (99%) rename arch/arm/{plat-omap/include/plat => mach-omap2}/omap_hwmod.h (99%) delete mode 100644 arch/arm/plat-omap/clock.c rename arch/arm/plat-omap/{include/plat => }/common.h (89%) create mode 100644 arch/arm/plat-omap/fpga.h create mode 100644 arch/arm/plat-omap/i2c.h rename arch/arm/plat-omap/include/{plat/dma.h => plat-omap/dma-omap.h} (61%) delete mode 100644 arch/arm/plat-omap/include/plat/clkdev_omap.h delete mode 100644 arch/arm/plat-omap/include/plat/clock.h delete mode 100644 arch/arm/plat-omap/include/plat/dma-44xx.h delete mode 100644 arch/arm/plat-omap/include/plat/fpga.h delete mode 100644 arch/arm/plat-omap/include/plat/multi.h delete mode 100644 arch/arm/plat-omap/include/plat/omap-secure.h delete mode 100644 arch/arm/plat-omap/include/plat/sdrc.h delete mode 100644 arch/arm/plat-omap/include/plat/sram.h rename arch/arm/plat-omap/include/plat/led.h => include/linux/platform_data/leds-omap.h (91%) rename arch/arm/plat-omap/include/plat/mmc.h => include/linux/platform_data/mmc-omap.h (80%) rename arch/arm/plat-omap/include/plat/vrfb.h => include/video/omapvrfb.h (95%)