Correct priority problem in the use of ! and &.
The semantic patch that makes this change is as follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@@ expression E; constant C; @@
- !E & C
+ !(E & C)
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Compared with other drivers, the "ret" should be nagative and
returned. But in vhci_hdc, it always return 0;
I dont't use the driver, and I'm not familiar with the code.
Hope the patch is helpful.
Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
we need to get rid of those driver-specific error codes
Signed-off-by: Felipe Balbi <me@felipebalbi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This includes fixes for all of the legit checkpatch.pl errors and
warnings. I have also included several of the suggestions from the
linux-kernel mailing list when the USB-IP code was first added.
Signed-off-by: Brian G. Merrell <bgmerrell@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
If spin_lock_irqsave is called twice in a row with the same second
argument, the interrupt state at the point of the second call overwrites
the value saved by the first call. Indeed, the second call does not need
to save the interrupt state, so it is changed to a simple spin_lock.
The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@@
expression lock1,lock2;
expression flags;
@@
*spin_lock_irqsave(lock1,flags)
... when != flags
*spin_lock_irqsave(lock2,flags)
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Cc: David Kiliani <mail@davidkiliani.de>
Cc: Meilhaus Support <support@meilhaus.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Check that SMBUS APIs are available in touchscreen driver.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Support for input devices connected to GPIO pins. This adds support
for HTC Dream's keyboard and its trackball. Generic support already
exists for keyboard on GPIO, but this one is more advanced because it
can detect shadow key presses (and actually works with Dream :-).
(It also contains Kconfig/Makefile changes, including some that were
missing from previous commit. Sorry.)
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Separate Kconfig/Makefile glue from dream into subdirectory. I plan to
add few more drivers, and changing staging/Makefile each time sounds
like inviting conflicts.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
In vfe_send_msg_no_payload there is a wrong struct vfe_message allocation.
It allocates only sizeof(pointer to vfe_message) for a whole structure.
Add a dereference to the sizeof to allocate sizeof(vfe_message).
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This adds pointer to hardware documentation, and adds code comment
from Arve.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This separates coefficient computation into separate function, so that
main probe does not have 1001 variables, and is of a more reasonable
size.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Cc: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This is first part of touchscreen cleanups. I did not remove
earlysuspend functionality for now (to help Google merge the changes).
I mainly introduced helpers to reduce code duplication, and split huge
functions into smaller ones.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Cc: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This adds support for synaptic touchscreen, used in HTC dream
cellphone.
This is original version from Arve, fixed only to compile; I do have
cleaner version, but I broken something inside, and this will preserve
authorship better. I originally tried to push the driver directly to
input/touchscreen, but the driver has some issues with interrupt
handling that are more difficult to fix than I expected at first.
Signed-off-by: Arve Hjønnevåg <arve@android.com>
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Limit SMD communication glue to MSM platform. It is closely tied to
MSM architecture.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Remove a few items that have already been resolved.
There are only a few checkpatch issues, they need to be resolved
by larger code logic changes that are not "simple" changes.
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
List.h is no longer used and can be removed.
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
The hv driver has it's own linked list routines. This removes them
from RndisFilter.c
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
The hv driver has it's own linked list routines. This removes them
from more places in hv.
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
The hv driver has it's own linked list routines. This removes them
from NetVsc and uses the kernels routines instead.
Signed-off-by: Bill Pemberton <wfp5p@virginia.edu>
Cc: Hank Janssen <hjanssen@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
It's amazing the hoops that people go through to make code work
when they don't opensource the whole thing. Passing these types
of function pointers around for no good reason is a mess, this needs
to be unwound as everything is now in the open.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Come on people, it doesn't get simpler than this, why
have a typedef for something so tiny...
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
function pointer typedefs are allowed in the kernel, but only if they
make sense, which they really do not here, as they are not passed around
with any kind of frequency. So just spell them all out, it makes the
code smaller and easier to understand overall.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
function pointer typedefs are allowed in the kernel, but only if they
make sense, which they really do not here, as they are not passed around
with any kind of frequency. So just spell them all out, it makes the
code smaller and easier to understand overall.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
function pointer typedefs are allowed in the kernel, but only if they
make sense, which they really do not here, as they are not passed around
with any kind of frequency. So just spell them all out, it makes the
code smaller and easier to understand overall.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
The Linux kernel doesn't have all caps structures, we don't like to
shout at our programmers, it makes them grumpy. Instead, we like to
sooth them with small, rounded letters, which puts them in a nice,
compliant mood, and makes them more productive and happier, allowing
them more fufilling lives overall.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Still a lot of long lines, but that's nothing I can fix up at this time
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
All device release functions need to do something, if not, it's a bug.
By merely providing an "empty" release function, it gets the kernel to
shut up, but that's not solving the problem at all. Stick a big fat
WARN_ON(1); in there to get people's attention.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
There are still some very long lines, someone needs to unwind the
logic there to resolve that.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Some one owes me a lot of beer, or a nice bottle of rum for
all of this crud cleanup...
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This gets rid of the unneeded typedef and the forward declarations,
saving a bit of code file size.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
There are still some too-long lines here, hopefully they will get
resolved later.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
There are still some horrible long lines in here, which some simple
code reworking will make smaller and easier to understand.
Also note the FIXME in struct netvsc_driver_context...
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Lots of cleanups.
Note, the use of volatile still needs to be resolved, and
possibly the #ifdef could be done a bit "better".
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Reorder some functions to get rid of all of the forward declarations.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Everything is clean except for some very long lines that
need a bit more code rework to resolve. That will have to be done by
someone that can test the code.
Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>