FreeBSD/mips TODO
Item |
Status |
Contact |
super pages for MIPS |
Planning stages |
|
Create mips binutils port in /usr/ports |
Preliminary work done, needs more testing and integration |
|
Create mips gcc port in /usr/ports |
Started, doesn't work yet, issues with building libgcc as part of the port |
|
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 |
|
Finish au1xxx port |
Initial port in tree, much work is needed. NetBSD code could be a good base |
|
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). |
|
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 |
|
uboot support for executive callbacks for /boot/loader |
planning stages |
|
A POW-only network interface on Octeon. |
Planning stages |
|
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 |
|
Support for the longsoon2 |
wish list item |
|
Mips16 support |
wish list itme |
|
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 |
|
Add support for controlling switches attached to PHY |
wish list item, generally true for all embedded work |
|
Adopt the flattened device tree stuff to the MIPS platform |
wish list item, work in progress on other platforms |
|
Flash file system |
wish list item, generally needed for embedded platforms |
|
Shrink the mips kernel |
Kernel is kinda beefy right now, need to shrink it down a bit |
|
Push FreeBSD gcc changes for mips upstream |
wish list item |
|
Push FreeBSD binutils changes for mips upstream |
wish list item |
|
Push FreeBSD gcc changes for mips upstream |
wish list item |
|
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. |
|
NanoBSD configuration for the RouterStation or similar device |
wish list item |
|
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 |
|
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. |
|
AR71xx CPUs need workaround for AR5212-based cards |
patch published, need to commit |
|
USB stack needs better awareness for cache-line size |
hacks for one SoC published, but a more general solution is needed |
|
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. |
|
Add support for Octeon as a PCI bus device |
wish list item |
|
Launch simple executive images from FreeBSD on Octeon |
wish list item |
|
Build the kernel on Linux |
wish list item. Also, this one is a general item for FreeBSD |
|
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. |
|
Flesh out support for hard floating point. Add support for doing lazy FPU register saving. |
Wish list item |
|
Extend COMPAT_FREEBSD32 to support emulating both n32 and o32 on n64 kernels. |
Wish List item |
Pick one and code.