1. 11 3月, 2009 1 次提交
  2. 03 12月, 2008 1 次提交
  3. 21 10月, 2008 1 次提交
  4. 16 9月, 2008 2 次提交
    • T
      powerpc: Enforce a non-spe kernel build even on broken compilers · ce400c01
      Thiemo Seufer 提交于
      Those two are required on my fresh gcc 4.3.1.
      Signed-off-by: NThiemo Seufer <ths@linutronix.de>
      Signed-off-by: NSebastian Siewior <bigeasy@linutronix.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      ce400c01
    • P
      powerpc: Make the 64-bit kernel as a position-independent executable · 549e8152
      Paul Mackerras 提交于
      This implements CONFIG_RELOCATABLE for 64-bit by making the kernel as
      a position-independent executable (PIE) when it is set.  This involves
      processing the dynamic relocations in the image in the early stages of
      booting, even if the kernel is being run at the address it is linked at,
      since the linker does not necessarily fill in words in the image for
      which there are dynamic relocations.  (In fact the linker does fill in
      such words for 64-bit executables, though not for 32-bit executables,
      so in principle we could avoid calling relocate() entirely when we're
      running a 64-bit kernel at the linked address.)
      
      The dynamic relocations are processed by a new function relocate(addr),
      where the addr parameter is the virtual address where the image will be
      run.  In fact we call it twice; once before calling prom_init, and again
      when starting the main kernel.  This means that reloc_offset() returns
      0 in prom_init (since it has been relocated to the address it is running
      at), which necessitated a few adjustments.
      
      This also changes __va and __pa to use an equivalent definition that is
      simpler.  With the relocatable kernel, PAGE_OFFSET and MEMORY_START are
      constants (for 64-bit) whereas PHYSICAL_START is a variable (and
      KERNELBASE ideally should be too, but isn't yet).
      
      With this, relocatable kernels still copy themselves down to physical
      address 0 and run there.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      549e8152
  5. 03 9月, 2008 1 次提交
    • T
      powerpc: Work around gcc's -fno-omit-frame-pointer bug · 7563dc64
      Tony Breeds 提交于
      This bug is causing random crashes
      (http://bugzilla.kernel.org/show_bug.cgi?id=11414).
      
      -fno-omit-frame-pointer is only needed on powerpc when -pg is also
      supplied, and there is a gcc bug that causes incorrect code generation
      on 32-bit powerpc when -fno-omit-frame-pointer is used---it uses stack
      locations below the stack pointer, which is not allowed by the ABI
      because those locations can and sometimes do get corrupted by an
      interrupt.
      
      This ensures that CONFIG_FRAME_POINTER is only selected by ftrace.
      When CONFIG_FTRACE is enabled we also pass -mno-sched-epilog to work
      around the gcc codegen bug.
      
      Patch based on work by:
      	Andreas Schwab <schwab@suse.de>
      	Segher Boessenkool <segher@kernel.crashing.org>
      Signed-off-by: NTony Breeds <tony@bakeyournoodle.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      7563dc64
  6. 04 7月, 2008 1 次提交
  7. 30 6月, 2008 1 次提交
  8. 16 6月, 2008 1 次提交
  9. 11 6月, 2008 1 次提交
  10. 27 4月, 2008 1 次提交
  11. 17 4月, 2008 1 次提交
  12. 03 4月, 2008 1 次提交
  13. 13 3月, 2008 1 次提交
  14. 19 2月, 2008 1 次提交
  15. 07 2月, 2008 1 次提交
    • G
      [POWERPC] bootwrapper: Build multiple cuImages · 25431333
      Grant Likely 提交于
      Currently, the kernel uses CONFIG_DEVICE_TREE to wrap a kernel image
      with a fdt blob which means for any given configuration only one dts
      file can be selected and so support for only one board can be built
      
      This moves the selection of the default .dts file out of the kernel
      config and into the bootwrapper makefile.  The makefile chooses which
      images to build based on the kernel config and the dts source file
      name is taken directly from the image name.  For example "cuImage.ebony"
      will use "ebony.dts" as the device tree source file.
      
      In addition, this patch allows a specific image to be requested from the
      command line by adding "cuImage.%" and "treeImage.%" targets to the list
      of valid built targets in arch/powerpc/Makefile.  This allows the default
      dts selection to be overridden.
      
      Another advantage to this change is it allows a single defconfig to be
      supplied for all boards using the same chip family and only differing in
      the device tree.
      
      Important note: This patch adds two new zImage targets; zImage.dtb.% and
      zImage.dtb.initrd.% for zImages with embedded dtb files.  Currently
      there are 5 platforms which require this: ps3, ep405, mpc885ads, ep88xc,
      adder875-redboot and ep8248e.  This patch *changes the zImage filenames*
      for those platforms.  ie. 'zImage.ps3' is now 'zImage.dtb.ps3'.
      
      This new zImage.dtb targets were added so that the .dts file could be
      part of the dependancies list for building them.
      Signed-off-by: NGrant Likely <grant.likely@secretlab.ca>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      25431333
  16. 06 12月, 2007 1 次提交
  17. 09 11月, 2007 1 次提交
    • K
      [POWERPC] Add -mno-spe for ARCH=powerpc builds · 0197cd2e
      Kumar Gala 提交于
      Newer GCC's are capable of autovectorization for ISA extensions like
      AltiVec and SPE.  If we happen to build with one of those compilers we
      will get SPE instructions in random kernel code.  Today we only allow
      basic interger code in the kernel and FP, AltiVec, or SPE in special
      explicit locations that have handled the proper saving and restoring of
      the register state (since on uniprocessor we lazy context switch the
      register state for FP, AltiVec, and SPE).
      
      -mno-spe disables the compiler for automatically generating SPE
      instructions without our knowledge.
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      0197cd2e
  18. 16 10月, 2007 2 次提交
    • S
      kbuild: enable 'make CPPFLAGS=...' to add additional options to CPP · 06c5040c
      Sam Ravnborg 提交于
      The variable CPPFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      
      This patch replace use of CPPFLAGS with KBUILD_CPPFLAGS all over the
      tree and enabling one to use:
      make CPPFLAGS=...
      to specify additional CPP commandline options.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      06c5040c
    • S
      kbuild: enable 'make AFLAGS=...' to add additional options to AS · 222d394d
      Sam Ravnborg 提交于
      The variable AFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      On top of that several people over time has asked for a way to
      pass in additional flags to gcc.
      
      This patch replace use of AFLAGS with KBUILD_AFLAGS all over
      the tree.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k, s390
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      222d394d
  19. 15 10月, 2007 1 次提交
    • S
      kbuild: enable 'make CFLAGS=...' to add additional options to CC · a0f97e06
      Sam Ravnborg 提交于
      The variable CFLAGS is a wellknown variable and the usage by
      kbuild may result in unexpected behaviour.
      On top of that several people over time has asked for a way to
      pass in additional flags to gcc.
      
      This patch replace use of CFLAGS with KBUILD_CFLAGS all over the
      tree and enabling one to use:
      make CFLAGS=...
      to specify additional gcc commandline options.
      
      One usecase is when trying to find gcc bugs but other
      use cases has been requested too.
      
      Patch was tested on following architectures:
      alpha, arm, i386, x86_64, mips, sparc, sparc64, ia64, m68k
      
      Test was simple to do a defconfig build, apply the patch and check
      that nothing got rebuild.
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      a0f97e06
  20. 03 10月, 2007 3 次提交
  21. 22 9月, 2007 1 次提交
  22. 23 8月, 2007 1 次提交
  23. 20 8月, 2007 1 次提交
  24. 17 7月, 2007 1 次提交
  25. 25 6月, 2007 1 次提交
  26. 02 6月, 2007 1 次提交
  27. 17 5月, 2007 1 次提交
  28. 12 5月, 2007 1 次提交
    • M
      [POWERPC] Add Makefile rules to wrap dts file in zImage · 916066d5
      Mark A. Greer 提交于
      Add 'zImage.dts' and 'zImage.dts_initrd' build rules that automatically
      compile and wrap a dts file from arch/powerpc/boot/dts into the zImage file.
      The resulting zImage will be arch/powerpc/boot/zImage.dts.<platform> and
      arch/powerpc/boot/zImage.dts_initrd.<platform>, respectively.
      
      Having separate rules allows the user to choose whether to include a device
      tree--and which device tree--at build time.  This is useful when one Makefile
      target builds a zImage that runs on several platforms except for differing
      device trees.  By just setting CONFIG_DEVICE_TREE and running "make zImage.dts"
      the exact zImage you want is built without Makefile bloat or manually running
      the wrapper script.
      
      The dts file is expected to be arch/powerpc/boot/dts/$(CONFIG_DEVICE_TREE)
      Signed-off-by: NMark A. Greer <mgreer@mvista.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      916066d5
  29. 02 5月, 2007 1 次提交
  30. 27 4月, 2007 2 次提交
  31. 24 4月, 2007 1 次提交
  32. 28 9月, 2006 1 次提交
    • P
      [POWERPC] Create a "wrapper" script and use it in arch/powerpc/boot · 2bf11819
      Paul Mackerras 提交于
      This puts the knowledge of how to create various sorts of zImage
      wrappers into a script called "wrapper" that could be used outside of
      the kernel tree.  This changes arch/powerpc/boot so it first builds
      the files that the wrapper script needs, then runs it to create
      whatever flavours of zImage are required.
      
      This version does uImages as well.  The zImage names are changed
      slightly; zImage.pseries is the one with the PT_NOTE program header
      entry added, and zImage.pmac is the one without.  If the
      zImage.pseries gets made, it will also get hardlinked to zImage;
      otherwise, if zImage.pmac is made, it gets hardlinked to zImage.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      2bf11819
  33. 15 6月, 2006 1 次提交
  34. 14 4月, 2006 1 次提交
    • O
      [PATCH] powerpc32: Set cpu explicitly in kernel compiles · f48b8296
      Olaf Hering 提交于
      Compile the 32bit kernel with -mcpu=powerpc. This reduces the imagesize
      when a compiler is used that defaults to -mtune=power4. It inserts lots
      of nops to please the 64bit cpu instruction scheduling. But all these nops
      are not needed for 32bit kernels.
      
      Example with SLES10 gcc 4.1.0 and arch/powerpc/configs/pmac32_defconfig:
      
                          vmlinux  vmlinux.strip  vmlinux.gz
       -O2                4980515     4187528      1846829
       -Os                4618801     3827084      1673333
       -O2 -mcpu=powerpc  4738851     3945868      1816253
       -Os -mcpu=powerpc  4532785     3741068      1664688
      Signed-off-by: NOlaf Hering <olh@suse.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f48b8296
  35. 28 3月, 2006 1 次提交