[OpenBIOS] [PATCH 1/6] Fix encoding of PCI and IDE "interrupts" properties

Mark Cave-Ayland mark.cave-ayland at ilande.co.uk
Tue Aug 2 10:50:03 CEST 2016


On 02/08/16 08:01, Howard Spoelstra wrote:

>> On 02 Aug 2016, at 07:35, Benjamin Herrenschmidt <benh at kernel.crashing.org> wrote:
>>
>> The main IDE interrupt and the PCI LSIs are level sensitive
>> which is represented by a "1" in the device-tree.
>>
>> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
>> ---
>> drivers/ide.c | 2 +-
>> drivers/pci.c | 2 +-
>> 2 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/ide.c b/drivers/ide.c
>> index 1da60c8..53a0b80 100644
>> --- a/drivers/ide.c
>> +++ b/drivers/ide.c
>> @@ -1630,7 +1630,7 @@ int macio_ide_init(const char *path, uint32_t addr, int nb_channels)
>> 			props[2] = 0x00000000;
>> 			break;
>> 		}
>> -		props[1] = 0x00000000; /* XXX level triggered on real hw */
>> +		props[1] = 0x00000001;
>> 		props[3] = 0x00000000;
>> 		NEWWORLD(set_property(dnode, "interrupts",
>> 			     (char *)&props, 4*sizeof(props[0])));
>> diff --git a/drivers/pci.c b/drivers/pci.c
>> index 5062f30..2cffa2f 100644
>> --- a/drivers/pci.c
>> +++ b/drivers/pci.c
>> @@ -1510,7 +1510,7 @@ static void ob_pci_host_set_interrupt_map(phandle_t host)
>>                         props[ncells++] = intno;
>>                         props[ncells++] = dnode;
>>                         props[ncells++] = arch->irqs[intno - 1];
>> -                        props[ncells++] = 3;
>> +                        props[ncells++] = 1;
>> #else
>>                         /* Keep compiler quiet */
>>                         dnode = dnode;
>> -- 
>> 2.7.4
>>
>>
>> -- 
>> OpenBIOS                 http://openbios.org/
>> Mailinglist:  http://lists.openbios.org/mailman/listinfo
>> Free your System - May the Forth be with you
> 
> Wow, these patches allow the USB2 controller to show up when booting a Leopard DVD image and thus provide keyboard/mouse in the installer. During the boot process, only when a disk image is attached, Leopard no longer boots to the installer but hangs on “ still waiting for root device” . 

Actually the bottom part of the diff in drivers/pci.c affects all PCI
devices - does it help with the rtl8139 networking in OS 9 at all?


ATB,

Mark.




More information about the OpenBIOS mailing list