Date: Mon, 7 Nov 2005 11:18:34 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-arch@freebsd.org Cc: ed@fxq.nl, Rink Springer <rink@stack.nl> Subject: Re: FreeBSD/xbox: updated 7.0 patchset Message-ID: <200511071118.35041.jhb@freebsd.org> In-Reply-To: <20051106222359.GC46752@stack.nl> References: <20051106222359.GC46752@stack.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
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@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200511071118.35041.jhb>