24 Jun, 2005

1 commit

  • The preempt_count member of struct thread_info is currently either defined
    as int, unsigned int or __s32 depending on arch. This patch makes the type
    of preempt_count an int on all archs.

    Having preempt_count be an unsigned type prevents the catching of
    preempt_count < 0 bugs, and using int on some archs and __s32 on others is
    not exactely "neat" - much nicer when it's just int all over.

    A previous version of this patch was already ACK'ed by Robert Love, and the
    only change in this version of the patch compared to the one he ACK'ed is
    that this one also makes sure the preempt_count member is consistently
    commented.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     

23 Jun, 2005

2 commits


22 Jun, 2005

3 commits

  • This adds an I2C driver for the TPS6501x series of power management chips.
    It's used on many OMAP based boards, and this driver has been widely used
    in the Linux-OMAP trees over the last year or so.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     
  • This patch implements a number of smp_processor_id() cleanup ideas that
    Arjan van de Ven and I came up with.

    The previous __smp_processor_id/_smp_processor_id/smp_processor_id API
    spaghetti was hard to follow both on the implementational and on the
    usage side.

    Some of the complexity arose from picking wrong names, some of the
    complexity comes from the fact that not all architectures defined
    __smp_processor_id.

    In the new code, there are two externally visible symbols:

    - smp_processor_id(): debug variant.

    - raw_smp_processor_id(): nondebug variant. Replaces all existing
    uses of _smp_processor_id() and __smp_processor_id(). Defined
    by every SMP architecture in include/asm-*/smp.h.

    There is one new internal symbol, dependent on DEBUG_PREEMPT:

    - debug_smp_processor_id(): internal debug variant, mapped to
    smp_processor_id().

    Also, i moved debug_smp_processor_id() from lib/kernel_lock.c into a new
    lib/smp_processor_id.c file. All related comments got updated and/or
    clarified.

    I have build/boot tested the following 8 .config combinations on x86:

    {SMP,UP} x {PREEMPT,!PREEMPT} x {DEBUG_PREEMPT,!DEBUG_PREEMPT}

    I have also build/boot tested x64 on UP/PREEMPT/DEBUG_PREEMPT. (Other
    architectures are untested, but should work just fine.)

    Signed-off-by: Ingo Molnar
    Signed-off-by: Arjan van de Ven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • kernel/sched.c: In function `__might_sleep':
    kernel/sched.c:5461: warning: int format, long unsigned int arg (arg 3)

    We expect irqs_disabled() to return an int (poor man's bool).

    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     

21 Jun, 2005

4 commits

  • Patch from Lennert Buytenhek

    The IXP2000 has four timers, but if we're on an A-step IXP2800, timer
    2 and 3 don't work. We need two timers for timekeeping (one for the
    timer interrupt and one for tracking missed jiffies), so on early
    IXP2800s we have no other choice but to use timer 1 and 4 for that,
    but on all other IXP2000s we'd rather leave timer 4 free since that's
    the only timer we can use for the watchdog.
    So, on buggy IXP2000s (i.e. the A-step IXP2800) we use timer 4 for
    tracking missed jiffies, and on all all non-buggy IXP2000s (i.e.
    everything but the A-step IXP2800) we use timer 2.
    On a pre-production IXP2800, this patch should print these messages
    on boot:
    Enabling IXP2800 erratum #25 workaround
    Unable to use IXP2000 watchdog due to IXP2800 erratum #25
    On any non-buggy IXP2800 (as well as on IXP2400s) you shouldn't see
    anything at all, and the watchdog should be usable again.

    Signed-off-by: Lennert Buytenhek
    Signed-off-by: Deepak Saxena
    Signed-off-by: Russell King

    Lennert Buytenhek
     
  • Patch from Catalin Marinas

    This patch adds PCI support for the Versatile PB926 platform.

    Signed-off-by: Colin King
    Signed-off-by: Catalin Marinas
    Signed-off-by: Russell King

    Catalin Marinas
     
  • Patch from Bellido Nicolas

    Core support for AAEC-2000 based platforms.
    This is an updated version of the previous patch, and takes
    into account Russell's comments.
    AAED-2000 default configuration will follow as soon
    as some problems with the bootloader are sorted out...

    Signed-off-by: Nicolas Bellido
    Signed-off-by: Russell King

    Bellido Nicolas
     
  • Signed-off-by: Russell King

    Russell King
     

20 Jun, 2005

3 commits


19 Jun, 2005

1 commit


18 Jun, 2005

1 commit


17 Jun, 2005

2 commits


09 Jun, 2005

1 commit


04 Jun, 2005

2 commits

  • Patch from Mike Frysinger

    the ELF_DATA define in both arm asm subdirs of linux/include/ contain a
    semicolon at the end. this of course will cause any code that tries to use
    ELF_DATA in assignment or comparison to fail. no other arch has a semicolon
    in their ELF_DATA defines.

    Signed-off-by: Mike Frysinger
    Signed-off-by: Russell King

    Mike Frysinger
     
  • Patch from Deepak Saxena

    This patch fixes the following warnings:
    include/asm/arch/io.h: In function `insw':
    include/asm/arch/io.h:78: warning: comparison of distinct pointer types
    lacks acast
    include/asm/arch/io.h:79: warning: comparison of distinct pointer types
    lacks acast
    include/asm/arch/io.h: In function `outsw':
    include/asm/arch/io.h:103: warning: comparison of distinct pointer types
    lacks a cast
    include/asm/arch/io.h:104: warning: comparison of distinct pointer types
    lacks a cast
    include/asm/arch/io.h: In function `inw':
    include/asm/arch/io.h:127: warning: comparison of distinct pointer types
    lacks a cast

    Signed-off-by: Deepak Saxena
    Signed-off-by: Russell King

    Deepak Saxena
     

13 May, 2005

1 commit


11 May, 2005

1 commit


10 May, 2005

2 commits


05 May, 2005

2 commits


04 May, 2005

1 commit

  • New file - asm-generic/signal.h. Contains declarations of
    __sighandler_t, __sigrestore_t, SIG_DFL, SIG_IGN, SIG_ERR and default
    definitions of SIG_BLOCK, SIG_UNBLOCK and SIG_SETMASK.

    asm-*/signal.h switched to including it. The only exception is
    asm-parisc/signal.h that wants its own declaration of __sighandler_t;
    that one is left as-is.

    asm-ppc64/signal.h required one more thing - unlike everybody else it
    used __sigrestorer_t instead of usual __sigrestore_t. PPC64 switched to
    common spelling.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     

03 May, 2005

2 commits


01 May, 2005

3 commits

  • The attached patch moves the IRQ-related SA_xxx flags (namely, SA_PROBE,
    SA_SAMPLE_RANDOM and SA_SHIRQ) from all the arch-specific headers to
    linux/signal.h. This looks like a left-over after the irq-handling code
    was consolidated. The code was moved to kernel/irq/*, but the flags are
    still left per-arch.

    Right now, adding a new IRQ flag to the arch-specific header, like this
    patch does:
    http://cvs.sourceforge.net/viewcvs.py/*checkout*/alsa/alsa-driver/utils/patches/pcsp-kernel-2.6.10-03.diff?rev=1.1
    no longer works, it breaks the compilation for all other arches, unless you
    add that flag to all the other arch-specific headers too. So I think such
    a clean-up makes sense.

    Signed-off-by: Stas Sergeev
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stas Sergeev
     
  • This patch eliminates all kernel BUGs, trims about 35k off the typical
    kernel, and makes the system slightly faster.

    Signed-off-by: Matt Mackall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matt Mackall
     
  • The documentation on these values seems to be rather wrong.
    These values have been determined by mere trial and error.

    Signed-off-by: Russell King

    Russell King
     

30 Apr, 2005

4 commits

  • Allow RTC drivers to return error codes from their read_time
    or read_alarm methods.

    Signed-off-by: Russell King

    Russell King
     
  • Patch from Olav Kongas

    On ARM, the outX() and writeX() families of macros take the
    result of cpu_to_leYY(), which is of restricted type __leYY,
    and feed it to __raw_writeX(), which expect an argument of
    unrestricted type. This results in 'sparse -Wbitwise'
    warnings about incorrect types in assignments. Analogous
    type mismatch warnings are issued for inX() and readX()
    counterparts. The below patch resolves these warnings by
    adding forced typecasts.

    Signed-off-by: Olav Kongas
    Signed-off-by: Russell King

    Olav Kongas
     
  • Patch from Nicolas Pitre

    This patch entirely reworks the kernel assistance for NPTL on ARM.
    In particular this provides an efficient way to retrieve the TLS
    value and perform atomic operations without any instruction emulation
    nor special system call. This even allows for pre ARMv6 binaries to
    be forward compatible with SMP systems without any penalty.
    The problematic and performance critical operations are performed
    through segment of kernel provided user code reachable from user space
    at a fixed address in kernel memory. Those fixed entry points are
    within the vector page so we basically get it for free as no extra
    memory page is required and nothing else may be mapped at that
    location anyway.
    This is different from (but doesn't preclude) a full blown VDSO
    implementation, however a VDSO would prevent some assembly tricks with
    constants that allows for efficient branching to those code segments.
    And since those code segments only use a few cycles before returning to
    user code, the overhead of a VDSO far call would add a significant
    overhead to such minimalistic operations.
    The ARM_NR_set_tls syscall also changed number. This is done for two
    reasons:
    1) this patch changes the way the TLS value was previously meant to be
    retrieved, therefore we ensure whatever library using the old way
    gets fixed (they only exist in private tree at the moment since the
    NPTL work is still progressing).
    2) the previous number was allocated in a range causing an undefined
    instruction trap on kernels not supporting that syscall and it was
    determined that allocating it in a range returning -ENOSYS would be
    much nicer for libraries trying to determine if the feature is
    present or not.

    Signed-off-by: Nicolas Pitre
    Signed-off-by: Russell King

    Nicolas Pitre
     
  • Patch from Lennert Buytenhek

    Export ixp2000_pci_config_addr, to be used by the IXDP2800 platform
    setup code to coordinate booting the master and slave NPU.

    Signed-off-by: Lennert Buytenhek
    Signed-off-by: Deepak Saxena
    Signed-off-by: Russell King

    Lennert Buytenhek
     

28 Apr, 2005

4 commits