aboutsummaryrefslogtreecommitdiffstats
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2010-02-26 16:48:46 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2010-02-26 16:48:46 -0800
commit6d6bd90e42824035a3346dd1835026e55cd5201b (patch)
treee60264ad74db5e67feeff69e758d32f6c935158c
parent639129d7091fea3473ace7d14eaf10aec218d89b (diff)
downloadpatches-6d6bd90e42824035a3346dd1835026e55cd5201b.tar.gz
more patch fun.
-rw-r--r--series40
-rw-r--r--staging.dup/staging-dream-camera-msm_camera-fix-code-style-issues.patch88
-rw-r--r--staging.dup/staging-dream-camera-sk5k3e2fx-fix-code-style-issues.patch39
-rw-r--r--staging/staging-arlan-arlan.h-checkpatch-cleanup.patch661
-rw-r--r--staging/staging-arlan-arlan.h-more-checkpatch-cleanup.patch35
-rw-r--r--staging/staging-arlan-makefile-checkpatch-cleanup.patch26
-rw-r--r--staging/staging-cleanup-useless-headers.patch61
-rw-r--r--staging/staging-comedi-addi_amcc_s5920.c-checkpatch-cleanup.patch40
-rw-r--r--staging/staging-comedi-addi_common.h-checkpatch-cleanup.patch37
-rw-r--r--staging/staging-comedi-amplc_pci224.c-coding-style-cleanups.patch42
-rw-r--r--staging/staging-comedi-cb_pcidas.c-checkpatch-cleanup.patch168
-rw-r--r--staging/staging-comedi-cb_pcidda.c-checkpatch-cleanup.patch84
-rw-r--r--staging/staging-comedi-cb_pcidio.c-checkpatch-cleanup.patch50
-rw-r--r--staging/staging-comedi-cb_pcimdas.c-checkpatch-cleanup.patch56
-rw-r--r--staging/staging-comedi-cb_pcimdas.c-more-checkpatch-cleanup.patch52
-rw-r--r--staging/staging-comedi-cb_pcimdda.c-checkpatch-cleanup.patch56
-rw-r--r--staging/staging-comedi-comedi_fops.c-checkpatch-cleanup.patch75
-rw-r--r--staging/staging-comedi-contec_pci_dio.c-checkpatch-cleanup.patch36
-rw-r--r--staging/staging-comedi-das08_cs.c-checkpatch-cleanup.patch44
-rw-r--r--staging/staging-comedi-das6402.c-checkpatch-cleanup.patch32
-rw-r--r--staging/staging-comedi-dmm32at.c-checkpatch-cleanup.patch40
-rw-r--r--staging/staging-comedi-drivers.c-checkpatch-cleanup.patch151
-rw-r--r--staging/staging-comedi-dt2801.c-checkpatch-cleanup.patch176
-rw-r--r--staging/staging-comedi-hwdrv_apci1032.c-checkpatch-cleanup.patch66
-rw-r--r--staging/staging-comedi-hwdrv_apci3120.c-checkpatch-cleanup.patch452
-rw-r--r--staging/staging-rt3070-md4.h-checkpatch-cleanup.patch44
-rw-r--r--tty/jsm-fixing-error-if-the-driver-fails-to-load.patch55
-rw-r--r--tty/jsm-removing-the-uart-structure-and-filename-on-error.patch35
-rw-r--r--usb/usb-backlight-appledisplay-fix-incomplete-registration-failure-handling.patch38
-rw-r--r--usb/usb-ftdi_sio-remove-obsolete-check-in-unthrottle.patch33
-rw-r--r--usb/usb-ftdi_sio-remove-unused-tx_bytes-counter.patch47
-rw-r--r--usb/usb-pl2303-initial-tiocgserial-support.patch51
-rw-r--r--usb/usb-pl2303-remove-unnecessary-reset-of-usb_device-in-urbs.patch67
-rw-r--r--usb/usb-qcaux-driver-for-auxiliary-serial-ports-on-qualcomm-devices.patch156
34 files changed, 3130 insertions, 3 deletions
diff --git a/series b/series
index bef78bbd2859d1..ab036e7972c4ce 100644
--- a/series
+++ b/series
@@ -135,6 +135,9 @@ tty/tty-fix-the-ldisc-hangup-race.patch
tty/tty-fix-up-char-drivers-request_room-usage.patch
tty/tty-keep-the-default-buffering-to-sub-page-units.patch
tty/tty-add-a-new-vt-mode-which-is-like-vt_process-but-doesn-t-require-a-vt_reldisp-ioctl-call.patch
+tty/jsm-removing-the-uart-structure-and-filename-on-error.patch
+tty/jsm-fixing-error-if-the-driver-fails-to-load.patch
+
###################################
@@ -354,6 +357,12 @@ usb/usb-sisusbvga-no-unnecessary-gfp_atomic.patch
usb/usb-usbmon-mask-seconds-properly-in-text-api.patch
usb/usb-fix-i2c-api-usage-in-ohci-pnx4008.patch
usb/usb-option-add-longcheer-longsung-vendor-id.patch
+usb/usb-pl2303-initial-tiocgserial-support.patch
+usb/usb-qcaux-driver-for-auxiliary-serial-ports-on-qualcomm-devices.patch
+usb/usb-ftdi_sio-remove-unused-tx_bytes-counter.patch
+usb/usb-ftdi_sio-remove-obsolete-check-in-unthrottle.patch
+usb/usb-pl2303-remove-unnecessary-reset-of-usb_device-in-urbs.patch
+usb/usb-backlight-appledisplay-fix-incomplete-registration-failure-handling.patch
@@ -468,6 +477,9 @@ staging/staging-hv-remove-xen-legacy-code-and-check-for-hyper-v.patch
staging/staging-hv-fix-various-coding-style-issues-in-ringbuffer.c.patch
staging/staging-hv-add-proper-versioning-to-hv-drivers.patch
staging/staging-hv-rename-struct-device_context-and-re-arrange-the-fields-inside.patch
+staging/staging-hv-fix-brace-coding-style-issue-in-channel.c.patch
+staging/staging-hv-add-a-pci-device-table.patch
+staging/staging-hv-match-on-dmi-values-to-know-if-we-should-run.patch
staging/staging-dt3155-use-pci_get_device.patch
staging/staging-rt2870-rtusb_probe-should-be-in-section-__devinit.patch
@@ -681,7 +693,6 @@ staging/staging-batman-adv-avoid-crash-on-memory-allocation-error.patch
staging/staging-batman-adv-fix-module-initialization.patch
staging/staging-comedi-fix-coding-style-issues-in-ni_labpc.c.patch
staging/staging-comedi-fix-suspect-code-indent-in-ni_labpc.c.patch
-staging/staging-hv-fix-brace-coding-style-issue-in-channel.c.patch
staging/staging-comedi-aio_iiro_16-checkpatch-cleanups.patch
staging/staging-comedi-amplc_dio200-checkpatch-cleanups.patch
staging/staging-comedi-amplc_pc236-checkpatch-cleanups.patch
@@ -698,9 +709,30 @@ staging/staging-rtl8192su-remove-firmware-from-r8192su_hwimg.c.patch
staging/staging-rtl8192su-fix-for-rtl819xu-error-tx-urb-for-zero-byte-xxx-error-2.patch
staging/staging-rtl8192su-re-enable-tx-stats.patch
staging/staging-rtl8192su-use-list_for_each_safe-in-ieee80211_crypto_deinit.patch
+staging/staging-cleanup-useless-headers.patch
+staging/staging-comedi-amplc_pci224.c-coding-style-cleanups.patch
+staging/staging-comedi-comedi_fops.c-checkpatch-cleanup.patch
+staging/staging-comedi-addi_amcc_s5920.c-checkpatch-cleanup.patch
+staging/staging-comedi-addi_common.h-checkpatch-cleanup.patch
+staging/staging-comedi-hwdrv_apci1032.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcidas.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcidda.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcidio.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcimdas.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcimdda.c-checkpatch-cleanup.patch
+staging/staging-comedi-contec_pci_dio.c-checkpatch-cleanup.patch
+staging/staging-comedi-das08_cs.c-checkpatch-cleanup.patch
+staging/staging-comedi-hwdrv_apci3120.c-checkpatch-cleanup.patch
+staging/staging-comedi-das6402.c-checkpatch-cleanup.patch
+staging/staging-comedi-cb_pcimdas.c-more-checkpatch-cleanup.patch
+staging/staging-comedi-dmm32at.c-checkpatch-cleanup.patch
+staging/staging-comedi-dt2801.c-checkpatch-cleanup.patch
+staging/staging-arlan-arlan.h-checkpatch-cleanup.patch
+staging/staging-rt3070-md4.h-checkpatch-cleanup.patch
+staging/staging-arlan-makefile-checkpatch-cleanup.patch
+staging/staging-arlan-arlan.h-more-checkpatch-cleanup.patch
+staging/staging-comedi-drivers.c-checkpatch-cleanup.patch
-staging/staging-hv-add-a-pci-device-table.patch
-staging/staging-hv-match-on-dmi-values-to-know-if-we-should-run.patch
# merge fun :(
#staging.dup/staging-comedi-poc-fix-coding-style-issues.patch
@@ -715,5 +747,7 @@ staging/staging-hv-match-on-dmi-values-to-know-if-we-should-run.patch
#staging.dup/staging-comedi-pcmad-fixed-a-brace-coding-style-issue.patch
#staging.dup/staging-wlan-ng-checkpatch.pl-fixups.patch
#staging.dup/staging-wlan-ng-more-checkpatch.pl-error-cleanups.patch
+#staging.dup/staging-dream-camera-msm_camera-fix-code-style-issues.patch
+#staging.dup/staging-dream-camera-sk5k3e2fx-fix-code-style-issues.patch
diff --git a/staging.dup/staging-dream-camera-msm_camera-fix-code-style-issues.patch b/staging.dup/staging-dream-camera-msm_camera-fix-code-style-issues.patch
new file mode 100644
index 00000000000000..f01994b972abcc
--- /dev/null
+++ b/staging.dup/staging-dream-camera-msm_camera-fix-code-style-issues.patch
@@ -0,0 +1,88 @@
+From chihau@gmail.com Fri Feb 26 16:35:57 2010
+From: Chihau Chau <chihau@gmail.com>
+Date: Thu, 25 Feb 2010 19:57:39 -0300
+Subject: Staging: dream: camera: msm_camera: fix code style issues
+To: gregkh@suse.de
+Cc: pavel@ucw.cz, linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, Chihau Chau <chihau@gmail.com>
+Message-ID: <1267138659-17859-1-git-send-email-chihau@gmail.com>
+
+From: Chihau Chau <chihau@gmail.com>
+
+This fixes some code style issues like to add one space after a while or
+switch statement and before a open parenthesis '(', and to include KERN_
+facility level in the printk() functions.
+
+Signed-off-by: Chihau Chau <chihau@gmail.com>
+Acked-by: Pavel Machek <pavel@ucw.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+--- a/drivers/staging/dream/camera/msm_camera.c
++++ b/drivers/staging/dream/camera/msm_camera.c
+@@ -76,14 +76,14 @@ static LIST_HEAD(msm_sensors);
+ list_del_init(&qcmd->list); \
+ kfree(qcmd); \
+ }; \
+-} while(0)
++} while (0)
+
+ #define MSM_DRAIN_QUEUE(sync, name) do { \
+ unsigned long flags; \
+ spin_lock_irqsave(&(sync)->name##_lock, flags); \
+ MSM_DRAIN_QUEUE_NOSYNC(sync, name); \
+ spin_unlock_irqrestore(&(sync)->name##_lock, flags); \
+-} while(0)
++} while (0)
+
+ static int check_overlap(struct hlist_head *ptype,
+ unsigned long paddr,
+@@ -868,7 +868,7 @@ static int msm_config_vfe(struct msm_sync *sync, void __user *arg)
+ return -EFAULT;
+ }
+
+- switch(cfgcmd.cmd_type) {
++ switch (cfgcmd.cmd_type) {
+ case CMD_STATS_ENABLE:
+ axi_data.bufnum1 =
+ msm_pmem_region_lookup(&sync->stats,
+@@ -1621,7 +1621,8 @@ static int msm_release_control(struct inode *node, struct file *filep)
+ int rc;
+ struct msm_control_device *ctrl_pmsm = filep->private_data;
+ struct msm_device *pmsm = ctrl_pmsm->pmsm;
+- printk("msm_camera: RELEASE %s\n", filep->f_path.dentry->d_name.name);
++ printk(KERN_INFO "msm_camera: RELEASE %s\n",
++ filep->f_path.dentry->d_name.name);
+ rc = __msm_release(pmsm->sync);
+ if (!rc) {
+ MSM_DRAIN_QUEUE(&ctrl_pmsm->ctrl_q, ctrl_status_q);
+@@ -1635,7 +1636,8 @@ static int msm_release_frame(struct inode *node, struct file *filep)
+ {
+ int rc;
+ struct msm_device *pmsm = filep->private_data;
+- printk("msm_camera: RELEASE %s\n", filep->f_path.dentry->d_name.name);
++ printk(KERN_INFO "msm_camera: RELEASE %s\n",
++ filep->f_path.dentry->d_name.name);
+ rc = __msm_release(pmsm->sync);
+ if (!rc) {
+ MSM_DRAIN_QUEUE(pmsm->sync, prev_frame_q);
+@@ -1719,7 +1721,7 @@ static void msm_vfe_sync(struct msm_vfe_resp *vdata,
+ qcmd->type = qtype;
+
+ if (qtype == MSM_CAM_Q_VFE_MSG) {
+- switch(vdata->type) {
++ switch (vdata->type) {
+ case VFE_MSG_OUTPUT1:
+ case VFE_MSG_OUTPUT2:
+ qcmd_frame =
+@@ -1928,7 +1930,8 @@ static int __msm_v4l2_control(struct msm_sync *sync,
+ memcpy(out->value, ctrl->value, ctrl->length);
+
+ end:
+- if (rcmd) kfree(rcmd);
++ if (rcmd)
++ kfree(rcmd);
+ CDBG("__msm_v4l2_control: end rc = %d\n", rc);
+ return rc;
+ }
+--
+1.5.6.3
+
diff --git a/staging.dup/staging-dream-camera-sk5k3e2fx-fix-code-style-issues.patch b/staging.dup/staging-dream-camera-sk5k3e2fx-fix-code-style-issues.patch
new file mode 100644
index 00000000000000..221bd284496f5d
--- /dev/null
+++ b/staging.dup/staging-dream-camera-sk5k3e2fx-fix-code-style-issues.patch
@@ -0,0 +1,39 @@
+From chihau@gmail.com Fri Feb 26 16:35:23 2010
+From: Chihau Chau <chihau@gmail.com>
+Date: Thu, 25 Feb 2010 20:20:09 -0300
+Subject: Staging: dream: camera: sk5k3e2fx: fix code style issues
+To: gregkh@suse.de
+Cc: pavel@ucw.cz, linux-kernel@vger.kernel.org, devel@driverdev.osuosl.org, Chihau Chau <chihau@gmail.com>
+Message-ID: <1267140009-18775-1-git-send-email-chihau@gmail.com>
+
+
+From: Chihau Chau <chihau@gmail.com>
+
+This fixes some code style issues about assignments in if conditions.
+
+Signed-off-by: Chihau Chau <chihau@gmail.com>
+Acked-by: Pavel Machek <pavel@ucw.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+--- a/drivers/staging/dream/camera/s5k3e2fx.c
++++ b/drivers/staging/dream/camera/s5k3e2fx.c
+@@ -743,12 +743,12 @@ static int s5k3e2fx_sensor_open_init(const struct msm_camera_sensor_info *data)
+ }
+
+ /* initialize AF */
+- if ((rc = s5k3e2fx_i2c_write_b(s5k3e2fx_client->addr,
+- 0x3146, 0x3A)) < 0)
++ rc = s5k3e2fx_i2c_write_b(s5k3e2fx_client->addr, 0x3146, 0x3A);
++ if (rc < 0)
+ goto init_fail1;
+
+- if ((rc = s5k3e2fx_i2c_write_b(s5k3e2fx_client->addr,
+- 0x3130, 0x03)) < 0)
++ rc = s5k3e2fx_i2c_write_b(s5k3e2fx_client->addr, 0x3130, 0x03);
++ if (rc < 0)
+ goto init_fail1;
+
+ goto init_done;
+--
+1.5.6.3
+
diff --git a/staging/staging-arlan-arlan.h-checkpatch-cleanup.patch b/staging/staging-arlan-arlan.h-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..082f8985f39f86
--- /dev/null
+++ b/staging/staging-arlan-arlan.h-checkpatch-cleanup.patch
@@ -0,0 +1,661 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:40:58 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:11 +0100
+Subject: Staging: arlan: arlan.h: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-18-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: trailing whitespace
++ * Copyright (C) 1998 Elmer.Joandi@ut.ee, +37-255-13500^I$
+
+WARNING: Use #include <linux/io.h> instead of <asm/io.h>
++#include <asm/io.h>
+
+ERROR: do not use C99 // comments
++//#define ARLAN_DEBUGGING 1
+
+ERROR: "foo * bar" should be "foo *bar"
++extern int arlan_command(struct net_device * dev, int command);
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++#define IFDEBUG( L ) if ( (L) & arlan_debug ) $
+
+ERROR: space prohibited after that open parenthesis '('
++#define IFDEBUG( L ) if ( (L) & arlan_debug )
+
+ERROR: space prohibited before that close parenthesis ')'
++#define IFDEBUG( L ) if ( (L) & arlan_debug )
+
+ERROR: trailing whitespace
++#define ARLAN_FAKE_HDR_LEN 12 $
+
+ERROR: space required after that ',' (ctx:VxV)
++ #define ARLAN_DEBUG(a,b) printk(KERN_DEBUG a, b)
+ ^
+
+ERROR: trailing whitespace
++^I#define ARLAN_DEBUG(a,b) $
+
+ERROR: space required after that ',' (ctx:VxV)
++ #define ARLAN_DEBUG(a,b)
+ ^
+
+ERROR: open brace '{' following struct go on the same line
++struct arlan_shmem
++{
+
+ERROR: trailing whitespace
++ /* Header Signature */ $
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++ int systemId; $
+
+ERROR: open brace '{' following struct go on the same line
++struct TxParam
++{
+
+ERROR: "foo * bar" should be "foo *bar"
++ struct arlan_shmem __iomem * card;
+
+ERROR: "foo * bar" should be "foo *bar"
++ struct arlan_shmem * conf;
+
+ERROR: trailing whitespace
++ struct arlan_conf_stru * Conf;^I $
+
+ERROR: "foo * bar" should be "foo *bar"
++ struct arlan_conf_stru * Conf;
+
+ERROR: trailing whitespace
++ $
+
+ERROR: space required after that ',' (ctx:VxV)
++#define READSHM(to,from,atype) {\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define READSHM(to,from,atype) {\
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ memcpy_fromio(&(tmp),&(from),sizeof(atype));\
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ memcpy_fromio(&(tmp),&(from),sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ memcpy_fromio(&(tmp),&(from),sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define READSHMEM(from,atype)\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define WRITESHM(to,from,atype) \
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define WRITESHM(to,from,atype) \
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ memcpy_toio(&(to),&tmpSHM,sizeof(atype));\
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ memcpy_toio(&(to),&tmpSHM,sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ memcpy_toio(&(to),&tmpSHM,sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define DEBUGSHM(levelSHM,stringSHM,stuff,atype) \
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define DEBUGSHM(levelSHM,stringSHM,stuff,atype) \
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++#define DEBUGSHM(levelSHM,stringSHM,stuff,atype) \
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ memcpy_fromio(&tmpSHM,&(stuff),sizeof(atype));\
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ memcpy_fromio(&tmpSHM,&(stuff),sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ memcpy_fromio(&tmpSHM,&(stuff),sizeof(atype));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ IFDEBUG(levelSHM) printk(stringSHM,tmpSHM);\
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ writeb(val,&(to))
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ writeb(val,&(to))
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ writew(val,&(to))
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ writew(val,&(to))
+ ^
+
+ERROR: space required after that ',' (ctx:VxO)
++ writel(val,&(to))
+ ^
+
+ERROR: space required before that '&' (ctx:OxV)
++ writel(val,&(to))
+ ^
+
+ERROR: space prohibited after that open parenthesis '('
++ ( ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationMode) > 0) && \
+
+ERROR: space prohibited after that open parenthesis '('
++ ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationStatus) == 0) )
+
+ERROR: space prohibited before that close parenthesis ')'
++ ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationStatus) == 0) )
+
+ERROR: code indent should use tabs where possible
++ ^IREADSHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage)$
+
+ERROR: space required before the open brace '{'
++#define writeControlRegister(dev, v){\
+
+ERROR: space required after that ',' (ctx:WxV)
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage ,((v) &0xF) );\
+ ^
+
+ERROR: need consistent spacing around '&' (ctx:WxV)
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage ,((v) &0xF) );\
+ ^
+
+ERROR: space prohibited before that close parenthesis ')'
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage ,((v) &0xF) );\
+
+ERROR: space required after that ',' (ctx:WxV)
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->controlRegister ,(v) );}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->controlRegister ,(v) );}
+ ^
+
+ERROR: space prohibited before that close parenthesis ')'
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->controlRegister ,(v) );}
+
+WARNING: suspect code indent for conditional statements (3, 6)
++ if (cr & ARLAN_CHANNEL_ATTENTION){ \
++ writeControlRegister(dev, (cr & ~ARLAN_CHANNEL_ATTENTION));\
+
+ERROR: space required before the open brace '{'
++ if (cr & ARLAN_CHANNEL_ATTENTION){ \
+
+ERROR: space required after that close brace '}'
++ }else \
+
+ERROR: space required before the open brace '{'
++#define clearChannelAttention(dev){ \
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CHANNEL_ATTENTION);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CHANNEL_ATTENTION);}
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_RESET);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_RESET);}
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_RESET);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_RESET);}
+ ^
+
+ERROR: space required before the open brace '{'
++#define setInterruptEnable(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_INTERRUPT_ENABLE) ;}
+ ^
+
+ERROR: space required after that ';' (ctx:WxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_INTERRUPT_ENABLE) ;}
+ ^
+
+ERROR: space required before the open brace '{'
++#define clearInterruptEnable(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_INTERRUPT_ENABLE) ;}
+ ^
+
+ERROR: space required after that ';' (ctx:WxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_INTERRUPT_ENABLE) ;}
+ ^
+
+ERROR: space required before the open brace '{'
++#define setClearInterrupt(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_CLEAR_INTERRUPT) ;}
+ ^
+
+ERROR: space required after that ';' (ctx:WxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_CLEAR_INTERRUPT) ;}
+ ^
+
+ERROR: space required before the open brace '{'
++#define clearClearInterrupt(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CLEAR_INTERRUPT);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CLEAR_INTERRUPT);}
+ ^
+
+ERROR: space required before the open brace '{'
++#define setPowerOff(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | (ARLAN_POWER && ARLAN_ACCESS));\
+ ^
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+ ^
+
+ERROR: space required before the open brace '{'
++#define setPowerOn(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~(ARLAN_POWER)); }
+ ^
+
+ERROR: space required before the open brace '{'
++#define arlan_lock_card_access(dev){\
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+ ^
+
+ERROR: space required after that ';' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+ ^
+
+ERROR: space required before the open brace '{'
++#define arlan_unlock_card_access(dev){\
+
+ERROR: trailing whitespace
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_ACCESS ); } $
+
+ERROR: space required after that ',' (ctx:VxV)
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_ACCESS ); }
+ ^
+
+ERROR: space prohibited before that close parenthesis ')'
++ writeControlRegister(dev,readControlRegister(dev) | ARLAN_ACCESS ); }
+
+ERROR: trailing whitespace
++ $
+
+ERROR: trailing whitespace
++ $
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/arlan/arlan.h | 132 ++++++++++++++++++++----------------------
+ 1 file changed, 64 insertions(+), 68 deletions(-)
+
+--- a/drivers/staging/arlan/arlan.h
++++ b/drivers/staging/arlan/arlan.h
+@@ -1,6 +1,6 @@
+ /*
+ * Copyright (C) 1997 Cullen Jennings
+- * Copyright (C) 1998 Elmer.Joandi@ut.ee, +37-255-13500
++ * Copyright (C) 1998 Elmer.Joandi@ut.ee, +37-255-13500
+ * GNU General Public License applies
+ */
+
+@@ -20,14 +20,14 @@
+ #include <linux/init.h>
+ #include <linux/bitops.h>
+ #include <asm/system.h>
+-#include <asm/io.h>
++#include <linux/io.h>
+ #include <linux/errno.h>
+ #include <linux/delay.h>
+ #include <linux/netdevice.h>
+ #include <linux/etherdevice.h>
+
+
+-//#define ARLAN_DEBUGGING 1
++/* #define ARLAN_DEBUGGING 1 */
+
+ #define ARLAN_PROC_INTERFACE
+ #define MAX_ARLANS 4 /* not more than 4 ! */
+@@ -51,8 +51,8 @@ extern int arlan_debug;
+ extern int arlan_entry_debug;
+ extern int arlan_exit_debug;
+ extern int testMemory;
+-extern int arlan_command(struct net_device * dev, int command);
+-
++extern int arlan_command(struct net_device *dev, int command);
++
+ #define SIDUNKNOWN -1
+ #define radioNodeIdUNKNOWN -1
+ #define irqUNKNOWN 0
+@@ -65,22 +65,21 @@ extern int arlan_command(struct net_
+ #define registrationModeUNKNOWN -1
+
+
+-#define IFDEBUG( L ) if ( (L) & arlan_debug )
+-#define ARLAN_FAKE_HDR_LEN 12
++#define IFDEBUG(L) if ((L) & arlan_debug)
++#define ARLAN_FAKE_HDR_LEN 12
+
+ #ifdef ARLAN_DEBUGGING
+ #define DEBUG 1
+ #define ARLAN_ENTRY_EXIT_DEBUGGING 1
+- #define ARLAN_DEBUG(a,b) printk(KERN_DEBUG a, b)
++ #define ARLAN_DEBUG(a, b) printk(KERN_DEBUG a, b)
+ #else
+- #define ARLAN_DEBUG(a,b)
++ #define ARLAN_DEBUG(a, b)
+ #endif
+
+ #define ARLAN_SHMEM_SIZE 0x2000
+
+-struct arlan_shmem
+-{
+- /* Header Signature */
++struct arlan_shmem {
++ /* Header Signature */
+ volatile char textRegion[48];
+ volatile u_char resetFlag;
+ volatile u_char diagnosticInfo;
+@@ -94,7 +93,7 @@ struct arlan_shmem
+ volatile u_char radioModule;// shows EEPROM, can be overridden at 0x111
+ volatile u_char defaultChannelSet; // shows EEProm, can be overriiden at 0x10A
+ volatile u_char _2[47];
+-
++
+ /* Control/Status Block - 0x0080 */
+ volatile u_char interruptInProgress; /* not used by lancpu */
+ volatile u_char cntrlRegImage; /* not used by lancpu */
+@@ -113,7 +112,7 @@ struct arlan_shmem
+ volatile u_char rxQuality;
+ volatile u_char scrambled;
+ volatile u_char _4[1];
+-
++
+ /* Transmit Status - 0x00b0 */
+ volatile u_char txStatus;
+ volatile u_char txAckQuality;
+@@ -151,7 +150,7 @@ struct arlan_shmem
+ volatile u_short routerId;
+ volatile u_char _10[9];
+ volatile u_char txAttenuation;
+- volatile u_char systemId[4];
++ volatile u_char systemId[4];
+ volatile u_short globalChecksum;
+ volatile u_char _11[4];
+ volatile u_short maxDatagramSize;
+@@ -207,19 +206,19 @@ struct arlan_shmem
+ volatile u_char hostcpuLock;
+ volatile u_char lancpuLock;
+ volatile u_char resetTime[18];
+-
++
+ volatile u_char numDatagramsTransmitted[4];
+ volatile u_char numReTransmissions[4];
+ volatile u_char numFramesDiscarded[4];
+ volatile u_char numDatagramsReceived[4];
+ volatile u_char numDuplicateReceivedFrames[4];
+ volatile u_char numDatagramsDiscarded[4];
+-
++
+ volatile u_short maxNumReTransmitDatagram;
+ volatile u_short maxNumReTransmitFrames;
+ volatile u_short maxNumConsecutiveDuplicateFrames;
+ /* misaligned here so we have to go to characters */
+-
++
+ volatile u_char numBytesTransmitted[4];
+ volatile u_char numBytesReceived[4];
+ volatile u_char numCRCErrors[4];
+@@ -259,7 +258,7 @@ struct arlan_conf_stru {
+ int channelNumber;
+ int scramblingDisable;
+ int txAttenuation;
+- int systemId;
++ int systemId;
+ int maxDatagramSize;
+ int maxFrameSize;
+ int maxRetries;
+@@ -316,8 +315,7 @@ struct arlan_conf_stru {
+
+ extern struct arlan_conf_stru arlan_conf[MAX_ARLANS];
+
+-struct TxParam
+-{
++struct TxParam {
+ volatile short offset;
+ volatile short length;
+ volatile u_char dest[6];
+@@ -330,12 +328,12 @@ struct TxParam
+ #define TX_RING_SIZE 2
+ /* Information that need to be kept for each board. */
+ struct arlan_private {
+- struct arlan_shmem __iomem * card;
+- struct arlan_shmem * conf;
++ struct arlan_shmem __iomem *card;
++ struct arlan_shmem *conf;
+
+- struct arlan_conf_stru * Conf;
++ struct arlan_conf_stru *Conf;
+ int bad;
+- int reset;
++ int reset;
+ unsigned long lastReset;
+ struct timer_list timer;
+ struct timer_list tx_delay_timer;
+@@ -407,38 +405,38 @@ struct arlan_private {
+
+ #define TXBuffStart(dev) offsetof(struct arlan_shmem, txBuffer)
+ #define TXBuffEnd(dev) offsetof(struct arlan_shmem, xxBuffer)
+-
+-#define READSHM(to,from,atype) {\
++
++#define READSHM(to, from, atype) {\
+ atype tmp;\
+- memcpy_fromio(&(tmp),&(from),sizeof(atype));\
++ memcpy_fromio(&(tmp), &(from), sizeof(atype));\
+ to = tmp;\
+ }
+
+-#define READSHMEM(from,atype)\
++#define READSHMEM(from, atype)\
+ atype from; \
+ READSHM(from, arlan->from, atype);
+
+-#define WRITESHM(to,from,atype) \
++#define WRITESHM(to, from, atype) \
+ { atype tmpSHM = from;\
+- memcpy_toio(&(to),&tmpSHM,sizeof(atype));\
++ memcpy_toio(&(to), &tmpSHM, sizeof(atype));\
+ }
+
+-#define DEBUGSHM(levelSHM,stringSHM,stuff,atype) \
++#define DEBUGSHM(levelSHM, stringSHM, stuff, atype) \
+ { atype tmpSHM; \
+- memcpy_fromio(&tmpSHM,&(stuff),sizeof(atype));\
+- IFDEBUG(levelSHM) printk(stringSHM,tmpSHM);\
++ memcpy_fromio(&tmpSHM, &(stuff), sizeof(atype));\
++ IFDEBUG(levelSHM) printk(stringSHM, tmpSHM);\
+ }
+
+ #define WRITESHMB(to, val) \
+- writeb(val,&(to))
++ writeb(val, &(to))
+ #define READSHMB(to) \
+ readb(&(to))
+ #define WRITESHMS(to, val) \
+- writew(val,&(to))
++ writew(val, &(to))
+ #define READSHMS(to) \
+ readw(&(to))
+ #define WRITESHMI(to, val) \
+- writel(val,&(to))
++ writel(val, &(to))
+ #define READSHMI(to) \
+ readl(&(to))
+
+@@ -447,51 +445,51 @@ struct arlan_private {
+
+
+ #define registrationBad(dev)\
+- ( ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationMode) > 0) && \
+- ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationStatus) == 0) )
++ (( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationMode) > 0) && \
++ ( READSHMB(((struct arlan_private *)netdev_priv(dev))->card->registrationStatus) == 0))
+
+
+ #define readControlRegister(dev)\
+- READSHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage)
++ READSHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage)
+
+-#define writeControlRegister(dev, v){\
+- WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage ,((v) &0xF) );\
+- WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->controlRegister ,(v) );}
++#define writeControlRegister(dev, v) {\
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->cntrlRegImage, ((v) & 0xF));\
++ WRITESHMB(((struct arlan_private *)netdev_priv(dev))->card->controlRegister, (v)); }
+
+
+ #define arlan_interrupt_lancpu(dev) {\
+ int cr; \
+ \
+ cr = readControlRegister(dev);\
+- if (cr & ARLAN_CHANNEL_ATTENTION){ \
++ if (cr & ARLAN_CHANNEL_ATTENTION) { \
+ writeControlRegister(dev, (cr & ~ARLAN_CHANNEL_ATTENTION));\
+- }else \
++ } else \
+ writeControlRegister(dev, (cr | ARLAN_CHANNEL_ATTENTION));\
+ }
+
+-#define clearChannelAttention(dev){ \
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CHANNEL_ATTENTION);}
++#define clearChannelAttention(dev) { \
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_CHANNEL_ATTENTION); }
+ #define setHardwareReset(dev) {\
+- writeControlRegister(dev,readControlRegister(dev) | ARLAN_RESET);}
++ writeControlRegister(dev, readControlRegister(dev) | ARLAN_RESET); }
+ #define clearHardwareReset(dev) {\
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_RESET);}
+-#define setInterruptEnable(dev){\
+- writeControlRegister(dev,readControlRegister(dev) | ARLAN_INTERRUPT_ENABLE) ;}
+-#define clearInterruptEnable(dev){\
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_INTERRUPT_ENABLE) ;}
+-#define setClearInterrupt(dev){\
+- writeControlRegister(dev,readControlRegister(dev) | ARLAN_CLEAR_INTERRUPT) ;}
+-#define clearClearInterrupt(dev){\
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_CLEAR_INTERRUPT);}
+-#define setPowerOff(dev){\
+- writeControlRegister(dev,readControlRegister(dev) | (ARLAN_POWER && ARLAN_ACCESS));\
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+-#define setPowerOn(dev){\
+- writeControlRegister(dev,readControlRegister(dev) & ~(ARLAN_POWER)); }
+-#define arlan_lock_card_access(dev){\
+- writeControlRegister(dev,readControlRegister(dev) & ~ARLAN_ACCESS);}
+-#define arlan_unlock_card_access(dev){\
+- writeControlRegister(dev,readControlRegister(dev) | ARLAN_ACCESS ); }
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_RESET); }
++#define setInterruptEnable(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) | ARLAN_INTERRUPT_ENABLE) ; }
++#define clearInterruptEnable(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_INTERRUPT_ENABLE) ; }
++#define setClearInterrupt(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) | ARLAN_CLEAR_INTERRUPT) ; }
++#define clearClearInterrupt(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_CLEAR_INTERRUPT); }
++#define setPowerOff(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) | (ARLAN_POWER && ARLAN_ACCESS));\
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_ACCESS); }
++#define setPowerOn(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) & ~(ARLAN_POWER)); }
++#define arlan_lock_card_access(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) & ~ARLAN_ACCESS); }
++#define arlan_unlock_card_access(dev) {\
++ writeControlRegister(dev, readControlRegister(dev) | ARLAN_ACCESS); }
+
+
+
+@@ -525,7 +523,6 @@ struct arlan_private {
+ | ARLAN_COMMAND_RESET)
+
+
+-
+ #define ARLAN_DEBUG_CHAIN_LOCKS 0x00001
+ #define ARLAN_DEBUG_RESET 0x00002
+ #define ARLAN_DEBUG_TIMING 0x00004
+@@ -536,4 +533,3 @@ struct arlan_private {
+ #define ARLAN_DEBUG_INTERRUPT 0x00080
+ #define ARLAN_DEBUG_STARTUP 0x00100
+ #define ARLAN_DEBUG_SHUTDOWN 0x00200
+-
diff --git a/staging/staging-arlan-arlan.h-more-checkpatch-cleanup.patch b/staging/staging-arlan-arlan.h-more-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..b8ede156b0ccc0
--- /dev/null
+++ b/staging/staging-arlan-arlan.h-more-checkpatch-cleanup.patch
@@ -0,0 +1,35 @@
+From andrea.gelmini@gelma.net Fri Feb 26 16:42:43 2010
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+Date: Fri, 26 Feb 2010 17:36:58 +0100
+Subject: Staging: arlan: arlan.h: more Checkpatch cleanup
+To: gregkh@suse.de
+Cc: devel@driverdev.osuosl.org, Andrea Gelmini <andrea.gelmini@gelma.net>, bzolnier@gmail.com
+Message-ID: <1267202220-15640-3-git-send-email-andrea.gelmini@gelma.net>
+
+
+ERROR: do not use C99 // comments
++ volatile u_char radioModule;// shows EEPROM, can be overridden at 0x111
+
+ERROR: do not use C99 // comments
++ volatile u_char defaultChannelSet; // shows EEProm, can be overriiden at 0x10A
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/arlan/arlan.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/staging/arlan/arlan.h
++++ b/drivers/staging/arlan/arlan.h
+@@ -90,8 +90,8 @@ struct arlan_shmem {
+ volatile u_char hardwareType;
+ volatile u_char majorHardwareVersion;
+ volatile u_char minorHardwareVersion;
+- volatile u_char radioModule;// shows EEPROM, can be overridden at 0x111
+- volatile u_char defaultChannelSet; // shows EEProm, can be overriiden at 0x10A
++ volatile u_char radioModule;/* shows EEPROM, can be overridden at 0x111 */
++ volatile u_char defaultChannelSet; /* shows EEProm, can be overriiden at 0x10A */
+ volatile u_char _2[47];
+
+ /* Control/Status Block - 0x0080 */
diff --git a/staging/staging-arlan-makefile-checkpatch-cleanup.patch b/staging/staging-arlan-makefile-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..4dcc5354921b55
--- /dev/null
+++ b/staging/staging-arlan-makefile-checkpatch-cleanup.patch
@@ -0,0 +1,26 @@
+From andrea.gelmini@gelma.net Fri Feb 26 16:42:07 2010
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+Date: Fri, 26 Feb 2010 17:36:59 +0100
+Subject: Staging: arlan: Makefile: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: devel@driverdev.osuosl.org, Andrea Gelmini <andrea.gelmini@gelma.net>, bzolnier@gmail.com
+Message-ID: <1267202220-15640-4-git-send-email-andrea.gelmini@gelma.net>
+
+
+ERROR: trailing whitespace
++obj-$(CONFIG_ARLAN) += arlan.o $
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/arlan/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/staging/arlan/Makefile
++++ b/drivers/staging/arlan/Makefile
+@@ -1,3 +1,3 @@
+-obj-$(CONFIG_ARLAN) += arlan.o
++obj-$(CONFIG_ARLAN) += arlan.o
+
+ arlan-objs := arlan-main.o arlan-proc.o
diff --git a/staging/staging-cleanup-useless-headers.patch b/staging/staging-cleanup-useless-headers.patch
new file mode 100644
index 00000000000000..bce6f08ff96ca7
--- /dev/null
+++ b/staging/staging-cleanup-useless-headers.patch
@@ -0,0 +1,61 @@
+From abogani@texware.it Fri Feb 26 16:34:48 2010
+From: Alessio Igor Bogani <abogani@texware.it>
+Date: Fri, 26 Feb 2010 08:44:27 +0100
+Subject: Staging: Cleanup useless headers
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: linux-kernel@vger.kernel.org, Alessio Igor Bogani <abogani@texware.it>
+Message-ID: <1267170267-2668-1-git-send-email-abogani@texware.it>
+
+
+BKL isn't anymore present into these files thus it is no necessary still include smp_lock.h.
+
+Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/comedi_compat32.c | 1 -
+ drivers/staging/comedi/drivers/usbdux.c | 1 -
+ drivers/staging/comedi/drivers/usbduxfast.c | 1 -
+ drivers/staging/panel/panel.c | 1 -
+ 4 files changed, 4 deletions(-)
+
+--- a/drivers/staging/comedi/comedi_compat32.c
++++ b/drivers/staging/comedi/comedi_compat32.c
+@@ -26,7 +26,6 @@
+
+ #define __NO_VERSION__
+ #include "comedi.h"
+-#include <linux/smp_lock.h>
+ #include <linux/uaccess.h>
+
+ #include "comedi_compat32.h"
+--- a/drivers/staging/comedi/drivers/usbdux.c
++++ b/drivers/staging/comedi/drivers/usbdux.c
+@@ -95,7 +95,6 @@ sampling rate. If you sample two channel
+ #include <linux/slab.h>
+ #include <linux/input.h>
+ #include <linux/usb.h>
+-#include <linux/smp_lock.h>
+ #include <linux/fcntl.h>
+ #include <linux/compiler.h>
+ #include <linux/firmware.h>
+--- a/drivers/staging/comedi/drivers/usbduxfast.c
++++ b/drivers/staging/comedi/drivers/usbduxfast.c
+@@ -44,7 +44,6 @@
+ #include <linux/slab.h>
+ #include <linux/input.h>
+ #include <linux/usb.h>
+-#include <linux/smp_lock.h>
+ #include <linux/fcntl.h>
+ #include <linux/compiler.h>
+ #include "comedi_fc.h"
+--- a/drivers/staging/panel/panel.c
++++ b/drivers/staging/panel/panel.c
+@@ -41,7 +41,6 @@
+ #include <linux/signal.h>
+ #include <linux/sched.h>
+ #include <linux/spinlock.h>
+-#include <linux/smp_lock.h>
+ #include <linux/interrupt.h>
+ #include <linux/miscdevice.h>
+ #include <linux/slab.h>
diff --git a/staging/staging-comedi-addi_amcc_s5920.c-checkpatch-cleanup.patch b/staging/staging-comedi-addi_amcc_s5920.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..960f26dc860705
--- /dev/null
+++ b/staging/staging-comedi-addi_amcc_s5920.c-checkpatch-cleanup.patch
@@ -0,0 +1,40 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:37:20 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:14:56 +0100
+Subject: Staging: comedi: addi_amcc_S5920.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-3-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (i_Counter == 0) {
+[...]
++ } else {
+[...]
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/addi-data/addi_amcc_S5920.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/addi-data/addi_amcc_S5920.c
++++ b/drivers/staging/comedi/drivers/addi-data/addi_amcc_S5920.c
+@@ -173,11 +173,10 @@ int i_AddiHeaderRW_ReadEeprom(int i_NbOf
+ } while (dw_eeprom_busy == EEPROM_BUSY);
+
+ /* Select the upper address part */
+- if (i_Counter == 0) {
++ if (i_Counter == 0)
+ b_ReadLowByte = pb_ReadByte[0];
+- } else {
++ else
+ b_ReadHighByte = pb_ReadByte[0];
+- }
+
+ /* Sleep */
+ msleep(1);
diff --git a/staging/staging-comedi-addi_common.h-checkpatch-cleanup.patch b/staging/staging-comedi-addi_common.h-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..e220ca5dd31a5e
--- /dev/null
+++ b/staging/staging-comedi-addi_common.h-checkpatch-cleanup.patch
@@ -0,0 +1,37 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:37:34 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:14:57 +0100
+Subject: Staging: comedi: addi_common.h: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-4-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: code indent should use tabs where possible
++ const struct comedi_lrange *pr_AiRangelist;^I/* rangelist for A/D */$
+
+ERROR: code indent should use tabs where possible
++ const struct comedi_lrange *pr_AoRangelist;^I/* rangelist for D/A */$
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/addi-data/addi_common.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/addi-data/addi_common.h
++++ b/drivers/staging/comedi/drivers/addi-data/addi_common.h
+@@ -77,8 +77,8 @@ struct addi_board {
+ int i_NbrAoChannel; /* num of D/A chans */
+ int i_AiMaxdata; /* resolution of A/D */
+ int i_AoMaxdata; /* resolution of D/A */
+- const struct comedi_lrange *pr_AiRangelist; /* rangelist for A/D */
+- const struct comedi_lrange *pr_AoRangelist; /* rangelist for D/A */
++ const struct comedi_lrange *pr_AiRangelist; /* rangelist for A/D */
++ const struct comedi_lrange *pr_AoRangelist; /* rangelist for D/A */
+
+ int i_NbrDiChannel; /* Number of DI channels */
+ int i_NbrDoChannel; /* Number of DO channels */
diff --git a/staging/staging-comedi-amplc_pci224.c-coding-style-cleanups.patch b/staging/staging-comedi-amplc_pci224.c-coding-style-cleanups.patch
new file mode 100644
index 00000000000000..6008f9f02669c4
--- /dev/null
+++ b/staging/staging-comedi-amplc_pci224.c-coding-style-cleanups.patch
@@ -0,0 +1,42 @@
+From dcb314@hotmail.com Fri Feb 26 16:36:25 2010
+From: d binderman <dcb314@hotmail.com>
+Date: Sun, 21 Feb 2010 10:02:59 +0000
+Subject: Staging: comedi: amplc_pci224.c: coding style cleanups
+To: <gregkh@suse.de>
+Message-ID: <BLU108-W143188CB36177DFB5357849C440@phx.gbl>
+
+
+Signed-off-by: David Binderman <dcb314@hotmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/amplc_pci224.c | 16 ++++------------
+ 1 file changed, 4 insertions(+), 12 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/amplc_pci224.c
++++ b/drivers/staging/comedi/drivers/amplc_pci224.c
+@@ -1536,20 +1536,12 @@ static int pci224_detach(struct comedi_d
+
+ s = dev->subdevices + 0;
+ /* AO subdevice */
+- if (s->range_table_list) {
+- kfree(s->range_table_list);
+- }
++ kfree(s->range_table_list);
+ }
+ if (devpriv) {
+- if (devpriv->ao_readback) {
+- kfree(devpriv->ao_readback);
+- }
+- if (devpriv->ao_scan_vals) {
+- kfree(devpriv->ao_scan_vals);
+- }
+- if (devpriv->ao_scan_order) {
+- kfree(devpriv->ao_scan_order);
+- }
++ kfree(devpriv->ao_readback);
++ kfree(devpriv->ao_scan_vals);
++ kfree(devpriv->ao_scan_order);
+ if (devpriv->pci_dev) {
+ if (dev->iobase) {
+ comedi_pci_disable(devpriv->pci_dev);
diff --git a/staging/staging-comedi-cb_pcidas.c-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcidas.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..1353808b43e6ff
--- /dev/null
+++ b/staging/staging-comedi-cb_pcidas.c-checkpatch-cleanup.patch
@@ -0,0 +1,168 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:37:58 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:14:59 +0100
+Subject: Staging: comedi: cb_pcidas.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-6-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: "foo * bar" should be "foo *bar"
++ uint8_t * data);
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->s5933_config) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (cmd->stop_src == TRIG_COUNT) {
++ devpriv->count = cmd->chanlist_len * cmd->stop_arg;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (cmd->stop_src == TRIG_COUNT) {
++ devpriv->ao_count = cmd->chanlist_len * cmd->stop_arg;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (cmd->stop_src == TRIG_COUNT) {
++ devpriv->ao_count -= num_points;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (dev->attached == 0) {
++ return IRQ_NONE;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if ((status & (INT | EOAI | LADFUL | DAHFI | DAEMI)) == 0) {
++ comedi_error(dev, "spurious interrupt");
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (status & (DAHFI | DAEMI)) {
++ handle_ao_interrupt(dev, status);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (async->cmd.stop_src == TRIG_COUNT) {
++ devpriv->ao_count -= num_points;
++ }
+
+ERROR: "foo * bar" should be "foo *bar"
++ uint8_t * data)
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/cb_pcidas.c | 28 ++++++++++------------------
+ 1 file changed, 10 insertions(+), 18 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/cb_pcidas.c
++++ b/drivers/staging/comedi/drivers/cb_pcidas.c
+@@ -518,7 +518,7 @@ static int trimpot_7376_write(struct com
+ static int trimpot_8402_write(struct comedi_device *dev, unsigned int channel,
+ uint8_t value);
+ static int nvram_read(struct comedi_device *dev, unsigned int address,
+- uint8_t * data);
++ uint8_t *data);
+
+ static inline unsigned int cal_enable_bits(struct comedi_device *dev)
+ {
+@@ -760,9 +760,8 @@ static int cb_pcidas_detach(struct comed
+ if (dev->subdevices)
+ subdev_8255_cleanup(dev, dev->subdevices + 2);
+ if (devpriv && devpriv->pci_dev) {
+- if (devpriv->s5933_config) {
++ if (devpriv->s5933_config)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+
+@@ -1248,9 +1247,8 @@ static int cb_pcidas_ai_cmd(struct comed
+ cmd->flags & TRIG_ROUND_MASK);
+
+ /* set number of conversions */
+- if (cmd->stop_src == TRIG_COUNT) {
++ if (cmd->stop_src == TRIG_COUNT)
+ devpriv->count = cmd->chanlist_len * cmd->stop_arg;
+- }
+ /* enable interrupts */
+ spin_lock_irqsave(&dev->spinlock, flags);
+ devpriv->adc_fifo_bits |= INTE;
+@@ -1449,9 +1447,8 @@ static int cb_pcidas_ao_cmd(struct comed
+ devpriv->ao_divisor2, 2);
+ }
+ /* set number of conversions */
+- if (cmd->stop_src == TRIG_COUNT) {
++ if (cmd->stop_src == TRIG_COUNT)
+ devpriv->ao_count = cmd->chanlist_len * cmd->stop_arg;
+- }
+ /* set pacer source */
+ spin_lock_irqsave(&dev->spinlock, flags);
+ switch (cmd->scan_begin_src) {
+@@ -1494,9 +1491,8 @@ static int cb_pcidas_ao_inttrig(struct c
+ num_points * sizeof(short));
+ num_points = num_bytes / sizeof(short);
+
+- if (cmd->stop_src == TRIG_COUNT) {
++ if (cmd->stop_src == TRIG_COUNT)
+ devpriv->ao_count -= num_points;
+- }
+ /* write data to board's fifo */
+ outsw(devpriv->ao_registers + DACDATA, devpriv->ao_buffer, num_bytes);
+
+@@ -1534,9 +1530,8 @@ static irqreturn_t cb_pcidas_interrupt(i
+ static const int timeout = 10000;
+ unsigned long flags;
+
+- if (dev->attached == 0) {
++ if (dev->attached == 0)
+ return IRQ_NONE;
+- }
+
+ async = s->async;
+ async->events = 0;
+@@ -1558,15 +1553,13 @@ static irqreturn_t cb_pcidas_interrupt(i
+
+ status = inw(devpriv->control_status + INT_ADCFIFO);
+ #ifdef CB_PCIDAS_DEBUG
+- if ((status & (INT | EOAI | LADFUL | DAHFI | DAEMI)) == 0) {
++ if ((status & (INT | EOAI | LADFUL | DAHFI | DAEMI)) == 0)
+ comedi_error(dev, "spurious interrupt");
+- }
+ #endif
+
+ /* check for analog output interrupt */
+- if (status & (DAHFI | DAEMI)) {
++ if (status & (DAHFI | DAEMI))
+ handle_ao_interrupt(dev, status);
+- }
+ /* check for analog input interrupts */
+ /* if fifo half-full */
+ if (status & ADHFI) {
+@@ -1675,9 +1668,8 @@ static void handle_ao_interrupt(struct c
+ num_points * sizeof(short));
+ num_points = num_bytes / sizeof(short);
+
+- if (async->cmd.stop_src == TRIG_COUNT) {
++ if (async->cmd.stop_src == TRIG_COUNT)
+ devpriv->ao_count -= num_points;
+- }
+ /* write data to board's fifo */
+ outsw(devpriv->ao_registers + DACDATA, devpriv->ao_buffer,
+ num_points);
+@@ -1852,7 +1844,7 @@ static int wait_for_nvram_ready(unsigned
+ }
+
+ static int nvram_read(struct comedi_device *dev, unsigned int address,
+- uint8_t * data)
++ uint8_t *data)
+ {
+ unsigned long iobase = devpriv->s5933_config;
+
diff --git a/staging/staging-comedi-cb_pcidda.c-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcidda.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..51d0adafd30770
--- /dev/null
+++ b/staging/staging-comedi-cb_pcidda.c-checkpatch-cleanup.patch
@@ -0,0 +1,84 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:38:13 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:00 +0100
+Subject: Staging: comedi: cb_pcidda.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-7-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->dac) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (inw_p(devpriv->dac + DACALIBRATION1) & SERIAL_OUT_BIT) {
++ value |= 1 << (value_width - i);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ for (i = 0; i < max_num_caldacs; i++) {
++ cal2_bits |= DESELECT_CALDAC_BIT(i);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ for (i = 0; i < max_num_caldacs; i++) {
++ cal2_bits |= DESELECT_CALDAC_BIT(i);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/cb_pcidda.c | 12 ++++--------
+ 1 file changed, 4 insertions(+), 8 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/cb_pcidda.c
++++ b/drivers/staging/comedi/drivers/cb_pcidda.c
+@@ -410,9 +410,8 @@ static int cb_pcidda_detach(struct comed
+ */
+ if (devpriv) {
+ if (devpriv->pci_dev) {
+- if (devpriv->dac) {
++ if (devpriv->dac)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+ }
+@@ -677,9 +676,8 @@ static unsigned int cb_pcidda_serial_in(
+
+ for (i = 1; i <= value_width; i++) {
+ /* read bits most significant bit first */
+- if (inw_p(devpriv->dac + DACALIBRATION1) & SERIAL_OUT_BIT) {
++ if (inw_p(devpriv->dac + DACALIBRATION1) & SERIAL_OUT_BIT)
+ value |= 1 << (value_width - i);
+- }
+ }
+
+ return value;
+@@ -716,9 +714,8 @@ static unsigned int cb_pcidda_read_eepro
+ /* send serial output stream to eeprom */
+ cal2_bits = SELECT_EEPROM_BIT | DESELECT_REF_DAC_BIT | DUMMY_BIT;
+ /* deactivate caldacs (one caldac for every two channels) */
+- for (i = 0; i < max_num_caldacs; i++) {
++ for (i = 0; i < max_num_caldacs; i++)
+ cal2_bits |= DESELECT_CALDAC_BIT(i);
+- }
+ outw_p(cal2_bits, devpriv->dac + DACALIBRATION2);
+
+ /* tell eeprom we want to read */
+@@ -756,9 +753,8 @@ static void cb_pcidda_write_caldac(struc
+ */
+ cal2_bits = DESELECT_REF_DAC_BIT | DUMMY_BIT;
+ /* deactivate caldacs (one caldac for every two channels) */
+- for (i = 0; i < max_num_caldacs; i++) {
++ for (i = 0; i < max_num_caldacs; i++)
+ cal2_bits |= DESELECT_CALDAC_BIT(i);
+- }
+ /* activate the caldac we want */
+ cal2_bits &= ~DESELECT_CALDAC_BIT(caldac);
+ outw_p(cal2_bits, devpriv->dac + DACALIBRATION2);
diff --git a/staging/staging-comedi-cb_pcidio.c-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcidio.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..e0130a8e5b42e9
--- /dev/null
+++ b/staging/staging-comedi-cb_pcidio.c-checkpatch-cleanup.patch
@@ -0,0 +1,50 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:38:23 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:01 +0100
+Subject: Staging: comedi: cb_pcidio.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-8-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->dio_reg_base) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ for (i = 0; i < thisboard->n_8255; i++) {
++ subdev_8255_cleanup(dev, dev->subdevices + i);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/cb_pcidio.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/cb_pcidio.c
++++ b/drivers/staging/comedi/drivers/cb_pcidio.c
+@@ -283,17 +283,15 @@ static int pcidio_detach(struct comedi_d
+ printk("comedi%d: cb_pcidio: remove\n", dev->minor);
+ if (devpriv) {
+ if (devpriv->pci_dev) {
+- if (devpriv->dio_reg_base) {
++ if (devpriv->dio_reg_base)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+ }
+ if (dev->subdevices) {
+ int i;
+- for (i = 0; i < thisboard->n_8255; i++) {
++ for (i = 0; i < thisboard->n_8255; i++)
+ subdev_8255_cleanup(dev, dev->subdevices + i);
+- }
+ }
+ return 0;
+ }
diff --git a/staging/staging-comedi-cb_pcimdas.c-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcimdas.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..4fd573f8bb0cf1
--- /dev/null
+++ b/staging/staging-comedi-cb_pcimdas.c-checkpatch-cleanup.patch
@@ -0,0 +1,56 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:38:34 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:02 +0100
+Subject: Staging: comedi: cb_pcimdas.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-9-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (thisboard->has_dio) {
+[...]
++ } else {
+[...]
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->BADR0) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/cb_pcimdas.c | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/cb_pcimdas.c
++++ b/drivers/staging/comedi/drivers/cb_pcimdas.c
+@@ -330,11 +330,10 @@ found:
+
+ s = dev->subdevices + 2;
+ /* digital i/o subdevice */
+- if (thisboard->has_dio) {
++ if (thisboard->has_dio)
+ subdev_8255_init(dev, s, NULL, devpriv->BADR4);
+- } else {
++ else
+ s->type = COMEDI_SUBD_UNUSED;
+- }
+
+ printk("attached\n");
+
+@@ -365,9 +364,8 @@ static int cb_pcimdas_detach(struct come
+ free_irq(dev->irq, dev);
+ if (devpriv) {
+ if (devpriv->pci_dev) {
+- if (devpriv->BADR0) {
++ if (devpriv->BADR0)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+ }
diff --git a/staging/staging-comedi-cb_pcimdas.c-more-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcimdas.c-more-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..705c2973c1441c
--- /dev/null
+++ b/staging/staging-comedi-cb_pcimdas.c-more-checkpatch-cleanup.patch
@@ -0,0 +1,52 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:40:20 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:08 +0100
+Subject: Staging: comedi: cb_pcimdas.c: more Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-15-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (fifo_empty) {
++ break;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (irq) {
++ printk(", irq %u", irq);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/das800.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/das800.c
++++ b/drivers/staging/comedi/drivers/das800.c
+@@ -399,9 +399,8 @@ static irqreturn_t das800_interrupt(int
+ } else {
+ fifo_empty = 0; /* cio-das802/16 has no fifo empty status bit */
+ }
+- if (fifo_empty) {
++ if (fifo_empty)
+ break;
+- }
+ /* strip off extraneous bits for 12 bit cards */
+ if (thisboard->resolution == 12)
+ dataPoint = (dataPoint >> 4) & 0xfff;
+@@ -457,9 +456,8 @@ static int das800_attach(struct comedi_d
+ int board;
+
+ printk("comedi%d: das800: io 0x%lx", dev->minor, iobase);
+- if (irq) {
++ if (irq)
+ printk(", irq %u", irq);
+- }
+ printk("\n");
+
+ /* allocate and initialize dev->private */
diff --git a/staging/staging-comedi-cb_pcimdda.c-checkpatch-cleanup.patch b/staging/staging-comedi-cb_pcimdda.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..bbe54269f1d439
--- /dev/null
+++ b/staging/staging-comedi-cb_pcimdda.c-checkpatch-cleanup.patch
@@ -0,0 +1,56 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:38:47 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:03 +0100
+Subject: Staging: comedi: cb_pcimdda.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-10-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (it->options[2]) {
+[...]
++ } else {
+[...]
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->registers) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/cb_pcimdda.c | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/cb_pcimdda.c
++++ b/drivers/staging/comedi/drivers/cb_pcimdda.c
+@@ -284,11 +284,10 @@ static int attach(struct comedi_device *
+ s->n_chan = thisboard->ao_chans;
+ s->maxdata = figure_out_maxdata(thisboard->ao_bits);
+ /* this is hard-coded here */
+- if (it->options[2]) {
++ if (it->options[2])
+ s->range_table = &range_bipolar10;
+- } else {
++ else
+ s->range_table = &range_bipolar5;
+- }
+ s->insn_write = &ao_winsn;
+ s->insn_read = &ao_rinsn;
+
+@@ -337,9 +336,8 @@ static int detach(struct comedi_device *
+ }
+
+ if (devpriv->pci_dev) {
+- if (devpriv->registers) {
++ if (devpriv->registers)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+
diff --git a/staging/staging-comedi-comedi_fops.c-checkpatch-cleanup.patch b/staging/staging-comedi-comedi_fops.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..7ef70a8ddb1e6c
--- /dev/null
+++ b/staging/staging-comedi-comedi_fops.c-checkpatch-cleanup.patch
@@ -0,0 +1,75 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:37:09 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:14:55 +0100
+Subject: Staging: comedi: comedi_fops.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-2-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: do not initialise externals to 0 or NULL
++int comedi_num_legacy_minors = 0;
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (s->subdev_flags & SDF_CMD_READ) {
++ kill_fasync(&dev->async_queue, SIGIO, POLL_IN);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (s->subdev_flags & SDF_CMD_WRITE) {
++ kill_fasync(&dev->async_queue, SIGIO, POLL_OUT);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/comedi_fops.c | 12 +++++-------
+ 1 file changed, 5 insertions(+), 7 deletions(-)
+
+--- a/drivers/staging/comedi/comedi_fops.c
++++ b/drivers/staging/comedi/comedi_fops.c
+@@ -63,7 +63,7 @@ module_param(comedi_debug, int, 0644);
+ int comedi_autoconfig = 1;
+ module_param(comedi_autoconfig, bool, 0444);
+
+-int comedi_num_legacy_minors = 0;
++int comedi_num_legacy_minors;
+ module_param(comedi_num_legacy_minors, int, 0444);
+
+ static DEFINE_SPINLOCK(comedi_file_info_table_lock);
+@@ -1510,7 +1510,7 @@ static unsigned int comedi_poll(struct f
+ }
+
+ static ssize_t comedi_write(struct file *file, const char *buf, size_t nbytes,
+- loff_t * offset)
++ loff_t *offset)
+ {
+ struct comedi_subdevice *s;
+ struct comedi_async *async;
+@@ -1612,7 +1612,7 @@ done:
+ }
+
+ static ssize_t comedi_read(struct file *file, char *buf, size_t nbytes,
+- loff_t * offset)
++ loff_t *offset)
+ {
+ struct comedi_subdevice *s;
+ struct comedi_async *async;
+@@ -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-contec_pci_dio.c-checkpatch-cleanup.patch b/staging/staging-comedi-contec_pci_dio.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..b69e85b88cfbc6
--- /dev/null
+++ b/staging/staging-comedi-contec_pci_dio.c-checkpatch-cleanup.patch
@@ -0,0 +1,36 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:39:01 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:04 +0100
+Subject: Staging: comedi: contec_pci_dio.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-11-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (dev->iobase) {
++ comedi_pci_disable(devpriv->pci_dev);
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/contec_pci_dio.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/contec_pci_dio.c
++++ b/drivers/staging/comedi/drivers/contec_pci_dio.c
+@@ -173,9 +173,8 @@ static int contec_detach(struct comedi_d
+ printk("comedi%d: contec: remove\n", dev->minor);
+
+ if (devpriv && devpriv->pci_dev) {
+- if (dev->iobase) {
++ if (dev->iobase)
+ comedi_pci_disable(devpriv->pci_dev);
+- }
+ pci_dev_put(devpriv->pci_dev);
+ }
+
diff --git a/staging/staging-comedi-das08_cs.c-checkpatch-cleanup.patch b/staging/staging-comedi-das08_cs.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..876ff0700ef895
--- /dev/null
+++ b/staging/staging-comedi-das08_cs.c-checkpatch-cleanup.patch
@@ -0,0 +1,44 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:39:11 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:05 +0100
+Subject: Staging: comedi: das08_cs.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-12-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: code indent should use tabs where possible
++ NONE$
+
+ERROR: do not initialise statics to 0 or NULL
++static struct pcmcia_device *cur_dev = NULL;
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/das08_cs.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/das08_cs.c
++++ b/drivers/staging/comedi/drivers/das08_cs.c
+@@ -34,7 +34,7 @@ This is the PCMCIA-specific support spli
+ das08 driver.
+
+ Options (for pcm-das08):
+- NONE
++ NONE
+
+ Command support does not exist, but could be added for this board.
+ */
+@@ -52,7 +52,7 @@ Command support does not exist, but coul
+ #include <pcmcia/cistpl.h>
+ #include <pcmcia/ds.h>
+
+-static struct pcmcia_device *cur_dev = NULL;
++static struct pcmcia_device *cur_dev;
+
+ #define thisboard ((const struct das08_board_struct *)dev->board_ptr)
+
diff --git a/staging/staging-comedi-das6402.c-checkpatch-cleanup.patch b/staging/staging-comedi-das6402.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..32247319d52f0c
--- /dev/null
+++ b/staging/staging-comedi-das6402.c-checkpatch-cleanup.patch
@@ -0,0 +1,32 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:39:49 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:07 +0100
+Subject: Staging: comedi: das6402.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-14-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: Macros with complex values should be enclosed in parenthesis
++#define N_WORDS 3000*64
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/das6402.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/drivers/staging/comedi/drivers/das6402.c
++++ b/drivers/staging/comedi/drivers/das6402.c
+@@ -45,7 +45,7 @@ This driver has suffered bitrot.
+
+ #define DAS6402_SIZE 16
+
+-#define N_WORDS 3000*64
++#define N_WORDS (3000*64)
+
+ #define STOP 0
+ #define START 1
diff --git a/staging/staging-comedi-dmm32at.c-checkpatch-cleanup.patch b/staging/staging-comedi-dmm32at.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..a0e103d03de08f
--- /dev/null
+++ b/staging/staging-comedi-dmm32at.c-checkpatch-cleanup.patch
@@ -0,0 +1,40 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:40:37 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:09 +0100
+Subject: Staging: comedi: dmm32at.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-16-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (data[0] == COMEDI_OUTPUT) {
+[...]
++ } else {
+[...]
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/dmm32at.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/dmm32at.c
++++ b/drivers/staging/comedi/drivers/dmm32at.c
+@@ -1048,11 +1048,10 @@ static int dmm32at_dio_insn_config(struc
+ * value COMEDI_INPUT or COMEDI_OUTPUT. */
+
+ /* if output clear the bit, otherwise set it */
+- if (data[0] == COMEDI_OUTPUT) {
++ if (data[0] == COMEDI_OUTPUT)
+ devpriv->dio_config &= ~chanbit;
+- } else {
++ else
+ devpriv->dio_config |= chanbit;
+- }
+ /* get access to the DIO regs */
+ dmm_outb(dev, DMM32AT_CNTRL, DMM32AT_DIOACC);
+ /* set the DIO's to the new configuration setting */
diff --git a/staging/staging-comedi-drivers.c-checkpatch-cleanup.patch b/staging/staging-comedi-drivers.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..d29fd5b322adfe
--- /dev/null
+++ b/staging/staging-comedi-drivers.c-checkpatch-cleanup.patch
@@ -0,0 +1,151 @@
+From andrea.gelmini@gelma.net Fri Feb 26 16:42:58 2010
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+Date: Fri, 26 Feb 2010 17:37:00 +0100
+Subject: Staging: comedi: drivers.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: devel@driverdev.osuosl.org, bzolnier@gmail.com, Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267202220-15640-5-git-send-email-andrea.gelmini@gelma.net>
+
+
+WARNING: Use #include <linux/io.h> instead of <asm/io.h>
++#include <asm/io.h>
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (dev->driver) {
+[...]
++ } else {
+[...]
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (insn->insn == INSN_READ) {
++ data[0] = (new_data[1] >> (chan - base_bitfield_channel)) & 1;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (async->prealloc_buf && async->prealloc_bufsz == new_size) {
++ return 0;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (async->buf_page_list[i].virt_addr == NULL) {
++ break;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0) {
++ nbytes = free_end - async->buf_write_alloc_count;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0) {
++ nbytes = 0;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (async->buf_write_ptr >= async->prealloc_bufsz) {
++ async->buf_write_ptr %= async->prealloc_bufsz;
++ }
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers.c | 30 ++++++++++++++----------------
+ 1 file changed, 14 insertions(+), 16 deletions(-)
+
+--- a/drivers/staging/comedi/drivers.c
++++ b/drivers/staging/comedi/drivers.c
+@@ -44,7 +44,7 @@
+ #include <linux/cdev.h>
+ #include <linux/dma-mapping.h>
+
+-#include <asm/io.h>
++#include <linux/io.h>
+ #include <asm/system.h>
+
+ static int postconfig(struct comedi_device *dev);
+@@ -99,11 +99,10 @@ static void cleanup_device(struct comedi
+ static void __comedi_device_detach(struct comedi_device *dev)
+ {
+ dev->attached = 0;
+- if (dev->driver) {
++ if (dev->driver)
+ dev->driver->detach(dev);
+- } else {
++ else
+ printk("BUG: dev->driver=NULL in comedi_device_detach()\n");
+- }
+ cleanup_device(dev);
+ }
+
+@@ -380,9 +379,8 @@ static int insn_rw_emulate_bits(struct c
+ if (ret < 0)
+ return ret;
+
+- if (insn->insn == INSN_READ) {
++ if (insn->insn == INSN_READ)
+ data[0] = (new_data[1] >> (chan - base_bitfield_channel)) & 1;
+- }
+
+ return 1;
+ }
+@@ -429,9 +427,9 @@ int comedi_buf_alloc(struct comedi_devic
+ new_size = (new_size + PAGE_SIZE - 1) & PAGE_MASK;
+
+ /* if no change is required, do nothing */
+- if (async->prealloc_buf && async->prealloc_bufsz == new_size) {
++ if (async->prealloc_buf && async->prealloc_bufsz == new_size)
+ return 0;
+- }
++
+ /* deallocate old buffer */
+ if (async->prealloc_buf) {
+ vunmap(async->prealloc_buf);
+@@ -494,9 +492,9 @@ int comedi_buf_alloc(struct comedi_devic
+ (void *)
+ get_zeroed_page(GFP_KERNEL);
+ }
+- if (async->buf_page_list[i].virt_addr == NULL) {
++ if (async->buf_page_list[i].virt_addr == NULL)
+ break;
+- }
++
+ mem_map_reserve(virt_to_page
+ (async->buf_page_list[i].
+ virt_addr));
+@@ -619,9 +617,9 @@ unsigned int comedi_buf_write_alloc(stru
+ {
+ unsigned int free_end = async->buf_read_count + async->prealloc_bufsz;
+
+- if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0) {
++ if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0)
+ nbytes = free_end - async->buf_write_alloc_count;
+- }
++
+ async->buf_write_alloc_count += nbytes;
+ /* barrier insures the read of buf_read_count above occurs before
+ we write data to the write-alloc'ed buffer space */
+@@ -635,9 +633,9 @@ unsigned int comedi_buf_write_alloc_stri
+ {
+ unsigned int free_end = async->buf_read_count + async->prealloc_bufsz;
+
+- if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0) {
++ if ((int)(async->buf_write_alloc_count + nbytes - free_end) > 0)
+ nbytes = 0;
+- }
++
+ async->buf_write_alloc_count += nbytes;
+ /* barrier insures the read of buf_read_count above occurs before
+ we write data to the write-alloc'ed buffer space */
+@@ -657,9 +655,9 @@ unsigned comedi_buf_write_free(struct co
+ async->buf_write_count += nbytes;
+ async->buf_write_ptr += nbytes;
+ comedi_buf_munge(async, async->buf_write_count - async->munge_count);
+- if (async->buf_write_ptr >= async->prealloc_bufsz) {
++ if (async->buf_write_ptr >= async->prealloc_bufsz)
+ async->buf_write_ptr %= async->prealloc_bufsz;
+- }
++
+ return nbytes;
+ }
+
diff --git a/staging/staging-comedi-dt2801.c-checkpatch-cleanup.patch b/staging/staging-comedi-dt2801.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..ba9d94c5c11b7b
--- /dev/null
+++ b/staging/staging-comedi-dt2801.c-checkpatch-cleanup.patch
@@ -0,0 +1,176 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:40:47 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:10 +0100
+Subject: Staging: comedi: dt2801.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-17-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: code indent should use tabs where possible
++ 0 = [-10,10]$
+
+ERROR: code indent should use tabs where possible
++ 0 = [-10,10]$
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (stat & (DT_S_COMPOSITE_ERROR | DT_S_READY)) {
++ return stat;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (stat & DT_S_COMPOSITE_ERROR) {
++ return stat;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (stat & DT_S_READY) {
++ return 0;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (stat & DT_S_COMPOSITE_ERROR) {
++ return stat;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (stat & DT_S_READY) {
++ return 0;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (!(stat & DT_S_READY)) {
++ printk("dt2801: !ready in dt2801_writecmd(), ignoring\n");
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (!timeout) {
++ printk("dt2801: timeout 1 status=0x%02x\n", stat);
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (!timeout) {
++ printk("dt2801: timeout 2 status=0x%02x\n", stat);
++ }
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (stat == -ETIME) {
+[...]
++ } else {
+[...]
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/dt2801.c | 33 +++++++++++---------------------
+ 1 file changed, 12 insertions(+), 21 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/dt2801.c
++++ b/drivers/staging/comedi/drivers/dt2801.c
+@@ -18,10 +18,10 @@ Configuration options:
+ [1] - unused
+ [2] - A/D reference 0=differential, 1=single-ended
+ [3] - A/D range
+- 0 = [-10,10]
++ 0 = [-10, 10]
+ 1 = [0,10]
+ [4] - D/A 0 range
+- 0 = [-10,10]
++ 0 = [-10, 10]
+ 1 = [-5,5]
+ 2 = [-2.5,2.5]
+ 3 = [0,10]
+@@ -279,9 +279,8 @@ static int dt2801_readdata(struct comedi
+
+ do {
+ stat = inb_p(dev->iobase + DT2801_STATUS);
+- if (stat & (DT_S_COMPOSITE_ERROR | DT_S_READY)) {
++ if (stat & (DT_S_COMPOSITE_ERROR | DT_S_READY))
+ return stat;
+- }
+ if (stat & DT_S_DATA_OUT_READY) {
+ *data = inb_p(dev->iobase + DT2801_DATA);
+ return 0;
+@@ -315,9 +314,8 @@ static int dt2801_writedata(struct comed
+ do {
+ stat = inb_p(dev->iobase + DT2801_STATUS);
+
+- if (stat & DT_S_COMPOSITE_ERROR) {
++ if (stat & DT_S_COMPOSITE_ERROR)
+ return stat;
+- }
+ if (!(stat & DT_S_DATA_IN_FULL)) {
+ outb_p(data & 0xff, dev->iobase + DT2801_DATA);
+ return 0;
+@@ -354,18 +352,15 @@ static int dt2801_wait_for_ready(struct
+ int stat;
+
+ stat = inb_p(dev->iobase + DT2801_STATUS);
+- if (stat & DT_S_READY) {
++ if (stat & DT_S_READY)
+ return 0;
+- }
+ do {
+ stat = inb_p(dev->iobase + DT2801_STATUS);
+
+- if (stat & DT_S_COMPOSITE_ERROR) {
++ if (stat & DT_S_COMPOSITE_ERROR)
+ return stat;
+- }
+- if (stat & DT_S_READY) {
++ if (stat & DT_S_READY)
+ return 0;
+- }
+ } while (--timeout > 0);
+
+ return -ETIME;
+@@ -382,9 +377,8 @@ static int dt2801_writecmd(struct comedi
+ printk
+ ("dt2801: composite-error in dt2801_writecmd(), ignoring\n");
+ }
+- if (!(stat & DT_S_READY)) {
++ if (!(stat & DT_S_READY))
+ printk("dt2801: !ready in dt2801_writecmd(), ignoring\n");
+- }
+ outb_p(command, dev->iobase + DT2801_CMD);
+
+ return 0;
+@@ -418,9 +412,8 @@ static int dt2801_reset(struct comedi_de
+ if (stat & DT_S_READY)
+ break;
+ } while (timeout--);
+- if (!timeout) {
++ if (!timeout)
+ printk("dt2801: timeout 1 status=0x%02x\n", stat);
+- }
+
+ /* printk("dt2801: reading dummy\n"); */
+ /* dt2801_readdata(dev,&board_code); */
+@@ -436,9 +429,8 @@ static int dt2801_reset(struct comedi_de
+ if (stat & DT_S_READY)
+ break;
+ } while (timeout--);
+- if (!timeout) {
++ if (!timeout)
+ printk("dt2801: timeout 2 status=0x%02x\n", stat);
+- }
+
+ DPRINTK("dt2801: reading code\n");
+ dt2801_readdata(dev, &board_code);
+@@ -623,11 +615,10 @@ static int dt2801_detach(struct comedi_d
+ static int dt2801_error(struct comedi_device *dev, int stat)
+ {
+ if (stat < 0) {
+- if (stat == -ETIME) {
++ if (stat == -ETIME)
+ printk("dt2801: timeout\n");
+- } else {
++ else
+ printk("dt2801: error %d\n", stat);
+- }
+ return stat;
+ }
+ printk("dt2801: error status 0x%02x, resetting...\n", stat);
diff --git a/staging/staging-comedi-hwdrv_apci1032.c-checkpatch-cleanup.patch b/staging/staging-comedi-hwdrv_apci1032.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..ae85ceb6afc9f6
--- /dev/null
+++ b/staging/staging-comedi-hwdrv_apci1032.c-checkpatch-cleanup.patch
@@ -0,0 +1,66 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:37:47 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:14:58 +0100
+Subject: Staging: comedi: hwdrv_apci1032.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-5-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: do not initialise externals to 0 or NULL
++unsigned int ui_InterruptStatus = 0;
+
+WARNING: braces {} are not necessary for single statement blocks
++ else {
++ outl(0x6, devpriv->iobase + APCI1032_DIGITAL_IP_IRQ);
++ } /* else if(data[1] == ADDIDATA_OR) */
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (data[1] == 1) {
++ *data = ui_InterruptStatus;
++ } /* if(data[1]==1) */
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/addi-data/hwdrv_apci1032.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/addi-data/hwdrv_apci1032.c
++++ b/drivers/staging/comedi/drivers/addi-data/hwdrv_apci1032.c
+@@ -54,7 +54,7 @@ You should also find the complete GPL in
+ #include "hwdrv_apci1032.h"
+ #include <linux/delay.h>
+ /* Global variables */
+-unsigned int ui_InterruptStatus = 0;
++unsigned int ui_InterruptStatus;
+
+ /*
+ +----------------------------------------------------------------------------+
+@@ -108,9 +108,9 @@ int i_APCI1032_ConfigDigitalInput(struct
+ ui_TmpValue =
+ inl(devpriv->iobase + APCI1032_DIGITAL_IP_IRQ);
+ } /* if (data[1] == ADDIDATA_OR) */
+- else {
++ else
+ outl(0x6, devpriv->iobase + APCI1032_DIGITAL_IP_IRQ);
+- } /* else if(data[1] == ADDIDATA_OR) */
++ /* else if(data[1] == ADDIDATA_OR) */
+ } /* if( data[0] == ADDIDATA_ENABLE) */
+ else {
+ ul_Command1 = ul_Command1 & 0xFFFF0000;
+@@ -221,9 +221,9 @@ int i_APCI1032_ReadMoreDigitalInput(stru
+ } /* switch(ui_NoOfChannels) */
+ } /* if(data[1]==0) */
+ else {
+- if (data[1] == 1) {
++ if (data[1] == 1)
+ *data = ui_InterruptStatus;
+- } /* if(data[1]==1) */
++ /* if(data[1]==1) */
+ } /* else if(data[1]==0) */
+ return insn->n;
+ }
diff --git a/staging/staging-comedi-hwdrv_apci3120.c-checkpatch-cleanup.patch b/staging/staging-comedi-hwdrv_apci3120.c-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..3be4d60290d48b
--- /dev/null
+++ b/staging/staging-comedi-hwdrv_apci3120.c-checkpatch-cleanup.patch
@@ -0,0 +1,452 @@
+From andrea.gelmini@gmail.com Fri Feb 26 16:39:33 2010
+From: Andrea Gelmini <andrea.gelmini@gmail.com>
+Date: Fri, 26 Feb 2010 10:15:06 +0100
+Subject: Staging: comedi: hwdrv_apci3120.c: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267175711-3586-13-git-send-email-andrea.gelmini@gmail.com>
+
+
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+
+ERROR: do not initialise statics to 0 or NULL
++static unsigned int ui_Temp = 0;
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (data[1]) {
+[...]
++ } else
+[...]
+
+WARNING: braces {} are not necessary for single statement blocks
++ for (i = 0; i < devpriv->ui_AiNbrofChannels; i++) {
++ devpriv->ui_AiChannelList[i] = data[4 + i];
++ }
+
+ERROR: that open brace { should be on the previous line
++ } else /* EOC */
++ {
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (data[1]) {
+[...]
++ } else {
+[...]
+
+ERROR: that open brace { should be on the previous line
++ if (insn->unused[0] == 222) /* second insn read */
++ {
+
+WARNING: braces {} are not necessary for single statement blocks
++ for (i = 0; i < insn->n; i++) {
++ data[i] = devpriv->ui_AiReadData[i];
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (cmd->start_src != TRIG_NOW && cmd->start_src != TRIG_EXT) {
++ err++;
++ }
+
+ERROR: that open brace { should be on the previous line
++ if (cmd->scan_begin_src == TRIG_TIMER) /* Test Delay timing */
++ {
+
+ERROR: that open brace { should be on the previous line
++ if (cmd->convert_src == TRIG_TIMER) /* Test Acquisition timing */
++ {
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (cmd->stop_src == TRIG_COUNT) {
+[...]
++ } else {
+[...]
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (devpriv->b_ExttrigEnable == APCI3120_ENABLE) {
++ i_APCI3120_ExttrigEnable(dev); /* activate EXT trigger */
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (dmalen0 > (devpriv->ui_AiDataLength)) {
++ dmalen0 = devpriv->ui_AiDataLength;
++ }
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (dmalen1 > (devpriv->ui_AiDataLength)) {
++ dmalen1 = devpriv->ui_AiDataLength;
++ }
+
+WARNING: braces {} are not necessary for any arm of this statement
++ if (CR_RANGE(chanlist[i]) < APCI3120_BIPOLAR_RANGES) {
+[...]
++ } else {
+[...]
+
+ERROR: that open brace { should be on the previous line
++ if (devpriv->b_EocEosInterrupt == APCI3120_ENABLE) /* enable this in without DMA ??? */
++ {
+
+ERROR: that open brace { should be on the previous line
++ if (data[0] == APCI3120_TIMER) /* initialize timer */
++ {
+
+ERROR: that open brace { should be on the previous line
++ } else /* Initialize Watch dog */
++ {
+
+ERROR: that open brace { should be on the previous line
++ if (data[0] == 2) /* write new value */
++ {
+
+ERROR: that open brace { should be on the previous line
++ if (devpriv->b_Timer2Mode == APCI3120_TIMER) /* start timer */
++ {
+
+ERROR: that open brace { should be on the previous line
++ } else /* start watch dog */
++ {
+
+ERROR: that open brace { should be on the previous line
++ if (devpriv->b_Timer2Mode == APCI3120_TIMER) /* start timer */
++ {
+
+ERROR: that open brace { should be on the previous line
++ } else /* Read watch dog status */
++ {
+
+WARNING: braces {} are not necessary for single statement blocks
++ if (!devpriv->b_OutputMemoryStatus) {
++ ui_Temp = 0;
++
++ } /* if(!devpriv->b_OutputMemoryStatus ) */
+
+ERROR: code indent should use tabs where possible
++ data[0] Value to be written$
+
+ERROR: code indent should use tabs where possible
++ data[1] :1 Set digital o/p ON$
+
+ERROR: code indent should use tabs where possible
++ data[1] 2 Set digital o/p OFF with memory ON$
+
+ERROR: that open brace { should be on the previous line
++ if (ui_Range) /* if 1 then unipolar */
++ {
+
+ERROR: that open brace { should be on the previous line
++ } else /* if 0 then bipolar */
++ {
+
+ERROR: that open brace { should be on the previous line
++ do /* Waiting of DA_READY BIT */
++ {
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c | 123 +++++---------
+ 1 file changed, 48 insertions(+), 75 deletions(-)
+
+--- a/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c
++++ b/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c
+@@ -45,7 +45,7 @@ You should also find the complete GPL in
+ */
+
+ #include "hwdrv_apci3120.h"
+-static unsigned int ui_Temp = 0;
++static unsigned int ui_Temp;
+
+ /* FUNCTION DEFINITIONS */
+
+@@ -98,25 +98,22 @@ int i_APCI3120_InsnConfigAnalogInput(str
+
+ devpriv->b_InterruptMode = APCI3120_EOS_MODE;
+
+- if (data[1]) {
++ if (data[1])
+ devpriv->b_EocEosInterrupt = APCI3120_ENABLE;
+- } else
++ else
+ devpriv->b_EocEosInterrupt = APCI3120_DISABLE;
+ /* Copy channel list and Range List to devpriv */
+
+ devpriv->ui_AiNbrofChannels = data[3];
+- for (i = 0; i < devpriv->ui_AiNbrofChannels; i++) {
++ for (i = 0; i < devpriv->ui_AiNbrofChannels; i++)
+ devpriv->ui_AiChannelList[i] = data[4 + i];
+- }
+
+- } else /* EOC */
+- {
++ } else { /* EOC */
+ devpriv->b_InterruptMode = APCI3120_EOC_MODE;
+- if (data[1]) {
++ if (data[1])
+ devpriv->b_EocEosInterrupt = APCI3120_ENABLE;
+- } else {
++ else
+ devpriv->b_EocEosInterrupt = APCI3120_DISABLE;
+- }
+ }
+
+ return insn->n;
+@@ -166,13 +163,9 @@ int i_APCI3120_InsnReadAnalogInput(struc
+ devpriv->us_OutputRegister = 0;
+ /* devpriv->b_DigitalOutputRegister=0; */
+
+- if (insn->unused[0] == 222) /* second insn read */
+- {
+-
+- for (i = 0; i < insn->n; i++) {
++ if (insn->unused[0] == 222) { /* second insn read */
++ for (i = 0; i < insn->n; i++)
+ data[i] = devpriv->ui_AiReadData[i];
+- }
+-
+ } else {
+ devpriv->tsk_Current = current; /* Save the current process task structure */
+ /*
+@@ -519,9 +512,8 @@ int i_APCI3120_CommandTestAnalogInput(st
+
+ /* step 2: make sure trigger sources are unique and mutually compatible */
+
+- if (cmd->start_src != TRIG_NOW && cmd->start_src != TRIG_EXT) {
++ if (cmd->start_src != TRIG_NOW && cmd->start_src != TRIG_EXT)
+ err++;
+- }
+
+ if (cmd->scan_begin_src != TRIG_TIMER &&
+ cmd->scan_begin_src != TRIG_FOLLOW)
+@@ -548,16 +540,14 @@ int i_APCI3120_CommandTestAnalogInput(st
+ err++;
+ }
+
+- if (cmd->scan_begin_src == TRIG_TIMER) /* Test Delay timing */
+- {
++ if (cmd->scan_begin_src == TRIG_TIMER) { /* Test Delay timing */
+ if (cmd->scan_begin_arg < this_board->ui_MinDelaytimeNs) {
+ cmd->scan_begin_arg = this_board->ui_MinDelaytimeNs;
+ err++;
+ }
+ }
+
+- if (cmd->convert_src == TRIG_TIMER) /* Test Acquisition timing */
+- {
++ if (cmd->convert_src == TRIG_TIMER) { /* Test Acquisition timing */
+ if (cmd->scan_begin_src == TRIG_TIMER) {
+ if ((cmd->convert_arg)
+ && (cmd->convert_arg <
+@@ -653,11 +643,10 @@ int i_APCI3120_CommandAnalogInput(struct
+ /* UPDATE-0.7.57->0.7.68devpriv->ui_AiDataLength=s->async->data_len; */
+ devpriv->ui_AiDataLength = s->async->prealloc_bufsz;
+
+- if (cmd->stop_src == TRIG_COUNT) {
++ if (cmd->stop_src == TRIG_COUNT)
+ devpriv->ui_AiNbrofScans = cmd->stop_arg;
+- } else {
++ else
+ devpriv->ui_AiNbrofScans = 0;
+- }
+
+ devpriv->ui_AiTimer0 = 0; /* variables changed to timer0,timer1 */
+ devpriv->ui_AiTimer1 = 0;
+@@ -849,9 +838,8 @@ int i_APCI3120_CyclicAnalogInput(int mod
+ }
+ /*** EL241003 End ******************************************************************************/
+
+- if (devpriv->b_ExttrigEnable == APCI3120_ENABLE) {
++ if (devpriv->b_ExttrigEnable == APCI3120_ENABLE)
+ i_APCI3120_ExttrigEnable(dev); /* activate EXT trigger */
+- }
+ switch (mode) {
+ case 1:
+ /* init timer0 in mode 2 */
+@@ -1049,12 +1037,10 @@ int i_APCI3120_CyclicAnalogInput(int mod
+ dmalen1 = 4;
+ }
+ } else { /* isn't output buff smaller that our DMA buff? */
+- if (dmalen0 > (devpriv->ui_AiDataLength)) {
++ if (dmalen0 > (devpriv->ui_AiDataLength))
+ dmalen0 = devpriv->ui_AiDataLength;
+- }
+- if (dmalen1 > (devpriv->ui_AiDataLength)) {
++ if (dmalen1 > (devpriv->ui_AiDataLength))
+ dmalen1 = devpriv->ui_AiDataLength;
+- }
+ }
+ devpriv->ui_DmaBufferUsesize[0] = dmalen0;
+ devpriv->ui_DmaBufferUsesize[1] = dmalen1;
+@@ -1356,11 +1342,10 @@ int i_APCI3120_SetupChannelList(struct c
+ /* store range list to card */
+ us_TmpValue = CR_CHAN(chanlist[i]); /* get channel number; */
+
+- if (CR_RANGE(chanlist[i]) < APCI3120_BIPOLAR_RANGES) {
++ if (CR_RANGE(chanlist[i]) < APCI3120_BIPOLAR_RANGES)
+ us_TmpValue &= ((~APCI3120_UNIPOLAR) & 0xff); /* set bipolar */
+- } else {
++ else
+ us_TmpValue |= APCI3120_UNIPOLAR; /* enable unipolar...... */
+- }
+
+ gain = CR_RANGE(chanlist[i]); /* get gain number */
+ us_TmpValue |= ((gain & 0x03) << 4); /* <<4 for G0 and G1 bit in RAM */
+@@ -1514,8 +1499,7 @@ void v_APCI3120_Interrupt(int irq, void
+ /* Check If EOS interrupt */
+ if ((int_daq & 0x2) && (devpriv->b_InterruptMode == APCI3120_EOS_MODE)) {
+
+- if (devpriv->b_EocEosInterrupt == APCI3120_ENABLE) /* enable this in without DMA ??? */
+- {
++ if (devpriv->b_EocEosInterrupt == APCI3120_ENABLE) { /* enable this in without DMA ??? */
+
+ if (devpriv->b_AiCyclicAcquisition == APCI3120_ENABLE) {
+ ui_Check = 0;
+@@ -1966,8 +1950,7 @@ int i_APCI3120_InsnConfigTimer(struct co
+ APCI3120_DISABLE_EOS_INT;
+ outb(devpriv->b_ModeSelectRegister,
+ devpriv->iobase + APCI3120_WRITE_MODE_SELECT);
+- if (data[0] == APCI3120_TIMER) /* initialize timer */
+- {
++ if (data[0] == APCI3120_TIMER) { /* initialize timer */
+ /* devpriv->b_ModeSelectRegister=devpriv->b_ModeSelectRegister |
+ * APCI3120_ENABLE_TIMER_INT; */
+
+@@ -2006,8 +1989,7 @@ int i_APCI3120_InsnConfigTimer(struct co
+ /* timer2 in Timer mode enabled */
+ devpriv->b_Timer2Mode = APCI3120_TIMER;
+
+- } else /* Initialize Watch dog */
+- {
++ } else { /* Initialize Watch dog */
+
+ /* Set the Timer 2 in mode 5(Watchdog) */
+
+@@ -2092,8 +2074,7 @@ int i_APCI3120_InsnWriteTimer(struct com
+ return -EINVAL;
+ }
+
+- if (data[0] == 2) /* write new value */
+- {
++ if (data[0] == 2) { /* write new value */
+ if (devpriv->b_Timer2Mode != APCI3120_TIMER) {
+ comedi_error(dev,
+ "write :timer2 not configured in TIMER MODE");
+@@ -2113,13 +2094,11 @@ int i_APCI3120_InsnWriteTimer(struct com
+
+ /* Reset FC_TIMER BIT */
+ inb(devpriv->iobase + APCI3120_TIMER_STATUS_REGISTER);
+- if (devpriv->b_Timer2Mode == APCI3120_TIMER) /* start timer */
+- {
++ if (devpriv->b_Timer2Mode == APCI3120_TIMER) { /* start timer */
+ /* Enable Timer */
+ devpriv->b_ModeSelectRegister =
+ devpriv->b_ModeSelectRegister & 0x0B;
+- } else /* start watch dog */
+- {
++ } else { /* start watch dog */
+ /* Enable WatchDog */
+ devpriv->b_ModeSelectRegister =
+ (devpriv->
+@@ -2146,8 +2125,7 @@ int i_APCI3120_InsnWriteTimer(struct com
+ outb(devpriv->b_ModeSelectRegister,
+ devpriv->iobase + APCI3120_WRITE_MODE_SELECT);
+
+- if (devpriv->b_Timer2Mode == APCI3120_TIMER) /* start timer */
+- {
++ if (devpriv->b_Timer2Mode == APCI3120_TIMER) { /* start timer */
+ /* For Timer mode is Gate2 must be activated **timer started */
+ devpriv->us_OutputRegister =
+ devpriv->
+@@ -2299,8 +2277,7 @@ int i_APCI3120_InsnReadTimer(struct come
+ /* combining both words */
+ data[0] = (unsigned int) ((us_TmpValue) | ((us_TmpValue_2) << 16));
+
+- } else /* Read watch dog status */
+- {
++ } else { /* Read watch dog status */
+
+ us_StatusValue = inw(devpriv->iobase + APCI3120_RD_STATUS);
+ us_StatusValue =
+@@ -2441,10 +2418,9 @@ int i_APCI3120_InsnConfigDigitalOutput(s
+ devpriv->b_OutputMemoryStatus = APCI3120_DISABLE;
+ devpriv->b_DigitalOutputRegister = 0;
+ }
+- if (!devpriv->b_OutputMemoryStatus) {
++ if (!devpriv->b_OutputMemoryStatus)
+ ui_Temp = 0;
+-
+- } /* if(!devpriv->b_OutputMemoryStatus ) */
++ /* if(!devpriv->b_OutputMemoryStatus ) */
+
+ return insn->n;
+ }
+@@ -2504,23 +2480,23 @@ int i_APCI3120_InsnBitsDigitalOutput(str
+
+ /*
+ +----------------------------------------------------------------------------+
+-| Function name :int i_APCI3120_InsnWriteDigitalOutput(struct comedi_device *dev,|
+-|struct comedi_subdevice *s,struct comedi_insn *insn,unsigned int *data) |
+-| |
+-+----------------------------------------------------------------------------+
+-| Task : Write digiatl output |
+-| |
++| Function name :int i_APCI3120_InsnWriteDigitalOutput(struct comedi_device *dev,|
++|struct comedi_subdevice *s,struct comedi_insn *insn,unsigned int *data) |
++| |
+++----------------------------------------------------------------------------+
++| Task : Write digiatl output |
++| |
+++----------------------------------------------------------------------------+
++| Input Parameters : struct comedi_device *dev |
++| struct comedi_subdevice *s |
++| struct comedi_insn *insn |
++| unsigned int *data |
++ data[0] Value to be written
++ data[1] :1 Set digital o/p ON
++ data[1] 2 Set digital o/p OFF with memory ON
+ +----------------------------------------------------------------------------+
+-| Input Parameters : struct comedi_device *dev |
+-| struct comedi_subdevice *s |
+-| struct comedi_insn *insn |
+-| unsigned int *data |
+- data[0] Value to be written
+- data[1] :1 Set digital o/p ON
+- data[1] 2 Set digital o/p OFF with memory ON
+-+----------------------------------------------------------------------------+
+-| Return Value : |
+-| |
++| Return Value : |
++| |
+ +----------------------------------------------------------------------------+
+ */
+
+@@ -2615,8 +2591,7 @@ int i_APCI3120_InsnWriteAnalogOutput(str
+ ui_Channel = CR_CHAN(insn->chanspec);
+
+ /* this_board->i_hwdrv_InsnWriteAnalogOutput(dev, ui_Range, ui_Channel,data[0]); */
+- if (ui_Range) /* if 1 then unipolar */
+- {
++ if (ui_Range) { /* if 1 then unipolar */
+
+ if (data[0] != 0)
+ data[0] =
+@@ -2627,8 +2602,7 @@ int i_APCI3120_InsnWriteAnalogOutput(str
+ ((((ui_Channel & 0x03) << 14) & 0xC000) | (1 <<
+ 13) | 8192);
+
+- } else /* if 0 then bipolar */
+- {
++ } else { /* if 0 then bipolar */
+ data[0] =
+ ((((ui_Channel & 0x03) << 14) & 0xC000) | (0 << 13) |
+ data[0]);
+@@ -2639,8 +2613,7 @@ int i_APCI3120_InsnWriteAnalogOutput(str
+ * out put n values at the given channel. printk("\nwaiting for
+ * DA_READY BIT");
+ */
+- do /* Waiting of DA_READY BIT */
+- {
++ do { /* Waiting of DA_READY BIT */
+ us_TmpValue =
+ ((unsigned short) inw(devpriv->iobase +
+ APCI3120_RD_STATUS)) & 0x0001;
diff --git a/staging/staging-rt3070-md4.h-checkpatch-cleanup.patch b/staging/staging-rt3070-md4.h-checkpatch-cleanup.patch
new file mode 100644
index 00000000000000..a4f221830991d1
--- /dev/null
+++ b/staging/staging-rt3070-md4.h-checkpatch-cleanup.patch
@@ -0,0 +1,44 @@
+From andrea.gelmini@gelma.net Fri Feb 26 16:41:50 2010
+From: Andrea Gelmini <andrea.gelmini@gelma.net>
+Date: Fri, 26 Feb 2010 17:36:57 +0100
+Subject: Staging: rt3070: md4.h: Checkpatch cleanup
+To: gregkh@suse.de
+Cc: devel@driverdev.osuosl.org, bzolnier@gmail.com, Andrea Gelmini <andrea.gelmini@gelma.net>
+Message-ID: <1267202220-15640-2-git-send-email-andrea.gelmini@gelma.net>
+
+
+WARNING: space prohibited between function name and open parenthesis '('
++void MD4Init (MD4_CTX *);
+
+WARNING: space prohibited between function name and open parenthesis '('
++void MD4Update (MD4_CTX *, u8 *, UINT);
+
+WARNING: space prohibited between function name and open parenthesis '('
++void MD4Final (u8 [16], MD4_CTX *);
+
+ERROR: do not use C99 // comments
++#endif //__MD4_H__
+
+Signed-off-by: Andrea Gelmini <andrea.gelmini@gelma.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/staging/rt3070/md4.h | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+--- a/drivers/staging/rt3070/md4.h
++++ b/drivers/staging/rt3070/md4.h
+@@ -35,8 +35,8 @@ typedef struct _MD4_CTX_ {
+ u8 buffer[64]; /* input buffer */
+ } MD4_CTX;
+
+-void MD4Init (MD4_CTX *);
+-void MD4Update (MD4_CTX *, u8 *, UINT);
+-void MD4Final (u8 [16], MD4_CTX *);
++void MD4Init(MD4_CTX *);
++void MD4Update(MD4_CTX *, u8 *, UINT);
++void MD4Final(u8 [16], MD4_CTX *);
+
+-#endif //__MD4_H__
+\ No newline at end of file
++#endif /*__MD4_H__*/
diff --git a/tty/jsm-fixing-error-if-the-driver-fails-to-load.patch b/tty/jsm-fixing-error-if-the-driver-fails-to-load.patch
new file mode 100644
index 00000000000000..ef0fcd1f0b5bf0
--- /dev/null
+++ b/tty/jsm-fixing-error-if-the-driver-fails-to-load.patch
@@ -0,0 +1,55 @@
+From leitao@linux.vnet.ibm.com Fri Feb 26 16:30:33 2010
+From: Breno Leitao <leitao@linux.vnet.ibm.com>
+Date: Thu, 25 Feb 2010 15:31:50 -0300
+Subject: jsm: fixing error if the driver fails to load
+To: greg@kroah.com
+Message-ID: <838541aafe98426bcaf57ee2b645437858f19cf4.1267122632.git.leitao@linux.vnet.ibm.com>
+
+
+Currently if the driver fails to register on port, the kernel
+crashes with the following stack:
+
+cpu 0x1: Vector: 300 (Data Access) at [c0000000e0303090]
+ pc: c00000000039aa74: .__mutex_lock_slowpath+0x44/0x10c
+ lr: c00000000039aa58: .__mutex_lock_slowpath+0x28/0x10c
+[c0000000e03033c0] c00000000026b074 .uart_remove_one_port+0xbc/0x16c
+[c0000000e0303460] d0000000000e0554 .jsm_remove_uart_port+0x8c/0x10c [jsm]
+[c0000000e03034f0] d0000000000dc034 .jsm_remove_one+0x34/0x108 [jsm]
+[c0000000e0303590] c0000000001f4aa0 .pci_device_remove+0x48/0x74
+...
+
+This patch just fixes the code flow to abort the load when an
+error is detected.
+
+Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/serial/jsm/jsm_tty.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+--- a/drivers/serial/jsm/jsm_tty.c
++++ b/drivers/serial/jsm/jsm_tty.c
+@@ -432,7 +432,7 @@ int __devinit jsm_tty_init(struct jsm_bo
+
+ int jsm_uart_port_init(struct jsm_board *brd)
+ {
+- int i;
++ int i, rc;
+ unsigned int line;
+ struct jsm_channel *ch;
+
+@@ -467,8 +467,11 @@ int jsm_uart_port_init(struct jsm_board
+ } else
+ set_bit(line, linemap);
+ brd->channels[i]->uart_port.line = line;
+- if (uart_add_one_port (&jsm_uart_driver, &brd->channels[i]->uart_port))
+- printk(KERN_INFO "jsm: add device failed\n");
++ rc = uart_add_one_port (&jsm_uart_driver, &brd->channels[i]->uart_port);
++ if (rc){
++ printk(KERN_INFO "jsm: Port %d failed. Aborting...\n", i);
++ return rc;
++ }
+ else
+ printk(KERN_INFO "jsm: Port %d added\n", i);
+ }
diff --git a/tty/jsm-removing-the-uart-structure-and-filename-on-error.patch b/tty/jsm-removing-the-uart-structure-and-filename-on-error.patch
new file mode 100644
index 00000000000000..520705a622a3c9
--- /dev/null
+++ b/tty/jsm-removing-the-uart-structure-and-filename-on-error.patch
@@ -0,0 +1,35 @@
+From leitao@linux.vnet.ibm.com Fri Feb 26 16:30:15 2010
+From: Breno Leitao <leitao@linux.vnet.ibm.com>
+Date: Thu, 25 Feb 2010 15:31:49 -0300
+Subject: jsm: removing the uart structure and filename on error
+To: greg@kroah.com
+Message-ID: <daf3e60a90070795196e941ac058335ead36ce14.1267122632.git.leitao@linux.vnet.ibm.com>
+
+
+If jsm fails to load, then remove the uart stuff, otherwise,
+the things (as files), will be there forever (even when the module
+is unloaded). If you try to reload the module, the following message
+appears:
+
+kobject_add_internal failed for ttyn1 with -EEXIST, don't try to
+register things with the same name in the same directory.
+
+This patch remove the uart things when the driver fails.
+
+Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/serial/jsm/jsm_driver.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/serial/jsm/jsm_driver.c
++++ b/drivers/serial/jsm/jsm_driver.c
+@@ -179,6 +179,7 @@ static int __devinit jsm_probe_one(struc
+
+ return 0;
+ out_free_irq:
++ jsm_remove_uart_port(brd);
+ free_irq(brd->irq, brd);
+ out_iounmap:
+ iounmap(brd->re_map_membase);
diff --git a/usb/usb-backlight-appledisplay-fix-incomplete-registration-failure-handling.patch b/usb/usb-backlight-appledisplay-fix-incomplete-registration-failure-handling.patch
new file mode 100644
index 00000000000000..b56acc441adc41
--- /dev/null
+++ b/usb/usb-backlight-appledisplay-fix-incomplete-registration-failure-handling.patch
@@ -0,0 +1,38 @@
+From bonbons@linux-vserver.org Fri Feb 26 16:41:19 2010
+From: Bruno Pr�mont <bonbons@linux-vserver.org>
+Date: Fri, 26 Feb 2010 13:02:04 +0100
+Subject: USB: backlight, appledisplay: fix incomplete registration failure handling
+To: Richard Purdie <rpurdie@linux.intel.com>, Greg Kroah-Hartman <gregkh@suse.de>
+Message-ID: <20100226130204.5727ba6b@neptune.home>
+
+
+On error while registering backlight, return it to caller instead of
+returning 0.
+Mark struct backlight_ops as const.
+
+Signed-off-by: Bruno Pr�mont <bonbons@linux-vserver.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/misc/appledisplay.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/usb/misc/appledisplay.c
++++ b/drivers/usb/misc/appledisplay.c
+@@ -179,7 +179,7 @@ static int appledisplay_bl_get_brightnes
+ return pdata->msgdata[1];
+ }
+
+-static struct backlight_ops appledisplay_bl_data = {
++static const struct backlight_ops appledisplay_bl_data = {
+ .get_brightness = appledisplay_bl_get_brightness,
+ .update_status = appledisplay_bl_update_status,
+ };
+@@ -283,6 +283,7 @@ static int appledisplay_probe(struct usb
+ &appledisplay_bl_data);
+ if (IS_ERR(pdata->bd)) {
+ dev_err(&iface->dev, "Backlight registration failed\n");
++ retval = PTR_ERR(pdata->bd);
+ goto error;
+ }
+
diff --git a/usb/usb-ftdi_sio-remove-obsolete-check-in-unthrottle.patch b/usb/usb-ftdi_sio-remove-obsolete-check-in-unthrottle.patch
new file mode 100644
index 00000000000000..9b476abe491b24
--- /dev/null
+++ b/usb/usb-ftdi_sio-remove-obsolete-check-in-unthrottle.patch
@@ -0,0 +1,33 @@
+From jhovold@gmail.com Fri Feb 26 16:31:26 2010
+From: Johan Hovold <jhovold@gmail.com>
+Date: Thu, 25 Feb 2010 20:19:10 +0100
+Subject: USB: ftdi_sio: remove obsolete check in unthrottle
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: linux-usb@vger.kernel.org, Johan Hovold <jhovold@gmail.com>
+Message-ID: <1267125550-7003-1-git-send-email-jhovold@gmail.com>
+
+
+No need to check ASYNCB_INITIALIZED anymore as commit
+e1108a63e10d344284011cccc06328b2cd3e5da3 (usb_serial: Use the shutdown()
+operation) make sure that there is no longer any call to unthrottle
+after device specific close (in which the read urb is killed).
+
+Signed-off-by: Johan Hovold <jhovold@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/ftdi_sio.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -2492,8 +2492,7 @@ void ftdi_unthrottle(struct tty_struct *
+ port->throttled = port->throttle_req = 0;
+ spin_unlock_irqrestore(&port->lock, flags);
+
+- /* Resubmit urb if throttled and open. */
+- if (was_throttled && test_bit(ASYNCB_INITIALIZED, &port->port.flags))
++ if (was_throttled)
+ ftdi_submit_read_urb(port, GFP_KERNEL);
+ }
+
diff --git a/usb/usb-ftdi_sio-remove-unused-tx_bytes-counter.patch b/usb/usb-ftdi_sio-remove-unused-tx_bytes-counter.patch
new file mode 100644
index 00000000000000..ca6a9f60bf2a3e
--- /dev/null
+++ b/usb/usb-ftdi_sio-remove-unused-tx_bytes-counter.patch
@@ -0,0 +1,47 @@
+From jhovold@gmail.com Fri Feb 26 16:31:16 2010
+From: Johan Hovold <jhovold@gmail.com>
+Date: Thu, 25 Feb 2010 20:18:13 +0100
+Subject: USB: ftdi_sio: remove unused tx_bytes counter
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: linux-usb@vger.kernel.org, Johan Hovold <jhovold@gmail.com>
+Message-ID: <1267125493-6914-1-git-send-email-jhovold@gmail.com>
+
+
+Remove counter that is never exported.
+
+Signed-off-by: Johan Hovold <jhovold@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/ftdi_sio.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+--- a/drivers/usb/serial/ftdi_sio.c
++++ b/drivers/usb/serial/ftdi_sio.c
+@@ -88,7 +88,6 @@ struct ftdi_private {
+
+ unsigned int latency; /* latency setting in use */
+ spinlock_t tx_lock; /* spinlock for transmit state */
+- unsigned long tx_bytes;
+ unsigned long tx_outstanding_bytes;
+ unsigned long tx_outstanding_urbs;
+ unsigned short max_packet_size;
+@@ -1729,10 +1728,6 @@ static int ftdi_open(struct tty_struct *
+
+ dbg("%s", __func__);
+
+- spin_lock_irqsave(&priv->tx_lock, flags);
+- priv->tx_bytes = 0;
+- spin_unlock_irqrestore(&priv->tx_lock, flags);
+-
+ write_latency_timer(port);
+
+ /* No error checking for this (will get errors later anyway) */
+@@ -1917,7 +1912,6 @@ static int ftdi_write(struct tty_struct
+ } else {
+ spin_lock_irqsave(&priv->tx_lock, flags);
+ priv->tx_outstanding_bytes += count;
+- priv->tx_bytes += count;
+ spin_unlock_irqrestore(&priv->tx_lock, flags);
+ }
+
diff --git a/usb/usb-pl2303-initial-tiocgserial-support.patch b/usb/usb-pl2303-initial-tiocgserial-support.patch
new file mode 100644
index 00000000000000..ba039cc815cae1
--- /dev/null
+++ b/usb/usb-pl2303-initial-tiocgserial-support.patch
@@ -0,0 +1,51 @@
+From nuclear@member.fsf.org Fri Feb 26 16:29:09 2010
+From: John Tsiombikas <nuclear@member.fsf.org>
+Date: Thu, 25 Feb 2010 17:09:08 +0200
+Subject: USB: pl2303: initial TIOCGSERIAL support
+To: Greg KH <greg@kroah.com>
+Message-ID: <20100225150908.GB21609@quasar.dnsalias.com>
+
+
+I've got a trivial patch for the pl2303 driver, that's what I needed to
+make the wacom serial tablet driver work properly. It uses the
+TIOCGSERIAL ioctl to determine if it's talking to a serial device or
+not, which I gather is rather common, but the pl2303 driver didn't
+implement that ioctl.
+
+Here's a patch, I'm not sure it's absolutely correct, I mostly looked at
+other similar usbserial drivers to see what I must do, but it works for
+me.
+
+Signed-off-by: John Tsiombikas <nuclear@member.fsf.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/pl2303.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+--- a/drivers/usb/serial/pl2303.c
++++ b/drivers/usb/serial/pl2303.c
+@@ -895,10 +895,23 @@ static int wait_modem_info(struct usb_se
+ static int pl2303_ioctl(struct tty_struct *tty, struct file *file,
+ unsigned int cmd, unsigned long arg)
+ {
++ struct serial_struct ser;
+ struct usb_serial_port *port = tty->driver_data;
+ dbg("%s (%d) cmd = 0x%04x", __func__, port->number, cmd);
+
+ switch (cmd) {
++ case TIOCGSERIAL:
++ memset(&ser, 0, sizeof ser);
++ ser.type = PORT_16654;
++ ser.line = port->serial->minor;
++ ser.port = port->number;
++ ser.baud_base = 460800;
++
++ if (copy_to_user((void __user *)arg, &ser, sizeof ser))
++ return -EFAULT;
++
++ return 0;
++
+ case TIOCMIWAIT:
+ dbg("%s (%d) TIOCMIWAIT", __func__, port->number);
+ return wait_modem_info(port, arg);
diff --git a/usb/usb-pl2303-remove-unnecessary-reset-of-usb_device-in-urbs.patch b/usb/usb-pl2303-remove-unnecessary-reset-of-usb_device-in-urbs.patch
new file mode 100644
index 00000000000000..aea90e16e07617
--- /dev/null
+++ b/usb/usb-pl2303-remove-unnecessary-reset-of-usb_device-in-urbs.patch
@@ -0,0 +1,67 @@
+From jhovold@gmail.com Fri Feb 26 16:31:38 2010
+From: Johan Hovold <jhovold@gmail.com>
+Date: Thu, 25 Feb 2010 20:52:30 +0100
+Subject: USB: pl2303: remove unnecessary reset of usb_device in urbs
+To: Greg Kroah-Hartman <gregkh@suse.de>
+Message-ID: <1267127550-12591-1-git-send-email-jhovold@gmail.com>
+
+
+URBs are initialised at probe and do not change.
+
+Signed-off-by: Johan Hovold <jhovold@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/pl2303.c | 6 ------
+ 1 file changed, 6 deletions(-)
+
+--- a/drivers/usb/serial/pl2303.c
++++ b/drivers/usb/serial/pl2303.c
+@@ -451,7 +451,6 @@ static void pl2303_send(struct usb_seria
+ port->write_urb->transfer_buffer);
+
+ port->write_urb->transfer_buffer_length = count;
+- port->write_urb->dev = port->serial->dev;
+ result = usb_submit_urb(port->write_urb, GFP_ATOMIC);
+ if (result) {
+ dev_err(&port->dev, "%s - failed submitting write urb,"
+@@ -769,7 +768,6 @@ static int pl2303_open(struct tty_struct
+ pl2303_set_termios(tty, port, &tmp_termios);
+
+ dbg("%s - submitting read urb", __func__);
+- port->read_urb->dev = serial->dev;
+ result = usb_submit_urb(port->read_urb, GFP_KERNEL);
+ if (result) {
+ dev_err(&port->dev, "%s - failed submitting read urb,"
+@@ -779,7 +777,6 @@ static int pl2303_open(struct tty_struct
+ }
+
+ dbg("%s - submitting interrupt urb", __func__);
+- port->interrupt_in_urb->dev = serial->dev;
+ result = usb_submit_urb(port->interrupt_in_urb, GFP_KERNEL);
+ if (result) {
+ dev_err(&port->dev, "%s - failed submitting interrupt urb,"
+@@ -1089,7 +1086,6 @@ static void pl2303_read_bulk_callback(st
+ * the read */
+ dbg("%s - caught -EPROTO, resubmitting the urb",
+ __func__);
+- urb->dev = port->serial->dev;
+ result = usb_submit_urb(urb, GFP_ATOMIC);
+ if (result)
+ dev_err(&urb->dev->dev, "%s - failed"
+@@ -1116,7 +1112,6 @@ static void pl2303_read_bulk_callback(st
+ }
+ tty_kref_put(tty);
+ /* Schedule the next read _if_ we are still open */
+- urb->dev = port->serial->dev;
+ result = usb_submit_urb(urb, GFP_ATOMIC);
+ if (result && result != -EPERM)
+ dev_err(&urb->dev->dev, "%s - failed resubmitting"
+@@ -1150,7 +1145,6 @@ static void pl2303_write_bulk_callback(s
+ dbg("%s - nonzero write bulk status received: %d", __func__,
+ status);
+ port->write_urb->transfer_buffer_length = 1;
+- port->write_urb->dev = port->serial->dev;
+ result = usb_submit_urb(port->write_urb, GFP_ATOMIC);
+ if (result)
+ dev_err(&urb->dev->dev, "%s - failed resubmitting write"
diff --git a/usb/usb-qcaux-driver-for-auxiliary-serial-ports-on-qualcomm-devices.patch b/usb/usb-qcaux-driver-for-auxiliary-serial-ports-on-qualcomm-devices.patch
new file mode 100644
index 00000000000000..cfa6dc6dc230e7
--- /dev/null
+++ b/usb/usb-qcaux-driver-for-auxiliary-serial-ports-on-qualcomm-devices.patch
@@ -0,0 +1,156 @@
+From dcbw@redhat.com Fri Feb 26 16:30:56 2010
+From: Dan Williams <dcbw@redhat.com>
+Date: Thu, 25 Feb 2010 10:39:20 -0800
+Subject: USB: qcaux: driver for auxiliary serial ports on Qualcomm devices
+To: Greg KH <greg@kroah.com>
+Cc: linux-usb@vger.kernel.org
+Message-ID: <1267123160.15124.10.camel@localhost.localdomain>
+
+
+qcaux: add driver for QCDM-capable ports on various devices
+
+Many Qualcomm-based devices provide a CDC-ACM port which accepts
+normal AT commands and PPP connections. But they only provide one
+which makes status or signal strength requests impossible while
+PPP is active. They also provide secondary USB interfaces that
+talk the Qualcomm Diagnostic Monitor (QCDM) protocol which can be
+used for status and strength. Make those QCDM ports accessible.
+
+Signed-off-by: Dan Williams <dcbw@redhat.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/usb/serial/Kconfig | 11 +++++
+ drivers/usb/serial/Makefile | 1
+ drivers/usb/serial/qcaux.c | 96 ++++++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 108 insertions(+)
+
+--- a/drivers/usb/serial/Kconfig
++++ b/drivers/usb/serial/Kconfig
+@@ -472,6 +472,17 @@ config USB_SERIAL_OTI6858
+ To compile this driver as a module, choose M here: the
+ module will be called oti6858.
+
++config USB_SERIAL_QCAUX
++ tristate "USB Qualcomm Auxiliary Serial Port Driver"
++ ---help---
++ Say Y here if you want to use the auxiliary serial ports provided
++ by many modems based on Qualcomm chipsets. These ports often use
++ a proprietary protocol called DM and cannot be used for AT- or
++ PPP-based communication.
++
++ To compile this driver as a module, choose M here: the
++ module will be called moto_modem. If unsure, choose N.
++
+ config USB_SERIAL_QUALCOMM
+ tristate "USB Qualcomm Serial modem"
+ help
+--- a/drivers/usb/serial/Makefile
++++ b/drivers/usb/serial/Makefile
+@@ -45,6 +45,7 @@ obj-$(CONFIG_USB_SERIAL_OPTICON) += opt
+ obj-$(CONFIG_USB_SERIAL_OPTION) += option.o
+ obj-$(CONFIG_USB_SERIAL_OTI6858) += oti6858.o
+ obj-$(CONFIG_USB_SERIAL_PL2303) += pl2303.o
++obj-$(CONFIG_USB_SERIAL_QCAUX) += qcaux.o
+ obj-$(CONFIG_USB_SERIAL_QUALCOMM) += qcserial.o
+ obj-$(CONFIG_USB_SERIAL_SAFE) += safe_serial.o
+ obj-$(CONFIG_USB_SERIAL_SIEMENS_MPI) += siemens_mpi.o
+--- /dev/null
++++ b/drivers/usb/serial/qcaux.c
+@@ -0,0 +1,96 @@
++/*
++ * Qualcomm USB Auxiliary Serial Port driver
++ *
++ * Copyright (C) 2008 Greg Kroah-Hartman <greg@kroah.com>
++ * Copyright (C) 2010 Dan Williams <dcbw@redhat.com>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ *
++ * Devices listed here usually provide a CDC ACM port on which normal modem
++ * AT commands and PPP can be used. But when that port is in-use by PPP it
++ * cannot be used simultaneously for status or signal strength. Instead, the
++ * ports here can be queried for that information using the Qualcomm DM
++ * protocol.
++ */
++
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/tty.h>
++#include <linux/module.h>
++#include <linux/usb.h>
++#include <linux/usb/serial.h>
++
++/* NOTE: for now, only use this driver for devices that provide a CDC-ACM port
++ * for normal AT commands, but also provide secondary USB interfaces for the
++ * QCDM-capable ports. Devices that do not provide a CDC-ACM port should
++ * probably be driven by option.ko.
++ */
++
++/* UTStarcom/Pantech/Curitel devices */
++#define UTSTARCOM_VENDOR_ID 0x106c
++#define UTSTARCOM_PRODUCT_PC5740 0x3701
++#define UTSTARCOM_PRODUCT_PC5750 0x3702 /* aka Pantech PX-500 */
++#define UTSTARCOM_PRODUCT_UM150 0x3711
++#define UTSTARCOM_PRODUCT_UM175_V1 0x3712
++#define UTSTARCOM_PRODUCT_UM175_V2 0x3714
++#define UTSTARCOM_PRODUCT_UM175_ALLTEL 0x3715
++
++/* CMOTECH devices */
++#define CMOTECH_VENDOR_ID 0x16d8
++#define CMOTECH_PRODUCT_CDU550 0x5553
++#define CMOTECH_PRODUCT_CDX650 0x6512
++
++static struct usb_device_id id_table[] = {
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_PC5740, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_PC5750, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_UM150, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_UM175_V1, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_UM175_V2, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(UTSTARCOM_VENDOR_ID, UTSTARCOM_PRODUCT_UM175_ALLTEL, 0xff, 0x00, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_CDU550, 0xff, 0xff, 0x00) },
++ { USB_DEVICE_AND_INTERFACE_INFO(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_CDX650, 0xff, 0xff, 0x00) },
++ { },
++};
++MODULE_DEVICE_TABLE(usb, id_table);
++
++static struct usb_driver qcaux_driver = {
++ .name = "qcaux",
++ .probe = usb_serial_probe,
++ .disconnect = usb_serial_disconnect,
++ .id_table = id_table,
++ .no_dynamic_id = 1,
++};
++
++static struct usb_serial_driver qcaux_device = {
++ .driver = {
++ .owner = THIS_MODULE,
++ .name = "qcaux",
++ },
++ .id_table = id_table,
++ .num_ports = 1,
++};
++
++static int __init qcaux_init(void)
++{
++ int retval;
++
++ retval = usb_serial_register(&qcaux_device);
++ if (retval)
++ return retval;
++ retval = usb_register(&qcaux_driver);
++ if (retval)
++ usb_serial_deregister(&qcaux_device);
++ return retval;
++}
++
++static void __exit qcaux_exit(void)
++{
++ usb_deregister(&qcaux_driver);
++ usb_serial_deregister(&qcaux_device);
++}
++
++module_init(qcaux_init);
++module_exit(qcaux_exit);
++MODULE_LICENSE("GPL");