summaryrefslogtreecommitdiffstats
path: root/drivers/staging
Commit message (Collapse)AuthorAgeFilesLines
* staging: Update e-mail address for Andrea MerelloAndrea Merello2013-08-2748-49/+49
| | | | | | | | | 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>
* staging: dgnc: driver.c and .h: removes dgnc_driver_kzmalloc funcLidza Louina2013-08-272-16/+0
| | | | | | | | | 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>
* staging: dgnc: driver.c and tty.c: replaces dgnc_driver_kzmalloc with kzallocLidza Louina2013-08-272-13/+13
| | | | | | | | | 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>
* staging: dgnc: tty.c: updates uart_struct declaration for sparseLidza Louina2013-08-271-3/+3
| | | | | | | | | | | | | | | | | | 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>
* staging: ozwpan: oz_pd_free() can be staticFengguang Wu2013-08-271-1/+1
| | | | | | 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>
* staging: gdm7240: gdm_driver[] can be staticFengguang Wu2013-08-271-2/+2
| | | | | Signed-off-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: r8188eu: Fix build error with random configurationLarry Finger2013-08-271-1/+1
| | | | | | | | | | | | | | | | | | | | | 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>
* staging: ozwpan: Reset PORT_ENABLE bit.Rupesh Gujare2013-08-271-1/+1
| | | | | | | 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>
* staging: ozwpan: Add debounce time before unregistering.Rupesh Gujare2013-08-271-0/+5
| | | | | | | | | | | | | | | 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>
* staging: comedi: ni_atmio16d: fix atmio16d_dio_insn_config()H Hartley Sweeten2013-08-271-9/+13
| | | | | | | | | | | 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>
* staging: comedi: dmm32at: fix dmm32at_dio_insn_config()H Hartley Sweeten2013-08-271-16/+19
| | | | | | | | | | | 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>
* staging: comedi: dt282x: fix dt282x_dio_insn_config()H Hartley Sweeten2013-08-271-11/+14
| | | | | | | | | | | 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>
* staging: comedi: dt2817: fix dt2817_dio_insn_config()H Hartley Sweeten2013-08-271-16/+14
| | | | | | | | | | | 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>
* staging: vt6656: device.h replace typedef struct _USB_SEND_CONTEXT.Malcolm Priestley2013-08-275-32/+33
| | | | | | | Replace with struct vnt_usb_send_context. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: vt6656: rxtx.c s_vFillTxKey use switch for pTransmitKey->byCipherSuiteMalcolm Priestley2013-08-271-3/+7
| | | | | Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: vt6656: rxtx.c s_vFillTxKey clean up format and white space.Malcolm Priestley2013-08-271-82/+93
| | | | | Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: vt6656: rxtx.c s_vFillRTSHead/s_vFillCTSHead move union ↵Malcolm Priestley2013-08-271-12/+11
| | | | | | | | | | | | | | 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>
* staging: vt6656: rxtx.c merge pvRTS and pvCTS/pCTS void pointersMalcolm Priestley2013-08-271-50/+36
| | | | | | | | | | | | | | | 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>
* staging: vt6656: rxtx.c s_vGenerateTxParameter create argument bool need rtsMalcolm Priestley2013-08-271-14/+11
| | | | | | | | | | | | | | | | | | 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>
* staging: vt6656: s_vFillCTSHead join structures of vnt_cts* to union ↵Malcolm Priestley2013-08-271-5/+5
| | | | | | | | | | | | | | | 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>
* staging: vt6656: rxtx.c s_vFillCTSHead Remove byPktType ifMalcolm Priestley2013-08-271-2/+0
| | | | | | | | 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>
* staging: vt6656: rxtx.c s_vFillRTSHead PK_TYPE_11A allow fall through ↵Malcolm Priestley2013-08-271-6/+3
| | | | | | | | | | | 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>
* staging: vt6656: rxtx.c: s_vFillRTSHead change if/else to switch on byPktypeMalcolm Priestley2013-08-271-3/+7
| | | | | | | Allowing fall through where necessary. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: dgnc: tty.c: edits var in init func for sparseLidza Louina2013-08-261-1/+1
| | | | | | | | | | | | 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>
* staging: dgnc: neo.c: changes param in neo_read_eeprom function for sparseLidza Louina2013-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | 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>
* staging: dgnc: cls.c: changes var in cls_vpd function for sparseLidza Louina2013-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: dgnc: driver.h: changes a struct board_t var's type and marker for ↵Lidza Louina2013-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: dgnc: neo_uart_struct: adds marker and changes vars' types for sparseLidza Louina2013-08-262-22/+22
| | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: dgnc: cls_uart_struct: adds marker and changes vars' types for sparseLidza Louina2013-08-262-9/+9
| | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: usbip: use DEVICE_ATTR_RO/RW for sysfs attributesGreg Kroah-Hartman2013-08-263-10/+11
| | | | | | | 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>
* staging: comedi: comedi_bond: use correct minor device numbers in nameIan Abbott2013-08-261-2/+2
| | | | | | | | | | | | | | 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>
* staging: comedi: comedi_bond: use krealloc() and fix memory leakIan Abbott2013-08-261-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | `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>
* staging: comedi: comedi_bond: handle base channel for insn_bitsIan Abbott2013-08-263-46/+83
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: comedi: comedi_bond: get INSN_CONFIG_DIO_QUERY info from horse's mouthIan Abbott2013-08-263-32/+40
| | | | | | | | | | | | | | | | | 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>
* staging: comedi: comedi_bond: just check devprivs->devs once on detachIan Abbott2013-08-261-2/+2
| | | | | | | | | | | 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>
* staging: comedi: comedi_bond: no need to free dev->private on detachIan Abbott2013-08-261-2/+0
| | | | | | | | | 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>
* staging: comedi: comedi_bond: remove unused subdev_typeIan Abbott2013-08-261-2/+0
| | | | | | | | 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>
* staging: comedi: comedi_bond: don't map channels individuallyIan Abbott2013-08-261-15/+13
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* staging: comedi: comedi_bond: use bitmap to record opened/closed minorsIan Abbott2013-08-261-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | `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>
* staging: comedi: comedi_bond: change return value of bonding_attach()Ian Abbott2013-08-261-1/+1
| | | | | | | | | `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>
* staging: comedi: comedi_bond: return error code in do_dev_config()Ian Abbott2013-08-261-11/+12
| | | | | | | | 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>
* staging: comedi: comedi_bond: no need to initialize file[]Ian Abbott2013-08-261-1/+1
| | | | | | | | | 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>
* staging: comedi: comedi_bond: rename CamelCase identifiersIan Abbott2013-08-261-23/+24
| | | | | Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* staging: comedi: comedi_bond: shorten module descriptionIan Abbott2013-08-261-3/+1
| | | | | | | | 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>
* staging: comedi: comedi_bond: reformat some commentsIan Abbott2013-08-261-68/+73
| | | | | | | | 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>
* staging: dgnc: Kconfig: add dependency PCI for itChen Gang2013-08-261-1/+1
| | | | | | | | | | | | | | 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>
* staging: lustre: Fix typo in lustre/lnetMasanari Iida2013-08-268-15/+15
| | | | | | | 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>
* staging: rtl8192e: Remove pt_regs * irq handler parameternavin patidar2013-08-262-8/+3
| | | | | | | | 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>
* staging: ozwpan: change max. TX frame size supported.Rupesh Gujare2013-08-261-1/+1
| | | | | | | 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>
* staging: ozwpan: Fix error checking while transmitting frame.Rupesh Gujare2013-08-261-4/+4
| | | | | | | | 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>
OpenPOWER on IntegriCloud