Mainline linux kernel, working on wii?
April 09, 2012 06:32PM
I'm trying to compile a newer version of the linux kernel for my wii because I'm having problems with the pegasus2 driver used by my usb to ethernet device (random kernel panics and crashes) but I only can get working the version 2.6.32 with mikep5 patches. Are not included all the patches in the mainline kernel?
I don't have any problem with my crosscompiling tools and even the wii seems to be executing kernel code, the blue led flashes, but I cannot see anything in the TV neither connect by ssh. I compiled them using my old .config and the default one (for wii) included in the kernel tree.
I tried a lot of different versions newer than 2.6.32 always with the same results, I am missing something?

Re: Mainline linux kernel, working on wii?
December 28, 2012 10:14AM
First of all, you will need a custom toolchain. Secondly you'll need some patches for the mainline 2.X kernel. I don't think that that breaks the wiibrew forums rules, so you might want to check out my wii linux from scratch guide which can be found here .
Re: Mainline linux kernel, working on wii?
January 26, 2013 06:18PM
Hey nouboh

Did you end up compiling with a newer version? I wanted to learn about cross compiling, the linux kernel, and whatnot, and decided that trying to get a newer kernel on the Wii would be a good goal. But if you were successful, then there is really no need.

I'm trying to compile against the 3.7.4 kernel. I thought that all the patches were pushed ( as per ), but apparently only most of them were. That's where I believe the conflics are comming from, not being able to load video drivers or SD card drivers. I'm currently trying to fix up the patch to be applicable to this current branch.

Any comments, questions or pushes in the right direction are appreciated. Ill post my finding / work here too.
Re: Mainline linux kernel, working on wii?
February 14, 2013 04:21PM
So to give an update, the kernel DOES compile, but when booted on the wii, it goes to that funky green screen and then does nothing. Im still trying to look for any logs of the kernel loading, but have yet to find any.

To compile the kernel, I make my own powerpc toolchain from crosstool-ng [] instead of the no longer supported Crosstool as it says in the wiki. Ill post a tutorial on how later, but their tutorial is good (As another note, what archetecture are we suposed to build for? I did the "powerpc-unknown-linux-uclibc" compiled against the 3.4 kernel, but i'm not sure thats the right tool (I also forget why I chose that arch)).
I then loaded up the default wii config file provided in the kernel, run menuconfig with the toolchain to check the settings ( They look very, very different than the 2.6.32 settings, but its pointing to the wii drivers), then compile with the toolchain.

The kernel will compile without a hitch, but it has not yet worked on the wii.

I'll post more when I figure out more.
Re: Mainline linux kernel, working on wii?
February 15, 2013 12:55PM
I am working on it too, for my wii linux distro and experience the same problem. Any new information will be greatly appreciated.
Re: Mainline linux kernel, working on wii?
February 24, 2013 06:15AM
For those who may be interested, I've been working on forward porting the Mini Kernel Preview Five Wii/Gamecube patch to more recent Kernels. Currently, I've been mostly successful in porting everything in it that's not already merged in the mainline 3.0.y Kernel and it boots successfully with the except of GPIO support. I think I know what the issue is, but It'll likely still be about another week before I can release it publically as I still need to debug a few things first. As my programming knowlege is quite limited in "C", I'll eventually need someone to review my changes. Probably the easiest way to do this would be through Git/Github. I'll try to post here before the end of the month again when I have more information.
Re: Mainline linux kernel, working on wii?
February 28, 2013 04:57PM
Good news everyone, I was successful in getting GPIO support to compile as well as everything else that wasn't already merged in the 3.0.y Linux Kernels. Unfortunately, I'm unable to debug everything such as the Gecko USB modules and as expected, there is little to be gained by using a 3.0.y Kernel. I tried to foreward port this farther to 3.4 and 3.8 and there was a slight improvement with each. 3.2, 3.3, and 3.7 all suffered from huge regressions in mainline similar to what the sound did in 2.6.34 and I/O speeds did in 2.6.37. Due to some sever Winter weather that has been occuring here, I'm going to have to push my public release date back by at least a week. When I do eventually get a chance (after all the snow removal), I'll create a public Git repository and link it with my Github account under "". If everything works out, I should have a 3.8.y build completed by sometime next month (in March of 2013).

Due to a hard drive failure, I lost the 3.1+ Kernel ports and decided to just release the 3.0 Kernel as 3.7-rc1 has an unknown error that prevents both IOS and MINI from booting. I can't get any debug info (just a black screen), so until something changes, the farthest I can port it to is 3.6. Due to all the regressions between 3.1 and 3.5, I've decided not to forward port this again unless there is a huge demand for it. It actually should be quite easy to port to 3.4 longterm, but I can't remember how I fixed the MINI mode boot issue that shows up in Kernel 3.1. If someone could track the commit that causes this, I would gladly make an attempt to fix it (provided I have the time); just contact me through Github. I would greatly appreciate it if others with experience in "C" could take a look at the my patch and make sure I didn't leave anything crtiical out.

Edited 2 time(s). Last edit at 04/09/2013 12:54AM by DeltaResero.
Sorry, only registered users may post in this forum.

Click here to login