]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
13 years agoMerge branch 'quilt/kernel-doc'
Stephen Rothwell [Fri, 14 Oct 2011 02:01:55 +0000 (13:01 +1100)]
Merge branch 'quilt/kernel-doc'

13 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Fri, 14 Oct 2011 02:00:33 +0000 (13:00 +1100)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

13 years agoMerge branch 'quilt/jdelvare-hwmon'
Stephen Rothwell [Fri, 14 Oct 2011 01:59:21 +0000 (12:59 +1100)]
Merge branch 'quilt/jdelvare-hwmon'

13 years agoMerge remote-tracking branch 'bjdooks-i2c/next-i2c'
Stephen Rothwell [Fri, 14 Oct 2011 01:58:02 +0000 (12:58 +1100)]
Merge remote-tracking branch 'bjdooks-i2c/next-i2c'

13 years agoMerge branch 'quilt/i2c'
Stephen Rothwell [Fri, 14 Oct 2011 01:56:50 +0000 (12:56 +1100)]
Merge branch 'quilt/i2c'

13 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:55:32 +0000 (12:55 +1100)]
Merge remote-tracking branch 'hid/for-next'

Conflicts:
drivers/hid/hid-wacom.c

13 years agoMerge remote-tracking branch 'xfs/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:54:01 +0000 (12:54 +1100)]
Merge remote-tracking branch 'xfs/master'

13 years agoMerge remote-tracking branch 'v9fs/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:52:46 +0000 (12:52 +1100)]
Merge remote-tracking branch 'v9fs/for-next'

13 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:51:20 +0000 (12:51 +1100)]
Merge remote-tracking branch 'ocfs2/linux-next'

13 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:45:14 +0000 (12:45 +1100)]
Merge remote-tracking branch 'nfsd/nfsd-next'

13 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:44:00 +0000 (12:44 +1100)]
Merge remote-tracking branch 'logfs/master'

13 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:42:43 +0000 (12:42 +1100)]
Merge remote-tracking branch 'gfs2/master'

13 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Fri, 14 Oct 2011 01:41:13 +0000 (12:41 +1100)]
Merge remote-tracking branch 'ext4/dev'

13 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Fri, 14 Oct 2011 01:39:55 +0000 (12:39 +1100)]
Merge remote-tracking branch 'ext3/for_next'

13 years agoMerge remote-tracking branch 'cifs/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:38:31 +0000 (12:38 +1100)]
Merge remote-tracking branch 'cifs/master'

13 years agoMerge remote-tracking branch 'ceph/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:37:10 +0000 (12:37 +1100)]
Merge remote-tracking branch 'ceph/for-next'

13 years agoMerge remote-tracking branch 'xtensa/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:35:59 +0000 (12:35 +1100)]
Merge remote-tracking branch 'xtensa/master'

13 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Fri, 14 Oct 2011 01:34:45 +0000 (12:34 +1100)]
Merge remote-tracking branch 'unicore32/unicore32'

13 years agoMerge remote-tracking branch 'tile/master'
Stephen Rothwell [Fri, 14 Oct 2011 01:33:31 +0000 (12:33 +1100)]
Merge remote-tracking branch 'tile/master'

13 years agoMerge remote-tracking branch 'rmobile/rmobile-latest'
Stephen Rothwell [Fri, 14 Oct 2011 01:32:16 +0000 (12:32 +1100)]
Merge remote-tracking branch 'rmobile/rmobile-latest'

13 years agoMerge remote-tracking branch 'sh/sh-latest'
Stephen Rothwell [Fri, 14 Oct 2011 01:31:05 +0000 (12:31 +1100)]
Merge remote-tracking branch 'sh/sh-latest'

13 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Fri, 14 Oct 2011 01:24:38 +0000 (12:24 +1100)]
Merge remote-tracking branch 's390/features'

13 years agoMerge remote-tracking branch '52xx-and-virtex/powerpc/next'
Stephen Rothwell [Fri, 14 Oct 2011 01:23:19 +0000 (12:23 +1100)]
Merge remote-tracking branch '52xx-and-virtex/powerpc/next'

13 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Fri, 14 Oct 2011 01:16:52 +0000 (12:16 +1100)]
Merge remote-tracking branch 'powerpc/next'

13 years agoMerge remote-tracking branch 'parisc/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:15:40 +0000 (12:15 +1100)]
Merge remote-tracking branch 'parisc/for-next'

13 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:14:19 +0000 (12:14 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

13 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:13:00 +0000 (12:13 +1100)]
Merge remote-tracking branch 'm68knommu/for-next'

13 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:11:48 +0000 (12:11 +1100)]
Merge remote-tracking branch 'm68k/for-next'

13 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Fri, 14 Oct 2011 01:10:33 +0000 (12:10 +1100)]
Merge remote-tracking branch 'ia64/next'

13 years agoMerge branch 'quilt/hexagon'
Stephen Rothwell [Fri, 14 Oct 2011 01:09:09 +0000 (12:09 +1100)]
Merge branch 'quilt/hexagon'

13 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:07:45 +0000 (12:07 +1100)]
Merge remote-tracking branch 'cris/for-next'

13 years agoMerge remote-tracking branch 'c6x/for-linux-next'
Stephen Rothwell [Fri, 14 Oct 2011 01:01:21 +0000 (12:01 +1100)]
Merge remote-tracking branch 'c6x/for-linux-next'

13 years agoMerge remote-tracking branch 'blackfin/for-linus'
Stephen Rothwell [Fri, 14 Oct 2011 01:00:10 +0000 (12:00 +1100)]
Merge remote-tracking branch 'blackfin/for-linus'

13 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:58:52 +0000 (11:58 +1100)]
Merge remote-tracking branch 'tegra/for-next'

13 years agoMerge remote-tracking branch 's5p/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:55:31 +0000 (11:55 +1100)]
Merge remote-tracking branch 's5p/for-next'

Conflicts:
arch/arm/mach-exynos4/Kconfig
drivers/gpio/Makefile

13 years agoMerge remote-tracking branch 'i.MX/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:54:08 +0000 (11:54 +1100)]
Merge remote-tracking branch 'i.MX/for-next'

Conflicts:
arch/arm/mach-mx5/mm.c

13 years agoMerge remote-tracking branch 'at91/at91-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:52:44 +0000 (11:52 +1100)]
Merge remote-tracking branch 'at91/at91-next'

Conflicts:
arch/arm/mach-at91/at91sam9g45.c

13 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:46:45 +0000 (11:46 +1100)]
Merge remote-tracking branch 'arm-soc/for-next'

Conflicts:
arch/arm/Kconfig.debug
arch/arm/kernel/smp.c
arch/arm/mach-at91/board-usb-a9260.c
arch/arm/mach-msm/board-msm8x60.c
arch/arm/mach-mxs/include/mach/gpio.h
arch/arm/mach-nuc93x/Makefile.boot
arch/arm/mach-tegra/board-paz00.h
arch/arm/mach-tegra/board-seaboard.h
arch/arm/mach-u300/Makefile.boot
arch/arm/plat-mxc/include/mach/gpio.h

13 years agoMerge remote-tracking branch 'arm-lpae/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:44:08 +0000 (11:44 +1100)]
Merge remote-tracking branch 'arm-lpae/for-next'

Conflicts:
arch/arm/include/asm/page.h
arch/arm/include/asm/pgtable-hwdef.h
arch/arm/include/asm/pgtable.h
arch/arm/kernel/head.S
arch/arm/kernel/sleep.S
arch/arm/mm/dma-mapping.c
arch/arm/mm/mmu.c

13 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Fri, 14 Oct 2011 00:42:49 +0000 (11:42 +1100)]
Merge remote-tracking branch 'arm/for-next'

13 years agoMerge remote-tracking branch 'ide/master'
Stephen Rothwell [Fri, 14 Oct 2011 00:41:33 +0000 (11:41 +1100)]
Merge remote-tracking branch 'ide/master'

13 years agoMerge remote-tracking branch 'pci-current/for-linus'
Stephen Rothwell [Fri, 14 Oct 2011 00:41:26 +0000 (11:41 +1100)]
Merge remote-tracking branch 'pci-current/for-linus'

13 years agoMerge remote-tracking branch 'sparc/master'
Stephen Rothwell [Fri, 14 Oct 2011 00:41:25 +0000 (11:41 +1100)]
Merge remote-tracking branch 'sparc/master'

13 years agoMerge remote-tracking branch 'm68k-current/for-linus'
Stephen Rothwell [Fri, 14 Oct 2011 00:41:24 +0000 (11:41 +1100)]
Merge remote-tracking branch 'm68k-current/for-linus'

13 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Fri, 14 Oct 2011 00:41:23 +0000 (11:41 +1100)]
Merge remote-tracking branch 'arm-current/fixes'

13 years agocifs: clean up check_rfc1002_header
Jeff Layton [Tue, 11 Oct 2011 10:41:32 +0000 (06:41 -0400)]
cifs: clean up check_rfc1002_header

Rename it for better clarity as to what it does and have the caller pass
in just the single type byte. Turn the if statement into a switch and
optimize it by placing the most common message type at the top. Move the
header length check back into cifs_demultiplex_thread in preparation
for adding a new receive phase and normalize the cFYI messages.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
13 years agoMerge branches 'for-3.2/cleanup' and 'for-3.2/features' into for-next
Olof Johansson [Thu, 13 Oct 2011 23:33:40 +0000 (16:33 -0700)]
Merge branches 'for-3.2/cleanup' and 'for-3.2/features' into for-next

13 years agoarm/tegra: select AUTO_ZRELADDR by default
Peter De Schrijver [Mon, 3 Oct 2011 13:06:47 +0000 (16:06 +0300)]
arm/tegra: select AUTO_ZRELADDR by default

This patch causes the kernel uncompressor to determine the physical address
of the SDRAM at runtime. This allows the kernel to boot on both tegra2 and
tegra3 even though SDRAM is at different physical addresses on both SoCs.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoCIFS: Simplify byte range locking code
Pavel Shilovsky [Tue, 17 Aug 2010 07:26:00 +0000 (11:26 +0400)]
CIFS: Simplify byte range locking code

Split cifs_lock into several functions and let CIFSSMBLock get pid
as an argument.

Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Steve French <smfrench@gmail.com>
13 years agoARM: tegra: update defconfig
Olof Johansson [Wed, 12 Oct 2011 17:56:59 +0000 (17:56 +0000)]
ARM: tegra: update defconfig

Refresh tegra_defconfig:

New options enabled: RTC, SPI, USB and USB_STORAGE together with
corresponding tegra drivers. Also enable some of the common usb ethernet
adapters.

Enable Tegra ALSA/ASoC/sound support, including drivers for TrimSlice,
and WM8903-based platforms such as Harmony and Seaboard.

Finally, enable new merged boards (Ventana) and the generic devicetree board.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
13 years agoarm/tegra: Harmony: Configure PMC for low-level interrupts
Stephen Warren [Wed, 21 Sep 2011 22:10:40 +0000 (16:10 -0600)]
arm/tegra: Harmony: Configure PMC for low-level interrupts

Without this, the PMC continually detects an interrupt when the PMU_IRQ
line is high, causing the tps6686x IRQ handler thread to hog an entire
CPU.

This change was originally written by Wei Ni <wni@nvidia.com> for Seaboard
in the ChromeOS kernel.

Long-term, this should probably be moved into some kind of PMU driver,
or perhaps integrated into the GPIO/IRQ/pinmux system?

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoarm/tegra: device tree support for ventana board
Peter De Schrijver [Wed, 12 Oct 2011 11:53:05 +0000 (14:53 +0300)]
arm/tegra: device tree support for ventana board

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoarm/tegra: add support for ventana pinmuxing
Peter De Schrijver [Wed, 12 Oct 2011 11:53:04 +0000 (14:53 +0300)]
arm/tegra: add support for ventana pinmuxing

Add support for ventana pinmuxing as a seaboard derivative. This is a cut down
version of work done by Jong Kim <jongk@nvidia.com>.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoarm/tegra: prepare Seaboard pinmux code for derived boards
Peter De Schrijver [Wed, 12 Oct 2011 11:53:03 +0000 (14:53 +0300)]
arm/tegra: prepare Seaboard pinmux code for derived boards

This patch splits out the common part of pinmux and GPIO initialization for
seaboard and derived boards. This code is based on work done by Jong Kim
<jongk@nvidia.com>.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoarm/tegra: pinmux: ioremap registers
Stephen Warren [Wed, 12 Oct 2011 15:54:27 +0000 (09:54 -0600)]
arm/tegra: pinmux: ioremap registers

Use ioremap to obtain access to registers instead of using static
mappings. This reduces the number of users of the static mappings, which
will eventually allow them to be removed.

Note that on Tegra30, the number of register "banks" will decrease to 2,
and the packing of specific bits into registers will change significantly.
That's why this change adds the "*_bank" fields to the pingroup tables,
rather than implementing some more hard-coded scheme.

Also, completely remove the implementation of suspend/resume; Tegra doesn't
yet support suspend/resume, and the implementation is complex for the
general pinmux driver:

* Not all registers are used within each bank, so we probably shouldn't
  just iterate over every register in the bank, and save/restore it,
  since that would mean touching undefined registers.

* Registers are shared between pingroups, so we can't simply iterate over
  each pingroup, and save/restore the registers it uses.

It'd probably be best have probe() calculate a bitmask of actually-used
registers for each bank, and have suspend/resume iterate over those
bitmaps.

Oh, and Real Soon Now, I should be looking into converting this driver to
the new pinmux/pinctrl subsystem, so I didn't want to put too much work
into the current incarnation.

v2: s/space/bank/ to match comments on reg_* fields in pinmux.h.
    Re-order bank/reg parameters to pg_readl/pg_writel.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agogpio/tegra: Convert to a platform device
Stephen Warren [Tue, 11 Oct 2011 22:16:14 +0000 (16:16 -0600)]
gpio/tegra: Convert to a platform device

v3: Make regs variable static. Remove empty init of tegra_gpio_banks.

v2: Retrieve IRQ and memory addresses from resources instead of hard-
coding them. Add back initialization of tegra_gpio_chip.of_node.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
[olof: switched probe routine to __devinit]
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoarm/tegra: Convert pinmux driver to a platform device
Stephen Warren [Tue, 11 Oct 2011 22:16:15 +0000 (16:16 -0600)]
arm/tegra: Convert pinmux driver to a platform device

Signed-off-by: Stephen Warren <swarren@nvidia.com>
[olof: switch probe function to __devinit]
Signed-off-by: Olof Johansson <olof@lixom.net>
13 years agoARM: tegra: devices.c should include devices.h
Olof Johansson [Thu, 13 Oct 2011 00:56:33 +0000 (17:56 -0700)]
ARM: tegra: devices.c should include devices.h

Resolves lots of sparse warnings:

arch/arm/mach-tegra/devices.c:102:24: warning: symbol 'tegra_i2c_device1' was not declared. Should it be static?
arch/arm/mach-tegra/devices.c:112:24: warning: symbol 'tegra_i2c_device2' was not declared. Should it be static?
arch/arm/mach-tegra/devices.c:122:24: warning: symbol 'tegra_i2c_device3' was not declared. Should it be static?
arch/arm/mach-tegra/devices.c:132:24: warning: symbol 'tegra_i2c_device4' was not declared. Should it be static?
[...]

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
13 years agoARM: tegra: cpu-tegra: unexport two functions
Olof Johansson [Mon, 10 Oct 2011 04:57:04 +0000 (21:57 -0700)]
ARM: tegra: cpu-tegra: unexport two functions

Two static functions that are not exported:

arch/arm/mach-tegra/cpu-tegra.c:59:5: warning: symbol 'tegra_verify_speed' was not declared. Should it be static?
arch/arm/mach-tegra/cpu-tegra.c:64:14: warning: symbol 'tegra_getspeed' was not declared. Should it be static?

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: cpu-tegra: sparse type fix
Olof Johansson [Mon, 10 Oct 2011 04:31:23 +0000 (21:31 -0700)]
ARM: tegra: cpu-tegra: sparse type fix

Type fix:
arch/arm/mach-tegra/cpu-tegra.c:144:14: warning: incorrect type in argument 5 (different signedness)
arch/arm/mach-tegra/cpu-tegra.c:144:14:    expected unsigned int *index
arch/arm/mach-tegra/cpu-tegra.c:144:14:    got int *<noident>

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: dma: staticify some tables and functions
Olof Johansson [Fri, 9 Sep 2011 01:07:35 +0000 (18:07 -0700)]
ARM: tegra: dma: staticify some tables and functions

None of them are used externally.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra2_clocks: don't export some tables
Olof Johansson [Fri, 9 Sep 2011 01:03:59 +0000 (18:03 -0700)]
ARM: tegra: tegra2_clocks: don't export some tables

Not used externally, and certainly don't need to be exported.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra_powergate_is_powered should be static
Olof Johansson [Fri, 9 Sep 2011 00:54:21 +0000 (17:54 -0700)]
ARM: tegra: tegra_powergate_is_powered should be static

Not exported and not used externally.

Also, fix return type. Due to new return type, errors can't be returned
so WARN_ON instead of returning error if a bad parameter is specified.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra_rtc_read_ms should be static
Olof Johansson [Fri, 9 Sep 2011 00:50:03 +0000 (17:50 -0700)]
ARM: tegra: tegra_rtc_read_ms should be static

Not exported and not used externally.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra_init_cache should be static
Olof Johansson [Fri, 9 Sep 2011 00:31:32 +0000 (17:31 -0700)]
ARM: tegra: tegra_init_cache should be static

Not exported and not used externally.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: pcie: 0 -> NULL changes
Olof Johansson [Fri, 9 Sep 2011 01:11:46 +0000 (18:11 -0700)]
ARM: tegra: pcie: 0 -> NULL changes

Fixes:

arch/arm/mach-tegra/pcie.c:465:10: warning: Using plain integer as NULL pointer

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: pcie: include board.h
Olof Johansson [Fri, 9 Sep 2011 01:11:24 +0000 (18:11 -0700)]
ARM: tegra: pcie: include board.h

Fixes:

arch/arm/mach-tegra/pcie.c:908:12: warning: symbol 'tegra_pcie_init' was not declared. Should it be static?

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: pcie: don't cast __iomem pointers
Olof Johansson [Fri, 9 Sep 2011 01:09:54 +0000 (18:09 -0700)]
ARM: tegra: pcie: don't cast __iomem pointers

Fixes a lot of:

arch/arm/mach-tegra/pcie.c:678:8: warning: cast removes address space of expression
arch/arm/mach-tegra/pcie.c:678:8: warning: incorrect type in argument 1 (different base types)
arch/arm/mach-tegra/pcie.c:678:8:    expected void const volatile [noderef] <asn:2>*<noident>
arch/arm/mach-tegra/pcie.c:678:8:    got unsigned int
arch/arm/mach-tegra/pcie.c:678:8: warning: cast removes address space of expression

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra2_clocks: 0 -> NULL changes
Olof Johansson [Fri, 9 Sep 2011 01:02:50 +0000 (18:02 -0700)]
ARM: tegra: tegra2_clocks: 0 -> NULL changes

Fixes a lot of:

arch/arm/mach-tegra/tegra2_clocks.c:921:34: warning: Using plain integer as NULL pointer
arch/arm/mach-tegra/tegra2_clocks.c:1462:4: warning: Using plain integer as NULL pointer
arch/arm/mach-tegra/tegra2_clocks.c:1864:4: warning: Using plain integer as NULL pointer

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: tegra2_clocks: don't cast __iomem pointers
Olof Johansson [Fri, 9 Sep 2011 00:56:59 +0000 (17:56 -0700)]
ARM: tegra: tegra2_clocks: don't cast __iomem pointers

Fixes a lot of:

arch/arm/mach-tegra/tegra2_clocks.c:180:2: warning: cast removes address space of expression
arch/arm/mach-tegra/tegra2_clocks.c:180:2: warning: incorrect type in argument 1 (different base types)
arch/arm/mach-tegra/tegra2_clocks.c:180:2:    expected void const volatile [noderef] <asn:2>*<noident>
arch/arm/mach-tegra/tegra2_clocks.c:180:2:    got unsigned int
arch/arm/mach-tegra/tegra2_clocks.c:180:2: warning: cast removes address space of expression

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: timer: don't cast __iomem pointers
Olof Johansson [Fri, 9 Sep 2011 00:49:13 +0000 (17:49 -0700)]
ARM: tegra: timer: don't cast __iomem pointers

Fixes a lot of:

arch/arm/mach-tegra/timer.c:75:2: warning: cast removes address space of expression
arch/arm/mach-tegra/timer.c:75:2: warning: incorrect type in argument 1 (different base types)
arch/arm/mach-tegra/timer.c:75:2:    expected void const volatile [noderef] <asn:2>*<noident>
arch/arm/mach-tegra/timer.c:75:2:    got unsigned int
arch/arm/mach-tegra/timer.c:75:2: warning: cast removes address space of expression

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agoARM: tegra: annotate IO_*_VIRT pointers
Olof Johansson [Mon, 10 Oct 2011 04:05:44 +0000 (21:05 -0700)]
ARM: tegra: annotate IO_*_VIRT pointers

Provide __iomem annotation for IO_*_VIRT pointers, which will propagate
up through IO_TO_VIRT(). Also fixes a 0 to NULL conversion of the base
case to silence sparse.

Unfortunately map_desc takes an unsigned long for the pointer instead of
a void __iomem *. For now, cast explicitly for those cases.

v2: change define to use IOMEM() like many other mach platforms per
comment from Russell.

Signed-off-by: Olof Johansson <olof@lixom.net>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agocy82c693: fix PCI device selection
Bartlomiej Zolnierkiewicz [Thu, 13 Oct 2011 00:28:54 +0000 (00:28 +0000)]
cy82c693: fix PCI device selection

Wrong PCI device may be selected by cy82c693_set_pio_mode() if modular
IDE host drivers are used and there are additional IDE PCI devices
installed in the system.  Fix it.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoicside: DMA support fix
Bartlomiej Zolnierkiewicz [Wed, 12 Oct 2011 04:45:34 +0000 (04:45 +0000)]
icside: DMA support fix

Fix problem introduced by commit 5e37bdc ("ide: add struct
ide_dma_ops (take 3)"): d.dma_ops shouldn't be cleared if
we are going to use DMA.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoIDE: Don't powerdown Compaq Triflex IDE device on suspend
Mikulas Patocka [Wed, 12 Oct 2011 04:31:51 +0000 (04:31 +0000)]
IDE: Don't powerdown Compaq Triflex IDE device on suspend

Don't powerdown Compaq Triflex IDE device on suspend

This fixes APM suspend on Compaq Armada 7400.
APM BIOS doesn't suspend if IDE is powered down when suspending.
The Triflex controller is found only on old Compaq boards,
so this patch will hopefully have no side effects.

This patch fixes a suspend regression introduced in
feb22b7f8e62b1b987a3a1dbad95af767a1df832 ("ide: add proper PCI PM
support (v2)").

Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
[bart: add commit's summary in parens]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoCIFS: Fix incorrect max RFC1002 write size value
Pavel Shilovsky [Fri, 7 Oct 2011 14:57:45 +0000 (18:57 +0400)]
CIFS: Fix incorrect max RFC1002 write size value

..the length field has only 17 bits.

Cc: <stable@kernel.org>
Acked-by: Jeff Layton <jlayton@samba.org>
Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
Signed-off-by: Steve French <smfrench@gmail.com>
13 years agoMerge branch 'upstream-fixes' into for-next
Jiri Kosina [Thu, 13 Oct 2011 16:22:23 +0000 (18:22 +0200)]
Merge branch 'upstream-fixes' into for-next

13 years agoHID: usbhid: cancel timer for retry synchronously
Oliver Neukum [Thu, 13 Oct 2011 16:21:58 +0000 (18:21 +0200)]
HID: usbhid: cancel timer for retry synchronously

This makes sure IO is never restarted while a reset is going on

In particular there seems to be no protection from hid_retry_timeout() calling
hid_start_in() which would start IO after hid_pre_reset() has already called
hid_cease_io() because that uses del_timer(), not del_timer_sync()

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
13 years ago[S390] take mmap_sem when walking guest page table
Carsten Otte [Thu, 13 Oct 2011 15:53:27 +0000 (17:53 +0200)]
[S390] take mmap_sem when walking guest page table

gmap_fault needs to walk the guest page table. However, parts of
that may change if some other thread does munmap. In that case
gmap_unmap_notifier will also unmap the corresponding parts from
the guest page table. We need to take mmap_sem in order to serialize
these operations.
do_exception now calls __gmap_fault with mmap_sem held which does
not get exported to modules. The exported function, which is called
from KVM, now takes mmap_sem.

Reported-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] fix list corruption in gmap reverse mapping
Carsten Otte [Thu, 13 Oct 2011 15:53:26 +0000 (17:53 +0200)]
[S390] fix list corruption in gmap reverse mapping

This introduces locking via mm->page_table_lock to protect
the rmap list for guest mappings from being corrupted by concurrent
operations.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] fix possible deadlock in gmap_map_segment
Carsten Otte [Thu, 13 Oct 2011 15:53:25 +0000 (17:53 +0200)]
[S390] fix possible deadlock in gmap_map_segment

Fix possible deadlock reported by lockdep:
qemu-system-s39/2963 is trying to acquire lock:
(&mm->mmap_sem){++++++}, at: gmap_alloc_table+0x9c/0x120
but task is already holding lock:
(&mm->mmap_sem){++++++}, at: gmap_map_segment+0xa6/0x27c

Actually gmap_alloc_table is the only called in gmap_map_segment with
mmap_sem held, thus it's safe to simply remove the inner lock.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] load user asce on sie_fault
Carsten Otte [Thu, 13 Oct 2011 15:53:24 +0000 (17:53 +0200)]
[S390] load user asce on sie_fault

On sie_fault we need to switch back to user ASCE. Otherwise we get
interresting effects when exiting to "userspace" while the guest
space is still active.

Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] smp: external call vs. emergency signal
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:23 +0000 (17:53 +0200)]
[S390] smp: external call vs. emergency signal

Use a sigp sense running to decide which signal processor order to use
for an ipi. If the target cpu is running use external call, if the target
cpu is not running use emergency signal.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] dasd: re-initialize read_conf buffer for retries
Stefan Haberland [Thu, 13 Oct 2011 15:53:22 +0000 (17:53 +0200)]
[S390] dasd: re-initialize read_conf buffer for retries

The buffer for read configuration data has to be initialized with an
EBCDIC string to show support for extended UIDs to z/VM.
If this read configuration data CQR needs to be retried, the buffer
may have changed in between. So re-initialize the buffer to get a
correct extended UID under z/VM.

Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] dasd: wait for terminated request
Stefan Haberland [Thu, 13 Oct 2011 15:53:21 +0000 (17:53 +0200)]
[S390] dasd: wait for terminated request

After terminating a request in the dasd_sleep_on_immediatly function,
wait for the clear interrupt to be received before starting the
new request. This prevents the requests from getting mixed up.

Signed-off-by: Stefan Haberland <stefan.haberland@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] zcore: add missing module.h include
Heiko Carstens [Thu, 13 Oct 2011 15:53:20 +0000 (17:53 +0200)]
[S390] zcore: add missing module.h include

Add missing module.h include to prevent build breakage after the
module.h split work hits Linus' tree.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] chsc_sch: add support for irq statistics
Sebastian Ott [Thu, 13 Oct 2011 15:53:19 +0000 (17:53 +0200)]
[S390] chsc_sch: add support for irq statistics

Add support for CHSC I/O interrupt statistics in /proc/interrupts.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] ccwgroup: cleanup
Sebastian Ott [Thu, 13 Oct 2011 15:53:18 +0000 (17:53 +0200)]
[S390] ccwgroup: cleanup

Fix coding style, remove forward declerations, simplify code.
Also remove a superfluous get_device/put_device pair in
ccwgroup_create_from_string.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] ccwgroup: move attributes to attribute group
Sebastian Ott [Thu, 13 Oct 2011 15:53:17 +0000 (17:53 +0200)]
[S390] ccwgroup: move attributes to attribute group

Put sysfs attributes of ccwgroup devices in an attribute group to
ensure that these attributes are actually present when userspace
is notified via uevents.

Cc: stable@kernel.org
Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] allow all addressing modes
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:16 +0000 (17:53 +0200)]
[S390] allow all addressing modes

The user space program can change its addressing mode between the
24-bit, 31-bit and the 64-bit mode if the kernel is 64 bit. Currently
the kernel always forces the standard amode on signal delivery and
signal return and on ptrace: 64-bit for a 64-bit process, 31-bit for
a compat process and 31-bit kernels. Change the signal and ptrace code
to allow the full range of addressing modes. Signal handlers are
run in the standard addressing mode for the process.

One caveat is that even an 31-bit compat process can switch to the
64-bit mode. The next signal will switch back into the 31-bit mode
and there is no room in the 31-bit compat signal frame to store the
information that the program came from the 64-bit mode.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] cleanup psw related bits and pieces
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:15 +0000 (17:53 +0200)]
[S390] cleanup psw related bits and pieces

Split out addressing mode bits from PSW_BASE_BITS, rename PSW_BASE_BITS
to PSW_MASK_BASE, get rid of psw_user32_bits, remove unused function
enabled_wait(), introduce PSW_MASK_USER, and drop PSW_MASK_MERGE macros.
Change psw_kernel_bits / psw_user_bits to contain only the bits that
are always set in the respective mode.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] add TIF_SYSCALL thread flag
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:14 +0000 (17:53 +0200)]
[S390] add TIF_SYSCALL thread flag

Add an explicit TIF_SYSCALL bit that indicates if a task is inside
a system call. The svc_code in the pt_regs structure is now only
valid if TIF_SYSCALL is set. With this definition TIF_RESTART_SVC
can be replaced with TIF_SYSCALL. Overall do_signal is a bit more
readable and it saves a few lines of code.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] addressing mode limits and psw address wrapping
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:13 +0000 (17:53 +0200)]
[S390] addressing mode limits and psw address wrapping

An instruction with an address right below the adress limit for the
current addressing mode will wrap. The instruction restart logic in
the protection fault handler and the signal code need to follow the
wrapping rules to find the correct instruction address.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] signal race with restarting system calls
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:12 +0000 (17:53 +0200)]
[S390] signal race with restarting system calls

For a ERESTARTNOHAND/ERESTARTSYS/ERESTARTNOINTR restarting system call
do_signal will prepare the restart of the system call with a rewind of
the PSW before calling get_signal_to_deliver (where the debugger might
take control). For A ERESTART_RESTARTBLOCK restarting system call
do_signal will set -EINTR as return code.
There are two issues with this approach:
1) strace never sees ERESTARTNOHAND, ERESTARTSYS, ERESTARTNOINTR or
   ERESTART_RESTARTBLOCK as the rewinding already took place or the
   return code has been changed to -EINTR
2) if get_signal_to_deliver does not return with a signal to deliver
   the restart via the repeat of the svc instruction is left in place.
   This opens a race if another signal is made pending before the
   system call instruction can be reexecuted. The original system call
   will be restarted even if the second signal would have ended the
   system call with -EINTR.

These two issues can be solved by dropping the early rewind of the
system call before get_signal_to_deliver has been called and by using
the TIF_RESTART_SVC magic to do the restart if no signal has to be
delivered. The only situation where the system call restart via the
repeat of the svc instruction is appropriate is when a SA_RESTART
signal is delivered to user space.

Unfortunately this breaks inferior calls by the debugger again. The
system call number and the length of the system call instruction is
lost over the inferior call and user space will see ERESTARTNOHAND/
ERESTARTSYS/ERESTARTNOINTR/ERESTART_RESTARTBLOCK. To correct this a
new ptrace interface is added to save/restore the system call number
and system call instruction length.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] defconfig: switch on CONFIG_DEVTMPFS
Hendrik Brueckner [Thu, 13 Oct 2011 15:53:11 +0000 (17:53 +0200)]
[S390] defconfig: switch on CONFIG_DEVTMPFS

Switching on the DEVTMPFS kernel option helpes to maintain a /dev
file system early in the boot process, especially, in limited
environments.

Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] lowcore cleanup
Martin Schwidefsky [Thu, 13 Oct 2011 15:53:10 +0000 (17:53 +0200)]
[S390] lowcore cleanup

Remove the save_area_64 field from the 0xe00 - 0xf00 area in the lowcore.
Use a free slot in the save_area array instead.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] Add architecture code for unmapping crashkernel memory
Michael Holzheu [Thu, 13 Oct 2011 15:53:09 +0000 (17:53 +0200)]
[S390] Add architecture code for unmapping crashkernel memory

This patch implements the crash_map_pages() function for s390.
KEXEC_CRASH_MEM_ALIGN is set to HPAGE_SIZE, in order to support
kernel mappings that use large pages. We also use HPAGE_SIZE alignment
for CONFIG_HUGETLB_PAGE=n in order to have the same 1 MiB alignment on
all s390 systems.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] kdump: Add infrastructure for unmapping crashkernel memory
Michael Holzheu [Thu, 13 Oct 2011 15:53:08 +0000 (17:53 +0200)]
[S390] kdump: Add infrastructure for unmapping crashkernel memory

This patch introduces a mechanism that allows architecture backends to
remove page tables for the crashkernel memory. This can protect the loaded
kdump kernel from being overwritten by broken kernel code.  Two new
functions crash_map_reserved_pages() and crash_unmap_reserved_pages() are
added that can be implemented by architecture code.  The
crash_map_reserved_pages() function is called before and
crash_unmap_reserved_pages() after the crashkernel segments are loaded.  The
functions are also called in crash_shrink_memory() to create/remove page
tables when the crashkernel memory size is reduced.

To support architectures that have large pages this patch also introduces
a new define KEXEC_CRASH_MEM_ALIGN. The crashkernel start and size must
always be aligned with KEXEC_CRASH_MEM_ALIGN.

Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] Export vmcoreinfo note
Michael Holzheu [Thu, 13 Oct 2011 15:53:07 +0000 (17:53 +0200)]
[S390] Export vmcoreinfo note

This patch defines for s390 an ABI defined pointer to the vmcoreinfo note at
a well known address. With this patch tools are able to find this information
in dumps created by stand-alone or hypervisor dump tools.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
13 years ago[S390] kdump: Initialize vmcoreinfo note at startup
Michael Holzheu [Thu, 13 Oct 2011 15:53:06 +0000 (17:53 +0200)]
[S390] kdump: Initialize vmcoreinfo note at startup

Currently the vmcoreinfo note is only initialized in case of kdump. On s390
it is possible to create kernel dumps with other dump mechanisms than kdump
(e.g. via hypervisor dump or stand-alone dump tools). For those dumps it
would also be desirable to include the vmcoreinfo data. To accomplish this,
with this patch the vmcoreinfo ELF note is always initialized, not only in
case of a (kdump) crash. On s390 we will add an ABI defined pointer at
a well known address to vmcoreinfo so that dump analysis tools are able to
find this information.

In particular on s390 we have a tool named zgetdump. With this tool it is
possible to convert dump formats on the fly using fuse. E.g. you can mount a
s390 stand-alone dump as ELF dump. When this is done, the tool finds the
vmcoreinfo in the stand-alone dump via the well known ABI defined address and
it creates the respective VMCOREINFO ELF note in the output ELF dump. This then
can be used e.g. by makedumpfile for dump filtering.  No more need for a
vmlinux file with debug information.

So this will look like the following:
$ zgetdump --mount standalone.dump -f elf /mnt
$ ls /mnt
  dump.elf
$ readelf -n /mnt/dump.elf
$ ...
  VMCOREINFO            0x00000474      Unknown note type: (0x00000000)
$ makedumpfile -c -d 31 /mnt/dump.elf dump.kdump

Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>