Ben Dooks | 356d70f | 2007-05-28 20:28:34 +0100 | [diff] [blame] | 1 | /* linux/drivers/mtd/mtdcore.h |
| 2 | * |
| 3 | * Header file for driver private mtdcore exports |
| 4 | * |
| 5 | */ |
| 6 | |
| 7 | /* These are exported solely for the purpose of mtd_blkdevs.c. You |
| 8 | should not use them for _anything_ else */ |
| 9 | |
| 10 | extern struct mutex mtd_table_mutex; |
| 11 | extern struct mtd_info *mtd_table[MAX_MTD_DEVICES]; |
Ben Hutchings | f1332ba | 2010-01-29 20:57:11 +0000 | [diff] [blame^] | 12 | |
| 13 | static inline struct mtd_info *__mtd_next_device(int i) |
| 14 | { |
| 15 | while (i < MAX_MTD_DEVICES) { |
| 16 | if (mtd_table[i]) |
| 17 | return mtd_table[i]; |
| 18 | i++; |
| 19 | } |
| 20 | return NULL; |
| 21 | } |
| 22 | |
| 23 | #define mtd_for_each_device(mtd) \ |
| 24 | for ((mtd) = __mtd_next_device(0); \ |
| 25 | (mtd) != NULL; \ |
| 26 | (mtd) = __mtd_next_device(mtd->index + 1)) |