07 Dec, 2006

1 commit

  • __do_IRQ() is needed only by irq handlers that can't use
    default handlers defined in kernel/irq/chip.c.

    For others platforms there's no need to compile this function
    since it won't be used. For those platforms this patch defines
    GENERIC_HARDIRQS_NO__DO_IRQ symbol which is used exactly for
    this purpose.

    Futhermore for platforms which do not use __do_IRQ(), end()
    method which is part of the 'irq_chip' structure is not used.
    This patch simply removes this method in this case.

    Signed-off-by: Franck Bui-Huu
    Signed-off-by: Ralf Baechle

    Franck Bui-Huu
     

30 Nov, 2006

2 commits

  • Further incorporation of generic irq framework. Replacing __do_IRQ()
    by proper flow handler would make the irq handling path a bit simpler
    and faster.

    * use generic_handle_irq() instead of __do_IRQ().
    * use handle_level_irq for obvious level-type irq chips.
    * use handle_percpu_irq for irqs marked as IRQ_PER_CPU.
    * setup .eoi routine for irq chips possibly used with handle_percpu_irq.

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     
  • This is a big irq cleanup patch.

    * Use set_irq_chip() to register irq_chip.
    * Initialize .mask, .unmask, .mask_ack field. Functions for these
    method are already exist in most case.
    * Do not initialize .startup, .shutdown, .enable, .disable fields if
    default routines provided by irq_chip_set_defaults() were suitable.
    * Remove redundant irq_desc initializations.
    * Remove unnecessary local_irq_save/local_irq_restore, spin_lock.

    With this cleanup, it would be easy to switch to slightly lightwait
    irq flow handlers (handle_level_irq(), etc.) instead of __do_IRQ().

    Though whole this patch is quite large, changes in each irq_chip are
    not quite simple. Please review and test on your platform. Thanks.

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     

07 Nov, 2006

7 commits


03 Nov, 2006

1 commit


31 Oct, 2006

1 commit


09 Oct, 2006

2 commits


08 Oct, 2006

1 commit


30 Sep, 2006

1 commit

  • Pass ticks to do_timer() and update_times(), and adjust x86_64 and s390
    timer interrupt handler with this change.

    Currently update_times() calculates ticks by "jiffies - wall_jiffies", but
    callers of do_timer() should know how many ticks to update. Passing ticks
    get rid of this redundant calculation. Also there are another redundancy
    pointed out by Martin Schwidefsky.

    This cleanup make a barrier added by
    5aee405c662ca644980c184774277fc6d0769a84 needless. So this patch removes
    it.

    As a bonus, this cleanup make wall_jiffies can be removed easily, since now
    wall_jiffies is always synced with jiffies. (This patch does not really
    remove wall_jiffies. It would be another cleanup patch)

    Signed-off-by: Atsushi Nemoto
    Cc: Martin Schwidefsky
    Cc: "Eric W. Biederman"
    Cc: Thomas Gleixner
    Cc: Ingo Molnar
    Cc: john stultz
    Cc: Andi Kleen
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Acked-by: Russell King
    Cc: Ian Molton
    Cc: Mikael Starvik
    Acked-by: David Howells
    Cc: Yoshinori Sato
    Cc: Hirokazu Takata
    Acked-by: Ralf Baechle
    Cc: Kyle McMartin
    Cc: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Paul Mundt
    Cc: Kazumoto Kojima
    Cc: Richard Curnow
    Cc: William Lee Irwin III
    Cc: "David S. Miller"
    Cc: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Cc: Miles Bader
    Cc: Chris Zankel
    Acked-by: "Luck, Tony"
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Atsushi Nemoto
     

14 Jul, 2006

2 commits


03 Jul, 2006

1 commit


01 Jul, 2006

1 commit


30 Jun, 2006

3 commits

  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (33 commits)
    [MIPS] Add missing backslashes to macro definitions.
    [MIPS] Death list of board support to be removed after 2.6.18.
    [MIPS] Remove BSD and Sys V compat data types.
    [MIPS] ioc3.h: Uses u8, so include .
    [MIPS] 74K: Assume it will also have an AR bit in config7
    [MIPS] Treat CPUs with AR bit as physically indexed.
    [MIPS] Oprofile: Support VSMP on 34K.
    [MIPS] MIPS32/MIPS64 S-cache fix and cleanup
    [MIPS] excite: PCI makefile needs to use += if it wants a chance to work.
    [MIPS] excite: plat_setup -> plat_mem_setup.
    [MIPS] au1xxx: export dbdma functions
    [MIPS] au1xxx: dbdma, no sleeping under spin_lock
    [MIPS] au1xxx: fix PSC_SMBTXRX_RSR.
    [MIPS] Early printk for IP27.
    [MIPS] Fix handling of 0 length I & D caches.
    [MIPS] Typo fixes.
    [MIPS] MIPS32/MIPS64 secondary cache management
    [MIPS] Fix FIXADDR_TOP for TX39/TX49.
    [MIPS] Remove first timer interrupt setup in wrppmc_timer_setup()
    [MIPS] Fix configuration of R2 CPU features and multithreading.
    ...

    Linus Torvalds
     
  • Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • 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: Ingo Molnar
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     

27 Jun, 2006

1 commit

  • acquired (aquired)
    contiguous (contigious)
    successful (succesful, succesfull)
    surprise (suprise)
    whether (weather)
    some other misspellings

    Signed-off-by: Andreas Mohr
    Signed-off-by: Adrian Bunk

    Andreas Mohr
     

20 Jun, 2006

1 commit

  • 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: Ralf Baechle

    Ralf Baechle
     

05 Jun, 2006

1 commit


19 Apr, 2006

4 commits


29 Mar, 2006

1 commit


28 Mar, 2006

1 commit


21 Mar, 2006

1 commit


10 Mar, 2006

1 commit


09 Feb, 2006

1 commit


07 Feb, 2006

1 commit


05 Feb, 2006

1 commit


18 Nov, 2005

1 commit


08 Nov, 2005

1 commit


30 Oct, 2005

1 commit