diff options
Diffstat (limited to 'include/linux/mtd')
-rw-r--r-- | include/linux/mtd/mtd.h | 17 | ||||
-rw-r--r-- | include/linux/mtd/nand.h | 4 | ||||
-rw-r--r-- | include/linux/mtd/partitions.h | 16 | ||||
-rw-r--r-- | include/linux/mtd/physmap.h | 9 | ||||
-rw-r--r-- | include/linux/mtd/ubi.h | 4 |
5 files changed, 23 insertions, 27 deletions
diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index 9d5306bad117..2541fb848daa 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h | |||
@@ -322,9 +322,12 @@ static inline uint32_t mtd_mod_by_ws(uint64_t sz, struct mtd_info *mtd) | |||
322 | 322 | ||
323 | /* Kernel-side ioctl definitions */ | 323 | /* Kernel-side ioctl definitions */ |
324 | 324 | ||
325 | extern int add_mtd_device(struct mtd_info *mtd); | 325 | struct mtd_partition; |
326 | extern int del_mtd_device (struct mtd_info *mtd); | ||
327 | 326 | ||
327 | extern int mtd_device_register(struct mtd_info *master, | ||
328 | const struct mtd_partition *parts, | ||
329 | int nr_parts); | ||
330 | extern int mtd_device_unregister(struct mtd_info *master); | ||
328 | extern struct mtd_info *get_mtd_device(struct mtd_info *mtd, int num); | 331 | extern struct mtd_info *get_mtd_device(struct mtd_info *mtd, int num); |
329 | extern int __get_mtd_device(struct mtd_info *mtd); | 332 | extern int __get_mtd_device(struct mtd_info *mtd); |
330 | extern void __put_mtd_device(struct mtd_info *mtd); | 333 | extern void __put_mtd_device(struct mtd_info *mtd); |
@@ -348,15 +351,9 @@ int default_mtd_writev(struct mtd_info *mtd, const struct kvec *vecs, | |||
348 | int default_mtd_readv(struct mtd_info *mtd, struct kvec *vecs, | 351 | int default_mtd_readv(struct mtd_info *mtd, struct kvec *vecs, |
349 | unsigned long count, loff_t from, size_t *retlen); | 352 | unsigned long count, loff_t from, size_t *retlen); |
350 | 353 | ||
351 | #ifdef CONFIG_MTD_PARTITIONS | 354 | void *mtd_kmalloc_up_to(const struct mtd_info *mtd, size_t *size); |
355 | |||
352 | void mtd_erase_callback(struct erase_info *instr); | 356 | void mtd_erase_callback(struct erase_info *instr); |
353 | #else | ||
354 | static inline void mtd_erase_callback(struct erase_info *instr) | ||
355 | { | ||
356 | if (instr->callback) | ||
357 | instr->callback(instr); | ||
358 | } | ||
359 | #endif | ||
360 | 357 | ||
361 | /* | 358 | /* |
362 | * Debugging macro and defines | 359 | * Debugging macro and defines |
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h index d44192740f6f..c2b9ac4fbc4a 100644 --- a/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h | |||
@@ -237,9 +237,9 @@ typedef enum { | |||
237 | * If passed additionally to NAND_USE_FLASH_BBT then BBT code will not touch | 237 | * If passed additionally to NAND_USE_FLASH_BBT then BBT code will not touch |
238 | * the OOB area. | 238 | * the OOB area. |
239 | */ | 239 | */ |
240 | #define NAND_USE_FLASH_BBT_NO_OOB 0x00100000 | 240 | #define NAND_USE_FLASH_BBT_NO_OOB 0x00800000 |
241 | /* Create an empty BBT with no vendor information if the BBT is available */ | 241 | /* Create an empty BBT with no vendor information if the BBT is available */ |
242 | #define NAND_CREATE_EMPTY_BBT 0x00200000 | 242 | #define NAND_CREATE_EMPTY_BBT 0x01000000 |
243 | 243 | ||
244 | /* Options set by nand scan */ | 244 | /* Options set by nand scan */ |
245 | /* Nand scan has allocated controller struct */ | 245 | /* Nand scan has allocated controller struct */ |
diff --git a/include/linux/mtd/partitions.h b/include/linux/mtd/partitions.h index 4a0a8ba90a72..3a6f0372fc96 100644 --- a/include/linux/mtd/partitions.h +++ b/include/linux/mtd/partitions.h | |||
@@ -16,7 +16,7 @@ | |||
16 | * Partition definition structure: | 16 | * Partition definition structure: |
17 | * | 17 | * |
18 | * An array of struct partition is passed along with a MTD object to | 18 | * An array of struct partition is passed along with a MTD object to |
19 | * add_mtd_partitions() to create them. | 19 | * mtd_device_register() to create them. |
20 | * | 20 | * |
21 | * For each partition, these fields are available: | 21 | * For each partition, these fields are available: |
22 | * name: string that will be used to label the partition's MTD device. | 22 | * name: string that will be used to label the partition's MTD device. |
@@ -49,9 +49,6 @@ struct mtd_partition { | |||
49 | 49 | ||
50 | struct mtd_info; | 50 | struct mtd_info; |
51 | 51 | ||
52 | int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int); | ||
53 | int del_mtd_partitions(struct mtd_info *); | ||
54 | |||
55 | /* | 52 | /* |
56 | * Functions dealing with the various ways of partitioning the space | 53 | * Functions dealing with the various ways of partitioning the space |
57 | */ | 54 | */ |
@@ -73,14 +70,17 @@ extern int parse_mtd_partitions(struct mtd_info *master, const char **types, | |||
73 | struct device; | 70 | struct device; |
74 | struct device_node; | 71 | struct device_node; |
75 | 72 | ||
73 | #ifdef CONFIG_MTD_OF_PARTS | ||
76 | int __devinit of_mtd_parse_partitions(struct device *dev, | 74 | int __devinit of_mtd_parse_partitions(struct device *dev, |
77 | struct device_node *node, | 75 | struct device_node *node, |
78 | struct mtd_partition **pparts); | 76 | struct mtd_partition **pparts); |
79 | |||
80 | #ifdef CONFIG_MTD_PARTITIONS | ||
81 | static inline int mtd_has_partitions(void) { return 1; } | ||
82 | #else | 77 | #else |
83 | static inline int mtd_has_partitions(void) { return 0; } | 78 | static inline int of_mtd_parse_partitions(struct device *dev, |
79 | struct device_node *node, | ||
80 | struct mtd_partition **pparts) | ||
81 | { | ||
82 | return 0; | ||
83 | } | ||
84 | #endif | 84 | #endif |
85 | 85 | ||
86 | #ifdef CONFIG_MTD_CMDLINE_PARTS | 86 | #ifdef CONFIG_MTD_CMDLINE_PARTS |
diff --git a/include/linux/mtd/physmap.h b/include/linux/mtd/physmap.h index bcfd9f777454..e5f21d293c70 100644 --- a/include/linux/mtd/physmap.h +++ b/include/linux/mtd/physmap.h | |||
@@ -19,10 +19,13 @@ | |||
19 | #include <linux/mtd/partitions.h> | 19 | #include <linux/mtd/partitions.h> |
20 | 20 | ||
21 | struct map_info; | 21 | struct map_info; |
22 | struct platform_device; | ||
22 | 23 | ||
23 | struct physmap_flash_data { | 24 | struct physmap_flash_data { |
24 | unsigned int width; | 25 | unsigned int width; |
25 | void (*set_vpp)(struct map_info *, int); | 26 | int (*init)(struct platform_device *); |
27 | void (*exit)(struct platform_device *); | ||
28 | void (*set_vpp)(struct platform_device *, int); | ||
26 | unsigned int nr_parts; | 29 | unsigned int nr_parts; |
27 | unsigned int pfow_base; | 30 | unsigned int pfow_base; |
28 | char *probe_type; | 31 | char *probe_type; |
@@ -35,8 +38,6 @@ struct physmap_flash_data { | |||
35 | void physmap_configure(unsigned long addr, unsigned long size, | 38 | void physmap_configure(unsigned long addr, unsigned long size, |
36 | int bankwidth, void (*set_vpp)(struct map_info *, int) ); | 39 | int bankwidth, void (*set_vpp)(struct map_info *, int) ); |
37 | 40 | ||
38 | #ifdef CONFIG_MTD_PARTITIONS | ||
39 | |||
40 | /* | 41 | /* |
41 | * Machines that wish to do flash partition may want to call this function in | 42 | * Machines that wish to do flash partition may want to call this function in |
42 | * their setup routine. | 43 | * their setup routine. |
@@ -48,6 +49,4 @@ void physmap_configure(unsigned long addr, unsigned long size, | |||
48 | */ | 49 | */ |
49 | void physmap_set_partitions(struct mtd_partition *parts, int num_parts); | 50 | void physmap_set_partitions(struct mtd_partition *parts, int num_parts); |
50 | 51 | ||
51 | #endif /* defined(CONFIG_MTD_PARTITIONS) */ | ||
52 | |||
53 | #endif /* __LINUX_MTD_PHYSMAP__ */ | 52 | #endif /* __LINUX_MTD_PHYSMAP__ */ |
diff --git a/include/linux/mtd/ubi.h b/include/linux/mtd/ubi.h index 84854edf4436..15da0e99f48a 100644 --- a/include/linux/mtd/ubi.h +++ b/include/linux/mtd/ubi.h | |||
@@ -21,7 +21,7 @@ | |||
21 | #ifndef __LINUX_UBI_H__ | 21 | #ifndef __LINUX_UBI_H__ |
22 | #define __LINUX_UBI_H__ | 22 | #define __LINUX_UBI_H__ |
23 | 23 | ||
24 | #include <asm/ioctl.h> | 24 | #include <linux/ioctl.h> |
25 | #include <linux/types.h> | 25 | #include <linux/types.h> |
26 | #include <mtd/ubi-user.h> | 26 | #include <mtd/ubi-user.h> |
27 | 27 | ||
@@ -87,7 +87,7 @@ enum { | |||
87 | * physical eraseblock size and on how much bytes UBI headers consume. But | 87 | * physical eraseblock size and on how much bytes UBI headers consume. But |
88 | * because of the volume alignment (@alignment), the usable size of logical | 88 | * because of the volume alignment (@alignment), the usable size of logical |
89 | * eraseblocks if a volume may be less. The following equation is true: | 89 | * eraseblocks if a volume may be less. The following equation is true: |
90 | * @usable_leb_size = LEB size - (LEB size mod @alignment), | 90 | * @usable_leb_size = LEB size - (LEB size mod @alignment), |
91 | * where LEB size is the logical eraseblock size defined by the UBI device. | 91 | * where LEB size is the logical eraseblock size defined by the UBI device. |
92 | * | 92 | * |
93 | * The alignment is multiple to the minimal flash input/output unit size or %1 | 93 | * The alignment is multiple to the minimal flash input/output unit size or %1 |