[PATCH] ide: fix the HPT366 driver layer
[linux-2.6/suspend2-2.6.18.git] / include / asm-generic / vmlinux.lds.h
blobb3bb326ae5b618a74cc3ca79d158f6d8b92c5743
1 #ifndef LOAD_OFFSET
2 #define LOAD_OFFSET 0
3 #endif
5 #ifndef VMLINUX_SYMBOL
6 #define VMLINUX_SYMBOL(_sym_) _sym_
7 #endif
9 #define RODATA \
10 .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \
11 *(.rodata) *(.rodata.*) \
12 *(__vermagic) /* Kernel version magic */ \
13 } \
15 .rodata1 : AT(ADDR(.rodata1) - LOAD_OFFSET) { \
16 *(.rodata1) \
17 } \
19 /* PCI quirks */ \
20 .pci_fixup : AT(ADDR(.pci_fixup) - LOAD_OFFSET) { \
21 VMLINUX_SYMBOL(__start_pci_fixups_early) = .; \
22 *(.pci_fixup_early) \
23 VMLINUX_SYMBOL(__end_pci_fixups_early) = .; \
24 VMLINUX_SYMBOL(__start_pci_fixups_header) = .; \
25 *(.pci_fixup_header) \
26 VMLINUX_SYMBOL(__end_pci_fixups_header) = .; \
27 VMLINUX_SYMBOL(__start_pci_fixups_final) = .; \
28 *(.pci_fixup_final) \
29 VMLINUX_SYMBOL(__end_pci_fixups_final) = .; \
30 VMLINUX_SYMBOL(__start_pci_fixups_enable) = .; \
31 *(.pci_fixup_enable) \
32 VMLINUX_SYMBOL(__end_pci_fixups_enable) = .; \
33 } \
35 /* Kernel symbol table: Normal symbols */ \
36 __ksymtab : AT(ADDR(__ksymtab) - LOAD_OFFSET) { \
37 VMLINUX_SYMBOL(__start___ksymtab) = .; \
38 *(__ksymtab) \
39 VMLINUX_SYMBOL(__stop___ksymtab) = .; \
40 } \
42 /* Kernel symbol table: GPL-only symbols */ \
43 __ksymtab_gpl : AT(ADDR(__ksymtab_gpl) - LOAD_OFFSET) { \
44 VMLINUX_SYMBOL(__start___ksymtab_gpl) = .; \
45 *(__ksymtab_gpl) \
46 VMLINUX_SYMBOL(__stop___ksymtab_gpl) = .; \
47 } \
49 /* Kernel symbol table: Normal symbols */ \
50 __kcrctab : AT(ADDR(__kcrctab) - LOAD_OFFSET) { \
51 VMLINUX_SYMBOL(__start___kcrctab) = .; \
52 *(__kcrctab) \
53 VMLINUX_SYMBOL(__stop___kcrctab) = .; \
54 } \
56 /* Kernel symbol table: GPL-only symbols */ \
57 __kcrctab_gpl : AT(ADDR(__kcrctab_gpl) - LOAD_OFFSET) { \
58 VMLINUX_SYMBOL(__start___kcrctab_gpl) = .; \
59 *(__kcrctab_gpl) \
60 VMLINUX_SYMBOL(__stop___kcrctab_gpl) = .; \
61 } \
63 /* Kernel symbol table: strings */ \
64 __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
65 *(__ksymtab_strings) \
66 } \
68 /* Built-in module parameters. */ \
69 __param : AT(ADDR(__param) - LOAD_OFFSET) { \
70 VMLINUX_SYMBOL(__start___param) = .; \
71 *(__param) \
72 VMLINUX_SYMBOL(__stop___param) = .; \
75 #define SECURITY_INIT \
76 .security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) { \
77 VMLINUX_SYMBOL(__security_initcall_start) = .; \
78 *(.security_initcall.init) \
79 VMLINUX_SYMBOL(__security_initcall_end) = .; \
82 #define SCHED_TEXT \
83 VMLINUX_SYMBOL(__sched_text_start) = .; \
84 *(.sched.text) \
85 VMLINUX_SYMBOL(__sched_text_end) = .;
87 #define LOCK_TEXT \
88 VMLINUX_SYMBOL(__lock_text_start) = .; \
89 *(.spinlock.text) \
90 VMLINUX_SYMBOL(__lock_text_end) = .;