mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

The idea behind this patch was to always let a "master" mtd device available to anchor runtime PM. Historically, there was no mtd device representing the whole storage as soon as partitions were coming into play. The introduction of CONFIG_MTD_PARTITIONED_MASTER allowed to keep this "master" device, but was not enabled by default to avoid breaking existing users (otherwise the mtd device numbering would be totally messed up with an off by 1, at least). The approach of adding an mtd_master class on top of partitioned mtd devices is breaking the mtd core in many creative ways, so better think again this approach and revert the faulty changes for now. This reverts commit0aa7b390fc
. Fixes:0aa7b390fc
("mtd: core: always create master device") Tested-by: Guenter Roeck <linux@roeck-us.net> Acked-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
30 lines
984 B
C
30 lines
984 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* These are exported solely for the purpose of mtd_blkdevs.c and mtdchar.c.
|
|
* You should not use them for _anything_ else.
|
|
*/
|
|
|
|
extern struct mutex mtd_table_mutex;
|
|
extern struct backing_dev_info *mtd_bdi;
|
|
|
|
struct mtd_info *__mtd_next_device(int i);
|
|
int __must_check add_mtd_device(struct mtd_info *mtd);
|
|
int del_mtd_device(struct mtd_info *mtd);
|
|
int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int);
|
|
int del_mtd_partitions(struct mtd_info *);
|
|
void release_mtd_partition(struct mtd_info *mtd);
|
|
|
|
struct mtd_partitions;
|
|
|
|
int parse_mtd_partitions(struct mtd_info *master, const char * const *types,
|
|
struct mtd_part_parser_data *data);
|
|
|
|
void mtd_part_parser_cleanup(struct mtd_partitions *parts);
|
|
|
|
int __init init_mtdchar(void);
|
|
void __exit cleanup_mtdchar(void);
|
|
|
|
#define mtd_for_each_device(mtd) \
|
|
for ((mtd) = __mtd_next_device(0); \
|
|
(mtd) != NULL; \
|
|
(mtd) = __mtd_next_device(mtd->index + 1))
|