Western Digital My Cloud Mirror (Ex) MTD devices not detected on newer kernels.

info at smetnet.be info at smetnet.be
Wed Jan 5 07:27:41 PST 2022


Hi,
I'd like to upgrade the kernel of my Western Digital My Cloud Mirror 
(same as My Cloud Ex, Armada-370 SoC). My /dev/mtd* devices are not 
showing on any kernel 4.16.1 or newer.

I noticed someone else had a very similar if not the same issue: 
https://yhbt.net/lore/all/CAK+FTGhwM02y_eg6cE=GNcOH8G8eQjia0PD+JVrR=eSedQxWAA@mail.gmail.com/ 
. Unfortunately I don't know how to hook in to this conversation and if 
I should or not.

As far as my understanding goes, at some point in time (4.16.1) 
CONFIG_MTD_NAND_PXA3xx was dropped in favor of CONFIG_MTD_NAND_MARVELL . 
But for some reason it does not work on my board. I use the same DTS 
file for both builds btw.


Basically, if I compile a 4.14.260 kernel with at least this set:

CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_PXA3xx=y

I get:

wannes at mcm:~$ cat /proc/mtd
dev:    size   erasesize  name
mtd0: 10000000 00020000 "pxa3xx_nand-0"
mtd1: 00500000 00020000 "u-Boot"
mtd2: 00500000 00020000 "uImage"
mtd3: 00500000 00020000 "ramdisk"
mtd4: 0c900000 00020000 "image.cfs"
mtd5: 00f00000 00020000 "rescue firmware"
mtd6: 01400000 00020000 "config"
mtd7: 00500000 00020000 "reserve"
wannes at mcm:~$ uname -r
4.14.260
wannes at mcm:~$

When I compile a newer kernel (5.16.rc8 for this example), I changed the 
config to this:

wannes at mcm:~/src/linux-stable$ grep NAND .config | grep -v not\ set
CONFIG_MTD_NAND_CORE=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_NAND_ORION=y
CONFIG_MTD_NAND_MARVELL=y
CONFIG_MTD_NAND_BRCMNAND=y
CONFIG_MTD_NAND_PLATFORM=y
CONFIG_MTD_NAND_ECC=y
CONFIG_MTD_NAND_ECC_SW_HAMMING=y
CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC=y
CONFIG_MTD_NAND_ECC_SW_BCH=y

wannes at mcm:~/src/linux-stable$ cat /proc/mtd
dev:    size   erasesize  name
wannes at mcm:~/src/linux-stable$ dmesg | grep mtd
mtdoops: mtd device (mtddev=name/number) must be supplied
wannes at mcm:~/src/linux-stable$



More information about the linux-mtd mailing list