Hacking Linux help, please?

Quincy

Your own personal guitarist :3
Member
Joined
Nov 13, 2008
Messages
1,608
Trophies
1
Age
29
Location
Your house
Website
youtek.net
XP
1,221
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!
 
  • Like
Reactions: Ray Lewis

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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...
 
  • Like
Reactions: Ray Lewis

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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
 
  • Like
Reactions: the_randomizer

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
31,284
Trophies
2
Age
38
Location
Dr. Wahwee's castle
XP
18,969
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.
 

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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.

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...
 
  • Like
Reactions: Ray Lewis

Maxternal

Peanut Gallery Spokesman
Member
Joined
Nov 15, 2011
Messages
5,210
Trophies
0
Age
40
Location
Deep in GBAtemp addiction
Website
gbadev.googlecode.com
XP
1,709
Country
^ 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
These are from the ARM ("Starlet") side so notice the note in the top left of the chart about converting for use with PPC.
wii_hw_diagram_v2.png
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.
 

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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
 

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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.
 
  • Like
Reactions: Ray Lewis

Ray Lewis

Banned!
OP
Banned
Joined
Dec 30, 2012
Messages
1,518
Trophies
0
XP
419
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
Wrong again
 

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
Country
United States
Awesome Ninja, this is the stuff that makes me smile. One thing to note is that in vWii mode, only PART of the Wii U GPU is used. I want to say the Wii hardware is basically IN the Wii U, then for Wii U "mode" it is like 3x the Wii. This seems to be the GENERAL view that I have read. I know the gamepad (screen) will not work in vWii mode. Never considered if this could get just the PAD without the screen to work, interesting....

So, although using 3 cores it seems that not all the Wii U hardware will be accessible. MARCAN MAY REVEAL more workarounds and did hint at some in his blog.

WITHOUT bluetooth, and needing a wiimote to control anything in vWii mode, THIS is a snag for sure:-(

It seems the bluetooth is going to be the largest snag. Then to be clear, this is strictly from Ubuntu I see. Does the PenguinPPC angle have anything to use;-) I did not dive into that in detail as I am at work. I can take a few minutes for breaks here/there. Might look at this later. It is basic but seriously, a great start. "Here is our hardware, here is what we need drivers for...here is what we see...here is what we will need...."

So, unless I am missing something, aside from the 3 core stuff Maxternal is working on, it appears the bluetooth is a huge hurdle. NOW, I wonder if something may "Appear" to use the gamepad without the Wiimote to navigate this Linux. Comex or somebody else would need to answer this. I will check around because I am WILLING TO BET this bluetooth driver would be out there for Linux and could be "incorporated" by us here (or whoever actually gets it ready for end users to run with). Am I off my rocker Ninja?

--I bet the wireless signal/auth routine from gamepad to Wii U tuns off in vWii mode. This is something Marcan or the gamepad "people' Marcan said are working on it would know. I know the SCREEN on the gamepad needs Wii U mode to work as in vWii mode the GPU basically does not work for it. However, IF the wireless hardware to connect to the gamepad/screen could be accessed, then why not be able to use it without needing the screen active? Curious, but again, somebody more TECHNICAL would need to answer this. Marcan hates my guts, guaranteed. He has pictures of me and throws darts at it (joking). IF somebody who is on Marcan's good side would ask him about this (gamepad in vWii mode without screen on, accessing wireless hardware gamepad uses), that would be awesome.

EDIT: sound...should be detected but is it different for Wii and vWii also, or runs through the same hardware? It may be something Linux just "has" but need to find out if vWii sound is controlled by same hardware. Good point Ninja, the HDMI.


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 :)
 

Ray Lewis

Banned!
OP
Banned
Joined
Dec 30, 2012
Messages
1,518
Trophies
0
XP
419
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.
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 :)
 

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
31,284
Trophies
2
Age
38
Location
Dr. Wahwee's castle
XP
18,969
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...

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
 

Ninja_Carver

Well-Known Member
Member
Joined
Dec 27, 2012
Messages
364
Trophies
0
Age
39
XP
652
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.
 
  • Like
Reactions: djbubba2002

Ray Lewis

Banned!
OP
Banned
Joined
Dec 30, 2012
Messages
1,518
Trophies
0
XP
419
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;-).
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: https://youtube.com/shorts/WOppJ92RgGU?si=KE79L6A_3jESsGQM