Linux help, please?

Discussion in 'Wii U - Hacking & Homebrew' started by Ray Lewis, May 14, 2013.

May 14, 2013

Linux help, please? by Ray Lewis at 6:02 AM (8,076 Views / 3 Likes) 195 Comments

    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    While I began a project to help Maxternal, apparently revisionist history states I did not;-). This thread should be closed for being antiquated and irrelevant. Also, this is something I am not affiliated with.
    Last edited by Ray Lewis, May 28, 2013


    • Member

    Quincy Your own personal guitarist :3

    Member Since:
    Nov 13, 2008
    Message Count:
    1,337
    Location:
    Your house, robbing your stuff
    Country:
    Netherlands
    What exactly are you trying to archieve? If it is 3-core support in Linux.. As soon as you have the code ready, isn't it as simple as launching the Linux dol with the modified code in place of core-initialisation? I believe linux itself already has multiple-coresuport, depending on if the cores are spun up or not. To my understanding: If Linux sees "Hey! Link! Listen! There are three cores available", Linux will automagically utilise all cores. I could be wrong on this tho!
    Ray Lewis likes this.
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    Hi Ray Lewis-
    I'm rather familiar with Linux, though not such much on the PPC platform.

    I do recall a project that was in the works a while back (and appears to still be active) called penguinppc (http://penguinppc.org/).
    This distribution already supports Freescale(IBM) powerpc which I believe the WiiU Espresso Chip is.

    Additionally what Quincy states above, is the Kernel should already support SMP (Symmetrical Multi-Processor). That said, once we have a way to inject the bootloader into the WiiU, we should be able to launch the kernel and boot.

    Once we get there we can say where in the boot process things break, and go from there...
    Ray Lewis likes this.
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Pointless, wrong
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Pointless, wrong
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    Please keep this as an adaptive list of devices/drivers necessary for WiiU to boot Linux.

    Wiki WiiU Hardware Specs:

    Linux Kernel Requirements:
    CPU: PowerPC 750 SMP
    Ubuntu 12.10
    Quoted from: https://help.ubuntu.com/12.10/installation-guide/powerpc/hardware-supported.html
    Code:
      powerpc
    Most systems use this kernel flavour, which supports the PowerPC 601, 603, 604, 740, 750, and 7400 processors. All Apple PowerMac machines up to and including the one marketed as G4 use one of these processors."
     
    Multiprocessor support — also called “symmetric multiprocessing” or SMP — is available for this architecture. However, the standard Ubuntu 12.04 kernel image does not support SMP. This should not prevent installation, since the standard, non-SMP kernel should boot on SMP systems; the kernel will simply use the first CPU.
    In order to take advantage of multiple processors, you'll have to replace the standard Ubuntu kernel. You can find a discussion of how to do this in the section called “Compiling a New Kernel”. At this time (kernel version 3.0) the way you enable SMP is to select “Symmetric multi-processing support” in the “Platform support” section of the kernel config.

    Sound: Over HDMI should work no problem?

    Video: AMD Radeon
    Linux uses 'X11' for its GUI. Ubuntu 12.10 ships with X11 v7.5.
    Driver support for this release of X11 includes:

    Code:
    radeon - ATI RADEON video driver
    radeonhd - AMD GPG (ATI) R5xx/R6xx/R7xx video driver
    RAM/STORAGE: I think is a no-brainer. USB 2.0 support is native to Linux as well.

    WIFI: Quoted from http://www.ifixit.com/Teardown/Nintendo Wii U Teardown/11796/2
    the_randomizer likes this.
    • Member

    the_randomizer The Temp's official fox whisperer

    Member Since:
    Apr 29, 2011
    Message Count:
    11,282
    Location:
    Unknown
    Country:
    United States
    Can Linux output A/V data from multiple sources? I.E. have HDMI for video but output audio via RCA cables? Surely, the OS can allocate drivers to do that. If so, then it could do what Nintendo couldn't, because not all users have access to SPDIF/optical cable inputs on their TVs or have receivers.
    Last edited by the_randomizer, May 14, 2013
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    At work I run a dual-display setting from both DVI and VGA sources.
    As far as audio goes, Yes, you can choose to output your audio over something other than HDMI. Driver support is the key there.

    So in theory, its possible, whether it will work out of the box or not? Who knows, we'll have to wait and see...
    Ray Lewis likes this.
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Pointless
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Wrong per others
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Maxternal Peanut Gallery Spokesman

    Member Since:
    Nov 15, 2011
    Message Count:
    5,190
    Location:
    Deep in GBAtemp addiction
    Country:
    Costa Rica
    ^ I'm not sure if it's also important to know which memory addresses correspond to which hardware and I would hope it would be the same as on an original Wii (same addresses, similar hardware, hopefully) but here's a map of the hardware addresses
    Wii hardware diagram
    There's also some other memory maps on WiiBrew that might help.
    http://wiibrew.org/wiki/Memory_Map
    http://wiibrew.org/wiki/Hardware/Hollywood_Registers

    For simplicity, I would hope that with with AHBPROT disabled you could just use a standard Linux kernel on either Wii or vWii and be able to completely ignore the IOS/mini if you wanted to and just start with a port that just leaves out the missing drivers. (running the kernel directly for 1 core or from the code Marcan described for 3 cores.)

    If you needed any extra drivers, though, the IOS does contain drivers for a lot of stuff so you might be able to just leave the it in place and write simple Linux drivers to replace the missing ones that would just pass those hardware requests on to the IOS (for the bluetooth, for example, in this case).

    EDIT : Just a guess but such a driver may already be implemented in the old IOS version of Wii Linux.
    Last edited by Maxternal, May 14, 2013
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    Yoinked this conclusive hardware list from an external site:

    Credit where due - http://outdatedpenanguncle.blogspot.com/2012/11/nintendo-wii-u-teardown.html
    • IBM Power®-based multi-core processor
    • AMD Radeon-based High Definition GPU
    • 8 GB or 32 GB internal storage with external USB storage and external USB hard drive support
    • 6.2 inch, 854 x 480 pixels LCD touch-screen with motion control and front-facing camera
    • Near-Field Communication (NFC) functionality
    • Broadcom BCM43237KMLG Wireless LAN module
    • Broadcom BCM43362KUB6 802.11n Wireless Module—the same one used in the Roku 2 XS
    • Broadcom BCM20702 Bluetooth 4.0 module
    • Panasonic MN864718 HDMI Controller
    • Samsung KLM8G2FE3B eMMC 8 GB NAND Flash/Memory Controller
    • Micron 2LEI2 D9PXV [part number MT41K256M16HA-125] 4 Gb DDR3L SDRAM (4 x 4 Gb for a total of 16 Gb or 2 GB RAM)
    • DRH-WUP 811309G31
    • Fairchild DC4AY
    • SMC 1224EE402
    • Samsung K9K8G08U1D 4 Gb (512 MB) NAND Flash

    And what are the stuffs hiding inside the Nintendo Wii U controller?
    • Broadcom 20792 KMLG NFC controller
    • T130 MsEu
    • Broadcom BCM4319XKUBG
    • STMicroelectronics UIC-WUP MCE GH226
    • STMicroelectronics MSA3D 01F
    • Texas Instruments TSC 2046I Low Voltage I/O Touch Screen Controller
    • InvenSense ITG-3280 Gyroscope
    • Micron 25Q256A 256 Mb Serial Flash
    • DRC-WUP 811309J31 1217LU603
    • Texas Instruments AIC3012 Audio Converter
    • Texas Instruments 1010007
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Idiotic
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    https://wiki.ubuntu.com/X/Config/HDMI

    Code:
    Video on HDMI is supported by both the -intel and -ati driver.
     
    HDMI sound is a different matter. The sound data is carried over the same wire as video in the various video blanking intervals. So the video driver has to communicate with the audio driver about the current video mode and so on.
    At first glance it appears that HDMI support will be included by the ATI video drivers.
    Ray Lewis likes this.
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Wrong again
    Last edited by Ray Lewis, May 18, 2013
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States

    Ray- In regards to the Bluetooth driver, its a Broadcom device. The nature of Broadcom is to modify their hardware ever so slightly in each revision or application. That said, I don't see an out-of-the-box working driver for the Broadcom BCM20702 Bluetooth 4.0 module, but that doesn't mean that an earlier driver can't be tweaked just slightly to work... However that's passing the border on my abilities, I'm not ASM/Programmer guy by any means :)
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    Well, we can do what we can and hope somebody comes out of the woodwork to help with this part. As Maxternal says; it may be there for us already;-) Cross the bridge when we get there. Thanks for explaining this.
    • Member

    the_randomizer The Temp's official fox whisperer

    Member Since:
    Apr 29, 2011
    Message Count:
    11,282
    Location:
    Unknown
    Country:
    United States
    Excellent, because in my current situation, I either have to use HDMI and not output to my speakers or I use component connections. Glad to hear that it can at least be done.:P
    • Member

    Ninja_Carver New Member

    Member Since:
    Dec 27, 2012
    Message Count:
    240
    Country:
    United States
    If I may make a recommendation.

    Have you considered using Google Docs and creating a shared spreadsheet for the community to collaborate on? Something of a hardware tracker. The hardware, whether we think we have a driver for it already, source, etc?

    Might help in keeping it all in once place and for reference of our fellow developers.
    djbubba2002 likes this.
    • Member

    Ray Lewis New Member

    Member Since:
    Dec 30, 2012
    Message Count:
    1,280
    Country:
    United States
    I have not. Could we made the op have a list then we could leave question mark or something? I can look at your idea later today if you want. Easy enough to mod opp though;-).

SPONSORED LINKS
 

Share This Page