1. 09 7月, 2016 1 次提交
    • C
      powerpc/8xx: Fix vaddr for IMMR early remap · f86ef74e
      Christophe Leroy 提交于
      Memory: 124428K/131072K available (3748K kernel code, 188K rwdata,
      648K rodata, 508K init, 290K bss, 6644K reserved)
      Kernel virtual memory layout:
        * 0xfffdf000..0xfffff000  : fixmap
        * 0xfde00000..0xfe000000  : consistent mem
        * 0xfddf6000..0xfde00000  : early ioremap
        * 0xc9000000..0xfddf6000  : vmalloc & ioremap
      SLUB: HWalign=16, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
      
      Today, IMMR is mapped 1:1 at startup
      
      Mapping IMMR 1:1 is just wrong because it may overlap with another
      area. On most mpc8xx boards it is OK as IMMR is set to 0xff000000
      but for instance on EP88xC board, IMMR is at 0xfa200000 which
      overlaps with VM ioremap area
      
      This patch fixes the virtual address for remapping IMMR with the fixmap
      regardless of the value of IMMR.
      
      The size of IMMR area is 256kbytes (CPM at offset 0, security engine
      at offset 128k) so a 512k page is enough
      Signed-off-by: NChristophe Leroy <christophe.leroy@c-s.fr>
      Signed-off-by: NScott Wood <oss@buserror.net>
      f86ef74e
  2. 12 3月, 2016 1 次提交
  3. 03 6月, 2015 2 次提交
  4. 08 11月, 2014 1 次提交
  5. 20 8月, 2009 1 次提交
  6. 21 12月, 2008 1 次提交
    • B
      powerpc/mm: Rework context management for CPUs with no hash table · 2ca8cf73
      Benjamin Herrenschmidt 提交于
      This reworks the context management code used by 4xx,8xx and
      freescale BookE.  It adds support for SMP by implementing a
      concept of stale context map to lazily flush the TLB on
      processors where a context may have been invalidated.  This
      also contains the ground work for generalizing such lazy TLB
      flushing by just picking up a new PID and marking the old one
      stale.  This will be implemented later.
      
      This is a first implementation that uses a global spinlock.
      
      Ideally, we should try to get at least the fast path (context ID
      already assigned) lockless or limited to a per context lock,
      but for now this will do.
      
      I tried to keep the UP case reasonably simple to avoid adding
      too much overhead to 8xx which does a lot of context stealing
      since it effectively has only 16 PIDs available.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Acked-by: NKumar Gala <galak@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      2ca8cf73
  7. 04 8月, 2008 1 次提交
  8. 17 4月, 2008 1 次提交
    • K
      [POWERPC] Move phys_addr_t definition into asm/types.h · d04ceb3f
      Kumar Gala 提交于
      Moved phys_addr_t out of mmu-*.h and into asm/types.h so we can use it in
      places that before would have caused recursive includes.
      
      For example to use phys_addr_t in <asm/page.h> we would have included
      <asm/mmu.h> which would have possibly included <asm/mmu-hash64.h> which
      includes <asm/page.h>.  Wheeee recursive include.
      
      CONFIG_PHYS_64BIT is a bit counterintuitive in light of ppc64 systems
      and thus the config option is only used for ppc32 systems with >32-bit
      physical addresses (44x, 85xx, 745x, etc.).
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      d04ceb3f
  9. 03 7月, 2007 1 次提交