firefly-linux-kernel-4.4.55.git
10 years agostaging: dgap: Remove version.h header inclusion in dgap_trace.c
Sachin Kamat [Wed, 28 Aug 2013 05:05:49 +0000 (10:35 +0530)]
staging: dgap: Remove version.h header inclusion in dgap_trace.c

version.h header inclusion is not necessary as detected by
versioncheck.

Cc: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: Remove version.h header inclusion in dgap_sysfs.c
Sachin Kamat [Wed, 28 Aug 2013 05:05:48 +0000 (10:35 +0530)]
staging: dgap: Remove version.h header inclusion in dgap_sysfs.c

version.h header inclusion is not necessary as detected by
versioncheck.

Cc: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: Remove version.h header inclusion in dgap_parse.c
Sachin Kamat [Wed, 28 Aug 2013 05:05:47 +0000 (10:35 +0530)]
staging: dgap: Remove version.h header inclusion in dgap_parse.c

version.h header inclusion is not necessary as detected by
versioncheck.

Cc: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: gdm724x: Remove version.h header inclusion in netlink_k.c
Sachin Kamat [Wed, 28 Aug 2013 05:23:49 +0000 (10:53 +0530)]
staging: gdm724x: Remove version.h header inclusion in netlink_k.c

version.h header inclusion is not necessary as detected by
versioncheck.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: Update e-mail address for Andrea Merello
Andrea Merello [Mon, 26 Aug 2013 11:53:30 +0000 (13:53 +0200)]
staging: Update e-mail address for Andrea Merello

A lot of files contain reference to my old e-mail address.
Now I'm going not to read mail from it anymore, so update it
with my current address everywhere.

Signed-off-by: Andrea Merello <andrea.merello@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: driver.c and .h: removes dgnc_driver_kzmalloc func
Lidza Louina [Wed, 28 Aug 2013 02:13:28 +0000 (22:13 -0400)]
staging: dgnc: driver.c and .h: removes dgnc_driver_kzmalloc func

This patch removes the dgnc_driver_kzmalloc function from
driver.c and driver.h. A previous patch replaced all
dgnc_driver_kzmalloc function calls with kzalloc.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: driver.c and tty.c: replaces dgnc_driver_kzmalloc with kzalloc
Lidza Louina [Wed, 28 Aug 2013 02:13:27 +0000 (22:13 -0400)]
staging: dgnc: driver.c and tty.c: replaces dgnc_driver_kzmalloc with kzalloc

This patch replaces dgnc_driver_kzmalloc with kzalloc.
A patch that follows removes the dgnc_driver_kzmalloc
function.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: tty.c: updates uart_struct declaration for sparse
Lidza Louina [Wed, 28 Aug 2013 02:13:26 +0000 (22:13 -0400)]
staging: dgnc: tty.c: updates uart_struct declaration for sparse

This patch edits the type casts neo_uart_struct and
cls_uart_struct. A previous patch added the marker __iomem
to these structs. This patch ensures that the change to
the marker is consistent. This also removes these
sparse warnings:

warning: incorrect type in assignment (different address spaces)
  expected struct neo_uart_struct [noderef] <asn:2>*ch_neo_uart
  got struct neo_uart_struct *<noident>
warning: incorrect type in assignment (different address spaces)
  expected struct cls_uart_struct [noderef] <asn:2>*ch_cls_uart
  got struct cls_uart_struct *<noident>

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: oz_pd_free() can be static
Fengguang Wu [Wed, 28 Aug 2013 00:36:16 +0000 (17:36 -0700)]
staging: ozwpan: oz_pd_free() can be static

Cc: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: gdm7240: gdm_driver[] can be static
Fengguang Wu [Wed, 28 Aug 2013 00:08:16 +0000 (17:08 -0700)]
staging: gdm7240: gdm_driver[] can be static

Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: r8188eu: Fix build error with random configuration
Larry Finger [Tue, 27 Aug 2013 22:12:36 +0000 (17:12 -0500)]
staging: r8188eu: Fix build error with random configuration

The kbuild test robot reports the following error:

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   e4a745f9519ef2bbb9d75212ae1cca7582d76266
commit: b63c05394f3fe9ae547e1fa9df30f1ba0bcdabb4 [7011/7939] staging: r8188eu: Turn on build of new driver
config: x86_64-randconfig-x0-0828 (attached as .config)

All error/warnings:

   drivers/staging/rtl8188eu/core/rtw_p2p.c: In function 'go_add_group_info_attr':
>> drivers/staging/rtl8188eu/core/rtw_p2p.c:70:11: error: 'struct sta_info' has no member named 'is_p2p_device'
      if (psta->is_p2p_device) {

This and the following errors were caused by an incorrect nesting of
conditional compilation directives.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Reset PORT_ENABLE bit.
Rupesh Gujare [Tue, 27 Aug 2013 15:53:41 +0000 (16:53 +0100)]
staging: ozwpan: Reset PORT_ENABLE bit.

Reset PORT_ENABLE bit of port status on loosing PD.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Add debounce time before unregistering.
Rupesh Gujare [Tue, 27 Aug 2013 15:53:42 +0000 (16:53 +0100)]
staging: ozwpan: Add debounce time before unregistering.

Fixes following error caused during unloading driver.

[ 1127.542888] usb 5-1: USB disconnect, device number 2
[ 1127.542909] ozwpan ozwpan: remove, state 1
[ 1127.542933] usb usb5: USB disconnect, device number 1
[ 1127.618634] hub 5-0:1.0: hub_port_status failed (err = -19)
[ 1127.618647] hub_port_connect_change: 45 callbacks suppressed
[ 1127.618657] hub 5-0:1.0: connect-debounce failed, port 1 disabled
[ 1127.618668] hub 5-0:1.0: cannot disable port 1 (err = -19)

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: ni_atmio16d: fix atmio16d_dio_insn_config()
H Hartley Sweeten [Mon, 26 Aug 2013 22:29:33 +0000 (15:29 -0700)]
staging: comedi: ni_atmio16d: fix atmio16d_dio_insn_config()

This is the (*insn_config) function for a DIO subdevice. It should be
using the data[0] value as the "instruction" to perform on the subdevice.

Use the comedi_dio_insn_config() helper to properly handle instructions.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: dmm32at: fix dmm32at_dio_insn_config()
H Hartley Sweeten [Mon, 26 Aug 2013 22:29:10 +0000 (15:29 -0700)]
staging: comedi: dmm32at: fix dmm32at_dio_insn_config()

This is the (*insn_config) function for a DIO subdevice. It should be
using the data[0] value as the "instruction" to perform on the subdevice.

Use the comedi_dio_insn_config() helper to properly handle instructions.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: dt282x: fix dt282x_dio_insn_config()
H Hartley Sweeten [Mon, 26 Aug 2013 22:28:51 +0000 (15:28 -0700)]
staging: comedi: dt282x: fix dt282x_dio_insn_config()

This is the (*insn_config) function for a DIO subdevice. It should be
using the data[0] value as the "instruction" to perform on the subdevice.

Use the comedi_dio_insn_config() helper to properly handle instructions.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: dt2817: fix dt2817_dio_insn_config()
H Hartley Sweeten [Mon, 26 Aug 2013 22:28:32 +0000 (15:28 -0700)]
staging: comedi: dt2817: fix dt2817_dio_insn_config()

This is the (*insn_config) function for a DIO subdevice. It should be
using the data[0] value as the "instruction" to perform on the subdevice.

Use the comedi_dio_insn_config() helper to properly handle instructions.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: device.h replace typedef struct _USB_SEND_CONTEXT.
Malcolm Priestley [Tue, 27 Aug 2013 11:41:50 +0000 (12:41 +0100)]
staging: vt6656: device.h replace typedef struct _USB_SEND_CONTEXT.

Replace with struct vnt_usb_send_context.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillTxKey use switch for pTransmitKey->byCipherSuite
Malcolm Priestley [Tue, 27 Aug 2013 11:32:01 +0000 (12:32 +0100)]
staging: vt6656: rxtx.c s_vFillTxKey use switch for pTransmitKey->byCipherSuite

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillTxKey clean up format and white space.
Malcolm Priestley [Tue, 27 Aug 2013 11:29:10 +0000 (12:29 +0100)]
staging: vt6656: rxtx.c s_vFillTxKey clean up format and white space.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead/s_vFillCTSHead move union vnt_tx_data_head...
Malcolm Priestley [Tue, 27 Aug 2013 11:07:58 +0000 (12:07 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead/s_vFillCTSHead move union vnt_tx_data_head up one level.

Move
s_vFillRTSHead union vnt_tx_data_head to void *pvRTS argument.
s_vFillCTSHead union vnt_tx_data_head to void *pvCTS argument.

In s_vGenerateTxParameter create union vnt_tx_data_head
pointing to rts_cts;

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c merge pvRTS and pvCTS/pCTS void pointers
Malcolm Priestley [Tue, 27 Aug 2013 11:02:54 +0000 (12:02 +0100)]
staging: vt6656: rxtx.c merge pvRTS and pvCTS/pCTS void pointers

As result of patch
rxtx.c s_vGenerateTxParameter create argument bool need rts

RTS and CTS void pointers can be merged.

Create new pointer rts_cts so that unions in s_vFillCTSHead/s_vFillRTSHead
can be joined.

If rts_cts is NULL neither exist.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vGenerateTxParameter create argument bool need rts
Malcolm Priestley [Tue, 27 Aug 2013 10:56:33 +0000 (11:56 +0100)]
staging: vt6656: rxtx.c s_vGenerateTxParameter create argument bool need rts

Allow conditional statements to be based on true/false instead of
NULL or not pointer pvRTS.

Harmonise all call functions will bool type.

If need_rts is true then rts is needed.

If need_rts is false then
cts is needed only when byPktType == PK_TYPE_11GB || PK_TYPE_11GA.
none no rts/cts other byPktTypes.

This allow the joining of pointers pvRTS/pvCTS in to single pointer.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: s_vFillCTSHead join structures of vnt_cts* to union vnt_tx_data_head
Malcolm Priestley [Tue, 27 Aug 2013 10:48:34 +0000 (11:48 +0100)]
staging: vt6656: s_vFillCTSHead join structures of vnt_cts* to union vnt_tx_data_head

Only one of vnt_rts*/vnt_cts* structures are accessed at any one time.

structures vnt_cts and vnt_cts_fb are members of union vnt_tx_data_head.

Create pointer union head and point structures to the correct member.

Point the union to pvCTS.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillCTSHead Remove byPktType if
Malcolm Priestley [Tue, 27 Aug 2013 10:46:17 +0000 (11:46 +0100)]
staging: vt6656: rxtx.c s_vFillCTSHead Remove byPktType if

s_vFillCTSHead is only called when byPktType == PK_TYPE_11GB ||
byPktType == PK_TYPE_11GA so remove unnecessary if on byPktType.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead PK_TYPE_11A allow fall through AUTO_FB_NONE
Malcolm Priestley [Tue, 27 Aug 2013 08:58:21 +0000 (09:58 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead PK_TYPE_11A allow fall through AUTO_FB_NONE

byFBOption == AUTO_FB_NONE (0) is the same as PK_TYPE_11B

Reverse if condition to break and allow fall through.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c: s_vFillRTSHead change if/else to switch on byPktype
Malcolm Priestley [Tue, 27 Aug 2013 08:56:50 +0000 (09:56 +0100)]
staging: vt6656: rxtx.c: s_vFillRTSHead change if/else to switch on byPktype

Allowing fall through where necessary.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: tty.c: edits var in init func for sparse
Lidza Louina [Mon, 26 Aug 2013 18:04:59 +0000 (14:04 -0400)]
staging: dgnc: tty.c: edits var in init func for sparse

This patch edits the vaddr variable in dgnc_tty_init.
The variable gets set to board_t->re_map_membase. A
previous patch changed the re_map_membase variable's
marker and type. This patch makes sure that the
changes are consistent and that it doesn't cause
sparse warnings.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: neo.c: changes param in neo_read_eeprom function for sparse
Lidza Louina [Mon, 26 Aug 2013 17:56:11 +0000 (13:56 -0400)]
staging: dgnc: neo.c: changes param in neo_read_eeprom function for sparse

This patch adds a marker to neo_read_eeprom function's
base parameter.

It removes these warnings found in neo.c:

warning: incorrect type in argument 1 (different address spaces)
  expected unsigned char *base
  got unsigned char [noderef] [usertype] <asn:2>*re_map_membase
warning: incorrect type in argument 2 (different address spaces)
  expected void volatile [noderef] <asn:2>*addr
  got unsigned char *

These warnings happen because this function gets
called with a board_t->re_map_base variable. A previous
patch added the __iomem marker to this variable. This
patch ensures that the changes are consistent.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: cls.c: changes var in cls_vpd function for sparse
Lidza Louina [Mon, 26 Aug 2013 17:05:49 +0000 (13:05 -0400)]
staging: dgnc: cls.c: changes var in cls_vpd function for sparse

This patch changes cls_vpd function's re_map_vpdbase variable
type and marker.

It removes these warnings found in cls.c:

warning: incorrect type in assignment (different address spaces)
  expected unsigned char [usertype] *re_map_vpdbase
  got void [noderef] <asn:2>*
warning: incorrect type in argument 1 (different address spaces)
  expected void const volatile [noderef] <asn:2>*addr
  got unsigned char [usertype] *
warning: incorrect type in argument 1 (different address spaces)
  expected void volatile [noderef] <asn:2>*addr
  got unsigned char [usertype] *re_map_vpdbase

The variables passed to readb needs to be of type u8
with a __iomem marker. re_map_vpdbase is passed into
readb in the code.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: driver.h: changes a struct board_t var's type and marker for sparse
Lidza Louina [Mon, 26 Aug 2013 16:49:31 +0000 (12:49 -0400)]
staging: dgnc: driver.h: changes a struct board_t var's type and marker for sparse

This patch changes the board_t->re_map_membase variable
type and marker.

It removes these warnings found in the neo.c,
driver.c and cls.c files:

warning: incorrect type in argument 1 (different address spaces)
  expected void const volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>
warning: incorrect type in argument 2 (different address spaces)
  expected void volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>

The variables passed to readb and writeb need to
be of type u8 with a __iomem marker. These warnings
were popping up everytime the readb and writeb
functions were called with a
board_t->re_map_membase variable.

The change made to the driver.h file adds the marker
and changes the variable type.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: neo_uart_struct: adds marker and changes vars' types for sparse
Lidza Louina [Mon, 26 Aug 2013 15:08:02 +0000 (11:08 -0400)]
staging: dgnc: neo_uart_struct: adds marker and changes vars' types for sparse

This patch fixes these warnings found in the neo.c file:

warning: incorrect type in argument 1 (different address spaces)
  expected void const volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>
warning: incorrect type in argument 2 (different address spaces)
  expected void volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>

The variables passed to readb and writeb need to
be of type u8 with a __iomem marker. These warnings
were popping up everytime the readb and writeb
functions were called with a neo_uart_struct variable.

The change made to the driver.h file adds the marker
to the neo_uart_struct and the changes in neo.h
changes the variables' types.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: cls_uart_struct: adds marker and changes vars' types for sparse
Lidza Louina [Mon, 26 Aug 2013 14:53:09 +0000 (10:53 -0400)]
staging: dgnc: cls_uart_struct: adds marker and changes vars' types for sparse

This patch removes these sparse warnings found in the cls.c file:

warning: incorrect type in argument 1 (different address spaces)
  expected void const volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>
warning: incorrect type in argument 2 (different address spaces)
  expected void volatile [noderef] <asn:2>*addr
  got unsigned char volatile *<noident>

The variables passed to readb and writeb need to
be of type u8 with a __iomem marker. These warnings
were popping up everytime the readb and writeb
functions were called with a cls_uart_struct variable.

The change made to the driver.h file adds the marker
to the cls_uart_struct and the changes in cls.h
changes its variables' types.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: usbip: use DEVICE_ATTR_RO/RW for sysfs attributes
Greg Kroah-Hartman [Mon, 26 Aug 2013 19:02:54 +0000 (12:02 -0700)]
staging: usbip: use DEVICE_ATTR_RO/RW for sysfs attributes

It's easier to audit the sysfs files if they use the RO/RW macros, so
convert the usbip code to them.

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: use correct minor device numbers in name
Ian Abbott [Fri, 23 Aug 2013 13:45:10 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: use correct minor device numbers in name

The board name for "comedi_bond" is constructed from a space-separated
list of items of the form "minor:subdevice" where "minor" is a minor
device number and "subdevice" is a subdevice number.  Currently, all the
"minor" device numbers are for the "comedi_bond" device itself and the
"subdevice" numbers are for the bonded devices.  It makes makes more
sense for the "minor" device numbers to come from the bonded devices as
well so that the string is a list of bonded "minor:subdevice" pairs.
Fix it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: use krealloc() and fix memory leak
Ian Abbott [Fri, 23 Aug 2013 13:45:09 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: use krealloc() and fix memory leak

`do_dev_config()` is called from the comedi 'attach' handler,
`bonding_attach()`.  The device private data structure contains a
dynamically allocated array of pointers to "bonded" device structures
which grows during the `do_dev_config()` call.  The length of this array
is in `devpriv->ndevs`.  It currently uses a local function `realloc()`
to allocate a new array, copy the old contents over and free the old
array.  It should be more efficient to use `krealloc()` as it may be
able to use slack space at the end of the previous array and avoid a
copy.

The old `realloc()` function always freed the old buffer which meant
that if it failed to allocate the new buffer it would lose the contents
of the old buffer.  Unfortunately, that contained pointers to more
dynamically allocated memory, leading to a memory leak.  If `krealloc()`
fails, keep the old buffer and avoid the memory leak.  The
aforementioned pointers to more dynamically allocated memory will be
cleaned up by the 'detach' handler, `bonding_detach()` which will be
called by the comedi core as a consequence of `krealloc()` failing in
`do_dev_config()`.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: handle base channel for insn_bits
Ian Abbott [Fri, 23 Aug 2013 13:45:08 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: handle base channel for insn_bits

If a DIO subdevice has more than 32 channels, its 'insn_bits' handler is
supposed to take account of the base channel from
`CR_CHAN(insn->chanspec)`.  (The comedi core will adjust the base
channel to 0 and shift the mask and data to compensate if the subdevice
has less than or equal to 32 channels.)  The "comedi_bond" driver
currently ignores the base channel and assumes it is 0.

Replace `comedi_dio_bitfield()` in the "kcomedilib" module with
`comedi_dio_bitfield2()` that takes account of the base channel, and
rewrite the "comedi_bond" driver's 'insn_bits' handler
(`bonding_dio_insn_bits()`) to take account of the base channel and use
the new function.

No other modules use `comedi_dio_bitfield()` so it is safe to replace it
with `comedi_dio_bitfield2()`.  The name follows that of the equivalent
function in the user-space comedilib.  If the base channel is non-zero
and the subdevice has less than or equal to 32 channels it needs to
adjust things in the same way as the comedi core (same as `parse_insn()`
in "comedi_fops.c") due to most drivers ignoring the base channel.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: get INSN_CONFIG_DIO_QUERY info from horse's mouth
Ian Abbott [Fri, 23 Aug 2013 13:45:07 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: get INSN_CONFIG_DIO_QUERY info from horse's mouth

The DIO subdevice of the "comedi_bond" device attempts to remember the
directions of DIO channels itself in the `io_bits` member of the
subdevice, but that is only large enough for the first 32 channels and
it might not be accurate anyway as changing the direction of one channel
may have affected a whole group of channels and we have no idea of the
initial directions before the "bonded" device was linked to the the
"comedi_bond" device.  It would be better to ask the bonded device for
this information when handling a `INSN_CONFIG_DIO_QUERY` configuration
instruction.  Add new function `comedi_dio_get_config()` to the
"kcomedilib" module to allow us to get the DIO direction of a channel
and use it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: just check devprivs->devs once on detach
Ian Abbott [Fri, 23 Aug 2013 13:45:06 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: just check devprivs->devs once on detach

The `while` loop in `bonding_detach()` doesn't need to check
`devpriv->devs` each time round the loop.  Move the test outside the
loop.  The enclosing `if (devpriv)` can be changed to `if (devpriv &&
devpriv->devs)` as everything in this `if` statement is associated with
`devpriv->devs` anyway.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: no need to free dev->private on detach
Ian Abbott [Fri, 23 Aug 2013 13:45:05 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: no need to free dev->private on detach

The comedi core will free `dev->private` if it is non-NULL after calling
the "detach" handler (`bonding_detach()`), so don't bother freeing it in
`bonding_detach()`.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: remove unused subdev_type
Ian Abbott [Fri, 23 Aug 2013 13:45:04 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: remove unused subdev_type

The `subdev_type` member of `struct bonded_device` is set but not used.
Remove it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: don't map channels individually
Ian Abbott [Fri, 23 Aug 2013 13:45:03 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: don't map channels individually

The private data structure (`struct comedi_bond_private`) for the
overall "comedi_bond" device maps each channel individually to a pointer
to the `struct bonded_device` it belongs to via array member
`chan_id_dev_map[MAX_CHANS]`. This speeds up look-ups from channel
number to bonded device a bit, but the length of the array used to look
this up is currently fixed at `MAX_CHANS` (256) and there are no
overflow checks when filling the array.

In practice, there will only be a few bonded devices (actually bonded
subdevices) and it is practical to just skip through the list until we
reach the one containing the desired channel.

The only place where the bonded device is looked up from the channel
number is in `bonding_dio_insn_config()`.  Change it to do the look-up
by skipping through the list of bonded devices and remove the
`chan_id_dev_map[]` member.  The `chanid_offset` member of `struct
bonded_device` is also no longer needed as the value can be derived
while skipping through the list of bonded devices, so remove that member
as well.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: use bitmap to record opened/closed minors
Ian Abbott [Fri, 23 Aug 2013 13:45:02 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: use bitmap to record opened/closed minors

`do_dev_config()` currently records the comedi minor devices it has
opened by setting `devs_opened[minor]` to the pointer returned by
`comedi_open()`.  This is checked to avoid opening the same minor device
twice.  The pointer values in `devs_opened[]` aren't needed; we only
need to record which minor device numbers are being used.  Change
`devs_opened` to a bitmap (declared with `DECLARE_BITMAP()`) of length
`COMEDI_NUM_BOARD_MINORS` as the minor device numbers are range-checked
to fit in a bitmap of this length.  Use `test_and_set_bit()` to record
the minor device numbers we attempt to open with `comedi_open()`.

`bonding_detach()` calls `comedi_close()` to close the comedi minor
devices.  Since the minor device numbers may be repeated in its list of
bonded subdevices, it currently uses a simple `unsigned long
devs_closed` variable as a bitmap to keep track of which minor device
numbers it has already closed to avoid closing them twice.  As a single
`unsigned long` consists of less than `COMEDI_NUM_BOARD_MINORS` bits on
a 32-bit machine, change `devs_closed to a bitmap of this length using
`DECLARE_BITMAP()` and use `test_and_set_bit()` to avoid calling
`comedi_close()` more than once for each minor device number in use.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: change return value of bonding_attach()
Ian Abbott [Fri, 23 Aug 2013 13:45:01 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: change return value of bonding_attach()

`bonding_attach()` is the comedi "attach" handler for the driver.  Any
non-negative return value is treated as successful, but 0 is the
preferred return value on success.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: return error code in do_dev_config()
Ian Abbott [Fri, 23 Aug 2013 13:45:00 +0000 (14:45 +0100)]
staging: comedi: comedi_bond: return error code in do_dev_config()

Change `do_dev_config()` to return an error code on failure and 0 on
success, instead of 0 on failure and 1 on success.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: no need to initialize file[]
Ian Abbott [Fri, 23 Aug 2013 13:44:59 +0000 (14:44 +0100)]
staging: comedi: comedi_bond: no need to initialize file[]

The `char file[]` variable in `do_dev_config()` doesn't need to be
initialized as it gets overwritten with a `snprintf()`.  It just needs
to be long enough.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: rename CamelCase identifiers
Ian Abbott [Fri, 23 Aug 2013 13:44:58 +0000 (14:44 +0100)]
staging: comedi: comedi_bond: rename CamelCase identifiers

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: shorten module description
Ian Abbott [Fri, 23 Aug 2013 13:44:57 +0000 (14:44 +0100)]
staging: comedi: comedi_bond: shorten module description

Omit the fanciful prose from the MODULE_DESCRIPTION() line and combine
concantenated string literals.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: comedi: comedi_bond: reformat some comments
Ian Abbott [Fri, 23 Aug 2013 13:44:56 +0000 (14:44 +0100)]
staging: comedi: comedi_bond: reformat some comments

Reformat some comments according to CodingStyle and remove some comments
inherited from the comedi 'skel' example driver.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: Kconfig: add dependency PCI for it
Chen Gang [Mon, 26 Aug 2013 03:55:50 +0000 (11:55 +0800)]
staging: dgnc: Kconfig: add dependency PCI for it

DGNC is based on PCI, so need add related dependency, or when compiled
with PCI disabled, it will be fail.

The related error (randconfig for PCI disabled under s390):

  drivers/staging/dgnc/dgnc_cls.c:1394:2: error: implicit declaration of function ‘ioremap’ [-Werror=implicit-function-declaration]
  drivers/staging/dgnc/dgnc_cls.c:1407:3: error: implicit declaration of function ‘iounmap’ [-Werror=implicit-function-declaration]

Cc: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: lustre: Fix typo in lustre/lnet
Masanari Iida [Sun, 25 Aug 2013 01:10:14 +0000 (10:10 +0900)]
staging: lustre: Fix typo in lustre/lnet

Correct spelling typo in comments and debug messages.

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8192e: Remove pt_regs * irq handler parameter
navin patidar [Mon, 26 Aug 2013 02:55:50 +0000 (08:25 +0530)]
staging: rtl8192e: Remove pt_regs * irq handler parameter

struct pt_regs pointer is no longer passed as a irq handler
argument. and also remove unnecessary macros.

Signed-off-by: navin patidar <navinp@cdac.in>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: change max. TX frame size supported.
Rupesh Gujare [Fri, 23 Aug 2013 17:33:33 +0000 (18:33 +0100)]
staging: ozwpan: change max. TX frame size supported.

Max. TX frame size supported is changed to 760 bytes.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Fix error checking while transmitting frame.
Rupesh Gujare [Fri, 23 Aug 2013 17:33:32 +0000 (18:33 +0100)]
staging: ozwpan: Fix error checking while transmitting frame.

Make sure that we return negative value if oz_build_frame()
returns NULL.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: change variable type.
Rupesh Gujare [Fri, 23 Aug 2013 17:33:31 +0000 (18:33 +0100)]
staging: ozwpan: change variable type.

We have icreased interrupt end point buffer size to 512 bytes,
Change variable data type to accomodate it.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Increase interrupt end point buffer size
Rupesh Gujare [Fri, 23 Aug 2013 17:33:30 +0000 (18:33 +0100)]
staging: ozwpan: Increase interrupt end point buffer size

Increase interrupt end point buffer size & convert hard coded
value to macro for better readability.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Convert hard coded value to Macro
Rupesh Gujare [Fri, 23 Aug 2013 17:33:29 +0000 (18:33 +0100)]
staging: ozwpan: Convert hard coded value to Macro

Use macro instead of hard coded value for readability.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Check for correct config number.
Rupesh Gujare [Fri, 23 Aug 2013 17:33:28 +0000 (18:33 +0100)]
staging: ozwpan: Check for correct config number.

Check for valid config number before completing set interface.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rxtx.c s_vFillRTSHead white space and formating clean up
Malcolm Priestley [Mon, 26 Aug 2013 10:21:11 +0000 (11:21 +0100)]
staging: rxtx.c s_vFillRTSHead white space and formating clean up

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx s_vFillRTSHead create union of vnt_rts*/vnt_cts* structures.
Malcolm Priestley [Mon, 26 Aug 2013 10:17:52 +0000 (11:17 +0100)]
staging: vt6656: rxtx s_vFillRTSHead create union of vnt_rts*/vnt_cts* structures.

Only one of vnt_rts*/vnt_cts* structures are accessed at any one time.

Join these structures in to a single union.

These will eventually form the tail structure of vnt_tx_buffer and
include structures vnt_tx_datahead*

Structures in s_vFillCTSHead will join in next patch series.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_a_fb to new function.
Malcolm Priestley [Mon, 26 Aug 2013 10:12:00 +0000 (11:12 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_a_fb to new function.

Parse out vnt_rts_a_fb code to new function vnt_rxtx_rts_a_fb_head.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_ab to new function.
Malcolm Priestley [Mon, 26 Aug 2013 10:09:38 +0000 (11:09 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_ab to new function.

Parse out vnt_rts_ab code to new function vnt_rxtx_rts_ab_head.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_g_fb to new function.
Malcolm Priestley [Mon, 26 Aug 2013 10:07:46 +0000 (11:07 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_g_fb to new function.

Parse out vnt_rts_g_fb code to new function vnt_rxtx_rts_g_fb_head.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_g to new functions.
Malcolm Priestley [Mon, 26 Aug 2013 10:04:50 +0000 (11:04 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead Parse out struct vnt_rts_g to new functions.

Parse out vnt_rts_g code to new function vnt_rxtx_rts_g_head.

Also create a new common calling function vnt_fill_ieee80211_rts
to fill the ieee80211_rts structure.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: s_vGenerateTxParameter pvRrvTime should never be NULL
Malcolm Priestley [Sat, 24 Aug 2013 12:15:32 +0000 (13:15 +0100)]
staging: vt6656: s_vGenerateTxParameter pvRrvTime should never be NULL

If pvRrvTime is NULL the whole structure is NULL, so
remove if statements and consolidate to single return.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: s_vGenerateTxParameter dead code bDisCRC
Malcolm Priestley [Sat, 24 Aug 2013 12:01:48 +0000 (13:01 +0100)]
staging: vt6656: s_vGenerateTxParameter dead code bDisCRC

As result of patch
vt6656: rxtx.c s_vFillCTSHead remove dead code bDisCRC

bDisCRC is unused.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillCTSHead remove dead code bDisCRC
Malcolm Priestley [Sat, 24 Aug 2013 11:56:11 +0000 (12:56 +0100)]
staging: vt6656: rxtx.c s_vFillCTSHead remove dead code bDisCRC

As result of patch
vt6656: device.h Remove dead code bSoftwareGenCrcErr.

dDiscCRC is unused.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillRTSHead remove dead bDiscCRC
Malcolm Priestley [Sat, 24 Aug 2013 11:50:50 +0000 (12:50 +0100)]
staging: vt6656: rxtx.c s_vFillRTSHead remove dead bDiscCRC

As result of patch
vt6656: device.h Remove dead code bSoftwareGenCrcErr.

dDiscCRC is unused.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: device.h Remove dead code bSoftwareGenCrcErr.
Malcolm Priestley [Sat, 24 Aug 2013 11:42:01 +0000 (12:42 +0100)]
staging: vt6656: device.h Remove dead code bSoftwareGenCrcErr.

Probably an error in earlier firmware is never enabled so remove.

bPacketToWirelessUsb remove dead if/else and variables.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: r8188eu: Fix build errors for allyesconfig
Larry Finger [Sun, 25 Aug 2013 16:55:15 +0000 (11:55 -0500)]
staging: r8188eu: Fix build errors for allyesconfig

This driver has some global names that are the same as found in
driver r8712. Fix the allyesconfig build errors by changing the
names of those routines.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: gdm724x: Remove tests of KERNELVERSION
Larry Finger [Sun, 25 Aug 2013 16:49:37 +0000 (11:49 -0500)]
staging: gdm724x: Remove tests of KERNELVERSION

Kernel code need not test for KERNELVERSION. Besides being unnecessary
for an in-kernel driver, these lines will cause a build failure for any
source tree with a stale include/linux/version.h.

This patch is only compile tested.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: line6: use default sysfs attribute macros
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:36:49 +0000 (10:36 -0700)]
staging: line6: use default sysfs attribute macros

Move to use the DEVICE_ATTR_RW/RO macros, making it easier to audit the
sysfs file permissions, and get rid of the "empty" callback for
read-only files, saving lines of code.

Cc: Stefan Hajnoczi <stefanha@gmail.com>
Cc: Laurent Navet <laurent.navet@gmail.com>
Cc: Johannes Thumshirn <morbidrsa@googlemail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: quickstart: fix up sysfs file permissions
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:34:53 +0000 (10:34 -0700)]
staging: quickstart: fix up sysfs file permissions

Use the default DEVICE_ATTR_RO/RW macros to specify the file permissions
better, and make them easier to audit.

And did we really want any user to be able to write to this file, I kind
of doubt it...

Cc: Jiang Liu <jiang.liu@huawei.com>
Cc: Toshi Kani <toshi.kani@hp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: keucr: be explicit to the sysfs file permissions
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:33:07 +0000 (10:33 -0700)]
staging: keucr: be explicit to the sysfs file permissions

Use the DEVICE_ATTR_RW() macro to be clearer as to the permissions for
the sysfs file, making it easier to audit the code.

Cc: Al Cho <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: frontier: use better DEVICE_ATTR_ macros
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:30:28 +0000 (10:30 -0700)]
staging: frontier: use better DEVICE_ATTR_ macros

Use the DEVICE_ATTR_RO/RW macros to better describe the permissions on
the file, and make them easier to audit.

Cc: David Täht <d@teklibre.com>
Cc: Sara Bird <sara.bird.iar@gmail.com>
Cc: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: android: timed_output: fix sysfs file creation race
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:27:29 +0000 (10:27 -0700)]
staging: android: timed_output: fix sysfs file creation race

The sysfs file for the driver was being created _after_ the device was
announced to userspace, causing a race with any tools looking for sysfs
files.

Fix the race by using the default attribute group for the class.

Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: wlags49_h2: remove sysfs file
Greg Kroah-Hartman [Sat, 24 Aug 2013 17:24:40 +0000 (10:24 -0700)]
staging: wlags49_h2: remove sysfs file

The sysfs file in this driver is showing a raft of debugging values,
none of which belong in sysfs, let alone in a single sysfs file.  If
these really need to be described somewhere, they should go into
debugfs.

For now, just delete the sysfs file, which removes a bunch of files from
the tree.

Cc: Henk de Groot <pe1dnn@amsat.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: lustre: Use proper constant types for L*_POISON values
Geert Uytterhoeven [Fri, 23 Aug 2013 15:46:48 +0000 (17:46 +0200)]
staging: lustre: Use proper constant types for L*_POISON values

On 32-bit m68k, I get lots of warnings like:

    warning: integer constant is too large for ‘long’ type

Switch the L*_POISON definitions from too-large constants and casts
to the proper constant types to fix this.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Fix Documentation style.
Rupesh Gujare [Fri, 23 Aug 2013 15:11:02 +0000 (16:11 +0100)]
staging: ozwpan: Fix Documentation style.

This patch fixes Kernel Documentation style.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Fix wrong error check.
Rupesh Gujare [Fri, 23 Aug 2013 15:11:01 +0000 (16:11 +0100)]
staging: ozwpan: Fix wrong error check.

schedule_work() returns true if succeeded & false on failure,
error check was doing exactly reverse.
Also removes extra variable.

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: ozwpan: Remove memset
Rupesh Gujare [Fri, 23 Aug 2013 15:11:00 +0000 (16:11 +0100)]
staging: ozwpan: Remove memset

As we are initialising structure, we do not require
memset().

Signed-off-by: Rupesh Gujare <rupesh.gujare@atmel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_vFillTxKey fill structure vnt_mic_hdr
Malcolm Priestley [Fri, 23 Aug 2013 13:37:48 +0000 (14:37 +0100)]
staging: vt6656: rxtx.c s_vFillTxKey fill structure vnt_mic_hdr

Replace the pointer offsets with structure of mic_hdr with
endian conversion where needed.

Replace vFillTxKey argument u8 *pMICHDR with struct vnt_mic_hdr *mic_hdr
and fix type of calling functions.

An extra check that mic_hdr is not NULL

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: desc.h Remove typedef struct tagSMICHDRHead to new structure in...
Malcolm Priestley [Fri, 23 Aug 2013 13:33:55 +0000 (14:33 +0100)]
staging: vt6656: desc.h Remove typedef struct tagSMICHDRHead to new structure in rxtx.h

To new structure.
typedef struct tagSMICHDRHead -> struct vnt_mic_hdr

This is only needed by rxtc.c so moved to rxtx.h

The new structure is the same size as the old but
contains the members as pointer referenced in
rxtx.c s_vFillTxKey
u8 id
*pMICHDR = 0x59;
u8 tx_priority;
*((u8 *)(pMICHDR+1)) = 0; // TxPriority
u8 mic_addr2[6];
memcpy(pMICHDR+2, &(pMACHeader->addr2[0]), 6);
__be32 tsc_47_16;
pMICHDR+8 = HIBYTE(HIWORD(pTransmitKey->dwTSC47_16));
pMICHDR+9 = LOBYTE(HIWORD(pTransmitKey->dwTSC47_16));
pMICHDR+10 = HIBYTE(LOWORD(pTransmitKey->dwTSC47_16));
pMICHDR+11 = LOBYTE(LOWORD(pTransmitKey->dwTSC47_16));
__be16 tsc_15_0;
pMICHDR+12 = HIBYTE(pTransmitKey->wTSC15_0);
pMICHDR+13 = LOBYTE(pTransmitKey->wTSC15_0);
__be16 payload_len;
pMICHDR+14 = HIBYTE(wPayloadLen);
pMICHDR+15 = LOBYTE(wPayloadLen);
__be16 hlen;
pMICHDR+16 = 0; // HLEN[15:8]
pMICHDR+17 = 28; // HLEN[7:0]
__le16 frame_control;
memcpy(pMICHDR+18, (u8 *)&wValue, 2); // MSKFRACTL
u8 addr1[6];
memcpy(pMICHDR+20, &(pMACHeader->addr1[0]), 6);
u8 addr2[6];
memcpy(pMICHDR+26, &(pMACHeader->addr2[0]), 6);
u8 addr3[6];
memcpy(pMICHDR+32, &(pMACHeader->addr3[0]), 6);
__le16 seq_ctrl;
memcpy(pMICHDR+38, (u8 *)&wValue, 2); // MSKSEQCTL
u8 addr4[6];
memcpy(pMICHDR+40, &(pMACHeader->addr4[0]), 6);
u16 packing; /* packing to 48 bytes */

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c endian correct wTimeStampOff
Malcolm Priestley [Fri, 23 Aug 2013 10:48:46 +0000 (11:48 +0100)]
staging: vt6656: rxtx.c endian correct wTimeStampOff

wTimeStampOff needs to be endian corrected

Create new function vnt_time_stamp_off to return little endian u16 value.

Private variable byPreambleType is common to all calling functions is included.

variable rate to set the desired rate.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: rxtx.c s_create new function to endian correct uGetTxRsvTime.
Malcolm Priestley [Fri, 23 Aug 2013 10:32:26 +0000 (11:32 +0100)]
staging: vt6656: rxtx.c s_create new function to endian correct uGetTxRsvTime.

We can't endian correct uGetTxRsvTime because it is called by other functions.

Create new function to vnt_rxtx_rsvtime_le16 to return little endian u16
value.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: vt6656: s_uGetRTSCTSRsvTime return u16 endian corrected value.
Malcolm Priestley [Thu, 22 Aug 2013 20:03:40 +0000 (21:03 +0100)]
staging: vt6656: s_uGetRTSCTSRsvTime return u16 endian corrected value.

s_uGetRTSCTSRsvTime always needs to be corrected to u16 endian value.

Change function to return u16 endian corrected value.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: gdm724x: Fix typo in comments
Masanari Iida [Fri, 23 Aug 2013 13:43:39 +0000 (22:43 +0900)]
staging: gdm724x: Fix typo in comments

Correct spelling typo in comments within staging/gdm724x

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: bcm: Fix typo in comments
Masanari Iida [Fri, 23 Aug 2013 13:55:31 +0000 (22:55 +0900)]
staging: bcm: Fix typo in comments

Correct spelling typo in staging/bcm

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: rtl8187se: Remove pt_regs * irq handler parameter
navin patidar [Fri, 23 Aug 2013 12:54:02 +0000 (18:24 +0530)]
staging: rtl8187se: Remove pt_regs * irq handler parameter

struct pt_regs pointer is no longer passed as a irq handler
argument.

v2:
remove rtl8180_interrupt cast to (void *) .

Signed-off-by: navin patidar <navinp@cdac.in>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: usbip: fix up alignment in long options list
Anthony Foiani [Fri, 23 Aug 2013 04:06:42 +0000 (22:06 -0600)]
staging: usbip: fix up alignment in long options list

Re-align the option lists.

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: usbip: properly handle "-l" / "--log" option
Anthony Foiani [Fri, 23 Aug 2013 04:06:41 +0000 (22:06 -0600)]
staging: usbip: properly handle "-l" / "--log" option

This option is in the long options list, and it's handled in the
option processing loop, but the optstring didn't include it.

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: usbip: set usbipd server port via "-t" / "--tcp-port" option.
Anthony Foiani [Fri, 23 Aug 2013 04:06:40 +0000 (22:06 -0600)]
staging: usbip: set usbipd server port via "-t" / "--tcp-port" option.

Add an option "-t" / "--tcp-port" to specify the TCP port to listen
on.  Downcase associated variables as they're no longer constants.

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: usbip: add "-P" / "--pid" option to save usbipd process id
Anthony Foiani [Fri, 23 Aug 2013 04:06:39 +0000 (22:06 -0600)]
staging: usbip: add "-P" / "--pid" option to save usbipd process id

Introduce option "-P" / "--pid" to request that usbipd save its PID to
a file while running.

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes proc.h
Lidza Louina [Fri, 23 Aug 2013 02:17:12 +0000 (22:17 -0400)]
staging: dgap: removes proc.h

This patch removes the proc.h file and removes '#include
dgap_proc.h' from headers in the driver.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes proc.c
Lidza Louina [Fri, 23 Aug 2013 02:17:11 +0000 (22:17 -0400)]
staging: dgap: removes proc.c

This patch removes proc.c. This code isn't needed anymore because
a previous patch removed references to it and because the kernel
uses sysfs instead of proc.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes references to proc code
Lidza Louina [Fri, 23 Aug 2013 02:17:10 +0000 (22:17 -0400)]
staging: dgap: removes references to proc code

This patch removes references to proc functions and
structs in the code. The kernel uses sysfs instead
of proc now.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes mgmt.h
Lidza Louina [Fri, 23 Aug 2013 01:35:19 +0000 (21:35 -0400)]
staging: dgap: removes mgmt.h

This patch removes mgmt.h and the headers that include
it of files in dgap. This file isn't needed for the
driver to work with the kernel.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes mgmt.c
Lidza Louina [Fri, 23 Aug 2013 01:35:18 +0000 (21:35 -0400)]
staging: dgap: removes mgmt.c

This patch removes mgmt.c. This file isn't needed for the
driver to work with the kernel.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgap: removes references to mgmt code
Lidza Louina [Fri, 23 Aug 2013 01:35:17 +0000 (21:35 -0400)]
staging: dgap: removes references to mgmt code

This patch removes references to mgmt functions from
the code. The files mgmt.c and mgmt.h will be
removed in the patches that follow.

Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
10 years agostaging: dgnc: driver.c: removes dgnc_mbuf function
Lidza Louina [Thu, 22 Aug 2013 18:54:15 +0000 (14:54 -0400)]
staging: dgnc: driver.c: removes dgnc_mbuf function

This patch removes the dgnc_mbuf function. This function was causing the
errors:

drivers/staging/dgnc/dgnc_driver.c: In function 'dgnc_mbuf.constprop.0':
drivers/staging/dgnc/dgnc_driver.c:945:1: warning: the frame size of 1032
bytes is larger than 1024 bytes [-Wframe-larger-than=]

drivers/staging/dgnc/dgnc_tty.c: In function 'dgnc_sniff_nowait_nolock':
drivers/staging/dgnc/dgnc_tty.c:614:1: warning: the frame size of 1056
bytes is larger than 1024 bytes [-Wframe-larger-than=]

This patch removes it so the kernel won't be making noise when its
device is found on the system.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Lidza Louina <lidza.louina@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>