aboutsummaryrefslogtreecommitdiffstats
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2010-02-07 23:00:37 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2010-02-07 23:00:37 -0800
commite9ed0a600015c8d12a37e351549a2a019002da79 (patch)
tree0416d93d632b6fe31fba975cdae1b359b75dc988
parente7674b62d37a2cb3fbf2589a69936a3771de4465 (diff)
downloadpatches-e9ed0a600015c8d12a37e351549a2a019002da79.tar.gz
staging patches and a driver-core one.
-rw-r--r--driver-core/driver-core-fix-race-condition-in-get_device_parent.patch118
-rw-r--r--series12
-rw-r--r--staging/staging-comedi-dt2815-checkpatch-cleanups.patch190
-rw-r--r--staging/staging-comedi-fix-brace-coding-style-in-comedi_fops.c.patch35
-rw-r--r--staging/staging-comedi-fix-brace-coding-style-issues-in-ni_labpc.c.patch131
-rw-r--r--staging/staging-comedi-ni_pcidio-checkpatch-cleanups.patch256
-rw-r--r--staging/staging-comedi-rti802-checkpatch-cleanups.patch48
-rw-r--r--staging/staging-comedi-ssc_dnp-fixed-a-brace-coding-style-issue.patch35
-rw-r--r--staging/staging-fix-more-continuation-line-formats.patch103
-rw-r--r--staging/staging-rt2860-correct-onstack-wait_queue_head-declaration.patch32
-rw-r--r--staging/staging-rtl8192e-fix-spacing-style-issues-in-r8180_93cx6.c.patch150
-rw-r--r--staging/staging-samsung-laptop-fix-coding-style-issues.patch52
-rw-r--r--staging/staging-wlan-ng-add-select-wext_priv-to-kconfig-to-prevent-build-failure.patch1
-rw-r--r--staging/staging-wlan-ng-fix-to-allow-driver-to-be-built-on-2.6.33-rc6.patch32
14 files changed, 1195 insertions, 0 deletions
diff --git a/driver-core/driver-core-fix-race-condition-in-get_device_parent.patch b/driver-core/driver-core-fix-race-condition-in-get_device_parent.patch
new file mode 100644
index 00000000000000..a101fa8bf182be
--- /dev/null
+++ b/driver-core/driver-core-fix-race-condition-in-get_device_parent.patch
@@ -0,0 +1,118 @@
+From tj@kernel.org Sun Feb 7 22:56:35 2010
+From: Tejun Heo <tj@kernel.org>
+Date: Fri, 05 Feb 2010 17:57:02 +0900
+Subject: driver-core: fix race condition in get_device_parent()
+To: Greg KH <gregkh@suse.de>, Colin Guthrie <cguthrie@mandriva.org>, Kay Sievers <kay.sievers@vrfy.org>
+Message-ID: <4B6BDD5E.7080904@kernel.org>
+
+
+sysfs is creating several devices in cuse class concurrently and with
+CONFIG_SYSFS_DEPRECATED turned off, it triggers the following oops.
+
+ BUG: unable to handle kernel NULL pointer dereference at 0000000000000038
+ IP: [<ffffffff81158b0a>] sysfs_addrm_start+0x4a/0xf0
+ PGD 75bb067 PUD 75be067 PMD 0
+ Oops: 0000 [#1] PREEMPT SMP
+ last sysfs file: /sys/devices/system/cpu/cpu7/topology/core_siblings
+ CPU 1
+ Modules linked in: cuse fuse
+ Pid: 4737, comm: osspd Not tainted 2.6.31-work #77
+ RIP: 0010:[<ffffffff81158b0a>] [<ffffffff81158b0a>] sysfs_addrm_start+0x4a/0xf0
+ RSP: 0018:ffff88000042f8f8 EFLAGS: 00010296
+ RAX: ffff88000042ffd8 RBX: 0000000000000000 RCX: 0000000000000000
+ RDX: 0000000000000000 RSI: ffff880007eef660 RDI: 0000000000000001
+ RBP: ffff88000042f918 R08: 0000000000000000 R09: 0000000000000000
+ R10: 0000000000000001 R11: ffffffff81158b0a R12: ffff88000042f928
+ R13: 00000000fffffff4 R14: 0000000000000000 R15: ffff88000042f9a0
+ FS: 00007fe93905a950(0000) GS:ffff880008600000(0000) knlGS:0000000000000000
+ CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
+ CR2: 0000000000000038 CR3: 00000000077c9000 CR4: 00000000000006e0
+ DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
+ DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
+ Process osspd (pid: 4737, threadinfo ffff88000042e000, task ffff880007eef040)
+ Stack:
+ ffff880005da10e8 0000000011cc8d6e ffff88000042f928 ffff880003d28a28
+ <0> ffff88000042f988 ffffffff811592d7 0000000000000000 0000000000000000
+ <0> 0000000000000000 0000000000000000 ffff88000042f958 0000000011cc8d6e
+ Call Trace:
+ [<ffffffff811592d7>] create_dir+0x67/0xe0
+ [<ffffffff811593a8>] sysfs_create_dir+0x58/0xb0
+ [<ffffffff8128ca7c>] ? kobject_add_internal+0xcc/0x220
+ [<ffffffff812942e1>] ? vsnprintf+0x3c1/0xb90
+ [<ffffffff8128cab7>] kobject_add_internal+0x107/0x220
+ [<ffffffff8128cd37>] kobject_add_varg+0x47/0x80
+ [<ffffffff8128ce53>] kobject_add+0x53/0x90
+ [<ffffffff81357d84>] device_add+0xd4/0x690
+ [<ffffffff81356c2b>] ? dev_set_name+0x4b/0x70
+ [<ffffffffa001a884>] cuse_process_init_reply+0x2b4/0x420 [cuse]
+ ...
+
+The problem is that kobject_add_internal() first adds a kobject to the
+kset and then try to create sysfs directory for it. If the creation
+fails, it remove the kobject from the kset. get_device_parent()
+accesses class_dirs kset while only holding class_dirs.list_lock to
+see whether the cuse class dir exists. But when it exists, it may not
+have finished initialization yet or may fail and get removed soon. In
+the above case, the former happened so the second one ends up trying
+to create subdirectory under NULL sysfs_dirent.
+
+Fix it by grabbing a mutex in get_device_parent().
+
+Signed-off-by: Tejun Heo <tj@kernel.org>
+Reported-by: Colin Guthrie <cguthrie@mandriva.org>
+Cc: stable <stable@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ drivers/base/core.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+--- a/drivers/base/core.c
++++ b/drivers/base/core.c
+@@ -607,6 +607,7 @@ static struct kobject *get_device_parent
+ int retval;
+
+ if (dev->class) {
++ static DEFINE_MUTEX(gdp_mutex);
+ struct kobject *kobj = NULL;
+ struct kobject *parent_kobj;
+ struct kobject *k;
+@@ -623,6 +624,8 @@ static struct kobject *get_device_parent
+ else
+ parent_kobj = &parent->kobj;
+
++ mutex_lock(&gdp_mutex);
++
+ /* find our class-directory at the parent and reference it */
+ spin_lock(&dev->class->p->class_dirs.list_lock);
+ list_for_each_entry(k, &dev->class->p->class_dirs.list, entry)
+@@ -631,20 +634,26 @@ static struct kobject *get_device_parent
+ break;
+ }
+ spin_unlock(&dev->class->p->class_dirs.list_lock);
+- if (kobj)
++ if (kobj) {
++ mutex_unlock(&gdp_mutex);
+ return kobj;
++ }
+
+ /* or create a new class-directory at the parent device */
+ k = kobject_create();
+- if (!k)
++ if (!k) {
++ mutex_unlock(&gdp_mutex);
+ return NULL;
++ }
+ k->kset = &dev->class->p->class_dirs;
+ retval = kobject_add(k, parent_kobj, "%s", dev->class->name);
+ if (retval < 0) {
++ mutex_unlock(&gdp_mutex);
+ kobject_put(k);
+ return NULL;
+ }
+ /* do not emit an uevent for this simple "glue" directory */
++ mutex_unlock(&gdp_mutex);
+ return k;
+ }
+
diff --git a/series b/series
index 8b9e34ebc0e394..50ac124d17153c 100644
--- a/series
+++ b/series
@@ -46,6 +46,7 @@ usb.current/usb-gadget-fix-eem-gadget-crc-usage.patch
#############################################
# Driver core patches for after 2.6.33 is out
#############################################
+driver-core/driver-core-fix-race-condition-in-get_device_parent.patch
driver-core/kobject-example-spelling-fixes.patch
driver-core/kset-example-spelling-fixes.patch
driver-core/driver-core-add-platform_create_bundle-helper.patch
@@ -540,4 +541,15 @@ staging/staging-comedi-ni_65xx-checkpatch-cleanups.patch
staging/staging-comedi-fl512-checkpatch-cleanups.patch
staging/staging-comedi-adq12b-checkpatch-cleanups-2.patch
staging/staging-fix-continuation-line-formats.patch
+staging/staging-wlan-ng-fix-to-allow-driver-to-be-built-on-2.6.33-rc6.patch
+staging/staging-fix-more-continuation-line-formats.patch
+staging/staging-comedi-fix-brace-coding-style-issues-in-ni_labpc.c.patch
+staging/staging-comedi-fix-brace-coding-style-in-comedi_fops.c.patch
+staging/staging-rtl8192e-fix-spacing-style-issues-in-r8180_93cx6.c.patch
+staging/staging-rt2860-correct-onstack-wait_queue_head-declaration.patch
+staging/staging-samsung-laptop-fix-coding-style-issues.patch
+staging/staging-comedi-dt2815-checkpatch-cleanups.patch
+staging/staging-comedi-rti802-checkpatch-cleanups.patch
+staging/staging-comedi-ni_pcidio-checkpatch-cleanups.patch
+staging/staging-comedi-ssc_dnp-fixed-a-brace-coding-style-issue.patch
diff --git a/staging/staging-comedi-dt2815-checkpatch-cleanups.patch b/staging/staging-comedi-dt2815-checkpatch-cleanups.patch
new file mode 100644
index 00000000000000..0bfe9d6a29da7d
--- /dev/null
+++ b/staging/staging-comedi-dt2815-checkpatch-cleanups.patch
@@ -0,0 +1,190 @@
+From b.adolphi@googlemail.com Sun Feb 7 20:39:32 2010
+From: Benjamin Adolphi <b.adolphi@googlemail.com>
+Date: Sat, 6 Feb 2010 15:02:50 +0100
+Subject: Staging: comedi: dt2815: Checkpatch cleanups
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: Benjamin Adolphi <b.adolphi@gmail.com>
+Message-ID: <1265464970-8206-1-git-send-email-b.adolphi@gmail.com>
+
+
+This fixes all checkpatch issues in the dt2815 comedi driver.
+
+Signed-off-by: Benjamin Adolphi <b.adolphi@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/dt2815.c | 89 ++++++++++++++------------------
+ 1 file changed, 39 insertions(+), 50 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/dt2815.c
++++ b/drivers/staging/comedi/drivers/dt2815.c
+@@ -34,19 +34,19 @@ Configuration options:
+ [0] - I/O port base base address
+ [1] - IRQ (unused)
+ [2] - Voltage unipolar/bipolar configuration
+- 0 == unipolar 5V (0V -- +5V)
+- 1 == bipolar 5V (-5V -- +5V)
++ 0 == unipolar 5V (0V -- +5V)
++ 1 == bipolar 5V (-5V -- +5V)
+ [3] - Current offset configuration
+- 0 == disabled (0mA -- +32mAV)
+- 1 == enabled (+4mA -- +20mAV)
++ 0 == disabled (0mA -- +32mAV)
++ 1 == enabled (+4mA -- +20mAV)
+ [4] - Firmware program configuration
+- 0 == program 1 (see manual table 5-4)
+- 1 == program 2 (see manual table 5-4)
+- 2 == program 3 (see manual table 5-4)
+- 3 == program 4 (see manual table 5-4)
++ 0 == program 1 (see manual table 5-4)
++ 1 == program 2 (see manual table 5-4)
++ 2 == program 3 (see manual table 5-4)
++ 3 == program 4 (see manual table 5-4)
+ [5] - Analog output 0 range configuration
+- 0 == voltage
+- 1 == current
++ 0 == voltage
++ 1 == current
+ [6] - Analog output 1 range configuration (same options)
+ [7] - Analog output 2 range configuration (same options)
+ [8] - Analog output 3 range configuration (same options)
+@@ -61,17 +61,11 @@ Configuration options:
+ #include <linux/ioport.h>
+ #include <linux/delay.h>
+
+-static const struct comedi_lrange range_dt2815_ao_32_current = { 1, {
+- RANGE_mA(0,
+- 32)
+- }
+-};
++static const struct comedi_lrange
++ range_dt2815_ao_32_current = {1, {RANGE_mA(0, 32)} };
+
+-static const struct comedi_lrange range_dt2815_ao_20_current = { 1, {
+- RANGE_mA(4,
+- 20)
+- }
+-};
++static const struct comedi_lrange
++ range_dt2815_ao_20_current = {1, {RANGE_mA(4, 20)} };
+
+ #define DT2815_SIZE 2
+
+@@ -118,9 +112,8 @@ static int dt2815_ao_insn_read(struct co
+ int i;
+ int chan = CR_CHAN(insn->chanspec);
+
+- for (i = 0; i < insn->n; i++) {
++ for (i = 0; i < insn->n; i++)
+ data[i] = devpriv->ao_readback[chan];
+- }
+
+ return i;
+ }
+@@ -139,9 +132,8 @@ static int dt2815_ao_insn(struct comedi_
+
+ status = dt2815_wait_for_status(dev, 0x00);
+ if (status != 0) {
+- printk
+- ("dt2815: failed to write low byte on %d reason %x\n",
+- chan, status);
++ printk(KERN_WARNING "dt2815: failed to write low byte "
++ "on %d reason %x\n", chan, status);
+ return -EBUSY;
+ }
+
+@@ -149,9 +141,8 @@ static int dt2815_ao_insn(struct comedi_
+
+ status = dt2815_wait_for_status(dev, 0x10);
+ if (status != 0x10) {
+- printk
+- ("dt2815: failed to write high byte on %d reason %x\n",
+- chan, status);
++ printk(KERN_WARNING "dt2815: failed to write high byte "
++ "on %d reason %x\n", chan, status);
+ return -EBUSY;
+ }
+ devpriv->ao_readback[chan] = data[i];
+@@ -163,24 +154,24 @@ static int dt2815_ao_insn(struct comedi_
+ options[0] Board base address
+ options[1] IRQ (not applicable)
+ options[2] Voltage unipolar/bipolar configuration
+- 0 == unipolar 5V (0V -- +5V)
+- 1 == bipolar 5V (-5V -- +5V)
++ 0 == unipolar 5V (0V -- +5V)
++ 1 == bipolar 5V (-5V -- +5V)
+ options[3] Current offset configuration
+- 0 == disabled (0mA -- +32mAV)
+- 1 == enabled (+4mA -- +20mAV)
++ 0 == disabled (0mA -- +32mAV)
++ 1 == enabled (+4mA -- +20mAV)
+ options[4] Firmware program configuration
+- 0 == program 1 (see manual table 5-4)
+- 1 == program 2 (see manual table 5-4)
+- 2 == program 3 (see manual table 5-4)
+- 3 == program 4 (see manual table 5-4)
++ 0 == program 1 (see manual table 5-4)
++ 1 == program 2 (see manual table 5-4)
++ 2 == program 3 (see manual table 5-4)
++ 3 == program 4 (see manual table 5-4)
+ options[5] Analog output 0 range configuration
+- 0 == voltage
+- 1 == current
++ 0 == voltage
++ 1 == current
+ options[6] Analog output 1 range configuration
+ ...
+ options[12] Analog output 7 range configuration
+- 0 == voltage
+- 1 == current
++ 0 == voltage
++ 1 == current
+ */
+
+ static int dt2815_attach(struct comedi_device *dev, struct comedi_devconfig *it)
+@@ -191,9 +182,9 @@ static int dt2815_attach(struct comedi_d
+ unsigned long iobase;
+
+ iobase = it->options[0];
+- printk("comedi%d: dt2815: 0x%04lx ", dev->minor, iobase);
++ printk(KERN_INFO "comedi%d: dt2815: 0x%04lx ", dev->minor, iobase);
+ if (!request_region(iobase, DT2815_SIZE, "dt2815")) {
+- printk("I/O port conflict\n");
++ printk(KERN_WARNING "I/O port conflict\n");
+ return -EIO;
+ }
+
+@@ -236,19 +227,17 @@ static int dt2815_attach(struct comedi_d
+ unsigned int program;
+ program = (it->options[4] & 0x3) << 3 | 0x7;
+ outb(program, dev->iobase + DT2815_DATA);
+- printk(", program: 0x%x (@t=%d)\n", program, i);
++ printk(KERN_INFO ", program: 0x%x (@t=%d)\n",
++ program, i);
+ break;
+ } else if (status != 0x00) {
+- printk("dt2815: unexpected status 0x%x (@t=%d)\n",
+- status, i);
+- if (status & 0x60) {
++ printk(KERN_WARNING "dt2815: unexpected status 0x%x "
++ "(@t=%d)\n", status, i);
++ if (status & 0x60)
+ outb(0x00, dev->iobase + DT2815_STATUS);
+- }
+ }
+ }
+
+- printk("\n");
+-
+ return 0;
+ }
+
+@@ -260,7 +249,7 @@ static void dt2815_free_resources(struct
+
+ static int dt2815_detach(struct comedi_device *dev)
+ {
+- printk("comedi%d: dt2815: remove\n", dev->minor);
++ printk(KERN_INFO "comedi%d: dt2815: remove\n", dev->minor);
+
+ dt2815_free_resources(dev);
+
diff --git a/staging/staging-comedi-fix-brace-coding-style-in-comedi_fops.c.patch b/staging/staging-comedi-fix-brace-coding-style-in-comedi_fops.c.patch
new file mode 100644
index 00000000000000..60b8d1161b6f9d
--- /dev/null
+++ b/staging/staging-comedi-fix-brace-coding-style-in-comedi_fops.c.patch
@@ -0,0 +1,35 @@
+From paul@uprocera.co.uk Sun Feb 7 20:32:23 2010
+From: Paul Elms <paul@uprocera.co.uk>
+Date: Thu, 04 Feb 2010 08:24:28 +0000
+Subject: Staging: comedi: fix brace coding style in comedi_fops.c
+To: gregkh@suse.de, wfp5p@virginia.edu, shawn.bohrer@gmail.com, fmhess@users.sourceforge.net
+Message-ID: <1265271868.2483.2.camel@arthur>
+
+From: Paul Elms <paul@uprocera.co.uk>
+
+This patch to the comedi_fops.c file fixes a brace warning found by the checkpatch.pl tool
+
+Signed-off-by: Paul Elms <paul@uprocera.co.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/comedi_fops.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+--- a/drivers/staging/comedi/comedi_fops.c
++++ b/drivers/staging/comedi/comedi_fops.c
+@@ -2004,12 +2004,10 @@ void comedi_event(struct comedi_device *
+ if (async->cb_mask & s->async->events) {
+ if (comedi_get_subdevice_runflags(s) & SRF_USER) {
+ wake_up_interruptible(&async->wait_head);
+- if (s->subdev_flags & SDF_CMD_READ) {
++ if (s->subdev_flags & SDF_CMD_READ)
+ kill_fasync(&dev->async_queue, SIGIO, POLL_IN);
+- }
+- if (s->subdev_flags & SDF_CMD_WRITE) {
++ if (s->subdev_flags & SDF_CMD_WRITE)
+ kill_fasync(&dev->async_queue, SIGIO, POLL_OUT);
+- }
+ } else {
+ if (async->cb_func)
+ async->cb_func(s->async->events, async->cb_arg);
diff --git a/staging/staging-comedi-fix-brace-coding-style-issues-in-ni_labpc.c.patch b/staging/staging-comedi-fix-brace-coding-style-issues-in-ni_labpc.c.patch
new file mode 100644
index 00000000000000..d822fa0c554790
--- /dev/null
+++ b/staging/staging-comedi-fix-brace-coding-style-issues-in-ni_labpc.c.patch
@@ -0,0 +1,131 @@
+From tony@tonyburrows.uklinux.net Sun Feb 7 20:29:15 2010
+From: tony <tony@tonyburrows.uklinux.net>
+Date: Tue, 02 Feb 2010 16:52:49 +0000
+Subject: Staging: comedi: fix brace coding style issues in ni_labpc.c
+To: Greg Kroah-Hartman <gregkh@suse.de>, Bill Pemberton <wfp5p@virginia.edu>
+Message-ID: <4B685861.1040406@tonyburrows.uklinux.net>
+
+From: tony burrows <tony@tonyburrows.com>
+
+This patch fixes all of the brace style warnings found by the
+checkpatch.pl tool
+
+Signed-off-by: Tony Burrows <tony@tonyburrows.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/ni_labpc.c | 36 ++++++++++++------------------
+ 1 file changed, 15 insertions(+), 21 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/ni_labpc.c
++++ b/drivers/staging/comedi/drivers/ni_labpc.c
+@@ -483,12 +483,10 @@ int labpc_common_attach(struct comedi_de
+
+ printk("comedi%d: ni_labpc: %s, io 0x%lx", dev->minor, thisboard->name,
+ iobase);
+- if (irq) {
++ if (irq)
+ printk(", irq %u", irq);
+- }
+- if (dma_chan) {
++ if (dma_chan)
+ printk(", dma %u", dma_chan);
+- }
+ printk("\n");
+
+ if (iobase == 0) {
+@@ -585,8 +583,9 @@ int labpc_common_attach(struct comedi_de
+ /* analog output */
+ s = dev->subdevices + 1;
+ if (thisboard->has_ao) {
+-/* Could provide command support, except it only has a one sample
+- * hardware buffer for analog output and no underrun flag. */
++ /* Could provide command support, except it only has a
++ * one sample hardware buffer for analog output and no
++ * underrun flag. */
+ s->type = COMEDI_SUBD_AO;
+ s->subdev_flags = SDF_READABLE | SDF_WRITABLE | SDF_GROUND;
+ s->n_chan = NUM_AO_CHAN;
+@@ -608,7 +607,8 @@ int labpc_common_attach(struct comedi_de
+
+ /* 8255 dio */
+ s = dev->subdevices + 2;
+- /* if board uses io memory we have to give a custom callback function to the 8255 driver */
++ /* if board uses io memory we have to give a custom callback
++ * function to the 8255 driver */
+ if (thisboard->memory_mapped_io)
+ subdev_8255_init(dev, s, labpc_dio_mem_callback,
+ (unsigned long)(dev->iobase + DIO_BASE_REG));
+@@ -640,14 +640,12 @@ int labpc_common_attach(struct comedi_de
+ s->insn_read = labpc_eeprom_read_insn;
+ s->insn_write = labpc_eeprom_write_insn;
+
+- for (i = 0; i < EEPROM_SIZE; i++) {
++ for (i = 0; i < EEPROM_SIZE; i++)
+ devpriv->eeprom_data[i] = labpc_eeprom_read(dev, i);
+- }
+ #ifdef LABPC_DEBUG
+ printk(" eeprom:");
+- for (i = 0; i < EEPROM_SIZE; i++) {
++ for (i = 0; i < EEPROM_SIZE; i++)
+ printk(" %i:0x%x ", i, devpriv->eeprom_data[i]);
+- }
+ printk("\n");
+ #endif
+ } else
+@@ -679,9 +677,8 @@ static int labpc_attach(struct comedi_de
+ case pci_bustype:
+ #ifdef CONFIG_COMEDI_PCI
+ retval = labpc_find_device(dev, it->options[0], it->options[1]);
+- if (retval < 0) {
++ if (retval < 0)
+ return retval;
+- }
+ retval = mite_setup(devpriv->mite);
+ if (retval < 0)
+ return retval;
+@@ -1008,9 +1005,9 @@ static int labpc_ai_cmdtest(struct comed
+ err++;
+ }
+
+- if (!cmd->chanlist_len) {
++ if (!cmd->chanlist_len)
+ err++;
+- }
++
+ if (cmd->scan_end_arg != cmd->chanlist_len) {
+ cmd->scan_end_arg = cmd->chanlist_len;
+ err++;
+@@ -1105,9 +1102,8 @@ static int labpc_ai_cmd(struct comedi_de
+ devpriv->write_byte(devpriv->command3_bits, dev->iobase + COMMAND3_REG);
+
+ /* initialize software conversion count */
+- if (cmd->stop_src == TRIG_COUNT) {
++ if (cmd->stop_src == TRIG_COUNT)
+ devpriv->count = cmd->stop_arg * cmd->chanlist_len;
+- }
+ /* setup hardware conversion counter */
+ if (cmd->stop_src == TRIG_EXT) {
+ /* load counter a1 with count of 3 (pc+ manual says this is minimum allowed) using mode 0 */
+@@ -1479,9 +1475,8 @@ static void labpc_drain_dma(struct comed
+ }
+
+ /* write data to comedi buffer */
+- for (i = 0; i < num_points; i++) {
++ for (i = 0; i < num_points; i++)
+ cfc_write_to_buffer(s, devpriv->dma_buffer[i]);
+- }
+ if (async->cmd.stop_src == TRIG_COUNT)
+ devpriv->count -= num_points;
+
+@@ -1864,9 +1859,8 @@ static unsigned int labpc_serial_in(stru
+ udelay(1);
+ devpriv->status2_bits =
+ devpriv->read_byte(dev->iobase + STATUS2_REG);
+- if (devpriv->status2_bits & EEPROM_OUT_BIT) {
++ if (devpriv->status2_bits & EEPROM_OUT_BIT)
+ value |= 1 << (value_width - i);
+- }
+ }
+
+ return value;
diff --git a/staging/staging-comedi-ni_pcidio-checkpatch-cleanups.patch b/staging/staging-comedi-ni_pcidio-checkpatch-cleanups.patch
new file mode 100644
index 00000000000000..db314c2cc4300a
--- /dev/null
+++ b/staging/staging-comedi-ni_pcidio-checkpatch-cleanups.patch
@@ -0,0 +1,256 @@
+From b.adolphi@googlemail.com Sun Feb 7 20:41:49 2010
+From: Benjamin Adolphi <b.adolphi@googlemail.com>
+Date: Sat, 6 Feb 2010 16:17:06 +0100
+Subject: Staging: comedi: ni_pcidio: Checkpatch cleanups
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: Benjamin Adolphi <b.adolphi@gmail.com>
+Message-ID: <1265469426-20909-1-git-send-email-b.adolphi@gmail.com>
+
+
+This fixes almost all checkpatch issues in the ni_pcidio comedi driver.
+
+Signed-off-by: Benjamin Adolphi <b.adolphi@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/ni_pcidio.c | 83 +++++++++++++++--------------
+ 1 file changed, 44 insertions(+), 39 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/ni_pcidio.c
++++ b/drivers/staging/comedi/drivers/ni_pcidio.c
+@@ -1,8 +1,8 @@
+ /*
+ comedi/drivers/ni_pcidio.c
+ driver for National Instruments PCI-DIO-96/PCI-6508
+- National Instruments PCI-DIO-32HS
+- National Instruments PCI-6503
++ National Instruments PCI-DIO-32HS
++ National Instruments PCI-6503
+
+ COMEDI - Linux Control and Measurement Device Interface
+ Copyright (C) 1999,2002 David A. Schleef <ds@schleef.org>
+@@ -518,7 +518,8 @@ static irqreturn_t nidio_interrupt(int i
+ ni_pcidio_print_status(status);
+
+ /* printk("buf[0]=%08x\n",*(unsigned int *)async->prealloc_buf); */
+- /* printk("buf[4096]=%08x\n",*(unsigned int *)(async->prealloc_buf+4096)); */
++ /* printk("buf[4096]=%08x\n",
++ *(unsigned int *)(async->prealloc_buf+4096)); */
+
+ spin_lock_irqsave(&devpriv->mite_channel_lock, irq_flags);
+ if (devpriv->di_mite_chan)
+@@ -526,7 +527,9 @@ static irqreturn_t nidio_interrupt(int i
+ #ifdef MITE_DEBUG
+ mite_print_chsr(m_status);
+ #endif
+- /* printk("mite_bytes_transferred: %d\n",mite_bytes_transferred(mite,DI_DMA_CHAN)); */
++ /* printk("mite_bytes_transferred: %d\n",
++ mite_bytes_transferred(mite,DI_DMA_CHAN)); */
++
+ /* mite_dump_regs(mite); */
+ if (m_status & CHSR_INT) {
+ if (m_status & CHSR_LINKC) {
+@@ -565,7 +568,8 @@ static irqreturn_t nidio_interrupt(int i
+ DPRINTK("too much work in interrupt\n");
+ writeb(0x00,
+ devpriv->mite->daq_io_addr +
+- Master_DMA_And_Interrupt_Control);
++ Master_DMA_And_Interrupt_Control
++ );
+ goto out;
+ }
+ AuxData =
+@@ -579,8 +583,10 @@ static irqreturn_t nidio_interrupt(int i
+ flags = readb(devpriv->mite->daq_io_addr +
+ Group_1_Flags);
+ }
+- /* DPRINTK("buf_int_count: %d\n",async->buf_int_count); */
+- /* DPRINTK("1) IntEn=%d,flags=%d,status=%d\n",IntEn,flags,status); */
++ /* DPRINTK("buf_int_count: %d\n",
++ async->buf_int_count); */
++ /* DPRINTK("1) IntEn=%d,flags=%d,status=%d\n",
++ IntEn,flags,status); */
+ /* ni_pcidio_print_flags(flags); */
+ /* ni_pcidio_print_status(status); */
+ async->events |= COMEDI_CB_BLOCK;
+@@ -627,8 +633,8 @@ static irqreturn_t nidio_interrupt(int i
+ flags = readb(devpriv->mite->daq_io_addr + Group_1_Flags);
+ status = readb(devpriv->mite->daq_io_addr +
+ Interrupt_And_Window_Status);
+- /* DPRINTK("loop end: IntEn=0x%02x,flags=0x%02x,status=0x%02x\n", */
+- /* IntEn,flags,status); */
++ /* DPRINTK("loop end: IntEn=0x%02x,flags=0x%02x,"
++ "status=0x%02x\n", IntEn, flags, status); */
+ /* ni_pcidio_print_flags(flags); */
+ /* ni_pcidio_print_status(status); */
+ }
+@@ -655,11 +661,10 @@ static void ni_pcidio_print_flags(unsign
+ {
+ int i;
+
+- printk("group_1_flags:");
++ printk(KERN_INFO "group_1_flags:");
+ for (i = 7; i >= 0; i--) {
+- if (flags & (1 << i)) {
++ if (flags & (1 << i))
+ printk(" %s", flags_strings[i]);
+- }
+ }
+ printk("\n");
+ }
+@@ -673,11 +678,10 @@ static void ni_pcidio_print_status(unsig
+ {
+ int i;
+
+- printk("group_status:");
++ printk(KERN_INFO "group_status:");
+ for (i = 7; i >= 0; i--) {
+- if (flags & (1 << i)) {
++ if (flags & (1 << i))
+ printk(" %s", status_strings[i]);
+- }
+ }
+ printk("\n");
+ }
+@@ -793,7 +797,8 @@ static int ni_pcidio_cmdtest(struct come
+ if (err)
+ return 1;
+
+- /* step 2: make sure trigger sources are unique and mutually compatible */
++ /* step 2: make sure trigger sources are unique and mutually
++ compatible */
+
+ /* note that mutual compatibility is not an issue here */
+ if (cmd->start_src != TRIG_NOW && cmd->start_src != TRIG_INT)
+@@ -974,7 +979,8 @@ static int ni_pcidio_cmd(struct comedi_d
+
+ /* clear and enable interrupts */
+ writeb(0xff, devpriv->mite->daq_io_addr + Group_1_First_Clear);
+- /* writeb(ClearExpired,devpriv->mite->daq_io_addr+Group_1_Second_Clear); */
++ /* writeb(ClearExpired,
++ devpriv->mite->daq_io_addr+Group_1_Second_Clear); */
+
+ writeb(IntEn, devpriv->mite->daq_io_addr + Interrupt_Control);
+ writeb(0x03,
+@@ -1052,7 +1058,7 @@ static int ni_pcidio_change(struct comed
+ }
+
+ static int pci_6534_load_fpga(struct comedi_device *dev, int fpga_index,
+- u8 * data, int data_len)
++ u8 *data, int data_len)
+ {
+ static const int timeout = 1000;
+ int i, j;
+@@ -1066,9 +1072,8 @@ static int pci_6534_load_fpga(struct com
+ udelay(1);
+ }
+ if (i == timeout) {
+- printk
+- ("ni_pcidio: failed to load fpga %i, waiting for status 0x2\n",
+- fpga_index);
++ printk(KERN_WARNING "ni_pcidio: failed to load fpga %i, "
++ "waiting for status 0x2\n", fpga_index);
+ return -EIO;
+ }
+ writew(0x80 | fpga_index,
+@@ -1079,9 +1084,8 @@ static int pci_6534_load_fpga(struct com
+ udelay(1);
+ }
+ if (i == timeout) {
+- printk
+- ("ni_pcidio: failed to load fpga %i, waiting for status 0x3\n",
+- fpga_index);
++ printk(KERN_WARNING "ni_pcidio: failed to load fpga %i, "
++ "waiting for status 0x3\n", fpga_index);
+ return -EIO;
+ }
+ for (j = 0; j + 1 < data_len;) {
+@@ -1174,9 +1178,10 @@ static int nidio_attach(struct comedi_de
+ int n_subdevices;
+ unsigned int irq;
+
+- printk("comedi%d: nidio:", dev->minor);
++ printk(KERN_INFO "comedi%d: nidio:", dev->minor);
+
+- if ((ret = alloc_private(dev, sizeof(struct nidio96_private))) < 0)
++ ret = alloc_private(dev, sizeof(struct nidio96_private));
++ if (ret < 0)
+ return ret;
+ spin_lock_init(&devpriv->mite_channel_lock);
+
+@@ -1186,7 +1191,7 @@ static int nidio_attach(struct comedi_de
+
+ ret = mite_setup(devpriv->mite);
+ if (ret < 0) {
+- printk("error setting up mite\n");
++ printk(KERN_WARNING "error setting up mite\n");
+ return ret;
+ }
+ comedi_set_hw_dev(dev, &devpriv->mite->pcidev->dev);
+@@ -1196,18 +1201,19 @@ static int nidio_attach(struct comedi_de
+
+ dev->board_name = this_board->name;
+ irq = mite_irq(devpriv->mite);
+- printk(" %s", dev->board_name);
++ printk(KERN_INFO " %s", dev->board_name);
+ if (this_board->uses_firmware) {
+ ret = pci_6534_upload_firmware(dev, it->options);
+ if (ret < 0)
+ return ret;
+ }
+- if (!this_board->is_diodaq) {
++ if (!this_board->is_diodaq)
+ n_subdevices = this_board->n_8255;
+- } else {
++ else
+ n_subdevices = 1;
+- }
+- if ((ret = alloc_subdevices(dev, n_subdevices)) < 0)
++
++ ret = alloc_subdevices(dev, n_subdevices);
++ if (ret < 0)
+ return ret;
+
+ if (!this_board->is_diodaq) {
+@@ -1220,7 +1226,7 @@ static int nidio_attach(struct comedi_de
+ }
+ } else {
+
+- printk(" rev=%d",
++ printk(KERN_INFO " rev=%d",
+ readb(devpriv->mite->daq_io_addr + Chip_Version));
+
+ s = dev->subdevices + 0;
+@@ -1253,9 +1259,9 @@ static int nidio_attach(struct comedi_de
+
+ ret = request_irq(irq, nidio_interrupt, IRQF_SHARED,
+ "ni_pcidio", dev);
+- if (ret < 0) {
+- printk(" irq not available");
+- }
++ if (ret < 0)
++ printk(KERN_WARNING " irq not available");
++
+ dev->irq = irq;
+ }
+
+@@ -1269,9 +1275,8 @@ static int nidio_detach(struct comedi_de
+ int i;
+
+ if (this_board && !this_board->is_diodaq) {
+- for (i = 0; i < this_board->n_8255; i++) {
++ for (i = 0; i < this_board->n_8255; i++)
+ subdev_8255_cleanup(dev, dev->subdevices + i);
+- }
+ }
+
+ if (dev->irq)
+@@ -1310,7 +1315,7 @@ static int nidio_find_device(struct come
+ }
+ }
+ }
+- printk("no device found\n");
++ printk(KERN_WARNING "no device found\n");
+ mite_list_devices();
+ return -EIO;
+ }
diff --git a/staging/staging-comedi-rti802-checkpatch-cleanups.patch b/staging/staging-comedi-rti802-checkpatch-cleanups.patch
new file mode 100644
index 00000000000000..a9f3f946898e13
--- /dev/null
+++ b/staging/staging-comedi-rti802-checkpatch-cleanups.patch
@@ -0,0 +1,48 @@
+From b.adolphi@googlemail.com Sun Feb 7 20:40:09 2010
+From: Benjamin Adolphi <b.adolphi@googlemail.com>
+Date: Sat, 6 Feb 2010 15:08:46 +0100
+Subject: Staging: comedi: rti802: Checkpatch cleanups
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: Benjamin Adolphi <b.adolphi@gmail.com>
+Message-ID: <1265465326-30031-1-git-send-email-b.adolphi@gmail.com>
+
+
+This fixes all checkpatch issues in the rti802 comedi driver.
+
+Signed-off-by: Benjamin Adolphi <b.adolphi@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/rti802.c | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/rti802.c
++++ b/drivers/staging/comedi/drivers/rti802.c
+@@ -106,9 +106,9 @@ static int rti802_attach(struct comedi_d
+ unsigned long iobase;
+
+ iobase = it->options[0];
+- printk("comedi%d: rti802: 0x%04lx ", dev->minor, iobase);
++ printk(KERN_INFO "comedi%d: rti802: 0x%04lx ", dev->minor, iobase);
+ if (!request_region(iobase, RTI802_SIZE, "rti802")) {
+- printk("I/O port conflict\n");
++ printk(KERN_WARNING "I/O port conflict\n");
+ return -EIO;
+ }
+ dev->iobase = iobase;
+@@ -138,14 +138,12 @@ static int rti802_attach(struct comedi_d
+ ? &range_unipolar10 : &range_bipolar10;
+ }
+
+- printk("\n");
+-
+ return 0;
+ }
+
+ static int rti802_detach(struct comedi_device *dev)
+ {
+- printk("comedi%d: rti802: remove\n", dev->minor);
++ printk(KERN_INFO "comedi%d: rti802: remove\n", dev->minor);
+
+ if (dev->iobase)
+ release_region(dev->iobase, RTI802_SIZE);
diff --git a/staging/staging-comedi-ssc_dnp-fixed-a-brace-coding-style-issue.patch b/staging/staging-comedi-ssc_dnp-fixed-a-brace-coding-style-issue.patch
new file mode 100644
index 00000000000000..a2f548bc50bb5e
--- /dev/null
+++ b/staging/staging-comedi-ssc_dnp-fixed-a-brace-coding-style-issue.patch
@@ -0,0 +1,35 @@
+From gregkh@suse.de Sun Feb 7 20:43:28 2010
+From: Greg Kroah-Hartman <gregkh@suse.de>
+Date: Sun, 7 Feb 2010 08:51:51 -0800
+Subject: Staging: comedi: ssc_dnp: fixed a brace coding style issue
+To: gregkh@suse.de
+Message-ID: <1265561511-25543-1-git-send-email-gregkh@suse.de>
+
+
+Fixed a coding style issue.
+
+Created during the keynote presentation at FOSDEM 2010
+
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/ssv_dnp.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/ssv_dnp.c
++++ b/drivers/staging/comedi/drivers/ssv_dnp.c
+@@ -300,11 +300,11 @@ static int dnp_dio_insn_config(struct co
+
+ /* read 'old' direction of the port and set bits (out=1, in=0) */
+ register_buffer = inb(CSCDR);
+- if (data[0] == COMEDI_OUTPUT) {
++ if (data[0] == COMEDI_OUTPUT)
+ register_buffer |= (1 << chan);
+- } else {
++ else
+ register_buffer &= ~(1 << chan);
+- }
++
+ outb(register_buffer, CSCDR);
+
+ return 1;
diff --git a/staging/staging-fix-more-continuation-line-formats.patch b/staging/staging-fix-more-continuation-line-formats.patch
new file mode 100644
index 00000000000000..06e86a4d4b0b6a
--- /dev/null
+++ b/staging/staging-fix-more-continuation-line-formats.patch
@@ -0,0 +1,103 @@
+From joe@perches.com Sun Feb 7 20:28:34 2010
+From: Joe Perches <joe@perches.com>
+Date: Mon, 1 Feb 2010 23:22:14 -0800
+Subject: Staging: Fix continuation line formats
+To: linux-kernel@vger.kernel.org
+Cc: Greg Kroah-Hartman <gregkh@suse.de>, devel@driverdev.osuosl.org
+Message-ID: <c46c977d3a3f5d10f0850e89b364affd65234865.1265095094.git.joe@perches.com>
+
+
+String constants that are continued on subsequent lines with \
+are not good.
+
+Signed-off-by: Joe Perches <joe@perches.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/rtl8192su/r8192S_phy.c | 16 ++++++++--------
+ drivers/staging/sep/sep_driver.c | 5 +++--
+ drivers/staging/slicoss/slicoss.c | 6 ++----
+ 3 files changed, 13 insertions(+), 14 deletions(-)
+
+--- a/drivers/staging/rtl8192su/r8192S_phy.c
++++ b/drivers/staging/rtl8192su/r8192S_phy.c
+@@ -2407,8 +2407,8 @@ void PHY_SetBWModeCallback8192S(struct n
+ break;
+
+ default:
+- RT_TRACE(COMP_DBG, "SetBWModeCallback8190Pci():\
+- unknown Bandwidth: %#X\n",priv->CurrentChannelBW);
++ RT_TRACE(COMP_DBG, "SetBWModeCallback8190Pci(): unknown Bandwidth: %#X\n",
++ priv->CurrentChannelBW);
+ break;
+ }
+
+@@ -3398,8 +3398,8 @@ void SwChnlCallback8192SUsb(struct net_d
+ u32 delay;
+ // bool ret;
+
+- RT_TRACE(COMP_SCAN, "==>SwChnlCallback8190Pci(), switch to channel\
+- %d\n", priv->chan);
++ RT_TRACE(COMP_SCAN, "==>SwChnlCallback8190Pci(), switch to channel %d\n",
++ priv->chan);
+
+
+ if(!priv->up)
+@@ -3525,8 +3525,8 @@ void SetBWModeCallback8192SUsb(struct ne
+ break;
+
+ default:
+- RT_TRACE(COMP_DBG, "SetChannelBandwidth8190Pci():\
+- unknown Bandwidth: %#X\n",priv->CurrentChannelBW);
++ RT_TRACE(COMP_DBG, "SetChannelBandwidth8190Pci(): unknown Bandwidth: %#X\n",
++ priv->CurrentChannelBW);
+ break;
+ }
+
+@@ -3660,8 +3660,8 @@ void SetBWModeCallback8192SUsbWorkItem(s
+ break;
+
+ default:
+- RT_TRACE(COMP_DBG, "SetBWModeCallback8192SUsbWorkItem():\
+- unknown Bandwidth: %#X\n",priv->CurrentChannelBW);
++ RT_TRACE(COMP_DBG, "SetBWModeCallback8192SUsbWorkItem(): unknown Bandwidth: %#X\n",
++ priv->CurrentChannelBW);
+ break;
+ }
+
+--- a/drivers/staging/sep/sep_driver.c
++++ b/drivers/staging/sep/sep_driver.c
+@@ -944,8 +944,9 @@ static int sep_lock_user_pages(struct se
+ dbg("data_size is %lu\n", data_size);
+ while (1);
+ }
+- edbg("lli_array[%lu].physical_address is %08lx, \
+- lli_array[%lu].block_size is %lu\n", count, lli_array[count].physical_address, count, lli_array[count].block_size);
++ edbg("lli_array[%lu].physical_address is %08lx, lli_array[%lu].block_size is %lu\n",
++ count, lli_array[count].physical_address,
++ count, lli_array[count].block_size);
+ }
+
+ /* set output params */
+--- a/drivers/staging/slicoss/slicoss.c
++++ b/drivers/staging/slicoss/slicoss.c
+@@ -658,8 +658,7 @@ static int slic_ioctl(struct net_device
+
+ if (copy_from_user(data, rq->ifr_data, 28)) {
+ PRINT_ERROR
+- ("slic: copy_from_user FAILED getting \
+- initial simba param\n");
++ ("slic: copy_from_user FAILED getting initial simba param\n");
+ return -EFAULT;
+ }
+
+@@ -674,8 +673,7 @@ static int slic_ioctl(struct net_device
+ (tracemon_request ==
+ SLIC_DUMP_IN_PROGRESS)) {
+ PRINT_ERROR
+- ("ATK Diagnostic Trace Dump Requested but \
+- already in progress... ignore\n");
++ ("ATK Diagnostic Trace Dump Requested but already in progress... ignore\n");
+ } else {
+ PRINT_ERROR
+ ("ATK Diagnostic Trace Dump Requested\n");
diff --git a/staging/staging-rt2860-correct-onstack-wait_queue_head-declaration.patch b/staging/staging-rt2860-correct-onstack-wait_queue_head-declaration.patch
new file mode 100644
index 00000000000000..01bdaf8db5bb98
--- /dev/null
+++ b/staging/staging-rt2860-correct-onstack-wait_queue_head-declaration.patch
@@ -0,0 +1,32 @@
+From yong.zhang0@gmail.com Sun Feb 7 20:35:32 2010
+From: Yong Zhang <yong.zhang0@gmail.com>
+Date: Fri, 5 Feb 2010 21:52:40 +0800
+Subject: Staging: rt2860: correct onstack wait_queue_head declaration
+Cc: devel@driverdev.osuosl.org, a.p.zijlstra@chello.nl, Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>, Greg Kroah-Hartman <gregkh@suse.de>, mingo@elte.hu, "David S. Miller" <davem@davemloft.net>
+Message-ID: <f4b1988ebb2399d7410268529199f131e1edad9d.1265375697.git.yong.zhang0@gmail.com>
+
+
+Use DECLARE_WAIT_QUEUE_HEAD_ONSTACK to make lockdep happy
+
+Signed-off-by: Yong Zhang <yong.zhang0@gmail.com>
+Cc: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
+Cc: Alexander Beregalov <a.beregalov@gmail.com>
+Cc: David S. Miller <davem@davemloft.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/rt2860/rt_main_dev.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/staging/rt2860/rt_main_dev.c
++++ b/drivers/staging/rt2860/rt_main_dev.c
+@@ -216,7 +216,7 @@ int rt28xx_close(struct net_device *dev)
+ u32 i = 0;
+
+ #ifdef RTMP_MAC_USB
+- DECLARE_WAIT_QUEUE_HEAD(unlink_wakeup);
++ DECLARE_WAIT_QUEUE_HEAD_ONSTACK(unlink_wakeup);
+ DECLARE_WAITQUEUE(wait, current);
+ #endif /* RTMP_MAC_USB // */
+
diff --git a/staging/staging-rtl8192e-fix-spacing-style-issues-in-r8180_93cx6.c.patch b/staging/staging-rtl8192e-fix-spacing-style-issues-in-r8180_93cx6.c.patch
new file mode 100644
index 00000000000000..afe11c44b48253
--- /dev/null
+++ b/staging/staging-rtl8192e-fix-spacing-style-issues-in-r8180_93cx6.c.patch
@@ -0,0 +1,150 @@
+From tim@weberpafrica.com Sun Feb 7 20:33:13 2010
+From: Tim Schofield <tim@weberpafrica.com>
+Date: Thu, 04 Feb 2010 19:57:09 +0000
+Subject: Staging: rtl8192e: fix spacing style issues in r8180_93cx6.c
+To: gregkh@suse.de
+Message-ID: <1265313429.29197.3.camel@aglovale>
+
+From: Tim Schofield <tim@weberpafrica.com>
+
+This is a patch to the r8180_93cx6.c file that fixes up spacing issue
+warnings found by the checkpatch.pl tool
+
+Signed-off-by: Tim Schofield <tim@weberpafrica.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/rtl8192e/r8180_93cx6.c | 63 ++++++++++++++++-----------------
+ 1 file changed, 32 insertions(+), 31 deletions(-)
+
+--- a/drivers/staging/rtl8192e/r8180_93cx6.c
++++ b/drivers/staging/rtl8192e/r8180_93cx6.c
+@@ -22,7 +22,7 @@
+
+ static void eprom_cs(struct net_device *dev, short bit)
+ {
+- if(bit)
++ if (bit)
+ write_nic_byte(dev, EPROM_CMD,
+ (1<<EPROM_CS_SHIFT) | \
+ read_nic_byte(dev, EPROM_CMD)); //enable EPROM
+@@ -38,23 +38,23 @@ static void eprom_cs(struct net_device *
+ static void eprom_ck_cycle(struct net_device *dev)
+ {
+ write_nic_byte(dev, EPROM_CMD,
+- (1<<EPROM_CK_SHIFT) | read_nic_byte(dev,EPROM_CMD));
++ (1<<EPROM_CK_SHIFT) | read_nic_byte(dev, EPROM_CMD));
+ force_pci_posting(dev);
+ udelay(EPROM_DELAY);
+ write_nic_byte(dev, EPROM_CMD,
+- read_nic_byte(dev, EPROM_CMD) &~ (1<<EPROM_CK_SHIFT));
++ read_nic_byte(dev, EPROM_CMD) & ~(1<<EPROM_CK_SHIFT));
+ force_pci_posting(dev);
+ udelay(EPROM_DELAY);
+ }
+
+
+-static void eprom_w(struct net_device *dev,short bit)
++static void eprom_w(struct net_device *dev, short bit)
+ {
+- if(bit)
++ if (bit)
+ write_nic_byte(dev, EPROM_CMD, (1<<EPROM_W_SHIFT) | \
+- read_nic_byte(dev,EPROM_CMD));
++ read_nic_byte(dev, EPROM_CMD));
+ else
+- write_nic_byte(dev, EPROM_CMD, read_nic_byte(dev,EPROM_CMD)\
++ write_nic_byte(dev, EPROM_CMD, read_nic_byte(dev, EPROM_CMD)\
+ &~(1<<EPROM_W_SHIFT));
+
+ force_pci_posting(dev);
+@@ -66,10 +66,11 @@ static short eprom_r(struct net_device *
+ {
+ short bit;
+
+- bit=(read_nic_byte(dev, EPROM_CMD) & (1<<EPROM_R_SHIFT) );
++ bit = (read_nic_byte(dev, EPROM_CMD) & (1<<EPROM_R_SHIFT));
+ udelay(EPROM_DELAY);
+
+- if(bit) return 1;
++ if (bit)
++ return 1;
+ return 0;
+ }
+
+@@ -78,7 +79,7 @@ static void eprom_send_bits_string(struc
+ {
+ int i;
+
+- for(i=0; i<len; i++){
++ for (i = 0; i < len; i++) {
+ eprom_w(dev, b[i]);
+ eprom_ck_cycle(dev);
+ }
+@@ -88,37 +89,37 @@ static void eprom_send_bits_string(struc
+ u32 eprom_read(struct net_device *dev, u32 addr)
+ {
+ struct r8192_priv *priv = ieee80211_priv(dev);
+- short read_cmd[]={1,1,0};
++ short read_cmd[] = {1, 1, 0};
+ short addr_str[8];
+ int i;
+ int addr_len;
+ u32 ret;
+
+- ret=0;
++ ret = 0;
+ //enable EPROM programming
+ write_nic_byte(dev, EPROM_CMD,
+ (EPROM_CMD_PROGRAM<<EPROM_CMD_OPERATING_MODE_SHIFT));
+ force_pci_posting(dev);
+ udelay(EPROM_DELAY);
+
+- if (priv->epromtype==EPROM_93c56){
+- addr_str[7]=addr & 1;
+- addr_str[6]=addr & (1<<1);
+- addr_str[5]=addr & (1<<2);
+- addr_str[4]=addr & (1<<3);
+- addr_str[3]=addr & (1<<4);
+- addr_str[2]=addr & (1<<5);
+- addr_str[1]=addr & (1<<6);
+- addr_str[0]=addr & (1<<7);
+- addr_len=8;
+- }else{
+- addr_str[5]=addr & 1;
+- addr_str[4]=addr & (1<<1);
+- addr_str[3]=addr & (1<<2);
+- addr_str[2]=addr & (1<<3);
+- addr_str[1]=addr & (1<<4);
+- addr_str[0]=addr & (1<<5);
+- addr_len=6;
++ if (priv->epromtype == EPROM_93c56) {
++ addr_str[7] = addr & 1;
++ addr_str[6] = addr & (1<<1);
++ addr_str[5] = addr & (1<<2);
++ addr_str[4] = addr & (1<<3);
++ addr_str[3] = addr & (1<<4);
++ addr_str[2] = addr & (1<<5);
++ addr_str[1] = addr & (1<<6);
++ addr_str[0] = addr & (1<<7);
++ addr_len = 8;
++ } else {
++ addr_str[5] = addr & 1;
++ addr_str[4] = addr & (1<<1);
++ addr_str[3] = addr & (1<<2);
++ addr_str[2] = addr & (1<<3);
++ addr_str[1] = addr & (1<<4);
++ addr_str[0] = addr & (1<<5);
++ addr_len = 6;
+ }
+ eprom_cs(dev, 1);
+ eprom_ck_cycle(dev);
+@@ -129,7 +130,7 @@ u32 eprom_read(struct net_device *dev, u
+ //I'm unsure if it is necessary, but anyway shouldn't hurt
+ eprom_w(dev, 0);
+
+- for(i=0;i<16;i++){
++ for (i = 0; i < 16; i++) {
+ //eeprom needs a clk cycle between writing opcode&adr
+ //and reading data. (eeprom outs a dummy 0)
+ eprom_ck_cycle(dev);
diff --git a/staging/staging-samsung-laptop-fix-coding-style-issues.patch b/staging/staging-samsung-laptop-fix-coding-style-issues.patch
new file mode 100644
index 00000000000000..8a4f48e189c65d
--- /dev/null
+++ b/staging/staging-samsung-laptop-fix-coding-style-issues.patch
@@ -0,0 +1,52 @@
+From chihau@gmail.com Sun Feb 7 20:36:05 2010
+From: Chihau Chau <chihau@gmail.com>
+Date: Fri, 5 Feb 2010 15:23:48 -0300
+Subject: Staging: samsung-laptop: fix coding style issues
+To: gregkh@suse.de
+Cc: devel@driverdev.osuosl.org, Chihau Chau <chihau@gmail.com>
+Message-ID: <1265394228-13080-1-git-send-email-chihau@gmail.com>
+
+
+From: Chihau Chau <chihau@gmail.com>
+
+This fixes some lines over 80 characters coding style issues.
+
+Signed-off-by: Chihau Chau <chihau@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/samsung-laptop/samsung-laptop.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+--- a/drivers/staging/samsung-laptop/samsung-laptop.c
++++ b/drivers/staging/samsung-laptop/samsung-laptop.c
+@@ -99,7 +99,8 @@ static struct rfkill *rfk;
+
+ static int force;
+ module_param(force, bool, 0);
+-MODULE_PARM_DESC(force, "Disable the DMI check and forces the driver to be loaded");
++MODULE_PARM_DESC(force,
++ "Disable the DMI check and forces the driver to be loaded");
+
+ static int debug;
+ module_param(debug, bool, S_IRUGO | S_IWUSR);
+@@ -370,7 +371,8 @@ static struct dmi_system_id __initdata s
+ {
+ .ident = "N128",
+ .matches = {
+- DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
++ DMI_MATCH(DMI_SYS_VENDOR,
++ "SAMSUNG ELECTRONICS CO., LTD."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "N128"),
+ DMI_MATCH(DMI_BOARD_NAME, "N128"),
+ },
+@@ -379,7 +381,8 @@ static struct dmi_system_id __initdata s
+ {
+ .ident = "N130",
+ .matches = {
+- DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
++ DMI_MATCH(DMI_SYS_VENDOR,
++ "SAMSUNG ELECTRONICS CO., LTD."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "N130"),
+ DMI_MATCH(DMI_BOARD_NAME, "N130"),
+ },
diff --git a/staging/staging-wlan-ng-add-select-wext_priv-to-kconfig-to-prevent-build-failure.patch b/staging/staging-wlan-ng-add-select-wext_priv-to-kconfig-to-prevent-build-failure.patch
index 46f010ffecf624..31598c4f721bad 100644
--- a/staging/staging-wlan-ng-add-select-wext_priv-to-kconfig-to-prevent-build-failure.patch
+++ b/staging/staging-wlan-ng-add-select-wext_priv-to-kconfig-to-prevent-build-failure.patch
@@ -17,6 +17,7 @@ of iw_handler_def in include/net/iw_handler.h
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Acked-by: Simon Horman <horms@verge.net.au>
+Cc: stable <stable@kernel.org> [2.6.33 only]
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
diff --git a/staging/staging-wlan-ng-fix-to-allow-driver-to-be-built-on-2.6.33-rc6.patch b/staging/staging-wlan-ng-fix-to-allow-driver-to-be-built-on-2.6.33-rc6.patch
new file mode 100644
index 00000000000000..965a35d9134cec
--- /dev/null
+++ b/staging/staging-wlan-ng-fix-to-allow-driver-to-be-built-on-2.6.33-rc6.patch
@@ -0,0 +1,32 @@
+From richard@rsk.demon.co.uk Sun Feb 7 20:21:47 2010
+From: Richard Kennedy <richard@rsk.demon.co.uk>
+Date: Thu, 04 Feb 2010 11:33:49 +0000
+Subject: Staging: wlan-ng: minor cleanups
+To: Greg Kroah-Hartman <greg@kroah.com>
+Message-ID: <1265283229.2175.10.camel@localhost>
+
+
+Remove iw_handle_def private initialisations as they are no longer need
+these.
+
+Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/wlan-ng/p80211wext.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+--- a/drivers/staging/wlan-ng/p80211wext.c
++++ b/drivers/staging/wlan-ng/p80211wext.c
+@@ -1744,11 +1744,7 @@ static iw_handler p80211wext_handlers[]
+
+ struct iw_handler_def p80211wext_handler_def = {
+ .num_standard = ARRAY_SIZE(p80211wext_handlers),
+- .num_private = 0,
+- .num_private_args = 0,
+ .standard = p80211wext_handlers,
+- .private = NULL,
+- .private_args = NULL,
+ .get_wireless_stats = p80211wext_get_wireless_stats
+ };
+