xref: /openbmc/linux/arch/arm/include/asm/mach/flash.h (revision 9cfc5c90)
1 /*
2  *  arch/arm/include/asm/mach/flash.h
3  *
4  *  Copyright (C) 2003 Russell King, All Rights Reserved.
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10 #ifndef ASMARM_MACH_FLASH_H
11 #define ASMARM_MACH_FLASH_H
12 
13 struct mtd_partition;
14 struct mtd_info;
15 
16 /*
17  * map_name:	the map probe function name
18  * name:	flash device name (eg, as used with mtdparts=)
19  * width:	width of mapped device
20  * init:	method called at driver/device initialisation
21  * exit:	method called at driver/device removal
22  * set_vpp:	method called to enable or disable VPP
23  * mmcontrol:	method called to enable or disable Sync. Burst Read in OneNAND
24  * parts:	optional array of mtd_partitions for static partitioning
25  * nr_parts:	number of mtd_partitions for static partitoning
26  */
27 struct flash_platform_data {
28 	const char	*map_name;
29 	const char	*name;
30 	unsigned int	width;
31 	int		(*init)(void);
32 	void		(*exit)(void);
33 	void		(*set_vpp)(int on);
34 	void		(*mmcontrol)(struct mtd_info *mtd, int sync_read);
35 	struct mtd_partition *parts;
36 	unsigned int	nr_parts;
37 };
38 
39 #endif
40