From owner-freebsd-embedded@FreeBSD.ORG Sun Apr 5 06:08:34 2009 Return-Path: Delivered-To: freebsd-embedded@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4BD071065670; Sun, 5 Apr 2009 06:08:34 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from farnsworth.fubar.geek.nz (farnsworth.fubar.geek.nz [69.55.236.47]) by mx1.freebsd.org (Postfix) with ESMTP id 368F08FC13; Sun, 5 Apr 2009 06:08:34 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: by farnsworth.fubar.geek.nz (Postfix, from userid 65534) id 4D21933C1B; Sat, 4 Apr 2009 22:50:20 -0700 (PDT) Received: from localhost (125-238-45-80.broadband-telecom.global-gateway.net.nz [125.238.45.80]) by farnsworth.fubar.geek.nz (Postfix) with ESMTP id 24FA533C1A; Sat, 4 Apr 2009 22:50:15 -0700 (PDT) Date: Sun, 5 Apr 2009 17:50:14 +1200 From: Andrew Turner To: freebsd-geom@freebsd.org, freebsd-embedded@freebsd.org Message-ID: <20090405175014.6aef7016@fubar.geek.nz> X-Mailer: Claws Mail 3.7.1 (GTK+ 2.14.7; amd64-portbld-freebsd7.1) X-Pirate: Arrrr Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: Subject: FreeBSD NAND flash driver X-BeenThere: freebsd-embedded@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Dedicated and Embedded Systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Apr 2009 06:08:34 -0000 I've been working on a FreeBSD NAND flash driver and NAND simulator [1]. I have tested reading and writing to the simulated NAND device but not erasing. It is not usable yet as the write will not perform any deletes from the device, either the file system or another geom will have to issue a BIO_DELETE followed by BIO_WRITE's to write to the disk. This is done to support NAND flash aware file systems. TODO: * ECC support. * Add GEOM attributes to get information about the NAND device out, eg. Block size, OOB data, etc. * Test the erase code. * Add support for real hardware. * Read the parameter page on parts that support it to get the required information. Andrew [1] http://fubar.geek.nz/files/freebsd/nand/freebsd-nand-20090405.tar.gz