--- /dev/null
+From 7679e42ec833ed70aa34790a5f39dcb7e5bda4fe Mon Sep 17 00:00:00 2001
+From: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Date: Wed, 22 Feb 2012 15:52:56 +0000
+Subject: ASoC: dapm: Check for bias level when powering down
+
+From: Mark Brown <broonie@opensource.wolfsonmicro.com>
+
+commit 7679e42ec833ed70aa34790a5f39dcb7e5bda4fe upstream.
+
+Recent enhancements in the bias management means that we might not be
+in standby when the CODEC is idle and can have active widgets without
+being in full power mode but the shutdown functionality assumes these
+things. Add checks for the bias level at each stage so that we don't
+do transitions other than the ON->PREPARE->STANDBY->OFF ones that the
+drivers are expecting.
+
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/soc-dapm.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+--- a/sound/soc/soc-dapm.c
++++ b/sound/soc/soc-dapm.c
+@@ -2615,9 +2615,13 @@ static void soc_dapm_shutdown_codec(stru
+ * standby.
+ */
+ if (powerdown) {
+- snd_soc_dapm_set_bias_level(dapm, SND_SOC_BIAS_PREPARE);
++ if (dapm->bias_level == SND_SOC_BIAS_ON)
++ snd_soc_dapm_set_bias_level(dapm,
++ SND_SOC_BIAS_PREPARE);
+ dapm_seq_run(dapm, &down_list, 0, false);
+- snd_soc_dapm_set_bias_level(dapm, SND_SOC_BIAS_STANDBY);
++ if (dapm->bias_level == SND_SOC_BIAS_PREPARE)
++ snd_soc_dapm_set_bias_level(dapm,
++ SND_SOC_BIAS_STANDBY);
+ }
+ }
+
+@@ -2630,7 +2634,9 @@ void snd_soc_dapm_shutdown(struct snd_so
+
+ list_for_each_entry(codec, &card->codec_dev_list, list) {
+ soc_dapm_shutdown_codec(&codec->dapm);
+- snd_soc_dapm_set_bias_level(&codec->dapm, SND_SOC_BIAS_OFF);
++ if (codec->dapm.bias_level == SND_SOC_BIAS_STANDBY)
++ snd_soc_dapm_set_bias_level(&codec->dapm,
++ SND_SOC_BIAS_OFF);
+ }
+ }
+
--- /dev/null
+From 5ed80a75b248bfaf840ea6b38f941edcf6ee7dc7 Mon Sep 17 00:00:00 2001
+From: Javier Martin <javier.martin@vista-silicon.com>
+Date: Thu, 23 Feb 2012 15:43:18 +0100
+Subject: ASoC: i.MX SSI: Fix DSP_A format.
+
+From: Javier Martin <javier.martin@vista-silicon.com>
+
+commit 5ed80a75b248bfaf840ea6b38f941edcf6ee7dc7 upstream.
+
+According to i.MX27 Reference Manual (p 1593) TXBIT0 bit selects
+whether the most significant or the less significant part of the
+data word written to the FIFO is transmitted.
+
+As DSP_A is the same as DSP_B with a data offset of 1 bit, it
+doesn't make any sense to remove TXBIT0 bit here.
+
+Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
+Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/imx/imx-ssi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/sound/soc/imx/imx-ssi.c
++++ b/sound/soc/imx/imx-ssi.c
+@@ -112,7 +112,7 @@ static int imx_ssi_set_dai_fmt(struct sn
+ break;
+ case SND_SOC_DAIFMT_DSP_A:
+ /* data on rising edge of bclk, frame high 1clk before data */
+- strcr |= SSI_STCR_TFSL | SSI_STCR_TEFS;
++ strcr |= SSI_STCR_TFSL | SSI_STCR_TXBIT0 | SSI_STCR_TEFS;
+ break;
+ }
+
--- /dev/null
+From f8f54e190ddb4ed697036b60f5e2ae6dd45b801c Mon Sep 17 00:00:00 2001
+From: Phil Sutter <phil.sutter@viprinet.com>
+Date: Mon, 27 Feb 2012 12:17:04 +0100
+Subject: crypto: mv_cesa - fix final callback not ignoring input data
+
+From: Phil Sutter <phil.sutter@viprinet.com>
+
+commit f8f54e190ddb4ed697036b60f5e2ae6dd45b801c upstream.
+
+Broken by commit 6ef84509f3d439ed2d43ea40080643efec37f54f for users
+passing a request with non-zero 'nbytes' field, like e.g. testmgr.
+
+Signed-off-by: Phil Sutter <phil.sutter@viprinet.com>
+Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/crypto/mv_cesa.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/drivers/crypto/mv_cesa.c
++++ b/drivers/crypto/mv_cesa.c
+@@ -713,6 +713,7 @@ static int mv_hash_final(struct ahash_re
+ {
+ struct mv_req_hash_ctx *ctx = ahash_request_ctx(req);
+
++ ahash_request_set_crypt(req, NULL, req->result, 0);
+ mv_update_hash_req_ctx(ctx, 1, 0);
+ return mv_handle_req(&req->base);
+ }
--- /dev/null
+From 37891abc8464637964a26ae4b61d307fef831f80 Mon Sep 17 00:00:00 2001
+From: Alan Stern <stern@rowland.harvard.edu>
+Date: Mon, 27 Feb 2012 11:23:45 -0500
+Subject: HID: usbhid: Add NOGET quirk for the AIREN Slim+ keyboard
+
+From: Alan Stern <stern@rowland.harvard.edu>
+
+commit 37891abc8464637964a26ae4b61d307fef831f80 upstream.
+
+This patch (as1531) adds a NOGET quirk for the Slim+ keyboard marketed
+by AIREN. This keyboard seems to have a lot of bugs; NOGET works
+around only one of them.
+
+Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
+Reported-by: okias <d.okias@gmail.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/hid/hid-ids.h | 3 +++
+ drivers/hid/usbhid/hid-quirks.c | 1 +
+ 2 files changed, 4 insertions(+)
+
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -59,6 +59,9 @@
+ #define USB_VENDOR_ID_AIRCABLE 0x16CA
+ #define USB_DEVICE_ID_AIRCABLE1 0x1502
+
++#define USB_VENDOR_ID_AIREN 0x1a2c
++#define USB_DEVICE_ID_AIREN_SLIMPLUS 0x0002
++
+ #define USB_VENDOR_ID_ALCOR 0x058f
+ #define USB_DEVICE_ID_ALCOR_USBRS232 0x9720
+
+--- a/drivers/hid/usbhid/hid-quirks.c
++++ b/drivers/hid/usbhid/hid-quirks.c
+@@ -52,6 +52,7 @@ static const struct hid_blacklist {
+ { USB_VENDOR_ID_PLAYDOTCOM, USB_DEVICE_ID_PLAYDOTCOM_EMS_USBII, HID_QUIRK_MULTI_INPUT },
+ { USB_VENDOR_ID_TOUCHPACK, USB_DEVICE_ID_TOUCHPACK_RTS, HID_QUIRK_MULTI_INPUT },
+
++ { USB_VENDOR_ID_AIREN, USB_DEVICE_ID_AIREN_SLIMPLUS, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_UC100KM, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_CS124U, HID_QUIRK_NOGET },
+ { USB_VENDOR_ID_ATEN, USB_DEVICE_ID_ATEN_2PORTKVM, HID_QUIRK_NOGET },
--- /dev/null
+From 41f8ad76362e7aefe3a03949c43e23102dae6e0b Mon Sep 17 00:00:00 2001
+From: Boaz Harrosh <bharrosh@panasas.com>
+Date: Wed, 25 Jan 2012 21:42:58 +0200
+Subject: [SCSI] osd_uld: Bump MAX_OSD_DEVICES from 64 to 1,048,576
+
+From: Boaz Harrosh <bharrosh@panasas.com>
+
+commit 41f8ad76362e7aefe3a03949c43e23102dae6e0b upstream.
+
+It used to be that minors where 8 bit. But now they
+are actually 20 bit. So the fix is simplicity itself.
+
+I've tested with 300 devices and all user-mode utils
+work just fine. I have also mechanically added 10,000
+to the ida (so devices are /dev/osd10000, /dev/osd10001 ...)
+and was able to mkfs an exofs filesystem and access osds
+from user-mode.
+
+All the open-osd user-mode code uses the same library
+to access devices through their symbolic names in
+/dev/osdX so I'd say it's pretty safe. (Well tested)
+
+This patch is very important because some of the systems
+that will be deploying the 3.2 pnfs-objects code are larger
+than 64 OSDs and will stop to work properly when reaching
+that number.
+
+Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
+Signed-off-by: James Bottomley <JBottomley@Parallels.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/scsi/osd/osd_uld.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/drivers/scsi/osd/osd_uld.c
++++ b/drivers/scsi/osd/osd_uld.c
+@@ -69,10 +69,10 @@
+ #ifndef SCSI_OSD_MAJOR
+ # define SCSI_OSD_MAJOR 260
+ #endif
+-#define SCSI_OSD_MAX_MINOR 64
++#define SCSI_OSD_MAX_MINOR MINORMASK
+
+ static const char osd_name[] = "osd";
+-static const char *osd_version_string = "open-osd 0.2.0";
++static const char *osd_version_string = "open-osd 0.2.1";
+
+ MODULE_AUTHOR("Boaz Harrosh <bharrosh@panasas.com>");
+ MODULE_DESCRIPTION("open-osd Upper-Layer-Driver osd.ko");
ath9k_hw-prevent-writes-to-const-data-on-ar9160.patch
kprobes-return-proper-error-code-from-register_kprobe.patch
mm-thp-fix-bug-on-mm-nr_ptes.patch
+hid-usbhid-add-noget-quirk-for-the-airen-slim-keyboard.patch
+crypto-mv_cesa-fix-final-callback-not-ignoring-input-data.patch
+osd_uld-bump-max_osd_devices-from-64-to-1-048-576.patch
+asoc-dapm-check-for-bias-level-when-powering-down.patch
+asoc-i.mx-ssi-fix-dsp_a-format.patch