03 Sep, 2007

1 commit

  • On some m32r platforms, cascaded ICUs are used.
    This patch is required to simplify ei_handler and consolidate platform-
    dependent ICU check routines.

    platform ICU/INT1 ICU/INT0 ICU/INT2
    -------------- -------- -------- --------
    m32104ut o - -
    m32700ut o o o
    opsput o o o
    usrv o - -
    (others) - - -

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata

    Hirokazu Takata
     

17 Jul, 2007

1 commit

  • Continuing the work started in 411f0f3edc141a582190d3605cadd1d993abb6df ...

    This enables code with a dma path, that compiles away, to build without
    requiring additional code factoring. It also prevents code that calls
    dma_alloc_coherent and dma_free_coherent from linking whereas previously
    the code would hit a BUG() at run time. Finally, it allows archs that set
    !HAS_DMA to delete their asm/dma-mapping.h file.

    Cc: Cornelia Huck
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Cc: John W. Linville
    Cc: Kyle McMartin
    Cc: James Bottomley
    Cc: Tejun Heo
    Cc: Jeff Garzik
    Cc:
    Cc:
    Cc:
    Cc:
    Signed-off-by: Dan Williams
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Williams
     

11 May, 2007

1 commit

  • This patch fixes a rarely-happened but severe scheduling problem of
    the recent m32r kernel of 2.6.17-rc3 or later.

    In the following previous m32r patch, the switch_to macro was
    modified not to do unnecessary push/pop operations for tuning.
    > [PATCH] m32r: update switch_to macro for tuning
    > 4127272c38619c56f0c1aa01d01c7bd757db70a1

    In this modification, only 'lr' and 'sp' registers are push/pop'ed,
    assuming that the m32r kernel is always compiled with
    -fomit-frame-pointer option.

    However, in 2.6 kernel, kernel/sched.c is irregularly compiled
    with -fno-omit-frame-pointer if CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER
    is not defined.

    -- kernel/Makefile --
    :
    ifneq ($(CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER),y)
    # According to Alan Modra , the -fno-omit-frame-pointer is
    # needed for x86 only. Why this used to be enabled for all architectures is beyond
    # me. I suspect most platforms don't need this, but until we know that for sure
    # I turn this off for IA-64 only. Andreas Schwab says it's also needed on m68k
    # to get a correct value for the wait-channel (WCHAN in ps). --davidm
    CFLAGS_sched.o := $(PROFILING) -fno-omit-frame-pointer
    endif
    :
    ---

    Therefore, for the recent m32r kernel, we have to push/pop 'fp'
    (frame pointer) if CONFIG_FRAME_POINTER is defined or
    CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not defined.

    Signed-off-by: Hitoshi Yamamoto
    Signed-off-by: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     

12 Feb, 2007

2 commits

  • * Split the implementation-agnostic stuff in separate files.
    * Make sure that targets using non-default request_irq() pull
    kernel/irq/devres.o
    * Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
    allow architectures to turn them off (we needed these symbols anyway for
    dependencies of quite a few drivers).
    * protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

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

    Al Viro
     
  • As Andi pointed out: CONFIG_GENERIC_ISA_DMA only disables the ISA DMA
    channel management. Other functionality may still expect GFP_DMA to
    provide memory below 16M. So we need to make sure that CONFIG_ZONE_DMA is
    set independent of CONFIG_GENERIC_ISA_DMA. Undo the modifications to
    mm/Kconfig where we made ZONE_DMA dependent on GENERIC_ISA_DMA and set
    theses explicitly in each arches Kconfig.

    Reviews must occur for each arch in order to determine if ZONE_DMA can be
    switched off. It can only be switched off if we know that all devices
    supported by a platform are capable of performing DMA transfers to all of
    memory (Some arches already support this: uml, avr32, sh sh64, parisc and
    IA64/Altix).

    In order to switch ZONE_DMA off conditionally, one would have to establish
    a scheme by which one can assure that no drivers are enabled that are only
    capable of doing I/O to a part of memory, or one needs to provide an
    alternate means of performing an allocation from a specific range of memory
    (like provided by alloc_pages_range()) and insure that all drivers use that
    call. In that case the arches alloc_dma_coherent() may need to be modified
    to call alloc_pages_range() instead of relying on GFP_DMA.

    Signed-off-by: Christoph Lameter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     

09 Dec, 2006

1 commit

  • This facility provides three entry points:

    ilog2() Log base 2 of unsigned long
    ilog2_u32() Log base 2 of u32
    ilog2_u64() Log base 2 of u64

    These facilities can either be used inside functions on dynamic data:

    int do_something(long q)
    {
    ...;
    y = ilog2(x)
    ...;
    }

    Or can be used to statically initialise global variables with constant values:

    unsigned n = ilog2(27);

    When performing static initialisation, the compiler will report "error:
    initializer element is not constant" if asked to take a log of zero or of
    something not reducible to a constant. They treat negative numbers as
    unsigned.

    When not dealing with a constant, they fall back to using fls() which permits
    them to use arch-specific log calculation instructions - such as BSR on
    x86/x86_64 or SCAN on FRV - if available.

    [akpm@osdl.org: MMC fix]
    Signed-off-by: David Howells
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Herbert Xu
    Cc: David Howells
    Cc: Wojtek Kaniewski
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     

11 Apr, 2006

1 commit

  • Current implementations define NODES_SHIFT in include/asm-xxx/numnodes.h for
    each arch. Its definition is sometimes configurable. Indeed, ia64 defines 5
    NODES_SHIFT values in the current git tree. But it looks a bit messy.

    SGI-SN2(ia64) system requires 1024 nodes, and the number of nodes already has
    been changeable by config. Suitable node's number may be changed in the
    future even if it is other architecture. So, I wrote configurable node's
    number.

    This patch set defines just default value for each arch which needs multi
    nodes except ia64. But, it is easy to change to configurable if necessary.

    On ia64 the number of nodes can be already configured in generic ia64 and SN2
    config. But, NODES_SHIFT is defined for DIG64 and HP'S machine too. So, I
    changed it so that all platforms can be configured via CONFIG_NODES_SHIFT. It
    would be simpler.

    See also: http://marc.theaimsgroup.com/?l=linux-kernel&m=114358010523896&w=2

    Signed-off-by: Yasunori Goto
    Cc: Hirokazu Takata
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Cc: Paul Mackerras
    Cc: Benjamin Herrenschmidt
    Cc: Ivan Kokshaysky
    Cc: Richard Henderson
    Cc: Kyle McMartin
    Cc: Russell King
    Cc: Ralf Baechle
    Cc: Jack Steiner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     

27 Mar, 2006

1 commit

  • - remove __{,test_and_}{set,clear,change}_bit() and test_bit()
    - remove ffz()
    - remove find_{next,first}{,_zero}_bit()
    - remove __ffs()
    - remove generic_fls()
    - remove generic_fls64()
    - remove sched_find_first_bit()
    - remove generic_ffs()
    - remove generic_hweight{32,16,8}()
    - remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()
    - remove ext2_{set,clear}_bit_atomic()
    - remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()

    Signed-off-by: Akinobu Mita
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Akinobu Mita
     

11 Jan, 2006

1 commit

  • It seems the "make UID16 support optional" patch was checked when it
    edited the -tiny tree some time ago, but it wasn't checked whether it
    still matches the current situation when it was submitted for inclusion
    in -mm. This patch fixes the following bugs:
    - ARCH_S390X does no longer exist, nowadays this has to be expressed
    through (S390 && 64BIT)
    - in five architecture specific Kconfig files the UID16 options
    weren't removed

    Additionally, it changes the fragile negative dependencies of UID16 to
    positive dependencies (new architectures are more likely to not require
    UID16 support).

    Signed-off-by: Adrian Bunk
    Acked-by: Matt Mackall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     

07 Jan, 2006

1 commit

  • This patch is for supporting a new target platform, Renesas M32104UT
    evaluation board.

    The M32104UT is an eval board based on an uT-Engine specification. This board
    has an MMU-less M32R family processor, M32104.
    http://www-wa0.personal-media.co.jp/pmc/archive/te/te_m32104_e.pdf

    This board is one of the most popular M32R platform, so we have ported
    Linux/M32R to it.

    Signed-off-by: Naoto Sugai
    Signed-off-by: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     

15 Sep, 2005

1 commit

  • Several implementations were essentialy a common piece of C code using
    the cmpxchg() macro. Put the implementation in one spot that everyone
    can share, and convert sparc64 over to using this.

    Alpha is the lone arch-specific implementation, which codes up a
    special fast path for the common case in order to avoid GP reloading
    which a pure C version would require.

    Signed-off-by: David S. Miller

    David S. Miller
     

11 Sep, 2005

1 commit

  • Randy cleaned out the bulk of these stale references to the now long gone
    Documentation/smp.tex back in 2004. I followed this up with a few more
    sweeps. Somehow, these have managed to sneak back in since.

    I can't seem to figure out a contact point for M32R (no one listed in
    MAINTAINERS!), but, these patches are only but trivial.

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

    Arthur Othieno
     

24 Aug, 2005

2 commits


12 Jul, 2005

1 commit

  • Create a new top-level menu named "Networking" thus moving
    net related options and protocol selection way from the drivers
    menu and up on the top-level where they belong.

    To implement this all architectures has to source "net/Kconfig" before
    drivers/*/Kconfig in their Kconfig file. This change has been
    implemented for all architectures.

    Device drivers for ordinary NIC's are still to be found
    in the Device Drivers section, but Bluetooth, IrDA and ax25
    are located with their corresponding menu entries under the new
    networking menu item.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

24 Jun, 2005

1 commit

  • For all architectures, this just means that you'll see a "Memory Model"
    choice in your architecture menu. For those that implement DISCONTIGMEM,
    you may eventually want to make your ARCH_DISCONTIGMEM_ENABLE a "def_bool
    y" and make your users select DISCONTIGMEM right out of the new choice
    menu. The only disadvantage might be if you have some specific things that
    you need in your help option to explain something about DISCONTIGMEM.

    Signed-off-by: Dave Hansen
    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Hansen
     

22 Jun, 2005

1 commit

  • This patchset is for supporting a new m32r platform, M3A-2170(Mappi-III)
    evaluation board. An M32R chip multiprocessor is equipped on the board.
    http://http://www.linux-m32r.org/eng/platform/platform.html

    * arch/m32r/Kconfig: Support Mappi-III platform.
    * arch/m32r/kernel/Makefile: ditto.
    * arch/m32r/kernel/io_mappi3.c: ditto.
    * arch/m32r/kernel/setup.c: ditto.
    * arch/m32r/kernel/setup_mappi3.c: ditto.
    * include/asm-m32r/m32102.h: ditto.
    * include/asm-m32r/m32r.h: ditto.
    * include/asm-m32r/mappi3/mappi3_pld.h: ditto.

    * include/asm-m32r/ide.h: CF support for Mappi-III.
    * arch/m32r/kernel/setup_mappi3.c: ditto.

    * arch/m32r/mappi3/defconfig.smp: A default config file for Mappi-III.
    * arch/m32r/mappi3/dot.gdbinit: A default .gdbinit file for Mappi-III.

    * arch/m32r/boot/compressed/m32r_sio.c: Modified for Mappi-III
    - At boot time, m32r-g00ff bootloader makes MMU off for Mappi-III,
    on the contrary it makes MMU on for Mappi-II.

    * arch/m32r/kernel/io_mappi2.c: Update comments.
    * arch/m32r/kernel/setup_mappi2.c: ditto.

    Signed-off-by: Mamoru Sakugawa
    Signed-off-by: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hirokazu Takata
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds