#endif
/**
- * struct mtd_info - information about an MTD device.
+ * struct mtd_dev_info - information about an MTD device.
* @num: MTD device number
* @major: major number of corresponding character device
* @minor: minor number of corresponding character device
* @rdonly: non-zero if the device is read-only
* @allows_bb: non-zero if the MTD device may have bad eraseblocks
*/
-struct mtd_info
+struct mtd_dev_info
{
int num;
int major;
* node file and saves this information in the @mtd object. Returns %0 in case
* of success and %-1 in case of failure.
*/
-int mtd_get_dev_info(const char *node, struct mtd_info *mtd);
+int mtd_get_dev_info(const char *node, struct mtd_dev_info *mtd);
/**
* mtd_erase - erase an eraseblock.
* This function erases eraseblock @eb of MTD device decribed by @fd. Returns
* %0 in case of success and %-1 in case of failure.
*/
-int mtd_erase(const struct mtd_info *mtd, int fd, int eb);
+int mtd_erase(const struct mtd_dev_info *mtd, int fd, int eb);
/**
* mtd_is_bad - check if eraseblock is bad.
* This function checks if eraseblock @eb is bad. Returns %0 if not, %1 if yes,
* and %-1 in case of failure.
*/
-int mtd_is_bad(const struct mtd_info *mtd, int fd, int eb);
+int mtd_is_bad(const struct mtd_dev_info *mtd, int fd, int eb);
/**
* mtd_mark_bad - marks the block as bad.
* This function marks the eraseblock @eb as bad. Returns %0 if success
* %-1 if failure
*/
-int mtd_mark_bad(const struct mtd_info *mtd, int fd, int eb);
+int mtd_mark_bad(const struct mtd_dev_info *mtd, int fd, int eb);
/**
* mtd_read - read data from an MTD device.
* of the MTD device defined by @mtd and stores the read data at buffer @buf.
* Returns %0 in case of success and %-1 in case of failure.
*/
-int mtd_read(const struct mtd_info *mtd, int fd, int eb, int offs, void *buf,
- int len);
+int mtd_read(const struct mtd_dev_info *mtd, int fd, int eb, int offs,
+ void *buf, int len);
/**
* mtd_write - write data to an MTD device.
* of the MTD device defined by @mtd. Returns %0 in case of success and %-1 in
* case of failure.
*/
-int mtd_write(const struct mtd_info *mtd, int fd, int eb, int offs, void *buf,
- int len);
+int mtd_write(const struct mtd_dev_info *mtd, int fd, int eb, int offs,
+ void *buf, int len);
#ifdef __cplusplus
}
int data_offs;
};
-struct mtd_info;
+struct mtd_dev_info;
/**
* ubi_scan - scan an MTD device.
* @verbose: verbose mode: %0 - be silent, %1 - output progress information,
* 2 - debugging output mode
*/
-int ubi_scan(struct mtd_info *mtd, int fd, struct ubi_scan_info **info,
+int ubi_scan(struct mtd_dev_info *mtd, int fd, struct ubi_scan_info **info,
int verbose);
/**
#define PROGRAM_NAME "libmtd"
#define MTD_DEV_MAJOR 90
-int mtd_get_dev_info(const char *node, struct mtd_info *mtd)
+int mtd_get_dev_info(const char *node, struct mtd_dev_info *mtd)
{
struct stat st;
struct mtd_info_user ui;
return -1;
}
-int mtd_erase(const struct mtd_info *mtd, int fd, int eb)
+int mtd_erase(const struct mtd_dev_info *mtd, int fd, int eb)
{
struct erase_info_user ei;
return ioctl(fd, MEMERASE, &ei);
}
-int mtd_is_bad(const struct mtd_info *mtd, int fd, int eb)
+int mtd_is_bad(const struct mtd_dev_info *mtd, int fd, int eb)
{
int ret;
loff_t seek;
return ret;
}
-int mtd_mark_bad(const struct mtd_info *mtd, int fd, int eb)
+int mtd_mark_bad(const struct mtd_dev_info *mtd, int fd, int eb)
{
int ret;
loff_t seek;
return 0;
}
-int mtd_read(const struct mtd_info *mtd, int fd, int eb, int offs, void *buf,
- int len)
+int mtd_read(const struct mtd_dev_info *mtd, int fd, int eb, int offs,
+ void *buf, int len)
{
int ret, rd = 0;
off_t seek;
return 0;
}
-int mtd_write(const struct mtd_info *mtd, int fd, int eb, int offs, void *buf,
- int len)
+int mtd_write(const struct mtd_dev_info *mtd, int fd, int eb, int offs,
+ void *buf, int len)
{
int ret;
off_t seek;
return 1;
}
-int ubi_scan(struct mtd_info *mtd, int fd, struct ubi_scan_info **info, int verbose)
+int ubi_scan(struct mtd_dev_info *mtd, int fd, struct ubi_scan_info **info,
+ int verbose)
{
int eb, v = (verbose == 2), pr = (verbose == 1);
struct ubi_scan_info *si;
}
}
-static void print_bad_eraseblocks(const struct mtd_info *mtd,
+static void print_bad_eraseblocks(const struct mtd_dev_info *mtd,
const struct ubi_scan_info *si)
{
int first = 1, eb;
return 0;
}
-static int drop_ffs(const struct mtd_info *mtd, const void *buf, int len)
+static int drop_ffs(const struct mtd_dev_info *mtd, const void *buf, int len)
{
int i;
return 0;
}
-static int mark_bad(const struct mtd_info *mtd, struct ubi_scan_info *si, int eb)
+static int mark_bad(const struct mtd_dev_info *mtd, struct ubi_scan_info *si, int eb)
{
int err;
return consecutive_bad_check(eb);
}
-static int flash_image(const struct mtd_info *mtd, struct ubi_scan_info *si)
+static int flash_image(const struct mtd_dev_info *mtd, struct ubi_scan_info *si)
{
int fd, img_ebs, eb, written_ebs = 0, divisor;
off_t st_size;
return -1;
}
-static int format(const struct mtd_info *mtd, const struct ubigen_info *ui,
+static int format(const struct mtd_dev_info *mtd, const struct ubigen_info *ui,
struct ubi_scan_info *si, int start_eb, int novtbl)
{
int eb, err, write_size;
int main(int argc, char * const argv[])
{
int err, verbose;
- struct mtd_info mtd;
+ struct mtd_dev_info mtd;
libubi_t libubi;
struct ubigen_info ui;
struct ubi_scan_info *si;