'Mini' Kernel Preview Four (aka MIKE p4)
Note: This kernel is now obsolete. MIKE p5 should be used instead.
This new release supports the Nintendo Wii WLAN daughter card via the wireless-testing integration tree.
This kernel release is targeted at people interested in Linux on the Nintendo Wii which have already installed Bootmii on their video game consoles.
What's new in MIKE p4
Linux kernel 2.6.31
MIKE p4 is based on the recently released Linux kernel v2.6.31.
Updated support for the Nintendo Wii WLAN daughter card
The Nintendo Wii WLAN card is now supported through patches targeted at mainline integration. There has been a joint effort between gc-linux.org (Albert Herranz) and b43 (Michael Buesch) to bring support for the Nintendo Wii WLAN card upstream.
The needed patches are partly already in mainline (SSB over SDIO support) and partly heading mainline via Andrew Morton's -mm tree (while the MMC subsystem gains again a maintainer), the wireless-testing tree from John W. Linville, Michael Buesch's b43 patch queue and the linux-wireless mailing list.
You can find links to some pre-built binary images compatible with whiite-linux based distros (i.e. you can use one of these kernel images instead of the one that came originally with your whiite-linux system). Please, read the whiite-linux article to learn how to setup a barebones whiite-linux system, and the rest of this document to learn how to properly use the kernel images.
|Environment||Video mode||Kernel image|
|mini||480i PAL (60Hz)||mikep4-zImage-2.6.31.mini.480i(PAL60).elf|
|mini||576i PAL (50Hz)||mikep4-zImage-2.6.31.mini.576i(PAL).elf|
|mini||480p PAL (60Hz)||mikep4-zImage-2.6.31.mini.480p(PAL).elf|
|mini||480i NTSC (60Hz)||mikep4-zImage-2.6.31.mini.480i(NTSC).elf|
|mini||480p NTSC (60Hz)||mikep4-zImage-2.6.31.mini.480p(NTSC).elf|
The following hardware/peripherals are supported by the MIKE p4 kernel (same as in MIKE p3):
"Classic" hardware - Non-accelerated 2D video hardware (VI) - Note: correct RGB framebuffer support requires our SDL library port - Audio hardware (AI,DSP) - EXI hardware (EXI) - (not compiled-in) Nintendo SD Card Adapter (DOL-019) or compatibles - (not compiled-in) Non-SDHC MMC/SD cards in SPI mode via a Nintendo DOL-019 or compatible adapter - Real Time Clock / SRAM - Serial Interface hardware (SI) - Nintendo GameCube controllers - Nintendo GameCube WaveBird wireless controllers
"Native" hardware - MEM2 memory as normal RAM - SDHC and Non-SDHC SD cards in SD mode via the front SD card slot - Internal USB Bluetooth dongle - Nintendo Wii Remote (RVL-003) and related expansion accessories - Sensor bar - USB 1.x and 2.0 devices - Internal wireless network card
The following hardware/peripherals are NOT yet supported:
"Classic" hardware - Nintendo GameCube memory cards
"Native" hardware - Internal DVD drive
mini must have IPC_SDHC_EXIT support
MIKE won't work properly unless a version of 'mini' with IPC_SDHC_EXIT support is used. Nor the version of mini included in Bootmii beta1 nor the one bundled with Bootmii beta2 support the IPC_SDHC_EXIT call.
You can use Bootmii public Beta 3 or alternatively you can download a ready-to-use armboot.bin with IPC_SDHC_EXIT support.
You can also build your own binary from sources using latest git from:
Make sure that you have copied armboot.bin (either mikep1-armboot.bin or armboot.bin from Beta 3 or higher) to /bootmii/armboot.bin within your SD card before attempting to use any of the mini-based MIKE kernel images.
Note that you don't need to upgrade armboot.bin if you already installed the one that came with MIKE p1.
Extra features of MIKE p4 when running under mini (vs IOS)
- EHCI (USB 2.0) is supported
- Increased I/O bandwidth for SDHC, USB 1.x and USB 2.0
- Additional 11 MB of RAM are available
- Internal WLAN is supported
Notes when running MIKE p4 under mini
Root device name changes
The same MIKE p4 binary can run under mini and under IOS. However, if you plan to run MIKE p4 under IOS you need to make sure that the kernel command line is modified to reflect the proper root device, as the name is different in each case:
kernel image may be only booted as /bootmii/ppcboot.elf
Due to SD card driver bugs in Bootmii menu it may be impossible to successfully boot MIKE using the SD card browser in Bootmii.
If your card is affected, the kernel won't get loaded and control will be returned to the Bootmii menu. If you have a USBGecko you can see the following error messages coming from Bootmii menu:
ENTRY APPS is a dir! NEW SD PATH: '/APPS' ENTRY MINI-L~1 is a dir! NEW SD PATH: '/APPS/MINI-L~1' ENTRY BOOT.ELF is a file! Trying to boot.. FILE: /APPS/MINI-L~1/BOOT.ELF loading 2201273 bytesDMA timeout 00000000 sdmmc: MMC_READ_BLOCK_MULTIPLE failed for card 0 with 60
In this case, the only solution for now may be to copy the kernel image (mikep4-zImage-2.6.31.mini.*.elf) as /bootmii/ppcboot.elf and let mini launch the kernel directly when the console boots (mini doesn't suffer from the above mentioned SD card bugs) or when launched via the Boot Mii option in the Homebrew Channel.
The problem with this approach is that you cannot have both Bootmii menu and the MIKE kernel on the same SD card at the same time.
Video mode may need to be specified on the kernel command line
When mini boots the kernel (as ppcboot.elf) the video hardware isn't initialized, and thus, the kernel cannot guess the right video mode.
See the Graphics and Sound article on how to specify a video mode using the kernel command line, or use a pre-built kernel image that matches your video mode settings.
Hint: You can hexedit the kernel image and replace the existing kernel command line with your own. Look for the string "placeholder_for_additional_kernel_options_targetted_at_hexedit_lovers" within the kernel image.
OHCI (USB 1.x) may have issues
The OHCI controllers found on the Nintendo Wii video game consoles seem to have hardware bugs. The current OHCI driver adds two quirks to workaround the observed incorrect behaviours until now.
Issues will be addressed as they are detected.