On 13/10/2016 03:22, Pavel Pisa wrote:
But RTEMS i8269 support has been broken to disable
vector for level triggered interrupts in generic
IRQ processing code.

I am not sure where the blame should be placed. We need to disable at the PIC when using libbsd with shared PCI interrupts because an interrupt server is used that is common to a few architectures. Some legacy drivers like this one assume processing inside the interrupt context. It is not clear to me shared interrupts were ever supported with these drivers. I would assume it means some type of per driver interrupt chaining.

So I have introduced reenable
bsp_interrupt_vector_enable to ensure that driver
can work even with that setup.

I am not sure we can mix both models without some changes.

classic networking: adapt FXP driver to work with actual PCI and IRQ code.

The hack is not required after

Which hack?

bsps/i386: Separate variable for i8259 IRQs disable due to in progress state.

so I have removed unneeded reenable from daemon hot path.
I have left it in the setup to be sure that it is enabled
after some driver stop start cycles.

In theory, this occurrence should be deleted as well.

Generally, I am not sure if/how much I have broken/I am
breaking i386 support by all these changes.

I have not testing the i386 with libbsd with your recent changes. I will see what I can do. I did not notice the enables/disables had been changed.

I believe only, hat it is the right direction.

I am sorry it is not clear to me what direction this is.

devel mailing list

Reply via email to