Re: [PATCH] video: ep93xx-fb: add missing include of linux/module.h

From: Ryan Mallon
Date: Sun Aug 21 2011 - 20:32:05 EST


On 22/08/11 10:06, Axel Lin wrote:
2011/8/22 Ryan Mallon<rmallon@xxxxxxxxx>:
On 22/08/11 09:41, Ryan Mallon wrote:
On 22/08/11 00:39, Axel Lin wrote:
ep93xx-fb.c uses interfaces from linux/module.h,
so it should include that file. This patch fixes below build errors.
What actually changed to make these files broken? Did some other header
previously include module.h for us? How many other drivers are broken?

Anyway, the change is okay.

Acked-by: Ryan Mallon<rmallon@xxxxxxxxx>
Actually, having a second look at this it does not look right.

drivers/video/ep93xx-fb.c includes linux/platform.h (as its first include),
which includes linux/driver.h, which includes linux/module.h.

Just tested on Linus' latest tree and both this driver and the ep93xx
backlight driver build fine. What kernel version are you using?

~Ryan
hi Ryan,

The patch is against linux-next tree.
I got build error for ep93xx-fb.c and ep93xx_bl.c on linux-next tree.
( next-20110819 )

Ok, I see now. The change which caused the breakage is fdb697c: "include: replace linux/module.h with "struct module" wherever possible". How many other drivers got broken now that device.h does not include module.h?

~Ryan


CC drivers/video/ep93xx-fb.o
drivers/video/ep93xx-fb.c:120: error: expected ')' before 'int'
drivers/video/ep93xx-fb.c:122: error: expected ')' before string constant
drivers/video/ep93xx-fb.c:409: error: 'THIS_MODULE' undeclared here (not
in a function)
drivers/video/ep93xx-fb.c:645: error: expected declaration specifiers or
'...' before string constant
drivers/video/ep93xx-fb.c:645: warning: data definition has no type or
storage class
drivers/video/ep93xx-fb.c:645: warning: type defaults to 'int' in
declaration of 'MODULE_DESCRIPTION'
drivers/video/ep93xx-fb.c:645: warning: function declaration isn't a
prototype
drivers/video/ep93xx-fb.c:646: error: expected declaration specifiers or
'...' before string constant
drivers/video/ep93xx-fb.c:646: warning: data definition has no type or
storage class
drivers/video/ep93xx-fb.c:646: warning: type defaults to 'int' in
declaration of 'MODULE_ALIAS'
drivers/video/ep93xx-fb.c:646: warning: function declaration isn't a
prototype
drivers/video/ep93xx-fb.c:647: error: expected declaration specifiers or
'...' before string constant
drivers/video/ep93xx-fb.c:647: warning: data definition has no type or
storage class
drivers/video/ep93xx-fb.c:647: warning: type defaults to 'int' in
declaration of 'MODULE_AUTHOR'
drivers/video/ep93xx-fb.c:647: warning: function declaration isn't a
prototype
drivers/video/ep93xx-fb.c:649: error: expected declaration specifiers or
'...' before string constant
drivers/video/ep93xx-fb.c:649: warning: data definition has no type or
storage class
drivers/video/ep93xx-fb.c:649: warning: type defaults to 'int' in
declaration of 'MODULE_LICENSE'
drivers/video/ep93xx-fb.c:649: warning: function declaration isn't a
prototype
make[2]: *** [drivers/video/ep93xx-fb.o] Error 1
make[1]: *** [drivers/video] Error 2
make: *** [drivers] Error 2

Signed-off-by: Axel Lin<axel.lin@xxxxxxxxx>
---
drivers/video/ep93xx-fb.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/video/ep93xx-fb.c b/drivers/video/ep93xx-fb.c
index 40e5f17..8133a9d 100644
--- a/drivers/video/ep93xx-fb.c
+++ b/drivers/video/ep93xx-fb.c
@@ -17,6 +17,7 @@
*
*/

+#include<linux/module.h>
#include<linux/platform_device.h>
#include<linux/dma-mapping.h>
#include<linux/slab.h>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/