On Jan 3, 2016, at 2:27 PM, Mark Cave-Ayland wrote:
> On 03/01/16 19:01, Programmingkid wrote:
>
>>>> The rtl8139 did not work on the mac99 target. I didn't see the timeout message.
>>>> I did use your rtl8139 patchset fix.
>>>
>>> I think this might be because we're missing an interrupt mapping as they
>>> are currently hard-coded in OpenBIOS.
>>>
>>> Quick hack alert: take a look at OpenBIOS's drivers/pci.c and in
>>> particular ob_pci_host_set_interrupt_map(). See how at the moment we
>>> patch in hard-coded interrupt-parent nodes to link each device node to
>>> the interrupt controller? Maybe try adding something like the following
>>> for the rtl8139 card:
>>>
>>> target_node = find_dev("/pci/pci10ec,8139");
>>> set_int_property(target_node, "interrupt-parent", dnode);
>>>
>>> Does that then get the rtl8139 card to work under -M mac99 correctly?
>>
>> Sorry it doesn't. I paste your code right below the "if (dnode) {".
>
> Ah well. Thought it was worth a quick shot.
I did find out that the driver's init() and start() methods are never called. Using the ioreg command I can see the rtl8139 in the PCI slot. The NIC does work in Linux using the mac99 target. Note: I implemented your second set of patches for the rtl8139 and the booting from cd patchset.