linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ARM: OMAP3: fix build on !CONFIG_IOMMU_API
@ 2012-01-11 13:28 Ohad Ben-Cohen
  2012-01-12 12:07 ` Laurent Pinchart
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Ohad Ben-Cohen @ 2012-01-11 13:28 UTC (permalink / raw)
  To: linux-arm-kernel

omap3isp depends on CONFIG_IOMMU_API, so avoid registering its
device (and defining its configuration structs) on !CONFIG_IOMMU_API.

This is generally nice to have, but more importantly, it fixes:

arch/arm/plat-omap/include/plat/iommu.h: In function 'dev_to_omap_iommu':
arch/arm/plat-omap/include/plat/iommu.h:135: error: 'struct
dev_archdata' has no member named 'iommu'
arch/arm/mach-omap2/devices.c: In function 'omap3_init_camera':
arch/arm/mach-omap2/devices.c:222: error: 'struct dev_archdata' has no
member named 'iommu'
make[1]: *** [arch/arm/mach-omap2/devices.o] Error 1
make: *** [arch/arm/mach-omap2] Error 2

Which happens because while setting up the omap3isp device we try
to access the (now nonexistent) iommu member of dev_archdata.

Compile tested with omap2plus_defconfig on today's:

commit e343a895a9f342f239c5e3c5ffc6c0b1707e6244
Merge: 06792c4 193a667
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date:   Tue Jan 10 18:04:27 2012 -0800

    Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost

Reported-by: Govindraj Raja <govindraj.raja@ti.com>
Reported-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Joerg Roedel <Joerg.Roedel@amd.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
Sorry guys, my bad.

 arch/arm/mach-omap2/devices.c |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
index 46dfd1a..0b510ad 100644
--- a/arch/arm/mach-omap2/devices.c
+++ b/arch/arm/mach-omap2/devices.c
@@ -28,7 +28,6 @@
 #include <plat/board.h>
 #include <plat/mcbsp.h>
 #include <plat/mmc.h>
-#include <plat/iommu.h>
 #include <plat/dma.h>
 #include <plat/omap_hwmod.h>
 #include <plat/omap_device.h>
@@ -128,6 +127,10 @@ static struct platform_device omap2cam_device = {
 };
 #endif
 
+#if defined(CONFIG_IOMMU_API)
+
+#include <plat/iommu.h>
+
 static struct resource omap3isp_resources[] = {
 	{
 		.start		= OMAP3430_ISP_BASE,
@@ -224,6 +227,15 @@ int omap3_init_camera(struct isp_platform_data *pdata)
 	return platform_device_register(&omap3isp_device);
 }
 
+#else /* !CONFIG_IOMMU_API */
+
+int omap3_init_camera(struct isp_platform_data *pdata)
+{
+	return 0;
+}
+
+#endif
+
 static inline void omap_init_camera(void)
 {
 #if defined(CONFIG_VIDEO_OMAP2) || defined(CONFIG_VIDEO_OMAP2_MODULE)
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-01-16 11:03 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-01-11 13:28 [PATCH] ARM: OMAP3: fix build on !CONFIG_IOMMU_API Ohad Ben-Cohen
2012-01-12 12:07 ` Laurent Pinchart
2012-01-13 11:07 ` Joerg Roedel
2012-01-13 15:54   ` Ohad Ben-Cohen
2012-01-13 16:46     ` Joerg Roedel
2012-01-13 16:48       ` Ohad Ben-Cohen
2012-01-13 17:26         ` Tony Lindgren
2012-01-16 11:03 ` Joerg Roedel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).