From c7120182addb4b4957b7a750c3adb76e7c6d24da Mon Sep 17 00:00:00 2001 From: juhosg Date: Tue, 20 Nov 2012 16:29:42 +0000 Subject: ar71xx: make ar934x_nfc driver compatible with 3.7 Also add compatibility patches for the currently supported kernels. Signed-off-by: Gabor Juhos git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34278 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../a05-ar934x_nfc-add-buffer-verification.patch | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 target/linux/ar71xx/patches-3.3/a05-ar934x_nfc-add-buffer-verification.patch (limited to 'target/linux/ar71xx/patches-3.3/a05-ar934x_nfc-add-buffer-verification.patch') diff --git a/target/linux/ar71xx/patches-3.3/a05-ar934x_nfc-add-buffer-verification.patch b/target/linux/ar71xx/patches-3.3/a05-ar934x_nfc-add-buffer-verification.patch new file mode 100644 index 000000000..c4c462804 --- /dev/null +++ b/target/linux/ar71xx/patches-3.3/a05-ar934x_nfc-add-buffer-verification.patch @@ -0,0 +1,29 @@ +--- a/drivers/mtd/nand/ar934x_nfc.c ++++ b/drivers/mtd/nand/ar934x_nfc.c +@@ -762,6 +762,18 @@ ar934x_nfc_read_buf(struct mtd_info *mtd + nfc->buf_index = buf_index; + } + ++static int ++ar934x_nfc_verify_buf(struct mtd_info *mtd, const u_char *buf, int len) ++{ ++ int i; ++ ++ for (i = 0; i < len; i++) ++ if (buf[i] != ar934x_nfc_read_byte(mtd)) ++ return -EFAULT; ++ ++ return 0; ++} ++ + static void + ar934x_nfc_hw_init(struct ar934x_nfc *nfc) + { +@@ -1048,6 +1060,7 @@ ar934x_nfc_probe(struct platform_device + nand->read_byte = ar934x_nfc_read_byte; + nand->write_buf = ar934x_nfc_write_buf; + nand->read_buf = ar934x_nfc_read_buf; ++ nand->verify_buf = ar934x_nfc_verify_buf; + nand->select_chip = ar934x_nfc_select_chip; + + ret = ar934x_nfc_alloc_buf(nfc, AR934X_NFC_ID_BUF_SIZE); -- cgit v1.2.3