arm: vf610: fix double iomux configuration for vf610twr board
[u-boot/qq2440-u-boot.git] / doc / README.JFFS2
blobf0e9bc1b37aacf8ebb8b0ddc50d61e577b1f9399
1 JFFS2 options and usage.
2 -----------------------
4 JFFS2 in U-Boot is a read only implementation of the file system in
5 Linux with the same name. To use JFFS2 define CONFIG_CMD_JFFS2.
7 The module adds three new commands.
8 fsload  - load binary file from a file system image
9 fsinfo  - print information about file systems
10 ls      - list files in a directory
11 chpart  - change active partition
13 If you boot from a partition which is mounted writable, and you
14 update your boot environment by replacing single files on that
15 partition, you should also define CONFIG_SYS_JFFS2_SORT_FRAGMENTS. Scanning
16 the JFFS2 filesystem takes *much* longer with this feature, though.
17 Sorting is done while inserting into the fragment list, which is
18 more or less a bubble sort. That algorithm is known to be O(n^2),
19 thus you should really consider if you can avoid it!
22 There is two ways for JFFS2 to find the disk. The default way uses
23 the flash_info structure to find the start of a JFFS2 disk (called
24 partition in the code) and you can change where the partition is with
25 two defines.
27 CONFIG_SYS_JFFS2_FIRST_BANK
28         defined the first flash bank to use
30 CONFIG_SYS_JFFS2_FIRST_SECTOR
31         defines the first sector to use
34 The second way is to define CONFIG_SYS_JFFS_CUSTOM_PART and implement the
35 jffs2_part_info(int part_num) function in your board specific files.
36 In this mode CONFIG_SYS_JFFS2_FIRST_BANK and CONFIG_SYS_JFFS2_FIRST_SECTOR is not
37 used.
39 The input is a partition number starting with 0.
40 Return a pointer to struct part_info or NULL for error;
42 Ex jffs2_part_info() for one partition.
43 ---
44 #if defined CONFIG_SYS_JFFS_CUSTOM_PART
45 #include <jffs2/jffs2.h>
47 static struct part_info part;
49 struct part_info*
50 jffs2_part_info(int part_num)
52         if(part_num==0){
53                 if(part.usr_priv==(void*)1)
54                         return &part;
56                 memset(&part, 0, sizeof(part));
57                 part.offset=(char*)0xFF800000;
58                 part.size=1024*1024*8;
60                 /* Mark the struct as ready */
61                 part.usr_priv=(void*)1;
63                 return &part;
64         }
65         return 0;
67 #endif
68 ---
70 TODO.
72         Remove the assumption that JFFS can dereference a pointer
73         into the disk. The current code do not work with memory holes
74         or hardware with a sliding window (PCMCIA).