Apple PowerMac G5 Quad - FreeBSD
More info on main page.
This machine is tested with (runs) FreeBSD / ppc.
FreeBSD is installed on drive ad0, which is sliced up as this:
ad0s2 - 800k - Apple_Bootstrap - boot partition, contains bootcode ad0s3 - 74G - FreeBSD-UFS - FreeBSD 8.2-release ad0s4 - 4G - FreeBSD-swap - FreeBSD swap partition ad0s5 - 800k - apple-bootstrap - boot partition ad0s6 - 74G - freebsd-ufs - FreeBSD 9.0 current
Work log
2011-03-27: ad0s6 - Finally, after many hours, making and installing world finished. The machine now runs an update FreeBSD 9.0-current on ad0s6. dmesg output: normal, verbose.
root@kg-g5# uname -a FreeBSD kg-g5.kg4.no 9.0-CURRENT FreeBSD 9.0-CURRENT #0: Sun Mar 27 01:52:37 CET 2011 root@kg-g5.kg4.no:/usr/obj/usr/src/sys/GENERIC powerpc
2011-03-26: ad0s6 - booting manually (breaking into boot, unload kernel, set currdev=/ht@0,f2000000/pci@9/k2-sata-root@c/k2-sata@0/disk@0:6,
load /boot/kernel/kernel, boot), trying to upgrade the machine via csup. To avoid panics, I am turning off ntpd, then setting
sysctl machdep.disable_rtc_set=1
. Now running csup. Now making world, which takes a looong time...
2011-03-24: ad0s3 - sound is through the snd_ai2s module, which gives this:
root@kg-g5# cat /dev/sndstat FreeBSD Audio Driver (newpcm: 32bit 2009061500/powerpc) Installed devices: pcm0: <Apple I2S Audio Controller> (play) default root@kg-g5# tail /var/log/messages Mar 24 22:00:00 kg-g5 newsyslog[1374]: logfile turned over due to size>100K Mar 24 22:01:03 kg-g5 kernel: aoagpio1: [ITHREAD] Mar 24 22:01:03 kg-g5 kernel: aoagpio4: [ITHREAD] Mar 24 22:01:03 kg-g5 kernel: pcm0: <Apple I2S Audio Controller> mem 0x10000-0x10fff,0x8000-0x80ff,0x8100-0x81ff irq 28,11,12,30,15,16 on macio0 Mar 24 22:01:03 kg-g5 kernel: pcm0: [ITHREAD]
I also added loading of snd_ai2s to /boot/loader.conf:
root@kg-g5# more /boot/loader.conf snd_ai2s_load="YES"
2011-03-24: ad0s3 - upgraded to FreeBSD 8.2-stable, using csup and make world. dmesg output: normal, verbose.
root@kg-g5# uname -a FreeBSD kg-g5.kg4.no 8.2-STABLE FreeBSD 8.2-STABLE #1: Thu Mar 24 20:05:45 CET 2011 root@kg-g5.kg4.no:/usr/obj/usr/src/sys/GENERIC powerpc
2011-03-21: ad0s3 - building a new kernel. I want a SMP kernel, and I am using this kernel config file:
root@kg-g5# more /sys/powerpc/conf/G5 # # G5 - GENERIC kernel, plus SMP # based on # GENERIC -- Generic kernel configuration file for FreeBSD/powerpc # include GENERIC ident G5-GENERIC options SMP
Really simple stuff. (Notes to self: the file really lives at /root/kernels/G5, and is linked into the conf directory). Making the new kernel
cd /usr/src make buildkernel KERNCONF=G5 make installkernel KERNCONF=G5
just in case the build fails. Build went ok, but upon booting the new kernel I get this:
avail memory = 1996509184 (1904 MB) SMP: cpu2: skipped -- ID out of range SMP: cpu3: skipped -- ID out of range FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs cpu0: dev=ff89d680 (BSP) cpu1: dev=ff89eb70 panic: Built bad topology at 0x866aec. CPU mask 0xF != 0x3 cpuid = 0 KDB stack backtrace: #0 0x309040 at panic+0x1a4 #1 0x3503ac at smp_topo+0x12c #2 0x3335e8 at sched_setup+0x48 #3 0x2af9cc at mi_startup+0x134 #4 0x100198 at btext+0x98
and there it hangs. Ouch. Later: I found out through the freebsd-ppc mailing list that SMP isn't in 8.2 yet. Ok.
2011-03-20: Ok, let's restore what we backed up. First we add some partitions:
root@kg-g5# gpart add -s 800k -t apple-boot ad0 ad0s5 added root@kg-g5# gpart bootcode -p /boot/boot1.hfs -i 4 ad0
I'll use this to boot the next one, if possible.
root@kg-g5# gpart add -s 74G -t freebsd-ufs ad0 ad0s6 added
Then it is time to newfs it:
root@kg-g5# newfs /dev/ad0s6 /dev/ad0s6: 75776.0MB (155189248 sectors) block size 16384, fragment size 2048 using 413 cylinder groups of 183.72MB, 11758 blks, 23552 inodes. super-block backups (for fsck -b #) at: 160, 376416, 752672, 1128928, 1505184, 1881440, 2257696, 2633952, 3010208, 3386464, 3762720, 4138976, 4515232, 4891488, 5267744, 5644000, 6020256, 6396512, 6772768, 7149024, 7525280, 7901536, 8277792, 8654048, 9030304, 9406560, 9782816, 10159072, 10535328, 10911584, 11287840, 11664096, 12040352, 12416608, 12792864, 13169120, 13545376, 13921632, 14297888, 14674144, 15050400, 15426656, 15802912, 16179168, 16555424, 16931680, 17307936, 17684192, 18060448, 18436704, 18812960, 19189216, 19565472, 19941728, 20317984, 20694240, 21070496, 21446752, 21823008, 22199264, 22575520, 22951776, 23328032, 23704288, 24080544, 24456800, 24833056, 25209312, 25585568, 25961824, 26338080, 26714336, 27090592, 27466848, 27843104, 28219360, 28595616, 28971872, 29348128, 29724384, 30100640, 30476896, 30853152, 31229408, 31605664, 31981920, 32358176, 32734432, 33110688, 33486944, 33863200, 34239456, 34615712, 34991968, 35368224, 35744480, 36120736, 36496992, 36873248, 37249504, 37625760, 38002016, 38378272, 38754528, 39130784, 39507040, 39883296, 40259552, 40635808, 41012064, 41388320, 41764576, 42140832, 42517088, 42893344, 43269600, 43645856, 44022112, 44398368, 44774624, 45150880, 45527136, 45903392, 46279648, 46655904, 47032160, 47408416, 47784672, 48160928, 48537184, 48913440, 49289696, 49665952, 50042208, 50418464, 50794720, 51170976, 51547232, 51923488, 52299744, 52676000, 53052256, 53428512, 53804768, 54181024, 54557280, 54933536, 55309792, 55686048, 56062304, 56438560, 56814816, 57191072, 57567328, 57943584, 58319840, 58696096, 59072352, 59448608, 59824864, 60201120, 60577376, 60953632, 61329888, 61706144, 62082400, 62458656, 62834912, 63211168, 63587424, 63963680, 64339936, 64716192, 65092448, 65468704, 65844960, 66221216, 66597472, 66973728, 67349984, 67726240, 68102496, 68478752, 68855008, 69231264, 69607520, 69983776, 70360032, 70736288, 71112544, 71488800, 71865056, 72241312, 72617568, 72993824, 73370080, 73746336, 74122592, 74498848, 74875104, 75251360, 75627616, 76003872, 76380128, 76756384, 77132640, 77508896, 77885152, 78261408, 78637664, 79013920, 79390176, 79766432, 80142688, 80518944, 80895200, 81271456, 81647712, 82023968, 82400224, 82776480, 83152736, 83528992, 83905248, 84281504, 84657760, 85034016, 85410272, 85786528, 86162784, 86539040, 86915296, 87291552, 87667808, 88044064, 88420320, 88796576, 89172832, 89549088, 89925344, 90301600, 90677856, 91054112, 91430368, 91806624, 92182880, 92559136, 92935392, 93311648, 93687904, 94064160, 94440416, 94816672, 95192928, 95569184, 95945440, 96321696, 96697952, 97074208, 97450464, 97826720, 98202976, 98579232, 98955488, 99331744, 99708000, 100084256, 100460512, 100836768, 101213024, 101589280, 101965536, 102341792, 102718048, 103094304, 103470560, 103846816, 104223072, 104599328, 104975584, 105351840, 105728096, 106104352, 106480608, 106856864, 107233120, 107609376, 107985632, 108361888, 108738144, 109114400, 109490656, 109866912, 110243168, 110619424, 110995680, 111371936, 111748192, 112124448, 112500704, 112876960, 113253216, 113629472, 114005728, 114381984, 114758240, 115134496, 115510752, 115887008, 116263264, 116639520, 117015776, 117392032, 117768288, 118144544, 118520800, 118897056, 119273312, 119649568, 120025824, 120402080, 120778336, 121154592, 121530848, 121907104, 122283360, 122659616, 123035872, 123412128, 123788384, 124164640, 124540896, 124917152, 125293408, 125669664, 126045920, 126422176, 126798432, 127174688, 127550944, 127927200, 128303456, 128679712, 129055968, 129432224, 129808480, 130184736, 130560992, 130937248, 131313504, 131689760, 132066016, 132442272, 132818528, 133194784, 133571040, 133947296, 134323552, 134699808, 135076064, 135452320, 135828576, 136204832, 136581088, 136957344, 137333600, 137709856, 138086112, 138462368, 138838624, 139214880, 139591136, 139967392, 140343648, 140719904, 141096160, 141472416, 141848672, 142224928, 142601184, 142977440, 143353696, 143729952, 144106208, 144482464, 144858720, 145234976, 145611232, 145987488, 146363744, 146740000, 147116256, 147492512, 147868768, 148245024, 148621280, 148997536, 149373792, 149750048, 150126304, 150502560, 150878816, 151255072, 151631328, 152007584, 152383840, 152760096, 153136352, 153512608, 153888864, 154265120, 154641376, 155017632
Ok, ok already. On with the restore (I had previously copied the dump file to the machine):
root@kg-g5# mount /dev/ad0s6 /mnt root@kg-g5# cd /mnt root@kg-g5# gzcat /tmp/g5-root-dump2.gz | restore -rf - warning: ./.snap: File exists expected next file 7371777, got 10 root@kg-g5#
That was it. Let's try to verify it:
root@kg-g5# cd root@kg-g5# umount /mnt root@kg-g5# fsck -y /dev/ad0s6 fsck: Could not determine filesystem type
Huh? Let's try it another way:
root@kg-g5# mount /dev/ad0s6 /mnt root@kg-g5# fsck /mnt fsck: Could not determine filesystem type
Oh well, since it can be mounted, it should be good. And indeed it is good. I had to boot it manually, by breaking into the boot prompt (before the kernel boots) and entering
set currdev=/ht......disk@0:6 unload kernel load kernel boot
to get the right kernel to boot (currdev was ...disk@0:3 initially, which I guessed was ad0s3). Of course I forgot to modify /etc/fstab on that slice (ad0s6), so the first time it mounted ad0s3 as root partition. But it didn't crash, and that was easily enough fixed. After that, manually changing load device (currdev) works.
2011-03-20: thermal monitoring - I renamed my "fancontrol" to thermald, put it into /usr/local/bin and made a little script for starting in /usr/local/etc/rc.d/thermald. Tested, and appears to work well.
2011-03-20: reinstall time. I booted from the FreeBSD 8.2-release CD for powerpc, started a shell and did:
# gpart delete -i 3 ad0 ad0s4 deleted # gpart delete -i 2 ad0 ad0s3 deleted Then I made new ones: # gpart add -s 74G -t freebsd-ufs ad0 ad0s3 added # gpart add -s 4 G -t freebsd-swap ad0 ad0s4 added
Unfortunately, sysinstall still saw the old partitions, so I had to reboot to get the new ones visible. After the reboot, the installation worked nicely. dmesg output: normal, verbose. First step after installation was to get my "fancontrol" program compiled and set up, to quiet those load fans. Seems to work nicely.
2011-03-20: using dump for backup:
root@kg-g5# dump -C16 -0af - /dev/ad0s3 | gzip -2 | ssh -c blowfish tingo@v2 dd of=/var/tmp/g5-root-dump.gz DUMP: WARNING: should use -L when dumping live read-write filesystems! DUMP: Date of this level 0 dump: Sun Mar 20 16:03:45 2011 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/ad0s3 (/) to standard output DUMP: mapping (Pass I) [regular files] DUMP: Cache 16 MB, blocksize = 65536 Password: DUMP: mapping (Pass II) [directories] DUMP: estimated 1176099 tape blocks. DUMP: dumping (Pass III) [directories] DUMP: dumping (Pass IV) [regular files] DUMP: DUMP: 1172383 tape blocks DUMP: finished in 186 seconds, throughput 6303 KBytes/sec DUMP: DUMP IS DONE 639856+2 records in 639856+1 records out 327606535 bytes transferred in 202.457124 secs (1618153 bytes/sec) root@kg-g5#
Should have used -L, oh well. Here is one with -L:
root@kg-g5# dump -C16 -0aLf - /dev/ad0s3 | gzip -2 | ssh -c blowfish tingo@v2 dd of=/var/tmp/g5-root-dump2.gz Password: DUMP: Date of this level 0 dump: Sun Mar 20 16:16:47 2011 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping snapshot of /dev/ad0s3 (/) to standard output DUMP: mapping (Pass I) [regular files] DUMP: Cache 16 MB, blocksize = 65536 DUMP: mapping (Pass II) [directories] DUMP: estimated 1176101 tape blocks. DUMP: dumping (Pass III) [directories] DUMP: dumping (Pass IV) [regular files] DUMP: DUMP: 1172384 tape blocks DUMP: finished in 185 seconds, throughput 6337 KBytes/sec DUMP: DUMP IS DONE 639857+2 records in 639857+1 records out 327606856 bytes transferred in 799.990385 secs (409513 bytes/sec)
The snapshot took quite a long time to generate.
2011-03-20: documenting drives and stuff. The machine has two drives, one for OS X and one for FreeBSD. OS X hard drive:
root@kg-g5# dmesg | grep ad1 ad1: 239372MB <Maxtor 6L250M0 BANC1G10> at ata3-master UDMA100 SATA 1.5Gb/s root@kg-g5# gpart show ad1 => 5 490234747 ad1 APM (234G) 5 262203 - free - (128M) 262208 489972528 2 apple-hfs (234G) 490234736 16 - free - (8.0K)
FreeBSD hard drive (320 GB):
root@kg-g5# dmesg | grep ^ad0 ad0: 305245MB <SAMSUNG HD322HJ 1AG01113> at ata2-master UDMA100 SATA 1.5Gb/s root@kg-g5# gpart show ad0 => 18 625142430 ad0 APM (298G) 18 1600 1 apple-boot (800K) 1618 616562688 2 freebsd-ufs (294G) 616564306 8388608 3 freebsd-swap (4.0G) 624952914 189534 - free - (93M)
FreeBSD disk usage:
tingo@kg-g5$ df -h Filesystem Size Used Avail Capacity Mounted on /dev/ad0s3 285G 1.1G 261G 0% / devfs 1.0K 1.0K 0B 100% /dev
FreeBSD swap:
root@kg-g5# swapinfo Device 1K-blocks Used Avail Capacity /dev/ad0s4 4194304 0 4194304 0%
Obviously, I'll need to change this if I want to have several FreeBSD versions on it. fstab:
root@kg-g5# more /etc/fstab # Device Mountpoint FStype Options Dump Pass# /dev/ad0s3 / ufs rw 1 1 /dev/ad0s4 none swap sw 0 0
That's it.
2011-03-13: As always, people on the mailing lists (in this case, the freebsd-ppc mailing list) has the answers: temperatures are read from the dev.smusat driver:
tingo@kg-g5$ sysctl dev.smusat dev.smusat.0.%desc: SMU Satellite Sensors dev.smusat.0.%driver: smusat dev.smusat.0.%location: addr=0xb0 dev.smusat.0.%pnpinfo: name=sat compat=smu-sat dev.smusat.0.%parent: iicbus2 dev.smusat.0.cpu_a0_vcore: 1 dev.smusat.0.cpu_a1_vcore: 1 dev.smusat.0.cpu_a0_diode_temp: 37 dev.smusat.0.cpu_a1_diode_temp: 45 dev.smusat.0.cpu_a0_core_current: 21 dev.smusat.0.cpu_a1_core_current: 33 dev.smusat.1.%desc: SMU Satellite Sensors dev.smusat.1.%driver: smusat dev.smusat.1.%location: addr=0xb2 dev.smusat.1.%pnpinfo: name=sat compat=smu-sat dev.smusat.1.%parent: iicbus2 dev.smusat.1.cpu_b0_vcore: 1 dev.smusat.1.cpu_b1_vcore: 1 dev.smusat.1.cpu_b0_diode_temp: 44 dev.smusat.1.cpu_b1_diode_temp: 45 dev.smusat.1.cpu_b0_core_current: 33 dev.smusat.1.cpu_b1_core_current: 34
and fans are controlled with the dev.smu.0.fans controller:
tingo@kg-g5$ sysctl dev.smu.0.fans dev.smu.0.fans.drive_bay_a_intake.minrpm: 1000 dev.smu.0.fans.drive_bay_a_intake.maxrpm: 4000 dev.smu.0.fans.drive_bay_a_intake.rpm: 3997 dev.smu.0.fans.backside.minrpm: 1100 dev.smu.0.fans.backside.maxrpm: 3000 dev.smu.0.fans.backside.rpm: 3003 dev.smu.0.fans.cpu_a_intake.minrpm: 485 dev.smu.0.fans.cpu_a_intake.maxrpm: 3200 dev.smu.0.fans.cpu_a_intake.rpm: 3198 dev.smu.0.fans.cpu_b_intake.minrpm: 485 dev.smu.0.fans.cpu_b_intake.maxrpm: 3200 dev.smu.0.fans.cpu_b_intake.rpm: 3200 dev.smu.0.fans.cpu_a_exhaust.minrpm: 500 dev.smu.0.fans.cpu_a_exhaust.maxrpm: 3200 dev.smu.0.fans.cpu_a_exhaust.rpm: 3197 dev.smu.0.fans.cpu_b_exhaust.minrpm: 500 dev.smu.0.fans.cpu_b_exhaust.maxrpm: 3200 dev.smu.0.fans.cpu_b_exhaust.rpm: 3199 dev.smu.0.fans.cpu_a_pump.minrpm: 1250 dev.smu.0.fans.cpu_a_pump.maxrpm: 3600 dev.smu.0.fans.cpu_a_pump.rpm: 3662 dev.smu.0.fans.cpu_b_pump.minrpm: 1250 dev.smu.0.fans.cpu_b_pump.maxrpm: 3600 dev.smu.0.fans.cpu_b_pump.rpm: 3615 dev.smu.0.fans.expansion_slots_intake.minrpm: 1560 dev.smu.0.fans.expansion_slots_intake.maxrpm: 4500 dev.smu.0.fans.expansion_slots_intake.rpm: 4479
now I only need to control them. Luckily, Nathan Whitehorn sent a link to the program he usea on his dual core G5: powermac112-fancontrol.c. I adapted that by adding in more fans, and called it powermac112-fancontrol-ti.c, and if that one is running, my fans quiet down.
2011-03-12: it seems like this machine has a different fan controller, it doesn't grok the fcu driver:
root@kg-g5# sysctl dev.fcu sysctl: unknown oid 'dev.fcu'
and the fans are full on. It has a SMU unit:
root@kg-g5# sysctl dev.smu dev.smu.0.%desc: Apple System Management Unit dev.smu.0.%driver: smu dev.smu.0.%pnpinfo: name=smu compat=smu dev.smu.0.%parent: nexus0 dev.smu.0.fans.drive_bay_a_intake.minrpm: 1000 dev.smu.0.fans.drive_bay_a_intake.maxrpm: 4000 dev.smu.0.fans.drive_bay_a_intake.rpm: 4001 dev.smu.0.fans.backside.minrpm: 1100 dev.smu.0.fans.backside.maxrpm: 3000 dev.smu.0.fans.backside.rpm: 3000 dev.smu.0.fans.cpu_a_intake.minrpm: 485 dev.smu.0.fans.cpu_a_intake.maxrpm: 3200 dev.smu.0.fans.cpu_a_intake.rpm: 3192 dev.smu.0.fans.cpu_b_intake.minrpm: 485 dev.smu.0.fans.cpu_b_intake.maxrpm: 3200 dev.smu.0.fans.cpu_b_intake.rpm: 3197 dev.smu.0.fans.cpu_a_exhaust.minrpm: 500 dev.smu.0.fans.cpu_a_exhaust.maxrpm: 3200 dev.smu.0.fans.cpu_a_exhaust.rpm: 3201 dev.smu.0.fans.cpu_b_exhaust.minrpm: 500 dev.smu.0.fans.cpu_b_exhaust.maxrpm: 3200 dev.smu.0.fans.cpu_b_exhaust.rpm: 3199 dev.smu.0.fans.cpu_a_pump.minrpm: 1250 dev.smu.0.fans.cpu_a_pump.maxrpm: 3600 dev.smu.0.fans.cpu_a_pump.rpm: 3594 dev.smu.0.fans.cpu_b_pump.minrpm: 1250 dev.smu.0.fans.cpu_b_pump.maxrpm: 3600 dev.smu.0.fans.cpu_b_pump.rpm: 3637 dev.smu.0.fans.expansion_slots_intake.minrpm: 1560 dev.smu.0.fans.expansion_slots_intake.maxrpm: 4500 dev.smu.0.fans.expansion_slots_intake.rpm: 4505 dev.smu.0.sensors.slots_power: 17216 dev.smu.0.target_temp: 55 dev.smu.0.critical_temp: 90 dev.smu.0.server_mode: 1
But reading it doesn't quiet the fans.
2011-03-12: I took the Samsung hard drive out of the other g5, put it into this machine, fixed the fstab (I used the bsdinstall livecd for that; the drive is now ad0, it used to be ad1), and booted FreeBSD from it:
tingo@kg-g5$ uname -a FreeBSD kg-g5.kg4.no 9.0-CURRENT FreeBSD 9.0-CURRENT #119 r217462M: Sat Jan 15 16: @comporellon.tachypleus.net:/usr/obj/powerpc.powerpc/usr/src/sys/GENERIC powerpc
dmesg output: normal, verbose. Output from some commands: ofwdump -ap output, ofwdump -pr / output, pci info:
root@kg-g5# pciconf -lv vgapci0@pci0:10:0:0: class=0x030000 card=0x001010de chip=0x014110de rev=0xa2 hdr=0x00 vendor = 'NVIDIA Corporation' device = 'NVIDIA GeForce 6600 (NV43)' class = display subclass = VGA pcib2@pci1:0:1:0: class=0x060400 card=0x00000000 chip=0x01301166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCI-X bridge' class = bridge subclass = PCI-PCI pcib3@pci1:0:2:0: class=0x060400 card=0x00000000 chip=0x01301166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCI-X bridge' class = bridge subclass = PCI-PCI pcib4@pci1:0:3:0: class=0x060400 card=0x00000000 chip=0x01321166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCIe bridge' class = bridge subclass = PCI-PCI pcib5@pci1:0:4:0: class=0x060400 card=0x00000000 chip=0x01321166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCIe bridge' class = bridge subclass = PCI-PCI pcib6@pci1:0:5:0: class=0x060400 card=0x00000000 chip=0x01321166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCIe bridge' class = bridge subclass = PCI-PCI pcib7@pci1:0:6:0: class=0x060400 card=0x00000000 chip=0x01321166 rev=0xa3 hdr=0x01 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'HT1000 PCIe bridge' class = bridge subclass = PCI-PCI pcib8@pci1:0:7:0: class=0x060400 card=0x00000000 chip=0x0053106b rev=0x00 hdr=0x01 vendor = 'Apple Computer Inc' device = 'PCI Bridge (Shasta)' class = bridge subclass = PCI-PCI pcib9@pci1:0:8:0: class=0x060400 card=0x00000000 chip=0x0054106b rev=0x00 hdr=0x01 vendor = 'Apple Computer Inc' device = 'PCI Bridge (Shasta)' class = bridge subclass = PCI-PCI pcib10@pci1:0:9:0: class=0x060400 card=0x00000000 chip=0x0055106b rev=0x00 hdr=0x01 vendor = 'Apple Computer Inc' device = 'PCI Bridge (Shasta)' class = bridge subclass = PCI-PCI bge0@pci1:5:4:0: class=0x020000 card=0x0085106b chip=0x166a14e4 rev=0x03 hdr=0x00 vendor = 'Broadcom Corporation' device = 'Broadcom NetXtreme Gigabit Ethernet 5780 (BCM5780)' class = network subclass = ethernet bge1@pci1:5:4:1: class=0x020000 card=0x0085106b chip=0x166a14e4 rev=0x03 hdr=0x00 vendor = 'Broadcom Corporation' device = 'Broadcom NetXtreme Gigabit Ethernet 5780 (BCM5780)' class = network subclass = ethernet gem0@pci1:2:15:0: class=0x020000 card=0x00000000 chip=0x0051106b rev=0x00 hdr=0x00 vendor = 'Apple Computer Inc' device = 'Sungem ethernet controler (Shasta)' class = network subclass = ethernet macio0@pci1:1:7:0: class=0xff0000 card=0x00000000 chip=0x004f106b rev=0x00 hdr=0x00 vendor = 'Apple Computer Inc' device = 'Mac I/O controler (Shasta)' ohci0@pci1:1:11:0: class=0x0c0310 card=0x00351033 chip=0x00351033 rev=0x43 hdr=0x00 vendor = 'NEC Electronics Hong Kong' device = 'Dual OHCI controllers plus Single EHCI controller (udp9210)' class = serial bus subclass = USB ohci1@pci1:1:11:1: class=0x0c0310 card=0x00351033 chip=0x00351033 rev=0x43 hdr=0x00 vendor = 'NEC Electronics Hong Kong' device = 'Dual OHCI controllers plus Single EHCI controller (udp9210)' class = serial bus subclass = USB ehci0@pci1:1:11:2: class=0x0c0320 card=0x00e01033 chip=0x00e01033 rev=0x04 hdr=0x00 vendor = 'NEC Electronics Hong Kong' device = 'uPD720100A/101 USB 2.0 Enhanced Host Controller' class = serial bus subclass = USB atapci0@pci1:3:12:0: class=0x01018f card=0x02401166 chip=0x02401166 rev=0x00 hdr=0x00 vendor = 'ServerWorks (Was: Reliance Computer Corp)' device = 'K2 SATA' class = mass storage subclass = ATA ata0@pci1:3:13:0: class=0xff0000 card=0x00000000 chip=0x0050106b rev=0x00 hdr=0x00 vendor = 'Apple Computer Inc' device = 'IDE controler (Shasta)' fwohci0@pci1:3:14:0: class=0x0c0010 card=0x5811106b chip=0x0052106b rev=0x00 hdr=0x00 vendor = 'Apple Computer Inc' device = 'Firewire controler (Shasta)' class = serial bus subclass = FireWire root@kg-g5#
usbconfig output:
root@kg-g5# usbconfig ugen0.1: <OHCI root HUB NEC> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE ugen1.1: <OHCI root HUB NEC> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE ugen2.1: <EHCI root HUB NEC> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE ugen1.2: <Hub in Apple Extended USB Keyboard Mitsumi Electric> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE ugen1.3: <product 0x310b vendor 0x04b3> at usbus1, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON ugen1.4: <Apple Extended USB Keyboard Mitsumi Electric> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON root@kg-g5# Unknown device at ugen1.3: root@kg-g5# usbconfig -u 1 -a 3 dump_device_desc ugen1.3: <product 0x310b vendor 0x04b3> at usbus1, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON bLength = 0x0012 bDescriptorType = 0x0001 bcdUSB = 0x0200 bDeviceClass = 0x0000 bDeviceSubClass = 0x0000 bDeviceProtocol = 0x0000 bMaxPacketSize0 = 0x0008 idVendor = 0x04b3 idProduct = 0x310b bcdDevice = 0x0110 iManufacturer = 0x0000 <no string> iProduct = 0x0000 <no string> iSerialNumber = 0x0000 <no string> bNumConfigurations = 0x0001
Not much more there.
root@kg-g5# usbconfig -u 1 -a 3 dump_curr_config_desc ugen1.3: <product 0x310b vendor 0x04b3> at usbus1, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON Configuration index 0 bLength = 0x0009 bDescriptorType = 0x0002 wTotalLength = 0x0022 bNumInterfaces = 0x0001 bConfigurationValue = 0x0001 iConfiguration = 0x0000 <no string> bmAttributes = 0x00a0 bMaxPower = 0x0032 Interface 0 bLength = 0x0009 bDescriptorType = 0x0004 bInterfaceNumber = 0x0000 bAlternateSetting = 0x0000 bNumEndpoints = 0x0001 bInterfaceClass = 0x0003 bInterfaceSubClass = 0x0001 bInterfaceProtocol = 0x0002 iInterface = 0x0000 <no string> Additional Descriptor bLength = 0x09 bDescriptorType = 0x21 bDescriptorSubType = 0x00 RAW dump: 0x00 | 0x09, 0x21, 0x00, 0x01, 0x00, 0x01, 0x22, 0x34, 0x08 | 0x00 Endpoint 0 bLength = 0x0007 bDescriptorType = 0x0005 bEndpointAddress = 0x0081 <IN> bmAttributes = 0x0003 <INTERRUPT> wMaxPacketSize = 0x0004 bInterval = 0x000a bRefresh = 0x0000 bSynchAddress = 0x0000
and that was the config.
2011-03-12: I tried the bsdinstall-powerpc64-20110308 image, it wouldn't boot with "C", but from Open Firmware (Cmd-Opt-O-F) I could boot it with
boot cd:,\BOOT\LOADER.;1 cd:0
a bit cumbersome, but it works. It booted straight to the menu, I selected LiveCD, then did ifconfig bge0 up, dhclient bge0. Network ok. Everything on the root file system is mounted read-only, so I didn't mess around trying to fix dns etc, I just lived with it. Getting a dmesg off the machine:
dmesg > /tmp/somefile.txt scp /tmp/somefile.txt user@ip-address:~/directory/somefile.txt
dmesg output is here: normal.
2011-03-11: I booted FreeBSD 8.2-release from a CD made from the FreeBSD-8.2-RELEASE-powerpc-disc1.iso image. I held down the Alt (Option) key, the boot selector came up, and i selected the CD, it booted into sysinstall after letting me choose keyboard layout. Cool! From the sound of the fans, it doesn't look like the fcu driver is included in FreeBSD 8.2-release.