mtd: rawnand: brcmnand: exec_op patch broke < v5.0 controllers
Álvaro Fernández Rojas
noltari at gmail.com
Sun May 11 02:42:27 PDT 2025
Hi David,
I've just realized that your exec_op implementation patch broke
support of v2.1, v2.2 and v4.0 controllers.
https://github.com/torvalds/linux/commit/3c8260ce76634291aed877032a41e373884d69e4
https://patchwork.ozlabs.org/project/linux-mtd/patch/20231125012438.15191-4-dregan@broadcom.com/
I know it's an old patch from 6.8 but I just discovered this while
trying to add 6.12 support for bmips on OpenWrt (from 6.6):
https://github.com/openwrt/openwrt/pull/18746
The issue is that low level ops always return 0 on v4.0 controllers
and v2.1/v2.2 controllers don't even have the low level registers
defined:
https://github.com/torvalds/linux/blob/3ce9925823c7d6bb0e6eb951bf2db0e9e182582d/drivers/mtd/nand/raw/brcmnand/brcmnand.c#L357
https://github.com/torvalds/linux/blob/3ce9925823c7d6bb0e6eb951bf2db0e9e182582d/drivers/mtd/nand/raw/brcmnand/brcmnand.c#L371
I guess that restoring the legacy functions isn't going to happen, but
is it possible to restore < v5.0 compatibility on the new exec_op
implementation?
Best regards,
Álvaro.
More information about the linux-mtd
mailing list