Building OpenWRT for u-boot upgrade
Normally /dev/mtdblock0 and /dev/mtdblock1 devices are set to be read only as they contain sensitive u-boot boot loader and u-boot environment. In case you want to replace u-boot boot loader and/or u-boot environment from OpenWRT /dev/mtdblock0 and /dev/mtdblock1 devices must be accessible for writing.
To remove write protection you will need to build a new OpenWRT image you'll need to modify file:
target/linux/ar71xx/image/Makefile
Open it with the editor and find the line:
carambola2_mtdlayout_16M=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,2048k(kernel),13952k(rootfs),64k(art)ro,16000k@0x50000(firmware)
and replace it with the line:
carambola2_mtdlayout_16M=mtdparts=spi0.0:256k(u-boot),64k(u-boot-env),2048k(kernel),13952k(rootfs),64k(art)ro,16000k@0x50000(firmware)
Now run make (or make -j 4 to speedup things ) in your OpenWRT directory.