diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2014-02-23 21:15:56 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2014-02-23 21:15:56 +0000 |
commit | 6d530eef5db262b1bb602af3392954c813d36cb4 (patch) | |
tree | 83ca031435692b5bbda6c4a6351add116556c3b6 /target/linux/x86 | |
parent | 5b388e571629afea236d3b70fdfeebc28c0da6dd (diff) | |
download | mtk-20170518-6d530eef5db262b1bb602af3392954c813d36cb4.zip mtk-20170518-6d530eef5db262b1bb602af3392954c813d36cb4.tar.gz mtk-20170518-6d530eef5db262b1bb602af3392954c813d36cb4.tar.bz2 |
x86: fix MTD API usage in the RDC specific board patch
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39734
Diffstat (limited to 'target/linux/x86')
-rw-r--r-- | target/linux/x86/patches-3.10/100-rdc_boards.patch | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/target/linux/x86/patches-3.10/100-rdc_boards.patch b/target/linux/x86/patches-3.10/100-rdc_boards.patch index 6b8fe6c..3712cb8 100644 --- a/target/linux/x86/patches-3.10/100-rdc_boards.patch +++ b/target/linux/x86/patches-3.10/100-rdc_boards.patch @@ -138,7 +138,7 @@ +late_initcall(rdc_board_setup); --- /dev/null +++ b/arch/x86/mach-rdc321x/boards/ar525w.c -@@ -0,0 +1,247 @@ +@@ -0,0 +1,251 @@ +/* + * ar525w RDC321x platform devices + * @@ -294,7 +294,7 @@ + return -ENOMEM; + } + -+ res = master->read(master, 0x0, bufferlength, &len, buffer); ++ res = mtd_read(master, 0x0, bufferlength, &len, buffer); + if (res || len != bufferlength) + goto out; + @@ -310,8 +310,12 @@ + header->fastcksum = crc32(crcbuf, sizeof(crcbuf)); + header->checksum = crc32(buffer, bufferlength); + -+ if (master->unlock) -+ master->unlock(master, 0, master->erasesize); ++ res = mtd_unlock(master, 0, master->erasesize); ++ if (res != 0 && res != -EOPNOTSUPP) { ++ printk(KERN_ERR "Can't unlock image header\n"); ++ goto out; ++ } ++ + res = erase_write (master, 0, master->erasesize, buffer); + if (res) + printk(KERN_ERR "Can't rewrite image header\n"); @@ -334,7 +338,7 @@ + if (master->size != 0x400000) //4MB + return -ENOSYS; + -+ res = master->read(master, 0x0, sizeof(header), &len, (char *)&header); ++ res = mtd_read(master, 0x0, sizeof(header), &len, (char *)&header); + if (res) + return res; + @@ -430,7 +434,7 @@ + u32 kernel_len; + u16 tmp; + -+ res = master->read(master, 0x4000 + 1036, 2, &len, (char *) &tmp); ++ res = mtd_read(master, 0x4000 + 1036, 2, &len, (char *) &tmp); + if (res) + return res; + kernel_len = tmp * master->erasesize; @@ -606,7 +610,7 @@ + if (master->size != 0x400000) /* 4MB */ + return -ENOSYS; + -+ res = master->read(master, 0x8000, sizeof(header), &len, (char *)&header); ++ res = mtd_read(master, 0x8000, sizeof(header), &len, (char *)&header); + if (res) + return res; + |