Sharp Zaurus SL-C3200 with CONFIG_MTD=m and CONFIG_MTD_SHARP_SL=y (as it
is bool) lost support for the ROM flash. With CONFIG_MTD=y it has no
problems.
It is caused by losing of compiled code of
drivers/mtd/maps/sharpsl-flash.o.
It was linked to drivers/mtd/maps/built-in.o and drivers/mtd/built-in.o,
but lost and not linked to drivers/built-in.o (because CONFIG_MTD!=y).
Patch below fixes this problem by creating sharpsl-flash.ko (and the
code works correctly as a module).
This is second try (first sent Nov 10 to [email protected]).
Signed-off-by: Stanislav Brabec <[email protected]>
Index: linux-2.6.23/drivers/mtd/maps/Kconfig
===================================================================
--- linux-2.6.23/drivers/mtd/maps/Kconfig
+++ linux-2.6.23/drivers/mtd/maps/Kconfig
@@ -600,7 +600,7 @@
default "4"
config MTD_SHARP_SL
- bool "ROM mapped on Sharp SL Series"
+ tristate "ROM mapped on Sharp SL Series"
depends on ARCH_PXA
help
This enables access to the flash chip on the Sharp SL Series of PDAs.
Command to ensure, that CONFIG_MTD_SHARP_SL is the only problematic part
of MTD.
for i in $(find -name Makefile | xargs grep CONFIG_MTD_ | sed 's/.*obj-\$(\([^)]*\).*/\1/') ; do grep -A1 -w "config ${i#CONFIG_}" $(find -name Kconfig) ; done | grep -B1 bool
________________________________________________________________________
Stanislav Brabec
http://www.penguin.cz/~utx