Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c51e3a41 authored by Paul Mackerras's avatar Paul Mackerras
Browse files

powerpc: Fix vmlinux.lds.S for 32-bit



We can't currently use asm-ppc/page.h in vmlinux.lds.S, so until
we have a merged page.h, define PAGE_SIZE and KERNELBASE locally.
Also gets rid of some dynamic executable cruft that we had for
32-bit.  With -Ttext=$(KERNELBASE) this didn't cause any problem,
but when we changed to putting . = KERNELBASE in the vmlinux.lds.S
this cruft caused the text to get linked at 0xa0 instead of
0xc0000000.  Oops.

Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 5ad57078
Loading
Loading
Loading
Loading
+5 −25
Original line number Diff line number Diff line
#include <linux/config.h>
#ifdef CONFIG_PPC64
#include <asm/page.h>
#else
#define PAGE_SIZE	4096
#define KERNELBASE	CONFIG_KERNEL_START
#endif
#include <asm-generic/vmlinux.lds.h>

ENTRY(_stext)
@@ -22,31 +27,6 @@ SECTIONS
  . = KERNELBASE;

  /* Read-only sections, merged into text segment: */
#ifdef CONFIG_PPC32
  . = + SIZEOF_HEADERS;
  .interp : { *(.interp) }
  .hash          : { *(.hash)		}
  .dynsym        : { *(.dynsym)		}
  .dynstr        : { *(.dynstr)		}
  .rel.text      : { *(.rel.text)		}
  .rela.text     : { *(.rela.text) 	}
  .rel.data      : { *(.rel.data)		}
  .rela.data     : { *(.rela.data) 	}
  .rel.rodata    : { *(.rel.rodata) 	}
  .rela.rodata   : { *(.rela.rodata) 	}
  .rel.got       : { *(.rel.got)		}
  .rela.got      : { *(.rela.got)		}
  .rel.ctors     : { *(.rel.ctors)	}
  .rela.ctors    : { *(.rela.ctors)	}
  .rel.dtors     : { *(.rel.dtors)	}
  .rela.dtors    : { *(.rela.dtors)	}
  .rel.bss       : { *(.rel.bss)		}
  .rela.bss      : { *(.rela.bss)		}
  .rel.plt       : { *(.rel.plt)		}
  .rela.plt      : { *(.rela.plt)		}
/*  .init          : { *(.init)	} =0*/
  .plt : { *(.plt) }
#endif
  .text : {
    *(.text .text.*)
    SCHED_TEXT