19 #include <linux/elf.h>
24 #include <asm/module.h>
25 #include <asm/uaccess.h>
40 secstrings = (
char *)hdr + sechdrs[hdr->e_shstrndx].sh_offset;
41 for (i = 1; i < hdr->e_shnum; i++)
42 if (
strcmp(secstrings+sechdrs[i].sh_name, name) == 0)
53 sect = find_section(hdr, sechdrs,
"__ftr_fixup");
56 (
void *)sect->sh_addr,
57 (
void *)sect->sh_addr + sect->sh_size);
59 sect = find_section(hdr, sechdrs,
"__mmu_ftr_fixup");
62 (
void *)sect->sh_addr,
63 (
void *)sect->sh_addr + sect->sh_size);
66 sect = find_section(hdr, sechdrs,
"__fw_ftr_fixup");
69 (
void *)sect->sh_addr,
70 (
void *)sect->sh_addr + sect->sh_size);
73 sect = find_section(hdr, sechdrs,
"__lwsync_fixup");
76 (
void *)sect->sh_addr,
77 (
void *)sect->sh_addr + sect->sh_size);