openwrt/target/linux/generic/hack-4.14
Koen Vandeputte f1a2b5bbbc kernel: tolerate using UBI/UBIFS on MLC flash (FS#1830)
starting from upstream commit 577b4eb23811 ("ubi: Reject MLC NAND")
it is not allowed to use UBI and UBIFS on a MLC flavoured NAND flash chip. [1]

According to David Oberhollenzer [2]:

The real problem is that on MLC NAND, pages come in pairs.

Multiple voltage levels inside a single, physical memory cell are used to
encode more than one bit. Instead of just having pages that are twice as big,
the flash exposes them as two different pages. Those pages are usually not
ordered sequentially either, but according to a vendor/device specific
pairing scheme.

Within OpenWrt, devices utilizing this type of flash,
combined with UBI(fs) will be bricked when a user upgrades
from 17.01.4 to a newer version as the MLC will be refused.

As these devices are currently advertised as supported by OpenWrt,
we should at least maintain the original state during the lifecycle
of the current releases.

Support can be gracefully ended when a new release-branch is created.

Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Acked-by: Hauke Mehrtens <hauke@hauke-m.e>

[1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v4.14.77&id=577b4eb23811dfc8e38924dc476dbc866be74253
[2] https://lore.kernel.org/patchwork/patch/920344/
2018-10-29 10:56:59 +01:00
..
202-reduce_module_size.patch kernel: bump 4.14 to 4.14.48 for 18.06 2018-06-07 09:03:24 +02:00
204-module_strip.patch kernel: avoid stripping retpoline flag with CONFIG_MODULE_STRIPPED 2018-02-21 20:55:52 +01:00
207-disable-modorder.patch kernel: bump 4.14 to 4.14.68 2018-09-07 17:22:23 +02:00
210-darwin_scripts_include.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
211-host_tools_portability.patch kernel: bump 4.14 to 4.14.60 for 18.06 2018-08-06 07:30:41 +02:00
212-byteshift_portability.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
214-spidev_h_portability.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
220-gc_sections.patch kernel: bump 4.14 to 4.14.68 2018-09-07 17:22:23 +02:00
221-module_exports.patch kernel: bump 4.14 to 4.14.27 2018-03-17 22:15:38 +01:00
230-openwrt_lzma_options.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
250-netfilter_depends.patch kernel: bump 4.14 to 4.14.34 2018-04-16 00:22:57 +03:00
251-sound_kconfig.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
259-regmap_dynamic.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
260-crypto_test_dependencies.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
280-rfkill-stubs.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
300-MIPS-r4k_cache-use-more-efficient-cache-blast.patch kernel: unroll MIPS r4k cache blast function 2018-03-10 11:58:19 +01:00
301-mips_image_cmdline_hack.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
321-powerpc_crtsavres_prereq.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
420-allow-ubi-mlc-support.patch kernel: tolerate using UBI/UBIFS on MLC flash (FS#1830) 2018-10-29 10:56:59 +01:00
531-debloat_lzma.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
640-bridge-only-accept-EAP-locally.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
641-bridge_port_isolate.patch kernel: fix forwarding locally generated packages in bridge isolation patch 2018-02-05 10:16:26 +01:00
650-netfilter-add-xt_OFFLOAD-target.patch kernel: bump 4.14 to 4.14.52 for 18.06 2018-07-02 07:06:23 +02:00
651-wireless_mesh_header.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
660-fq_codel_defaults.patch kernel: merge a pending fix for HFSC warnings/slowdowns (fixes FS#1136) 2018-03-11 08:58:53 +01:00
661-use_fq_codel_by_default.patch kernel: bump 4.14 to 4.14.77 2018-10-19 10:00:48 +02:00
662-remove_pfifo_fast.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
700-swconfig_switch_drivers.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
702-phy_add_aneg_done_function.patch kernel: update kernel 4.14 to 4.14.32 2018-04-03 23:26:45 +02:00
721-phy_packets.patch kernel: bump 4.14 to 4.14.77 2018-10-19 10:00:48 +02:00
773-bgmac-add-srab-switch.patch kernel: bump 4.14 to 4.14.48 for 18.06 2018-06-07 09:03:24 +02:00
835-misc-owl_loader.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
901-debloat_sock_diag.patch kernel: bump 4.14 to 4.14.48 for 18.06 2018-06-07 09:03:24 +02:00
902-debloat_proc.patch kernel: bump 4.14 to 4.14.77 2018-10-19 10:00:48 +02:00
904-debloat_dma_buf.patch kernel: bump 4.14 to 4.14.54 for 18.06 2018-07-12 13:54:24 +02:00
910-kobject_uevent.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
911-kobject_add_broadcast_uevent.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
921-always-create-console-node-in-initramfs.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
930-crashlog.patch kernel: generic: Add kernel 4.14 support 2017-12-16 22:11:19 +01:00
940-cleanup-offload-hooks-on-netdev-unregister.patch kernel: bump 4.14 to 4.14.52 for 18.06 2018-07-02 07:06:23 +02:00