05 Jan, 2012

3 commits

  • Conflicts:
    arch/arm/mach-exynos/cpu.c

    The changes to arch/arm/mach-exynos/cpu.c were moved to
    mach-exynos/common.c.

    Russell King
     
  • Remove the now empty arch_reset() from all the mach/system.h includes,
    and remove its callsite. Remove arm_machine_restart() as this function
    no longer does anything useful.

    For samsung platforms, remove the include of mach/system-reset.h and
    plat/system-reset.h from their respective mach/system.h headers as these
    just define their arch_reset functions. As a result, the s3c2410 and
    plat-samsung system-reset.h files are no longer referenced, so remove
    these files entirely.

    Acked-by: Nicolas Pitre
    Acked-by: H Hartley Sweeten
    Acked-by: Jamie Iles
    Acked-by: Tony Lindgren
    Acked-by: Linus Walleij
    Signed-off-by: Russell King

    Russell King
     
  • Hook the RiscPC restart code into the new restart hook.

    Signed-off-by: Russell King

    Russell King
     

06 Dec, 2011

1 commit


27 Nov, 2011

1 commit


21 Nov, 2011

1 commit

  • We only need to set the system up for a soft-restart if we're going to
    be doing a soft-restart. Provide a new function (soft_restart()) which
    does the setup and final call for this, and make platforms use it.
    Eliminate the call to setup_restart() from the default handler.

    This means that platforms arch_reset() function is no longer called with
    the page tables prepared for a soft-restart, and caches will still be
    enabled.

    Acked-by: Nicolas Pitre
    Acked-by: Will Deacon
    Acked-by: H Hartley Sweeten
    Acked-by: Kukjin Kim
    Acked-by: Sascha Hauer
    Acked-by: Viresh Kumar
    Acked-by: Krzysztof Ha■asa
    Acked-by: Paul Mundt
    Acked-by: Richard Purdie
    Acked-by: Wan ZongShun
    Acked-by: Eric Miao
    Signed-off-by: Russell King

    Russell King
     

29 Oct, 2011

1 commit

  • …git-cur/linux-2.6-arm

    * 'devel-stable' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (178 commits)
    ARM: 7139/1: fix compilation with CONFIG_ARM_ATAG_DTB_COMPAT and large TEXT_OFFSET
    ARM: gic, local timers: use the request_percpu_irq() interface
    ARM: gic: consolidate PPI handling
    ARM: switch from NO_MACH_MEMORY_H to NEED_MACH_MEMORY_H
    ARM: mach-s5p64x0: remove mach/memory.h
    ARM: mach-s3c64xx: remove mach/memory.h
    ARM: plat-mxc: remove mach/memory.h
    ARM: mach-prima2: remove mach/memory.h
    ARM: mach-zynq: remove mach/memory.h
    ARM: mach-bcmring: remove mach/memory.h
    ARM: mach-davinci: remove mach/memory.h
    ARM: mach-pxa: remove mach/memory.h
    ARM: mach-ixp4xx: remove mach/memory.h
    ARM: mach-h720x: remove mach/memory.h
    ARM: mach-vt8500: remove mach/memory.h
    ARM: mach-s5pc100: remove mach/memory.h
    ARM: mach-tegra: remove mach/memory.h
    ARM: plat-tcc: remove mach/memory.h
    ARM: mach-mmp: remove mach/memory.h
    ARM: mach-cns3xxx: remove mach/memory.h
    ...

    Fix up mostly pretty trivial conflicts in:
    - arch/arm/Kconfig
    - arch/arm/include/asm/localtimer.h
    - arch/arm/kernel/Makefile
    - arch/arm/mach-shmobile/board-ap4evb.c
    - arch/arm/mach-u300/core.c
    - arch/arm/mm/dma-mapping.c
    - arch/arm/mm/proc-v7.S
    - arch/arm/plat-omap/Kconfig
    largely due to some CONFIG option renaming (ie CONFIG_PM_SLEEP ->
    CONFIG_ARM_CPU_SUSPEND for the arm-specific suspend code etc) and
    addition of NEED_MACH_MEMORY_H next to HAVE_IDE.

    Linus Torvalds
     

25 Oct, 2011

1 commit


17 Oct, 2011

1 commit

  • Boards used to specify zreladdr in their Makefile.boot with
    zreladdr-y := x, so conflicting zreladdrs were silently overwritten.
    This patch changes this to zreladdr-y += x, so that we end
    up with multiple words in zreladdr in such a case. We can
    detect this later and complain if necessary.

    Signed-off-by: Sascha Hauer
    Signed-off-by: Russell King

    Sascha Hauer
     

26 Sep, 2011

1 commit

  • Some platforms (like OMAP not to name it) are doing rather complicated
    hacks just to determine the base UART address to use. Let's give their
    addruart macro some slack by providing an extra work register which will
    allow for much needed cleanups.

    This is basically a no-op as this commit is only adding the extra argument
    to the macro but no one is using it yet.

    Signed-off-by: nicolas Pitre
    Reviewed-by: Kevin Hilman

    Nicolas Pitre
     

22 Aug, 2011

1 commit


17 Aug, 2011

4 commits


07 May, 2011

1 commit

  • To be able to relocate the .bss section at run time independently from
    the rest of the code, we must make sure that no GOTOFF relocations are
    used with .bss symbols. This usually means that no global variables can
    be marked static unless they're also const.

    Let's remove the static qualifier from current offenders, or turn them
    into const variables when possible. Next commit will ensure the build
    fails if one of those is reintroduced due to otherwise enforced coding
    standards for the kernel.

    Signed-off-by: Nicolas Pitre
    Tested-by: Tony Lindgren

    Nicolas Pitre
     

29 Mar, 2011

2 commits


18 Feb, 2011

1 commit

  • This uncouple PHYS_OFFSET from the platform definitions, thereby
    facilitating run-time computation of the physical memory offset.

    Acked-by: Nicolas Pitre
    Acked-by: Viresh Kumar
    Acked-by: H Hartley Sweeten
    Acked-by: Magnus Damm
    Acked-by: Tony Lindgren
    Acked-by: Jean-Christophe PLAGNIOL-VILLARD
    Acked-by: Wan ZongShun
    Acked-by: Kukjin Kim
    Acked-by: Eric Miao
    Acked-by: Jiandong Zheng
    Signed-off-by: Russell King

    Russell King
     

14 Jan, 2011

1 commit


22 Nov, 2010

1 commit

  • Commit 7c63984b86 (ARM: do not define VMALLOC_END relative to PAGE_OFFSET)
    changed VMALLOC_END to be an explicit value. Before this, it was
    relative to PAGE_OFFSET and therefore converted to unsigned long
    as PAGE_OFFSET is an unsigned long. This introduced the following
    build warning. Fix this by changing the explicit defines of
    VMALLOC_END to be unsigned long.

    CC arch/arm/mm/init.o
    arch/arm/mm/init.c: In function 'mem_init':
    arch/arm/mm/init.c:606: warning: format '%08lx' expects type 'long unsigned int', but argument 12 has type 'unsigned int'

    Signed-off-by: Anand Gadiyar
    Acked-by: Uwe Kleine-K
    Acked-by: Nicolas Pitre
    Signed-off-by: Russell King

    Anand Gadiyar
     

20 Oct, 2010

2 commits

  • Since we're now using addruart to establish the debug mapping, we can
    remove the io_pg_offst and phys_io members of struct machine_desc.

    The various declarations were removed using the following script:

    grep -rl MACHINE_START arch/arm | xargs \
    sed -i '/MACHINE_START/,/MACHINE_END/ { /\.\(phys_io\|io_pg_offst\)/d }'

    [ Initial patch was from Jeremy Kerr, example script from Russell King ]

    Signed-off-by: Nicolas Pitre
    Acked-by: Eric Miao

    Nicolas Pitre
     
  • Rather than checking the MMU status in every instance of addruart, do it
    once in kernel/debug.S, and change the existing addruart macros to
    return both physical and virtual addresses. The main debug code can then
    select the appropriate address to use.

    This will also allow us to retreive the address of a uart for the MMU
    state that we're not current in.

    Updated with fixes for OMAP from Jason Wang
    and Tony Lindgren , and fix for versatile express from
    Lorenzo Pieralisi .

    Signed-off-by: Jeremy Kerr
    Signed-off-by: Lorenzo Pieralisi
    Signed-off-by: Jason Wang
    Signed-off-by: Tony Lindgren
    Tested-by: Kevin Hilman

    Jeremy Kerr
     

02 Oct, 2010

1 commit

  • VMALLOC_END is supposed to be an absolute value, while PAGE_OFFSET may
    vary depending on the selected user:kernel memory split mode through
    CONFIG_VMSPLIT_*. In fact, the goal of moving PAGE_OFFSET down is to
    accommodate more directly addressed RAM by the kernel below the vmalloc
    area, and having VMALLOC_END move along PAGE_OFFSET is rather against
    the very reason why PAGE_OFFSET can be moved in the first place.

    Signed-off-by: Nicolas Pitre

    Nicolas Pitre
     

30 Mar, 2010

1 commit

  • …it slab.h inclusion from percpu.h

    percpu.h is included by sched.h and module.h and thus ends up being
    included when building most .c files. percpu.h includes slab.h which
    in turn includes gfp.h making everything defined by the two files
    universally available and complicating inclusion dependencies.

    percpu.h -> slab.h dependency is about to be removed. Prepare for
    this change by updating users of gfp and slab facilities include those
    headers directly instead of assuming availability. As this conversion
    needs to touch large number of source files, the following script is
    used as the basis of conversion.

    http://userweb.kernel.org/~tj/misc/slabh-sweep.py

    The script does the followings.

    * Scan files for gfp and slab usages and update includes such that
    only the necessary includes are there. ie. if only gfp is used,
    gfp.h, if slab is used, slab.h.

    * When the script inserts a new include, it looks at the include
    blocks and try to put the new include such that its order conforms
    to its surrounding. It's put in the include block which contains
    core kernel includes, in the same order that the rest are ordered -
    alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
    doesn't seem to be any matching order.

    * If the script can't find a place to put a new include (mostly
    because the file doesn't have fitting include block), it prints out
    an error message indicating which .h file needs to be added to the
    file.

    The conversion was done in the following steps.

    1. The initial automatic conversion of all .c files updated slightly
    over 4000 files, deleting around 700 includes and adding ~480 gfp.h
    and ~3000 slab.h inclusions. The script emitted errors for ~400
    files.

    2. Each error was manually checked. Some didn't need the inclusion,
    some needed manual addition while adding it to implementation .h or
    embedding .c file was more appropriate for others. This step added
    inclusions to around 150 files.

    3. The script was run again and the output was compared to the edits
    from #2 to make sure no file was left behind.

    4. Several build tests were done and a couple of problems were fixed.
    e.g. lib/decompress_*.c used malloc/free() wrappers around slab
    APIs requiring slab.h to be added manually.

    5. The script was run on all .h files but without automatically
    editing them as sprinkling gfp.h and slab.h inclusions around .h
    files could easily lead to inclusion dependency hell. Most gfp.h
    inclusion directives were ignored as stuff from gfp.h was usually
    wildly available and often used in preprocessor macros. Each
    slab.h inclusion directive was examined and added manually as
    necessary.

    6. percpu.h was updated not to include slab.h.

    7. Build test were done on the following configurations and failures
    were fixed. CONFIG_GCOV_KERNEL was turned off for all tests (as my
    distributed build env didn't work with gcov compiles) and a few
    more options had to be turned off depending on archs to make things
    build (like ipr on powerpc/64 which failed due to missing writeq).

    * x86 and x86_64 UP and SMP allmodconfig and a custom test config.
    * powerpc and powerpc64 SMP allmodconfig
    * sparc and sparc64 SMP allmodconfig
    * ia64 SMP allmodconfig
    * s390 SMP allmodconfig
    * alpha SMP allmodconfig
    * um on x86_64 SMP allmodconfig

    8. percpu.h modifications were reverted so that it could be applied as
    a separate patch and serve as bisection point.

    Given the fact that I had only a couple of failures from tests on step
    6, I'm fairly confident about the coverage of this conversion patch.
    If there is a breakage, it's likely to be something in one of the arch
    headers which should be easily discoverable easily on most builds of
    the specific arch.

    Signed-off-by: Tejun Heo <tj@kernel.org>
    Guess-its-ok-by: Christoph Lameter <cl@linux-foundation.org>
    Cc: Ingo Molnar <mingo@redhat.com>
    Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>

    Tejun Heo
     

16 Mar, 2010

1 commit

  • arch/arm/boot/compressed/decompress.o: In function `do_decompress':
    decompress.c:(.text+0x26e8): undefined reference to `error'
    decompress.c:(.text+0x2760): undefined reference to `error'
    decompress.c:(.text+0x27d8): undefined reference to `error'
    decompress.c:(.text+0x2824): undefined reference to `error'
    decompress.c:(.text+0x28f0): undefined reference to `error'

    Signed-off-by: Russell King

    Russell King
     

13 Feb, 2010

1 commit

  • Otherwise more complicated uart configuration won't be possible.
    We can use r1 for tmp register for both head.S and debug.S.

    NOTE: This patch depends on another patch to add the the tmp register
    into all debug-macro.S files. That can be done with:

    $ sed -i -e "s/addruart,rx|addruart, rx/addruart, rx, tmp/"
    arch/arm/*/include/*/debug-macro.S

    Signed-off-by: Tony Lindgren
    Signed-off-by: Russell King

    Tony Lindgren
     

20 Mar, 2009

1 commit

  • OMAP wishes to pass state to the boot loader upon reboot in order to
    instruct it whether to wait for USB-based reflashing or not. There is
    already a facility to do this via the reboot() syscall, except we ignore
    the string passed to machine_restart().

    This patch fixes things to pass this string to arch_reset(). This means
    that we keep the reboot mode limited to telling the kernel _how_ to
    perform the reboot which should be independent of what we request the
    boot loader to do.

    Acked-by: Tony Lindgren
    Signed-off-by: Russell King

    Russell King
     

14 Mar, 2009

1 commit


25 Feb, 2009

1 commit


22 Feb, 2009

3 commits


12 Dec, 2008

1 commit

  • The hardware supports transfers up to a page boundary per buffer.
    Currently, we work around that in the DMA code by splitting each
    buffer up as we run through the scatterlist. Avoid this by telling
    the block layers about the hardware restriction.

    Eventually, this will allow us to phase out the splitting code,
    but not until the old IDE layer allows us to control the value it
    gives to blk_queue_segment_boundary().

    Signed-off-by: Russell King

    Russell King
     

11 Dec, 2008

3 commits


08 Dec, 2008

1 commit


30 Nov, 2008

2 commits