yaffs2.git
7 years agoAdd struct definition to yaffs_nameval header
Charles Manning [Thu, 6 Apr 2017 02:11:05 +0000 (14:11 +1200)]
Add struct definition to yaffs_nameval header

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoyaffs direct: Fix opening of a directory.
Charles Manning [Mon, 3 Apr 2017 04:49:42 +0000 (16:49 +1200)]
yaffs direct: Fix opening of a directory.

If opening a directory using yaffs_open(), Yaffs Direct was checking
that the file was being opened with O_RDONLY.

In fact those flags should actually be ignored and it should be treated
as if opened O_RDONLY.

Therefore override flags if opening a directory.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoChanges to test scripts
Charles Manning [Sat, 3 Dec 2016 05:47:16 +0000 (18:47 +1300)]
Changes to test scripts

These just clean up a few things.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoFix yaffs_endian.h for Linux
Charles Manning [Sat, 3 Dec 2016 05:43:00 +0000 (18:43 +1300)]
Fix yaffs_endian.h for Linux

Yaffs loff_t is kept as loff_t and converted into Y_LOFF_T when
when exported for Yaffs Direct.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoChanges to enable Linux 4.8 compilation
Andre Renaud [Tue, 25 Oct 2016 01:18:11 +0000 (14:18 +1300)]
Changes to enable Linux 4.8 compilation

7 years agotimothy-tests: Fix paths for wrongly failing tests
Charles Manning [Fri, 8 Jul 2016 01:50:44 +0000 (13:50 +1200)]
timothy-tests: Fix paths for wrongly failing tests

All pass now.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agotimothy-tests: Change mountpoint names to match test framework
Charles Manning [Fri, 8 Jul 2016 01:30:52 +0000 (13:30 +1200)]
timothy-tests: Change mountpoint names to match test framework

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoGet timothy quick tests building cleanly.
Charles Manning [Fri, 8 Jul 2016 00:43:57 +0000 (12:43 +1200)]
Get timothy quick tests building cleanly.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoMore compilation clean up
Charles Manning [Wed, 6 Jul 2016 22:09:48 +0000 (10:09 +1200)]
More compilation clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoCompilation clean up
Charles Manning [Wed, 6 Jul 2016 21:30:35 +0000 (09:30 +1200)]
Compilation clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoChean up nand test script
Charles Manning [Tue, 5 Jul 2016 04:47:41 +0000 (16:47 +1200)]
Chean up nand test script

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoyaffs2: Yaffs endian support
Charles Manning [Sat, 2 Jul 2016 00:11:34 +0000 (12:11 +1200)]
yaffs2: Yaffs endian support

Allow the forcing of endians so that Yaffs can be used on mixed endian
machines, or a flash image can be extracted and used elsewhere.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoChange checkpoint object to using a bitfield
Charles Manning [Tue, 14 Jun 2016 02:30:01 +0000 (14:30 +1200)]
Change checkpoint object to using a bitfield

This is done to support changing to support endian
manipulation.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoAdd ability to hide lost_n_found directory
Charles Manning [Mon, 6 Jun 2016 02:16:07 +0000 (14:16 +1200)]
Add ability to hide lost_n_found directory

Some people don't want it showing up in the directory structure.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
7 years agoSplit qsort from the main Yaffs Direct base
Charles Manning [Sun, 1 May 2016 19:23:33 +0000 (07:23 +1200)]
Split qsort from the main Yaffs Direct base

Use the system qsort if available. If not, then add in the
optional qsort.c

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoWrite object headers with stored file extents charles_experiment
Charles Manning [Mon, 7 Mar 2016 19:03:06 +0000 (08:03 +1300)]
Write object headers with stored file extents

Previously file object headers were being written with file extents
rather than stored extents.

This could lead to situations where the data in the cache was not yet
written to flash but had been accounted for in the object header file
size.

Under power fail this could cause zero-filled blobs at the end of a file.

This change tracks the stored file size and only write object headers
reflecting the extents of the file that has actually been stored to flash,
thus avoiding the holes.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs_vfs_multi.c: Some cleanups
Charles Manning [Mon, 7 Mar 2016 18:51:02 +0000 (07:51 +1300)]
yaffs_vfs_multi.c: Some cleanups

Remove some build time strings so that the binary deos not change
every time the code is compiled.

Add some support for kernel changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoChange enums to u32 for stored fields
Charles Manning [Wed, 2 Mar 2016 02:27:31 +0000 (15:27 +1300)]
Change enums to u32 for stored fields

enum sizes are not fixed, so it is better to specify an actual sized
storage element.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoAdd usr mode flags
Charles Manning [Sun, 6 Dec 2015 06:25:48 +0000 (19:25 +1300)]
Add usr mode flags

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoFurther extensions for VxWorks wrapper
Charles Manning [Wed, 11 Nov 2015 03:51:28 +0000 (16:51 +1300)]
Further extensions for VxWorks wrapper

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoSome changes to get VxWorks wrapper working
Charles Manning [Thu, 22 Oct 2015 20:05:56 +0000 (09:05 +1300)]
Some changes to get VxWorks wrapper working

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Remove unnecessary variable from checkpooint reading
Charles Manning [Mon, 1 Jun 2015 22:17:57 +0000 (10:17 +1200)]
yaffs: Remove unnecessary variable from checkpooint reading

No point in tracking ok if we're also going to break.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Keep checkpt rd/wr buffers
Charles Manning [Mon, 1 Jun 2015 21:52:23 +0000 (09:52 +1200)]
yaffs: Keep checkpt rd/wr buffers

Continual malloc/free on some systemcs can cause fragmentation. Better
to just allocate the buffers once and hold unto them.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Remove unused variable
Charles Manning [Sun, 31 May 2015 00:11:09 +0000 (12:11 +1200)]
yaffs: Remove unused variable

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs direct: Fix wrong condition for O_CREAT | O_EXCL
Charles Manning [Sat, 30 May 2015 23:45:03 +0000 (11:45 +1200)]
yaffs direct: Fix wrong condition for O_CREAT | O_EXCL

Thanks Chris for pointing this out.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Clean up defeated conditional.
Charles Manning [Thu, 28 May 2015 21:09:48 +0000 (09:09 +1200)]
yaffs: Clean up defeated conditional.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Add handling for . and .. at end of path
Charles Manning [Thu, 21 May 2015 21:54:08 +0000 (09:54 +1200)]
yaffs: Add handling for . and .. at end of path

yaffs_opendir("/nand/x/./") or yaffs_opendir("/nand/x/../") were
not working, but yaffs_opendir("/nand/x/.") and yaffs_opendir("/nand/x/..")
were.

Make them all work.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoAdd some more basic tests
Charles Manning [Thu, 21 May 2015 21:52:52 +0000 (09:52 +1200)]
Add some more basic tests

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: Fix yaffs_readdir when dereferencing a symlink
Charles Manning [Thu, 21 May 2015 05:27:01 +0000 (17:27 +1200)]
yaffs: Fix yaffs_readdir when dereferencing a symlink

If the directory is a symlink then follow the symlink.

eg
yaffs_mount("/nand/");
yaffs_symlink("x", "/nand/sym");
yaffs_mkdir("/nand/x",0666);

After that:

yaffs_opendir("/nand/sym/") works, but opendir("/nand/sym") fails because the
symlink itself is found. Fix by dereferencing the symlink in yaffs_opendir().

Thanks to Trent Lillehaugen for finding that.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoFix directory look up.
Charles Manning [Tue, 19 May 2015 22:21:52 +0000 (10:21 +1200)]
Fix directory look up.

Thanks to Trent Lillehaugen for new algorithm:

Let's say I have two yaffs partitions: "/" and "/foo".
If I call, yaffs_mkdir("/foobar", 0), yaffsfs_FindDevice will match the path
with the "/foo" partition.  I would expect it to match "/" instead.
It will also match "/fo/o/bar" with "/foo", again I think it should match
with "/".

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
8 years agoyaffs: fix missing checkpooint on yaffs remount
Charles Manning [Sun, 17 May 2015 08:02:46 +0000 (20:02 +1200)]
yaffs: fix missing checkpooint on yaffs remount

For yaffs file system, the mode of reading or writing is restricted at
four pointer where are mnt->mnt_flags,mnt->mnt_sb->s_flags,mtd->flags
and dev->read_only,the first three is used handle file and file
system(eg,remount) operation, and last one(dev->read_only) almost is used
handle checkpoint of yaffs2. However, in current code, the dev->read_only
only can be changed at first time when the yaffs2 file system is mounted,
later it can't be changed again(eg,mount -o remount), the result is that
the checkpoint's saving operation always can't succeed if you set readonly
mode for yaffs2 file system when it is mounted at the first time.

To fix this issue, we implement yaffs_remount_fs() which allows the
rootfs to be remounted as r/w.

Also fix one missing argument in yaffs_flush_whole_cache() call.

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
8 years agoFix vfs calls to yaffs_flush_file
Charles Manning [Sun, 17 May 2015 05:42:36 +0000 (17:42 +1200)]
Fix vfs calls to yaffs_flush_file

Add extra argument.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs-direct: Basic tests. Add lpthread flag for background gc support
Charles Manning [Wed, 6 Aug 2014 23:25:05 +0000 (11:25 +1200)]
yaffs-direct: Basic tests. Add lpthread flag for background gc support

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoRemove unused WinCE Makefile
Charles Manning [Wed, 6 Aug 2014 23:23:38 +0000 (11:23 +1200)]
Remove unused WinCE Makefile

THis was for copying the yaffs direct files needed for WinCE.

This is no longer needed since we can just copy the files from
yaffs2/direct/*.[ch]

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Add some missing reldev functions
Charles Manning [Tue, 5 Aug 2014 23:22:11 +0000 (11:22 +1200)]
yaffs direct: Add some missing reldev functions

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoTest tweaks
Charles Manning [Tue, 5 Aug 2014 21:27:34 +0000 (09:27 +1200)]
Test tweaks

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoSome yaffsfs cleanups for WinCE
Charles Manning [Tue, 5 Aug 2014 21:26:59 +0000 (09:26 +1200)]
Some yaffsfs cleanups for WinCE

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoYaffs: Change cache policy
Charles Manning [Tue, 22 Jul 2014 21:33:04 +0000 (09:33 +1200)]
Yaffs: Change cache policy

When the cache is full and a new cache entry is needed, then space has
to be made. This is sometimes termed push out.

Until now, the push out involved finding the least recently used cache
entry then pushing out all entries in the same file.

This had the unintended consequence of making "bursty" writes and forcing
extra reads under some conditions.

Since the same code path was being used for fsync() and flushing, this
also meant that flushing a file caused the file to be thrown out of the
cache. That is not a very useful thing to do.

These changes are twofold:

1. Only push out the LRU cache entry, rather than the whole file. This
makes for a "smoother" push out. It also saves some reads.

2. Flushing a file no longer invalidates the file in cache, it just writes
dirty cache entries. This makes better use of the cache.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoUpdate to support Linux 3.14/3.15
Charles Manning [Wed, 18 Jun 2014 02:21:03 +0000 (14:21 +1200)]
Update to support Linux 3.14/3.15

Thanks to Andre Renaud for doing some of this.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Expose background garbage collection
Charles Manning [Wed, 7 May 2014 01:07:25 +0000 (13:07 +1200)]
yaffs direct: Expose background garbage collection

Expose background garbage collection and add a demo
pthread implementation of background gc.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffs: Clean up bitfield types
Charles Manning [Sat, 29 Mar 2014 21:24:55 +0000 (10:24 +1300)]
yaffs: Clean up bitfield types

It happens that the C spec says compilers can choose whether to treat
int bitfields as signed or unsigned.

In some cases, int was being used and signed was expected. The IAR
ARM compiler in particular treats int bitfields as unsigned.

Clean up these plus a few other bitfield usages to make the size and
type explicit.

Thanks to ChungKang Hu for identifying this issue.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffs-direct: Add reldir and reldev interfaces
Charles Manning [Tue, 25 Mar 2014 00:26:39 +0000 (13:26 +1300)]
yaffs-direct: Add reldir and reldev interfaces

These interfaces allow far more flexibility in the way Yaffs Direct
is hooked up to an RTOS VFS.

The "normal" interface requires a fully, qualified path, which is
a pain to achieve in some RTOSs.

The new interfaces allow calls to be done with paths relative to a
directory or to a device. This tends to make some RTOS integration
cleaner.

Example
 yaffs_open("/mountpoint-name/dir/file",...);
now has two alternatives:
 yaffs_open_reldir(root_dir,"dir/file",...);
or
 yaffs_open_reldev(dev, "dir/file",...);

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Tue, 4 Mar 2014 01:11:14 +0000 (14:11 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

10 years agoyaffs-direct: Fix object leak caused by defered free
Charles Manning [Tue, 4 Mar 2014 01:04:00 +0000 (14:04 +1300)]
yaffs-direct: Fix object leak caused by defered free

The change to dtest.c adds a test case that was leaking objects.
The change to yaffsfs.c fixes this.

This leak was triggered by sequences of the following form:

yaffs_open(file_name, ...); /* create obj */
...
yaffs_unlink(file_name);
yaffs_close(file_name);

When the file was closed, obj->my_inode was not NULL when yaffs_del_obj() is
called, therefore the object was not released properly.

The fix "unstitches" the object before the call to yaffs_del_obj(), so that
obj->my_inode is NULL and the object freeing is done correctly.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoApply fixes in cisco patch to yaffs_vfs_single
Charles Manning [Tue, 21 Jan 2014 23:32:13 +0000 (12:32 +1300)]
Apply fixes in cisco patch to yaffs_vfs_single

Cisco patched the multi version. This manually drags the fixes to the
single version too.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoUse IS_ERR to validate return value from get_mtd_device()
Kjetil Aamodt [Mon, 9 Sep 2013 14:23:20 +0000 (16:23 +0200)]
Use IS_ERR to validate return value from get_mtd_device()

Testing has shown that is needed.

10 years agoReturn from yaffs_internal_read_super if kmalloc fail
Kjetil Aamodt [Mon, 9 Sep 2013 13:24:52 +0000 (15:24 +0200)]
Return from yaffs_internal_read_super if kmalloc fail

Return if either, or both, of dev and context failed to
kmalloc(). kfree() handles NULL as argument so utilise that to
simplify code.

10 years agoChange the object type if it turns out to be wrong during a scan
Charles Manning [Tue, 21 Jan 2014 23:14:26 +0000 (12:14 +1300)]
Change the object type if it turns out to be wrong during a scan

This might result in some files ending up in lost but at least we
can get the file system to mount.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoRemove block number check from summary verification
Charles Manning [Mon, 20 Jan 2014 01:38:57 +0000 (14:38 +1300)]
Remove block number check from summary verification

The summary already has other verification. This one is not needed.

The check caused summaries to be ignored if they were not on the
numbered block. This caused problems when a summary was embedded in an
image and the image is written to a flash with bad blocks.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Thu, 11 Jul 2013 05:46:25 +0000 (17:46 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

10 years agoAdd some extra debugging to yaffs_vfs_multi.c
Charles Manning [Thu, 11 Jul 2013 05:45:33 +0000 (17:45 +1200)]
Add some extra debugging to yaffs_vfs_multi.c

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoAdd some yaffs debug functions for inspecting run-time state.
Charles Manning [Thu, 11 Jul 2013 05:40:46 +0000 (17:40 +1200)]
Add some yaffs debug functions for inspecting run-time state.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoInitialise device properly when doing a format.
Charles Manning [Thu, 11 Jul 2013 05:33:53 +0000 (17:33 +1200)]
Initialise device properly when doing a format.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoChange tracing for bad block checking
Charles Manning [Sun, 7 Jul 2013 23:45:48 +0000 (11:45 +1200)]
Change tracing for bad block checking

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoHandle inband tags flag better
Charles Manning [Sun, 7 Jul 2013 23:45:21 +0000 (11:45 +1200)]
Handle inband tags flag better

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoAdd automatic detection for inband tags and bad block marking supression
Charles Manning [Wed, 26 Jun 2013 06:21:44 +0000 (18:21 +1200)]
Add automatic detection for inband tags and bad block marking supression

Inband tags is now selected automatically if there is insufficient space
in oob for the tags.

Also add a development feature that supresses bad block marking during development.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoClean up parameters being passed to mtd
Charles Manning [Mon, 24 Jun 2013 05:13:30 +0000 (17:13 +1200)]
Clean up parameters being passed to mtd

Some nand implementations are fussy about the parameters being passed in.

If the ptr or length of data or oob is zero, then clear out the whole
parameter pair.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoSplit out low level init code for making low level tests
Charles Manning [Wed, 12 Jun 2013 23:09:45 +0000 (11:09 +1200)]
Split out low level init code for making low level tests

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffs direct: Add some basic testing for yaffs_readdir_fd etc
Charles Manning [Mon, 13 May 2013 07:16:11 +0000 (19:16 +1200)]
yaffs direct: Add some basic testing for yaffs_readdir_fd etc

Testing the fd-oriented functions for directory access.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffsfs: Clean up example configurations.
Charles Manning [Mon, 13 May 2013 03:06:16 +0000 (15:06 +1200)]
yaffsfs: Clean up example configurations.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoAdd new functions to read directories with an fd.
Charles Manning [Mon, 13 May 2013 03:05:43 +0000 (15:05 +1200)]
Add new functions to read directories with an fd.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffsfs: Add commenting for OS glue interface
Charles Manning [Mon, 13 May 2013 03:04:08 +0000 (15:04 +1200)]
yaffsfs: Add commenting for OS glue interface

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Thu, 9 May 2013 09:24:53 +0000 (21:24 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

10 years agoyaffs-direct: Refactor nand simulator driver look-up.
Charles Manning [Thu, 9 May 2013 09:23:31 +0000 (21:23 +1200)]
yaffs-direct: Refactor nand simulator driver look-up.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoyaffs-direct: Remove obsolete files
Charles Manning [Thu, 9 May 2013 07:29:54 +0000 (19:29 +1200)]
yaffs-direct: Remove obsolete files

Remove files no longer used with new device model.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoFix file permissions for nand sim backing file
Charles Manning [Tue, 7 May 2013 05:05:02 +0000 (17:05 +1200)]
Fix file permissions for nand sim backing file

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoAdd back temporarily disabled ECC in nand driver
Charles Manning [Tue, 7 May 2013 04:35:16 +0000 (16:35 +1200)]
Add back temporarily disabled ECC in nand driver

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Tue, 7 May 2013 04:06:57 +0000 (16:06 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

10 years agoSome clean ups.
Charles Manning [Tue, 7 May 2013 04:06:00 +0000 (16:06 +1200)]
Some clean ups.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
10 years agoAdd nand driver that works with a nand simulator
Charles Manning [Tue, 7 May 2013 04:04:57 +0000 (16:04 +1200)]
Add nand driver that works with a nand simulator

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs linux: Fix chunk alignment for inband tags
Charles Manning [Fri, 18 Jan 2013 02:46:43 +0000 (15:46 +1300)]
yaffs linux: Fix chunk alignment for inband tags

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Fri, 18 Jan 2013 02:17:53 +0000 (15:17 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

11 years agoyaffs linux: Fix compilation for Linux 3.6, 3.7, 3.8
Charles Manning [Fri, 18 Jan 2013 02:11:02 +0000 (15:11 +1300)]
yaffs linux: Fix compilation for Linux 3.6, 3.7, 3.8

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs linux: Rationalise and fix compilation for Linux 3.4 and 3.5
Charles Manning [Fri, 18 Jan 2013 01:54:36 +0000 (14:54 +1300)]
yaffs linux: Rationalise and fix compilation for Linux 3.4 and 3.5

Some major clean up to get rid of as many prototypes as possible.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agohave added the new rename tests to quick_tests
Timothy Manning [Thu, 17 Jan 2013 23:45:40 +0000 (12:45 +1300)]
have added the new rename tests to quick_tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agohave added some of the new tests
Timothy Manning [Thu, 17 Jan 2013 04:25:55 +0000 (17:25 +1300)]
have added some of the new tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agofixed up all the quick tests
Timothy Manning [Thu, 17 Jan 2013 01:57:42 +0000 (14:57 +1300)]
fixed up all the quick tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agoworking on the quick tests
Timothy Manning [Wed, 16 Jan 2013 22:54:46 +0000 (11:54 +1300)]
working on the quick tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agodirect: Fix definition of yaffs_get_file_size function
Charles Manning [Wed, 12 Dec 2012 21:26:28 +0000 (10:26 +1300)]
direct: Fix definition of yaffs_get_file_size function

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs direct: Fix renaming file over directory or directory over file
Charles Manning [Thu, 6 Dec 2012 00:47:55 +0000 (13:47 +1300)]
yaffs direct: Fix renaming file over directory or directory over file

It was possible to rename a directory over a file or a file over a
directory. This is no longer allowed.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs fixed the headers of the timothy_tests makefiles and checked that the other...
Timothy Manning [Wed, 14 Nov 2012 21:30:54 +0000 (10:30 +1300)]
yaffs fixed the headers of the timothy_tests makefiles and checked that the other tests were still working.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agoyaffs all timothy_tests makefiles are working. threading test is broken.
Timothy Manning [Wed, 14 Nov 2012 21:21:02 +0000 (10:21 +1300)]
yaffs all timothy_tests makefiles are working. threading test is broken.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agoyaffs got the make files to work for timothy_tests/quick_tests
Timothy Manning [Tue, 13 Nov 2012 20:30:25 +0000 (09:30 +1300)]
yaffs got the make files to work for timothy_tests/quick_tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agoyaffs Moving timothy_tests and updating the makefiles to work with the new test-framework
Timothy Manning [Mon, 12 Nov 2012 20:35:55 +0000 (09:35 +1300)]
yaffs Moving timothy_tests and updating the makefiles to work with the new test-framework
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
11 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Tue, 13 Nov 2012 18:16:47 +0000 (07:16 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

11 years agoFix broken comment
Charles Manning [Tue, 13 Nov 2012 18:15:01 +0000 (07:15 +1300)]
Fix broken comment

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoSort out Linux kernel building with new driver model.
Charles Manning [Wed, 7 Nov 2012 01:15:20 +0000 (14:15 +1300)]
Sort out Linux kernel building with new driver model.

TODO yaffs_mtdif_single is just a copy of yaffs_mtdif_multi.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs direct: Fix bug where handle reinitialisation was damaging dsc lists
Charles Manning [Wed, 24 Oct 2012 19:57:27 +0000 (08:57 +1300)]
yaffs direct: Fix bug where handle reinitialisation was damaging dsc lists

This was a pretty obscure bug that only shows up if mounting a second mount
point while a directory search context was in use (ie a directory open for reading).

Thanks to Ed for finding this.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoAdd a brief README describing how to import core code into Yaffs Direct
Charles Manning [Sun, 14 Oct 2012 22:27:15 +0000 (11:27 +1300)]
Add a brief README describing how to import core code into Yaffs Direct

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoRemove misnamed test
Charles Manning [Fri, 12 Oct 2012 03:41:48 +0000 (16:41 +1300)]
Remove misnamed test

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoFix M18 driver for 64-bit systems
Charles Manning [Fri, 12 Oct 2012 03:41:25 +0000 (16:41 +1300)]
Fix M18 driver for 64-bit systems

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoAdd both regular nor and m18 tests to test harness
Charles Manning [Fri, 12 Oct 2012 03:40:00 +0000 (16:40 +1300)]
Add both regular nor and m18 tests to test harness

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoAdd more test scripts
Charles Manning [Fri, 12 Oct 2012 03:12:00 +0000 (16:12 +1300)]
Add more test scripts

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoAdd yaffs driver for regular NOR on simulator
Charles Manning [Fri, 12 Oct 2012 02:23:30 +0000 (15:23 +1300)]
Add yaffs driver for regular NOR on simulator

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoMerge branch 'driver-refactoring' into new-driver-refactoring
Charles Manning [Tue, 2 Oct 2012 02:41:32 +0000 (15:41 +1300)]
Merge branch 'driver-refactoring' into new-driver-refactoring

11 years agoyaffs u-boot: Fix erase for inband tags. fix-uboot pre-driver-refactoring
Charles Manning [Wed, 29 Aug 2012 19:28:39 +0000 (07:28 +1200)]
yaffs u-boot: Fix erase for inband tags.

Yaffs u-boot with inband tags was not working properly. Fixed.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs u-boot: Add new ycheck command, fix return types and modify filesize
Charles Manning [Wed, 29 Aug 2012 19:23:15 +0000 (07:23 +1200)]
yaffs u-boot:  Add new ycheck command, fix return types and modify filesize

ycheck filename [DIR|REG] checks if the file exists and is of the correct type
All functions now return a value that can be tested by $?
filesize env vaiable is now set by a read

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffs: Fix issue with look-up off null names
Charles Manning [Thu, 26 Jul 2012 00:15:16 +0000 (12:15 +1200)]
yaffs: Fix issue with look-up off null names

Null names can happen if object headers are lost. The object gets named
"objnnn" where nnn is the object id.

We could therefore get the names, but the look-up was not working properly.

This fixes the issue so long as short names are enabled.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoyaffsfs: Add yaffs_format function
Charles Manning [Wed, 25 Jul 2012 01:04:11 +0000 (13:04 +1200)]
yaffsfs: Add yaffs_format function

Allows the formatting of a yaffs device

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
11 years agoSet up a test framework. driver-refactoring
Charles Manning [Mon, 25 Jun 2012 03:28:26 +0000 (15:28 +1200)]
Set up a test framework.

This lays out a common test framework structure that should make it simpler to extend tests in the
future.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>