blob: 4ca69fe2c850c0a995574ffe250444d8062d8d95 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
Russell King4baa9922008-08-02 10:55:55 +01002 * arch/arm/include/asm/mach/flash.h
Linus Torvalds1da177e2005-04-16 15:20:36 -07003 *
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
13struct mtd_partition;
Kyungmin Park861e37a2005-11-09 15:15:10 +000014struct mtd_info;
Linus Torvalds1da177e2005-04-16 15:20:36 -070015
16/*
17 * map_name: the map probe function name
Russell King14e66f72005-10-29 16:08:31 +010018 * name: flash device name (eg, as used with mtdparts=)
Linus Torvalds1da177e2005-04-16 15:20:36 -070019 * 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
Kyungmin Park861e37a2005-11-09 15:15:10 +000023 * mmcontrol: method called to enable or disable Sync. Burst Read in OneNAND
Linus Torvalds1da177e2005-04-16 15:20:36 -070024 * parts: optional array of mtd_partitions for static partitioning
25 * nr_parts: number of mtd_partitions for static partitoning
26 */
27struct flash_platform_data {
28 const char *map_name;
Russell King14e66f72005-10-29 16:08:31 +010029 const char *name;
Linus Torvalds1da177e2005-04-16 15:20:36 -070030 unsigned int width;
31 int (*init)(void);
32 void (*exit)(void);
33 void (*set_vpp)(int on);
Kyungmin Park861e37a2005-11-09 15:15:10 +000034 void (*mmcontrol)(struct mtd_info *mtd, int sync_read);
Linus Torvalds1da177e2005-04-16 15:20:36 -070035 struct mtd_partition *parts;
36 unsigned int nr_parts;
37};
38
39#endif