From: Greg Kroah-Hartman Date: Wed, 4 Apr 2012 17:41:11 +0000 (-0700) Subject: 3.3-stable patches X-Git-Tag: v3.3.2~35 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bf2f14cb53f77954125dc19df7a361600deba014;p=thirdparty%2Fkernel%2Fstable-queue.git 3.3-stable patches added patches: alsa-hda-realtek-fix-adc-assignment-with-a-shared-hp-mic-pin.patch asoc-wm8994-update-wm8994-dcs-calibration.patch mtd-block2mtd-initialize-writebufsize.patch mtd-doc2000-initialize-writebufsize.patch mtd-doc2001-initialize-writebufsize.patch mtd-doc2001plus-initialize-writebufsize.patch mtd-docg3-initialize-writebufsize.patch mtd-ixp4xx-oops-in-ixp4xx_flash_probe.patch mtd-lart-initialize-writebufsize.patch mtd-m25p80-set-writebufsize.patch mtd-mips-lantiq-reintroduce-support-for-cmdline-partitions.patch mtd-nand-gpmi-use-correct-member-for-checking-nand_bbt_use_flash.patch mtd-sst25l-initialize-writebufsize.patch --- diff --git a/queue-3.3/alsa-hda-realtek-fix-adc-assignment-with-a-shared-hp-mic-pin.patch b/queue-3.3/alsa-hda-realtek-fix-adc-assignment-with-a-shared-hp-mic-pin.patch new file mode 100644 index 00000000000..a6d92d2c7bd --- /dev/null +++ b/queue-3.3/alsa-hda-realtek-fix-adc-assignment-with-a-shared-hp-mic-pin.patch @@ -0,0 +1,68 @@ +From 26acaf08556a3c64ebf8ea3654b51e6acbb0a26c Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Thu, 22 Mar 2012 14:36:50 +0100 +Subject: ALSA: hda/realtek - Fix ADC assignment with a shared HP/Mic pin + +From: Takashi Iwai + +commit 26acaf08556a3c64ebf8ea3654b51e6acbb0a26c upstream. + +The recent Realtek driver tries to assign an extra input via the +headphone plug when only a single input source is found. The code +worked on Samsung Q1, but it broke ASUS 1015 where the mic is a +digital-mic and only a specific ADC works. + +This patch fixes the assignment of ADC in the shared mic/hp case. +Instead of assuming the single ADC at first, reduce the ADCs after +trying to assign both mic and HP pins. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42973 + +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_realtek.c | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -2709,9 +2709,6 @@ static int alc_auto_fill_adc_caps(struct + int max_nums = ARRAY_SIZE(spec->private_adc_nids); + int i, nums = 0; + +- if (spec->shared_mic_hp) +- max_nums = 1; /* no multi streams with the shared HP/mic */ +- + nid = codec->start_nid; + for (i = 0; i < codec->num_nodes; i++, nid++) { + hda_nid_t src; +@@ -3723,6 +3720,7 @@ static void alc_remove_invalid_adc_nids( + if (spec->dyn_adc_switch) + return; + ++ again: + nums = 0; + for (n = 0; n < spec->num_adc_nids; n++) { + hda_nid_t cap = spec->private_capsrc_nids[n]; +@@ -3743,6 +3741,11 @@ static void alc_remove_invalid_adc_nids( + if (!nums) { + /* check whether ADC-switch is possible */ + if (!alc_check_dyn_adc_switch(codec)) { ++ if (spec->shared_mic_hp) { ++ spec->shared_mic_hp = 0; ++ spec->private_imux[0].num_items = 1; ++ goto again; ++ } + printk(KERN_WARNING "hda_codec: %s: no valid ADC found;" + " using fallback 0x%x\n", + codec->chip_name, spec->private_adc_nids[0]); +@@ -3760,7 +3763,7 @@ static void alc_remove_invalid_adc_nids( + + if (spec->auto_mic) + alc_auto_mic_check_imux(codec); /* check auto-mic setups */ +- else if (spec->input_mux->num_items == 1) ++ else if (spec->input_mux->num_items == 1 || spec->shared_mic_hp) + spec->num_adc_nids = 1; /* reduce to a single ADC */ + } + diff --git a/queue-3.3/asoc-wm8994-update-wm8994-dcs-calibration.patch b/queue-3.3/asoc-wm8994-update-wm8994-dcs-calibration.patch new file mode 100644 index 00000000000..2836ecb2fc2 --- /dev/null +++ b/queue-3.3/asoc-wm8994-update-wm8994-dcs-calibration.patch @@ -0,0 +1,29 @@ +From e16605855d58803fe0608417150c7a618b4f8243 Mon Sep 17 00:00:00 2001 +From: Mark Brown +Date: Wed, 21 Mar 2012 13:22:40 +0000 +Subject: ASoC: wm8994: Update WM8994 DCS calibration + +From: Mark Brown + +commit e16605855d58803fe0608417150c7a618b4f8243 upstream. + +Based on latest production information. + +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + sound/soc/codecs/wm8994.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/sound/soc/codecs/wm8994.c ++++ b/sound/soc/codecs/wm8994.c +@@ -3427,7 +3427,7 @@ static int wm8994_codec_probe(struct snd + case 2: + case 3: + wm8994->hubs.dcs_codes_l = -9; +- wm8994->hubs.dcs_codes_r = -5; ++ wm8994->hubs.dcs_codes_r = -7; + break; + default: + break; diff --git a/queue-3.3/mtd-block2mtd-initialize-writebufsize.patch b/queue-3.3/mtd-block2mtd-initialize-writebufsize.patch new file mode 100644 index 00000000000..75fef6a9a3c --- /dev/null +++ b/queue-3.3/mtd-block2mtd-initialize-writebufsize.patch @@ -0,0 +1,37 @@ +From b604387411ec6a072e95910099262616edd2bd2f Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:32:44 +0200 +Subject: mtd: block2mtd: initialize writebufsize + +From: Artem Bityutskiy + +commit b604387411ec6a072e95910099262616edd2bd2f upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +However, we forgot to set this parameter for block2mtd. Set it to PAGE_SIZE +because this is actually the amount of data we write at a time. + +Signed-off-by: Artem Bityutskiy +Acked-by: Joern Engel +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/block2mtd.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/mtd/devices/block2mtd.c ++++ b/drivers/mtd/devices/block2mtd.c +@@ -283,6 +283,7 @@ static struct block2mtd_dev *add_device( + dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK; + dev->mtd.erasesize = erase_size; + dev->mtd.writesize = 1; ++ dev->mtd.writebufsize = PAGE_SIZE; + dev->mtd.type = MTD_RAM; + dev->mtd.flags = MTD_CAP_RAM; + dev->mtd.erase = block2mtd_erase; diff --git a/queue-3.3/mtd-doc2000-initialize-writebufsize.patch b/queue-3.3/mtd-doc2000-initialize-writebufsize.patch new file mode 100644 index 00000000000..2df0837ec6d --- /dev/null +++ b/queue-3.3/mtd-doc2000-initialize-writebufsize.patch @@ -0,0 +1,37 @@ +From cd1986a3c111f7ed597619705290fa52a975014f Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:38:43 +0200 +Subject: mtd: doc2000: initialize writebufsize + +From: Artem Bityutskiy + +commit cd1986a3c111f7ed597619705290fa52a975014f upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set it to be equivalent to mtd->writesize because this is the maximum amount +of data the driver writes at a time. + +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/doc2000.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/mtd/devices/doc2000.c ++++ b/drivers/mtd/devices/doc2000.c +@@ -562,7 +562,7 @@ void DoC2k_init(struct mtd_info *mtd) + + mtd->type = MTD_NANDFLASH; + mtd->flags = MTD_CAP_NANDFLASH; +- mtd->writesize = 512; ++ mtd->writebufsize = mtd->writesize = 512; + mtd->oobsize = 16; + mtd->owner = THIS_MODULE; + mtd->erase = doc_erase; diff --git a/queue-3.3/mtd-doc2001-initialize-writebufsize.patch b/queue-3.3/mtd-doc2001-initialize-writebufsize.patch new file mode 100644 index 00000000000..fe972207aa7 --- /dev/null +++ b/queue-3.3/mtd-doc2001-initialize-writebufsize.patch @@ -0,0 +1,37 @@ +From cca84b569ebe3372b28949e00b0a3a17f87e2970 Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:42:39 +0200 +Subject: mtd: doc2001: initialize writebufsize + +From: Artem Bityutskiy + +commit cca84b569ebe3372b28949e00b0a3a17f87e2970 upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set it to be equivalent to mtd->writesize because this is the maximum amount +of data the driver writes at a time. + +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/doc2001.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/mtd/devices/doc2001.c ++++ b/drivers/mtd/devices/doc2001.c +@@ -346,7 +346,7 @@ void DoCMil_init(struct mtd_info *mtd) + + /* FIXME: erase size is not always 8KiB */ + mtd->erasesize = 0x2000; +- mtd->writesize = 512; ++ mtd->writebufsize = mtd->writesize = 512; + mtd->oobsize = 16; + mtd->owner = THIS_MODULE; + mtd->erase = doc_erase; diff --git a/queue-3.3/mtd-doc2001plus-initialize-writebufsize.patch b/queue-3.3/mtd-doc2001plus-initialize-writebufsize.patch new file mode 100644 index 00000000000..959093e15dd --- /dev/null +++ b/queue-3.3/mtd-doc2001plus-initialize-writebufsize.patch @@ -0,0 +1,37 @@ +From 71f60fbebf0f18dd4e855335a009efda251b1697 Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:43:14 +0200 +Subject: mtd: doc2001plus: initialize writebufsize + +From: Artem Bityutskiy + +commit 71f60fbebf0f18dd4e855335a009efda251b1697 upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set it to be equivalent to mtd->writesize because this is the maximum amount +of data the driver writes at a time. + +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/doc2001plus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/mtd/devices/doc2001plus.c ++++ b/drivers/mtd/devices/doc2001plus.c +@@ -467,7 +467,7 @@ void DoCMilPlus_init(struct mtd_info *mt + + mtd->type = MTD_NANDFLASH; + mtd->flags = MTD_CAP_NANDFLASH; +- mtd->writesize = 512; ++ mtd->writebufsize = mtd->writesize = 512; + mtd->oobsize = 16; + mtd->owner = THIS_MODULE; + mtd->erase = doc_erase; diff --git a/queue-3.3/mtd-docg3-initialize-writebufsize.patch b/queue-3.3/mtd-docg3-initialize-writebufsize.patch new file mode 100644 index 00000000000..2687d4445af --- /dev/null +++ b/queue-3.3/mtd-docg3-initialize-writebufsize.patch @@ -0,0 +1,38 @@ +From 82c4c58d6f1a78e8de875272a19ab9220b8066aa Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:44:32 +0200 +Subject: mtd: docg3: initialize writebufsize + +From: Artem Bityutskiy + +commit 82c4c58d6f1a78e8de875272a19ab9220b8066aa upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set it to be equivalent to mtd->writesize because this is the maximum amount +of data the driver writes at a time. + +Signed-off-by: Artem Bityutskiy +Acked-by: Robert Jarzmik +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/docg3.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/mtd/devices/docg3.c ++++ b/drivers/mtd/devices/docg3.c +@@ -1817,7 +1817,7 @@ static void __init doc_set_driver_info(i + mtd->erasesize = DOC_LAYOUT_BLOCK_SIZE * DOC_LAYOUT_NBPLANES; + if (docg3->reliable == 2) + mtd->erasesize /= 2; +- mtd->writesize = DOC_LAYOUT_PAGE_SIZE; ++ mtd->writebufsize = mtd->writesize = DOC_LAYOUT_PAGE_SIZE; + mtd->oobsize = DOC_LAYOUT_OOB_SIZE; + mtd->owner = THIS_MODULE; + mtd->erase = doc_erase; diff --git a/queue-3.3/mtd-ixp4xx-oops-in-ixp4xx_flash_probe.patch b/queue-3.3/mtd-ixp4xx-oops-in-ixp4xx_flash_probe.patch new file mode 100644 index 00000000000..be5fece630f --- /dev/null +++ b/queue-3.3/mtd-ixp4xx-oops-in-ixp4xx_flash_probe.patch @@ -0,0 +1,50 @@ +From a3c1e3b732b3708a80e4035b9d845f3f7c7dd0c9 Mon Sep 17 00:00:00 2001 +From: Marc Kleine-Budde +Date: Wed, 8 Feb 2012 20:24:29 +0100 +Subject: mtd: ixp4xx: oops in ixp4xx_flash_probe + +From: Marc Kleine-Budde + +commit a3c1e3b732b3708a80e4035b9d845f3f7c7dd0c9 upstream. + +In commit "c797533 mtd: abstract last MTD partition parser argument" the +third argument of "mtd_device_parse_register()" changed from start address +of the MTD device to a pointer to a struct. + +The "ixp4xx_flash_probe()" function was not converted properly, causing +an oops during boot. + +This patch fixes the problem by filling the needed information into a +"struct mtd_part_parser_data" and passing it to +"mtd_device_parse_register()". + +Signed-off-by: Marc Kleine-Budde +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/maps/ixp4xx.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- a/drivers/mtd/maps/ixp4xx.c ++++ b/drivers/mtd/maps/ixp4xx.c +@@ -182,6 +182,9 @@ static int ixp4xx_flash_probe(struct pla + { + struct flash_platform_data *plat = dev->dev.platform_data; + struct ixp4xx_flash_info *info; ++ struct mtd_part_parser_data ppdata = { ++ .origin = dev->resource->start, ++ }; + int err = -1; + + if (!plat) +@@ -247,7 +250,7 @@ static int ixp4xx_flash_probe(struct pla + /* Use the fast version */ + info->map.write = ixp4xx_write16; + +- err = mtd_device_parse_register(info->mtd, probes, dev->resource->start, ++ err = mtd_device_parse_register(info->mtd, probes, &ppdata, + plat->parts, plat->nr_parts); + if (err) { + printk(KERN_ERR "Could not parse partitions\n"); diff --git a/queue-3.3/mtd-lart-initialize-writebufsize.patch b/queue-3.3/mtd-lart-initialize-writebufsize.patch new file mode 100644 index 00000000000..7828e98c9e0 --- /dev/null +++ b/queue-3.3/mtd-lart-initialize-writebufsize.patch @@ -0,0 +1,35 @@ +From fcc44a07dae0af16e84e93425fc8afe642ddc603 Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 09:53:28 +0200 +Subject: mtd: lart: initialize writebufsize + +From: Artem Bityutskiy + +commit fcc44a07dae0af16e84e93425fc8afe642ddc603 upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set writebufsize to 4 because this drivers writes at max 4 bytes at a time. + +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/lart.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/mtd/devices/lart.c ++++ b/drivers/mtd/devices/lart.c +@@ -630,6 +630,7 @@ static int __init lart_flash_init (void) + mtd.name = module_name; + mtd.type = MTD_NORFLASH; + mtd.writesize = 1; ++ mtd.writebufsize = 4; + mtd.flags = MTD_CAP_NORFLASH; + mtd.size = FLASH_BLOCKSIZE_PARAM * FLASH_NUMBLOCKS_16m_PARAM + FLASH_BLOCKSIZE_MAIN * FLASH_NUMBLOCKS_16m_MAIN; + mtd.erasesize = FLASH_BLOCKSIZE_MAIN; diff --git a/queue-3.3/mtd-m25p80-set-writebufsize.patch b/queue-3.3/mtd-m25p80-set-writebufsize.patch new file mode 100644 index 00000000000..0709a42724d --- /dev/null +++ b/queue-3.3/mtd-m25p80-set-writebufsize.patch @@ -0,0 +1,35 @@ +From b54f47c8bcfc5f766bf13ec31bd7dd1d4726d33b Mon Sep 17 00:00:00 2001 +From: Brian Norris +Date: Tue, 31 Jan 2012 00:06:03 -0800 +Subject: mtd: m25p80: set writebufsize + +From: Brian Norris + +commit b54f47c8bcfc5f766bf13ec31bd7dd1d4726d33b upstream. + +Using UBI on m25p80 can give messages like: + + UBI error: io_init: bad write buffer size 0 for 1 min. I/O unit + +We need to initialize writebufsize; I think "page_size" is the correct +"bufsize", although I'm not sure. Comments? + +Signed-off-by: Brian Norris +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/m25p80.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/mtd/devices/m25p80.c ++++ b/drivers/mtd/devices/m25p80.c +@@ -932,6 +932,7 @@ static int __devinit m25p_probe(struct s + ppdata.of_node = spi->dev.of_node; + flash->mtd.dev.parent = &spi->dev; + flash->page_size = info->page_size; ++ flash->mtd.writebufsize = flash->page_size; + + if (info->addr_width) + flash->addr_width = info->addr_width; diff --git a/queue-3.3/mtd-mips-lantiq-reintroduce-support-for-cmdline-partitions.patch b/queue-3.3/mtd-mips-lantiq-reintroduce-support-for-cmdline-partitions.patch new file mode 100644 index 00000000000..f3247261e2b --- /dev/null +++ b/queue-3.3/mtd-mips-lantiq-reintroduce-support-for-cmdline-partitions.patch @@ -0,0 +1,42 @@ +From bf011f2ed53d587fdd8148c173c4f09ed77bdf1a Mon Sep 17 00:00:00 2001 +From: Daniel Schwierzeck +Date: Thu, 23 Feb 2012 17:59:49 +0100 +Subject: mtd: mips: lantiq: reintroduce support for cmdline partitions + +From: Daniel Schwierzeck + +commit bf011f2ed53d587fdd8148c173c4f09ed77bdf1a upstream. + +Since commit ca97dec2ab5c87e9fbdf7e882e1820004a3966fa the +command line parsing of MTD partitions does not work anymore. + +Signed-off-by: Daniel Schwierzeck +Signed-off-by: John Crispin +Signed-off-by: Artem Bityutskiy +Acked-by: John Crispin +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/maps/lantiq-flash.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/mtd/maps/lantiq-flash.c ++++ b/drivers/mtd/maps/lantiq-flash.c +@@ -45,6 +45,7 @@ struct ltq_mtd { + }; + + static char ltq_map_name[] = "ltq_nor"; ++static const char *ltq_probe_types[] __devinitconst = { "cmdlinepart", NULL }; + + static map_word + ltq_read16(struct map_info *map, unsigned long adr) +@@ -168,7 +169,7 @@ ltq_mtd_probe(struct platform_device *pd + cfi->addr_unlock1 ^= 1; + cfi->addr_unlock2 ^= 1; + +- err = mtd_device_parse_register(ltq_mtd->mtd, NULL, 0, ++ err = mtd_device_parse_register(ltq_mtd->mtd, ltq_probe_types, 0, + ltq_mtd_data->parts, ltq_mtd_data->nr_parts); + if (err) { + dev_err(&pdev->dev, "failed to add partitions\n"); diff --git a/queue-3.3/mtd-nand-gpmi-use-correct-member-for-checking-nand_bbt_use_flash.patch b/queue-3.3/mtd-nand-gpmi-use-correct-member-for-checking-nand_bbt_use_flash.patch new file mode 100644 index 00000000000..9fd6762a9fb --- /dev/null +++ b/queue-3.3/mtd-nand-gpmi-use-correct-member-for-checking-nand_bbt_use_flash.patch @@ -0,0 +1,39 @@ +From 5289966ea576a062b80319975b31b661c196ff9d Mon Sep 17 00:00:00 2001 +From: Wolfram Sang +Date: Tue, 31 Jan 2012 13:10:43 +0100 +Subject: mtd: nand: gpmi: use correct member for checking NAND_BBT_USE_FLASH + +From: Wolfram Sang + +commit 5289966ea576a062b80319975b31b661c196ff9d upstream. + +This has been moved from .options to .bbt_options meanwhile. So, it +currently checks for something totally different (NAND_OWN_BUFFERS) and +decides according to that. + +Artem Bityutskiy: the options were moved in +a40f734 mtd: nand: consolidate redundant flash-based BBT flags + +Artem Bityutskiy: CCing -stable + +Signed-off-by: Wolfram Sang +Acked-by: Huang Shijie +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c ++++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c +@@ -1124,7 +1124,7 @@ static int gpmi_block_markbad(struct mtd + chip->bbt[block >> 2] |= 0x01 << ((block & 0x03) << 1); + + /* Do we have a flash based bad block table ? */ +- if (chip->options & NAND_BBT_USE_FLASH) ++ if (chip->bbt_options & NAND_BBT_USE_FLASH) + ret = nand_update_bbt(mtd, ofs); + else { + chipnr = (int)(ofs >> chip->chip_shift); diff --git a/queue-3.3/mtd-sst25l-initialize-writebufsize.patch b/queue-3.3/mtd-sst25l-initialize-writebufsize.patch new file mode 100644 index 00000000000..3bf25e27776 --- /dev/null +++ b/queue-3.3/mtd-sst25l-initialize-writebufsize.patch @@ -0,0 +1,36 @@ +From c4cc625ea5958d065c21cc0fcea29e9ed8f3d2bc Mon Sep 17 00:00:00 2001 +From: Artem Bityutskiy +Date: Fri, 3 Feb 2012 10:16:50 +0200 +Subject: mtd: sst25l: initialize writebufsize + +From: Artem Bityutskiy + +commit c4cc625ea5958d065c21cc0fcea29e9ed8f3d2bc upstream. + +The writebufsize concept was introduce by commit +"0e4ca7e mtd: add writebufsize field to mtd_info struct" and it represents +the maximum amount of data the device writes to the media at a time. This is +an important parameter for UBIFS which is used during recovery and which +basically defines how big a corruption caused by a power cut can be. + +Set writebufsize to the flash page size because it is the maximum amount of +data it writes at a time. + +Signed-off-by: Artem Bityutskiy +Signed-off-by: David Woodhouse +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/mtd/devices/sst25l.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/mtd/devices/sst25l.c ++++ b/drivers/mtd/devices/sst25l.c +@@ -402,6 +402,7 @@ static int __devinit sst25l_probe(struct + flash->mtd.flags = MTD_CAP_NORFLASH; + flash->mtd.erasesize = flash_info->erase_size; + flash->mtd.writesize = flash_info->page_size; ++ flash->mtd.writebufsize = flash_info->page_size; + flash->mtd.size = flash_info->page_size * flash_info->nr_pages; + flash->mtd.erase = sst25l_erase; + flash->mtd.read = sst25l_read; diff --git a/queue-3.3/series b/queue-3.3/series index 7e7ff711b25..5ca97d8b756 100644 --- a/queue-3.3/series +++ b/queue-3.3/series @@ -5,3 +5,16 @@ sky2-dont-overwrite-settings-for-phy-quick-link.patch rose_dev-fix-memcpy-bug-in-rose_set_mac_address.patch net-usb-cdc_eem-fix-mtu.patch fix-non-tbi-phy-access-a-bad-merge-undid-bug-fix-in-a-previous-commit.patch +alsa-hda-realtek-fix-adc-assignment-with-a-shared-hp-mic-pin.patch +asoc-wm8994-update-wm8994-dcs-calibration.patch +mtd-ixp4xx-oops-in-ixp4xx_flash_probe.patch +mtd-mips-lantiq-reintroduce-support-for-cmdline-partitions.patch +mtd-nand-gpmi-use-correct-member-for-checking-nand_bbt_use_flash.patch +mtd-sst25l-initialize-writebufsize.patch +mtd-doc2001plus-initialize-writebufsize.patch +mtd-doc2000-initialize-writebufsize.patch +mtd-doc2001-initialize-writebufsize.patch +mtd-docg3-initialize-writebufsize.patch +mtd-block2mtd-initialize-writebufsize.patch +mtd-lart-initialize-writebufsize.patch +mtd-m25p80-set-writebufsize.patch