projects
/
yaffs2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Give a name to the nandemul2k MTD device.
[yaffs2.git]
/
mtdemul
/
nandemul2k.c
diff --git
a/mtdemul/nandemul2k.c
b/mtdemul/nandemul2k.c
index 2980f9adcb791521e6798de634f5210b9e2a729f..f3c1c9a853c2377f4e5476d4c493ed4fe0cc1e40 100644
(file)
--- a/
mtdemul/nandemul2k.c
+++ b/
mtdemul/nandemul2k.c
@@
-27,14
+27,16
@@
#include <linux/mtd/mtd.h>
#include <linux/interrupt.h>
#include <linux/string.h>
#include <linux/mtd/mtd.h>
#include <linux/interrupt.h>
#include <linux/string.h>
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0))
#include <linux/locks.h>
#include <linux/locks.h>
+#endif
#include <asm/uaccess.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
#include <linux/mtd/nand.h>
#include <asm/uaccess.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
#include <linux/mtd/nand.h>
+#include "../yaffs_nandemul2k.h"
-#define T(f,x) printk x
#define ALLOCATE(x) kmalloc(x,GFP_KERNEL)
#define FREE(x) kfree(x)
#define ALLOCATE(x) kmalloc(x,GFP_KERNEL)
#define FREE(x) kfree(x)
@@
-284,11
+286,16
@@
static int nand_write (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf);
static int nand_write_ecc (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf,
size_t *retlen, const u_char *buf);
static int nand_write_ecc (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf,
-
const
u_char *oob_buf, struct nand_oobinfo *dummy);
+ u_char *oob_buf, struct nand_oobinfo *dummy);
static int nand_write_oob (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf);
static int nand_write_oob (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf);
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,7))
+static int nand_writev (struct mtd_info *mtd, const struct kvec *vecs,
+ unsigned long count, loff_t to, size_t *retlen);
+#else
static int nand_writev (struct mtd_info *mtd, const struct iovec *vecs,
unsigned long count, loff_t to, size_t *retlen);
static int nand_writev (struct mtd_info *mtd, const struct iovec *vecs,
unsigned long count, loff_t to, size_t *retlen);
+#endif
static int nand_erase (struct mtd_info *mtd, struct erase_info *instr);
static void nand_sync (struct mtd_info *mtd);
static int nand_erase (struct mtd_info *mtd, struct erase_info *instr);
static void nand_sync (struct mtd_info *mtd);
@@
-411,7
+418,7
@@
static int nand_write (struct mtd_info *mtd, loff_t to, size_t len,
*/
static int nand_write_ecc (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf,
*/
static int nand_write_ecc (struct mtd_info *mtd, loff_t to, size_t len,
size_t *retlen, const u_char *buf,
-
const
u_char *oob_buf, struct nand_oobinfo *dummy)
+ u_char *oob_buf, struct nand_oobinfo *dummy)
{
int start, page;
{
int start, page;
@@
-507,8
+514,13
@@
static int nand_write_oob (struct mtd_info *mtd, loff_t to, size_t len,
/*
* NAND write with iovec
*/
/*
* NAND write with iovec
*/
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,7))
+static int nand_writev (struct mtd_info *mtd, const struct kvec *vecs,
+ unsigned long count, loff_t to, size_t *retlen)
+#else
static int nand_writev (struct mtd_info *mtd, const struct iovec *vecs,
unsigned long count, loff_t to, size_t *retlen)
static int nand_writev (struct mtd_info *mtd, const struct iovec *vecs,
unsigned long count, loff_t to, size_t *retlen)
+#endif
{
return -EINVAL;
}
{
return -EINVAL;
}
@@
-562,12
+574,12
@@
static int nand_erase (struct mtd_info *mtd, struct erase_info *instr)
}
}
-
int nand_block_isbad(struct mtd_info *mtd,int blockNo
)
+
static int nand_block_isbad(struct mtd_info *mtd, loff_t ofs
)
{
return 0;
}
{
return 0;
}
-
int nand_block_markbad(struct mtd_info *mtd, int blockNo
)
+
static int nand_block_markbad(struct mtd_info *mtd, loff_t ofs
)
{
return 0;
}
{
return 0;
}
@@
-585,7
+597,7
@@
static void nand_sync (struct mtd_info *mtd)
/*
* Scan for the NAND device
*/
/*
* Scan for the NAND device
*/
-
int nand
_scan (struct mtd_info *mtd,int nchips)
+
static int nandemul2k
_scan (struct mtd_info *mtd,int nchips)
{
mtd->oobblock = PAGE_DATA_SIZE;
mtd->oobsize = PAGE_SPARE_SIZE;
{
mtd->oobblock = PAGE_DATA_SIZE;
mtd->oobsize = PAGE_SPARE_SIZE;
@@
-618,6
+630,8
@@
int nand_scan (struct mtd_info *mtd,int nchips)
mtd->suspend = NULL;
mtd->resume = NULL;
mtd->suspend = NULL;
mtd->resume = NULL;
+ mtd->name = "NANDemul2k";
+
/* Return happy */
return 0;
}
/* Return happy */
return 0;
}
@@
-653,7
+667,7
@@
int __init nandemul2k_init (void)
CheckInit();
CheckInit();
- nand_scan(&nandemul2k_mtd,1);
+ nand
emul2k
_scan(&nandemul2k_mtd,1);
// Build the partition table
// Build the partition table