FreeBSD/xbox: updated 7.0 patchset
John Baldwin
jhb at freebsd.org
Mon Nov 7 08:19:00 PST 2005
On Sunday 06 November 2005 05:23 pm, Rink Springer wrote:
> Hello everyone,
>
> I'd like to present my 7.0-CURRENT XBOX patches. If you put 'options
> XBOX' in your kernel after applying this patch, you will get a kernel
> that is bootable on both ordinary i386 PC's as well as XBOX'es. 'device
> xboxfb' is an XBOX-capable frame buffer.
>
> You can download the patches from
> http://rink.nu/downloads/xbox-patches/xbox-7-current.diff. I hope this
> patch will be committed to the FreeBSD source tree. Let me know any
> suggestions for improvements.
>
> The XBOX option depends on I686_CPU and will error out if it is not
> supplied. The overall patch is just over 1000 lines, mainly due to the
> framebuffer driver. You will need the most recent CVS version of
> Cromwell [1], as it now fakes FreeBSD boot info so the initial entry
> won't halt the CPU. This removes the patches in the locore.s file.
>
> For some reason, the kernel will not work fine if you have syscons in your
> kernel. This only affects the XBOX, so either syscons crashes it somehow
> or it gets a higher priority. However, as the current framedriver driver
> needs to be syscon(4)-ized, I intend to port the framebuffer to the VESA
> framework. Assistance on this is very welcome.
>
> Finally, I am willing to maintain this so future FreeBSD's will run on
> the XBOX without any issues. Work is underway for the nForce ethernet as
> well as an improved syscons(4)-able console driver.
>
> [1] This is the Linux BIOS for the XBOX; it was patched in order to boot
> FreeBSD correctly.
It might be nice to have as much of pci16l.s in C as possible for ease of
maintenance. For example, at least two of the functions I looked at in there
just call a p16l_setbits() and that could be done via an inline function in a
header file.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-arch
mailing list