My hunch is that JFFS2 requires 388KB for journalling. Just for comparison, I made a 640KB file and tried to build an ext3 filesystem on it:
$ dd if=/dev/zero of=testFS bs=1k count=640
640+0 records in
640+0 records out
655360 bytes (655 kB) copied, 0.00244463 s, 268 MB/s
$ mkfs.ext3 testFS
mke2fs 1.42 (29-Nov-2011)
testFS is not a block special device.
Proceed anyway? (y,n) y
...
Filesystem too small for a journal
Writing superblocks and filesystem accounting information: done
As no journal was added, the filesystem was effectively ext2
.
$ sudo mount testFS /mnt
$ mount
/home/user/testFS on /mnt type ext2 (rw)
$ df --si
/dev/loop1 640k 17k 591k 3% /mnt
I will edit this when I find out how to create and mount a JFFS2 partition. Do you really need a journal for a 640KB filesystem?