FreeBSD/mips TODO

Item

Status

Contact

super pages for MIPS

Planning stages

WarnerLosh

Create mips binutils port in /usr/ports

Preliminary work done, needs more testing and integration

WarnerLosh

Create mips gcc port in /usr/ports

Started, doesn't work yet, issues with building libgcc as part of the port

WarnerLosh

Enable external tools more easily

Some support for external toolchain in tree, due to clang work, more work needed to expand that work to include binutils

WarnerLosh

Finish au1xxx port

Initial port in tree, much work is needed. NetBSD code could be a good base

WarnerLosh

Cleanup CPU_xxx usage in the tree

Almost all CPUs are configured as CPU_MIPS4k, which is wrong. They should migrate to the appropriate CPU_xxx (CNMIPS64, MIPS24K, etc).

WarnerLosh, AdrianChadd

QEMU with NIC support

There's only limited support for qemu with a NIC in the tree right now. This needs to be well tested so we can create 'virtual machines' running on fast x86 processors for easier development

WarnerLosh, OleksandrTymoshenko, AdrianChadd

uboot support for executive callbacks for /boot/loader

planning stages

WarnerLosh

A POW-only network interface on Octeon.

Planning stages

JuliMallett

Improved binutils in the base to compile /rescue properly

Likely needs to move binutils to 2.17 or 2.17.50.0.17 (last gplv2 of the redhat binutils fork

WarnerLosh

Support for the longsoon2

wish list item

WarnerLosh

Mips16 support

wish list itme

WarnerLosh

Multilib build support

Need to hack the FreeBSD build system to allow for multilibs to be built and installed in the right place for o32, n32 and n64

WarnerLosh

Add support for controlling switches attached to PHY

wish list item, generally true for all embedded work

AdrianChadd, StefanBethke

Adopt the flattened device tree stuff to the MIPS platform

wish list item, work in progress on other platforms

WarnerLosh

Flash file system

wish list item, generally needed for embedded platforms

WarnerLosh

Shrink the mips kernel

Kernel is kinda beefy right now, need to shrink it down a bit

WarnerLosh

Push FreeBSD gcc changes for mips upstream

wish list item

WarnerLosh

Push FreeBSD binutils changes for mips upstream

wish list item

WarnerLosh

Push FreeBSD gcc changes for mips upstream

wish list item

WarnerLosh

PCI bus enumeration improvements

wish list item: freebsd needs to be able to allocate memory for PCI busses more generically. Also I/O space as well as bus numbering. Very important to embedded systems with no PCIBIOS and firmware that does not configure PCI resources optimally.

WarnerLosh JuliMallett

NanoBSD configuration for the RouterStation or similar device

wish list item

WarnerLosh

FreeBSD /usr/port of Cavium's pci booting tools so we can put cavium offload boards into x86 boxes and debug that way

wish list item

WarnerLosh

Provide better separation between SoC, CPU and board

preliminary doodles posted, but really need someone to drive this. NetBSD has a std.foo hierarchy that seems to work well. We should look at adopting it not only for FreeBSD/mips, but all platforms.

WarnerLosh

AR71xx CPUs need workaround for AR5212-based cards

committed

WarnerLosh

USB stack needs better awareness for cache-line size

hacks for one SoC published, but a more general solution is needed

WarnerLosh

Better support for threads for CPUs with thread support

sched_ule is better about threads and locality than sched_bsd, but other parts of the system need better thread awareness and support. Efficient use of the threading units needs to improve.

WarnerLosh

Add support for Octeon as a PCI bus device

wish list item

WarnerLosh

Launch simple executive images from FreeBSD on Octeon

wish list item

WarnerLosh

Build the kernel on Linux

wish list item. Also, this one is a general item for FreeBSD

WarnerLosh

Add support for processors with custom CP2 co-processors

Wish list item. Here we need to treat CP2 like we treat floating point and do lazy save/restore of these registers once the process has touched the CP2.

OleksandrTymoshenko

Flesh out support for hard floating point. Add support for doing lazy FPU register saving.

Wish list item

WarnerLosh

Extend COMPAT_FREEBSD32 to support emulating both n32 and o32 on n64 kernels.

Wish List item

WarnerLosh

Pick one and code.

FreeBSD/mips/todo (last edited 2013-10-23 13:12:22 by AdrianChadd)