24cd147af82b8bb94e561a4a79ebeeeec67e518d
[openwrt/staging/mkresin.git] / target / linux / generic / files / fs / yaffs2 / yaffs_nand.h
1 /*
2 * YAFFS: Yet another Flash File System . A NAND-flash specific file system.
3 *
4 * Copyright (C) 2002-2010 Aleph One Ltd.
5 * for Toby Churchill Ltd and Brightstar Engineering
6 *
7 * Created by Charles Manning <charles@aleph1.co.uk>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU Lesser General Public License version 2.1 as
11 * published by the Free Software Foundation.
12 *
13 * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL.
14 */
15
16 #ifndef __YAFFS_NAND_H__
17 #define __YAFFS_NAND_H__
18 #include "yaffs_guts.h"
19
20
21
22 int yaffs_rd_chunk_tags_nand(yaffs_dev_t *dev, int nand_chunk,
23 __u8 *buffer,
24 yaffs_ext_tags *tags);
25
26 int yaffs_wr_chunk_tags_nand(yaffs_dev_t *dev,
27 int nand_chunk,
28 const __u8 *buffer,
29 yaffs_ext_tags *tags);
30
31 int yaffs_mark_bad(yaffs_dev_t *dev, int block_no);
32
33 int yaffs_query_init_block_state(yaffs_dev_t *dev,
34 int block_no,
35 yaffs_block_state_t *state,
36 unsigned *seq_number);
37
38 int yaffs_erase_block(struct yaffs_dev_s *dev,
39 int flash_block);
40
41 int yaffs_init_nand(struct yaffs_dev_s *dev);
42
43 #endif
44