On 2012-01-13 16:57, Andreas Färber wrote:
> Am 13.01.2012 10:21, schrieb Jan Kiszka:
>> On 2012-01-13 04:09, Andreas Färber wrote:
>>> +    isa_bus = DO_UPCAST(ISABus, qbus, qdev_get_child_bus(&pci->qdev, 
>>> "isa.0"));
>>> +
>>> +    i8259 = isa_bus->irqs;
>>
>> I think this is unneeded.
> 
> The problem here was that isa_get_irq() needs an ISADevice*, not just
> the ISABus*, so I had to access ->irqs directly at this point.

Which is a hack that should not be merged.

> 
> Some of the later ISA devices are optional, others will be moved to the
> pc87312. The i8042 might be an option if we really have to.
> 
>> You only access i8259[8] later on for
>> initializing the m48t59.
> 
> And immediately following your quote i8259[9] and i8259[11] for the host
> bridge.

I was looking at upstream. Which patch is this?

> 
> The alternative would be to access the i8259's IRQs (initialized in the
> PCI-ISA bridge needing the PCI host bridge) via a QOM property from
> here. Or access the PCI host bridge from the PCI-ISA bridge init.
> 
>> But that one should be creatable as ISA device
>> now (m48t59_init_isa), no? Please check.
> 
> Ah, that matches a patch by Hervé confusingly named "fix compilation".
> Using the ISA version even resolves the m48t59 io_base issue I reported
> earlier. I'll send a separate patch and rebase onto that.

What about the other IRQs? Can they be associated with ISADevices as well?

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux

Reply via email to