1. 12 5月, 2008 1 次提交
  2. 08 2月, 2008 1 次提交
    • B
      Introduce flags for reserve_bootmem() · 72a7fe39
      Bernhard Walle 提交于
      This patchset adds a flags variable to reserve_bootmem() and uses the
      BOOTMEM_EXCLUSIVE flag in crashkernel reservation code to detect collisions
      between crashkernel area and already used memory.
      
      This patch:
      
      Change the reserve_bootmem() function to accept a new flag BOOTMEM_EXCLUSIVE.
      If that flag is set, the function returns with -EBUSY if the memory already
      has been reserved in the past.  This is to avoid conflicts.
      
      Because that code runs before SMP initialisation, there's no race condition
      inside reserve_bootmem_core().
      
      [akpm@linux-foundation.org: coding-style fixes]
      [akpm@linux-foundation.org: fix powerpc build]
      Signed-off-by: NBernhard Walle <bwalle@suse.de>
      Cc: <linux-arch@vger.kernel.org>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Cc: Vivek Goyal <vgoyal@in.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      72a7fe39
  3. 03 2月, 2008 1 次提交
  4. 29 1月, 2008 2 次提交
    • R
      87353d8a
    • M
      [MIPS] R4000/R4400 errata workarounds · 20d60d99
      Maciej W. Rozycki 提交于
       This is the gereric part of R4000/R4400 errata workarounds.  They include 
      compiler and assembler support as well as some source code modifications 
      to address the problems with some combinations of multiply/divide+shift 
      instructions as well as the daddi and daddiu instructions.
      
       Changes included are as follows:
      
      1. New Kconfig options to select workarounds by platforms as necessary.
      
      2. Arch top-level Makefile to pass necessary options to the compiler; also 
         incompatible configurations are detected (-mno-sym32 unsupported as 
         horribly intrusive for little gain).
      
      3. Bug detection updated and shuffled -- the multiply/divide+shift problem 
         is lethal enough that if not worked around it makes the kernel crash in 
         time_init() because of a division by zero; the daddiu erratum might 
         also trigger early potentially, though I have not observed it.  On the 
         other hand the daddi detection code requires the exception subsystem to 
         have been initialised (and is there mainly for information).
      
      4. r4k_daddiu_bug() added so that the existence of the erratum can be 
         queried by code at the run time as necessary; useful for generated code 
         like TLB fault and copy/clear page handlers.
      
      5. __udelay() updated as it uses multiplication in inline assembly.
      
       Note that -mdaddi requires modified toolchain (which has been maintained 
      by myself and available from my site for ~4years now -- versions covered 
      are GCC 2.95.4 - 4.1.2 and binutils from 2.13 onwards).  The -mfix-r4000 
      and -mfix-r4400 have been standard for a while though.
      Signed-off-by: NMaciej W. Rozycki <macro@linux-mips.org>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      20d60d99
  5. 12 1月, 2008 1 次提交
  6. 27 11月, 2007 1 次提交
    • R
      [MIPS] 64-bit Sibyte kernels need DMA32. · cce335ae
      Ralf Baechle 提交于
      Sibyte SOCs only have 32-bit PCI.  Due to the sparse use of the address
      space only the first 1GB of memory is mapped at physical addresses
      below 1GB.  If a system has more than 1GB of memory 32-bit DMA will
      not be able to reach all of it.
      
      For now this patch is good enough to keep Sibyte users happy but it seems
      eventually something like swiotlb will be needed for Sibyte.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      cce335ae
  7. 12 10月, 2007 1 次提交
  8. 11 7月, 2007 1 次提交
  9. 05 3月, 2007 1 次提交
  10. 20 2月, 2007 1 次提交
  11. 13 2月, 2007 1 次提交
  12. 07 2月, 2007 4 次提交
  13. 30 11月, 2006 3 次提交
  14. 03 11月, 2006 1 次提交
  15. 27 9月, 2006 6 次提交
  16. 11 7月, 2006 1 次提交
  17. 01 7月, 2006 1 次提交
  18. 30 6月, 2006 1 次提交
  19. 20 6月, 2006 1 次提交
    • R
      [MIPS] Cleanup memory managment initialization. · 2925aba4
      Ralf Baechle 提交于
      Historically plat_mem_setup did the entire platform initialization.  This
      was rather impractical because it meant plat_mem_setup had to get away
      without any kind of memory allocator.  To keep old code from breaking
      plat_setup was just renamed to plat_setup and a second platform
      initialization hook for anything else was introduced.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      2925aba4
  20. 06 6月, 2006 3 次提交
    • C
      [MIPS] Fix sparsemem support. · b1c231f5
      Chad Reese 提交于
          
      Move memory_present() in arch/mips/kernel/setup.c. When using sparsemem
      extreme, this function does an allocate for bootmem. This would always
      fail since init_bootmem hasn't been called yet.
          
      Move memory_present after free_bootmem. This only marks actual memory
      ranges as present instead of the entire address space.
      Signed-off-by: NChad Reese  <creese@caviumnetworks.com>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      b1c231f5
    • A
      [MIPS] Fix compiler warnings (field width, unused variable) · ecf52d3c
      Atsushi Nemoto 提交于
          
      Fix following warnings:
      linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 2)
      linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 4)
      linux/arch/mips/kernel/syscall.c:279: warning: unused variable `len'
      linux/arch/mips/kernel/syscall.c:280: warning: unused variable `name'
      linux/arch/mips/math-emu/dp_fint.c:32: warning: unused variable `xc'
      linux/arch/mips/math-emu/dp_flong.c:32: warning: unused variable `xc'
      linux/arch/mips/math-emu/sp_fint.c:32: warning: unused variable `xc'
      linux/arch/mips/math-emu/sp_flong.c:32: warning: unused variable `xc'
          
      (original patch by Atsushi, slight changes to the setup.c part by me.)
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      ecf52d3c
    • A
      [MIPS] Fix sparse warnings about too big constants. · 460c0422
      Atsushi Nemoto 提交于
          
      Fix following warnings:
      linux/arch/mips/kernel/setup.c:249:12: warning: constant 0xffffffff00000000 is so big it is unsigned long
      linux/arch/mips/kernel/cpu-bugs64.c:209:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
      linux/arch/mips/kernel/cpu-bugs64.c:227:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
      linux/arch/mips/kernel/cpu-bugs64.c:283:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
      linux/arch/mips/kernel/cpu-bugs64.c:299:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long
      Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      460c0422
  21. 19 4月, 2006 1 次提交
  22. 28 3月, 2006 1 次提交
    • D
      [PATCH] unify PFN_* macros · 22a9835c
      Dave Hansen 提交于
      Just about every architecture defines some macros to do operations on pfns.
       They're all virtually identical.  This patch consolidates all of them.
      
      One minor glitch is that at least i386 uses them in a very skeletal header
      file.  To keep away from #include dependency hell, I stuck the new
      definitions in a new, isolated header.
      
      Of all of the implementations, sh64 is the only one that varied by a bit.
      It used some masks to ensure that any sign-extension got ripped away before
      the arithmetic is done.  This has been posted to that sh64 maintainers and
      the development list.
      
      Compiles on x86, x86_64, ia64 and ppc64.
      Signed-off-by: NDave Hansen <haveblue@us.ibm.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      22a9835c
  23. 21 3月, 2006 1 次提交
  24. 28 2月, 2006 1 次提交
    • R
      [MIPS] SMP: Fix initialization order bug. · 9b6695a8
      Ralf Baechle 提交于
          
      A recent change requires cpu_possible_map to be initialized before
      smp_sched_init() but most MIPS platforms were initializing their
      processors in the prom_prepare_cpus callback of smp_prepare_cpus.  The
      simple fix of calling prom_prepare_cpus from one of the earlier SMP
      initialization hooks doesn't work well either since IPIs may require
      init_IRQ() to have completed, so bit the bullet and split
      prom_prepare_cpus into two initialization functions, plat_smp_setup
      which is called early from setup_arch and plat_prepare_cpus called where
      prom_prepare_cpus used to be called.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      9b6695a8
  25. 30 10月, 2005 3 次提交