Skip to contentSkip to conversation

drm/exynos: Add missing includes

PATCH Applied Mark Brown 2 participants 4 messages Aug 12, 2013 – Aug 13, 2013

Subsystems (3)
lore
Share & tools
lore

Mark Brown

author
#0 lore raw

PATCH 1/1 drm/exynos: Add missing includes

From: Mark Brown <[email protected]>

Ensure that all externally accessed functions are correctly prototyped when defined in each file by making sure the headers with the protoypes are included in the file with the definition.

---
 drivers/gpu/drm/exynos/exynos_drm_connector.c | 1 +
 drivers/gpu/drm/exynos/exynos_drm_crtc.c      | 1 +
 drivers/gpu/drm/exynos/exynos_drm_dmabuf.c    | 1 +
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c     | 1 +
 drivers/gpu/drm/exynos/exynos_drm_fimc.c      | 1 +
 drivers/gpu/drm/exynos/exynos_drm_g2d.c       | 1 +
 drivers/gpu/drm/exynos/exynos_drm_gsc.c       | 1 +
 drivers/gpu/drm/exynos/exynos_drm_plane.c     | 1 +
 drivers/gpu/drm/exynos/exynos_drm_rotator.c   | 1 +
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      | 1 +
 10 files changed, 10 insertions(+)
drivers/gpu/drm/exynos/exynos_drm_connector.c +1 -0
index 02a8bc5..3f80673 100644
@@ -17,6 +17,7 @@
 #include <drm/exynos_drm.h>
 #include "exynos_drm_drv.h"
 #include "exynos_drm_encoder.h"
+#include "exynos_drm_connector.h"
 
 #define to_exynos_connector(x)	container_of(x, struct exynos_drm_connector,\
 				drm_connector)
drivers/gpu/drm/exynos/exynos_drm_crtc.c +1 -0
index 9a35d17..6b836c1 100644
@@ -15,6 +15,7 @@
 #include <drm/drmP.h>
 #include <drm/drm_crtc_helper.h>
 
+#include "exynos_drm_crtc.h"
 #include "exynos_drm_drv.h"
 #include "exynos_drm_encoder.h"
 #include "exynos_drm_plane.h"
drivers/gpu/drm/exynos/exynos_drm_dmabuf.c +1 -0
index a0f997e..2b25ac8 100644
@@ -11,6 +11,7 @@
 
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
+#include "exynos_drm_dmabuf.h"
 #include "exynos_drm_drv.h"
 #include "exynos_drm_gem.h"
 
drivers/gpu/drm/exynos/exynos_drm_fbdev.c +1 -0
index 8e60bd6..3199f5b 100644
@@ -19,6 +19,7 @@
 
 #include "exynos_drm_drv.h"
 #include "exynos_drm_fb.h"
+#include "exynos_drm_fbdev.h"
 #include "exynos_drm_gem.h"
 #include "exynos_drm_iommu.h"
 
drivers/gpu/drm/exynos/exynos_drm_fimc.c +1 -0
index 6e047bd..a8ab4a4 100644
@@ -21,6 +21,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "regs-fimc.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 #include "exynos_drm_fimc.h"
 
drivers/gpu/drm/exynos/exynos_drm_g2d.c +1 -0
index eddea49..1262434 100644
@@ -23,6 +23,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "exynos_drm_drv.h"
+#include "exynos_drm_g2d.h"
 #include "exynos_drm_gem.h"
 #include "exynos_drm_iommu.h"
 
drivers/gpu/drm/exynos/exynos_drm_gsc.c +1 -0
index 90b8a1a..e69d1d2 100644
@@ -20,6 +20,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "regs-gsc.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 #include "exynos_drm_gsc.h"
 
drivers/gpu/drm/exynos/exynos_drm_plane.c +1 -0
index 6ee55e6..98eb1f7 100644
@@ -16,6 +16,7 @@
 #include "exynos_drm_encoder.h"
 #include "exynos_drm_fb.h"
 #include "exynos_drm_gem.h"
+#include "exynos_drm_plane.h"
 
 #define to_exynos_plane(x)	container_of(x, struct exynos_plane, base)
 
drivers/gpu/drm/exynos/exynos_drm_rotator.c +1 -0
index 49669aa..54b7360 100644
@@ -21,6 +21,7 @@
 #include <drm/exynos_drm.h>
 #include "regs-rotator.h"
 #include "exynos_drm.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 
 /*
drivers/gpu/drm/exynos/exynos_drm_vidi.c +1 -0
index c57c565..4400330 100644
@@ -23,6 +23,7 @@
 #include "exynos_drm_drv.h"
 #include "exynos_drm_crtc.h"
 #include "exynos_drm_encoder.h"
+#include "exynos_drm_vidi.h"
 
 /* vidi has totally three virtual windows. */
 #define WINDOWS_NR		3
Signature · 1 line
1.8.4.rc1
maintainer
#1 lore raw
Quoted 11 lines

-----Original Message-----
From: [email protected] [mailto:linux-samsung-soc- [email protected]] On Behalf Of Mark Brown
Sent: Tuesday, August 13, 2013 8:47 AM
To: David Airlie
Cc: [email protected]; [email protected]; Mark Brown
Subject: [PATCH] drm/exynos: Add missing includes

Quoted 6 lines

From: Mark Brown <[email protected]>

Ensure that all externally accessed functions are correctly prototyped when defined in each file by making sure the headers with the protoypes are included in the file with the definition.

I definitely missed it. sorry about that. Actually I was going to try to incur something such as compile warning. You mean that the warning could be incurred by compiler in case that a external module includes a header of Exynos drm but the prototype of the header file differs from the one of .c file?

I will apply it to -next but I'd like to understand why this patch is needed surely. And it seems like that other drivers have same issue also. :)

Thanks,
Inki Dae

Quoted 154 lines
---
 drivers/gpu/drm/exynos/exynos_drm_connector.c | 1 +
 drivers/gpu/drm/exynos/exynos_drm_crtc.c      | 1 +
 drivers/gpu/drm/exynos/exynos_drm_dmabuf.c    | 1 +
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c     | 1 +
 drivers/gpu/drm/exynos/exynos_drm_fimc.c      | 1 +
 drivers/gpu/drm/exynos/exynos_drm_g2d.c       | 1 +
 drivers/gpu/drm/exynos/exynos_drm_gsc.c       | 1 +
 drivers/gpu/drm/exynos/exynos_drm_plane.c     | 1 +
 drivers/gpu/drm/exynos/exynos_drm_rotator.c   | 1 +
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      | 1 +
 10 files changed, 10 insertions(+)
drivers/gpu/drm/exynos/exynos_drm_connector.c +1 -0
index 02a8bc5..3f80673 100644
@@ -17,6 +17,7 @@
 #include <drm/exynos_drm.h>
 #include "exynos_drm_drv.h"
 #include "exynos_drm_encoder.h"
+#include "exynos_drm_connector.h"
 
 #define to_exynos_connector(x)	container_of(x, struct
 exynos_drm_connector,\
drivers/gpu/drm/exynos/exynos_drm_connector.c +0 -0
 				drm_connector)
drivers/gpu/drm/exynos/exynos_drm_crtc.c +1 -0
index 9a35d17..6b836c1 100644
@@ -15,6 +15,7 @@
 #include <drm/drmP.h>
 #include <drm/drm_crtc_helper.h>
 
+#include "exynos_drm_crtc.h"
 #include "exynos_drm_drv.h"
 #include "exynos_drm_encoder.h"
 #include "exynos_drm_plane.h"
drivers/gpu/drm/exynos/exynos_drm_dmabuf.c +1 -0
index a0f997e..2b25ac8 100644
@@ -11,6 +11,7 @@
 
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
+#include "exynos_drm_dmabuf.h"
 #include "exynos_drm_drv.h"
 #include "exynos_drm_gem.h"
 
drivers/gpu/drm/exynos/exynos_drm_fbdev.c +1 -0
index 8e60bd6..3199f5b 100644
@@ -19,6 +19,7 @@
 
 #include "exynos_drm_drv.h"
 #include "exynos_drm_fb.h"
+#include "exynos_drm_fbdev.h"
 #include "exynos_drm_gem.h"
 #include "exynos_drm_iommu.h"
 
drivers/gpu/drm/exynos/exynos_drm_fimc.c +1 -0
index 6e047bd..a8ab4a4 100644
@@ -21,6 +21,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "regs-fimc.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 #include "exynos_drm_fimc.h"
 
drivers/gpu/drm/exynos/exynos_drm_g2d.c +1 -0
index eddea49..1262434 100644
@@ -23,6 +23,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "exynos_drm_drv.h"
+#include "exynos_drm_g2d.h"
 #include "exynos_drm_gem.h"
 #include "exynos_drm_iommu.h"
 
drivers/gpu/drm/exynos/exynos_drm_gsc.c +1 -0
index 90b8a1a..e69d1d2 100644
@@ -20,6 +20,7 @@
 #include <drm/drmP.h>
 #include <drm/exynos_drm.h>
 #include "regs-gsc.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 #include "exynos_drm_gsc.h"
 
drivers/gpu/drm/exynos/exynos_drm_plane.c +1 -0
index 6ee55e6..98eb1f7 100644
@@ -16,6 +16,7 @@
 #include "exynos_drm_encoder.h"
 #include "exynos_drm_fb.h"
 #include "exynos_drm_gem.h"
+#include "exynos_drm_plane.h"
 
 #define to_exynos_plane(x)	container_of(x, struct exynos_plane,
 base)
drivers/gpu/drm/exynos/exynos_drm_rotator.c +1 -0
index 49669aa..54b7360 100644
@@ -21,6 +21,7 @@
 #include <drm/exynos_drm.h>
 #include "regs-rotator.h"
 #include "exynos_drm.h"
+#include "exynos_drm_drv.h"
 #include "exynos_drm_ipp.h"
 
 /*
drivers/gpu/drm/exynos/exynos_drm_vidi.c +1 -1
index c57c565..4400330 100644
@@ -23,6 +23,7 @@
 #include "exynos_drm_drv.h"
 #include "exynos_drm_crtc.h"
 #include "exynos_drm_encoder.h"
+#include "exynos_drm_vidi.h"
 
 /* vidi has totally three virtual windows. */
 #define WINDOWS_NR		3
--

1.8.4.rc1

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung- soc" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

author
#2 lore raw
Quoted 9 lines · Inki Dae
Quoted 3 lines

Ensure that all externally accessed functions are correctly prototyped when defined in each file by making sure the headers with the protoypes are included in the file with the definition.

I definitely missed it. sorry about that. Actually I was going to try to incur something such as compile warning. You mean that the warning could be incurred by compiler in case that a external module includes a header of Exynos drm but the prototype of the header file differs from the one of .c file?

Probably nothing would actively warn about a mismatch (since everything happens per complilation unit) without the file defining the function including the incorrect prototype but you'd get problems at runtime if the declaration and defintion were incompatible so some things (including sparse) will warn if there's no prototype for an exported symbol.

Quoted 2 lines

I will apply it to -next but I'd like to understand why this patch is needed surely. And it seems like that other drivers have same issue also. :)

Yes, it's a bit of a problem (especially in the graphics stack for some reason) but since there's tools that pick up the issue it does tend to get fixed.

maintainer Applied
#3 lore raw
Quoted 23 lines

-----Original Message-----
From: [email protected] [mailto:linux-samsung-soc- [email protected]] On Behalf Of Mark Brown
Sent: Tuesday, August 13, 2013 6:54 PM
To: Inki Dae
Cc: 'David Airlie'; [email protected]; dri- [email protected]
Subject: Re: [PATCH] drm/exynos: Add missing includes

Quoted 9 lines · Inki Dae
Quoted 3 lines

Ensure that all externally accessed functions are correctly prototyped when defined in each file by making sure the headers with the protoypes are included in the file with the definition.

I definitely missed it. sorry about that. Actually I was going to try to incur something such as compile warning. You mean that the warning could be incurred by compiler in case that a external module includes a header of Exynos drm but the prototype of the header file differs from the one of .c file?

Quoted 6 lines

Probably nothing would actively warn about a mismatch (since everything happens per complilation unit) without the file defining the function including the incorrect prototype but you'd get problems at runtime if the declaration and defintion were incompatible so some things (including sparse) will warn if there's no prototype for an exported symbol.

Applied.

Thanks,
Inki Dae

Quoted 7 lines
Quoted 3 lines

I will apply it to -next but I'd like to understand why this patch is needed surely. And it seems like that other drivers have same issue also. :)

Yes, it's a bit of a problem (especially in the graphics stack for some reason) but since there's tools that pick up the issue it does tend to get fixed.