22 Jul, 2007

1 commit

  • We need to make sure, that the clockevent devices are resumed, before
    the tick is resumed. The current resume logic does not guarantee this.

    Add CLOCK_EVT_MODE_RESUME and call the set mode functions of the clock
    event devices before resuming the tick / oneshot functionality.

    Fixup the existing users.

    Thanks to Nigel Cunningham for tracking down a long standing thinko,
    which affected the jinxed VAIO.

    [akpm@linux-foundation.org: xen build fix]
    Signed-off-by: Thomas Gleixner
    Cc: john stultz
    Cc: Rusty Russell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Gleixner
     

20 Jul, 2007

29 commits

  • This patch converts the cpu specific 7750 setup code to use the
    new intc controller. Many new vectors are added and multiple
    processor variants including 7091, 7750, 7750s, 7750r, 7751 and
    7751r should all have the correct vectors hooked up.

    IRLM interrupts can be enabled using ipr_irq_enable_irlm() which
    now is marked as __init.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Follow Al Viro's m68k change from l-k:

    i.e. tell modpost that entry point code (that has to be outside
    of .init.text for external reasons) is OK to refer to .init.*

    Shuts up some section mismatch warnings from modpost.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This patch updates the r2d board support in a few ways:

    - CPU_SUBTYPE_SH7751R is selected in the defconfig to play well
    with the r2d board Kconfig entry. Without this the defconfig
    results in no board enabled.

    - Enable EARLY_PRINTK.
    - Enable SH_STANDARD_BIOS
    - this works well for early printk on the r2d board.

    - Add "earlyprink=bios" to the cmdline for early serial port
    output by default.

    - CONFIG_SUBTYPE_SH7751R support is added to the sh-specific
    pci makefile.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • allmodconfig generates a lot of interesting code, a lot of the
    generated symbols we've never exported before, so this fixes
    those up. Verified with both GCC3 and GCC4 toolchains.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • struct plat_serial8250_port should contain a terminating zero entry

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Currently this has a prompt to allow users to change it. There's
    no reason to do this, and it has caused breakage and confusion
    in the past, so remove it entirely.

    We'll get rid of this when the whole driver is tidied for
    the driver model.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • We only handle SH-3 and SH-4 at present, don't expose it to the
    other CPUs.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Paul Mundt
     
  • This gets the SH cpufreq working again. We follow the changes
    in the AVR32 implementation for wrapping in to the clock framework.
    CPUs that wish to use this are required to define rate rounding
    primitives in order to satisfy clk_round_rate().

    This works well enough for the common case, though we should
    look at unifying this driver across all of the platforms that
    implement clock framework support in one capacity or another.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Now that the round_rate() op is supported, hook it up on SH7722
    for the FRQCR (CPU, PCLK, etc.) clocks.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This is an optional component of the clock framework. However,
    as we're going to be using this in the cpufreq drivers, add
    support for it to the framework.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Flag pcibios_setup() and pcibios_fixup_bus() as __devinit.
    Follows the sh64 change.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This patch converts the cpu specific 7780 setup code to use the
    new intc controller. Many new vectors are added and also support for
    external interrupt sense configuration. So with this patch it is now
    possible to configure external interrupt pins as edge or level
    triggered using set_irq_type().

    No external interrupts are registered by default.
    Use plat_irq_setup_pins() to select between IRQ or IRL mode.

    This patch also fixes the Alarm IRQ for the RTC.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This patch improves intc group support, ie it makes it possible to
    group interrupts together and mask / unmask the entire group. This
    also works with priorities, so setting a priority for an entire group
    is also possible. This patch is needed to properly support certain
    processors such as the 7780.

    Fixes for NULL pointers in DECLARE_INTC_DESC() are also included.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This was accidentally set as "GPLv2", whereas the kernel expects v2
    to be written "GPL v2", this caused complaints regarding the use
    of the platform device APIs when built as a module.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This is only supported on SH-4, so don't expose it for the other
    CPUs. Additionally, it's suffered some bitrot, so add a BROKEN
    dependency as well until we fix it up.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • This patch unifies the cpu specific interrupt setup functions for
    interrupt controller blocks such as ipr, intc2 and intc. There is no
    point in having separate functions for each interrupt controller, so
    let's clean this up.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This patch cleans up solution engine 7722 specific interrupt code.
    The main purpose is to replace the mux function with use of
    set_irq_chained_handler() and replace hard coded register poking
    code with set_irq_type(). The board specific interrupts are also
    moved to start from SE7722_FPGA_IRQ_BASE.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This patch converts the cpu specific 7722 setup code to use the
    new intc controller. Many new vectors are added and also support
    for external interrupt sense configuration. So with this patch
    it is now possible to configure external interrupt pins as edge
    or level triggered using set_irq_type().

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This is the second version of the shared interrupt controller patch
    for the sh architecture, fixing up handling of intc_reg_fns[].

    The three main advantages with this controller over the existing
    ones are:

    - Both priority (ipr) and bitmap (intc2) registers are
    supported
    - External pin sense configuration is supported, ie edge
    vs level triggered
    - CPU/Board specific code maps 1:1 with datasheet for
    easy verification

    This controller can easily coexist with the current IPR and INTC2
    controllers, but the idea is that CPUs/Boards should be moved over
    to this controller over time so we have a single code base to
    maintain.

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • This patch contains two serial port related fixes for sh7722:
    - Make sure the irqs for the first serial port is correct
    - Add the second and third serial port to the platform data

    Signed-off-by: Magnus Damm
    Signed-off-by: Paul Mundt

    Magnus Damm
     
  • Kill off the hd64461 io.c, as all of the hd64461 users are now
    using the generic I/O routines.

    [ hd64461/ moved to hd64461.c by Paul ]

    Signed-off-by: Kristoffer Ericson
    Signed-off-by: Paul Mundt

    Kristoffer Ericson
     
  • This wires up the platform devices for the USB expansion boards for
    the Highlander boards.

    Signed-off-by: Yoshihiro Shimoda
    Signed-off-by: Paul Mundt

    Yoshihiro Shimoda
     
  • Slab destructors were no longer supported after Christoph's
    c59def9f222d44bb7e2f0a559f2906191a0862d7 change. They've been
    BUGs for both slab and slub, and slob never supported them
    either.

    This rips out support for the dtor pointer from kmem_cache_create()
    completely and fixes up every single callsite in the kernel (there were
    about 224, not including the slab allocator definitions themselves,
    or the documentation references).

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • per cpu data section contains two types of data. One set which is
    exclusively accessed by the local cpu and the other set which is per cpu,
    but also shared by remote cpus. In the current kernel, these two sets are
    not clearely separated out. This can potentially cause the same data
    cacheline shared between the two sets of data, which will result in
    unnecessary bouncing of the cacheline between cpus.

    One way to fix the problem is to cacheline align the remotely accessed per
    cpu data, both at the beginning and at the end. Because of the padding at
    both ends, this will likely cause some memory wastage and also the
    interface to achieve this is not clean.

    This patch:

    Moves the remotely accessed per cpu data (which is currently marked
    as ____cacheline_aligned_in_smp) into a different section, where all the data
    elements are cacheline aligned. And as such, this differentiates the local
    only data and remotely accessed data cleanly.

    Signed-off-by: Fenghua Yu
    Acked-by: Suresh Siddha
    Cc: Rusty Russell
    Cc: Christoph Lameter
    Cc:
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fenghua Yu
     
  • This patch completes Linus's wish that the fault return codes be made into
    bit flags, which I agree makes everything nicer. This requires requires
    all handle_mm_fault callers to be modified (possibly the modifications
    should go further and do things like fault accounting in handle_mm_fault --
    however that would be for another patch).

    [akpm@linux-foundation.org: fix alpha build]
    [akpm@linux-foundation.org: fix s390 build]
    [akpm@linux-foundation.org: fix sparc build]
    [akpm@linux-foundation.org: fix sparc64 build]
    [akpm@linux-foundation.org: fix ia64 build]
    Signed-off-by: Nick Piggin
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Russell King
    Cc: Ian Molton
    Cc: Bryan Wu
    Cc: Mikael Starvik
    Cc: David Howells
    Cc: Yoshinori Sato
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc: Greg Ungerer
    Cc: Matthew Wilcox
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    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: Kyle McMartin
    Acked-by: Haavard Skinnemoen
    Acked-by: Ralf Baechle
    Acked-by: Andi Kleen
    Signed-off-by: Andrew Morton
    [ Still apparently needs some ARM and PPC loving - Linus ]
    Signed-off-by: Linus Torvalds

    Nick Piggin
     

18 Jul, 2007

3 commits

  • Identical implementations of PTRACE_POKEDATA go into generic_ptrace_pokedata()
    function.

    AFAICS, fix bug on xtensa where successful PTRACE_POKEDATA will nevertheless
    return EPERM.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Identical implementations of PTRACE_PEEKDATA go into generic_ptrace_peekdata()
    function.

    Signed-off-by: Alexey Dobriyan
    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • If the kernel OOPSed or BUGed then it probably should be considered as
    tainted. Thus, all subsequent OOPSes and SysRq dumps will report the
    tainted kernel. This saves a lot of time explaining oddities in the
    calltraces.

    Signed-off-by: Pavel Emelianov
    Acked-by: Randy Dunlap
    Cc:
    Signed-off-by: Andrew Morton
    [ Added parisc patch from Matthew Wilson -Linus ]
    Signed-off-by: Linus Torvalds

    Pavel Emelianov
     

17 Jul, 2007

2 commits

  • * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (68 commits)
    sh: sh-rtc support for SH7709.
    sh: Revert __xdiv64_32 size change.
    sh: Update r7785rp defconfig.
    sh: Export div symbols for GCC 4.2 and ST GCC.
    sh: fix race in parallel out-of-tree build
    sh: Kill off dead mach.c for hp6xx.
    sh: hd64461.h cleanup and added comments.
    sh: Update the alignment when 4K stacks are used.
    sh: Add a .bss.page_aligned section for 4K stacks.
    sh: Don't let SH-4A clobber SH-4 CFLAGS.
    sh: Add parport stub for SuperIO ports.
    sh: Drop -Wa,-dsp for DSP tuning.
    sh: Update dreamcast defconfig.
    fb: pvr2fb: A few more __devinit annotations for PCI.
    fb: pvr2fb: Fix up section mismatch warnings.
    sh: Select IPR-IRQ for SH7091.
    sh: Correct __xdiv64_32/div64_32 return value size.
    sh: Fix timer-tmu build for SH-3.
    sh: Add cpu and mach links to CLEAN_FILES.
    sh: Preliminary support for the SH-X3 CPU.
    ...

    Linus Torvalds
     
  • The current generic bug implementation has a call to dump_stack() in case a
    WARN_ON(whatever) gets hit. Since report_bug(), which calls dump_stack(),
    gets called from an exception handler we can do better: just pass the
    pt_regs structure to report_bug() and pass it to show_regs() in case of a
    warning. This will give more debug informations like register contents,
    etc... In addition this avoids some pointless lines that dump_stack()
    emits, since it includes a stack backtrace of the exception handler which
    is of no interest in case of a warning. E.g. on s390 the following lines
    are currently always present in a stack backtrace if dump_stack() gets
    called from report_bug():

    [] show_trace+0x92/0xe8)
    [] show_stack+0xa0/0xd0
    [] dump_stack+0x2e/0x3c
    [] report_bug+0x98/0xf8
    [] illegal_op+0x1fc/0x21c
    [] sysc_return+0x0/0x10

    Acked-by: Jeremy Fitzhardinge
    Acked-by: Haavard Skinnemoen
    Cc: Andi Kleen
    Cc: Kyle McMartin
    Cc: Paul Mackerras
    Cc: Paul Mundt
    Cc: Martin Schwidefsky
    Signed-off-by: Heiko Carstens
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     

16 Jul, 2007

1 commit


13 Jul, 2007

3 commits


12 Jul, 2007

1 commit

  • Depending on which of the three dependencies for archprepare (in
    arch/sh/Makefile) get built first, the directory include/asm-sh may or
    may not exist when the maketools target is built. If the directory does
    not exist, awk will fail to generate machtypes.h. This patch fixes this
    by creating the directory before awk is executed.

    Signed-off-by: Erik Johansson
    Signed-off-by: Paul Mundt

    Erik Johansson