aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
Commit message (Collapse)AuthorAgeFilesLines
* Revert "generic: 5.4: Add 4B_OPCODES flag to w25q256"Chuanhong Guo2020-04-056-35/+8
| | | | | | | | | | | This reverts commit d7f21940bcaf70ba404d354c7fa6519c1717d00a. Winbond W25Q256FV and W25Q256JV both uses 0xef4019 as JEDEC ID, but only the latter has proper 4B_OPCODES support. W25Q256FV has all 4B read instructions but it lacks a 4B page program instruction, causing the entire flash to be read-only. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ath79: improve mikrotik-caldata.shThibaut VARÈNE2020-04-041-2/+7
| | | | | | | | | | Reduce unnecessary flash wear and be tidy: - Run the extraction only if necessary - Extract temporary file to /tmp - cleanup after execution Tested-by: Roger Pueyo Centelles <roger.pueyo@guifi.net> Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
* kernel: rtl8367b: use id as a bit offset for BYPASS_LINE_RATEINAGAKI Hiroshi2020-04-041-4/+2
| | | | | | | | | | | | | | | | | In RTL8367B (RTL8367RB/RTL8367R-VB), the driver in GPL tars of the devices with this switch directly uses the ID of external interface as a bit offset. We should use the same way. ref (RTL8367B): - ASUS RT-N56U - TP-Link Archer C2 v1 ref (RTL8367): - TP-Link TL-WR2543ND v1 Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* kernel: rtl8367b: fix DEBUG register address for extif2INAGAKI Hiroshi2020-04-041-1/+1
| | | | | | | | RTL8367B_CHIP_DEBUG1_REG (0x1304) is for external interface 1. For external interface 2, use RTL8367B_CHIP_DEBUG2_REG (0x13e2) instead. Fixes: 9801d61c4a ("kernel: rtl8367b: add configuration for extif2") Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
* ramips: mt7621: bringup dsa master on preinitChuanhong Guo2020-04-041-0/+22
| | | | | | | | DSA requires master netdev to be up before any of its slave ports. Bring it up during preinit so that the first lan port can be used on failsafe. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: mt7621: disable image for mikrotik_rbm11gChuanhong Guo2020-04-041-0/+1
| | | | | | | It's unknown which switch port is used on mikrotik_rbm11g. Disable this image until someone with actual device fixes this problem. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: remove set_preinit_iface scriptChuanhong Guo2020-04-041-59/+0
| | | | | | | | | | This script isn't suitable for mt7621 anymore due to switching to DSA and it needs a different preinit script. Generic preinit logic in package/base-files has the ability to parse board.json and pick preinit iface accordingly. Just remove this script instead of moving it into subtargets. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* generic: mt7530: fix null pointer dereferencing in port5 setupDENG Qingfang2020-04-041-0/+39
| | | | | | | | | | | | | The 2nd gmac of mediatek soc ethernet may not be connected to a PHY and a phy-handle isn't always available. Unfortunately, mt7530 dsa driver assumes that the 2nd gmac is always connected to switch port 5 and setup mt7530 according to phy address of 2nd gmac node, causing null pointer dereferencing when phy-handle isn't defined in dts. This commit fix this setup code by checking return value of of_parse_phandle before using it. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* generic: backport support for MT7530 DSA port mirroringDENG Qingfang2020-04-041-0/+123
| | | | Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: correct MTC WR1201 LAN ports namesRené van Dorst2020-04-041-4/+4
| | | | | | | LAN ports of MTC WR1201 are reversed, so correct their names Signed-off-by: René van Dorst <opensource@vdorst.com> Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: add new NAND driverDENG Qingfang2020-04-044-2/+1496
| | | | | | Add new NAND driver for MT7621 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: drop obsolete mx25l25635f dts hackDENG Qingfang2020-04-042-2/+2
| | | | | | 5.4 kernel has fixed this issue, so the hack is no longer needed. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* Revert "ramips: mt7621: disable images for gehua_ghl-r-001"DENG Qingfang2020-04-041-1/+0
| | | | | | | This reverts commit 28080d54d217fb4ab112e079f69462fee695dbf8. Support for MX25L25635F flash is fixed upstream Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: move swconfig to subtargets except for MT7621DENG Qingfang2020-04-046-7/+6
| | | | | | | As MT7621 does not use swconfig anymore, move the package swconfig to other subtargets. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: introduce 'soc_device' initializationDENG Qingfang2020-04-041-0/+89
| | | | | | | | | | | | | | | mt7621 SoC has its own 'ralink_soc_info' structure with some information about the soc itself. Pcie controller and pcie phy drivers for this soc which are still in staging git tree make uses of 'soc_device_attribute' looking for revision 'E2' in order to know if reset lines are or not inverted. This way of doing things seems to be necessary in order to make things clean and properly. Hence, introduce this 'soc_device' to be able to properly use those attributes in drivers. Also set 'data' pointer points to the struct 'ralink_soc_info' to be able to export also current soc information using this mechanism. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: fix MikroTik 750Gr3 LAN ports namesDENG Qingfang2020-04-042-4/+7
| | | | | | They are labeled as LAN2..LAN5 instead of LAN1..LAN4 Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: use SoC I2C instead of bitbanged for Ubiquiti ER-X-SFPDENG Qingfang2020-04-043-13/+8
| | | | | | | The original idea of bitbanged I2C is to use i2c-gpio-custom Since i2c-gpio-custom is no longer available on 5.4, use SoC I2C instead Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: fix Ubiquiti ER-X ports names and MAC addressesDENG Qingfang2020-04-042-7/+18
| | | | | | | | | | | | | | | | | The name of each user port should be eth0..4, instead of lan1..4 and there is no WAN port. Rename them to match the official firmware. To avoid conflict with the master port (gmac0), rename it to "dsa". The official firmware assigns MAC address in this way: eth0 = label mac eth1 = label mac + 1 ... eth4 = label mac + 4 Since we have switched to DSA, it's possible to use different MAC for each port. Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: net-label supportDENG Qingfang2020-04-041-0/+34
| | | | | | Add support for renaming ethernet interfaces in DTS Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: switch kernel version to 5.4DENG Qingfang2020-04-041-0/+2
| | | | | | | After all dts and config changes, 4.14 no longer works on mt7621. Switch it to 5.4 directly. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: change default ramips_setup_interfaces configurationDENG Qingfang2020-04-041-63/+1
| | | | | | | Most of MT7621 boards have LAN1~4 and WAN, so make this as the default Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621 remove unused pinctrl groups in dtsDENG Qingfang2020-04-0412-12/+12
| | | | | | Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn> [split commit, remove leftover uart3->gpio setup] Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: mt7621: update dts/defconfig for DSADENG Qingfang2020-04-0470-317/+1888
| | | | | | | | | | | update dts and network/LED configuration for DSA driver. sysupgrade from images prior to this commit with config preserved will cause broken ethernet setup. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn> Acked-by: Jo-Philipp Wich <jo@mein.io> [split commit] Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* ramips: mt7621: backport GPIO driver fixDENG Qingfang2020-04-042-0/+118
| | | | | | Backport 2 patches from linux-next to fix mt7621 GPIO driver Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: update PCIe node in dtsiDENG Qingfang2020-04-041-14/+29
| | | | | | Update PCIe node in dtsi to match the new driver Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: backport PCIe driver fixes from staging-testDENG Qingfang2020-04-0420-0/+1730
| | | | | | Backport mt7621-pci/mt7621-pci-phy fixes from staging-test Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: update pinctrl nodesDENG Qingfang2020-04-0466-156/+156
| | | | | | Upstream GPIO driver uses "groups" "function" properties Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: convert GPIO dts refsDENG Qingfang2020-04-0470-374/+374
| | | | | | | The upstream driver does not use &gpio0..2 banks notation anymore, so convert them to &gpio Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: replace gpio/eth nodes in mt7621.dtsiDENG Qingfang2020-04-041-42/+94
| | | | | | | There's different gpio and ethernet drivers upstream for mt7621. Update these two nodes to match upstream dt bindings. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mt7621: refresh kernel configDENG Qingfang2020-04-041-52/+68
| | | | Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: refresh patchesDENG Qingfang2020-04-0444-9770/+130
| | | | | | | | | | | | | | | | | | | | | | | | | | | Removed upstreamed/solved elsewhere upstream: - 0001-MIPS-ralink-Add-rt3352-SPI_CS1-pinmux.patch - 0002-MIPS-pci-rt2880-set-pci-controller-of_node.patch - 0004-MIPS-ralink-add-MT7621-pcie-driver.patch - 0009-PCI-MIPS-enable-PCIe-on-MT7688.patch - 0025-pinctrl-ralink-add-pinctrl-driver.patch - 0028-GPIO-ralink-add-mt7621-gpio-controller.patch - 0043-spi-add-mt7621-support.patch - 0045-i2c-add-mt7621-driver.patch - 0047-DMA-ralink-add-rt2880-dma-engine.patch - 0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch - 0054-mtd-spi-nor-w25q256-respect-default-mode.patch - 0099-pci-mt7620.patch - 304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch Removed because of the new NAND driver: - 0038-Revert-mtd-nand-Remove-unused-chip-write_page-hook.patch - 0039-mtd-add-mt7621-nand-support.patch - 0040-nand-hack.patch Remove patch that no longer applies (needs rework): - 0034-NET-multi-phy-support.patch Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: mtk-mmc: set correct DMA maskDENG Qingfang2020-04-041-1/+1
| | | | | | | | | | | Since commit f8c55dc ("MIPS: use generic dma noncoherent ops for simple noncoherent platforms") changed MIPS dma handling, the mmc driver fails because it doesn't have a dma mask is set. So set the correct dma mask. Signed-off-by: NeilBrown <neil@brown.name> Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: move MTK MMC driver to files directoryDENG Qingfang2020-04-047-0/+0
| | | | | | | Move MTK MMC driver from "files-4.14" to "files" so kernel 5.4 can use it Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* ramips: copy patches and kernel config to 5.4DENG Qingfang2020-04-0450-0/+14495
| | | | | | Copy patches and kernel config to 5.4 for ramips Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
* bcm53xx: refactor board.d code in 02_networkRafał Miłecki2020-04-031-94/+95
| | | | | | | | | | | 1. Use functions for cleaner code 2. Always execute WAN interface generic code Before this change WAN interface code wasn't executed on all devices due to an early "exit 0". Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* imx6: bootscript: use partition UUID for rootfs if possibleTim Harvey2020-04-031-14/+20
| | | | | | | | | | | | | Specifying root filesystem by device is non-deterministic for several reasons: - USB device unmeration order is not garunteeed for USB storage devs - MMC devs ordering is determined by the instance of the MMC host controller including non-storage SDIO devices which can throw off numbering depending on kernel versions. It is recommended to use partition UUID Signed-off-by: Tim Harvey <tharvey@gateworks.com>
* octeontx: switch to kernel 5.4Tim Harvey2020-04-031-2/+1
| | | | | | 5.4 is stable on Gateworks Newport GW610x/GW620x/GW630x/GW640x Signed-off-by: Tim Harvey <tharvey@gateworks.com>
* kmod-sched-cake: switch to in-tree cake for 4.19+Kevin Darbyshire-Bryant2020-04-015-0/+625
| | | | | | | | | | | | | | Use in tree version of cake for kernels 4.19+ and backport features from later kernel versions to 4.19. Unfortunately PROVIDES dependency handling produces bogus circular dependency warnings so whilst this package and kmod-sched-cake-oot should be able to PROVIDE kmod-sched-cake this doesn't work. Instead, remove the PROVIDES option and modify package sqm-scripts to depend on the correct module independently. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* oxnas: some improvements for Shuttle KD20Daniel Golle2020-03-313-7/+59
| | | | | | | | | * install kmod-hwmon-drivetemp by default * wire up thermal zone * fix fan GPIO polarity * fix i2c-gpio GPIO_OPEN_DRAIN Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* oxnas: fix warning in SATA driverDaniel Golle2020-03-311-1/+1
| | | | | | | | | drivers/ata/sata_oxnas.c: In function 'sata_oxnas_port_irq': drivers/ata/sata_oxnas.c:2126:25: warning: left shift count >= width of type [-Wshift-count-overflow] if (ap->qc_active & (1 << ATA_TAG_INTERNAL)) { ^~ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ipq40xx: fix DAP-2610 boot failurePetr Štetiar2020-03-311-0/+1
| | | | | | | | | | | | | Albert has reported, that his DAP-2610 wont boot with the latest snapshot and Fredrik has found out, that the device gets stuck at "Waiting for root device ..." due to missing 5.4 kernel config symbol CONFIG_MTD_SPLIT_WRGG_FW which was probably lost during the kernel version bump. Ref: https://forum.openwrt.org/t/dap-2610-bricked-help-needed Fixes: 272e0a702a2b ("ipq40xx: add v5.4 support") Suggested-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* x86/64: add cdrom and iso9660 drivers李国2020-03-312-0/+8
| | | | | | | The iso image need cdrom and iso9660 drivers to boot, otherwise it will hang when mounting the root file system Signed-off-by: 李国 <uxgood.org@gmail.com>
* x86: generate EFI platform bootable images李国2020-03-318-18/+83
| | | | | | | | | | | | | | | | | Add EFI platform bootable images for x86 platforms. These images can also boot from legacy BIOS platform. EFI System Partition need to be fat12/fat16/fat32 (not need to load filesystem drivers), so the first partition of EFI images are not ext4 filesystem any more. GPT partition table has an alternate partition table, we did not generate it. This may cause problems when use these images as qemu disk (kernel can not find rootfs), we pad enough sectors will be ok. Signed-off-by: 李国 <uxgood.org@gmail.com> [part_magic_* refactoring, removed genisoimage checks] Signed-off-by: Petr Štetiar <ynezz@true.cz>
* grub2: make some change to add efi platform support李国2020-03-311-5/+4
| | | | | | | | 1.generate boot image at Package/install section 2.move boot image to $(STAGING_DIR_IMAGE)/grub2/ 3.add efi variant to support efi platform Signed-off-by: 李国 <uxgood.org@gmail.com>
* bcm27xx: update 5.4 patches from RPi foundationÁlvaro Fernández Rojas2020-03-3184-6/+7955
| | | | Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* generic: mips: exclude more dsemul code when fpu-emu is not enabledYousong Zhou2020-03-301-0/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch is backported from mips-next. In addition to minor reduction of code size and runtime memory use, the more apparent difference is that the delay slot emulation page will not be present for those targets with fpu emulation disabled (CONFIG_MIPS_FP_SUPPORT=n) Memory maps of busybox before and after this change root@OpenWrt:/# cat /proc/self/maps 00400000-00449000 r-xp 00000000 00:02 23 /bin/busybox 00458000-00459000 r-xp 00048000 00:02 23 /bin/busybox 00459000-0045a000 rwxp 00049000 00:02 23 /bin/busybox 77dc0000-77de2000 r-xp 00000000 00:02 273 /lib/libgcc_s.so.1 77de2000-77de3000 r-xp 00012000 00:02 273 /lib/libgcc_s.so.1 77de3000-77de4000 rwxp 00013000 00:02 273 /lib/libgcc_s.so.1 77de4000-77e7b000 r-xp 00000000 00:02 271 /lib/libc.so 77e8a000-77e8c000 rwxp 00096000 00:02 271 /lib/libc.so 77e8c000-77e8e000 rwxp 00000000 00:00 0 7fd86000-7fda7000 rw-p 00000000 00:00 0 [stack] 7fefd000-7fefe000 r-xp 00000000 00:00 0 7ffe6000-7ffe7000 r--p 00000000 00:00 0 [vvar] 7ffe7000-7ffe8000 r-xp 00000000 00:00 0 [vdso] root@OpenWrt:/# cat /proc/self/maps 00400000-00449000 r-xp 00000000 00:02 23 /bin/busybox 00458000-00459000 r-xp 00048000 00:02 23 /bin/busybox 00459000-0045a000 rwxp 00049000 00:02 23 /bin/busybox 77d55000-77d77000 r-xp 00000000 00:02 274 /lib/libgcc_s.so.1 77d77000-77d78000 r-xp 00012000 00:02 274 /lib/libgcc_s.so.1 77d78000-77d79000 rwxp 00013000 00:02 274 /lib/libgcc_s.so.1 77d79000-77e10000 r-xp 00000000 00:02 272 /lib/libc.so 77e1f000-77e21000 rwxp 00096000 00:02 272 /lib/libc.so 77e21000-77e23000 rwxp 00000000 00:00 0 7fe23000-7fe44000 rw-p 00000000 00:00 0 [stack] 7ff63000-7ff64000 r--p 00000000 00:00 0 [vvar] 7ff64000-7ff65000 r-xp 00000000 00:00 0 [vdso] Acked-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: Rosen Penev <rosenp@gmail.com> Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* kernel: Enable CMOS RTC support on 5.4Kevin Darbyshire-Bryant2020-03-291-1/+1
| | | | | | | | | Enable kernel symbol CONFIG_RTC_DRV_CMOS which was enabled in 4.14 & 4.19 Fixes FS#2905 and now my APU2 picks up time from RTC Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* ramips: Deactivate NETGEAR WNCE2001 by defaultHauke Mehrtens2020-03-291-0/+1
| | | | | | | | | The root file system is getting too big for this device and this breaks the ramips/rt305x build. Do not build images for this board by default to fix this problem. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* treewide: Don't diverge from upstream default HZ settings on 4.19Daniel Engberg2020-03-296-12/+4
| | | | | | | | | | | Most targets upstream use 250Hz or even 1000Hz by default while 100Hz is hardcoded in OpenWrt's default config. Use upstream default except for apm821xx which hardsets 1000Hz instead of platform default of 250Hz. Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net> [Apply same changes to 5.4] Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kernel: generic: 5.4: fix mtd concat panic on read/write functionsMichal Cieslakiewicz2020-03-291-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 2431c4f5b46c32c4ac495456b1ef4ce59c0bb85d ("mtd: Implement mtd_{read,write}() as wrappers around mtd_{read,write}_oob()") for kernel 5.4 restrict mtd devices to register only one type of read/write functions (either generic or OOB). mtd concat does not follow above rule and defines both methods at the same time, causing this type of device to be rejected by kernel. For routers that use mtd concat for root UBI volume that means kernel panic and boot loop with following error: [ 0.767307] Creating 1 MTD partitions on "ubi-concat": [ 0.772547] 0x000000000000-0x000007500000 : "ubi" [ 0.777953] ------------[ cut here ]------------ [ 0.782683] WARNING: CPU: 0 PID: 1 at drivers/mtd/mtdcore.c:621 add_mtd_device+0x84/0x5f4 [ 0.790983] Modules linked in: [ 0.794093] CPU: 0 PID: 1 Comm: swapper Not tainted 5.4.24 #0 [ 0.799932] Stack : 80680000 8062af20 00000000 00000000 8062a0f0 87c2dae4 87c282fc 8065fd23 [ 0.808430] 805c64f4 00000001 807b32d8 80670000 80670000 00000001 87c2da98 25c15bcb [ 0.816909] 00000000 00000000 807e0000 0000006e 61696e74 00000000 2e342e32 34202330 [ 0.825397] 0000006e cef2ada7 00000000 000c1ded 00000000 00000009 00000000 8034de64 [ 0.833889] 00000009 80670000 80670000 80676d18 00000000 80320044 00000000 807b0000 [ 0.842381] ... [ 0.844861] Call Trace: [ 0.847367] [<80069994>] show_stack+0x30/0x100 [ 0.851913] [<8007e8ac>] __warn+0xc0/0x10c [ 0.856072] [<8007e954>] warn_slowpath_fmt+0x5c/0xac [ 0.861134] [<8034de64>] add_mtd_device+0x84/0x5f4 [ 0.866001] [<80352a50>] add_mtd_partitions+0xd8/0x1b8 [ 0.871231] [<803527b8>] parse_mtd_partitions+0x238/0x3f8 [ 0.876717] [<8034e51c>] mtd_device_parse_register+0x48/0x1b0 [ 0.882586] [<8038dd2c>] virt_concat_probe+0x170/0x1ec [ 0.887820] [<803334c8>] platform_drv_probe+0x40/0x94 [ 0.892970] [<80331638>] really_probe+0x104/0x35c [ 0.897766] [<80331d54>] device_driver_attach+0x70/0x98 [ 0.903072] [<80331ddc>] __driver_attach+0x60/0x100 [ 0.908042] [<8032f668>] bus_for_each_dev+0x68/0xa4 [ 0.912989] [<803309d4>] bus_add_driver+0x1f0/0x200 [ 0.917952] [<80332448>] driver_register+0x84/0x148 [ 0.922906] [<80060a1c>] do_one_initcall+0x7c/0x1dc [ 0.927870] [<80684e14>] kernel_init_freeable+0x158/0x23c [ 0.933361] [<805387d8>] kernel_init+0x10/0xf0 [ 0.937883] [<80064dd8>] ret_from_kernel_thread+0x14/0x1c [ 0.943375] ---[ end trace 62e0927fba490f68 ]--- [...] [ 2.266513] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 2.274893] Rebooting in 1 seconds.. This patch makes mtd concat to follow new mtd requirements by registering either normal or oob versions of read/write functions, but not both at the same time. OOB is used only when underlying mtd devices provide such functionality (like NAND chips) - otherwise generic methods are used. Tested successfully on Netgear WNDR4300. Signed-off-by: Michal Cieslakiewicz <michal.cieslakiewicz@wp.pl>