1. 06 6月, 2011 1 次提交
    • P
      sh: Remove compressed kernel libgcc dependency. · 363e9f05
      Paul Mundt 提交于
      SH-2A is unable to combine the kernel and libgcc objects due to
      fundamental disagreements over FDPIC settings. As the kernel already
      contains all of the libgcc bits broken out, there's not much need to
      bother with the linking anymore, as everything can already be derived
      from the lib dir.
      
      This simply plugs in the necessary bits to ensure that everything is
      built uniformly, enabling us to wean the compressed build off of explicit
      libgcc linking.
      Reported-by: NPhil Edworthy <phil.edworthy@renesas.com>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      363e9f05
  2. 25 3月, 2011 1 次提交
  3. 15 2月, 2011 1 次提交
  4. 14 1月, 2011 1 次提交
  5. 08 12月, 2010 2 次提交
  6. 30 9月, 2010 1 次提交
    • M
      sh: boot kernel with SR.BL set · 68a1aed7
      Magnus Damm 提交于
      Update the SH kernel to keep SR.BL set until the VBR
      register has been initialized. Useful to allow boot
      of the kernel even though exceptions are pending.
      
      Without this patch there is a window of time when
      exceptions such as NMI are enabled but no exception
      handlers are installed.
      
      This patch modifies both the zImage loader and the
      actual kernel to boot with BL=1, but the zImage
      loader is modfied in such a way that the init_sr
      value is unchanged to not break the zImage loader
      provided by kexec.
      
      Tested on sh7724 Ecovec and on the SH4AL-DSP core
      included in sh7372.
      Signed-off-by: NMagnus Damm <damm@opensource.se>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      68a1aed7
  7. 31 5月, 2010 2 次提交
  8. 26 4月, 2010 2 次提交
  9. 03 3月, 2010 1 次提交
  10. 01 3月, 2010 1 次提交
  11. 18 2月, 2010 1 次提交
    • P
      sh: Merge legacy and dynamic PMB modes. · d01447b3
      Paul Mundt 提交于
      This implements a bit of rework for the PMB code, which permits us to
      kill off the legacy PMB mode completely. Rather than trusting the boot
      loader to do the right thing, we do a quick verification of the PMB
      contents to determine whether to have the kernel setup the initial
      mappings or whether it needs to mangle them later on instead.
      
      If we're booting from legacy mappings, the kernel will now take control
      of them and make them match the kernel's initial mapping configuration.
      This is accomplished by breaking the initialization phase out in to
      multiple steps: synchronization, merging, and resizing. With the recent
      rework, the synchronization code establishes page links for compound
      mappings already, so we build on top of this for promoting mappings and
      reclaiming unused slots.
      
      At the same time, the changes introduced for the uncached helpers also
      permit us to dynamically resize the uncached mapping without any
      particular headaches. The smallest page size is more than sufficient for
      mapping all of kernel text, and as we're careful not to jump to any far
      off locations in the setup code the mapping can safely be resized
      regardless of whether we are executing from it or not.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      d01447b3
  12. 16 2月, 2010 1 次提交
  13. 28 1月, 2010 1 次提交
    • P
      sh: Kill off superfluous sh_bios references from compressed loader. · abec86a8
      Paul Mundt 提交于
      The VBR value needs to be initialized in order for any of the bios
      trapping to work, and as we don't do that until slightly later in the
      boot process, this has no real chance of working.
      
      The only reason for using this in the past was due to the fact that early
      serial initialization wasn't possible, but now that early sh-sci is
      supported by everyone, there's no longer any reason to support the
      sh_bios hacks in the first place. Given that, we just kill off the
      references completely.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      abec86a8
  14. 13 1月, 2010 2 次提交
    • P
      sh: fixed PMB mode refactoring. · a0ab3668
      Paul Mundt 提交于
      This introduces some much overdue chainsawing of the fixed PMB support.
      fixed PMB was introduced initially to work around the fact that dynamic
      PMB mode was relatively broken, though they were never intended to
      converge. The main areas where there are differences are whether the
      system is booted in 29-bit mode or 32-bit mode, and whether legacy
      mappings are to be preserved. Any system booting in true 32-bit mode will
      not care about legacy mappings, so these are roughly decoupled.
      
      Regardless of the entry point, PMB and 32BIT are directly related as far
      as the kernel is concerned, so we also switch back to having one select
      the other.
      
      With legacy mappings iterated through and applied in the initialization
      path it's now possible to finally merge the two implementations and
      permit dynamic remapping overtop of remaining entries regardless of
      whether boot mappings are crafted by hand or inherited from the boot
      loader.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      a0ab3668
    • P
      sh: Add support for LZO-compressed kernels. · c7b16efb
      Paul Mundt 提交于
      Plugs in LZO along with the others.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      c7b16efb
  15. 04 12月, 2009 1 次提交
  16. 26 10月, 2009 1 次提交
  17. 10 10月, 2009 1 次提交
    • M
      sh: Obliterate the P1 area macros · 8bd642b1
      Matt Fleming 提交于
      Replace the use of PHYSADDR() with __pa(). PHYSADDR() is based on the
      idea that all addresses in P1SEG are untranslated, so we can access an
      address's physical page as an offset from P1SEG. This doesn't work for
      CONFIG_PMB/CONFIG_PMB_FIXED because pages in P1SEG and P2SEG are used
      for PMB mappings and so can be translated to any physical address.
      
      Likewise, replace a P1SEGADDR() use with virt_to_phys().
      Signed-off-by: NMatt Fleming <matt@console-pimps.org>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      8bd642b1
  18. 20 9月, 2009 1 次提交
    • S
      kbuild: use INSTALLKERNEL to select customized installkernel script · caa27b66
      Sam Ravnborg 提交于
      Replace the use of CROSS_COMPILE to select a customized
      installkernel script with the possibility to set INSTALLKERNEL
      to select a custom installkernel script when running make:
      
          make INSTALLKERNEL=arm-installkernel install
      
      With this patch we are now more consistent across
      different architectures - they did not all support use
      of CROSS_COMPILE.
      
      The use of CROSS_COMPILE was a hack as this really belongs
      to gcc/binutils and the installkernel script does not change
      just because we change toolchain.
      
      The use of CROSS_COMPILE caused troubles with an upcoming patch
      that saves CROSS_COMPILE when a kernel is built - it would no
      longer be installable.
      [Thanks to Peter Z. for this hint]
      
      This patch undos what Ian did in commit:
      
        0f8e2d62
        ("use ${CROSS_COMPILE}installkernel in arch/*/boot/install.sh")
      
      The patch has been lightly tested on x86 only - but all changes
      looks obvious.
      Acked-by: NPeter Zijlstra <peterz@infradead.org>
      Acked-by: Mike Frysinger <vapier@gentoo.org> [blackfin]
      Acked-by: Russell King <linux@arm.linux.org.uk> [arm]
      Acked-by: Paul Mundt <lethal@linux-sh.org> [sh]
      Acked-by: "H. Peter Anvin" <hpa@zytor.com> [x86]
      Cc: Ian Campbell <icampbell@arcom.com>
      Cc: Tony Luck <tony.luck@intel.com> [ia64]
      Cc: Fenghua Yu <fenghua.yu@intel.com> [ia64]
      Cc: Hirokazu Takata <takata@linux-m32r.org> [m32r]
      Cc: Geert Uytterhoeven <geert@linux-m68k.org> [m68k]
      Cc: Kyle McMartin <kyle@mcmartin.ca> [parisc]
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> [powerpc]
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> [s390]
      Cc: Thomas Gleixner <tglx@linutronix.de> [x86]
      Cc: Ingo Molnar <mingo@redhat.com> [x86]
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      caa27b66
  19. 24 8月, 2009 1 次提交
    • S
      sh: Remove implicit sign extension from assembler immediates · fea966f7
      Stuart Menefy 提交于
      The SH instruction set has several instructions which accept an 8 bit
      immediate operand. For logical instructions this operand is zero extended,
      for arithmetic instructions the operand is sign extended. After adding an
      option to the assembler to check this, it was found that several pieces
      of assembly code were assuming this behaviour, and in one case
      getting it wrong.
      
      So this patch explicitly sign extends any immediate operands, which makes
      it obvious what is happening, and fixes the one case which got it wrong.
      Signed-off-by: NStuart Menefy <stuart.menefy@st.com>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      fea966f7
  20. 07 8月, 2009 1 次提交
  21. 29 7月, 2009 1 次提交
  22. 21 7月, 2009 1 次提交
  23. 12 7月, 2009 5 次提交
  24. 11 7月, 2009 1 次提交
    • P
      sh: Decouple mcount from ftrace. · 473d1cf4
      Paul Mundt 提交于
      This adds a general CONFIG_MCOUNT in order to permit mcount generation
      without ftrace support. This is primarily for allowing platforms to
      enable aggressive stack overflow checking without having to enable ftrace
      support. Based on the sparc64 implementation.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      473d1cf4
  25. 09 5月, 2009 4 次提交
  26. 10 3月, 2009 1 次提交
  27. 31 10月, 2008 1 次提交
  28. 21 9月, 2008 1 次提交
  29. 08 9月, 2008 1 次提交