09 Jun, 2013

1 commit


03 Jun, 2013

1 commit


31 May, 2013

1 commit

  • The present code does not wait for the SCC to finish resetting itself
    before trying to initialise the device. The result is that the SCC
    interrupt sources become enabled (if they weren't already). This leads to
    an early boot crash (unexpected interrupt) given CONFIG_EARLY_PRINTK. Fix
    this by adding a delay. A successful reset disables the interrupt sources.

    Also, after the reset for channel A setup, the SCC then gets a second
    reset for channel B setup which leaves channel A uninitialised again. Fix
    this by performing the reset only once.

    Signed-off-by: Finn Thain
    Cc: stable@vger.kernel.org
    Signed-off-by: Geert Uytterhoeven

    Finn Thain
     

29 May, 2013

1 commit

  • Compiling for targets that use the local gpio code (not GPIOLIB) fail to
    compile with:

    CC arch/m68k/platform/coldfire/device.o
    In file included from include/linux/gpio.h:45:0,
    from arch/m68k/platform/coldfire/device.c:15:
    /home/gerg/new-wave.git/linux-3.x/arch/m68k/include/asm/gpio.h:89:19: error: static declaration of ‘gpio_request_one’ follows non-static declaration
    include/asm-generic/gpio.h:195:12: note: previous declaration of ‘gpio_request_one’ was here

    Fix by conditionally using the local gpio_request_one() function based on
    !CONFIG_GPIOLIB.

    Signed-off-by: Greg Ungerer

    Greg Ungerer
     

28 May, 2013

1 commit


22 May, 2013

1 commit

  • Linux/M68K currently doesn't support robust futexes or PI mutexes.
    The problem is that the futex code needs to perform certain ops
    (cmpxchg, set, add, or, andn, xor) atomically on user-space
    addresses, and M68K's lack of a futex.h causes those operations
    to be unsupported and disabled.

    This patch adds that support, but only for uniprocessor machines,
    which is adequate for M68K. For UP it's enough to disable preemption
    to ensure mutual exclusion (futexes don't need to care about other
    hardware agents), and the mandatory pagefault_disable() does just that.

    This patch is closely based on the one I co-wrote for UP ARM back
    in August 2008. The main change is that this patch uses the C
    get_user/put_user accessors instead of inline assembly code with
    exception table fixups.

    For non-MMU machines the new futex.h simply redirects to the generic
    futex.h, so there is no functional change for them.

    Tested on aranym with the glibc-2.17 test suite: no regressions, and
    a number of mutex/condvar test cases went from failing to succeeding
    (tst-mutexpi{5,5a,6,9}, tst-cond2[45], tst-robust[1-9], tst-robustpi[1-8]).
    Also tested with glibc-2.18 HEAD and a local glibc patch to enable PI
    mutexes: no regressions.

    Signed-off-by: Mikael Pettersson
    Acked-by: Andreas Schwab
    [geert: Added removal of ""generic-y += futex.h"]
    Signed-off-by: Geert Uytterhoeven

    Mikael Pettersson
     

11 May, 2013

1 commit

  • Pull misc fixes from David Woodhouse:
    "This is some miscellaneous cleanups that don't really belong anywhere
    else (or were ignored), that have been sitting in linux-next for some
    time. Two of them are fixes resulting from my audit of krealloc()
    usage that don't seem to have elicited any response when I posted
    them, and the other three are patches from Artem removing dead code."

    * tag 'for-linus-20130509' of git://git.infradead.org/~dwmw2/random-2.6:
    pcmcia: remove RPX board stuff
    m68k: remove rpxlite stuff
    pcmcia: remove Motorola MBX860 support
    params: Fix potential memory leak in add_sysfs_param()
    dell-laptop: Fix krealloc() misuse in parse_da_table()

    Linus Torvalds
     

10 May, 2013

2 commits

  • Pull m68knommu updates from Greg Ungerer:
    "The bulk of the changes are generalizing the ColdFire v3 core support
    and adding in 537x CPU support. Also a couple of other bug fixes, one
    to fix a reintroduction of a past bug in the romfs filesystem nommu
    support."

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
    m68knommu: enable Timer on coldfire 532x
    m68knommu: fix ColdFire 5373/5329 QSPI base address
    m68knommu: add support for configuring a Freescale M5373EVB board
    m68knommu: add support for the ColdFire 537x family of CPUs
    m68knommu: make ColdFire M532x platform support more v3 generic
    m68knommu: create and use a common M53xx ColdFire class of CPUs
    m68k: remove unused asm/dbg.h
    m68k: Set ColdFire ACR1 cache mode depending on kernel configuration
    romfs: fix nommu map length to keep inside filesystem
    m68k: clean up unused "config ROMVECSIZE"

    Linus Torvalds
     
  • Pull removal of GENERIC_GPIO from Grant Likely:
    "GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any
    valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
    is possible to do so which has been causing confusion and breakage.
    This branch does the work to completely eliminate GENERIC_GPIO."

    * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
    gpio: update gpio Chinese documentation
    Remove GENERIC_GPIO config option
    Convert selectors of GENERIC_GPIO to GPIOLIB
    blackfin: force use of gpiolib
    m68k: coldfire: use gpiolib
    mips: pnx833x: remove requirement for GENERIC_GPIO
    openrisc: default GENERIC_GPIO to false
    avr32: default GENERIC_GPIO to false
    xtensa: remove explicit selection of GENERIC_GPIO
    sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
    powerpc: remove redundant GENERIC_GPIO selection
    unicore32: default GENERIC_GPIO to false
    unicore32: remove unneeded select GENERIC_GPIO
    arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
    arm: remove redundant GENERIC_GPIO selection
    mips: alchemy: require gpiolib
    mips: txx9: change GENERIC_GPIO to GPIOLIB
    mips: loongson: use GPIO driver on CONFIG_GPIOLIB
    mips: remove redundant GENERIC_GPIO select

    Linus Torvalds
     

01 May, 2013

3 commits

  • Pull compat cleanup from Al Viro:
    "Mostly about syscall wrappers this time; there will be another pile
    with patches in the same general area from various people, but I'd
    rather push those after both that and vfs.git pile are in."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:
    syscalls.h: slightly reduce the jungles of macros
    get rid of union semop in sys_semctl(2) arguments
    make do_mremap() static
    sparc: no need to sign-extend in sync_file_range() wrapper
    ppc compat wrappers for add_key(2) and request_key(2) are pointless
    x86: trim sys_ia32.h
    x86: sys32_kill and sys32_mprotect are pointless
    get rid of compat_sys_semctl() and friends in case of ARCH_WANT_OLD_COMPAT_IPC
    merge compat sys_ipc instances
    consolidate compat lookup_dcookie()
    convert vmsplice to COMPAT_SYSCALL_DEFINE
    switch getrusage() to COMPAT_SYSCALL_DEFINE
    switch epoll_pwait to COMPAT_SYSCALL_DEFINE
    convert sendfile{,64} to COMPAT_SYSCALL_DEFINE
    switch signalfd{,4}() to COMPAT_SYSCALL_DEFINE
    make SYSCALL_DEFINE-generated wrappers do asmlinkage_protect
    make HAVE_SYSCALL_WRAPPERS unconditional
    consolidate cond_syscall and SYSCALL_ALIAS declarations
    teach SYSCALL_DEFINE how to deal with long long/unsigned long long
    get rid of duplicate logics in __SC_....[1-6] definitions

    Linus Torvalds
     
  • Both dump_stack() and show_stack() are currently implemented by each
    architecture. show_stack(NULL, NULL) dumps the backtrace for the
    current task as does dump_stack(). On some archs, dump_stack() prints
    extra information - pid, utsname and so on - in addition to the
    backtrace while the two are identical on other archs.

    The usages in arch-independent code of the two functions indicate
    show_stack(NULL, NULL) should print out bare backtrace while
    dump_stack() is used for debugging purposes when something went wrong,
    so it does make sense to print additional information on the task which
    triggered dump_stack().

    There's no reason to require archs to implement two separate but mostly
    identical functions. It leads to unnecessary subtle information.

    This patch expands the dummy fallback dump_stack() implementation in
    lib/dump_stack.c such that it prints out debug information (taken from
    x86) and invokes show_stack(NULL, NULL) and drops arch-specific
    dump_stack() implementations in all archs except blackfin. Blackfin's
    dump_stack() does something wonky that I don't understand.

    Debug information can be printed separately by calling
    dump_stack_print_info() so that arch-specific dump_stack()
    implementation can still emit the same debug information. This is used
    in blackfin.

    This patch brings the following behavior changes.

    * On some archs, an extra level in backtrace for show_stack() could be
    printed. This is because the top frame was determined in
    dump_stack() on those archs while generic dump_stack() can't do that
    reliably. It can be compensated by inlining dump_stack() but not
    sure whether that'd be necessary.

    * Most archs didn't use to print debug info on dump_stack(). They do
    now.

    An example WARN dump follows.

    WARNING: at kernel/workqueue.c:4841 init_workqueues+0x35/0x505()
    Hardware name: empty
    Modules linked in:
    CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.9.0-rc1-work+ #9
    0000000000000009 ffff88007c861e08 ffffffff81c614dc ffff88007c861e48
    ffffffff8108f50f ffffffff82228240 0000000000000040 ffffffff8234a03c
    0000000000000000 0000000000000000 0000000000000000 ffff88007c861e58
    Call Trace:
    [] dump_stack+0x19/0x1b
    [] warn_slowpath_common+0x7f/0xc0
    [] warn_slowpath_null+0x1a/0x20
    [] init_workqueues+0x35/0x505
    ...

    v2: CPU number added to the generic debug info as requested by s390
    folks and dropped the s390 specific dump_stack(). This loses %ksp
    from the debug message which the maintainers think isn't important
    enough to keep the s390-specific dump_stack() implementation.

    dump_stack_print_info() is moved to kernel/printk.c from
    lib/dump_stack.c. Because linkage is per objecct file,
    dump_stack_print_info() living in the same lib file as generic
    dump_stack() means that archs which implement custom dump_stack()
    - at this point, only blackfin - can't use dump_stack_print_info()
    as that will bring in the generic version of dump_stack() too. v1
    The v1 patch broke build on blackfin due to this issue. The build
    breakage was reported by Fengguang Wu.

    Signed-off-by: Tejun Heo
    Acked-by: David S. Miller
    Acked-by: Vineet Gupta
    Acked-by: Jesper Nilsson
    Acked-by: Vineet Gupta
    Acked-by: Martin Schwidefsky [s390 bits]
    Cc: Heiko Carstens
    Cc: Mike Frysinger
    Cc: Fengguang Wu
    Cc: Bjorn Helgaas
    Cc: Sam Ravnborg
    Acked-by: Richard Kuo [hexagon bits]
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tejun Heo
     
  • Pull m68k update from Geert Uytterhoeven.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    m68k: Remove inline strlen() implementation
    m68k/atari: USB - add platform devices for EtherNAT/NetUSBee ISP1160 HCD
    m68k: Implement ndelay() based on the existing udelay() logic
    m68k/atari: EtherNAT - add interrupt chip definition for CPLD interrupts
    m68k/atari: EtherNEC - add platform device support
    m68k/atari: EtherNAT - platform device and IRQ support code
    m68k/atari: use dedicated irq_chip for timer D interrupts
    m68k/atari: ROM port ISA adapter support
    m68k: Add missing cmpxchg64() if CONFIG_RMW_INSNS=y

    Linus Torvalds
     

30 Apr, 2013

2 commits

  • Pull SMP/hotplug changes from Ingo Molnar:
    "This is a pretty large, multi-arch series unifying and generalizing
    the various disjunct pieces of idle routines that architectures have
    historically copied from each other and have grown in random, wildly
    inconsistent and sometimes buggy directions:

    101 files changed, 455 insertions(+), 1328 deletions(-)

    this went through a number of review and test iterations before it was
    committed, it was tested on various architectures, was exposed to
    linux-next for quite some time - nevertheless it might cause problems
    on architectures that don't read the mailing lists and don't regularly
    test linux-next.

    This cat herding excercise was motivated by the -rt kernel, and was
    brought to you by Thomas "the Whip" Gleixner."

    * 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)
    idle: Remove GENERIC_IDLE_LOOP config switch
    um: Use generic idle loop
    ia64: Make sure interrupts enabled when we "safe_halt()"
    sparc: Use generic idle loop
    idle: Remove unused ARCH_HAS_DEFAULT_IDLE
    bfin: Fix typo in arch_cpu_idle()
    xtensa: Use generic idle loop
    x86: Use generic idle loop
    unicore: Use generic idle loop
    tile: Use generic idle loop
    tile: Enter idle with preemption disabled
    sh: Use generic idle loop
    score: Use generic idle loop
    s390: Use generic idle loop
    powerpc: Use generic idle loop
    parisc: Use generic idle loop
    openrisc: Use generic idle loop
    mn10300: Use generic idle loop
    mips: Use generic idle loop
    microblaze: Use generic idle loop
    ...

    Linus Torvalds
     
  • Use common help functions to free reserved pages.

    Signed-off-by: Jiang Liu
    Acked-by: Geert Uytterhoeven
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jiang Liu
     

29 Apr, 2013

9 commits


17 Apr, 2013

10 commits


16 Apr, 2013

1 commit

  • GENERIC_GPIO has been made equivalent to GPIOLIB in architecture code
    and all driver code has been switch to depend on GPIOLIB. It is thus
    safe to have GENERIC_GPIO removed.

    Signed-off-by: Alexandre Courbot
    Acked-by: Linus Walleij
    Acked-by: Grant Likely

    Alexandre Courbot
     

09 Apr, 2013

1 commit

  • Compiling for linux-3.9-rc1 and later fails with:

    drivers/gpio/devres.c: In function 'devm_gpio_request_one':
    drivers/gpio/devres.c:90:2: error: implicit declaration of function 'gpio_request_one' [-Werror=implicit-function-declaration]

    So provide a local gpio_request_one() function. Code largely borrowed from
    blackfin's local gpio_request_one() function.

    Signed-off-by: Greg Ungerer
    Acked-by: Linus Walleij

    Greg Ungerer
     

08 Apr, 2013

1 commit

  • Signed-off-by: Thomas Gleixner
    Cc: Linus Torvalds
    Cc: Rusty Russell
    Cc: Paul McKenney
    Cc: Peter Zijlstra
    Reviewed-by: Cc: Srivatsa S. Bhat
    Cc: Magnus Damm
    Cc: Geert Uytterhoeven
    Link: http://lkml.kernel.org/r/20130321215234.535485189@linutronix.de
    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     

05 Apr, 2013

1 commit

  • The CONFIG_RPXLITE is not defined anywhere, which means that this board is not
    supported anyway, and we can clean-up commproc.h a little.

    Signed-off-by: Artem Bityutskiy
    Cc: linux-pcmcia@lists.infradead.org
    Cc: Geert Uytterhoeven
    Cc: linux-m68k@lists.linux-m68k.org
    Signed-off-by: David Woodhouse

    Artem Bityutskiy
     

21 Mar, 2013

1 commit


13 Mar, 2013

1 commit

  • In commit 887cbce0adea ("arch Kconfig: centralise ARCH_NO_VIRT_TO_BUS")
    I introduced the config sybmol HAVE_VIRT_TO_BUS and selected that where
    needed. I am not sure what I was thinking. Instead, just directly
    select VIRT_TO_BUS where it is needed.

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     

06 Mar, 2013

1 commit

  • Somehow this select statement managed to squeeze itself between commit
    0e152d80507b75c00aac60f2ffc586360687cd52 ("m68k: reorganize Kconfig
    options to improve mmu/non-mmu selections") and commit
    95e82747d6e2abc513bfae416e6009968985d05b ("m68k: drop unused Kconfig
    symbols"). Whatever happened, there is no Kconfig symbol named EMAC_INC.
    The select statement for that symbol is a nop. Drop it.

    Signed-off-by: Paul Bolle
    Signed-off-by: Greg Ungerer

    Paul Bolle