I'm actually in a small company for my second year internship, and I must port linux on a arm946es based board. The ARM codebase works well on the latest linux kernel version but this chip has no MMU !
The uClinux project (http://www.uclinux.org) started a port of Linux 2.0, 2.4 and recently 2.6 for the NOMMU and now MMU-able devices. The core of the linux official git tree contains patches for nommu support but not all the arch has a complete and working nommu support in the latest tree !
The main contributor who made the patch until the 2.6.14 release stopped after submitting all his work to the main kernel tree. Since, the patchs has been updated by the uClinux project administrator working for snapgear. The latest kernel officially distributed with uClinux is the 2.6.17 release.
The latest 2.6.21 and 2.6.22 containing a ethernet PHY driver, working perfectly on the hardware, boots but fails to execute an init program !
I'll try to continue searching for a solution..
I hope I won't need to backport all my work on the 2.6.17 kernel since all the new features including the kobject and bus facilities are far simpler on the latest kernel releases !
Have a nice day folks !
Neil