1. 13 7月, 2006 3 次提交
  2. 07 7月, 2006 9 次提交
  3. 04 7月, 2006 2 次提交
  4. 03 7月, 2006 7 次提交
  5. 01 7月, 2006 2 次提交
  6. 30 6月, 2006 3 次提交
    • I
      [PATCH] genirq: cleanup: remove irq_descp() · a8553acd
      Ingo Molnar 提交于
      Cleanup: remove irq_descp() - explicit use of irq_desc[] is shorter and more
      readable.
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      a8553acd
    • I
      [PATCH] genirq: cleanup: merge irq_affinity[] into irq_desc[] · a53da52f
      Ingo Molnar 提交于
      Consolidation: remove the irq_affinity[NR_IRQS] array and move it into the
      irq_desc[NR_IRQS].affinity field.
      
      [akpm@osdl.org: sparc64 build fix]
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      a53da52f
    • I
      [PATCH] genirq: rename desc->handler to desc->chip · d1bef4ed
      Ingo Molnar 提交于
      This patch-queue improves the generic IRQ layer to be truly generic, by adding
      various abstractions and features to it, without impacting existing
      functionality.
      
      While the queue can be best described as "fix and improve everything in the
      generic IRQ layer that we could think of", and thus it consists of many
      smaller features and lots of cleanups, the one feature that stands out most is
      the new 'irq chip' abstraction.
      
      The irq-chip abstraction is about describing and coding and IRQ controller
      driver by mapping its raw hardware capabilities [and quirks, if needed] in a
      straightforward way, without having to think about "IRQ flow"
      (level/edge/etc.) type of details.
      
      This stands in contrast with the current 'irq-type' model of genirq
      architectures, which 'mixes' raw hardware capabilities with 'flow' details.
      The patchset supports both types of irq controller designs at once, and
      converts i386 and x86_64 to the new irq-chip design.
      
      As a bonus side-effect of the irq-chip approach, chained interrupt controllers
      (master/slave PIC constructs, etc.) are now supported by design as well.
      
      The end result of this patchset intends to be simpler architecture-level code
      and more consolidation between architectures.
      
      We reused many bits of code and many concepts from Russell King's ARM IRQ
      layer, the merging of which was one of the motivations for this patchset.
      
      This patch:
      
      rename desc->handler to desc->chip.
      
      Originally i did not want to do this, because it's a big patch.  But having
      both "desc->handler", "desc->handle_irq" and "action->handler" caused a
      large degree of confusion and made the code appear alot less clean than it
      truly is.
      
      I have also attempted a dual approach as well by introducing a
      desc->chip alias - but that just wasnt robust enough and broke
      frequently.
      
      So lets get over with this quickly.  The conversion was done automatically
      via scripts and converts all the code in the kernel.
      
      This renaming patch is the first one amongst the patches, so that the
      remaining patches can stay flexible and can be merged and split up
      without having some big monolithic patch act as a merge barrier.
      
      [akpm@osdl.org: build fix]
      [akpm@osdl.org: another build fix]
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      d1bef4ed
  7. 29 6月, 2006 4 次提交
  8. 28 6月, 2006 10 次提交
    • K
      powerpc: minor cleanups for mpc86xx · 9ad494f6
      Kumar Gala 提交于
      * Remove duplicated cputable entry for 8641 (matches w/7448)
      * Removed __init from function prototypes in mpc86xx.h
      * Moved pci fixups into board specific code
      * Moved mpc86xx_exclude_device to generic mpc86xx pci code
      * Fixed sparse warnings in mpc86xx_smp.c
      * Removed board specific header include from asm-powerpc/mpc86xx.h
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      9ad494f6
    • S
      [POWERPC] Consolidate some of kernel/misc*.S · 127efeb2
      Stephen Rothwell 提交于
      There were some common functions (mainly i/o).
      
      Also some small white space cleanups and remove a couple of small unused
      functions.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      127efeb2
    • S
      a240da35
    • S
      [POWERPC] Clean up it_lp_queue.h · 612f02d6
      Stephen Rothwell 提交于
      No more StudlyCaps.
      Remove from a couple of places it is no longer needed.
      Use C style comments.
      Signed-off-by: NStephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      612f02d6
    • J
      [POWERPC] Skip the "copy down" of the kernel if it is already at zero. · d0b79c54
      Jimi Xenidis 提交于
      This patch allows the kernel to recognized that it was loaded at zero
      and the copy down of the image is unnecessary.  This is useful for
      Simulators and kexec models.
      On a typical 3.8 MiB vmlinux.strip this saves about 2.3 million instructions.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      d0b79c54
    • D
      [POWERPC] Add the use of the firmware soft-reset-nmi to kdump. · c0ce7d08
      David Wilder 提交于
      With this patch, kdump uses the firmware soft-reset NMI for two purposes:
      1) Initiate the kdump (take a crash dump) by issuing a soft-reset.
      2) Break a CPU out of a deadlock condition that is detected during kdump
      processing.
      
      When a soft-reset is initiated each CPU will enter
      system_reset_exception() and set its corresponding bit in the global
      bit-array cpus_in_sr then call die(). When die() finds the CPU's bit set
      in cpu_in_sr crash_kexec() is called to initiate a crash dump. The first
      CPU to enter crash_kexec() is called the "crashing CPU". All other CPUs
      are "secondary CPUs". The secondary CPU's pass through to
      crash_kexec_secondary() and sleep. The crashing CPU waits for all CPUs
      to enter via soft-reset then boots the kdump kernel (see
      crash_soft_reset_check())
      
      When the system crashes due to a panic or exception, crash_kexec() is
      called by panic() or die(). The crashing CPU sends an IPI to all other
      CPUs to notify them of the pending shutdown. If a CPU is in a deadlock
      or hung state with interrupts disabled, the IPI will not be delivered.
      The result being, that the kdump kernel is not booted. This problem is
      solved with the use of a firmware generated soft-reset. After the
      crashing_cpu has issued the IPI, it waits for 10 sec for all CPUs to
      enter crash_ipi_callback(). A CPU signifies its entry to
      crash_ipi_callback() by setting its corresponding bit in the
      cpus_in_crash bit array. After 10 sec, if one or more CPUs have not set
      their bit in cpus_in_crash we assume that the CPU(s) is deadlocked. The
      operator is then prompted to generate a soft-reset to break the
      deadlock. Each CPU enters the soft reset handler as described above.
      
      Two conditions must be handled at this point:
      1) The system crashed because the operator generated a soft-reset. See
      2) The system had crashed before the soft-reset was generated ( in the
      case of a Panic or oops).
      
      The first CPU to enter crash_kexec() uses the state of the kexec_lock to
      determine this state. If kexec_lock is already held then condition 2 is
      true and crash_kexec_secondary() is called, else; this CPU is flagged as
      the crashing CPU, the kexec_lock is acquired and crash_kexec() proceeds
      as described above.
      
      Each additional CPUs responding to the soft-reset will pass through
      crash_kexec() to kexec_secondary(). All secondary CPUs call
      crash_ipi_callback() readying them self's for the shutdown. When ready
      they clear their bit in cpus_in_sr. The crashing CPU waits in
      kexec_secondary() until all other CPUs have cleared their bits in
      cpus_in_sr. The kexec kernel boot is then started.
      Signed-off-by: NHaren Myneni <haren@us.ibm.com>
      Signed-off-by: NDavid Wilder <dwilder@us.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      c0ce7d08
    • M
      [POWERPC] Add udbg support for RTAS console · cc46bb98
      Michael Ellerman 提交于
      Add udbg hooks for the RTAS console, based on the RTAS put-term-char
      and get-term-char calls. Along with my previous patches, this should
      enable debugging as soon as early_init_dt_scan_rtas() is called.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      cc46bb98
    • M
      [POWERPC] Setup RTAS values earlier, to enable rtas_call() earlier · 458148c0
      Michael Ellerman 提交于
      Althought RTAS is instantiated when we enter the kernel, we can't actually
      call into it until we know its entry point address. Currently we grab that
      in rtas_initialize(), however that's quite late in the boot sequence.
      
      To enable rtas_call() earlier, we can grab the RTAS entry etc. values while
      we're scanning the flattened device tree. There's existing code to retrieve
      the values from /chosen, however we don't store them there anymore, so remove
      that code.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      458148c0
    • M
      [POWERPC] Move RTAS exports next to their declarations · ab3ab74d
      Michael Ellerman 提交于
      Move RTAS exports next to their declarations.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      ab3ab74d
    • M
      [POWERPC] Make rtas_call() safe if RTAS hasn't been initialised · 24da3dd5
      Michael Ellerman 提交于
      Currently it's unsafe to call rtas_call() prior to rtas_initialize(). This
      is because the rtas.entry value hasn't been setup and so we don't know
      where to enter, but we just try anyway.
      
      We can't do anything intelligent without rtas.entry, so if it's not set, just
      return. Code that calls rtas_call() early needs to be aware that the call
      might fail.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      24da3dd5