Opened 12 years ago

Last modified 8 years ago

#417 assigned enhancement

Port HelenOS to an existing 32-bit MIPS board / computer

Reported by: Jakub Jermář Owned by: Jakub Jermář
Priority: major Milestone:
Component: helenos/kernel/mips32 Version: mainline
Keywords: gsoc12 Cc:
Blocker for: Depends on:
See also:

Description (last modified by Jakub Jermář)

Port HelenOS to an existing 32-bit MIPS board / computer.

Details
HelenOS has run on two virtual mips32 platforms since very early in its history. At one point in time, a version of HelenOS even ran on the simulated MIPS Malta evaluation board. Unfortunately, the support for the only real MIPS hardware has been removed after some serious bit rot occurred in it. The current version of HelenOS/mips32 runs only on the machine emulated by the msim simulator and on the GXemul's oldtestmips machine.

The goal of this project is to port HelenOS to a real 32-bit MIPS machine, such as the MIPS Malta evaluation board.

What Gains and Benefits will this bring?
It turns out that our mips32 support will be more useful if we change our focus from running on exotic and, sometimes, troublesome virtual platforms that are each supported by exactly one simulator, to running on existing hardware which is also emulated by multiple simulators (Qemu, GXemul, Simics etc.)
Difficulty
This project falls somewhere between medium and difficult on our difficulty scale. The fact that an ancient version of HelenOS once ran on MIPS Malta makes it a little bit less difficult as there will be no surprises in the core kernel support needed (i.e. no changes are expected). On the other hand, HelenOS has evolved and grown extraordinarily since then and there will be some new problems to solve, such as defeating the 4M boot image size limit. Moreover, the peripheral devices on the MIPS Malta evaluation board are basically PC-peripherals so the project can be extended in an interesting way by making sure HelenOS can make use of some of these devices.
Required skills
A successful applicant will be an experienced C programmer feeling comfortable touching all areas of HelenOS ranging from the boot code to the kernel and user space. The candidate shall not be afraid of learning / using the MIPS assembly and tweaking the HelenOS build configuration files.
Documentation
Possible mentors
HelenOS Core Team, Jakub Jermar

Change History (8)

comment:1 by Jakub Jermář, 12 years ago

Description: modified (diff)

comment:2 by Jakub Jermář, 12 years ago

Keywords: needswork added

comment:3 by Jakub Jermář, 12 years ago

Description: modified (diff)
Summary: Port HelenOS/mips32 to some existing board / computerPort HelenOS to an existing 32-bit MIPS board / computer

comment:4 by Jakub Jermář, 12 years ago

Description: modified (diff)
Keywords: needswork removed

comment:5 by Jakub Jermář, 11 years ago

Keywords: gsoc13 added

comment:6 by Jakub Jermář, 11 years ago

Keywords: gsoc13 removed
Milestone: 0.5.1
Owner: changed from Martin Decky to Jakub Jermář
Status: newassigned

I am taking ownership of this ticket as I am reviving and improving the support for the MIPS Malta development board.

comment:7 by Jakub Jermář, 10 years ago

Milestone: 0.6.00.7.0

Support for MIPS Malta is still half-baked, retargeting for after 0.6.0.

comment:8 by Jakub Jermář, 8 years ago

Milestone: 0.6.1
Note: See TracTickets for help on using tickets.