Greg Kroah-Hartman ea3398a1ae Staging: Merge 2.6.37-rc5 into staging-next 14 years ago
..
Kconfig e4c5bf8e3d Merge 'staging-next' to Linus's tree 14 years ago
Makefile bf46b9a92e spectra: Rename config options 15 years ago
README 8ae4f63623 spectra: Move to drivers/staging 15 years ago
ffsdefs.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
ffsport.c ea3398a1ae Staging: Merge 2.6.37-rc5 into staging-next 14 years ago
ffsport.h 6f5a416216 staging: spectra: move all init logic into nand_pci_probe 14 years ago
flash.c 6f5a416216 staging: spectra: move all init logic into nand_pci_probe 14 years ago
flash.h 0e324fbdb7 staging/trivial: fix typos concerning "management" 14 years ago
lld.c 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld_cdma.c 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld_cdma.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld_emu.c 0a1c62dedc staging, spectra: Remove unnecessary casts of void ptr returning alloc function return values 14 years ago
lld_emu.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld_mtd.c e803029770 staging: spectra: remove duplicated includes 14 years ago
lld_mtd.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
lld_nand.c 6f5a416216 staging: spectra: move all init logic into nand_pci_probe 14 years ago
lld_nand.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
nand_regs.h 8ae4f63623 spectra: Move to drivers/staging 15 years ago
spectraswconfig.h bf46b9a92e spectra: Rename config options 15 years ago

README

This is a driver for NAND controller of Intel Moorestown platform.

This driver is a standalone linux block device driver, it acts as if it's a normal hard disk.
It includes three layer:
block layer interface - file ffsport.c
Flash Translation Layer (FTL) - file flash.c (implement the NAND flash Translation Layer, includs address mapping, garbage collection, wear-leveling and so on)
Low level layer - file lld_nand.c/lld_cdma.c/lld_emu.c (which implements actual controller hardware registers access)

This driver can be build as modules or build-in.

Dependency:
This driver has dependency on IA Firmware of Intel Moorestown platform.
It need the IA Firmware to create the block table for the first time.
And to validate this driver code without IA Firmware, you can change the
macro AUTO_FORMAT_FLASH from 0 to 1 in file spectraswconfig.h. Thus the
driver will erase the whole nand flash and create a new block table.

TODO:
- Enable Command DMA feature support
- lower the memory footprint
- Remove most of the unnecessary global variables
- Change all the upcase variable / functions name to lowercase
- Some other misc bugs

Please send patches to:
Greg Kroah-Hartman

And Cc to: Gao Yunpeng