Commit ef3a661af69046df74beb0ddfa27204aad316385

Authored by Chen Gang
Committed by Vineet Gupta
1 parent 3d01c1ce41

arc: remove '__init' for setup_processor() and arc_init_IRQ()

They haven't '__init' in definition, but has '__init' in declaration.
And normal function start_kernel_secondary() may call setup_processor()
which will call arc_init_IRQ().

So need remove '__init' for both of them. The related warning (with
allmodconfig):

    MODPOST vmlinux.o
  WARNING: vmlinux.o(.text+0x3084): Section mismatch in reference from the function start_kernel_secondary() to the function .init.text:setup_processor()
  The function start_kernel_secondary() references
  the function __init setup_processor().
  This is often because start_kernel_secondary lacks a __init
  annotation or the annotation of setup_processor is wrong.

Signed-off-by: Chen Gang <gang.chen@asianux.com>

Showing 2 changed files with 2 additions and 2 deletions Inline Diff

arch/arc/include/asm/irq.h
1 /* 1 /*
2 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 2 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
3 * 3 *
4 * This program is free software; you can redistribute it and/or modify 4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as 5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation. 6 * published by the Free Software Foundation.
7 */ 7 */
8 8
9 #ifndef __ASM_ARC_IRQ_H 9 #ifndef __ASM_ARC_IRQ_H
10 #define __ASM_ARC_IRQ_H 10 #define __ASM_ARC_IRQ_H
11 11
12 #define NR_CPU_IRQS 32 /* number of interrupt lines of ARC770 CPU */ 12 #define NR_CPU_IRQS 32 /* number of interrupt lines of ARC770 CPU */
13 #define NR_IRQS 128 /* allow some CPU external IRQ handling */ 13 #define NR_IRQS 128 /* allow some CPU external IRQ handling */
14 14
15 /* Platform Independent IRQs */ 15 /* Platform Independent IRQs */
16 #define TIMER0_IRQ 3 16 #define TIMER0_IRQ 3
17 #define TIMER1_IRQ 4 17 #define TIMER1_IRQ 4
18 18
19 #include <asm-generic/irq.h> 19 #include <asm-generic/irq.h>
20 20
21 extern void __init arc_init_IRQ(void); 21 extern void arc_init_IRQ(void);
22 extern int __init get_hw_config_num_irq(void); 22 extern int __init get_hw_config_num_irq(void);
23 23
24 void arc_local_timer_setup(unsigned int cpu); 24 void arc_local_timer_setup(unsigned int cpu);
25 25
26 #endif 26 #endif
27 27
arch/arc/include/asm/setup.h
1 /* 1 /*
2 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 2 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
3 * 3 *
4 * This program is free software; you can redistribute it and/or modify 4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as 5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation. 6 * published by the Free Software Foundation.
7 */ 7 */
8 #ifndef __ASMARC_SETUP_H 8 #ifndef __ASMARC_SETUP_H
9 #define __ASMARC_SETUP_H 9 #define __ASMARC_SETUP_H
10 10
11 11
12 #include <linux/types.h> 12 #include <linux/types.h>
13 #include <uapi/asm/setup.h> 13 #include <uapi/asm/setup.h>
14 14
15 #define COMMAND_LINE_SIZE 256 15 #define COMMAND_LINE_SIZE 256
16 16
17 /* 17 /*
18 * Data structure to map a ID to string 18 * Data structure to map a ID to string
19 * Used a lot for bootup reporting of hardware diversity 19 * Used a lot for bootup reporting of hardware diversity
20 */ 20 */
21 struct id_to_str { 21 struct id_to_str {
22 int id; 22 int id;
23 const char *str; 23 const char *str;
24 }; 24 };
25 25
26 struct cpuinfo_data { 26 struct cpuinfo_data {
27 struct id_to_str info; 27 struct id_to_str info;
28 int up_range; 28 int up_range;
29 }; 29 };
30 30
31 extern int root_mountflags, end_mem; 31 extern int root_mountflags, end_mem;
32 extern int running_on_hw; 32 extern int running_on_hw;
33 33
34 void __init setup_processor(void); 34 void setup_processor(void);
35 void __init setup_arch_memory(void); 35 void __init setup_arch_memory(void);
36 36
37 #endif /* __ASMARC_SETUP_H */ 37 #endif /* __ASMARC_SETUP_H */
38 38