Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
Found this to solve my problem on 10A190 with incompatible PCIe device that led to KP on boot: http://macos9lives.com/smforum/index.php?topic=3233.0

Code to disable a device for a given boot:
Code:
dev @device@
" reg" delete-property
" interrupts" delete-property
" none" encode-string " compatible" property
device-end

Where @device@ stands for specific device, in my case it was pci3.
 
Just wanted to say a THANK YOU for the info in this thread.

Fooling around with OSs and thought Id killed my G4 iBook:
couldn't boot, couldn't eject the CD, couldn't get to OF. No key combination would result in any change. Could turn it on..to nothing, then the power light would go off. Used the caps lock key to see if alive or not.

Then found I could power on via button, hold down to power off, power on and hold the button down, would peep and could hear the HD working, continue to hold down and the open was : 'shut-down or 'continue to boot' (cant remember exact wording) which would take me back to a seemingly dead (almost) iBook..or to boot up the previous OS...which I lacked understanding off.

But I could eject the CD and replace it with a Leopard one..but still no go.

Then found this thread..(which I was missing thru not asking the right question worded correctly basically) and:
o To reset the system NVRAM, enter reset-nvram

o To reset all changes made to Open Firmware, enter set-defaults

o To reset the machine, enter reset-all

..and yep - got back to Leopard booting...and now Sorbet installed.

Hurrah !!!
..so glad to have my iBook back!!!
 
  • Like
Reactions: Raging Dufus
Here find attached TN1061 TechNote on OF. I don't grok it (yet). I've succeeded a few times and failed many times to boot from USBslow.slow on my TiBook and just came across this lot which I'm going to try to get my head around in order to install OpenBSD (again) as I borked it a couple of years ago. Optical drive is nadgered.
 

Attachments

  • TN1061-Fundamentals of Open Firmware.zip
    218.2 KB · Views: 50
Can anyone guide me on how to tell OpenFirmware how to boot from pci that it sees in a printenv command?
 
You'll have to be more specific.

A disk controller?

New World Mac or Old World?
PowerPC G5 Quad I have an 128gb achi drive out of a MacBook air and a pcie adapter . I can load Sorbet Leopard onto it and in startup disks it recognized as a bootable drive but... when you select it it doesn't boot. So I've tried to go into open firmware and "point" to the drive I want to boot but I cannot figure out the commands I need. When I run devalias I don't think you can see the drive but when you run printenv command it clearly shows up..
 
PowerPC G5 Quad I have an 128gb achi drive out of a MacBook air and a pcie adapter . I can load Sorbet Leopard onto it and in startup disks it recognized as a bootable drive but... when you select it it doesn't boot. So I've tried to go into open firmware and "point" to the drive I want to boot but I cannot figure out the commands I need. When I run devalias I don't think you can see the drive but when you run printenv command it clearly shows up..
 

Attachments

  • tempImage5p0iNq.png
    tempImage5p0iNq.png
    4.8 MB · Views: 67
  • tempImagedO4N7M.png
    tempImagedO4N7M.png
    5.3 MB · Views: 44
  • tempImageRYv7AR.png
    tempImageRYv7AR.png
    5.7 MB · Views: 50
  • tempImageSHmly1.png
    tempImageSHmly1.png
    7.3 MB · Views: 53
PowerPC G5 Quad I have an 128gb achi drive out of a MacBook air and a pcie adapter . I can load Sorbet Leopard onto it and in startup disks it recognized as a bootable drive but... when you select it it doesn't boot. So I've tried to go into open firmware and "point" to the drive I want to boot but I cannot figure out the commands I need. When I run devalias I don't think you can see the drive but when you run printenv command it clearly shows up..
Your AHCI device is this one:
https://admin.pci-ids.ucw.cz/read/PC/144d/a801

If the AHCI device doesn't have a PCI option ROM with Open Firmware fcode then it probably won't boot since the Quad G5 doesn't have an AHCI PCI class fcode driver.
I don't know of anything that has a AHCI fcode driver.

Code:
------------------------------------
Quad G5 PCI class fcode drivers:

https://pci-ids.ucw.cz/read/PD/06/07        # PCI-CARDBUS
https://pci-ids.ucw.cz/read/PD/06/04        # PCI-PCI
https://pci-ids.ucw.cz/read/PD/0C/03/10     # usb-openhci
https://pci-ids.ucw.cz/read/PD/0C/00/10     # firewire-OHCI

------------------------------------
Quad G5 PCI device fcode drivers:

https://pci-ids.ucw.cz/read/PC/106B/0043    # K2 ATA/100
https://pci-ids.ucw.cz/read/PC/106B/0050    # Shasta IDE
https://pci-ids.ucw.cz/read/PC/106B/004C    # K2 GMAC (Sun GEM)
https://pci-ids.ucw.cz/read/PC/106B/0051    # Shasta (Sun GEM) Sungem ethernet controller
https://pci-ids.ucw.cz/read/PC/1166/0240    # K2 SATA
https://pci-ids.ucw.cz/read/PC/14E4/4301    # BCM4301 802.11b Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/4320    # BCM4306 802.11b/g Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/1648    # NetXtreme BCM5704 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/16A7    # NetXtreme BCM5703X Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/1668    # NetXtreme BCM5714 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/166A    # NetXtreme BCM5780 Gigabit Ethernet


------------------------------------
All Quad G5 fcode image names:

PCI-CARDBUS
PCI-PCI
usb-openhci
firewire-OHCI
uata
k2-gmac
sata
pci80211
BCOM
XModem
Device-Channel
scc
VSP
sb-mpic
PCI-Capabilities
i2c-bus-legacy
Pulsar
Pulsar-sys-clock
smu
smu-fans
smu-motor
smu-umotor-control
smu-umotor
smu-i2c-controller
smu-i2c-bus
smu-motors
smu-sensors
smu-switches
SMUtnik
Table00
Table30
Table35
Table60
Table70
Table75
PCI50
PCI100
PCIE50
sata-disk
HT-BRIDGE
K2-BRIDGE
DS1631
DS1775
MAX6690
Q63
Platform-do-Q63
Enclosure-Q63

Use telnet in Open Firmware to get the output of the following command:
dev / ls unselect-dev dump-device-tree
We are interested in all the info under the pci144d,a801 device.

AHCI booting was discussed at https://forums.macrumors.com/threads/booting-from-ahci-ssds-on-powerpc-using-a-redirect.2370850/
 
Your AHCI device is this one:
https://admin.pci-ids.ucw.cz/read/PC/144d/a801

If the AHCI device doesn't have a PCI option ROM with Open Firmware fcode then it probably won't boot since the Quad G5 doesn't have an AHCI PCI class fcode driver.
I don't know of anything that has a AHCI fcode driver.

Code:
------------------------------------
Quad G5 PCI class fcode drivers:

https://pci-ids.ucw.cz/read/PD/06/07        # PCI-CARDBUS
https://pci-ids.ucw.cz/read/PD/06/04        # PCI-PCI
https://pci-ids.ucw.cz/read/PD/0C/03/10     # usb-openhci
https://pci-ids.ucw.cz/read/PD/0C/00/10     # firewire-OHCI

------------------------------------
Quad G5 PCI device fcode drivers:

https://pci-ids.ucw.cz/read/PC/106B/0043    # K2 ATA/100
https://pci-ids.ucw.cz/read/PC/106B/0050    # Shasta IDE
https://pci-ids.ucw.cz/read/PC/106B/004C    # K2 GMAC (Sun GEM)
https://pci-ids.ucw.cz/read/PC/106B/0051    # Shasta (Sun GEM) Sungem ethernet controller
https://pci-ids.ucw.cz/read/PC/1166/0240    # K2 SATA
https://pci-ids.ucw.cz/read/PC/14E4/4301    # BCM4301 802.11b Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/4320    # BCM4306 802.11b/g Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/1648    # NetXtreme BCM5704 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/16A7    # NetXtreme BCM5703X Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/1668    # NetXtreme BCM5714 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/166A    # NetXtreme BCM5780 Gigabit Ethernet


------------------------------------
All Quad G5 fcode image names:

PCI-CARDBUS
PCI-PCI
usb-openhci
firewire-OHCI
uata
k2-gmac
sata
pci80211
BCOM
XModem
Device-Channel
scc
VSP
sb-mpic
PCI-Capabilities
i2c-bus-legacy
Pulsar
Pulsar-sys-clock
smu
smu-fans
smu-motor
smu-umotor-control
smu-umotor
smu-i2c-controller
smu-i2c-bus
smu-motors
smu-sensors
smu-switches
SMUtnik
Table00
Table30
Table35
Table60
Table70
Table75
PCI50
PCI100
PCIE50
sata-disk
HT-BRIDGE
K2-BRIDGE
DS1631
DS1775
MAX6690
Q63
Platform-do-Q63
Enclosure-Q63

Use telnet in Open Firmware to get the output of the following command:
dev / ls unselect-dev dump-device-tree
We are interested in all the info under the pci144d,a801 device.

AHCI booting was discussed at https://forums.macrumors.com/threads/booting-from-ahci-ssds-on-powerpc-using-a-redirect.2370850/
Thank you for the reply . I can tell you that I can get the drive to boot through a usb device The drive itself is out of a 2017 MacBook air. and using the usb device shown it will boot. so the drive is OK the issue is the card im using. I understand you statement regarding a rom on the pcie card but it is advertised and driverless so Im guessing I will need to find someone who can write this fcode driver for the chipset on the card?? That is the only thing preventing this machine from getting full use of the 128 gb drive.
 

Attachments

  • tempImageGbNh5e.png
    tempImageGbNh5e.png
    7.1 MB · Views: 46
  • tempImagevRfq5y.png
    tempImagevRfq5y.png
    6.1 MB · Views: 58
  • tempImageJB66uF.png
    tempImageJB66uF.png
    6.3 MB · Views: 57
  • tempImagecQduta.png
    tempImagecQduta.png
    1.7 MB · Views: 54
Your AHCI device is this one:
https://admin.pci-ids.ucw.cz/read/PC/144d/a801

If the AHCI device doesn't have a PCI option ROM with Open Firmware fcode then it probably won't boot since the Quad G5 doesn't have an AHCI PCI class fcode driver.
I don't know of anything that has a AHCI fcode driver.

Code:
------------------------------------
Quad G5 PCI class fcode drivers:

https://pci-ids.ucw.cz/read/PD/06/07        # PCI-CARDBUS
https://pci-ids.ucw.cz/read/PD/06/04        # PCI-PCI
https://pci-ids.ucw.cz/read/PD/0C/03/10     # usb-openhci
https://pci-ids.ucw.cz/read/PD/0C/00/10     # firewire-OHCI

------------------------------------
Quad G5 PCI device fcode drivers:

https://pci-ids.ucw.cz/read/PC/106B/0043    # K2 ATA/100
https://pci-ids.ucw.cz/read/PC/106B/0050    # Shasta IDE
https://pci-ids.ucw.cz/read/PC/106B/004C    # K2 GMAC (Sun GEM)
https://pci-ids.ucw.cz/read/PC/106B/0051    # Shasta (Sun GEM) Sungem ethernet controller
https://pci-ids.ucw.cz/read/PC/1166/0240    # K2 SATA
https://pci-ids.ucw.cz/read/PC/14E4/4301    # BCM4301 802.11b Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/4320    # BCM4306 802.11b/g Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/1648    # NetXtreme BCM5704 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/16A7    # NetXtreme BCM5703X Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/1668    # NetXtreme BCM5714 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/166A    # NetXtreme BCM5780 Gigabit Ethernet


------------------------------------
All Quad G5 fcode image names:

PCI-CARDBUS
PCI-PCI
usb-openhci
firewire-OHCI
uata
k2-gmac
sata
pci80211
BCOM
XModem
Device-Channel
scc
VSP
sb-mpic
PCI-Capabilities
i2c-bus-legacy
Pulsar
Pulsar-sys-clock
smu
smu-fans
smu-motor
smu-umotor-control
smu-umotor
smu-i2c-controller
smu-i2c-bus
smu-motors
smu-sensors
smu-switches
SMUtnik
Table00
Table30
Table35
Table60
Table70
Table75
PCI50
PCI100
PCIE50
sata-disk
HT-BRIDGE
K2-BRIDGE
DS1631
DS1775
MAX6690
Q63
Platform-do-Q63
Enclosure-Q63

Use telnet in Open Firmware to get the output of the following command:
dev / ls unselect-dev dump-device-tree
We are interested in all the info under the pci144d,a801 device.

AHCI booting was discussed at https://forums.macrumors.com/threads/booting-from-ahci-ssds-on-powerpc-using-a-redirect.2370850/
I ran your command and too much data was populated. I have to use a telnet program on my mac and you can't search the output. Ill try with a pc tomorrow
 
I think you can install telnet from Homebrew on the Mac.
Or you can use an app like Serial.app which supports telnet.
 
Your AHCI device is this one:
https://admin.pci-ids.ucw.cz/read/PC/144d/a801

If the AHCI device doesn't have a PCI option ROM with Open Firmware fcode then it probably won't boot since the Quad G5 doesn't have an AHCI PCI class fcode driver.
I don't know of anything that has a AHCI fcode driver.

Code:
------------------------------------
Quad G5 PCI class fcode drivers:

https://pci-ids.ucw.cz/read/PD/06/07        # PCI-CARDBUS
https://pci-ids.ucw.cz/read/PD/06/04        # PCI-PCI
https://pci-ids.ucw.cz/read/PD/0C/03/10     # usb-openhci
https://pci-ids.ucw.cz/read/PD/0C/00/10     # firewire-OHCI

------------------------------------
Quad G5 PCI device fcode drivers:

https://pci-ids.ucw.cz/read/PC/106B/0043    # K2 ATA/100
https://pci-ids.ucw.cz/read/PC/106B/0050    # Shasta IDE
https://pci-ids.ucw.cz/read/PC/106B/004C    # K2 GMAC (Sun GEM)
https://pci-ids.ucw.cz/read/PC/106B/0051    # Shasta (Sun GEM) Sungem ethernet controller
https://pci-ids.ucw.cz/read/PC/1166/0240    # K2 SATA
https://pci-ids.ucw.cz/read/PC/14E4/4301    # BCM4301 802.11b Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/4320    # BCM4306 802.11b/g Wireless LAN Controller
https://pci-ids.ucw.cz/read/PC/14E4/1648    # NetXtreme BCM5704 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/16A7    # NetXtreme BCM5703X Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/1668    # NetXtreme BCM5714 Gigabit Ethernet
https://pci-ids.ucw.cz/read/PC/14E4/166A    # NetXtreme BCM5780 Gigabit Ethernet


------------------------------------
All Quad G5 fcode image names:

PCI-CARDBUS
PCI-PCI
usb-openhci
firewire-OHCI
uata
k2-gmac
sata
pci80211
BCOM
XModem
Device-Channel
scc
VSP
sb-mpic
PCI-Capabilities
i2c-bus-legacy
Pulsar
Pulsar-sys-clock
smu
smu-fans
smu-motor
smu-umotor-control
smu-umotor
smu-i2c-controller
smu-i2c-bus
smu-motors
smu-sensors
smu-switches
SMUtnik
Table00
Table30
Table35
Table60
Table70
Table75
PCI50
PCI100
PCIE50
sata-disk
HT-BRIDGE
K2-BRIDGE
DS1631
DS1775
MAX6690
Q63
Platform-do-Q63
Enclosure-Q63

Use telnet in Open Firmware to get the output of the following command:
dev / ls unselect-dev dump-device-tree
We are interested in all the info under the pci144d,a801 device.

AHCI booting was discussed at https://forums.macrumors.com/threads/booting-from-ahci-ssds-on-powerpc-using-a-redirect.2370850/
/ht@0,f2000000/pci@5/pci144d,a801@0
PROPERTIES:
TCZeroLimited
assigned-addresses 82080024 00000000 80100000 00000000 00002000
class-code 00010601
compatible pci144d,a801
pci144d,a801
pciclass,010601

device-id 0000a801
devsel-speed 00000000
interrupts 00000001
max-latency 00000000
min-grant 00000000
msi-capability 00080050
name pci144d,a801
pci-e-capability 00080070
reg 00080000 00000000 00000000 00000000 00000000
02080024 00000000 00000000 00000000 00002000
revision-id 00000001
subsystem-id 0000a801
subsystem-vendor-id 0000144d
vendor-id 0000144d
 
/ht@0,f2000000/pci@5/pci144d,a801@0
PROPERTIES:
TCZeroLimited
assigned-addresses 82080024 00000000 80100000 00000000 00002000
class-code 00010601
compatible pci144d,a801
pci144d,a801
pciclass,010601

device-id 0000a801
devsel-speed 00000000
interrupts 00000001
max-latency 00000000
min-grant 00000000
msi-capability 00080050
name pci144d,a801
pci-e-capability 00080070
reg 00080000 00000000 00000000 00000000 00000000
02080024 00000000 00000000 00000000 00002000
revision-id 00000001
subsystem-id 0000a801
subsystem-vendor-id 0000144d
vendor-id 0000144d
No surprises here.

The class code confirms it's an AHCI device.
https://admin.pci-ids.ucw.cz/read/PD/01/06/01

There's no list of words (such as open and close) with the properties so it can't be used as a boot device.

If it had a AHCI Open Firmware driver then it would have those words. I suppose it would also have sub devices for each AHCI port or it could have a disk sub device that you could use to specify a AHCI port (like how SCSI has one disk sub device that can be used to open any disk attached to the SCSI bus with one of the seven possible SCSI IDs).
 
No surprises here.

The class code confirms it's an AHCI device.
https://admin.pci-ids.ucw.cz/read/PD/01/06/01

There's no list of words (such as open and close) with the properties so it can't be used as a boot device.

If it had a AHCI Open Firmware driver then it would have those words. I suppose it would also have sub devices for each AHCI port or it could have a disk sub device that you could use to specify a AHCI port (like how SCSI has one disk sub device that can be used to open any disk attached to the SCSI bus with one of the seven possible SCSI IDs).
So does that mean even if there was an open firmware "driver" it still wouldn't boot?
 
So does that mean even if there was an open firmware "driver" it still wouldn't boot?
It means an Open Firmware driver is needed to create all the parts needed to boot.

Someone would have to make a AHCI driver for Open Firmware. Sources of info: The AHCI specification, Linux AHCI driver, UEFI AHCI driver, Open Firmware specification, various Open Firmware bindings for mass storage device related buses (scsi, usb, floppy, etc.)
 
It means an Open Firmware driver is needed to create all the parts needed to boot.

Someone would have to make a AHCI driver for Open Firmware. Sources of info: The AHCI specification, Linux AHCI driver, UEFI AHCI driver, Open Firmware specification, various Open Firmware bindings for mass storage device related buses (scsi, usb, floppy, etc.)
Ok I have someone looking into it lets see what he comes up with Thanks for your input
 
Someone was too impatient, tried running grackle ARC firmware on their uninorth ibook g4, bricked it by running a little endian ELF from OF directly which sets little-endian? on and reboots...

They found this page https://mac-classic.com/articles/resetting-a-bricked-mac-that-wont-boot/ which describes "hold down power button + command key"

...this is the trick I was missing! this is the special combination the bootrom looks for, to go into the programmers mode that drops to an OF shell and doesn't use NVRAM from flash, so you can reset nvram from OF directly and save your little-endian? bricked uninorth laptops!
 
  • Like
Reactions: eastone
Someone was too impatient, tried running grackle ARC firmware on their uninorth ibook g4, bricked it by running a little endian ELF from OF directly which sets little-endian? on and reboots...

They found this page https://mac-classic.com/articles/resetting-a-bricked-mac-that-wont-boot/ which describes "hold down power button + command key"

...this is the trick I was missing! this is the special combination the bootrom looks for, to go into the programmers mode that drops to an OF shell and doesn't use NVRAM from flash, so you can reset nvram from OF directly and save your little-endian? bricked uninorth laptops!
funnily enough the source of that is from this very forum-ish :)


(managed to use it myself a few years back to unbrick an iBook G4 of mine)
 
  • Like
Reactions: Rairii
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.