Commit Graph

112402 Commits

Author SHA1 Message Date
anish kumar
23a4231150 Staging: sm7xx: printk loglevels modified to match the scenario
KERN_ERR should be used in place of KERN_INFO in the case of
error scenarios.

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:32 -07:00
anish kumar
617a0c7177 Staging: sm7xx: preferred form for passing a size to memory allocation routines
The preferred form for passing a size of a struct is the following:
p = kmalloc(sizeof(*p), ...);
Please refer Documentation/Codingstyle chapter 14

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Acked-by: Harry Wei <harryxiyou@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:32 -07:00
anish kumar
1639c8ab48 Staging: sm7xx: removing extra white spaces,redundant code and using macros
This patch is to remove extra spaces,redundant code and using
ARRAY_SIZE macros.

Signed-off-by: anish kumar <anish198519851985@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:31 -07:00
Randy Dunlap
2d9903621d staging: fix mei build when PM is not enabled
Fix mei build when CONFIG_PM is not enabled (i.e., fix typo):

drivers/staging/mei/main.c:1159: error: 'MEI_PM_OPS' undeclared here (not in a function)

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:31 -07:00
matt mooney
3fadc1212a staging: usbip: userspace: bind-driver.c: mark remote_host as unused
Use __attribute__((unused)) to suppress error until it can be determined
that remote_host is not needed.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:10 -07:00
matt mooney
2006d35d61 staging: usbip: userspace: stub_driver.c: update kernel module name
Change kernel module name to usbip-host.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-19 15:34:09 -07:00
J. Ali Harlow
8ba69ce4b3 comedi vmk80xx: support comedi auto-configuration
Add support for automatically associating a vmk8055 device with a
comedi device (previously the user had to use comedi_num_legacy_minors
to reserve device slots and then associate them with vmk8055 devices
using comedi_config).
Tested on multiple K8055s, but not on K8061s.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:07 -07:00
J. Ali Harlow
c647ed568a comedi vmk80xx: support bits instruction
Calling comedi_dio_bifield2() returns EBUSY permanently. Implementing
the insn_bits call fixes the problem and is good in its own right since
one can then read and write to all the digitial lines at the same time.
Tested on a K8055, but not on a K8061.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:06 -07:00
J. Ali Harlow
510b9be374 comedi vmk80xx: extend rudimentary_check to check both directions
rudimentary_check() can currently check whether the input or
output direction is currently available (no pending transaction),
but not both at the same time. We need this facility for do_bits().

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:06 -07:00
J. Ali Harlow
9dc99895ef comedi vmk80xx: simplify rinsn output calculation
vmk80xx_di_rinsn() and vmk80xx_do_rinsn() extract the required channel
data by inconsistent and overly-complex algorithms. Simplify them both.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:06 -07:00
J. Ali Harlow
85a2f34f4e comedi vmk80xx: Digitial I/O should have a maxdata of 1
Digitial input and output sub-devices were reporting a maxdata of
0x1F and 0xFF respectively. They should both be 1.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:05 -07:00
J. Ali Harlow
587e500c40 comedi vmk80xx: make rudimentary_check a static function
rudimentary_check is a macro with side-effects (it returns
on error) which is contary to CodingStyle. Replace it with
a static function.

Signed-off-by: J. Ali Harlow <ali@avrc.city.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:32:04 -07:00
Julia Lawall
311fda8e8b drivers/staging/cptm1217/clearpad_tm1217.c: Correct call to input_free_device
This code is in a loop that currently is only executed once.  Because of
this property, the first block of code is currently actually correct.
Nevertheless, the comments associated with the code suggest that the loop
is planned to take more than one iteration in the future, and thus this
patch is made with that case in mind.

In the first block of code, there is currently an immediate abort from the
function.  It is changed to jump to the error handling code at fail, to be
able to unregister and free the resources allocated on previous iterations.

In the second block of code, the input_dev for the current iteration has
been allocated, but has not been registered.  It has also not been stored
in ts->cp_input_info[i].input.  Thus on jumping to fail, it will not be
freed.  In this case, we want to free, but not unregister, so the free for
this most recently allocated resource is put before the jump.

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

// <smpl>
@r exists@
local idexpression struct input_dev * x;
expression ra,rr;
position p1,p2;
@@

x = input_allocate_device@p1(...)
...  when != x = rr
     when != input_free_device(x,...)
     when != if (...) { ... input_free_device(x,...) ...}
if(...) { ... when != x = ra
     when forall
     when != input_free_device(x,...)
 \(return <+...x...+>; \| return@p2...; \) }

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

cocci.print_main("input_allocate_device",p1)
cocci.print_secs("input_free_device",p2)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:30:49 -07:00
Tomas Winkler
8041f92a20 staging/easycap: easycap_probe: drop more unused variables
wMaxPacketSize are  bEndpointAddress assigned but not used

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:30:08 -07:00
Tomas Winkler
1d243c2e18 staging/easycap: probe: simplify the endpoints tests
we are interested only in isochronous in endpoints
so we can simplify the flow

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:30:07 -07:00
Tomas Winkler
49c30e5764 staging/easycap: easycap_probe: drop verbose printouts
reduce printouts of not necessary information

Cc: Mike Thomas <rmthomas@sciolus.org>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 14:30:07 -07:00
Oren Weil
6b8aae5ace staging/mei: add mei to staging Kbuild
Add mei to Kconfig and Makefile in drivers/staging

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:59 -07:00
Oren Weil
3ceb3e66a0 staging/mei: AMT Watchdog
code that open connection and invoke
heartbeats to the AMT Watchdog client/feature, if exists

Connect to WD Client, if exists Send Start WD Command.
Every 2 secs send heartbeats.
On System shutdown/suspends, send Stop WD command.

This is intermediate stage before moving this code to standalone watchdog
driver.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:58 -07:00
Oren Weil
334aab1dba staging/mei: mei.h defining user space interface
define IOCTL_MEI_CONNECT_CLIENT and its associated structure

When the user wants to connect to a ME feature/client after
it open a file descriptor to the driver, he need to use Connect
IOCTL.

This IOCTL received a struct that contains a union of 2 other structs.

1st struct - Input Parameters:
	UUID - a predefine unique that identify the ME feature, this
		 id per feature is constant all over the chipsets
		 and versions.

2nd struct Output Parameters:
	MaxMessageLen - 	maximum message length that allowed
				to be send to the feature
	ProtocolVersion ME feature current protocol version.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:58 -07:00
Oren Weil
5a6003f25f staging/mei: Hardware and MEI driver internal struct definition
define the MEI protocol msg structs and
HW registers, also define the MEI internal status and struct

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:58 -07:00
Oren Weil
91f01c6d45 staging/mei: MEI driver init flow.
Init driver list and queue, MEI Hardware reset flow,
init of driver specific host client.

MEI Init/reset flow:
- Ack all waiting interrupts
- Hardware reset flow (Set Reset Bit, Generate Interrupt, Clear Reset Bit
  Generate Interrupt)
- Wait for ME Ready Bit (done in interrupt thread)
- Set ME Ready Bit (done in interrupt thread)
- Send Start request (done in interrupt thread)
- wait for answer
- Send Enumerate Clients request (done in interrupt thread)
- wait for answer
- Send Get Client property for each client request (done in interrupt thread)
- Wait for answers
- Init Done.

MEI Driver connect internally to 2 ME clients/features:
AMTHI and AMT watchdog.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:57 -07:00
Oren Weil
3ce72726c6 staging/mei: MEI link layer
Implementation of the communication between host and ME.
connect/disconnect to/from a client, send MEI message,
read MEI message, flow control handling.

Each MEI message has mei_msg_hdr followed by a payload.
Driver is oblivious the payload.

ME Address/ID 	- This is the logical address of the ME
		feature/client of that message.
Host Address/ID	- This is the logical address of the Host
		  client of that message
Length 		- This is the Length of message payload in bytes
Reserved 	-  reserved for future use.
Message Complete - This bit is used to indicative that
		this is the last message of multi message
		MEI transfer of a client message that is larger
		then the MEI circular buffer.
Payload		- Message payload (data) up to 512bytes

The HW data registers are consist two circular buffers,
one for data from ME and other data from Host application.
Each buffer has two pointers, read_ptr (H_CBRP)
and write_ptr (H_CBWP).
The buffers size is defined by depth value that exists
in the status registers (H_CBD and ME_CBD_HRA).
Every read from ME circular buffer cause read_ptr++
Every write to the Host  circular buffer write_ptr++

Flow control MEI message that ME and MEI Driver use to notify
each other that a ME feature/client or Host client buffer is ready
to receive data.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:57 -07:00
Oren Weil
fb7d879f3b staging/mei: Interrupt handling.
ISR and interrupt thread for handling incoming data.
e.g. read bus message, read client message, handle reset requests.

quick handler:
	As MEI may share interrupt with GFX and/or USB
	the HW register need to be checked and acknowledged.

thread handler:
	Check if HW has data for read.
	Write data to HW if possible.
	May init reset flow on error

there can be two types of messages:
1) bus messages:
	Management messages between MEI Driver and ME e.g.
		Connect request/response,
		Disconnect request/response
		Enum clients request/response
		Flow control request/response
	those message are indicated by
	ME Address/ID == 0 && Host Address/ID == 0

2) feature/client messages:
	message that are sends between ME Feature/Client and
	an application, the struct of the message is defined
	by the ME Feature Protocol (e.g. APF Protocol, AMTHI Protocol)
	those message are indicated by
	ME Address/ID != 0 && Host Address/ID != 0

MEI Initialization state machine is also managed by this patch.
After MEI Reset is preform:
	Send Start request
		wait for answer
	Send Enumerate Clients request
		wait for answer
	Send Get Client property for each client request
		wait for answers
	Init Done.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:56 -07:00
Oren Weil
ab841160d9 staging/mei: PCI device and char driver support.
contains module entries and PCI driver and char device
definitions (using file_operations, pci_driver struts).

The HW interface is exposed on PCI interface.
PCI:
	The MEI HW resources are memory map 32 bit registers
	(Host and ME Status Registers and Data Registers)
	and interrupt (shared, with Intel GFX on some chipsets
	and USB2 controller on others).
	The device is part of the chipsets and cannot be hotplugged.
	The MEI device present is determined by BIOS configuration.

Probe:
	The driver starts the init MEI flow, that is explained
	in the patch "MEI driver init flow" [06/10],
	then schedules a timer that handles
	timeouts and watchdog heartbeats.

Remove:
	The driver closes all connections and stops the watchdog.

The driver expose char device that supports:
	open, release, write, read, ioctl, poll.

Open:
	Upon open the driver allocates HOST data structure
	on behalf of application which will resides in the file's
	private data and assign a host ID number which
	will identify messages between driver client instance
	and MEI client.

	The driver also checks readiness of the device. The number
	of simultaneously opened instances is limited to 253.
	(255 - (amthi + watchdog))

Release:
	In release the driver sends a Disconnect Command to
	ME feature and clean all the data structs.

IOCTL:
	MEI adds new IOCTL: (IOCTL_MEI_CONNECT_CLIENT)
	The IOCTL links the current file descriptor to ME feature.
	This is done by sending MEI Bus command: 'hbm_client_connect_request'
	to the ME and waiting for an answer :'hbm_client_connect_response'.
	Upon answer reception the driver updates its and HOST data
	structures in file structure to indicate that the file
	descriptor is associated to ME feature.

	Each ME feature is represented by UUID which is given as
	an input parameter to the IOCTL, upon success connect command the
	IOCTL will return the ME feature properties.
	ME can reject CONNECT commands due to several reasons,
	most common are:
		Invalid UUID ME or feature does not exists in ME.
		No More Connection allowed to this is feature,
		usually only one connection is allowed.

Write:
	Upon write, the driver splits the user data into several MEI
	messages up to 512 bytes each and sends it to the HW.
	If the user wants to write data to AMTHI ME feature then the
	drivers routes the messages through AMTHI queues.

Read:
	In read the driver checks is a connection exists to
	current file descriptor and then wait until a data is available.
	Message might be received (by interrupt from ME) in multiple chunks.
	Only complete message is released to the application.
Poll:
	Nothing special here. Waiting for see if we have
	data available for reading.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Itzhak Tzeel-Krupp <itzhak.tzeel-krupp@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:56 -07:00
Oren Weil
830c20ec4d staging/mei: MEI Driver TODO list
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:56 -07:00
Oren Weil
6624fc2315 staging/mei: MEI Driver documentations
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Oren Weil <oren.jer.weil@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:30:55 -07:00
Cho, Yu-Chen
d48e5cffb3 staging/keucr: fix transport other code style
fix keucr transport.c other coding style but not from checkpatch.pl.
replace ternary conditional "?:" with if/else

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:41 -07:00
Cho, Yu-Chen
3aa4fc587d staging/keucr: fix keucr transport coding style
fix keucr transport.c transport.h coding style

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:40 -07:00
Cho, Yu-Chen
ece114aa78 staging/keucr: fix keucr smil.h coding style
fix keucr smil.h coding style

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:40 -07:00
Cho, Yu-Chen
65cdcf3623 staging/keucr: fix keucr smilecc.c coding style
fix keucr smilecc.c coding style

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:39 -07:00
Cho, Yu-Chen
8a25a2cf0a staging/keucr: fix keucr scsiglue coding style
fix keucr scsiglue.c coding style

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:39 -07:00
Cho, Yu-Chen
70d8370758 staging/keucr: fix keucr msscsi coding style
Fix keucr msscsi.c coding style.
Remove externs ,and move MS_SCSIIrp to end,
because there are not necessary to add extern for MS_SCSIIrp function.

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:39 -07:00
Cho, Yu-Chen
333c5ec018 staging/keucr: fix keucr ms coding style
fix keucr ms.c and ms.h coding style

Signed-off-by: Cho, Yu-Chen <acho@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-18 08:22:38 -07:00
K. Y. Srinivasan
02bb4b9e4c Staging: hv: vmbus_drv: Get rid of util synchronixation based on channel counting
Now that we have dealt with this issue differently, get rid of the
old mechanism.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:36:50 -07:00
K. Y. Srinivasan
b9d8e35256 Staging: hv: Re-implement the synchronization for util channels
The util module expects that the util channels are fully initialized
when the module loads. To deal with the race condition which can result
in a NULL pointer dereferencing if the util module were to load before
all the util channels are fully initialized, in commit:

	commit: 8b5d6d3bd3
	Author: Haiyang Zhang <haiyangz@microsoft.com>
	Date:   Fri May 28 23:22:44 2010 +000

code was introduced in the vmbus driver to ensure that all the
util channels were fully initialized before returning from the load
of the vmbus driver. This solution has several problems: if for whatever
reason, any util channel were to fail to initialize, vmbus driver would
wait indefinitely. We deal with this synchronization issue very differently
in this patch.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:36:50 -07:00
K. Y. Srinivasan
31bceb845e Staging: hv: vmbus_drv: Introduce state in struct vmbus_channel to track util services
In preparation for getting rid of util channel synchronization based on
counting util channels, introduce state in  struct vmbus_channel  to
track util services.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Abhishek Kane <v-abkane@microsoft.com>
Signed-off-by: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:36:50 -07:00
Ian Abbott
7e0b3bf3ab staging: comedi: addi-data: Get rid of redundant ps_BoardInfo
The ps_BoardInfo pointer in the device private data is redundant as we
can just use the this_board macro to access the same data, as is done
elsewhere in the code.  Get rid of the pointer and change the code to
use the this_board macro instead.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:33:39 -07:00
Ian Abbott
57517878df staging: comedi: addi-data: Don't overwrite read-only data
The drivers for ADDI-DATA cards can override some static parameters for
the board type using information read from EEPROM.  Unfortunately, they
currently write the parameters from the EEPROM back to the shared,
read-only board data!  The problem has been masked during compilation by
type-casting away the const-ness of the data.

This patch changes the code to use an area in the private data for the
board instance to hold the parameters read from EEPROM (after
initializing the parameters from the static board data).  It also
changes the type-casts to the read-only data to preserve the const
qualifier.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:33:39 -07:00
Ian Abbott
cfe3cffd8e staging: comedi: adv_pci_dio: Add a counter subdevice to PCI-1751
The Advantech PCI-1751 has a 8254 counter chip on board.  Add it to the
device as a counter subdevice.  Apparently the counter can generate
interrupts although the driver does not currently use this capability.

Original patch by Ivan Russkih (Иван Русских) <vanekrus at gmail dot
com>.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:33:39 -07:00
Julia Lawall
c5cbebf87f drivers/staging/line6/driver.c: Drop unneeded put functions.
This seems to be the result of patches ab366c1a and 1027f476 crossing each
other.  Patch ab366c1a adds calls to usb_put_intf and usb_put_dev at the
end of the function line6_probe, in the error handling code, while patch
1027f476 moves the calls to the corresponding get function from the
beginning to the end of line6_probe, making the calls to put in the error
handling code unnecessary.

// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:32 -07:00
Naveen Singh
10ceaac958 ath6kl: iw dev wlan0 link implementation
implementing the cfg ops that gets called when iw dev wlan0
link is issued by user. The ops that needs to be implemented
is get_station.

kvalo: check the mac address, remove signal_pending(), use ARRAY_SIZE()
and fix style issues

Signed-off-by: Naveen Singh <nsingh@atheros.com>
Signed-off-by: Kalle Valo <kalle.valo@atheros.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:31 -07:00
Julia Lawall
d93089df1b drivers/staging/ath6kl/os/linux/cfg80211.c: Add missing call to cfg80211_put_bss
A call to cfg80211_get_bss hould be accompanied by a call to
cfg80211_put_bss in error-handling code.

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

// <smpl>
@r exists@
local idexpression struct cfg80211_bss * x;
expression ra,rr;
position p1,p2;
@@

x = cfg80211_get_bss@p1(...)
...  when != x = rr
     when != cfg80211_put_bss(x,...)
     when != if (...) { ... cfg80211_put_bss(x,...) ...}
if(...) { ... when != x = ra
     when forall
     when != cfg80211_put_bss(x,...)
 \(return <+...x...+>; \| return@p2...; \) }

@script:python@
p1 << r.p1;
p2 << r.p2;
@@

cocci.print_main("cfg80211_get_bss",p1)
cocci.print_secs("return",p2)

// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:31 -07:00
Clemens Noss
aacd531df9 staging: brcm80211: use correct pointer types in bcm_pktq_flush
to clarify the intention:

On Sun, May 15, 2011 at 09:54:26PM +0200, Arend van Spriel wrote:
> On 05/15/2011 08:10 PM, Hauke Mehrtens wrote:
[...]
>> Why don't you use the correct pointer type here instead of casting then
>> around and the parameter names are meaningless too.
>>
>> static bool cb_del_ampdu_pkt(struct sk_buff *mpdu, struct
>> cb_del_ampdu_pars *ampdu_pars)
[...]
> Actually this is a generic callback mechanism in which an additional
> parameter can be passed, which can be of *any* type hence a void pointer
> seems justified here and a meaningless name is used. I do agree that the
> txi parameter will always be a struct sk_buff and should be indicated as
> such.

Reported-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Clemens Noss <cnoss@gmx.de>
Acked-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:30 -07:00
Clemens Noss
84067de664 staging: brcm80211: fix cast to pointer from integer
bcm_pktq_flush and related functions only ever get 0 or a pointer for
arg, so make it a pointer.

This might fix a crash on 64bit.

Signed-off-by: Clemens Noss <cnoss@gmx.de>
Acked-by: Roland Vossen <rvossen@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:30 -07:00
Rahul Tank
7a9aea511a staging: echo: Trivial indentation changes
--bcaec50161b317392804a33628dd
Content-Type: text/plain; charset=ISO-8859-1

Hi Greg,

 Please find patch attached .

Thanks,
 Rahul

Hi Greg,<br><br> Please find patch attached .<br><br>Thanks,<br> Rahul<br>

From ba1dbafaef1a87c1338c5bb0e6bba3be06071c90 Mon Sep 17 00:00:00 2001
From: Rahul Tank <rahul.tank@gmail.com>
Date: Sat, 14 May 2011 11:28:25 +0530
Subject: [PATCH] Trivial indentation cleanup
 Signed-off-by: Rahul Tank <rahul.tank@gmail.com>

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:31:29 -07:00
matt mooney
1c6e79d992 staging: usbip: userspace: modify project gcc flags
Add -Werror, remove -Wstrict-prototypes, and change -W to -Wextra.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:26:29 -07:00
matt mooney
be0d54ae39 staging: usbip: userspace: move common cflags to configure.ac
There are a standard set of cflags that are used in each makefile so
let's set those in EXTRA_CFLAGS and enforce them for the entire project.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:26:29 -07:00
matt mooney
968c6595e7 staging: usbip: userspace: remove gcc warnings
The warnings were for unused parameters, so __attribute__((unused))
has been added until it can be determined they are truly unneeded.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:26:28 -07:00
matt mooney
88d6f40839 staging: usbip: userspace: remove revision $Id$
This is git not CVS!

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:26:28 -07:00
matt mooney
d762f5e10c staging: usbip: userspace: set libusbip version in configure.ac
Move libusbip version setting to configure.ac so that version
numbers can be found in a single location.

Signed-off-by: matt mooney <mfm@muteddisk.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-05-17 13:26:27 -07:00