sgivwfb: fix sections
Since the drivers probe call was changed from .init.text to .devinit.text
in commit c2e13037e6
("platform-drivers:
move probe to .devinit.text in drivers/video") the fb_fix_screeninfo and
fb_var_screeninfo structures must be changed from .init.data to
.devinit.data, too.
Also the drivers remove routine should be moved from .text to .devexit.text
It removes these 7 section mismatch warnings from modpost:
WARNING: vmlinux.o(.devinit.text+0x1e28): Section mismatch in reference from the function sgivwfb_probe() to the variable .init.data:sgivwfb_fix
The function __devinit sgivwfb_probe() references
a variable __initdata sgivwfb_fix.
If sgivwfb_fix is only used by sgivwfb_probe then
annotate sgivwfb_fix with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e50): Section mismatch in reference from the function sgivwfb_probe() to the (unknown reference) .init.data:(unknown)
The function __devinit sgivwfb_probe() references
a (unknown reference) __initdata (unknown).
If (unknown) is only used by sgivwfb_probe then
annotate (unknown) with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e59): Section mismatch in reference from the function sgivwfb_probe() to the (unknown reference) .init.data:(unknown)
The function __devinit sgivwfb_probe() references
a (unknown reference) __initdata (unknown).
If (unknown) is only used by sgivwfb_probe then
annotate (unknown) with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e60): Section mismatch in reference from the function sgivwfb_probe() to the variable .init.data:sgivwfb_fix
The function __devinit sgivwfb_probe() references
a variable __initdata sgivwfb_fix.
If sgivwfb_fix is only used by sgivwfb_probe then
annotate sgivwfb_fix with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e6a): Section mismatch in reference from the function sgivwfb_probe() to the (unknown reference) .init.data:(unknown)
The function __devinit sgivwfb_probe() references
a (unknown reference) __initdata (unknown).
If (unknown) is only used by sgivwfb_probe then
annotate (unknown) with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e7f): Section mismatch in reference from the function sgivwfb_probe() to the variable .init.data:sgivwfb_var1600sw
The function __devinit sgivwfb_probe() references
a variable __initdata sgivwfb_var1600sw.
If sgivwfb_var1600sw is only used by sgivwfb_probe then
annotate sgivwfb_var1600sw with a matching annotation.
WARNING: vmlinux.o(.devinit.text+0x1e91): Section mismatch in reference from the function sgivwfb_probe() to the variable .init.data:sgivwfb_var
The function __devinit sgivwfb_probe() references
a variable __initdata sgivwfb_var.
If sgivwfb_var is only used by sgivwfb_probe then
annotate sgivwfb_var with a matching annotation.
Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de>
Cc: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
a8ce4be7d5
Коммит
0d5b02641f
|
@ -47,7 +47,7 @@ static int ywrap = 0;
|
||||||
|
|
||||||
static int flatpanel_id = -1;
|
static int flatpanel_id = -1;
|
||||||
|
|
||||||
static struct fb_fix_screeninfo sgivwfb_fix __initdata = {
|
static struct fb_fix_screeninfo sgivwfb_fix __devinitdata = {
|
||||||
.id = "SGI Vis WS FB",
|
.id = "SGI Vis WS FB",
|
||||||
.type = FB_TYPE_PACKED_PIXELS,
|
.type = FB_TYPE_PACKED_PIXELS,
|
||||||
.visual = FB_VISUAL_PSEUDOCOLOR,
|
.visual = FB_VISUAL_PSEUDOCOLOR,
|
||||||
|
@ -57,7 +57,7 @@ static struct fb_fix_screeninfo sgivwfb_fix __initdata = {
|
||||||
.line_length = 640,
|
.line_length = 640,
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct fb_var_screeninfo sgivwfb_var __initdata = {
|
static struct fb_var_screeninfo sgivwfb_var __devinitdata = {
|
||||||
/* 640x480, 8 bpp */
|
/* 640x480, 8 bpp */
|
||||||
.xres = 640,
|
.xres = 640,
|
||||||
.yres = 480,
|
.yres = 480,
|
||||||
|
@ -79,7 +79,7 @@ static struct fb_var_screeninfo sgivwfb_var __initdata = {
|
||||||
.vmode = FB_VMODE_NONINTERLACED
|
.vmode = FB_VMODE_NONINTERLACED
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct fb_var_screeninfo sgivwfb_var1600sw __initdata = {
|
static struct fb_var_screeninfo sgivwfb_var1600sw __devinitdata = {
|
||||||
/* 1600x1024, 8 bpp */
|
/* 1600x1024, 8 bpp */
|
||||||
.xres = 1600,
|
.xres = 1600,
|
||||||
.yres = 1024,
|
.yres = 1024,
|
||||||
|
@ -825,7 +825,7 @@ fail_ioremap_regs:
|
||||||
return -ENXIO;
|
return -ENXIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sgivwfb_remove(struct platform_device *dev)
|
static int __devexit sgivwfb_remove(struct platform_device *dev)
|
||||||
{
|
{
|
||||||
struct fb_info *info = platform_get_drvdata(dev);
|
struct fb_info *info = platform_get_drvdata(dev);
|
||||||
|
|
||||||
|
@ -845,7 +845,7 @@ static int sgivwfb_remove(struct platform_device *dev)
|
||||||
|
|
||||||
static struct platform_driver sgivwfb_driver = {
|
static struct platform_driver sgivwfb_driver = {
|
||||||
.probe = sgivwfb_probe,
|
.probe = sgivwfb_probe,
|
||||||
.remove = sgivwfb_remove,
|
.remove = __devexit_p(sgivwfb_remove),
|
||||||
.driver = {
|
.driver = {
|
||||||
.name = "sgivwfb",
|
.name = "sgivwfb",
|
||||||
},
|
},
|
||||||
|
|
Загрузка…
Ссылка в новой задаче