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

Commit 637a6ff6 authored by Olof Johansson's avatar Olof Johansson Committed by Paul Mackerras
Browse files

[PATCH] ppc64: Updated Olof misc updates 3/3



Replace some of the hard-coded constants with PAGE_SIZE/SHIFT/ORDER where
appropriate.

Likewise, in a couple of places it doesn't make sense to base some
allocations on page size when all that's required is a constant 4K,
etc.

Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent d0035c62
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1992,7 +1992,7 @@ _GLOBAL(smp_release_cpus)
 */
	.section ".bss"

	.align	12
	.align	PAGE_SHIFT

	.globl	empty_zero_page
empty_zero_page:
+1 −1
Original line number Diff line number Diff line
@@ -329,7 +329,7 @@ _GLOBAL(__flush_dcache_icache)

/* Flush the dcache */
 	ld	r7,PPC64_CACHES@toc(r2)
	clrrdi	r3,r3,12           	    /* Page align */
	clrrdi	r3,r3,PAGE_SHIFT           	    /* Page align */
	lwz	r4,DCACHEL1LINESPERPAGE(r7)	/* Get # dcache lines per page */
	lwz	r5,DCACHEL1LINESIZE(r7)		/* Get dcache line size */
	mr	r6,r3
+10 −6
Original line number Diff line number Diff line
#include <asm/page.h>
#include <asm-generic/vmlinux.lds.h>

OUTPUT_ARCH(powerpc:common64)
@@ -17,7 +18,7 @@ SECTIONS
	LOCK_TEXT
	KPROBES_TEXT
	*(.fixup)
	. = ALIGN(4096);
	. = ALIGN(PAGE_SIZE);
	_etext = .;
	}

@@ -43,7 +44,7 @@ SECTIONS


  /* will be freed after init */
  . = ALIGN(4096);
  . = ALIGN(PAGE_SIZE);
  __init_begin = .;

  .init.text : {
@@ -83,7 +84,7 @@ SECTIONS

  SECURITY_INIT

  . = ALIGN(4096);
  . = ALIGN(PAGE_SIZE);
  .init.ramfs : {
	__initramfs_start = .;
	*(.init.ramfs)
@@ -96,18 +97,21 @@ SECTIONS
	__per_cpu_end = .;
	}

  . = ALIGN(PAGE_SIZE);
  . = ALIGN(16384);
  __init_end = .;
  /* freed after init ends here */


  /* Read/write sections */
  . = ALIGN(PAGE_SIZE);
  . = ALIGN(16384);
  /* The initial task and kernel stack */
  .data.init_task : {
	*(.data.init_task)
	}

  . = ALIGN(PAGE_SIZE);
  .data.page_aligned : {
	*(.data.page_aligned)
	}
@@ -129,18 +133,18 @@ SECTIONS
	__toc_start = .;
	*(.got)
	*(.toc)
	. = ALIGN(4096);
	. = ALIGN(PAGE_SIZE);
	_edata = .;
	}


  . = ALIGN(4096);
  . = ALIGN(PAGE_SIZE);
  .bss : {
	__bss_start = .;
	*(.bss)
	__bss_stop = .;
	}

  . = ALIGN(4096);
  . = ALIGN(PAGE_SIZE);
  _end = . ;
}
+2 −1
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@
#include <asm/ptrace.h>
#include <asm/cputable.h>
#include <asm/auxvec.h>
#include <asm/page.h>

/* PowerPC relocations defined by the ABIs */
#define R_PPC_NONE		0
@@ -146,7 +147,7 @@ typedef elf_vrreg_t elf_vrregset_t32[ELF_NVRREG32];
#define elf_check_arch(x) ((x)->e_machine == ELF_ARCH)

#define USE_ELF_CORE_DUMP
#define ELF_EXEC_PAGESIZE	4096
#define ELF_EXEC_PAGESIZE	PAGE_SIZE

/* This is the location that an ET_DYN program is loaded if exec'ed.  Typical
   use of this is to invoke "./ld.so someprog" to test out a new version of
+1 −1
Original line number Diff line number Diff line
@@ -30,7 +30,7 @@

/* Location of cpu0's segment table */
#define STAB0_PAGE	0x6
#define STAB0_PHYS_ADDR	(STAB0_PAGE<<PAGE_SHIFT)
#define STAB0_PHYS_ADDR	(STAB0_PAGE<<12)

#ifndef __ASSEMBLY__
extern char initial_stab[];
Loading