I am trying to install a recent version of Fedora on a PS3, but I'm finding problems. At first I went with Fedora 8 Test 3, but the installer could not recognize the internal hard disk. I then found bug 325111, which described this hard-disk problem and proposed a fix. Seeing that the fix was applied to rawhide, I just went and downloaded a rawhide installation image from the FTP. It's date is Oct 16. Unfortunately, I cannot use this installation image to install Fedora on the machine. When I reach the Installation Method menu, I select FTP. After that, a window appears that says: Title: No driver found Message: Unable to find any devices of the type needed for this installation type. Would you like to manually select your driver or use a driver disk? Buttons: Select driver, Use a driver disk, Back I chose "Select driver", and from the menu (which by the way is unusable because it overflows the screen size) I chose the ps3_gelic one. I can see that the driver correctly discovers the card in the fourth virtual terminal (it prints the MAC address), but Anaconda refuses to recognize it as a network card. I bet that the problem may be very similar to the one described in 325111. If it turns out to be similar, it'd be worth to scan all the sources to make sure all references to devices are correct.
This would probably be a kudzu bug.
*** Bug 345891 has been marked as a duplicate of this bug. ***
Or maybe not kudzu... [root@ps3 ~]# uname -a Linux ps3.infradead.org 2.6.23-6.fc8 #1 SMP Thu Oct 11 13:36:53 EDT 2007 ppc64 ppc64 ppc64 GNU/Linux [root@ps3 ~]# rpm -q kudzu kudzu-1.2.79-1 [root@ps3 ~]# cat testit.py #!/usr/bin/python import kudzu devices = kudzu.probe (kudzu.CLASS_NETWORK, kudzu.BUS_UNSPEC, 0); for device in devices: # (dev, driver, desc) = device print device [root@ps3 ~]# ./testit.py Desc: PlayStation 3 Gigabit Ethernet Driver: ps3_gelic Device: eth0
Extracting the installer's ramdisk.image.gz, running sed -i s/gelic_net/ps3_gelic/g bin/loader and recreating the ramdisk, seems sufficient to fix this. Which means it looks like it might already be fixed in kudzu 1.2.79, and the next build of anaconda will be fine.
Today's rawhide should be better then as I rebuilt anaconda last night against kudzu-1.2.79
Nope, still no good. The only networking device detected by anaconda is the USB ethernet I have plugged in so that I can get to stage2.
(In reply to comment #5) > Today's rawhide should be better then as I rebuilt anaconda last night against > kudzu-1.2.79 The loader in the latest boot.iso still says: CRITICAL: no network device in chooseNetworkInterface This message is displayed when the kudzu's probeDevices function returns no network device. However, according to the messages from the loader, it looks like the ps3_gelic driver is successfully loaded: INFO : loaded ps3_gelic from /modules/modules.cgz ... INFO : inserted /tmp/ps3_gelic.ko
Bizarre. This was working for me. Could it be that it only fails on devices with wireless network?
Ah, I had not tried a device without wireless networking. I just now tried it, and it looks good. This problem seems specific to models with wireless networking.
Yes, my PS3 has wireless.
Does anaconda disregard eth0 because it has wireless extensions and thus somehow doesn't "match" what it expects to find? The way the wireless is done on PS3 is that it's magically bridged to the wired device, I believe.
Yes, something weird happens. Both cards share the same MAC, for example.
I found the reason why the ether was ignored by anaconda. In the chooseNetworkInterface function in anaconda/loader2/net.c, there is a check as following: /* require passing a flag for wireless while our wireless support * sucks */ if (is_wireless_interface(devs[i]->device) && !FL_ALLOW_WIRELESS(flags)) continue; On a PS3 model with wireless networking, the ether network device is also reported as a wireless device because they share the same device name, so the ether device is excluded from the result by this check.
Gah. The ps3 networking device is incredibly broken. And this support isn't upstream either. Although anaconda could say "okay, the wireless device is okay to use" it's still going to look like a wireless device and so we're still going to require an essid to connect to even when being used in wired mode. This will also have the same behavior with NetworkManager. Realistically, we need to pull the patch because there's no way we can do the right thing with its current behavior.
The maintainer of ps3_gelic said that the upcoming wireless networking support in upstream would use a separate device name from the ether device's, and consequently this problem will be solved in the near future. So, at this point, it sounds reasonable to remove wireless networking support on PS3 from the kernel.
Wireless disabled in kernel-2.6.23.1-40.fc8. We can turn it back on again in an update, when there's a suitable driver. Please confirm that the install is fixed, and we can close this bug.
Verified that network (ethernet) installs work on my ps3 now which has a wireless device in it as well. Good enough for F8.