1. 23 1月, 2014 1 次提交
  2. 30 10月, 2013 3 次提交
  3. 18 9月, 2013 1 次提交
  4. 26 8月, 2013 1 次提交
  5. 19 7月, 2013 2 次提交
  6. 15 7月, 2013 1 次提交
    • P
      MIPS: Delete __cpuinit/__CPUINIT usage from MIPS code · 078a55fc
      Paul Gortmaker 提交于
      commit 3747069b25e419f6b51395f48127e9812abc3596 upstream.
      
      The __cpuinit type of throwaway sections might have made sense
      some time ago when RAM was more constrained, but now the savings
      do not offset the cost and complications.  For example, the fix in
      commit 5e427ec2 ("x86: Fix bit corruption at CPU resume time")
      is a good example of the nasty type of bugs that can be created
      with improper use of the various __init prefixes.
      
      After a discussion on LKML[1] it was decided that cpuinit should go
      the way of devinit and be phased out.  Once all the users are gone,
      we can then finally remove the macros themselves from linux/init.h.
      
      Note that some harmless section mismatch warnings may result, since
      notify_cpu_starting() and cpu_up() are arch independent (kernel/cpu.c)
      and are flagged as __cpuinit  -- so if we remove the __cpuinit from
      the arch specific callers, we will also get section mismatch warnings.
      As an intermediate step, we intend to turn the linux/init.h cpuinit
      related content into no-ops as early as possible, since that will get
      rid of these warnings.  In any case, they are temporary and harmless.
      
      Here, we remove all the MIPS __cpuinit from C code and __CPUINIT
      from asm files.  MIPS is interesting in this respect, because there
      are also uasm users hiding behind their own renamed versions of the
      __cpuinit macros.
      
      [1] https://lkml.org/lkml/2013/5/20/589
      
      [ralf@linux-mips.org: Folded in Paul's followup fix.]
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      Cc: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/5494/
      Patchwork: https://patchwork.linux-mips.org/patch/5495/
      Patchwork: https://patchwork.linux-mips.org/patch/5509/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      078a55fc
  7. 01 7月, 2013 2 次提交
  8. 27 6月, 2013 1 次提交
  9. 25 6月, 2013 1 次提交
    • J
      MIPS: Flush TLB handlers directly after writing them · a3d9086b
      Jonas Gorski 提交于
      When having enabled MIPS_PGD_C0_CONTEXT, trap_init() might call the
      generated tlbmiss_handler_setup_pgd before it was committed to memory,
      causing boot failures:
      
        trap_init()
         |- per_cpu_trap_init()
         |   |- TLBMISS_HANDLER_SETUP()
         |       |- tlbmiss_handler_setup_pgd()
         |- flush_tlb_handlers()
      
      To avoid this, move flush_tlb_handlers() into build_tlb_refill_handler()
      right after they were generated. We can do this as the cache handling is
      initialized just before creating the tlb handlers.
      
      This issue was introduced in 3d8bfdd0
      ("MIPS: Use C0_KScratch (if present) to hold PGD pointer.").
      Signed-off-by: NJonas Gorski <jogo@openwrt.org>
      Cc: linux-mips@linux-mips.org
      Cc: Steven J. Hill <Steven.Hill@imgtec.com>
      Cc: Jayachandran C <jchandra@broadcom.com>
      Cc: David Daney <david.daney@cavium.com>
      Patchwork: https://patchwork.linux-mips.org/patch/5539/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      a3d9086b
  10. 22 6月, 2013 1 次提交
  11. 13 6月, 2013 2 次提交
  12. 23 5月, 2013 1 次提交
  13. 17 5月, 2013 2 次提交
  14. 09 5月, 2013 1 次提交
  15. 08 5月, 2013 3 次提交
  16. 11 4月, 2013 1 次提交
  17. 17 2月, 2013 1 次提交
  18. 01 2月, 2013 1 次提交
  19. 27 12月, 2012 1 次提交
  20. 14 12月, 2012 1 次提交
  21. 12 12月, 2012 2 次提交
  22. 26 11月, 2012 2 次提交
    • R
      MIPS: tlbex: Better debug output. · a2c763e0
      Ralf Baechle 提交于
      Pgtable bits are assigned dynamically depending on processor feature and
      statically based on kernel configuration.  To make sense out of the
      disassembled TLB exception handlers a list of the actual assignments
      used for a particular configuration and hardware setup can be very useful.
      
      Output the actual TLB exception handlers in a format that simplifies their
      post processsing from dmesg output.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      a2c763e0
    • R
      MIPS: Remove R5000A. · fb2b1dba
      Ralf Baechle 提交于
      From a software perspective R5000 and R5000A are the same thing which is
      why the symbol CPU_R5000A never got used, so finally delete it.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      fb2b1dba
  23. 09 11月, 2012 1 次提交
    • K
      MIPS: tlbex: Fix section mismatches · f151f3b9
      Kevin Cernekee 提交于
      The new functions introduced in commit 02a54177 (MIPS: tlbex: Deal with
      re-definition of label) should be marked __cpuinit, to eliminate a
      warning that can pop up when CONFIG_EXPORT_UASM is disabled:
      
            LD      arch/mips/mm/built-in.o
          WARNING: arch/mips/mm/built-in.o(.text+0x2a4c): Section mismatch in reference from the function uasm_bgezl_hazard() to the function .cpuinit.text:uasm_il_bgezl()
          The function uasm_bgezl_hazard() references
          the function __cpuinit uasm_il_bgezl().
          This is often because uasm_bgezl_hazard lacks a __cpuinit
          annotation or the annotation of uasm_il_bgezl is wrong.
      
          WARNING: arch/mips/mm/built-in.o(.text+0x2a68): Section mismatch in reference from the function uasm_bgezl_label() to the function .cpuinit.text:uasm_build_label()
          The function uasm_bgezl_label() references
          the function __cpuinit uasm_build_label().
          This is often because uasm_bgezl_label lacks a __cpuinit
          annotation or the annotation of uasm_build_label is wrong.
      
      (This warning might not occur if the function was inlined.)
      Signed-off-by: NKevin Cernekee <cernekee@gmail.com>
      Patchwork: http://patchwork.linux-mips.org/patch/4517Signed-off-by: NJohn Crispin <blogic@openwrt.org>
      f151f3b9
  24. 17 10月, 2012 2 次提交
    • R
      MIPS: R5000: Fix TLB hazard handling. · 359187d6
      Ralf Baechle 提交于
      R5000 and the Nevada CPUs (RM5230, RM5231, RM5260, RM5261, RM5270 and
      RM5271) are basically the same CPU core and all are documented to require
      two instructions separating a write to c0_pagemask, c0_entryhi, c0_entrylo0,
      c0_entrylo1 or c0_index.
      
      So far we were only providing on cycle before / after a TLBR/TLBWI
      for R5000 but 3 cycles before and 1 cycles after for the Nevadas.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      359187d6
    • R
      MIPS: tlbex: Deal with re-definition of label · 02a54177
      Ralf Baechle 提交于
      The microassembler used in tlbex.c does not notice if a label is redefined
      resulting in relocations against such labels silently missrelocated.
      The issues exists since commit add6eb04776db4189ea89f596cbcde31b899be9d
      [Synthesize TLB exception handlers at runtime.] in 2.6.10 and went unnoticed
      for so long because the relocations for the affected branches got computed
      to do something *almost* sensible.
      
      The issue affects R4000, R4400, QED/IDT RM5230, RM5231, RM5260, RM5261,
      RM5270 and RM5271 processors.
      Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      02a54177
  25. 11 10月, 2012 1 次提交
  26. 14 9月, 2012 3 次提交
  27. 07 7月, 2012 1 次提交