public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
* yaffs update#2
@ 2004-09-02 17:56 Nick Bane
  2004-09-03  8:38 ` Thomas Gleixner
  0 siblings, 1 reply; 2+ messages in thread
From: Nick Bane @ 2004-09-02 17:56 UTC (permalink / raw)
  To: yaffs list; +Cc: Balloon@Balloonboard.Org, Linux-Mtd@Lists.Infradead.Org

[-- Attachment #1: Type: text/plain, Size: 762 bytes --]

Hi folks,

Some mods that get yaffs running properly on 2.6.8.1. The superblock name issue is now resolved.

For kernel integration examples in 2.4.25 and 2.6.8.1-tcl1, see trees at http://husaberg.toby-churchill.com/balloon/. I am also starting a cvs repository for 2.6 with viewcvs access not unlike the hh site.

There are moves afoot to submit yaffs to mainstream linux. All opinions about suitability/maturity welcome. The kernel mtd layer and yaffs_mtdif have now harmonised so now seems a good moment.

Non-yaffs: Current balloon board is supported in 2.6.8.1-tcl1 as is Mainstone (pxa270) though 2.6.9-rcx may superceed it.

Nick
cc mtd list, balloonboard list
-----------------------
Nick Bane
nick@cecomputing.co.uk
+44 (0)1954 719270 

[-- Attachment #2: diff --]
[-- Type: application/octet-stream, Size: 2085 bytes --]

diff -urN yaffs-clean/yaffs_fs.c yaffs-2.6.8/yaffs_fs.c
--- yaffs-clean/yaffs_fs.c	Thu Nov 20 08:54:05 2003
+++ yaffs-2.6.8/yaffs_fs.c	Thu Sep  2 18:37:17 2004
@@ -52,7 +52,8 @@
 #include <asm/statfs.h>
 #define UnlockPage(p) unlock_page(p)
 #define Page_Uptodate(page)	test_bit(PG_uptodate, &(page)->flags)
-#define kdevname(x) cdevname(to_kdev_t(x))
+//#define kdevname(x) cdevname(to_kdev_t(x))
+//#define sbname(sb) sb->s_id	// temporary fix
 #else
 #include <linux/locks.h>
 #endif
@@ -582,7 +583,7 @@
 		inode->i_gid = obj->st_gid;
 		inode->i_blksize = inode->i_sb->s_blocksize;
 #if defined(CONFIG_KERNEL_2_5)
-		inode->i_rdev = to_kdev_t(obj->st_rdev);
+		inode->i_rdev = old_decode_dev(obj->st_rdev);
 		inode->i_atime.tv_sec = (time_t)(obj->st_atime);
 		inode->i_atime.tv_nsec = 0;
 		inode->i_mtime.tv_sec = (time_t)obj->st_mtime;
@@ -1241,10 +1242,14 @@
 		printk(KERN_INFO"yaffs: sb is NULL\n");
 	else if(!sb->s_dev)
 		printk(KERN_INFO"yaffs: sb->s_dev is NULL\n");
+#if defined(CONFIG_KERNEL_2_5)
+		printk(KERN_INFO"yaffs: dev is %d name is \"%s\"\n", sb->s_dev, sb->s_id);
+#else
 	else if(! kdevname(sb->s_dev))
 		printk(KERN_INFO"yaffs: kdevname is NULL\n");
 	else
 		printk(KERN_INFO"yaffs: dev is %d name is \"%s\"\n", sb->s_dev, kdevname(sb->s_dev));
+#endif
 
 	
 
@@ -1303,7 +1308,11 @@
 		struct mtd_info *mtd;
 		
 		printk(KERN_DEBUG "yaffs: Attempting MTD mount on %u.%u, \"%s\"\n",
+#if defined(CONFIG_KERNEL_2_5)
+		 MAJOR(sb->s_dev),MINOR(sb->s_dev),sb->s_id);
+#else
 		 MAJOR(sb->s_dev),MINOR(sb->s_dev),kdevname(sb->s_dev));
+#endif
 			
 		// Check it's an mtd device.....
 		if(MAJOR(sb->s_dev) != MTD_BLOCK_MAJOR)
diff -urN yaffs-clean/yaffs_mtdif.c yaffs-2.6.8/yaffs_mtdif.c
--- yaffs-clean/yaffs_mtdif.c	Sun Jul 20 15:03:30 2003
+++ yaffs-2.6.8/yaffs_mtdif.c	Thu Sep  2 13:15:34 2004
@@ -31,6 +31,8 @@
 
 struct nand_oobinfo yaffs_oobinfo = {
 	useecc: 1,
+// this is for versions of mtd nand driver in kernel 2.6.8 and later
+	eccbytes: 6,
 	eccpos: {8, 9, 10, 13, 14, 15}
 };
 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-09-03  8:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-09-02 17:56 yaffs update#2 Nick Bane
2004-09-03  8:38 ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox