]> git.karo-electronics.de Git - linux-beck.git/log
linux-beck.git
11 years agostaging: comedi: remove use of __devexit_p
Bill Pemberton [Mon, 19 Nov 2012 18:21:37 +0000 (13:21 -0500)]
staging: comedi: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: comedi: me_daq: remove broken workaround for PLX bug
Ian Abbott [Tue, 20 Nov 2012 11:08:56 +0000 (11:08 +0000)]
staging: comedi: me_daq: remove broken workaround for PLX bug

The PLX PCI 9050 interface chip has a bug where its local configuration
registers accessible through PCI BAR 0 and/or PCI BAR 1 (depending on
settings loaded from a serial EEPROM or local bus processor) are
unreadable (always read 0 instead of the true register values) if the
base address starts on an odd multiple of 0x80 (i.e.  has bit 7 set to
1).

The "me_daq" driver attempts to work around this by writing to the PCI
config space to swap the addresses assigned to PCI BAR 0 and PCI BAR 5
(which has been initially configured by serial EEPROM load as a spare
region of the same length as the PCI BAR 0 region).  (If the PCI BAR 5
region is absent, it attempts to reduce the PCI BAR 0 address by 0x80,
which is likely to cause havoc for some other device, but that case
shouldn't be reachable in practice.)

The workaround in the driver is ineffective because it has already
ioremapped the memory from `pci_resource_start(pcidev, 0)` *before* it
does the workaround, so after swapping PCI BAR 0 and PCI BAR 5, this
memory will end up accessing whatever onboard registers PCI BAR 5 was
linked to instead of the local configuration registers.  It also leaves
the addresses in the physical PCI BAR registers set differently to the
resource start addresses recorded in the `struct pci_dev`.

The workaround could be fixed by ioremapping `pci_resource_start(pcidev,
5)` if the PCI BAR addresses were physically swapped (and the fallback
workaround of subtracting 0x80 from the base address should really be
removed altogether).  However, it's not really worth it.  This sort of
thing should be worked around in "drivers/pci/quirks.c" by ensuring that
PCI BAR 0 and/or PCI BAR 1 do not end up on an odd multiple of 0x80
bytes.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192u: remove use of __devexit
Bill Pemberton [Mon, 19 Nov 2012 18:26:46 +0000 (13:26 -0500)]
staging: rtl8192u: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192e: remove use of __devexit
Bill Pemberton [Mon, 19 Nov 2012 18:26:45 +0000 (13:26 -0500)]
staging: rtl8192e: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8187se: remove use of __devexit
Bill Pemberton [Mon, 19 Nov 2012 18:26:44 +0000 (13:26 -0500)]
staging: rtl8187se: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192e: remove use of __devinitdata
Bill Pemberton [Mon, 19 Nov 2012 18:24:45 +0000 (13:24 -0500)]
staging: rtl8192e: remove use of __devinitdata

CONFIG_HOTPLUG is going away as an option so __devinitdata is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8187se: remove use of __devinitdata
Bill Pemberton [Mon, 19 Nov 2012 18:24:44 +0000 (13:24 -0500)]
staging: rtl8187se: remove use of __devinitdata

CONFIG_HOTPLUG is going away as an option so __devinitdata is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8187se: remove use of __devinit
Bill Pemberton [Mon, 19 Nov 2012 18:22:08 +0000 (13:22 -0500)]
staging: rtl8187se: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192e: remove use of __devinit
Bill Pemberton [Mon, 19 Nov 2012 18:22:05 +0000 (13:22 -0500)]
staging: rtl8192e: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192u: remove use of __devinit
Bill Pemberton [Mon, 19 Nov 2012 18:22:04 +0000 (13:22 -0500)]
staging: rtl8192u: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8192e: remove use of __devexit_p
Bill Pemberton [Mon, 19 Nov 2012 18:20:58 +0000 (13:20 -0500)]
staging: rtl8192e: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: rtl8187se: remove use of __devexit_p
Bill Pemberton [Mon, 19 Nov 2012 18:20:56 +0000 (13:20 -0500)]
staging: rtl8187se: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agoStaging: rtl8187se: remove check for IW_ENCODE_DISABLED
MAACHE Mehdi [Wed, 21 Nov 2012 14:18:29 +0000 (15:18 +0100)]
Staging: rtl8187se: remove check for IW_ENCODE_DISABLED

The original code had a no-op stub where it checked if
IW_ENCODE_DISABLED and did nothing.  Then in a cleanup patch we
accidentally turned the check on.  That was: de171bd6ff "Staging:
rtl8187se: r8180_wx: fixed a lot of checkpatch.pl issues".

The check should just be removed.

Signed-off-by: Mehdi MAACHE <mehdi.maache@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in r8185b_init.c
YAMANE Toshiaki [Tue, 20 Nov 2012 20:17:13 +0000 (05:17 +0900)]
staging/rtl8187se: Fix spacing coding style in r8185b_init.c

The following errors and warnings fixed.
- ERROR: space prohibited after that open parenthesis '('
- ERROR: space prohibited before that close parenthesis ')'
- ERROR: space required before the open parenthesis '('
- WARNING: braces {} are not necessary for any arm of this statement

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Use netdev_ printks in r8185b_init.c
YAMANE Toshiaki [Tue, 20 Nov 2012 20:16:37 +0000 (05:16 +0900)]
staging/rtl8187se: Use netdev_ printks in r8185b_init.c

The following warnings fixed.
- WARNING: Prefer netdev_err(netdev, ... then dev_err(dev, ... then pr_err(...  to printk(KERN_ERR ...
- WARNING: Prefer netdev_info(netdev, ... then dev_info(dev, ... then pr_info(...  to printk(KERN_INFO ...

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_wep.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:13:59 +0000 (21:13 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_wep.c

The following errors and warnings fixed.
- ERROR: code indent should use tabs where possible
- WARNING: please, no spaces at the start of a line

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt_wep.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:13:46 +0000 (21:13 +0900)]
staging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt_wep.c

The following warnings fixed.
- WARNING: Prefer netdev_dbg(netdev, ... then dev_dbg(dev, ... then pr_debug(...  to printk(KERN_DEBUG ...

and add pr_fmt.

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_wep.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:13:32 +0000 (21:13 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_wep.c

The following errors fixed.
-ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt_wep.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:13:17 +0000 (21:13 +0900)]
staging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt_wep.c

The following warning fixed.
- WARNING: Use #include <linux/string.h> instead of <asm/string.h>

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_ccmp.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:13:05 +0000 (21:13 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_ccmp.c

The following error and warning fixed.
- ERROR: code indent should use tabs where possible
- WARNING: braces {} are not necessary for single statement blocks

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt_ccmp.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:12:52 +0000 (21:12 +0900)]
staging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt_ccmp.c

The following warnings fixed.
- WARNING: Prefer netdev_dbg(netdev, ... then dev_dbg(dev, ... then pr_debug(...  to printk(KERN_DEBUG ...

and add pr_fmt.

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_ccmp.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:12:39 +0000 (21:12 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt_ccmp.c

The following errors fixed.
-ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt_ccmp.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:12:25 +0000 (21:12 +0900)]
staging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt_ccmp.c

The following warnings fixed.
- WARNING: Use #include <linux/string.h> instead of <asm/string.h>

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_module.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:12:11 +0000 (21:12 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_module.c

The following errors and warnings fixed.
- ERROR: space required after that ',' (ctx:VxV)
- ERROR: code indent should use tabs where possible
- WARNING: please, no space before tabs
- WARNING: please, no spaces at the start of a line
- WARNING: suspect code indent for conditional statements (8, 10)

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Use netdev_ printks in ieee80211/ieee80211_module.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:11:54 +0000 (21:11 +0900)]
staging/rtl8187se: Use netdev_ printks in ieee80211/ieee80211_module.c

The following warning fixed.
- WARNING: Prefer netdev_warn(netdev, ... then dev_warn(dev, ... then pr_warn(...  to printk(KERN_WARNING ...

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix include file issue in ieee80211/ieee80211_module.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:11:40 +0000 (21:11 +0900)]
staging/rtl8187se: Fix include file issue in ieee80211/ieee80211_module.c

The following warning fixed.
- WARNING: Use #include <linux/uaccess.h> instead of <asm/uaccess.h>

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt.h
YAMANE Toshiaki [Tue, 20 Nov 2012 12:11:25 +0000 (21:11 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt.h

The following error fixed.
-ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:11:12 +0000 (21:11 +0900)]
staging/rtl8187se: Fix spacing coding style in ieee80211/ieee80211_crypt.c

The following errors fixed.
-ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:10:57 +0000 (21:10 +0900)]
staging/rtl8187se: Use pr_ printks in ieee80211/ieee80211_crypt.c

The following warnings fixed.
- WARNING: Prefer netdev_dbg(netdev, ... then dev_dbg(dev, ... then pr_debug(...  to printk(KERN_DEBUG ...

and add pr_fmt.

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt.c
YAMANE Toshiaki [Tue, 20 Nov 2012 12:10:42 +0000 (21:10 +0900)]
staging/rtl8187se: Fix include file issue in ieee80211/ieee80211_crypt.c

The following warnings fixed.
- WARNING: Use #include <linux/string.h> instead of <asm/string.h>
- WARNING: Use #include <linux/errno.h> instead of <asm/errno.h>

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/rtl8187se: Fix spacing coding style in r8180_dm.h
YAMANE Toshiaki [Tue, 20 Nov 2012 12:09:55 +0000 (21:09 +0900)]
staging/rtl8187se: Fix spacing coding style in r8180_dm.h

The following errors fixed.
-ERROR: "foo * bar" should be "foo *bar"

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Removing final checkpatch errors, all line >80 chars
Mark Einon [Fri, 16 Nov 2012 10:47:42 +0000 (10:47 +0000)]
staging: et131x: Removing final checkpatch errors, all line >80 chars

Trivial Whitespace changes only. No checkpatch errors exist in et131x
after this change.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Replace kmem_cache use with plain kmalloc/kfree
Mark Einon [Fri, 16 Nov 2012 10:47:41 +0000 (10:47 +0000)]
staging: et131x: Replace kmem_cache use with plain kmalloc/kfree

The use of a kmem_cache was noted as being unusual in the TODO. Replace
the kmem_cache with kmalloc/kfree so that the code is less suprising.

Also tidy up the mess that was the et131x_init_recv() out of memory
error path.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Remove incorrect comments regarding alignment
Mark Einon [Fri, 16 Nov 2012 10:47:40 +0000 (10:47 +0000)]
staging: et131x: Remove incorrect comments regarding alignment

A previous change removed code that aligned memory returned from
dma_alloc_coherent() to a 4k boundary, which was not necessary.

Some comments regarding this alignment still exist, so remove them
as they no longer apply.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Reduce indenting in et131x_rx_dma_memory_free()
Mark Einon [Fri, 16 Nov 2012 10:47:39 +0000 (10:47 +0000)]
staging: et131x: Reduce indenting in et131x_rx_dma_memory_free()

This change negates an 'if' statement, allowing a large block of code
to be un-indented, making the code more readable.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Remove alignment offset padding on DMA buffer allocation/free
Mark Einon [Fri, 16 Nov 2012 10:47:38 +0000 (10:47 +0000)]
staging: et131x: Remove alignment offset padding on DMA buffer allocation/free

This padding was used to align buffers to a 4k boundary when returned
from dma_alloc_coherent(). As the buffers are already 4k aligned, and
the alignment no longer performed, the padding is not needed.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: Refactor et131x_isr() to remove indenting
Mark Einon [Fri, 16 Nov 2012 10:47:37 +0000 (10:47 +0000)]
staging: et131x: Refactor et131x_isr() to remove indenting

By negating a 'status' variable check in et131x_isr(), we can remove
the indenting of a large block of code, increasing the readability.

This patch does exactly that.

Signed-off-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: remove use of __devexit_p
Bill Pemberton [Mon, 19 Nov 2012 18:20:50 +0000 (13:20 -0500)]
staging: et131x: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: devel@driverdev.osuosl.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: remove use of __devinit
Bill Pemberton [Mon, 19 Nov 2012 18:22:12 +0000 (13:22 -0500)]
staging: et131x: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Acked-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: et131x: remove use of __devexit
Bill Pemberton [Mon, 19 Nov 2012 18:26:57 +0000 (13:26 -0500)]
staging: et131x: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Acked-by: Mark Einon <mark.einon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: remove use of __devexit
Bill Pemberton [Mon, 19 Nov 2012 18:26:54 +0000 (13:26 -0500)]
staging: wlags49_h2: remove use of __devexit

CONFIG_HOTPLUG is going away as an option so __devexit is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: remove use of __devinitdata
Bill Pemberton [Mon, 19 Nov 2012 18:24:47 +0000 (13:24 -0500)]
staging: wlags49_h2: remove use of __devinitdata

CONFIG_HOTPLUG is going away as an option so __devinitdata is no
longer needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: remove use of __devinit
Bill Pemberton [Mon, 19 Nov 2012 18:21:53 +0000 (13:21 -0500)]
staging: wlags49_h2: remove use of __devinit

CONFIG_HOTPLUG is going away as an option so __devinit is no longer
needed.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: remove use of __devexit_p
Bill Pemberton [Mon, 19 Nov 2012 18:19:34 +0000 (13:19 -0500)]
staging: wlags49_h2: remove use of __devexit_p

CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer
needed, remove it.

This also changes the syntax for the initialization of the wl_driver
struct to match convention.

Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: ap_h2.c: fixes spaces-before-tabs problems
Johan Meiring [Tue, 20 Nov 2012 14:44:59 +0000 (16:44 +0200)]
staging: wlags49_h2: ap_h2.c: fixes spaces-before-tabs problems

This commit sorts out a few instances of spaces before tabs, as
reported by the checkpatch.pl tool.

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: gets rid of C99 // comments
Johan Meiring [Tue, 20 Nov 2012 14:44:58 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: gets rid of C99 // comments

This commit converts all C99 // comments to standard /* */ comments

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: fixes brace placement
Johan Meiring [Tue, 20 Nov 2012 14:44:57 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: fixes brace placement

This commit fixes incorrect brace placement, as reported by the
checkpatch.pl tool.

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: fixes 80 char line length issues
Johan Meiring [Tue, 20 Nov 2012 14:44:56 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: fixes 80 char line length issues

This commit sorts out 80+ char line length issues that were reported
by the checkpatch.pl tool.

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: fixes spaces-before-tabs issue
Johan Meiring [Tue, 20 Nov 2012 14:44:55 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: fixes spaces-before-tabs issue

This commit fixes a spaces-before-tabs problem that was reported by
the checkpatch.pl tool.

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: fixes tab indentation
Johan Meiring [Tue, 20 Nov 2012 14:44:54 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: fixes tab indentation

This commit sorts out the tab & space indentation problems that were
reported by the checkpatch.pl tool.

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: wlags49_h2: wl_if.h: fixes macro styling issues
Johan Meiring [Tue, 20 Nov 2012 14:44:10 +0000 (16:44 +0200)]
staging: wlags49_h2: wl_if.h: fixes macro styling issues

This commit sorts out macro styling issues that were indicated by
the checkpatch.pl script,

Signed-off-by: Johan Meiring <johanmeiring@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ozwpan: Remove redundant null check before kfree in ozhcd.c
Sachin Kamat [Tue, 20 Nov 2012 11:40:10 +0000 (17:10 +0530)]
staging: ozwpan: Remove redundant null check before kfree in ozhcd.c

kfree on NULL pointer is a no-op.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Rupesh Gujare <rgujare@ozmodevices.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ozwpan: Remove redundant null check before kfree in ozproto.c
Sachin Kamat [Tue, 20 Nov 2012 11:40:09 +0000 (17:10 +0530)]
staging: ozwpan: Remove redundant null check before kfree in ozproto.c

kfree on NULL pointer is a no-op.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Rupesh Gujare <rgujare@ozmodevices.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ozwpan: Remove redundant null check before kfree in ozpd.c
Sachin Kamat [Tue, 20 Nov 2012 11:40:08 +0000 (17:10 +0530)]
staging: ozwpan: Remove redundant null check before kfree in ozpd.c

kfree on NULL pointer is a no-op.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Rupesh Gujare <rgujare@ozmodevices.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging: ozwpan: Include oz_events_clear() conditionally
Sachin Kamat [Tue, 20 Nov 2012 08:56:58 +0000 (14:26 +0530)]
staging: ozwpan: Include oz_events_clear() conditionally

oz_events_clear() is referenced only when CONFIG_DEBUG_FS is defined.
Move the definition too under this flag.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Rupesh Gujare <rgujare@ozmodevices.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agoMerge tag 'iio-for-3.8e' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio...
Greg Kroah-Hartman [Wed, 21 Nov 2012 20:32:57 +0000 (12:32 -0800)]
Merge tag 'iio-for-3.8e' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

From Jonathan:

  "Fifth round of new IIO drivers, cleanups and fixes for the 3.8 cycle.

  Here we have a number of minor fixes.
  * a quirk for the hid sensor driver should be a boolean option.
  * return an error for a failed memdup in the hid sensor driver.
  * Fix a return value in adt7410.
  * A double free in the IIO event infrastructure.
  * Disabling interrupts in tsl2563 was wrong (never been correct!)
  * Incorrect signature for the iio_buffer_register stub
  * Incorrect return for isl29018 write_raw callback.
  * A number of minor fixes as part of the various rework series.

  New drivers and major rework.
  * Introduce and use extensively an adis library for numerous spi
    Analog Devices mems sensors.  This then moves out of staging.
  * Lots of new stuff then added to this library to support newer
    sensors.
  * New drivers for ADIS16136 and ADIS16480 and similar.
  * Core support for barometric pressure sensors.
  * ad7298 cleanup and move out of staging.

  The bulk of this is from Lars-Peter Clausen.  He's been rather
  busy!"

11 years agoiio:adc:ad7298 make the tx and rx buffers __be16
Jonathan Cameron [Wed, 21 Nov 2012 18:24:26 +0000 (18:24 +0000)]
iio:adc:ad7298 make the tx and rx buffers __be16

These buffers are a little interesting in that their
content may have variable endianness, but all but one
element will definitely be big endian.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
11 years agoiio:imu: Add support for the ADIS16480 and similar IMUs
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio:imu: Add support for the ADIS16480 and similar IMUs

This patch adds support for the ADIS16375, ADIS16480, ADIS16485, ADIS16488 6
degree to 10 degree of freedom IMUs.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: Factor out fixed point number parsing into its own function
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio: Factor out fixed point number parsing into its own function

Factor out the code for parsing fixed point numbers into its own function and
make this function globally available. This allows us to reuse the code to parse
fixed point numbers in individual IIO drivers.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: Add pressure channel type
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio: Add pressure channel type

This patch adds support for a new IIO channel type for pressure measurements.
This can for example be used for barometric pressure sensors.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio:imu:adis: Add paging support
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio:imu:adis: Add paging support

Some of the newer generation devices from the ADIS16XXX series have more
registers than what can be supported with the current register addressing
scheme. These devices implement register paging to support a larger register
range. Each page is 128 registers large and the currently active page can be
selected via register 0x00 in each page. This patch implements transparent
paging inside the common adis library. The register read/write interface stays
the same and when a register is accessed the library automatically switches to
the correct page if it is not already selected. The page number is encoded in
the upper bits of the register number, e.g. register 0x5 of page 1 is 0x85.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio:gyro: Add support for the ADIS16136 gyroscope
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio:gyro: Add support for the ADIS16136 gyroscope

This patch adds support for the ADIS16133, ADIS16135, ADIS16136 single channel
gyroscopes. The main difference between them is the sensor precision.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio:imu:adis: Add support for 32bit registers
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio:imu:adis: Add support for 32bit registers

Some of the newer generation devices from the ADIS16XXX family have 32bit wide
register which spans two 16bit wide registers. This patch adds support for
reading and writing a 32bit wide register.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio:imu:adis: Add debugfs register access support
Lars-Peter Clausen [Tue, 20 Nov 2012 13:36:00 +0000 (13:36 +0000)]
iio:imu:adis: Add debugfs register access support

Provide a IIO debugfs register access function for the ADIS library. This
function can be used by individual drivers to allow raw register access via
debugfs.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio: Move the ad7298 driver out of staging
Lars-Peter Clausen [Sat, 17 Nov 2012 11:42:59 +0000 (11:42 +0000)]
staging:iio: Move the ad7298 driver out of staging

The driver does not expose any custom API to userspace and none of the standard
static code checker tools report any issues, so move it out of staging.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:ad7298: Squash everything into one file
Lars-Peter Clausen [Thu, 15 Nov 2012 13:15:00 +0000 (13:15 +0000)]
staging:iio:ad7298: Squash everything into one file

The recent cleanups have decimated the drivers code size by quite a bit. It is
only a few hundred lines in total now. Putting everything into one file also
allows to reduce the code size a bit more by removing a few lines of boilerplate
code. The only functional change made by this patch is that we now always
include buffer support, instead of making it optional. This is more consistent
with what we do for other drivers.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:ad7298: Fix temperature scale and offset
Lars-Peter Clausen [Thu, 15 Nov 2012 13:15:00 +0000 (13:15 +0000)]
staging:iio:ad7298: Fix temperature scale and offset

The temperature scale and offset depend on the reference voltage, the current
formula used in the driver assumes a 2.5V reference. This patch modifies the
code to report the unprocessed value for the temperature channel "raw" property
and to provide proper "scale" and "offset" properties which depend on the
selected reference voltage.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:ad7298: Rework regulator handling
Lars-Peter Clausen [Thu, 15 Nov 2012 13:15:00 +0000 (13:15 +0000)]
staging:iio:ad7298: Rework regulator handling

Rework the regulator handling of the driver to match more closely what we do in
other drivers. Make the regulator non-optional if a external reference is used.
Also dispose the option of specifying the reference voltage via platform data.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:ad7298: Do not perform endianness conversion in buffered mode
Lars-Peter Clausen [Thu, 15 Nov 2012 13:15:00 +0000 (13:15 +0000)]
staging:iio:ad7298: Do not perform endianness conversion in buffered mode

For buffered mode we do not want to perform endianness conversion in the kernel,
but rather offload it to user space, since it is not always required to do a
conversion at all. It also greatly simplifies the kernel code since no
post-processing has to be done and may allow future optimizations like streaming
data directly to a storage device or over the network via DMA.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio: Move adis library out of staging
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio: Move adis library out of staging

Now that the adis library no longer depends on the sw_ring buffer implementation
we can move it out of staging.

While we are at it also sort the entries in the iio Kconfig and Makefile to be
in alphabetical order.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis: Preallocate transfer message
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis: Preallocate transfer message

Currently the driver reads out all sample registers of the device and throws
away those which it does not need. Furthermore the SPI message is constructed
each time the trigger handler is run, although it will be the same each time.
This patch preallocates and pre-constructs the SPI message in the
"update_scan_mode" callback. Only those register which are actually selected for
sampling are included in the message. The patch also gets rid of the conversion
of the sample data from big endian to the native endianness and instead marks
the channel as big endian in its scan type. This allows to directly push the
SPI transfer buffer to the IIO buffer without the need to post-process it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis_lib: Use triggered buffer setup helper function
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis_lib: Use triggered buffer setup helper function

Use the triggered buffer helper functions to setup and tear down the buffer for
the adis library instead of doing this manually. This also means that we switch
away from the deprecated sw_ring buffer and use the kfifo buffer now instead.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16260: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16260: Use adis library

Use the new adis library for the adis16260 driver. This allows us to completely
scrap the adis16260 buffer and trigger code and about half of the core driver
code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16240: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16240: Use adis library

Use the new adis library for the adis16240 driver. This allows us to completely
scrap the adis16240 buffer and trigger code and more than half of the core
driver code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16220: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16220: Use adis library

Use the new adis library for the adis16220 driver. The adis16220 driver is a bit
special and so we can only make use of the generic register access and control
functions for now.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16209: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16209: Use adis library

Use the new adis library for the adis16209 driver. This allows us to completely
scrap the adis16209 buffer and trigger code and more than half of the core
driver code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16204: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16204: Use adis library

Use the new adis library for the adis16204 driver. This allows us to completely
scrap the adis16204 buffer and trigger code and more than half of the core
driver code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16203: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16203: Use adis library

Use the new adis library for the adis16203 driver. This allows us to completely
scrap the adis16203 buffer and trigger code and more than half of the core
driver code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adis16201: Use adis library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio:adis16201: Use adis library

Use the new adis library for the adis16201 driver. This allows us to completely
scrap the adis16201 buffer and trigger code and more than half of the core
driver code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio: Add common ADIS library
Lars-Peter Clausen [Tue, 13 Nov 2012 13:28:00 +0000 (13:28 +0000)]
staging:iio: Add common ADIS library

A lot of the devices from the ADIS family use the same methods for accessing
registers, sampling data and trigger handling. They also have similar register
layout for the control registers.

This patch adds a common library for these devices. The library implements
functions for reading and writing registers as buffer and trigger management. It
also provides a set functions for accessing the control registers and for
running the devices internal self-test. Having this common library code will
allow us to remove a lot of duplicated code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: isl29018: fix to return error or 0 in isl29018_write_raw()
Wei Yongjun [Thu, 8 Nov 2012 09:05:00 +0000 (09:05 +0000)]
iio: isl29018: fix to return error or 0 in isl29018_write_raw()

We had assigned the return value to 'ret' but ignored it when
return from isl29018_write_raw(), it's better to return 'ret'
instead of 0.

dpatch engine is used to auto generate this patch.
(https://github.com/weiyj/dpatch)

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: Fix iio_buffer_register stub signature
Lars-Peter Clausen [Tue, 13 Nov 2012 11:48:00 +0000 (11:48 +0000)]
iio: Fix iio_buffer_register stub signature

Match the iio_buffer_register stub signature up to the real function and make
the second parameter const. This fixes a the following warnings if
CONFIG_IIO_BUFFER is disabled:

drivers/staging/iio/accel/adis16201_core.c: In function ‘adis16201_probe’:
drivers/staging/iio/accel/adis16201_core.c:536: warning: passing argument 2 of ‘iio_buffer_register’ discards qualifiers from pointer target type
drivers/staging/iio/accel/adis16203_core.c: In function ‘adis16203_probe’:
drivers/staging/iio/accel/adis16203_core.c:468: warning: passing argument 2 of ‘iio_buffer_register’ discards qualifiers from pointer target type
drivers/staging/iio/accel/adis16204_core.c: In function ‘adis16204_probe’:
drivers/staging/iio/accel/adis16204_core.c:527: warning: passing argument 2 of ‘iio_buffer_register’ discards qualifiers from pointer target type
drivers/staging/iio/accel/adis16209_core.c: In function ‘adis16209_probe’:
drivers/staging/iio/accel/adis16209_core.c:542: warning: passing argument 2 of ‘iio_buffer_register’ discards qualifiers from pointer target type
drivers/staging/iio/accel/adis16240_core.c: In function ‘adis16240_probe’:
drivers/staging/iio/accel/adis16240_core.c:588: warning: passing argument 2 of ‘iio_buffer_register’ discards qualifiers from pointer target type

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: hid-sensor: Return proper error if kmemdup fails
Axel Lin [Sat, 27 Oct 2012 15:03:00 +0000 (16:03 +0100)]
iio: hid-sensor: Return proper error if kmemdup fails

Return -ENOMEM instead of 0 if kmemdup fails.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agotsl2563: fixed bug with disabling interrupts
Derek Basehore [Thu, 4 Oct 2012 23:54:00 +0000 (00:54 +0100)]
tsl2563: fixed bug with disabling interrupts

In tsl_2563_write_interrupt_config and tsl2562_remove, interrupts are not
disabled where they should be. This seems to be from a mistake of using |=
instead of &= in 2 lines of code.

Signed-off-by: Derek Basehore <dbasehore@chromium.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agodrivers/iio/industrialio-event.c: eliminate possible double free
Julia Lawall [Sun, 21 Oct 2012 10:52:00 +0000 (11:52 +0100)]
drivers/iio/industrialio-event.c: eliminate possible double free

The function __iio_add_event_config_attrs is only called once, by the
function iio_device_register_eventset.  If the call fails,
iio_device_register_eventset calls __iio_remove_event_config_attrs.  There
is thus no need for __iio_add_event_config_attrs to also call
__iio_remove_event_config_attrs on failure.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
@r@
identifier f,free,a;
parameter list[n] ps;
type T;
expression e;
@@

f(ps,T a,...) {
  ... when any
      when != a = e
  if(...) { ... free(a); ... return ...; }
  ... when any
}

@@
identifier r.f,r.free;
expression x,a;
expression list[r.n] xs;
@@

* x = f(xs,a,...);
  if (...) { ... free(a); ... return ...; }
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agostaging:iio:adt7410: Fix adt7410_set_mode return value
Lars-Peter Clausen [Mon, 22 Oct 2012 09:42:00 +0000 (10:42 +0100)]
staging:iio:adt7410: Fix adt7410_set_mode return value

The function is expected to return the number of bytes consumed and as long as
not all bytes have been consumed the function will be called again. Currently
the function returns 'ret', which will always be 0 in this case, so we end up in
a endless loop since the caller will assume that no bytes have been consumed. So
instead return len as it is supposed to.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoiio: hid-sensors: convert HID_SENSOR_ENUM_BASE_QUIRKS to bool
Kirill A. Shutemov [Mon, 22 Oct 2012 07:57:00 +0000 (08:57 +0100)]
iio: hid-sensors: convert HID_SENSOR_ENUM_BASE_QUIRKS to bool

It's non-sense to use tristate for the option, it's bool.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
11 years agoMerge 3.7-rc6 into staging-next
Greg Kroah-Hartman [Sat, 17 Nov 2012 02:24:22 +0000 (18:24 -0800)]
Merge 3.7-rc6 into staging-next

11 years agoLinux 3.7-rc6
Linus Torvalds [Sat, 17 Nov 2012 01:42:40 +0000 (17:42 -0800)]
Linux 3.7-rc6

11 years agoMerge git://git.kernel.org/pub/scm/virt/kvm/kvm
Linus Torvalds [Sat, 17 Nov 2012 00:49:10 +0000 (16:49 -0800)]
Merge git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull KVM fix from Marcelo Tosatti:
 "A correction for oops on module init with older Intel hosts."

* git://git.kernel.org/pub/scm/virt/kvm/kvm:
  KVM: x86: Fix invalid secondary exec controls in vmx_cpuid_update()

11 years agoMerge branch 'akpm' (Fixes from Andrew)
Linus Torvalds [Fri, 16 Nov 2012 23:26:38 +0000 (15:26 -0800)]
Merge branch 'akpm' (Fixes from Andrew)

Merge misc fixes from Andrew Morton.

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (12 patches)
  revert "mm: fix-up zone present pages"
  tmpfs: change final i_blocks BUG to WARNING
  tmpfs: fix shmem_getpage_gfp() VM_BUG_ON
  mm: highmem: don't treat PKMAP_ADDR(LAST_PKMAP) as a highmem address
  mm: revert "mm: vmscan: scale number of pages reclaimed by reclaim/compaction based on failures"
  rapidio: fix kernel-doc warnings
  swapfile: fix name leak in swapoff
  memcg: fix hotplugged memory zone oops
  mips, arc: fix build failure
  memcg: oom: fix totalpages calculation for memory.swappiness==0
  mm: fix build warning for uninitialized value
  mm: add anon_vma_lock to validate_mm()

11 years agostaging: drm/omap: Fix usage of IS_ERR_OR_NULL and PTR_ERR
Andy Gross [Fri, 16 Nov 2012 19:10:57 +0000 (13:10 -0600)]
staging: drm/omap: Fix usage of IS_ERR_OR_NULL and PTR_ERR

Return -ENOMEM if dmm_txn_init cannot allocate a refill engine.

v2: Fix typing issue seen with newer compilers

Signed-off-by: Andy Gross <andy.gross@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agostaging/serqt_usb2: Refactor qt_status_change_check() in serqt_usb2.c
YAMANE Toshiaki [Fri, 16 Nov 2012 20:19:22 +0000 (05:19 +0900)]
staging/serqt_usb2: Refactor qt_status_change_check() in serqt_usb2.c

Modify qt_status_change_check() and delete qt_status_change().

Signed-off-by: YAMANE Toshiaki <yamanetoshi@gmail.com>
Acked-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11 years agorevert "mm: fix-up zone present pages"
Andrew Morton [Fri, 16 Nov 2012 22:15:06 +0000 (14:15 -0800)]
revert "mm: fix-up zone present pages"

Revert commit 7f1290f2f2a4 ("mm: fix-up zone present pages")

That patch tried to fix a issue when calculating zone->present_pages,
but it caused a regression on 32bit systems with HIGHMEM.  With that
change, reset_zone_present_pages() resets all zone->present_pages to
zero, and fixup_zone_present_pages() is called to recalculate
zone->present_pages when the boot allocator frees core memory pages into
buddy allocator.  Because highmem pages are not freed by bootmem
allocator, all highmem zones' present_pages becomes zero.

Various options for improving the situation are being discussed but for
now, let's return to the 3.6 code.

Cc: Jianguo Wu <wujianguo@huawei.com>
Cc: Jiang Liu <jiang.liu@huawei.com>
Cc: Petr Tesarik <ptesarik@suse.cz>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Mel Gorman <mel@csn.ul.ie>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Minchan Kim <minchan.kim@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: David Rientjes <rientjes@google.com>
Tested-by: Chris Clayton <chris2553@googlemail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agotmpfs: change final i_blocks BUG to WARNING
Hugh Dickins [Fri, 16 Nov 2012 22:15:04 +0000 (14:15 -0800)]
tmpfs: change final i_blocks BUG to WARNING

Under a particular load on one machine, I have hit shmem_evict_inode()'s
BUG_ON(inode->i_blocks), enough times to narrow it down to a particular
race between swapout and eviction.

It comes from the "if (freed > 0)" asymmetry in shmem_recalc_inode(),
and the lack of coherent locking between mapping's nrpages and shmem's
swapped count.  There's a window in shmem_writepage(), between lowering
nrpages in shmem_delete_from_page_cache() and then raising swapped
count, when the freed count appears to be +1 when it should be 0, and
then the asymmetry stops it from being corrected with -1 before hitting
the BUG.

One answer is coherent locking: using tree_lock throughout, without
info->lock; reasonable, but the raw_spin_lock in percpu_counter_add() on
used_blocks makes that messier than expected.  Another answer may be a
further effort to eliminate the weird shmem_recalc_inode() altogether,
but previous attempts at that failed.

So far undecided, but for now change the BUG_ON to WARN_ON: in usual
circumstances it remains a useful consistency check.

Signed-off-by: Hugh Dickins <hughd@google.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agotmpfs: fix shmem_getpage_gfp() VM_BUG_ON
Hugh Dickins [Fri, 16 Nov 2012 22:15:03 +0000 (14:15 -0800)]
tmpfs: fix shmem_getpage_gfp() VM_BUG_ON

Fuzzing with trinity hit the "impossible" VM_BUG_ON(error) (which Fedora
has converted to WARNING) in shmem_getpage_gfp():

  WARNING: at mm/shmem.c:1151 shmem_getpage_gfp+0xa5c/0xa70()
  Pid: 29795, comm: trinity-child4 Not tainted 3.7.0-rc2+ #49
  Call Trace:
    warn_slowpath_common+0x7f/0xc0
    warn_slowpath_null+0x1a/0x20
    shmem_getpage_gfp+0xa5c/0xa70
    shmem_fault+0x4f/0xa0
    __do_fault+0x71/0x5c0
    handle_pte_fault+0x97/0xae0
    handle_mm_fault+0x289/0x350
    __do_page_fault+0x18e/0x530
    do_page_fault+0x2b/0x50
    page_fault+0x28/0x30
    tracesys+0xe1/0xe6

Thanks to Johannes for pointing to truncation: free_swap_and_cache()
only does a trylock on the page, so the page lock we've held since
before confirming swap is not enough to protect against truncation.

What cleanup is needed in this case? Just delete_from_swap_cache(),
which takes care of the memcg uncharge.

Signed-off-by: Hugh Dickins <hughd@google.com>
Reported-by: Dave Jones <davej@redhat.com>
Cc: Johannes Weiner <hannes@cmpxchg.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agomm: highmem: don't treat PKMAP_ADDR(LAST_PKMAP) as a highmem address
Will Deacon [Fri, 16 Nov 2012 22:15:00 +0000 (14:15 -0800)]
mm: highmem: don't treat PKMAP_ADDR(LAST_PKMAP) as a highmem address

kmap_to_page returns the corresponding struct page for a virtual address
of an arbitrary mapping.  This works by checking whether the address
falls in the pkmap region and using the pkmap page tables instead of the
linear mapping if appropriate.

Unfortunately, the bounds checking means that PKMAP_ADDR(LAST_PKMAP) is
incorrectly treated as a highmem address and we can end up walking off
the end of pkmap_page_table and subsequently passing junk to pte_page.

This patch fixes the bound check to stay within the pkmap tables.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Cc: Mel Gorman <mgorman@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agomm: revert "mm: vmscan: scale number of pages reclaimed by reclaim/compaction based...
Mel Gorman [Fri, 16 Nov 2012 22:14:59 +0000 (14:14 -0800)]
mm: revert "mm: vmscan: scale number of pages reclaimed by reclaim/compaction based on failures"

Jiri Slaby reported the following:

(It's an effective revert of "mm: vmscan: scale number of pages
reclaimed by reclaim/compaction based on failures".) Given kswapd
had hours of runtime in ps/top output yesterday in the morning
and after the revert it's now 2 minutes in sum for the last 24h,
I would say, it's gone.

The intention of the patch in question was to compensate for the loss of
lumpy reclaim.  Part of the reason lumpy reclaim worked is because it
aggressively reclaimed pages and this patch was meant to be a sane
compromise.

When compaction fails, it gets deferred and both compaction and
reclaim/compaction is deferred avoid excessive reclaim.  However, since
commit c654345924f7 ("mm: remove __GFP_NO_KSWAPD"), kswapd is woken up
each time and continues reclaiming which was not taken into account when
the patch was developed.

Attempts to address the problem ended up just changing the shape of the
problem instead of fixing it.  The release window gets closer and while
a THP allocation failing is not a major problem, kswapd chewing up a lot
of CPU is.

This patch reverts commit 83fde0f22872 ("mm: vmscan: scale number of
pages reclaimed by reclaim/compaction based on failures") and will be
revisited in the future.

Signed-off-by: Mel Gorman <mgorman@suse.de>
Cc: Zdenek Kabelac <zkabelac@redhat.com>
Tested-by: Valdis Kletnieks <Valdis.Kletnieks@vt.edu>
Cc: Jiri Slaby <jirislaby@gmail.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Johannes Hirte <johannes.hirte@fem.tu-ilmenau.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agorapidio: fix kernel-doc warnings
Randy Dunlap [Fri, 16 Nov 2012 22:14:56 +0000 (14:14 -0800)]
rapidio: fix kernel-doc warnings

Fix rapidio kernel-doc warnings:

  Warning(drivers/rapidio/rio.c:415): No description found for parameter 'local'
  Warning(drivers/rapidio/rio.c:415): Excess function parameter 'lstart' description in 'rio_map_inb_region'
  Warning(include/linux/rio.h:290): No description found for parameter 'switches'
  Warning(include/linux/rio.h:290): No description found for parameter 'destid_table'

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Matt Porter <mporter@kernel.crashing.org>
Acked-by: Alexandre Bounine <alexandre.bounine@idt.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agoswapfile: fix name leak in swapoff
Xiaotian Feng [Fri, 16 Nov 2012 22:14:55 +0000 (14:14 -0800)]
swapfile: fix name leak in swapoff

There's a name leak introduced by commit 91a27b2a7567 ("vfs: define
struct filename and have getname() return it").  Add the missing
putname.

[akpm@linux-foundation.org: cleanup]
Signed-off-by: Xiaotian Feng <dannyfeng@tencent.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>