fbdev: efifb: section fixes
Remove 43 section mismatches by moving the two structures efifb_defined and efifb_fix from .init.data to .devinit.data. Also the two structure arrays dmi_system_table[] and dmi_list[] have been moved from .data to .init.rodata and .init.data, which saves, if built-in, some space. On x86_64 'size -A' showed that these sections changed size: efifb.o: section size-old size-new .data 1200 688 .init.data 7840 512 .init.rodata 0 7568 .devinit.data 0 256 Total 11927 11911 Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Cc: Peter Jones <pjones@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
c34f16b70a
commit
ec81c9cc2f
@@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
#include <video/vga.h>
|
#include <video/vga.h>
|
||||||
|
|
||||||
static struct fb_var_screeninfo efifb_defined __initdata = {
|
static struct fb_var_screeninfo efifb_defined __devinitdata = {
|
||||||
.activate = FB_ACTIVATE_NOW,
|
.activate = FB_ACTIVATE_NOW,
|
||||||
.height = -1,
|
.height = -1,
|
||||||
.width = -1,
|
.width = -1,
|
||||||
@@ -27,7 +27,7 @@ static struct fb_var_screeninfo efifb_defined __initdata = {
|
|||||||
.vmode = FB_VMODE_NONINTERLACED,
|
.vmode = FB_VMODE_NONINTERLACED,
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct fb_fix_screeninfo efifb_fix __initdata = {
|
static struct fb_fix_screeninfo efifb_fix __devinitdata = {
|
||||||
.id = "EFI VGA",
|
.id = "EFI VGA",
|
||||||
.type = FB_TYPE_PACKED_PIXELS,
|
.type = FB_TYPE_PACKED_PIXELS,
|
||||||
.accel = FB_ACCEL_NONE,
|
.accel = FB_ACCEL_NONE,
|
||||||
@@ -59,7 +59,7 @@ static struct efifb_dmi_info {
|
|||||||
int stride;
|
int stride;
|
||||||
int width;
|
int width;
|
||||||
int height;
|
int height;
|
||||||
} dmi_list[] = {
|
} dmi_list[] __initdata = {
|
||||||
[M_I17] = { "i17", 0x80010000, 1472 * 4, 1440, 900 },
|
[M_I17] = { "i17", 0x80010000, 1472 * 4, 1440, 900 },
|
||||||
[M_I20] = { "i20", 0x80010000, 1728 * 4, 1680, 1050 }, /* guess */
|
[M_I20] = { "i20", 0x80010000, 1728 * 4, 1680, 1050 }, /* guess */
|
||||||
[M_I20_SR] = { "imac7", 0x40010000, 1728 * 4, 1680, 1050 },
|
[M_I20_SR] = { "imac7", 0x40010000, 1728 * 4, 1680, 1050 },
|
||||||
@@ -83,7 +83,7 @@ static int set_system(const struct dmi_system_id *id);
|
|||||||
DMI_MATCH(DMI_PRODUCT_NAME, name) }, \
|
DMI_MATCH(DMI_PRODUCT_NAME, name) }, \
|
||||||
&dmi_list[enumid] }
|
&dmi_list[enumid] }
|
||||||
|
|
||||||
static struct dmi_system_id __initdata dmi_system_table[] = {
|
static const struct dmi_system_id dmi_system_table[] __initconst = {
|
||||||
EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "iMac4,1", M_I17),
|
EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "iMac4,1", M_I17),
|
||||||
/* At least one of these two will be right; maybe both? */
|
/* At least one of these two will be right; maybe both? */
|
||||||
EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "iMac5,1", M_I20),
|
EFIFB_DMI_SYSTEM_ID("Apple Computer, Inc.", "iMac5,1", M_I20),
|
||||||
|
Reference in New Issue
Block a user