Dear Paul,
I doubt that you will have read (or wanted to read, at least in full) the articles I wrote about extending the MIPS support in L4Re and Fiasco.OC to the Ben NanoNote [1]
I've skimmed through some of your texts quickly. It is definitively an interesting reading and your observations might be certainly helpful for porting any OS to the NanoNote. Thanks!
but is there any relatively in-depth documentation describing approaches to supporting new hardware in HelenOS?
There is a wiki page about writing HelenOS device drivers [1]. Regarding porting of HelenOS to a new platform, the best source of inspiration and guidance are the master theses that have concerned with similar assignments: UltraSPARC III, IV, T1, T2 [2], SPARC V9 [3]. In the code base of HelenOS, there is also this "abstract 32bit little endian architecture" that is a good starting point for supporting a completely new architecture (instead of scavenging an existing architecture support).
[1] http://www.helenos.org/wiki/DeviceDrivers [2] http://www.helenos.org/doc/theses/pr-thesis.pdf [3] http://www.helenos.org/doc/theses/jj-thesis.pdf
I think that it is pretty inexcusable for a lot of new systems not to be portable.
I agree completely. Portability has always been one of the primary design guidelines of HelenOS.
Anyway, thanks for the recommendation, and if there is anything in particular that you feel a broader audience should know about HelenOS, please feel free to weigh in. My focus has been on L4Re specifically, but there are always possibilities to learn from what other systems do.
Well, we have a nice web site with resources (but the documentation can always be better :)) and I believe the source code is well-commented. We have a welcoming community on the mailing list and on the IRC channel.
If I should mention one URL that I would suggest as a starting point, then this is it: http://www.helenos.org/wiki/FAQ
Best regards
Martin Decky