2003-11-25  Andrew Lunn  <andrew.lunn@ascom.ch>

	* src/fs-ecos.c: ARM gcc 3.2.3 is also broken. Complain with any
	ARM gcc 3.2 compiler.

2003-11-21  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * cdl/jffs2.cdl: Do not require zlib package if no
	compression configured.

2003-11-20  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * cdl/jffs2.cdl:
        * src/malloc-ecos.c:
        * src/fs-ecos.c: Allocate jffs2_raw_node_ref structs
        from pool or malloc depending on a CDL configuration.

2003-11-20  David Woodhouse <dwmw2@infradead.org>

        * Rearrangement of the compression code into a cleaner API
	which can be disabled under control from CDL.
	
2003-10-14  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * src/os-ecos.h: Made definition of CONFIG_JFFS2_FS_DEBUG
        conditional, so it can be overwritten by a -D compiler
        option.
                                                                               
2003-09-23  Thomas Koeller  <thomas.koeller@baslerweb.com>
                                                                               
        * src/fs-ecos.c: Another umount() fix.

2003-09-23  Andrew Lunn  <andrew.lunn@ascom.ch>

        * src/fs-ecos.c: Added test to detect known broken ARM compiler

2003-09-23  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * src/fs-ecos.c: Fixed broken hard link creation.
        
2003-09-23  Andrew Lunn     <andrew.lunn@ascom.ch>

        * src/fs-ecos.c: Minor optimization of previous patch.
        
2003-09-21  Thomas Koeller  <thomas.koeller@baslerweb.com>
            Andrew Lunn     <andrew.lunn@ascom.ch>

        * src/fs-ecos.c: Do not decrement mount count for unsuccessful
        umount attempts.

2003-09-19  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * src/fs-ecos.c: Another inode number fix.

2003-09-18  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * src/fs-ecos.c: Inode number returned by stat() was bogus.

2003-07-27  Andrew Lunn  <andrew.lunn@ascom.ch>

        * src/os-ecos.h: Added new #defines require for the recent jffs2
        import.

2003-07-27  Michael Checky  <Michael_Checky@ThermoKing.com>
 
        * src/fs-ecos.c: Changed the return error code to be negative as
        expected by jffs2_flash_read() and jffs2_flash_write().
        
2003-04-23  Bob Koninckx  <bob.koninckx@mech.kuleuven.ac.be>

        * src/fs-ecos.c: mtab -> cyg_mtab. Ditto cyg_mtab_end. 

2003-03-25  Thomas Koeller  <thomas.koeller@baslerweb.com>

        * src/fs-ecos.c
        Fixed segmentation fault when unmounting file system.

2003-02-24  Jonathan Larmour  <jifl@eCosCentric.com>

        * cdl/jffs2.cdl: Fix doc link.

2003-02-05  Jonathan Larmour  <jifl@eCosCentric.com>

        * cdl/jffs2.cdl: Remove unused flash geometry CDL options.

2003-02-04  Gary Thomas  <gary@mlbassoc.com> on behalf of
2003-02-04  David Woodhouse <dwmw2@cambridge.redhat.com>        

        * src/write.c: 
        * src/scan.c: 
        * src/readinode.c: 
        * src/read.c: 
        * src/pushpull.h: 
        * src/os-ecos.h: 
        * src/nodemgmt.c: 
        * src/nodelist.h: 
        * src/nodelist.c: 
        * src/malloc-ecos.c: 
        * src/jffs2port.h: 
        * src/gc.c: 
        * src/file-ecos.c: 
        * src/erase.c: 
        * src/dir-ecos.c: 
        * src/compr_zlib.c: 
        * src/compr_rubin.c: 
        * src/compr_rtime.c: 
        * src/compr.c: 
        * src/build.c: 
        * cdl/jffs2.cdl: Update to latest public JFFS2 codebase.

        * src/list.h: 
        * src/jffs2_fs_sb.h: 
        * src/jffs2_fs_i.h: 
        * src/jffs2.h: 
        * src/jffs2.c: 
        * src/crc32.h: 
        * src/background.c: Removed/renamed file(s).

        * src/fs-ecos.c: 
        * include/linux/jffs2_fs_sb.h: 
        * include/linux/jffs2_fs_i.h: 
        * include/linux/jffs2.h: New file(s).

2002-12-06  Andrew Lunn  <andrew.lunn@ascom.ch>

        * cdl/jffs2.cdl: Implements the CYGINT_IO_FILEIO_FS interface.

2002-10-11  Andrew Lunn  <andrew.lunn@ascom.ch>

        * src/crc32.h (crc32): Use the CRC package for crc calculation
        * tests/romfileio1.c (main): Pass the name of the device to mount

2002-05-20  Jonathan Larmour  <jlarmour@redhat.com>

        * src/LICENCE: New file. Contains license for JFFS2, now GPL+exception.
        * src/background.c: Point at LICENSE file instead of existing text.
        * src/build.c: Ditto.
        * src/compr.c: Ditto.
        * src/compr_rtime.c: Ditto.
        * src/compr_rubin.c: Ditto.
        * src/compr_zlib.c: Ditto.
        * src/dir-ecos.c: Ditto.
        * src/erase.c: Ditto.
        * src/file-ecos.c: Ditto.
        * src/gc.c: Ditto.
        * src/jffs2.h: Ditto.
        * src/list.h: Ditto.
        * src/malloc-ecos.c: Ditto.
        * src/nodelist.c: Ditto.
        * src/nodelist.h: Ditto.
        * src/nodemgmt.c: Ditto.
        * src/os-ecos.h: Ditto.
        * src/pushpull.h: Ditto.
        * src/read.c: Ditto.
        * src/readinode.c: Ditto.
        * src/scan.c: Ditto.
        * src/write.c: Ditto.

2002-01-28  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/super-ecos.c: Removed.
        * src/jffs2.c: Merge jffs2_write_super() and jffs2_put_super() into
        the routines from which they were called, put jffs2_read_super()
        in as a static function with a view to doing same RSN.
        * src/jffs2port.h: Remove prototypes of functions that died.
        * cdl/jffs2.cdl: Remove super-ecos.c
        * src/dir-ecos.c src/write.c: Increase highest_version _before_
        assigning to new node, not after.
        
2002-01-27  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/read.c (jffs2_read_inode_range): Deal correctly with
        non-page-aligned read requests. We have to deal with the 
        case where we want to read from somewhere other than the
        beginning of a frag. 
        * src/jffs2.c (jffs2_fo_read): Use jffs2_read_inode_range
        instead of jffs2_readpage.

2002-01-25  Jonathan Larmour  <jlarmour@redhat.com>

        * cdl/jffs2.cdl: We want CYGPKG_IO_FILEIO_INODE.
        * src/dir-ecos.c (jffs2_symlink): Remove. eCos doesn't support symlinks.
        (jffs2_mknod): Similar.
        (jffs2_mkdir): Don't call d_instantiate - its a nop.
        (jffs2_rename): Ditto.
        * src/file-ecos.c (jffs2_commit_write): Don't set blocks.
        * src/jffs2.c (jffs2_flash_writev): Rewrite to only write aligned
        quantities to flash.
        * src/jffs2port.h: Lots of decrufting.
        * src/os-ecos.h: Ditto (a bit).
        * src/readinode.c (jffs2_read_inode): Don't set blocks/blksize in inode.
        * src/write.c (jffs2_new_inode): Ditto when __ECOS.
        (jffs2_write_dnode): don't call writev with extra vectors
        unnecessarily.
        * src/super-ecos.c (jffs2_statfs): Remove - unused.

2002-01-25  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/super-ecos.c: Cruftectomy.
        * src/compr*.[ch] src/pushpull.h: Namespace cleanups merged from
        mainstream sources. Bit push functions made inline.
        * src/pushpull.c: Removed.
        * cdl/jffs2.c: Remove reference to pushpull.c
        * src/file-ecos.c: Cruftectomy. Lots of unused stuff here.
        * src/jffs2.c src/jffs2port.h: Remove some functions from jffs2.c
        which are no longer used, move some others to jffs2port.h as
        inline functions so they don't pollute the namespace.

2002-01-24  Jonathan Larmour  <jlarmour@redhat.com>

        * tests/fileio1.c: Check in listdir that the number of dirents is
        correct, taking into account existing files in case it's live.

        * src/dir-ecos.c (jffs2_readdir): move to....

        * src/jffs2.c (jffs2_fo_dirread): here. And fix the return code
        in the process so it now works.
        (filldir): Make inline and simpler.
        * src/jffs2port.h: remove filldir related stuff.

2002-01-24  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/dir-ecos.c: Cruftectomy. Remove most of the stuff that was
        commented out. Remove jffs2_do_{create,link,unlink} to write.c
        * src/write.c: Add jffs2_do_{create,link,unlink} as in mainline.
        * src/nodelist.h: Prototypes for the above.
        * src/jffs2port.h: Don't include <pkgconf/kernel.h>. 
        
2002-01-23  Jonathan Larmour  <jlarmour@redhat.com>

        * src/jffs2.c (jffs2_mount): Allow multiple FSs, and integration
        with flash block device.
        (jffs2_flash_read): Use flash block device.
        (jffs2_flash_erase): Ditto.
        (jffs2_flash_write): Ditto.
        (do_flash_init): Remove - now done by block device layer
        * src/list.h: Remove and reimplement from scratch to avoid GPL.
        * src/os-ecos.h: Keep flash block dev handle in superblock.
        eCos does support obsoleting as it isn't NAND only.
        * src/dir-ecos.c (jffs2_readdir): Return correct value on success.
        Merge in changes mutatis mutandis from between v1.49 and v1.51 of
        dir.c in main repository.
        * cdl/jffs2.cdl: CYGPKG_MEMALLOC more accurately CYGINT_ISO_MALLOC.
        Only jffs2.c needs to be in libextras.a
        Requires Flash block devices as an alternative for hardcoding
        the sector size, flash size and base address.
        * src/super-ecos.c (jffs2_read_super): Use flash block device for
        sector and flash sizes.
        * tests/fileio1.c: mount using block device (defined by CDL).
        No need to init here - done by flash block device layer.
        
2002-01-21  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/read.c: Obtain inode lock around reading symlink target.
        * src/dir-ecos.c: Fix the long-standing up() without down() in
        jffs2_readdir() when only the '.' and '..' entries are read, from
        v1.52 of master dir.c. Merge copyright date change from v1.50 - note
        that the portability cleanups from v1.51 aren't yet merged.
        * src/os-ecos.h: Add jffs2_can_mark_obsolete() and the macros
        for getting at generic inode fields from a struct jffs2_inode_info*
        * src/nodemgmt.c: Remove an #ifndef __ECOS and use 
        jffs2_can_mark_obsolete() instead.
        * src/jffs2port.h: up() is cyg_drv_mutex_unlock() not _release()
        * src/gc.c: Merge portability cleanups - get rid of a lot of
        references to 'struct inode'. Also include the attempt at NAND
        support in jffs2_garbage_collect_deletion_dirent().
        
2002-01-11  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/jffs2port.h: Switch semaphore emulation to cyg_drv_mutex_t,
        remove some kernel includes which seem gratuitous.
        * cdl/jffs2.cdl: Require CYGPKG_MEMALLOC
        * src/compr_zlib.c src/compr.c: Merge changes from mainline code
        to make mkfs.jffs2 compile again.
        
2002-01-10  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * src/jffs2.c: The 'mode' arg passed to jffs2_open() shouldn't
        have been called 'mode'. It's 'oflags'. You have to make up a 
        mode for the newly-created file yourself.
        * src/nodelist.h src/read.c: Fix jffs2_getlink() so it takes
        portable arguments, not a dentry. Move it to read.c and symlink.c
        becomes obsolete.
        * src/symlink-ecos.c: Removed.
        * cdl/jffs2.cdl: Remove symlink-ecos.c

2002-01-09  David Woodhouse  <dwmw2@cambridge.redhat.com>

        * Import updated JFFS2 sources into eCos tree.

2000-08-28  Dominic Ostrowski (dominic.ostrowski@3glab.com)

        * started on port of JFFS2 using ramfs as a template
        
//===========================================================================
//####ECOSGPLCOPYRIGHTBEGIN####
// -------------------------------------------
// This file is part of eCos, the Embedded Configurable Operating System.
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
//
// eCos is free software; you can redistribute it and/or modify it under
// the terms of the GNU General Public License as published by the Free
// Software Foundation; either version 2 or (at your option) any later version.
//
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
// for more details.
//
// You should have received a copy of the GNU General Public License along
// with eCos; if not, write to the Free Software Foundation, Inc.,
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
//
// As a special exception, if other files instantiate templates or use macros
// or inline functions from this file, or you compile this file and link it
// with other works to produce a work based on this file, this file does not
// by itself cause the resulting work to be covered by the GNU General Public
// License. However the source code for this file must still be made available
// in accordance with section (3) of the GNU General Public License.
//
// This exception does not invalidate any other reasons why a work based on
// this file might be covered by the GNU General Public License.
//
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
// at http://sources.redhat.com/ecos/ecos-license/
// -------------------------------------------
//####ECOSGPLCOPYRIGHTEND####
//===========================================================================
        

