Busy, busy, busy

Ah yes, my neglected Gentoo blog. Probably should update that once in a while, so here it goes.

I’ve been busy with a new university project, but the best part is that I get to work with a dual Cell blade. The PPU/SPU combination is really an interesting platform. It’s an amazing DSP and it runs Linux pretty well too. :) If you’re up for a challenge, programming for the SPUs is quite a bit of fun and pretty affordable with the PS3.

In BCM43xx news, we’re getting closer to figuring out the LO issues. There’s one major bug remaining that basically turns down the TX power, but it’s proven to be extremely elusive so far, but hopefully we’ll track it down soon. I’ve also started writing specifications for the draft-n cards that Broadcom has released. These have much more hardware control than the older cards and as such, the specifications will not require as much work to write. Hopefully within the next few weeks I’ll have that finished, especially now that the mac80211 stack has gotten the first patches for draft-n support in the stack. Hopefully we’ll get full support sooner in the lifecycle of the chipset rather than later this time around.

In Mac-On-Linux news, I’ve added support for SDL sound. It uses a bit more CPU, but it is a whole lot less “skippy” than the old sound drivers. It still needs some tweaking, but things seem to work pretty well. Right now, I’m working on writing a new SDL video driver. Once these are finished, a real MacOSX port should be viable again. :) Also, Nathan Smith (our newest PPC AT) is working on a menuing system for easy management of Mac-On-Linux VMs, which is greatly appreciated!

As for Gentoo, I haven’t found too much time for bugs lately, only a few here and there. I really need to get back into having a personal “Bug Day” every other weekend just so I can catch up and get things done. Or maybe I shouldn’t be blogging and should get back to work. ;)

Ubuntu and PowerPC

So, I’ve been asked three times in as many days if Ubutunu’s discussion about potentially dropping PowerPC as a supported platform is an indicator of Gentoo/PowerPC’s future.

Simple answer? No. :)

Gentoo/PowerPC is here to stay. Ubunutu is free to allocate their resources as they see fit, but I don’t see the point in dropping a platform that is still actively developed. Consider that if the Playstation3 sells even a tenth of the PS2 units sold, there will be an additional 10 million PowerPC systems that can run PowerPC linux out of the box. Genesi’s Efika is now shipping and there are plenty of affordable PowerPC Macs still available in the Used market. All 3 of the new gaming consoles have PowerPC processors, really, things don’t look so bad. Cut and run? Not us! Sure, our target audience may change somewhat to better support non-apple machines, but still, the Gentoo/PowerPC port is just as viable as it ever has been. :)

Aside from keeping the doomsday folks quiet, I’ve been busy working on an embedded board (Xilinx ML403) for a university project. It was really simple to configure a uclibc root and get Linux booting, all using Gentoo of course. :) When I finish with the project I’ll try to document the process in case anyone else is planning on using one of these boards. In any case, big thanks to the Gentoo Embedded team for their great work on making this so easy and for giving me another reason why Gentoo is still the distro that best meets my needs.

Mac On Linux

I’ve been maintaining Mac On Linux for a while now, but I’ve finally broken down and admitted that it doesn’t look like the original author is coming back. It’s a shame really, MOL is an awesome piece of software for PowerPC processors. It lets you virtualize MacOS or MacOSX from within Linux. There’s some initial support for running Linux inside MOL as well. So, since I really didn’t want to see this project die, I’ve started a Mac-On-Linux SourceForge Project. The new feature that I’m currently working on is compressed disk support (qcow and dmg) for system images. I’ve checked in preliminary support for that so feel free to check out the CVS version and test it out! :)

In bcm43xx news, johill has been very busy working on the firmware. We now know a whole lot more about the PHY registers, so much so that most of spec needs to be rewritten :p That said, we understand how things work now, so in the future better drivers should be on the way. mb has been busy getting bcm43xx working properly on WRT as well which should increase the number of devs and testers available. Always a good thing!

Chris White: Glad to see you like PPC assembly! As I’m sure you’ve found out by now, it’s way easier to work with than x86 asm. :)

Sharp Zaurus SD/MMC Driver

Another busy week at school (who knew graduate classes would take so much time? :P ), but I found some time to finish up most of the translation from ARM assembly -> C for the LoCoMo SD/MMC driver found in the Zaurus 5×00 models. The specs are up here: Zaurus SD/MMC Specs. RP, the main kernel hacker for OZ has already offered to write a driver based off these specs! I guess I’ll need something new to hack on soonish. ;)

In bcm43xx news, there has been lots of issues with hard locks using kernel version in 2.6.18, it seems locking related. If you’re having some of these issues, please take a look at Larry’s patches here: Larry’s FTP as well as mb’s softmac locking patch on netdev.

Hi everyone! It’s my first blog post, be gentle.

So I’m not really very good about this whole blogging thing, as evidenced by my complete lack of postings over the summer. But you’ve got to get started somewhere, so here it goes. :)

For those that aren’t familiar with what I do around here, I help to keep the PowerPC port of Gentoo up to date. Lately, this has been mostly on the documentation side of things due to time constraints, but that’s okay, every little bit helps!

So what else have I been doing? Well, besides going back to University for the first time in 2 years, I’ve been working on finishing the specs for the Broadcom 43xx series of wireless chips. We recently started documenting the Version 4 driver series which includes a new, incompatible transmit header format. One interesting thing about adding support for the Version 4 driver is that there is a public place to get the firmware from Broadcom. This means we could potentially offer an ebuild for bcm43xx-firmware in the future. :) Also, this driver includes much more debugging information than previous drivers, so the new specs should be much more complete than the previous “Version 3″ specs.

I’ve also started poking at the SD/MMC driver for the Sharp Zaurus (I’ve got an SL-5000D), and I was happy to find that ARM assembly is actually not all that hard to read. I really like the postfix conditionals and the way they clean up simple conditional statements. Branching for an if/else in other assembly languages seems like such overkill now!

Finally, I’ve been working on a new version of xac (my SoC X configuration tool). The best new feature is the ability to add additional monitors through a dialog based “GUI”. I’m hoping to get the last few issues worked out soon, but it really depends on the amount of free time I have in the next week.