1. 08 2月, 2011 1 次提交
    • G
      m68knommu: fix use of un-defined _TIF_WORK_MASK · b3e338de
      Greg Ungerer 提交于
      The _TIF_WORK_MASK definition was removed in the clean up of MMU and
      non-MMU arch/m68k/include/asm/thread_info*.h files (this was commit
      cddafa35, "merge MMU and non-MMU
      thread_info.h").
      
      It didn't get cleaned out of the entry.S code for the 68328 and 68360
      based platforms. And it was replaced by a hard coded constant mask for
      coldfire platforms. There is currently no need to mask any of these bits,
      so fix all uses (and former uses) to check for any non-zero value.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      b3e338de
  2. 07 1月, 2011 2 次提交
  3. 05 1月, 2011 5 次提交
    • G
      m68knommu: make cache push code ColdFire generic · d475e3e4
      Greg Ungerer 提交于
      Currently the code to push cache lines is only available to version 4
      cores. Version 3 cores may also need to use this if we support copy-
      back caches on them. Move this code to make it more generic, and
      useful for all version ColdFire cores.
      
      With this in place we can now have a single cache_flush_all() code
      path that does all the right things on all version cores.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      d475e3e4
    • G
      m68knommu: clean up ColdFire cache control code · 8ce877a8
      Greg Ungerer 提交于
      The cache control code for the ColdFire CPU's is a big ugly mess
      of "#ifdef"ery liberally coated with bit constants. Clean it up.
      
      The cache controllers in the various ColdFire parts are actually quite
      similar. Just differing in some bit flags and options supported. Using
      the header defines now in place it is pretty easy to factor out the
      small differences and use common setup and flush/invalidate code.
      
      I have preserved the cache setups as they where in the old code
      (except where obviously wrong - like in the case of the 5249). Following
      from this it should be easy now to extend the possible setups used on
      the CACHE controllers that support split cacheing or copy-back or
      write through options.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      8ce877a8
    • G
      m68knommu: use user stack pointer hardware on some ColdFire cores · 1c83af5f
      Greg Ungerer 提交于
      The more modern ColdFire parts (even if based on older version cores)
      have separate user and supervisor stack pointers (a7 register).
      Modify the ColdFire CPU setup and exception code to enable and use
      this on parts that have it.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      1c83af5f
    • G
      m68knommu: remove fasthandler interrupt code · fb670fb8
      Greg Ungerer 提交于
      There are no users of the old "fasthandler" interrupt entry code.
      So remove it.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      fb670fb8
    • G
      m68knommu: make Coldfire 548x support more generic · 5b2e6555
      Greg Ungerer 提交于
      The ColdFire 547x family of processors is very similar to the ColdFire
      548x series. Almost all of the support for them is the same. Make the
      code supporting the 548x more gneric, so it will be capable of
      supporting both families.
      
      For the most part this is a renaming excerise to make the support
      code more obviously apply to both families.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      5b2e6555
  4. 22 10月, 2010 2 次提交
  5. 21 10月, 2010 5 次提交
  6. 07 10月, 2010 1 次提交
    • D
      Fix IRQ flag handling naming · df9ee292
      David Howells 提交于
      Fix the IRQ flag handling naming.  In linux/irqflags.h under one configuration,
      it maps:
      
      	local_irq_enable() -> raw_local_irq_enable()
      	local_irq_disable() -> raw_local_irq_disable()
      	local_irq_save() -> raw_local_irq_save()
      	...
      
      and under the other configuration, it maps:
      
      	raw_local_irq_enable() -> local_irq_enable()
      	raw_local_irq_disable() -> local_irq_disable()
      	raw_local_irq_save() -> local_irq_save()
      	...
      
      This is quite confusing.  There should be one set of names expected of the
      arch, and this should be wrapped to give another set of names that are expected
      by users of this facility.
      
      Change this to have the arch provide:
      
      	flags = arch_local_save_flags()
      	flags = arch_local_irq_save()
      	arch_local_irq_restore(flags)
      	arch_local_irq_disable()
      	arch_local_irq_enable()
      	arch_irqs_disabled_flags(flags)
      	arch_irqs_disabled()
      	arch_safe_halt()
      
      Then linux/irqflags.h wraps these to provide:
      
      	raw_local_save_flags(flags)
      	raw_local_irq_save(flags)
      	raw_local_irq_restore(flags)
      	raw_local_irq_disable()
      	raw_local_irq_enable()
      	raw_irqs_disabled_flags(flags)
      	raw_irqs_disabled()
      	raw_safe_halt()
      
      with type checking on the flags 'arguments', and then wraps those to provide:
      
      	local_save_flags(flags)
      	local_irq_save(flags)
      	local_irq_restore(flags)
      	local_irq_disable()
      	local_irq_enable()
      	irqs_disabled_flags(flags)
      	irqs_disabled()
      	safe_halt()
      
      with tracing included if enabled.
      
      The arch functions can now all be inline functions rather than some of them
      having to be macros.
      
      Signed-off-by: David Howells <dhowells@redhat.com> [X86, FRV, MN10300]
      Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> [Tile]
      Signed-off-by: Michal Simek <monstr@monstr.eu> [Microblaze]
      Tested-by: Catalin Marinas <catalin.marinas@arm.com> [ARM]
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> [AVR]
      Acked-by: Tony Luck <tony.luck@intel.com> [IA-64]
      Acked-by: Hirokazu Takata <takata@linux-m32r.org> [M32R]
      Acked-by: Greg Ungerer <gerg@uclinux.org> [M68K/M68KNOMMU]
      Acked-by: Ralf Baechle <ralf@linux-mips.org> [MIPS]
      Acked-by: Kyle McMartin <kyle@mcmartin.ca> [PA-RISC]
      Acked-by: Paul Mackerras <paulus@samba.org> [PowerPC]
      Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [S390]
      Acked-by: Chen Liqin <liqin.chen@sunplusct.com> [Score]
      Acked-by: Matt Fleming <matt@console-pimps.org> [SH]
      Acked-by: David S. Miller <davem@davemloft.net> [Sparc]
      Acked-by: Chris Zankel <chris@zankel.net> [Xtensa]
      Reviewed-by: Richard Henderson <rth@twiddle.net> [Alpha]
      Reviewed-by: Yoshinori Sato <ysato@users.sourceforge.jp> [H8300]
      Cc: starvik@axis.com [CRIS]
      Cc: jesper.nilsson@axis.com [CRIS]
      Cc: linux-cris-kernel@axis.com
      df9ee292
  7. 17 1月, 2010 1 次提交
  8. 04 12月, 2009 2 次提交
  9. 30 9月, 2009 1 次提交
  10. 16 9月, 2009 13 次提交
  11. 10 9月, 2009 1 次提交
  12. 11 6月, 2009 1 次提交
  13. 22 4月, 2009 1 次提交
  14. 24 3月, 2009 1 次提交
  15. 27 1月, 2009 1 次提交
    • S
      m68knommu: use one exist from execption · c7bcd0df
      Sebastian Siewior 提交于
      Part of the code that did not make sense to me got removed by Greg.
      This is part two:
      
      The first compare is to check whether the interrupts are disabled or not.
      Depending on the result we exectute the RESTORE_ALL macro is not only
      restoring the stack but also returning to caller.
      The test for pending softirq has been removed because it is allready done
      in irq_exit().
      Since system_call() is allso using the SAVE_ALL macro and returning via
      ret_from_exception label I see no reason why we could not do this here
      as well. This is also handy because if we return from the timer interrupt
      and we need to resched than we check for this :)
      Signed-off-by: NSebastian Siewior <bigeasy@linutronix.de>
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      c7bcd0df
  16. 13 12月, 2008 1 次提交
  17. 23 7月, 2008 1 次提交
    • G
      m68knommu: put ColdFire head code into .text.head section · 9b0e7410
      Greg Ungerer 提交于
      Switch the ColdFire head start up code to be in the .text.head segment.
      And make sure that segment is at the start of the final linked text
      segment. Fixes the linker warnings about section use mis-matches:
      
        WARNING: vmlinux.o(.text+0xa8): Section mismatch in reference from the variable _clear_bss to the function .init.text:start_kernel()
        The function _clear_bss() references
        the function __init start_kernel().
        This is often because _clear_bss lacks a __init
        annotation or the annotation of start_kernel is wrong.
      Signed-off-by: NGreg Ungerer <gerg@uclinux.org>
      9b0e7410