xref: /openbmc/u-boot/doc/README.JFFS2 (revision 59e12a4a8c219c4a334a2c2023edd1aa20f82a9e)
1c609719bSwdenkJFFS2 options and usage.
2c609719bSwdenk-----------------------
3c609719bSwdenk
4c609719bSwdenkJFFS2 in U-Boot is a read only implementation of the file system in
5b3aff0cbSJon LoeligerLinux with the same name. To use JFFS2 define CONFIG_CMD_JFFS2.
6c609719bSwdenk
7c609719bSwdenkThe module adds three new commands.
8c609719bSwdenkfsload  - load binary file from a file system image
9c609719bSwdenkfsinfo  - print information about file systems
10c609719bSwdenkls      - list files in a directory
11f39748aeSwdenkchpart  - change active partition
12c609719bSwdenk
13*59e12a4aSSimon GlassIf you do now need the commands, you can enable the filesystem separately
14*59e12a4aSSimon Glasswith CONFIG_FS_JFFS2 and call the jffs2 functions yourself.
15*59e12a4aSSimon Glass
1606d01dbeSwdenkIf you boot from a partition which is mounted writable, and you
1706d01dbeSwdenkupdate your boot environment by replacing single files on that
186d0f6bcfSJean-Christophe PLAGNIOL-VILLARDpartition, you should also define CONFIG_SYS_JFFS2_SORT_FRAGMENTS. Scanning
1906d01dbeSwdenkthe JFFS2 filesystem takes *much* longer with this feature, though.
2006d01dbeSwdenkSorting is done while inserting into the fragment list, which is
2106d01dbeSwdenkmore or less a bubble sort. That algorithm is known to be O(n^2),
2206d01dbeSwdenkthus you should really consider if you can avoid it!
2306d01dbeSwdenk
24c609719bSwdenk
25b2482dffSSimon GlassThere only one way for JFFS2 to find the disk. It uses the flash_info
26b2482dffSSimon Glassstructure to find the start of a JFFS2 disk (called partition in the code)
27b2482dffSSimon Glassand you can change where the partition is with two defines.
28c609719bSwdenk
296d0f6bcfSJean-Christophe PLAGNIOL-VILLARDCONFIG_SYS_JFFS2_FIRST_BANK
30c609719bSwdenk	defined the first flash bank to use
31c609719bSwdenk
326d0f6bcfSJean-Christophe PLAGNIOL-VILLARDCONFIG_SYS_JFFS2_FIRST_SECTOR
33c609719bSwdenk	defines the first sector to use
34c609719bSwdenk---
35c609719bSwdenk
36c609719bSwdenkTODO.
37c609719bSwdenk
38c609719bSwdenk	Remove the assumption that JFFS can dereference a pointer
39c609719bSwdenk	into the disk. The current code do not work with memory holes
40c609719bSwdenk	or hardware with a sliding window (PCMCIA).
41