Commit graph

560,913 commits

Author SHA1 Message Date
Julia Lawall
a4c1f0c2a9 usb: host: drop null test before destroy functions
Remove unneeded NULL test.

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
expression x;
@@

-if (x != NULL)
  \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);

@@
expression x;
@@

-if (x != NULL) {
  \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
  x = NULL;
-}
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:38:33 +01:00
Mathias Nyman
395f5409ca xhci: support new USB 3.1 hub request to get extended port status
USB 3.1 adds different types of Get Port Status request.
The Get Extended Port Status request returns 4 additional bytes
after the normal portstatus and portchange words containing
link speed and lane information about a connected enhanced super
speed device

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
b50107bb83 xhci: check xhci hardware for USB 3.1 support
Set the controller speed to HCD_USB31 to if host hardware supports USB 3.1

For PCI xhci controllers the USB 3.1 support is checked from SBRN bits in
pci config space. Platform controllers will need to set xhci->sbrn == 0x31
to indicate USB 3.1 support before calling xhci_gen_setup().

Also make sure xhci driver works correctly with speed set to HCD_USB31

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
7117522520 usb: define HCD_USB31 speed option for hosts that support USB 3.1 features
Hosts that support USB 3.1 Enhaned SuperSpeed can set their speed to
HCD_USB31 to let usb core and host drivers know that the controller
supports new USB 3.1 features.

make sure usb core handle HCD_USB31 hosts correctly, for now similar
to HCD_USB3.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
2338b9e47f xhci: define the new default speed ID for SuperSpeedPlus used by xhci hw
USB 3.1 capable xhci controllers use a new default speed ID "5" in the
PORTSC register to represent a 10Gbps connection speed of a SuperSpeedPlus
device

Make sure the xhci driver can handle the returned SuperSpeedPlus speed ID
properly

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
5693e0b77f xhci: Add a SuperSpeedPlus capability descriptor for xhci USB 3.1 roothub
All usb devices that support USB 3.1 Gen2 speeds need to provide a
SuperSpeedPlus device capability descriptor as part of their BOS
descriptor.

If the xhci controller supports USB 3.1 enhanced SuperSpeed, meaning
it can handle both Gen1 SuperSpeed 5Gbps and Gen2 SuperSpeedPlus 10Gbps
devices, then we need to provide a SuperSpeedPlus capability descriptor
for the USB 3.1 roothub as well.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
47189098f8 xhci: parse xhci protocol speed ID list for usb 3.1 usage
xhci 1.1 controllers that support USB 3.1 must provide a protocol speed ID
(PSI) list to inform the driver of the supported speeds.

The PSI list can be read from the xhci supported protocol extended
capabilities.
The PSI values will be used to create a USB 3.1 SuperSpeedPlus capability
descriptor for the xhci USB 3.1 roothub.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
3220befddc usb: store the new usb 3.1 SuperSpeedPlus device capability descriptor
If a device supports usb 3.1 SupeerSpeedPlus Gen2 speeds it povides
a SuperSpeedPlus device capability descriptor as a part of its
BOS descriptor. If we find one while parsing the BOS then save it
togeter with the other device capabilities found in the BOS

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Mathias Nyman
90ec924780 usb: Add USB 3.1 SuperSpeedPlus device capability descriptor
USB 3.1 SuperSpeedPlus device capability descriptor is returned as part
of the bos descriptor for devices that support SuperSpeedPlus protocol.

The descriptor contains more detailed information about the supported
speeds of the device. More details about the descriptor can be found in
the USB 3.1 specification section 9.6.2.5

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
Lu Baolu
04abb6de28 xhci: Read and parse new xhci 1.1 capability register
xhci 1.1 capable controllers have a new HCCPARAMS2 registers
with bits indicating support for new xhci 1.1 capabilities.

Also add support for the new xhci 1.1 bits in the config operational
opertational register that used to be reserved

Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
[modified and left out parts not related to HCCPARAMS2 -Mathias]
Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:34:17 +01:00
H Hartley Sweeten
54a5e02abb staging: comedi: 8255: prefer using the BIT macro
Fix the checkpatch.pl issues.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 10:07:15 +01:00
Shraddha Barke
fa9df8e31a Staging: lustre: obdclass: obd_mount: Declare as static
Declare lustre_fs_type, do_lcfg, lustre_fill_super, lustre_put_lsi,
lustre_init_lsi, lustre_start_simple, server_name2index and
server_name2fsname as static since they are used only in this
particular file.Also remove corresponding declarations from header
files.

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
28fcc6626f Staging: lustre: obdclass: class_obd: Declare as static
Declare obd_init_checks as static since it is used only in this
particular file.

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
63e9a7485d Staging: lustre: obdclass: genops: Declare as static
Declare obd_export_nid2str and obd_zombie_impexp_cull as static
since they are used only in this particular file. Also remove the
corresponding declarations from header file

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
12d0be620f Staging: lustre: ptlrpc: niobuf: Declare as static
Declare ptlrpc_register_bulk as static since it is used only in this
particular file.Also remove the declaration from header file

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
98e0a28818 Staging: lustre: ptlrpc: layout: Declare as static
Declare req_capsule_init_area and req_capsule_field_present as static
since they are used only in this particular file. Also remove the
corresponding declarations from header files.

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
4ed50b0316 Staging: lustre: ptlrpc: pinger: Declare as static
Declare ptlrpc_pinger_remove_timeouts as static since it is used
only in this particular file.

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
e4ec6d23df Staging: lustre: ptlrpc: events: Declare as static
Declare ptl_get_pid as static since it is used only in this particular
file. Also remove declaration from corresponding header file

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Shraddha Barke
53856b2320 Staging: lustre: ptlrpc: nrs: Declare as static
Declare ptlrpc_nrs_policy_register as static since it is used
only in this particular file. Also remove corresponding declaration
from header files.

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:59:35 +01:00
Itai Katz
757e0cb5f1 staging: fsl-mc: remove references to dev_root
The dev_root field in the bus type struct has been replaced by a
new mechanism to identify the root dprc.  Remove all references
to dev_root.

Signed-off-by: Itai Katz <itai.katz@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:55:45 +01:00
Itai Katz
565b94506f staging: fsl-mc: add counter to track number of root DPRCs
Add a counter to track the number of root DPRCs.
When this counter is greater then 0 it means that at least
one root DPRC device exists.

Signed-off-by: Itai Katz <itai.katz@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:55:45 +01:00
Itai Katz
e4ea40f98d staging: fsl-mc: add function to return pointer to root dprc
To support multiple root dprcs, instead of relying on the
dev_root field of the bus type struct, instead create a
function to traverse to the root dprc and return a pointer
to the device struct

Signed-off-by: Itai Katz <itai.katz@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:55:45 +01:00
Itai Katz
b55f00c6ed staging: fsl-mc: abstract test for whether a dprc is a root dprc
Instead of relying on assumptions about fields in data
structures, abstract the test for whether a dprc is a root
dprc into a function.

Signed-off-by: Itai Katz <itai.katz@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:55:45 +01:00
Itai Katz
14f928054a staging: fsl-mc: abstract test for existence of fsl-mc bus
Add function to test for existence of an fsl-mc bus instance
instead of doing this by looking directly at a field in the
bus type struct.

Signed-off-by: Itai Katz <itai.katz@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:55:45 +01:00
Malcolm Priestley
9f31b69559 staging: vt6655: device_tx_srv rename pTD
Following the convention elsewhere for vnt_tx_desc rename
desc.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Malcolm Priestley
12f2ee356e staging: vt6655: device_main replace pTDInfo with td_info.
Removing camel case.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Malcolm Priestley
480fc5b8f6 staging: vt6655: device_main replace pRD with rd.
Removing camel case.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Malcolm Priestley
5e011b4336 staging: vt6655: device_alloc_rx_buf replace pRDInfo with rd_info.
Removing camel case.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Malcolm Priestley
5e76c8f4aa staging: vt6655: device_main.c replace pDesc with desc.
Removing camel case.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Malcolm Priestley
78e0e85376 staging: vt6655: device_main replace pDevice with priv.
Removing camel case.

Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:54:51 +01:00
Tim Sell
464b577c8b staging: unisys: visorinput: remove extraneous do_key function
do_key() is no longer needed.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
b4f033f2d0 staging: unisys: visorinput: remove extraneous mouse logic
Removes a cursor positioning hack that no longer seems to be required.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
bc49496d29 staging: unisys: visorinput: register & use input_dev open() and close()
Registration of visorinput_open() and visorinput_close() for each device
allow us to eliminate unnecessary activity when nobody in user-land
cares.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
add2824796 staging: unisys: visorinput: change input bus type to BUS_VIRTUAL (6)
BUS_HOST wasn't really appropriate, so I changed to BUS_VIRTUAL, which is
what virtio uses.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
ade7280ff5 staging: unisys: visorinput: comment tweaks - s/gizmo/input node/g
Just a simple search and replace in the comments.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
cb3690fe4e staging: unisys: visorinput: correct code comments per kernel conventions
Multi-line comments were modified to conform to kernel conventions:

    /*
     * multi-line
     * comments
     */

doc-test /** */ for some comments was removed.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
f9bda156cf staging: unisys: visorinput: make structs & arrays const where possible
This also gave me a warning with the assignment:

    visorinput_dev->keycode = visorkbd_keycode;

because input_dev->keycode is NOT static but visorkbd_keycode now is, so
I went ahead and also added logic to stash away non-static copies of
visorkbd_keycode[] and visorkbd_ext_keycode[] within visorinput_devdata,
and use the copy to assign to visorinput_dev->keycode.  This change is
also technically required, because user-space can remap keys, and we
don't want this to be shared with the other keyboard devices running on
the same system.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
b3d5d05dcc staging: unisys: visorinput: re-order declarations for consistency
In order to be more consistent with kernel conventions used elsewhere,
I have re-ordered declarations in visorinput.c to follow this general
order (where possible):
* #defines
* struct/enum/union declarations
* static declarations (const if possible for all of them)
* forward function declarations where absolutely necessary

Exceptions were made for the static declarations like the driver
declaration, given that it depends on previously-defined callbacks.
So such declarations are at the end of visorinput.c.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
dabf6c399e staging: unisys: visorinput: subsume .h files directly into visorinput.c
keyboardchannel.h and mousechannel.h are now included within
visorinput.c directly.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Tim Sell
6ea9b6e6a7 staging: unisys: visorhid: rename to visorinput
This visorhid driver provides a Human Interface Device, but is not at all
using HID, the protocol.  It's a plain input driver, so for clarity, it is
being renamed to visorinput.

Signed-off-by: Tim Sell <Timothy.Sell@unisys.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:53:34 +01:00
Martin Kletzander
63417188f1 staging: rdma: Fix braces around if/else
Get rid of all ELSE_AFTER_BRACE type errors reported by checkpatch.pl.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:50:01 +01:00
Chaehyun Lim
1bd6dee3c5 staging: wilc1000: remove blank lines before close brace
This patch removes blank lines before close brace '}'

CHECK: Blank lines aren't necessary before a close brace '}'
drivers/staging/wilc1000/host_interface.c:5366:

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
6d6c9bbb07 staging: wilc1000: rename s32Error in host_int_wait_msg_queue_idle
This patch replaces s32Error with result to avoid camelcase.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
244efb1f5d staging: wilc1000: fix return type of host_int_wait_msg_queue_idle
This patch changes return type of host_int_wait_msg_queue_idle from s32
to int. s32Error gets return value from wilc_mq_send that has return
type of int. It should be changed return type of
host_int_wait_msg_queue_idle by int as well as data type of s32Error.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
5ba48ecca5 staging: wilc1000: rename hWFIDrv of host_int_set_mac_chnl_num
This patch replaces hWFIDrv with wfi_drv that is first argument of
host_int_set_mac_chnl_num to avoid camelcase.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
1c5833ce63 staging: wilc1000: rename u8ChNum of host_int_set_mac_chnl_num
This patch replaces u8ChNum with channel that is second argument of
host_int_set_mac_chnl_num to avoid camelcase.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
1ef58e4256 staging: wilc1000: rename s32Error in host_int_set_mac_chnl_num
This patch replaces s32Error with result to avoid camelcase.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
3565ded9f2 staging: wilc1000: fix NULL comparison style
This patch changes NULL comparison style to use ! operator found by
checkpatch.pl

CHECK: Comparison to NULL could be written "!pstrWFIDrv"
drivers/staging/wilc1000/host_interface.c:5324:

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Chaehyun Lim
a6d3346d92 staging: wilc1000: fix return type of host_int_set_mac_chnl_num
This patch changes return type of host_int_set_mac_chnl_num from s32 to
int. s32Error gets return value from wilc_mq_send function that
has return type of int. It should be changed return type of
host_int_set_mac_chnl_num function by int as well as data type of
s32Error.

Signed-off-by: Chaehyun Lim <chaehyun.lim@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:42:39 +01:00
Shraddha Barke
8668984f81 Staging: most: Use module_platform_driver
Use module_platform_driver for drivers whose init and exit functions
only register and unregister, respectively. Thus remove some
boilerplate code.

A simplified version of Coccinelle patch -

@a@
identifier f, x;
@@
-static f(...) { return platform_driver_register(&x); }
@b depends on a@
identifier e, a.x;
@@
-static e(...) { platform_driver_unregister(&x); }
@c depends on a && b@
identifier a.f;
declarer name module_init;
@@
-module_init(f);

@d depends on a && b && c@
identifier b.e, a.x;
declarer name module_exit;
declarer name module_platform_driver;
@@
-module_exit(e);
+module_platform_driver(x);

Signed-off-by: Shraddha Barke <shraddha.6596@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-04 09:37:23 +01:00