platform/kernel/kernel-mfld-blackbay.git
15 years agoStaging: remove heci driver
Greg Kroah-Hartman [Fri, 11 Sep 2009 16:46:35 +0000 (09:46 -0700)]
Staging: remove heci driver

Intel has officially abandoned this project and does not want to
maintian it or have it included in the main kernel tree, as no one
should use the code, it's not needed anymore.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: remove at76_usb wireless driver.
Greg Kroah-Hartman [Thu, 3 Sep 2009 18:58:09 +0000 (11:58 -0700)]
Staging: remove at76_usb wireless driver.

There is already an in-kernel driver for this hardware (since 2.6.30),
at76c50x-usb, and it supports all of the same devices.  So this driver
can now be deleted.

Acked-by: Kalle Valo <kalle.valo@iki.fi>
Cc: linux-wireless <linux-wireless@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rspiusb: remove the driver
Greg Kroah-Hartman [Thu, 3 Sep 2009 04:33:06 +0000 (21:33 -0700)]
Staging: rspiusb: remove the driver

No one cares, it's a custom userspace interface, and the code hasn't
built in a long time.  So remove it.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: meilhaus: remove the drivers
Greg Kroah-Hartman [Thu, 3 Sep 2009 04:29:37 +0000 (21:29 -0700)]
Staging: meilhaus: remove the drivers

The comedi drivers should be used instead, no need to have
these in here as well.

Cc: David Kiliani <mail@davidkiliani.de>
Cc: Meilhaus Support <support@meilhaus.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: remove me4000 driver.
Greg Kroah-Hartman [Thu, 3 Sep 2009 04:27:08 +0000 (21:27 -0700)]
Staging: remove me4000 driver.

The comedi drivers should be used instead, no need to have
this driver in the tree duplicating that one.

Cc: Wolfgang Beiter <w.beiter@aon.at>
Cc: Guenter Gebhardt <g.gebhardt@meilhaus.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: line6: ffzb returns an unsigned integer
Frederik Deweerdt [Mon, 14 Sep 2009 08:52:37 +0000 (08:52 +0000)]
Staging: line6: ffzb returns an unsigned integer

find_first_zero_bit returns a positive value, use it accordingly.

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@xprog.eu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: line6: pod.c: style cleanups
Frederik Deweerdt [Mon, 14 Sep 2009 08:51:38 +0000 (08:51 +0000)]
Staging: line6: pod.c: style cleanups

Line6 pod.c: Minor style cleanups

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@xprog.eu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: iio: introduce missing kfree
Julia Lawall [Fri, 11 Sep 2009 16:22:27 +0000 (18:22 +0200)]
Staging: iio: introduce missing kfree

Error handling code following a kmalloc or kzalloc should free the
allocated data.

The semantic match that finds the problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
statement S;
expression E;
identifier f,f1,l;
position p1,p2;
expression *ptr != NULL;
@@

x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
...
if (x == NULL) S
<... when != x
     when != if (...) { <+...x...+> }
(
x->f1 = E
|
 (x->f1 == NULL || ...)
|
 f(...,x->f1,...)
)
...>
(
 return \(0\|<+...x...+>\|ptr\);
|
 return@p2 ...;
)

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

print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
15 years agoStaging: dream: introduce missing kfree
Julia Lawall [Fri, 11 Sep 2009 16:22:27 +0000 (18:22 +0200)]
Staging: dream: introduce missing kfree

Error handling code following a kmalloc or kzalloc should free the
allocated data.

The semantic match that finds the problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
statement S;
expression E;
identifier f,f1,l;
position p1,p2;
expression *ptr != NULL;
@@

x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...);
...
if (x == NULL) S
<... when != x
     when != if (...) { <+...x...+> }
(
x->f1 = E
|
 (x->f1 == NULL || ...)
|
 f(...,x->f1,...)
)
...>
(
 return \(0\|<+...x...+>\|ptr\);
|
 return@p2 ...;
)

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

print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
15 years agoStaging: comedi: addi-data: NULL dereference of amcc in v_pci_card_list_init()
Roel Kluin [Mon, 31 Aug 2009 08:54:37 +0000 (10:54 +0200)]
Staging: comedi: addi-data: NULL dereference of amcc in v_pci_card_list_init()

amcc allocation may fail, prevent a NULL dereference.

allocation may fail, prevent a dereference.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: vt665x: fix built-in compiling
Alexander Beregalov [Thu, 3 Sep 2009 16:38:14 +0000 (20:38 +0400)]
Staging: vt665x: fix built-in compiling

Fix this build error:
undefined reference to "__this_module"

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt3090: enable NATIVE_WPA_SUPPLICANT_SUPPORT option
Bartlomiej Zolnierkiewicz [Tue, 8 Sep 2009 20:35:41 +0000 (22:35 +0200)]
Staging: rt3090: enable NATIVE_WPA_SUPPLICANT_SUPPORT option

Similarly as it has been done in other in-kernel Ralink drivers
and in openSUSE's rt3090sta package.

Cc: Axel Koellhofer <rain_maker@root-forum.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt3090: port changes in WPA_MIX_PAIR_CIPHER to rt3090
Axel K [Thu, 3 Sep 2009 20:04:59 +0000 (22:04 +0200)]
Staging: rt3090: port changes in WPA_MIX_PAIR_CIPHER to rt3090

This patch ports a change recently applied to rt2860/rt2870 in order to
change handling of WPA1/WPA2 mixed mode to rt3090.

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt3090: rename device from raX to wlanX
Axel K [Thu, 3 Sep 2009 19:53:37 +0000 (21:53 +0200)]
Staging: rt3090: rename device from raX to wlanX

This patch sets "wlan" as the default suffix for naming the device, a
change which has also been previously applied to rt2860/rt2870 in
staging.

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt3090: remove possible conflict with rt2860
Axel K [Thu, 3 Sep 2009 19:24:19 +0000 (21:24 +0200)]
Staging: rt3090: remove possible conflict with rt2860

Both drivers (rt2860 and rt3090) register themselves as "rt2860" on
loading the module.

In the very rare case of somebody having two cards in his machine, one
using rt3090 and the other one using the rt2860 driver, loading both
modules would be impossible, the second one will not be loaded as the
kernel will tell you that the driver is already registered.

This was also present with rt2870/rt3070 (with both driver registering
as "rt2870"), but the code has been merged to one driver recently.

The follwoing patch fixes this potential problem until merging of
rt2860/rt3090 code to a single driver.

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt2860/rt2870/rt3070/rt3090: fix compiler warning on x86_64
Axel K [Thu, 3 Sep 2009 19:13:56 +0000 (21:13 +0200)]
Staging: rt2860/rt2870/rt3070/rt3090: fix compiler warning on x86_64

When compiling rt2860/rt2870/rt3070 or rt3090 on x86_64, the following warning
is displayed:

drivers/staging/rt3090/rt_linux.c: In function 'duplicate_pkt':
drivers/staging/rt3090/rt_linux.c:531: warning: passing argument 1 of 'memmove' makes pointer from integer without a cast
include2/asm/string_64.h:58: note: expected 'void *' but argument is of type 'sk_buff_data_t'
drivers/staging/rt3090/rt_linux.c:533: warning: passing argument 1 of 'memmove' makes pointer from integer without a cast
include2/asm/string_64.h:58: note: expected 'void *' but argument is of type 'sk_buff_data_t'

The following patch fixes this warning.

Credits go to Helmut Schaa <hschaa@suse.de> for his kind advice/help on this
patch.

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Cc: Helmut Schaa <hschaa@suse.de>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt2860: add new device ids
Axel K [Thu, 3 Sep 2009 18:53:36 +0000 (20:53 +0200)]
Staging: rt2860: add new device ids

This patch adds new device IDs to ralink rt2860 driver in linux staging. The
device IDs were retrieved from the latest vendor release (version 2.1.2.0).

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt3090: add device id 1462:891a
Axel K [Thu, 3 Sep 2009 18:47:11 +0000 (20:47 +0200)]
Staging: rt3090: add device id 1462:891a

This patch adds a new device ID (1462:819a) to ralink rt3090 driver in linux
staging. The device ID was retrieved from the latest vendor release (version
2.2.0.0).

Signed-off-by: Axel Koellhofer <rain_maker@root-forum.org>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: asus_oled: Cleaned up checkpatch issues.
Kevin A. Granade [Sat, 5 Sep 2009 06:03:39 +0000 (01:03 -0500)]
Staging: asus_oled: Cleaned up checkpatch issues.

Signed-off-by: Kevin A. Granade <kevin.granade@gmail.com>
Cc: Belisko Marek <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rt2860: fix possible NULL dereferences
Roel Kluin [Mon, 31 Aug 2009 10:26:43 +0000 (12:26 +0200)]
Staging: rt2860: fix possible NULL dereferences

Allocations may fail, prevent NULL dereferences.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: Drop unnecessary NULL test
Julia Lawall [Mon, 31 Aug 2009 19:34:25 +0000 (21:34 +0200)]
Staging: rtl8192e: Drop unnecessary NULL test

The result of container_of should not be NULL.  In particular, in this case
the argument to the enclosing function has passed though INIT_WORK, which
dereferences it, implying that its container cannot be NULL.

A simplified version of the semantic patch that makes this change is as
follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@@
identifier fn,work,x,fld;
type T;
expression E1,E2;
statement S;
@@

static fn(struct work_struct *work) {
  ... when != work = E1
  x = container_of(work,T,fld)
  ... when != x = E2
- if (x == NULL) S
  ...
}
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: vt665x: rename the module binary
Greg Kroah-Hartman [Fri, 11 Sep 2009 21:20:21 +0000 (14:20 -0700)]
Staging: vt665x: rename the module binary

So it doesn't conflict with a mainline kernel driver
currently under development.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: cowloop: remove kernel version checks
Greg Kroah-Hartman [Tue, 25 Aug 2009 23:26:56 +0000 (16:26 -0700)]
Staging: cowloop: remove kernel version checks

Now that the code is in the kernel tree, remove the unneeded version
checks.

Cc: "H.J. Thomassen" <hjt@ATComputing.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: add cowloop to the build
Greg Kroah-Hartman [Tue, 25 Aug 2009 23:00:48 +0000 (16:00 -0700)]
Staging: add cowloop to the build

Now that the code can build, let's add it to the build system.

Cc: "H.J. Thomassen" <hjt@ATComputing.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: cowloop: add TODO file
Greg Kroah-Hartman [Tue, 25 Aug 2009 23:04:46 +0000 (16:04 -0700)]
Staging: cowloop: add TODO file

Add a TODO file with a few things that needs to be fixed up.

Cc: "H.J. Thomassen" <hjt@ATComputing.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: get cowloop to build properly
Greg Kroah-Hartman [Tue, 25 Aug 2009 23:01:33 +0000 (16:01 -0700)]
Staging: get cowloop to build properly

There has been some block api changes since the last
release of the cowloop code.  This patch updates the code to
properly build.

Cc: "H.J. Thomassen" <hjt@ATComputing.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: add cowloop driver
H.J. Thomassen [Tue, 25 Aug 2009 22:39:04 +0000 (15:39 -0700)]
Staging: add cowloop driver

Cowloop is a "copy-on-write" pseudo block driver. It can
be stacked on top of a "real" block driver, and catches
all write operations on their way from the file systems
layer above to the real driver below, effectively shielding
the lower driver from those write accesses. The requests are
then diverted to an ordinary file, located somewhere else
(configurable). Later read requests are checked to see whether
they can be serviced by the "real" block driver below, or
must be pulled in from the diverted location. More information
is on the project's website http://www.ATComputing.nl/cowloop/

From: "H.J. Thomassen" <hjt@ATComputing.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: fix timeouts on firmware download
Greg Kroah-Hartman [Mon, 24 Aug 2009 21:40:50 +0000 (14:40 -0700)]
Staging: rtl8192e: fix timeouts on firmware download

We need to actually wait a specific ammount of time, not just hope that
a set number of loops will be long enough.

Based on a conversation with Ralink, and a proposed patch for their
older kernel driver.

Cc: david woo <xinhua_wu@realsil.com.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: fix for stack bug
Greg Kroah-Hartman [Thu, 20 Aug 2009 13:14:22 +0000 (06:14 -0700)]
Staging: rtl8192e: fix for stack bug

This should be a fix for the lockup bug when attaching to an access
point.

Patch came from a diff from RealTek.  Hopefully it resolves the issue.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove annoying printk()
Greg Kroah-Hartman [Fri, 14 Aug 2009 23:11:28 +0000 (16:11 -0700)]
Staging: rtl8192e: remove annoying printk()

This message doesn't need to be constantly sent to the syslog,
it's nothing but annoying gibberish.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove unneeded ieee80211 files
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:50:57 +0000 (16:50 -0700)]
Staging: rtl8192e: remove unneeded ieee80211 files

These files are not even built or used, so just remove them.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: coding style cleanups on r819xE_firmware.c
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:39:54 +0000 (16:39 -0700)]
Staging: rtl8192e: coding style cleanups on r819xE_firmware.c

This cleans up everything but a few 80 column issues in the
r819xE_firmware.c file.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove another firmware header file not being used
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:37:49 +0000 (16:37 -0700)]
Staging: rtl8192e: remove another firmware header file not being used

The built-in firmware images are never used, the firmware files
are downloaded to the device through the standard firmware interface.

This removes the firmware header file as it's not ever used.
It also removes a .h file as it is not needed.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove firmware header file not being used
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:37:49 +0000 (16:37 -0700)]
Staging: rtl8192e: remove firmware header file not being used

This removes the r819xP firmware file that is never used.

The size of the built code after this patch is identical to before it.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove kernel version checks
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:37:26 +0000 (16:37 -0700)]
Staging: rtl8192e: remove kernel version checks

This removes a lot of code that is never built in to the driver.

The size of the built code after this patch is identical to before it.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove #if 0 sections
Greg Kroah-Hartman [Wed, 12 Aug 2009 23:36:38 +0000 (16:36 -0700)]
Staging: rtl8192e: remove #if 0 sections

This removes a lot of code that is never built in to the driver.

The size of the built code after this patch is identical to before it.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: compile fixes
Jeff Mahoney [Tue, 4 Aug 2009 14:26:19 +0000 (10:26 -0400)]
Staging: rtl8192e: compile fixes

This patch removes -fhard-float and the software float helpers. In-kernel
floating point is not allowed.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: remove unused functions
Greg Kroah-Hartman [Mon, 10 Aug 2009 23:33:53 +0000 (16:33 -0700)]
Staging: rtl8192e: remove unused functions

This removes a number of unused functions.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rtl8192e: fix lots of sparse warnings
Greg Kroah-Hartman [Mon, 10 Aug 2009 23:34:22 +0000 (16:34 -0700)]
Staging: rtl8192e: fix lots of sparse warnings

This removes a number of static and extern warnings that sparse
complains about.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: add Realtek 8192 PCI wireless driver
Greg Kroah-Hartman [Tue, 4 Aug 2009 22:57:55 +0000 (15:57 -0700)]
Staging: add Realtek 8192 PCI wireless driver

This wireless driver should work for the Realtek 8192 PCI devices.

It comes directly from Realtek and has been tested to work on at least
one laptop in the wild.

Cc: Anthony Wong <awong1@novell.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: pohmelfs: sync with the development tree
Evgeniy Polyakov [Fri, 28 Aug 2009 13:57:58 +0000 (17:57 +0400)]
Staging: pohmelfs: sync with the development tree

* cache coherency protocol fix
 * proper timeout handling
 * implement dump/del all config group command
  (Signed-off-by: Pierpaolo Giacomin <yrz@anche.no>)

Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: agnx: remove flush_workqueue()
Alexander Beregalov [Tue, 25 Aug 2009 13:25:44 +0000 (17:25 +0400)]
Staging: agnx: remove flush_workqueue()

mac80211 already does flush_workqueue() at stop/start and
suspend\resume.
(fix build error)

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: comedi: apci3200: fix test of ui_DelayTime range in i_APCI3200_CommandTestAn...
Roel Kluin [Tue, 25 Aug 2009 13:19:27 +0000 (15:19 +0200)]
Staging: comedi: apci3200: fix test of ui_DelayTime range in i_APCI3200_CommandTestAnalogInput()

For ui_DelayTime to be less than 1 and greater than 1023 is logically
impossible.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Bill Pemberton <wfp5p@virginia.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: rspiusb: Check usb_buffer_map_sg() retval
Roel Kluin [Sat, 22 Aug 2009 17:32:44 +0000 (19:32 +0200)]
Staging: rspiusb: Check usb_buffer_map_sg() retval

usb_buffer_map_sg() may return -1, check this directly.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Reviewed-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: panel: Add support for TI CLCD interface
Sudhakar Rajashekhara [Thu, 20 Aug 2009 22:13:18 +0000 (18:13 -0400)]
Staging: panel: Add support for TI CLCD interface

On TI DA850/OMAP-L138 EVM, HD44780 (24x2) LCD panel is being
used[1], but it is interfaced through the SoC specific LCD
interface and not through parallel port. A parallel port
driver has been developed which interfaces to the panel driver
through the SoC specific LCD interface.

Basically, both the serial and parallel interfaces supported
by the panel driver do not suit the specific interface SoC is
supporting so, a new interface type has been introduced.

Ideally the panel driver should be de-coupled from parallel
and serial port related items but this patch is something
that can be merged in the meantime.

[1]Specification of the character LCD interface on TI DA850/OMAP-L138:
http://www.ti.com/litv/pdf/sprufm0a.

Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill off the TXDMA CSR type
Alan Cox [Thu, 27 Aug 2009 10:03:38 +0000 (11:03 +0100)]
Staging: et131x: kill off the TXDMA CSR type

Go to a u32 and masks

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill off the TXDMA error type
Alan Cox [Thu, 27 Aug 2009 10:03:29 +0000 (11:03 +0100)]
Staging: et131x: kill off the TXDMA error type

This isn't actually used properly anyway

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: re-order the initpci code to match usual Linux style
Alan Cox [Thu, 27 Aug 2009 10:03:21 +0000 (11:03 +0100)]
Staging: et131x: re-order the initpci code to match usual Linux style

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: prune all the debug code
Alan Cox [Thu, 27 Aug 2009 10:03:09 +0000 (11:03 +0100)]
Staging: et131x: prune all the debug code

We don't need it, we have a perfectly good set of debug tools. For this pass
keep a few debug printks around which are "should not happen" items

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill the loopback type
Alan Cox [Thu, 27 Aug 2009 10:02:43 +0000 (11:02 +0100)]
Staging: et131x: kill the loopback type

Kill off the loopback type in the driver

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill MSI type
Alan Cox [Thu, 27 Aug 2009 10:02:34 +0000 (11:02 +0100)]
Staging: et131x: kill MSI type

Kill off the MSI structure

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: put the jagcore routines in with their users
Alan Cox [Thu, 27 Aug 2009 10:02:25 +0000 (11:02 +0100)]
Staging: et131x: put the jagcore routines in with their users

We have two trivial IRQ routines, a single statement and a real function -
relocate them. While we are at it kill the trivial to sort out soft reset
and slv bits in the same areas of code.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill the interrupt magic define and types
Alan Cox [Thu, 27 Aug 2009 10:02:12 +0000 (11:02 +0100)]
Staging: et131x: kill the interrupt magic define and types

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: clean up MP_FLAG macros
Alan Cox [Thu, 27 Aug 2009 10:02:05 +0000 (11:02 +0100)]
Staging: et131x: clean up MP_FLAG macros

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: clean up DMA10/DMA4 types
Alan Cox [Thu, 27 Aug 2009 10:01:57 +0000 (11:01 +0100)]
Staging: et131x: clean up DMA10/DMA4 types

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: clean up PM_CSR_t
Alan Cox [Thu, 27 Aug 2009 10:01:49 +0000 (11:01 +0100)]
Staging: et131x: clean up PM_CSR_t

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill the Q_ADDR struct
Alan Cox [Thu, 27 Aug 2009 10:01:42 +0000 (11:01 +0100)]
Staging: et131x: kill the Q_ADDR struct

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: quick tidy of the debug code
Alan Cox [Thu, 27 Aug 2009 10:01:31 +0000 (11:01 +0100)]
Staging: et131x: quick tidy of the debug code

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: clean up MMC_SRAM_
Alan Cox [Thu, 27 Aug 2009 10:01:22 +0000 (11:01 +0100)]
Staging: et131x: clean up MMC_SRAM_

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: sort out the mmc enable routine
Alan Cox [Thu, 27 Aug 2009 10:01:13 +0000 (11:01 +0100)]
Staging: et131x: sort out the mmc enable routine

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: eeprom remove features
Alan Cox [Thu, 27 Aug 2009 10:01:04 +0000 (11:01 +0100)]
Staging: et131x: eeprom remove features

We only read eeprom id 0, in byte mode - so the rest can go away

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: remove unused PCI identifiers
Alan Cox [Thu, 27 Aug 2009 10:00:56 +0000 (11:00 +0100)]
Staging: et131x: remove unused PCI identifiers

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: continue pruning unused fields
Alan Cox [Thu, 27 Aug 2009 10:00:47 +0000 (11:00 +0100)]
Staging: et131x: continue pruning unused fields

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: de-hungarianise a bit
Alan Cox [Thu, 27 Aug 2009 10:00:36 +0000 (11:00 +0100)]
Staging: et131x: de-hungarianise a bit

bOverrideAddress is write only so kill it rather than fix it

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: fold the diet config into the other code
Alan Cox [Thu, 27 Aug 2009 10:00:24 +0000 (11:00 +0100)]
Staging: et131x: fold the diet config into the other code

No point having a file just for that

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: config is already zeroed
Alan Cox [Thu, 27 Aug 2009 10:00:14 +0000 (11:00 +0100)]
Staging: et131x: config is already zeroed

Adapter was cleared by netdev allocation so any zero defaults do not need
writing.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: attack the config stuff
Alan Cox [Thu, 27 Aug 2009 10:00:06 +0000 (11:00 +0100)]
Staging: et131x: attack the config stuff

Prune this back as most of it isn't relevant or used

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: clean up constant rx/tx registry fields
Alan Cox [Thu, 27 Aug 2009 09:59:56 +0000 (10:59 +0100)]
Staging: et131x: clean up constant rx/tx registry fields

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: eliminate write only registry fields
Alan Cox [Thu, 27 Aug 2009 09:59:47 +0000 (10:59 +0100)]
Staging: et131x: eliminate write only registry fields

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: Eliminate RegistryDMA Cache
Alan Cox [Thu, 27 Aug 2009 09:59:37 +0000 (10:59 +0100)]
Staging: et131x: Eliminate RegistryDMA Cache

One writer, of a constant, one user .. it can go.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: CSRAddress to regs
Alan Cox [Thu, 27 Aug 2009 09:59:30 +0000 (10:59 +0100)]
Staging: et131x: CSRAddress to regs

Switch this to a Linux like naming as it occurs all over.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: Take a kref for the PCI pointer we cache
Alan Cox [Thu, 27 Aug 2009 09:59:21 +0000 (10:59 +0100)]
Staging: et131x: Take a kref for the PCI pointer we cache

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill copied PCI fields
Alan Cox [Thu, 27 Aug 2009 09:59:13 +0000 (10:59 +0100)]
Staging: et131x: kill copied PCI fields

They are all in the pcidev anyway plus are not used by the code

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: MPSend macros
Alan Cox [Thu, 27 Aug 2009 09:58:59 +0000 (10:58 +0100)]
Staging: et131x: MPSend macros

Most are unused, one is used and can be replaced with the definition

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging et131x: kill refcount
Alan Cox [Thu, 27 Aug 2009 09:58:49 +0000 (10:58 +0100)]
Staging et131x: kill refcount

The RefCount field is accessed only by a macro and the only use of it in
the tree is to read it, so it can go

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: kill unused RCV_REF macros
Alan Cox [Thu, 27 Aug 2009 09:58:37 +0000 (10:58 +0100)]
Staging: et131x: kill unused RCV_REF macros

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: power state
Alan Cox [Wed, 19 Aug 2009 17:21:56 +0000 (18:21 +0100)]
Staging: et131x: power state

This is assigned once to ndis d0, and then never changes so it is a constant
and we can zap it

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et131x: spinlocks
Alan Cox [Wed, 19 Aug 2009 17:21:50 +0000 (18:21 +0100)]
Staging: et131x: spinlocks

Switch to the more normal "flags" naming. Also fix up the nested use of
spin_lock_irqsave

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: et1310: kill pAdapter in favour of a sane name
Alan Cox [Wed, 19 Aug 2009 17:21:44 +0000 (18:21 +0100)]
Staging: et1310: kill pAdapter in favour of a sane name

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: pohmelfs: fix type errors
Alan Cox [Wed, 19 Aug 2009 16:52:08 +0000 (17:52 +0100)]
Staging: pohmelfs: fix type errors

Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: Evgeniy Polyakov <zbr@ioremap.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: pohmelfs: fix atomic type spew
Alan Cox [Wed, 19 Aug 2009 16:52:02 +0000 (17:52 +0100)]
Staging: pohmelfs: fix atomic type spew

atomic_long != atomic

Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: Evgeniy Polyakov <zbr@ioremap.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: altpciechdma: 64bit type warning fix
Alan Cox [Wed, 19 Aug 2009 16:18:04 +0000 (17:18 +0100)]
Staging: altpciechdma: 64bit type warning fix

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: iio: fix duplicate dev_attr_name
Randy Dunlap [Fri, 21 Aug 2009 20:59:08 +0000 (13:59 -0700)]
Staging: iio: fix duplicate dev_attr_name

device attr's should be static, otherwise duplicate identifiers are
created:

drivers/staging/iio/trigger/iio-trig-gpio.o:(.data+0x1c): multiple definition of `dev_attr_name'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: iio: Fix type warnings
Alan Cox [Wed, 19 Aug 2009 15:59:31 +0000 (16:59 +0100)]
Staging: iio: Fix type warnings

Signed-off-by: Alan Cox <alan@linux.intel.com>
Cc: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Add todo list for staging
Jonathan Cameron [Tue, 18 Aug 2009 17:06:33 +0000 (18:06 +0100)]
Staging: IIO: Add todo list for staging

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Initial documentation
Jonathan Cameron [Tue, 18 Aug 2009 17:06:32 +0000 (18:06 +0100)]
Staging: IIO: Initial documentation

This needs considerably more work, all comments / suggestions
welcomed.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Proof of concept gpio trigger
Jonathan Cameron [Tue, 18 Aug 2009 17:06:31 +0000 (18:06 +0100)]
Staging: IIO: Proof of concept gpio trigger

Simple example of how a gpio trigger driver would work.
Things to be added include interupt type control (high, low).

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Periodic timer based trigger
Jonathan Cameron [Tue, 18 Aug 2009 17:06:30 +0000 (18:06 +0100)]
Staging: IIO: Periodic timer based trigger

The original posting of this driver led to a discussion in
which it was commented that a better system was needed
for dealing with the many possible periodic interrupt
sources available on some SoCs.  Unfortunately that is
a big task and as far as I know, no-one has taken it
on as yet.  So in the meantime this driver is still
in here.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: max1363 add software ring buffer support using ring_sw
Jonathan Cameron [Tue, 18 Aug 2009 17:06:29 +0000 (18:06 +0100)]
Staging: IIO: max1363 add software ring buffer support using ring_sw

Changes since V2:
* Moved to new registration methodology.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: lis3l02dq ring buffer and data ready trigger support
Jonathan Cameron [Tue, 18 Aug 2009 17:06:28 +0000 (18:06 +0100)]
Staging: IIO: lis3l02dq ring buffer and data ready trigger support

Example of relatively common case of device sampling
based on internal clock and providing a data ready
signal to indicate that new data is available to be
read out.

Generic trigger approach used to allow other devices
to be sampled 'at the same time' as this the accelerometer.
This is very useful in various motion estimation algorithms.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Ring buffer: Initial pass at rarely locked ring buffer
Jonathan Cameron [Tue, 18 Aug 2009 17:06:27 +0000 (18:06 +0100)]
Staging: IIO: Ring buffer: Initial pass at rarely locked ring buffer

Please note this ring buffer implementation is very much a
work in progress (and hence RFC).  In it's current form
it is stable and reasonably efficient.  There are a couple
of unlikely cases that will lead to more data being lost
that is strictly necessary. The target was for the case
of requiring regular sampling even during user space reads.

All comments welcome.

The intention is to make this only one of several
implementations with run time selection.  For now there
is only one, so it is hard coded into the drivers using it.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Trigger support added to core.
Jonathan Cameron [Tue, 18 Aug 2009 17:06:26 +0000 (18:06 +0100)]
Staging: IIO: Trigger support added to core.

Add general registration support for IIO triggers.  These
are currently only used to initialize a 'poll' of a given
device.  Examples include the lis3l02dq's data ready signal
being used to initialize a read and gpio triggers being
used to allow externally synchronized sensor reading.

Each trigger can cause any number of 'consumer' devices
to be polled with each storing data into a related ring
buffer.

Two stage triggering is supported with 'fast' and 'slow'
paths.  The first is used for things like pulling a data
hold line high and the second for actual read which
may take far longer.

Changes since V2:
* As with IIO triggers now use a registration approach
  much closer to that of input leading to cleaner code.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: VTI sca3000 series accelerometer driver (spi)
Jonathan Cameron [Tue, 18 Aug 2009 17:06:25 +0000 (18:06 +0100)]
Staging: IIO: VTI sca3000 series accelerometer driver (spi)

Example of how a device with a hardware ring buffer is
handled within IIO.

Changes since V2:
* Moved to new registration functions giving much cleaner
  interface.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: Add generic ring buffer support to the IIO core
Jonathan Cameron [Tue, 18 Aug 2009 17:06:24 +0000 (18:06 +0100)]
Staging: IIO: Add generic ring buffer support to the IIO core

This provides a unified interface for hardware and software
ring buffers.

Changes since V2:
* Moved to a more consistent structure.  Now the ring buffer
  has an associated struct device which is a child of the
  relevant iio_dev.  This in turn has two children, one
  for the event interface and one for the access interface.
  These two interfaces are now managed via cdev structures.

* Numerous minor cleanups

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: kxsd9 accelerometer minimal support
Jonathan Cameron [Tue, 18 Aug 2009 17:06:23 +0000 (18:06 +0100)]
Staging: IIO: kxsd9 accelerometer minimal support

This provides only very minimal support for this device.
Note that an alternate driver has been posted to the input
mailing list.

When the original LMKL discussion that led to the descision
to develop IIO occured, the question on whether the differing
requirements of IIO and input drivers made it a good idea
to have unified drivers was left as an open question.
It still is.  All opinions on this question welcome.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: lis3l02dq accelerometer core support
Jonathan Cameron [Tue, 18 Aug 2009 17:06:22 +0000 (18:06 +0100)]
Staging: IIO: lis3l02dq accelerometer core support

A later patch in the series will add data ready triggering
and ring buffer support.

This core patch provides an event interface and sysfs
based reading of values.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: tsl2561 digital light sensor core support
Jonathan Cameron [Tue, 18 Aug 2009 17:06:21 +0000 (18:06 +0100)]
Staging: IIO: tsl2561 digital light sensor core support

This is a pretty minimalist example of an IIO driver.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: max1363 ADC driver
Jonathan Cameron [Tue, 18 Aug 2009 17:06:20 +0000 (18:06 +0100)]
Staging: IIO: max1363 ADC driver

Core support for MAX1361, MAX1362, MAX1363, MAX1364,
MAX1136, MAX1137, MAX1138, MAX1139, MAX1236, MAX1237,
MAX1238, MAX1239.

Ring buffer support later in series.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoStaging: IIO: core support for device registration and management
Jonathan Cameron [Tue, 18 Aug 2009 17:06:19 +0000 (18:06 +0100)]
Staging: IIO: core support for device registration and management

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agostaging: Make some structures static
Julia Lawall [Fri, 14 Aug 2009 20:10:00 +0000 (22:10 +0200)]
staging: Make some structures static

This was done using a semantic patch (http://coccinelle.lip6.fr/) that
checks that the declaration is not inside a function definition, that the
defined variable is not exported using EXPORTED_SYMBOL, etc, and that the
defined variable does not occur in any other file.  If these conditions
hold, static is added before the declaration.

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>