At present the port consists of three components:
One optional component adds some value:
At present the port is known to be functional on the following hardware devices:
In the future, the port is likely to support at least the following additional devices:
In the past, the port has also been used via the QEMU emulator (QEMU-OMAP3, Maemo QEMU). However it is not currently known whether QEMU’s OMAP3 emulation has reached the state where running RISC OS from within QEMU is again feasible.
There is also scope for expanding the port to support other SoC’s made by other manufacturers, e.g. the Freescale i.MX515
This table lists the current state of all planned tasks.
Task | Description/Status | Assigned to |
---|---|---|
OMAP3 HAL – Basic implementation | Implementation is complete and functional under qemu/beagleboard. However further work may still be needed. | Jeffrey Lee, Uwe Kall |
OMAP3 HAL Video driver? | Functional, but further work is needed to iron out bugs and improve capabilities. | See linked page |
OMAP3 HAL – Audio driver | Audio output functional on beagleboard. May need minor changes for other board types. Audio input needs a proper API before the driver can be extended to support it. | Jeffrey Lee |
OMAP3 HAL – SD/MMC support | – | Uwe Kall |
OMAP3 HAL – GPMC support | Support for devices connected to the GPMC controller (extra RAM, onboard NAND, etc.) | – |
OMAP3 HAL – CMOS/NVRAM support/emulation | In progress? | Alan Williams? |
OMAP3 HAL – Keyboard scan at boot | Unassigned | – |
OMAP3 HAL – DMA support | In progress | Jeffrey Lee |
OMAP3 HAL – RTC support | Complete! | – |
Kernel – Basic support | Kernel is functional on both qemu and beagleboard. But further work may still be needed. | Jeffrey Lee |
Kernel – ARM feature registers | Extend OS_PlatformFeatures (or similar) to allow reading of ARM feature registers. Provide suitable feature register values for old ARMs that don’t implement the feature registers. | – |
VFPU support | Code to initialise VFPU. APCS amendments and compiler/OS support to allow its use by programs. New FPEmulator to provide VFPU emulation for old ARMs. Possibility of special FPEmulator that emulates old FPU instructions by executing new VFPU instructions instead of using software emulation. | – |
ARM v6/v7 instruction set support | Assembler support in BASIC, objasm and cc, and disassembler support in decaof and Debugger. Contact ROOL if you’re interested in working on objasm, cc or decaof under NDA, these are closed-source. | ROOL, other |
Pandora support | Support for Pandora-specific hardware – keyboard, touchscreen, RTC, etc. | – |
Touch Book support | Support for TouchBook-specific hardware – keyboard, touchscreen, accelerometer, etc. | – |
i.MX515 support | New HAL and associated code to support Freescale’s i.MX515 Cortex-A8 implementation. A developer’s program for i.MX515 is available. | – |
Kernel – New video mode support | Support for video modes with new pixel formats (R5G5B5, A4R4G4B4, etc.) See here | – |
USB – OHCI | Will require an OMAP3530 board that supports OHCI (beagleboard uses an external tranceiver that only supports EHCI). In theory, only need to add HAL code to configure USB host for OHCI and to report its presence to RISC OS. | – |
USB – EHCI | Complete; believed to be fully functional. | – |
USB – OTG | In progress. Both host & peripheral mode are now functional. Lots of work still to be done; see the MUSBDriver page for more details. | Jeffrey Lee |
Disc image | We believe this is mostly finished. Please get in touch if you find anything missing/broken. | ROOL |