jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found. is25lp256d

Frank Smith smith-f at gmx.de
Thu Mar 15 07:13:07 PDT 2018


Dear list,

I am trying to get a new issi flash device (is25lp256d, 32MB) working. 
http://www.issi.com/WW/pdf/IS25LP(WP)256D.pdf

Therefore I added this line to spi-nor.c:

{ "is25lp256d", INFO(0x9d6019, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_HAS_LOCK) },

I can confirm the flash device works as espected for the first 16MB.


But, when I change the partition in the device tree, from 16MB to 32MB I get the following errror: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found. 

Changed "reg = <0x600000 0xa00000>;" to "reg = <0x600000 0x1a00000>;" in my device-tree file as follows:

spi_2: spi at 0x31044000 {
	#address-cells = <1>;
	#size-cells = <0>;
	compatible = "adi,spi3";
	reg = <0x31044000 0xFF>;
	interrupts = <0 71 0>;
	num-cs = <128>;
	dma-channel = <26>, <27>;
	pinctrl-names = "default";
	pinctrl-0 = <&spi2_quad>;

	flash: s25fl128s at 0 {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "issi,is25lp256d", "jedec,spi-nor";
		spi-max-frequency = <50000000>;
		reg = <31>;
		spi-cpol;
		spi-cpha;
		spi-tx-bus-width = <4>;
		spi-rx-bus-width = <4>;
		dma-mode;
		partition at 0 {
			label = "uboot (spi)";
			reg = <0x0 0x80000>;
		};
		partition at 1 {
			label = "kernel (spi)";
			reg = <0x80000 0x580000>;
		};
		partition at 2 {
			label = "root file system (spi)";
			reg = <0x600000 0x1a00000>;   /* <--- changed this from 0x0a00000 to 0x1a00000 */
		};
	};
};

Tried to use mtd-tools, but when writing at address 0xaXXXXX or higher, linux starts hanging, without a Ops.

Any Ideas? What is wrong with the higher addresses?



More information about the linux-mtd mailing list