diff options
31 files changed, 62 insertions, 41 deletions
diff --git a/arch/arm/boot/compressed/ofw-shark.c b/arch/arm/boot/compressed/ofw-shark.c index 7f6f5db0d060..465c54b6b128 100644 --- a/arch/arm/boot/compressed/ofw-shark.c +++ b/arch/arm/boot/compressed/ofw-shark.c | |||
| @@ -256,5 +256,5 @@ asmlinkage void ofw_init(ofw_handle_t o, int *nomr, int *pointer) | |||
| 256 | temp[11]='\0'; | 256 | temp[11]='\0'; |
| 257 | mem_len = OF_getproplen(o,phandle, temp); | 257 | mem_len = OF_getproplen(o,phandle, temp); |
| 258 | OF_getprop(o,phandle, temp, buffer, mem_len); | 258 | OF_getprop(o,phandle, temp, buffer, mem_len); |
| 259 | (unsigned char) pointer[32] = ((unsigned char *) buffer)[mem_len-2]; | 259 | * ((unsigned char *) &pointer[32]) = ((unsigned char *) buffer)[mem_len-2]; |
| 260 | } | 260 | } |
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c index 4554c961251c..e7d22dbcb691 100644 --- a/arch/arm/kernel/traps.c +++ b/arch/arm/kernel/traps.c | |||
| @@ -624,6 +624,9 @@ void __attribute__((noreturn)) __bug(const char *file, int line, void *data) | |||
| 624 | printk(" - extra data = %p", data); | 624 | printk(" - extra data = %p", data); |
| 625 | printk("\n"); | 625 | printk("\n"); |
| 626 | *(int *)0 = 0; | 626 | *(int *)0 = 0; |
| 627 | |||
| 628 | /* Avoid "noreturn function does return" */ | ||
| 629 | for (;;); | ||
| 627 | } | 630 | } |
| 628 | EXPORT_SYMBOL(__bug); | 631 | EXPORT_SYMBOL(__bug); |
| 629 | 632 | ||
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S index ad2d66c93a5c..08e58ecd44be 100644 --- a/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S | |||
| @@ -23,20 +23,20 @@ SECTIONS | |||
| 23 | *(.init.text) | 23 | *(.init.text) |
| 24 | _einittext = .; | 24 | _einittext = .; |
| 25 | __proc_info_begin = .; | 25 | __proc_info_begin = .; |
| 26 | *(.proc.info) | 26 | *(.proc.info.init) |
| 27 | __proc_info_end = .; | 27 | __proc_info_end = .; |
| 28 | __arch_info_begin = .; | 28 | __arch_info_begin = .; |
| 29 | *(.arch.info) | 29 | *(.arch.info.init) |
| 30 | __arch_info_end = .; | 30 | __arch_info_end = .; |
| 31 | __tagtable_begin = .; | 31 | __tagtable_begin = .; |
| 32 | *(.taglist) | 32 | *(.taglist.init) |
| 33 | __tagtable_end = .; | 33 | __tagtable_end = .; |
| 34 | . = ALIGN(16); | 34 | . = ALIGN(16); |
| 35 | __setup_start = .; | 35 | __setup_start = .; |
| 36 | *(.init.setup) | 36 | *(.init.setup) |
| 37 | __setup_end = .; | 37 | __setup_end = .; |
| 38 | __early_begin = .; | 38 | __early_begin = .; |
| 39 | *(__early_param) | 39 | *(.early_param.init) |
| 40 | __early_end = .; | 40 | __early_end = .; |
| 41 | __initcall_start = .; | 41 | __initcall_start = .; |
| 42 | *(.initcall1.init) | 42 | *(.initcall1.init) |
diff --git a/arch/arm/mach-s3c2410/mach-anubis.c b/arch/arm/mach-s3c2410/mach-anubis.c index f87aa0b669ad..7c05f27fe1d6 100644 --- a/arch/arm/mach-s3c2410/mach-anubis.c +++ b/arch/arm/mach-s3c2410/mach-anubis.c | |||
| @@ -12,6 +12,7 @@ | |||
| 12 | * | 12 | * |
| 13 | * Modifications: | 13 | * Modifications: |
| 14 | * 02-May-2005 BJD Copied from mach-bast.c | 14 | * 02-May-2005 BJD Copied from mach-bast.c |
| 15 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 15 | */ | 16 | */ |
| 16 | 17 | ||
| 17 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
| @@ -232,7 +233,7 @@ static struct s3c24xx_board anubis_board __initdata = { | |||
| 232 | .clocks_count = ARRAY_SIZE(anubis_clocks) | 233 | .clocks_count = ARRAY_SIZE(anubis_clocks) |
| 233 | }; | 234 | }; |
| 234 | 235 | ||
| 235 | void __init anubis_map_io(void) | 236 | static void __init anubis_map_io(void) |
| 236 | { | 237 | { |
| 237 | /* initialise the clocks */ | 238 | /* initialise the clocks */ |
| 238 | 239 | ||
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c index 1a3367da6408..ed1f07d7252f 100644 --- a/arch/arm/mach-s3c2410/mach-bast.c +++ b/arch/arm/mach-s3c2410/mach-bast.c | |||
| @@ -31,6 +31,7 @@ | |||
| 31 | * 17-Jul-2005 BJD Changed to platform device for SuperIO 16550s | 31 | * 17-Jul-2005 BJD Changed to platform device for SuperIO 16550s |
| 32 | * 25-Jul-2005 BJD Removed ASIX static mappings | 32 | * 25-Jul-2005 BJD Removed ASIX static mappings |
| 33 | * 27-Jul-2005 BJD Ensure maximum frequency of i2c bus | 33 | * 27-Jul-2005 BJD Ensure maximum frequency of i2c bus |
| 34 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 34 | */ | 35 | */ |
| 35 | 36 | ||
| 36 | #include <linux/kernel.h> | 37 | #include <linux/kernel.h> |
| @@ -428,7 +429,7 @@ static struct s3c24xx_board bast_board __initdata = { | |||
| 428 | .clocks_count = ARRAY_SIZE(bast_clocks) | 429 | .clocks_count = ARRAY_SIZE(bast_clocks) |
| 429 | }; | 430 | }; |
| 430 | 431 | ||
| 431 | void __init bast_map_io(void) | 432 | static void __init bast_map_io(void) |
| 432 | { | 433 | { |
| 433 | /* initialise the clocks */ | 434 | /* initialise the clocks */ |
| 434 | 435 | ||
diff --git a/arch/arm/mach-s3c2410/mach-h1940.c b/arch/arm/mach-s3c2410/mach-h1940.c index 6ff1889fbd21..fb3cb01266e5 100644 --- a/arch/arm/mach-s3c2410/mach-h1940.c +++ b/arch/arm/mach-s3c2410/mach-h1940.c | |||
| @@ -24,6 +24,7 @@ | |||
| 24 | * 10-Jan-2005 BJD Removed include of s3c2410.h | 24 | * 10-Jan-2005 BJD Removed include of s3c2410.h |
| 25 | * 14-Jan-2005 BJD Added clock init | 25 | * 14-Jan-2005 BJD Added clock init |
| 26 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA | 26 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA |
| 27 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 27 | */ | 28 | */ |
| 28 | 29 | ||
| 29 | #include <linux/kernel.h> | 30 | #include <linux/kernel.h> |
| @@ -147,7 +148,7 @@ static struct s3c24xx_board h1940_board __initdata = { | |||
| 147 | .devices_count = ARRAY_SIZE(h1940_devices) | 148 | .devices_count = ARRAY_SIZE(h1940_devices) |
| 148 | }; | 149 | }; |
| 149 | 150 | ||
| 150 | void __init h1940_map_io(void) | 151 | static void __init h1940_map_io(void) |
| 151 | { | 152 | { |
| 152 | s3c24xx_init_io(h1940_iodesc, ARRAY_SIZE(h1940_iodesc)); | 153 | s3c24xx_init_io(h1940_iodesc, ARRAY_SIZE(h1940_iodesc)); |
| 153 | s3c24xx_init_clocks(0); | 154 | s3c24xx_init_clocks(0); |
| @@ -155,13 +156,13 @@ void __init h1940_map_io(void) | |||
| 155 | s3c24xx_set_board(&h1940_board); | 156 | s3c24xx_set_board(&h1940_board); |
| 156 | } | 157 | } |
| 157 | 158 | ||
| 158 | void __init h1940_init_irq(void) | 159 | static void __init h1940_init_irq(void) |
| 159 | { | 160 | { |
| 160 | s3c24xx_init_irq(); | 161 | s3c24xx_init_irq(); |
| 161 | 162 | ||
| 162 | } | 163 | } |
| 163 | 164 | ||
| 164 | void __init h1940_init(void) | 165 | static void __init h1940_init(void) |
| 165 | { | 166 | { |
| 166 | set_s3c2410fb_info(&h1940_lcdcfg); | 167 | set_s3c2410fb_info(&h1940_lcdcfg); |
| 167 | } | 168 | } |
diff --git a/arch/arm/mach-s3c2410/mach-n30.c b/arch/arm/mach-s3c2410/mach-n30.c index 66bf5bb2b3db..5c0f2b091f95 100644 --- a/arch/arm/mach-s3c2410/mach-n30.c +++ b/arch/arm/mach-s3c2410/mach-n30.c | |||
| @@ -97,7 +97,7 @@ static struct s3c24xx_board n30_board __initdata = { | |||
| 97 | .devices_count = ARRAY_SIZE(n30_devices) | 97 | .devices_count = ARRAY_SIZE(n30_devices) |
| 98 | }; | 98 | }; |
| 99 | 99 | ||
| 100 | void __init n30_map_io(void) | 100 | static void __init n30_map_io(void) |
| 101 | { | 101 | { |
| 102 | s3c24xx_init_io(n30_iodesc, ARRAY_SIZE(n30_iodesc)); | 102 | s3c24xx_init_io(n30_iodesc, ARRAY_SIZE(n30_iodesc)); |
| 103 | s3c24xx_init_clocks(0); | 103 | s3c24xx_init_clocks(0); |
| @@ -105,14 +105,14 @@ void __init n30_map_io(void) | |||
| 105 | s3c24xx_set_board(&n30_board); | 105 | s3c24xx_set_board(&n30_board); |
| 106 | } | 106 | } |
| 107 | 107 | ||
| 108 | void __init n30_init_irq(void) | 108 | static void __init n30_init_irq(void) |
| 109 | { | 109 | { |
| 110 | s3c24xx_init_irq(); | 110 | s3c24xx_init_irq(); |
| 111 | } | 111 | } |
| 112 | 112 | ||
| 113 | /* GPB3 is the line that controls the pull-up for the USB D+ line */ | 113 | /* GPB3 is the line that controls the pull-up for the USB D+ line */ |
| 114 | 114 | ||
| 115 | void __init n30_init(void) | 115 | static void __init n30_init(void) |
| 116 | { | 116 | { |
| 117 | s3c_device_i2c.dev.platform_data = &n30_i2ccfg; | 117 | s3c_device_i2c.dev.platform_data = &n30_i2ccfg; |
| 118 | 118 | ||
diff --git a/arch/arm/mach-s3c2410/mach-nexcoder.c b/arch/arm/mach-s3c2410/mach-nexcoder.c index d24c242414ca..c22f8216032d 100644 --- a/arch/arm/mach-s3c2410/mach-nexcoder.c +++ b/arch/arm/mach-s3c2410/mach-nexcoder.c | |||
| @@ -136,7 +136,7 @@ static void __init nexcoder_sensorboard_init(void) | |||
| 136 | s3c2410_gpio_cfgpin(S3C2410_GPF2, S3C2410_GPF2_OUTP); // CAM_GPIO6 => CAM_PWRDN | 136 | s3c2410_gpio_cfgpin(S3C2410_GPF2, S3C2410_GPF2_OUTP); // CAM_GPIO6 => CAM_PWRDN |
| 137 | } | 137 | } |
| 138 | 138 | ||
| 139 | void __init nexcoder_map_io(void) | 139 | static void __init nexcoder_map_io(void) |
| 140 | { | 140 | { |
| 141 | s3c24xx_init_io(nexcoder_iodesc, ARRAY_SIZE(nexcoder_iodesc)); | 141 | s3c24xx_init_io(nexcoder_iodesc, ARRAY_SIZE(nexcoder_iodesc)); |
| 142 | s3c24xx_init_clocks(0); | 142 | s3c24xx_init_clocks(0); |
diff --git a/arch/arm/mach-s3c2410/mach-otom.c b/arch/arm/mach-s3c2410/mach-otom.c index d901ed492ff5..ad1459e402e2 100644 --- a/arch/arm/mach-s3c2410/mach-otom.c +++ b/arch/arm/mach-s3c2410/mach-otom.c | |||
| @@ -105,7 +105,7 @@ static struct s3c24xx_board otom11_board __initdata = { | |||
| 105 | }; | 105 | }; |
| 106 | 106 | ||
| 107 | 107 | ||
| 108 | void __init otom11_map_io(void) | 108 | static void __init otom11_map_io(void) |
| 109 | { | 109 | { |
| 110 | s3c24xx_init_io(otom11_iodesc, ARRAY_SIZE(otom11_iodesc)); | 110 | s3c24xx_init_io(otom11_iodesc, ARRAY_SIZE(otom11_iodesc)); |
| 111 | s3c24xx_init_clocks(0); | 111 | s3c24xx_init_clocks(0); |
diff --git a/arch/arm/mach-s3c2410/mach-rx3715.c b/arch/arm/mach-s3c2410/mach-rx3715.c index a73d61c1de46..22d9e070fd68 100644 --- a/arch/arm/mach-s3c2410/mach-rx3715.c +++ b/arch/arm/mach-s3c2410/mach-rx3715.c | |||
| @@ -16,6 +16,7 @@ | |||
| 16 | * 14-Jan-2005 BJD Added new clock init | 16 | * 14-Jan-2005 BJD Added new clock init |
| 17 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA | 17 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA |
| 18 | * 14-Mar-2005 BJD Fixed __iomem warnings | 18 | * 14-Mar-2005 BJD Fixed __iomem warnings |
| 19 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 19 | */ | 20 | */ |
| 20 | 21 | ||
| 21 | #include <linux/kernel.h> | 22 | #include <linux/kernel.h> |
| @@ -108,7 +109,7 @@ static struct s3c24xx_board rx3715_board __initdata = { | |||
| 108 | .devices_count = ARRAY_SIZE(rx3715_devices) | 109 | .devices_count = ARRAY_SIZE(rx3715_devices) |
| 109 | }; | 110 | }; |
| 110 | 111 | ||
| 111 | void __init rx3715_map_io(void) | 112 | static void __init rx3715_map_io(void) |
| 112 | { | 113 | { |
| 113 | s3c24xx_init_io(rx3715_iodesc, ARRAY_SIZE(rx3715_iodesc)); | 114 | s3c24xx_init_io(rx3715_iodesc, ARRAY_SIZE(rx3715_iodesc)); |
| 114 | s3c24xx_init_clocks(16934000); | 115 | s3c24xx_init_clocks(16934000); |
| @@ -116,7 +117,7 @@ void __init rx3715_map_io(void) | |||
| 116 | s3c24xx_set_board(&rx3715_board); | 117 | s3c24xx_set_board(&rx3715_board); |
| 117 | } | 118 | } |
| 118 | 119 | ||
| 119 | void __init rx3715_init_irq(void) | 120 | static void __init rx3715_init_irq(void) |
| 120 | { | 121 | { |
| 121 | s3c24xx_init_irq(); | 122 | s3c24xx_init_irq(); |
| 122 | } | 123 | } |
diff --git a/arch/arm/mach-s3c2410/mach-smdk2410.c b/arch/arm/mach-s3c2410/mach-smdk2410.c index 67e903a700d3..2eda55a6b678 100644 --- a/arch/arm/mach-s3c2410/mach-smdk2410.c +++ b/arch/arm/mach-s3c2410/mach-smdk2410.c | |||
| @@ -28,6 +28,7 @@ | |||
| 28 | * Ben Dooks <ben@simtec.co.uk> | 28 | * Ben Dooks <ben@simtec.co.uk> |
| 29 | * | 29 | * |
| 30 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA | 30 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA |
| 31 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 31 | * | 32 | * |
| 32 | ***********************************************************************/ | 33 | ***********************************************************************/ |
| 33 | 34 | ||
| @@ -97,7 +98,7 @@ static struct s3c24xx_board smdk2410_board __initdata = { | |||
| 97 | .devices_count = ARRAY_SIZE(smdk2410_devices) | 98 | .devices_count = ARRAY_SIZE(smdk2410_devices) |
| 98 | }; | 99 | }; |
| 99 | 100 | ||
| 100 | void __init smdk2410_map_io(void) | 101 | static void __init smdk2410_map_io(void) |
| 101 | { | 102 | { |
| 102 | s3c24xx_init_io(smdk2410_iodesc, ARRAY_SIZE(smdk2410_iodesc)); | 103 | s3c24xx_init_io(smdk2410_iodesc, ARRAY_SIZE(smdk2410_iodesc)); |
| 103 | s3c24xx_init_clocks(0); | 104 | s3c24xx_init_clocks(0); |
| @@ -105,7 +106,7 @@ void __init smdk2410_map_io(void) | |||
| 105 | s3c24xx_set_board(&smdk2410_board); | 106 | s3c24xx_set_board(&smdk2410_board); |
| 106 | } | 107 | } |
| 107 | 108 | ||
| 108 | void __init smdk2410_init_irq(void) | 109 | static void __init smdk2410_init_irq(void) |
| 109 | { | 110 | { |
| 110 | s3c24xx_init_irq(); | 111 | s3c24xx_init_irq(); |
| 111 | } | 112 | } |
diff --git a/arch/arm/mach-s3c2410/mach-smdk2440.c b/arch/arm/mach-s3c2410/mach-smdk2440.c index 357522106f68..722ef46b630a 100644 --- a/arch/arm/mach-s3c2410/mach-smdk2440.c +++ b/arch/arm/mach-s3c2410/mach-smdk2440.c | |||
| @@ -18,6 +18,7 @@ | |||
| 18 | * 22-Feb-2005 BJD Updated for 2.6.11-rc5 relesa | 18 | * 22-Feb-2005 BJD Updated for 2.6.11-rc5 relesa |
| 19 | * 10-Mar-2005 LCVR Replaced S3C2410_VA by S3C24XX_VA | 19 | * 10-Mar-2005 LCVR Replaced S3C2410_VA by S3C24XX_VA |
| 20 | * 14-Mar-2005 BJD void __iomem fixes | 20 | * 14-Mar-2005 BJD void __iomem fixes |
| 21 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 21 | */ | 22 | */ |
| 22 | 23 | ||
| 23 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
| @@ -98,7 +99,7 @@ static struct s3c24xx_board smdk2440_board __initdata = { | |||
| 98 | .devices_count = ARRAY_SIZE(smdk2440_devices) | 99 | .devices_count = ARRAY_SIZE(smdk2440_devices) |
| 99 | }; | 100 | }; |
| 100 | 101 | ||
| 101 | void __init smdk2440_map_io(void) | 102 | static void __init smdk2440_map_io(void) |
| 102 | { | 103 | { |
| 103 | s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc)); | 104 | s3c24xx_init_io(smdk2440_iodesc, ARRAY_SIZE(smdk2440_iodesc)); |
| 104 | s3c24xx_init_clocks(16934400); | 105 | s3c24xx_init_clocks(16934400); |
| @@ -106,7 +107,7 @@ void __init smdk2440_map_io(void) | |||
| 106 | s3c24xx_set_board(&smdk2440_board); | 107 | s3c24xx_set_board(&smdk2440_board); |
| 107 | } | 108 | } |
| 108 | 109 | ||
| 109 | void __init smdk2440_machine_init(void) | 110 | static void __init smdk2440_machine_init(void) |
| 110 | { | 111 | { |
| 111 | /* Configure the LEDs (even if we have no LED support)*/ | 112 | /* Configure the LEDs (even if we have no LED support)*/ |
| 112 | 113 | ||
diff --git a/arch/arm/mach-s3c2410/mach-vr1000.c b/arch/arm/mach-s3c2410/mach-vr1000.c index 8f9ab2893df4..663a7f98fc0b 100644 --- a/arch/arm/mach-s3c2410/mach-vr1000.c +++ b/arch/arm/mach-s3c2410/mach-vr1000.c | |||
| @@ -28,6 +28,7 @@ | |||
| 28 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA | 28 | * 10-Mar-2005 LCVR Changed S3C2410_VA to S3C24XX_VA |
| 29 | * 14-Mar-2006 BJD void __iomem fixes | 29 | * 14-Mar-2006 BJD void __iomem fixes |
| 30 | * 22-Jun-2006 BJD Added DM9000 platform information | 30 | * 22-Jun-2006 BJD Added DM9000 platform information |
| 31 | * 20-Sep-2005 BJD Added static to non-exported items | ||
| 31 | */ | 32 | */ |
| 32 | 33 | ||
| 33 | #include <linux/kernel.h> | 34 | #include <linux/kernel.h> |
| @@ -347,7 +348,7 @@ static void vr1000_power_off(void) | |||
| 347 | s3c2410_gpio_setpin(S3C2410_GPB9, 1); | 348 | s3c2410_gpio_setpin(S3C2410_GPB9, 1); |
| 348 | } | 349 | } |
| 349 | 350 | ||
| 350 | void __init vr1000_map_io(void) | 351 | static void __init vr1000_map_io(void) |
| 351 | { | 352 | { |
| 352 | /* initialise clock sources */ | 353 | /* initialise clock sources */ |
| 353 | 354 | ||
diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c index 0b6c4db44e08..4a884baf3b9c 100644 --- a/arch/arm/mm/fault.c +++ b/arch/arm/mm/fault.c | |||
| @@ -233,7 +233,17 @@ do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
| 233 | if (in_interrupt() || !mm) | 233 | if (in_interrupt() || !mm) |
| 234 | goto no_context; | 234 | goto no_context; |
| 235 | 235 | ||
| 236 | down_read(&mm->mmap_sem); | 236 | /* |
| 237 | * As per x86, we may deadlock here. However, since the kernel only | ||
| 238 | * validly references user space from well defined areas of the code, | ||
| 239 | * we can bug out early if this is from code which shouldn't. | ||
| 240 | */ | ||
| 241 | if (!down_read_trylock(&mm->mmap_sem)) { | ||
| 242 | if (!user_mode(regs) && !search_exception_tables(regs->ARM_pc)) | ||
| 243 | goto no_context; | ||
| 244 | down_read(&mm->mmap_sem); | ||
| 245 | } | ||
| 246 | |||
| 237 | fault = __do_page_fault(mm, addr, fsr, tsk); | 247 | fault = __do_page_fault(mm, addr, fsr, tsk); |
| 238 | up_read(&mm->mmap_sem); | 248 | up_read(&mm->mmap_sem); |
| 239 | 249 | ||
diff --git a/arch/arm/mm/proc-arm1020.S b/arch/arm/mm/proc-arm1020.S index 1d739d282a45..82ec954e45b6 100644 --- a/arch/arm/mm/proc-arm1020.S +++ b/arch/arm/mm/proc-arm1020.S | |||
| @@ -509,7 +509,7 @@ cpu_arm1020_name: | |||
| 509 | 509 | ||
| 510 | .align | 510 | .align |
| 511 | 511 | ||
| 512 | .section ".proc.info", #alloc, #execinstr | 512 | .section ".proc.info.init", #alloc, #execinstr |
| 513 | 513 | ||
| 514 | .type __arm1020_proc_info,#object | 514 | .type __arm1020_proc_info,#object |
| 515 | __arm1020_proc_info: | 515 | __arm1020_proc_info: |
diff --git a/arch/arm/mm/proc-arm1020e.S b/arch/arm/mm/proc-arm1020e.S index 9b725665b5c7..7375fe930f72 100644 --- a/arch/arm/mm/proc-arm1020e.S +++ b/arch/arm/mm/proc-arm1020e.S | |||
| @@ -491,7 +491,7 @@ cpu_arm1020e_name: | |||
| 491 | 491 | ||
| 492 | .align | 492 | .align |
| 493 | 493 | ||
| 494 | .section ".proc.info", #alloc, #execinstr | 494 | .section ".proc.info.init", #alloc, #execinstr |
| 495 | 495 | ||
| 496 | .type __arm1020e_proc_info,#object | 496 | .type __arm1020e_proc_info,#object |
| 497 | __arm1020e_proc_info: | 497 | __arm1020e_proc_info: |
diff --git a/arch/arm/mm/proc-arm1022.S b/arch/arm/mm/proc-arm1022.S index 37b70fa21c76..6ca639094d6f 100644 --- a/arch/arm/mm/proc-arm1022.S +++ b/arch/arm/mm/proc-arm1022.S | |||
| @@ -473,7 +473,7 @@ cpu_arm1022_name: | |||
| 473 | 473 | ||
| 474 | .align | 474 | .align |
| 475 | 475 | ||
| 476 | .section ".proc.info", #alloc, #execinstr | 476 | .section ".proc.info.init", #alloc, #execinstr |
| 477 | 477 | ||
| 478 | .type __arm1022_proc_info,#object | 478 | .type __arm1022_proc_info,#object |
| 479 | __arm1022_proc_info: | 479 | __arm1022_proc_info: |
diff --git a/arch/arm/mm/proc-arm1026.S b/arch/arm/mm/proc-arm1026.S index 931b690d1be2..10317e4f55d2 100644 --- a/arch/arm/mm/proc-arm1026.S +++ b/arch/arm/mm/proc-arm1026.S | |||
| @@ -469,7 +469,7 @@ cpu_arm1026_name: | |||
| 469 | 469 | ||
| 470 | .align | 470 | .align |
| 471 | 471 | ||
| 472 | .section ".proc.info", #alloc, #execinstr | 472 | .section ".proc.info.init", #alloc, #execinstr |
| 473 | 473 | ||
| 474 | .type __arm1026_proc_info,#object | 474 | .type __arm1026_proc_info,#object |
| 475 | __arm1026_proc_info: | 475 | __arm1026_proc_info: |
diff --git a/arch/arm/mm/proc-arm6_7.S b/arch/arm/mm/proc-arm6_7.S index d0f1bbb48f6c..8e7e1e70ab05 100644 --- a/arch/arm/mm/proc-arm6_7.S +++ b/arch/arm/mm/proc-arm6_7.S | |||
| @@ -332,7 +332,7 @@ cpu_arm710_name: | |||
| 332 | 332 | ||
| 333 | .align | 333 | .align |
| 334 | 334 | ||
| 335 | .section ".proc.info", #alloc, #execinstr | 335 | .section ".proc.info.init", #alloc, #execinstr |
| 336 | 336 | ||
| 337 | .type __arm6_proc_info, #object | 337 | .type __arm6_proc_info, #object |
| 338 | __arm6_proc_info: | 338 | __arm6_proc_info: |
diff --git a/arch/arm/mm/proc-arm720.S b/arch/arm/mm/proc-arm720.S index c69c9de32391..a13e0184d343 100644 --- a/arch/arm/mm/proc-arm720.S +++ b/arch/arm/mm/proc-arm720.S | |||
| @@ -222,7 +222,7 @@ cpu_arm720_name: | |||
| 222 | * See linux/include/asm-arm/procinfo.h for a definition of this structure. | 222 | * See linux/include/asm-arm/procinfo.h for a definition of this structure. |
| 223 | */ | 223 | */ |
| 224 | 224 | ||
| 225 | .section ".proc.info", #alloc, #execinstr | 225 | .section ".proc.info.init", #alloc, #execinstr |
| 226 | 226 | ||
| 227 | .type __arm710_proc_info, #object | 227 | .type __arm710_proc_info, #object |
| 228 | __arm710_proc_info: | 228 | __arm710_proc_info: |
diff --git a/arch/arm/mm/proc-arm920.S b/arch/arm/mm/proc-arm920.S index 0f490a0fcb71..d16513899999 100644 --- a/arch/arm/mm/proc-arm920.S +++ b/arch/arm/mm/proc-arm920.S | |||
| @@ -452,7 +452,7 @@ cpu_arm920_name: | |||
| 452 | 452 | ||
| 453 | .align | 453 | .align |
| 454 | 454 | ||
| 455 | .section ".proc.info", #alloc, #execinstr | 455 | .section ".proc.info.init", #alloc, #execinstr |
| 456 | 456 | ||
| 457 | .type __arm920_proc_info,#object | 457 | .type __arm920_proc_info,#object |
| 458 | __arm920_proc_info: | 458 | __arm920_proc_info: |
diff --git a/arch/arm/mm/proc-arm922.S b/arch/arm/mm/proc-arm922.S index 62bc34a139ee..23b8ed97f4e3 100644 --- a/arch/arm/mm/proc-arm922.S +++ b/arch/arm/mm/proc-arm922.S | |||
| @@ -456,7 +456,7 @@ cpu_arm922_name: | |||
| 456 | 456 | ||
| 457 | .align | 457 | .align |
| 458 | 458 | ||
| 459 | .section ".proc.info", #alloc, #execinstr | 459 | .section ".proc.info.init", #alloc, #execinstr |
| 460 | 460 | ||
| 461 | .type __arm922_proc_info,#object | 461 | .type __arm922_proc_info,#object |
| 462 | __arm922_proc_info: | 462 | __arm922_proc_info: |
diff --git a/arch/arm/mm/proc-arm925.S b/arch/arm/mm/proc-arm925.S index ee49aa2ca781..ee95c52db513 100644 --- a/arch/arm/mm/proc-arm925.S +++ b/arch/arm/mm/proc-arm925.S | |||
| @@ -521,7 +521,7 @@ cpu_arm925_name: | |||
| 521 | 521 | ||
| 522 | .align | 522 | .align |
| 523 | 523 | ||
| 524 | .section ".proc.info", #alloc, #execinstr | 524 | .section ".proc.info.init", #alloc, #execinstr |
| 525 | 525 | ||
| 526 | .type __arm925_proc_info,#object | 526 | .type __arm925_proc_info,#object |
| 527 | __arm925_proc_info: | 527 | __arm925_proc_info: |
diff --git a/arch/arm/mm/proc-arm926.S b/arch/arm/mm/proc-arm926.S index bb95cc9fed03..7d042dc20c47 100644 --- a/arch/arm/mm/proc-arm926.S +++ b/arch/arm/mm/proc-arm926.S | |||
| @@ -471,7 +471,7 @@ cpu_arm926_name: | |||
| 471 | 471 | ||
| 472 | .align | 472 | .align |
| 473 | 473 | ||
| 474 | .section ".proc.info", #alloc, #execinstr | 474 | .section ".proc.info.init", #alloc, #execinstr |
| 475 | 475 | ||
| 476 | .type __arm926_proc_info,#object | 476 | .type __arm926_proc_info,#object |
| 477 | __arm926_proc_info: | 477 | __arm926_proc_info: |
diff --git a/arch/arm/mm/proc-sa110.S b/arch/arm/mm/proc-sa110.S index 34f7e7d3f419..bd330c4075a1 100644 --- a/arch/arm/mm/proc-sa110.S +++ b/arch/arm/mm/proc-sa110.S | |||
| @@ -249,7 +249,7 @@ cpu_sa110_name: | |||
| 249 | 249 | ||
| 250 | .align | 250 | .align |
| 251 | 251 | ||
| 252 | .section ".proc.info", #alloc, #execinstr | 252 | .section ".proc.info.init", #alloc, #execinstr |
| 253 | 253 | ||
| 254 | .type __sa110_proc_info,#object | 254 | .type __sa110_proc_info,#object |
| 255 | __sa110_proc_info: | 255 | __sa110_proc_info: |
diff --git a/arch/arm/mm/proc-sa1100.S b/arch/arm/mm/proc-sa1100.S index ca14f80d5ab4..91b89124c0d7 100644 --- a/arch/arm/mm/proc-sa1100.S +++ b/arch/arm/mm/proc-sa1100.S | |||
| @@ -280,7 +280,7 @@ cpu_sa1110_name: | |||
| 280 | 280 | ||
| 281 | .align | 281 | .align |
| 282 | 282 | ||
| 283 | .section ".proc.info", #alloc, #execinstr | 283 | .section ".proc.info.init", #alloc, #execinstr |
| 284 | 284 | ||
| 285 | .type __sa1100_proc_info,#object | 285 | .type __sa1100_proc_info,#object |
| 286 | __sa1100_proc_info: | 286 | __sa1100_proc_info: |
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S index eb34823c9dbf..caf3b19b167f 100644 --- a/arch/arm/mm/proc-v6.S +++ b/arch/arm/mm/proc-v6.S | |||
| @@ -240,7 +240,7 @@ cpu_elf_name: | |||
| 240 | .size cpu_elf_name, . - cpu_elf_name | 240 | .size cpu_elf_name, . - cpu_elf_name |
| 241 | .align | 241 | .align |
| 242 | 242 | ||
| 243 | .section ".proc.info", #alloc, #execinstr | 243 | .section ".proc.info.init", #alloc, #execinstr |
| 244 | 244 | ||
| 245 | /* | 245 | /* |
| 246 | * Match any ARMv6 processor core. | 246 | * Match any ARMv6 processor core. |
diff --git a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S index b88de2700146..861b35947280 100644 --- a/arch/arm/mm/proc-xscale.S +++ b/arch/arm/mm/proc-xscale.S | |||
| @@ -578,7 +578,7 @@ cpu_pxa270_name: | |||
| 578 | 578 | ||
| 579 | .align | 579 | .align |
| 580 | 580 | ||
| 581 | .section ".proc.info", #alloc, #execinstr | 581 | .section ".proc.info.init", #alloc, #execinstr |
| 582 | 582 | ||
| 583 | .type __80200_proc_info,#object | 583 | .type __80200_proc_info,#object |
| 584 | __80200_proc_info: | 584 | __80200_proc_info: |
diff --git a/drivers/acorn/char/pcf8583.c b/drivers/acorn/char/pcf8583.c index 141b4c237a50..2b850e5860a0 100644 --- a/drivers/acorn/char/pcf8583.c +++ b/drivers/acorn/char/pcf8583.c | |||
| @@ -23,12 +23,13 @@ static struct i2c_driver pcf8583_driver; | |||
| 23 | 23 | ||
| 24 | static unsigned short ignore[] = { I2C_CLIENT_END }; | 24 | static unsigned short ignore[] = { I2C_CLIENT_END }; |
| 25 | static unsigned short normal_addr[] = { 0x50, I2C_CLIENT_END }; | 25 | static unsigned short normal_addr[] = { 0x50, I2C_CLIENT_END }; |
| 26 | static unsigned short *forces[] = { NULL }; | ||
| 26 | 27 | ||
| 27 | static struct i2c_client_address_data addr_data = { | 28 | static struct i2c_client_address_data addr_data = { |
| 28 | .normal_i2c = normal_addr, | 29 | .normal_i2c = normal_addr, |
| 29 | .probe = ignore, | 30 | .probe = ignore, |
| 30 | .ignore = ignore, | 31 | .ignore = ignore, |
| 31 | .force = ignore, | 32 | .forces = forces, |
| 32 | }; | 33 | }; |
| 33 | 34 | ||
| 34 | #define DAT(x) ((unsigned int)(x->dev.driver_data)) | 35 | #define DAT(x) ((unsigned int)(x->dev.driver_data)) |
diff --git a/include/asm-arm/mach/arch.h b/include/asm-arm/mach/arch.h index 56c6bf4ab0c3..4fa95084a8c0 100644 --- a/include/asm-arm/mach/arch.h +++ b/include/asm-arm/mach/arch.h | |||
| @@ -50,7 +50,7 @@ struct machine_desc { | |||
| 50 | */ | 50 | */ |
| 51 | #define MACHINE_START(_type,_name) \ | 51 | #define MACHINE_START(_type,_name) \ |
| 52 | const struct machine_desc __mach_desc_##_type \ | 52 | const struct machine_desc __mach_desc_##_type \ |
| 53 | __attribute__((__section__(".arch.info"))) = { \ | 53 | __attribute__((__section__(".arch.info.init"))) = { \ |
| 54 | .nr = MACH_TYPE_##_type, \ | 54 | .nr = MACH_TYPE_##_type, \ |
| 55 | .name = _name, | 55 | .name = _name, |
| 56 | 56 | ||
diff --git a/include/asm-arm/setup.h b/include/asm-arm/setup.h index adcbd79762bf..ea3ed2465233 100644 --- a/include/asm-arm/setup.h +++ b/include/asm-arm/setup.h | |||
| @@ -171,7 +171,7 @@ struct tagtable { | |||
| 171 | int (*parse)(const struct tag *); | 171 | int (*parse)(const struct tag *); |
| 172 | }; | 172 | }; |
| 173 | 173 | ||
| 174 | #define __tag __attribute_used__ __attribute__((__section__(".taglist"))) | 174 | #define __tag __attribute_used__ __attribute__((__section__(".taglist.init"))) |
| 175 | #define __tagtable(tag, fn) \ | 175 | #define __tagtable(tag, fn) \ |
| 176 | static struct tagtable __tagtable_##fn __tag = { tag, fn } | 176 | static struct tagtable __tagtable_##fn __tag = { tag, fn } |
| 177 | 177 | ||
| @@ -213,6 +213,6 @@ struct early_params { | |||
| 213 | 213 | ||
| 214 | #define __early_param(name,fn) \ | 214 | #define __early_param(name,fn) \ |
| 215 | static struct early_params __early_##fn __attribute_used__ \ | 215 | static struct early_params __early_##fn __attribute_used__ \ |
| 216 | __attribute__((__section__("__early_param"))) = { name, fn } | 216 | __attribute__((__section__(".early_param.init"))) = { name, fn } |
| 217 | 217 | ||
| 218 | #endif | 218 | #endif |
