The UNDI layer uses the NETDEV_IRQ_ENABLED flag to choose whether to return PXENV_UNDI_ISR_OUT_OURS or PXENV_UNDI_ISR_OUT_NOT_OURS for a given interrupt. For a network device that does not support interrupts, the flag will never be set and so pxenv_undi_isr() will always return PXENV_UNDI_ISR_OUT_NOT_OURS. This causes some NBPs (such as lpxelinux.0) to hang. Redefine NETDEV_IRQ_ENABLED as a simple administrative flag which can be set even on network devices that do not support interrupts. This allows pxenv_undi_isr() (which is the sole user of NETDEV_IRQ_ENABLED) to function as expected by lpxelinux.0. Signed-off-by: Martin Habets <mhabets@solarflare.com> Modified-by: Michael Brown <mcb30@ipxe.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>tags/v1.20.1
|
|
||
| 874 |
|
874 |
|
| 875 |
|
875 |
|
| 876 |
|
876 |
|
| 877 |
|
|
|
| 878 |
|
|
|
| 879 |
|
|
|
| 880 |
|
|
|
| 881 |
|
|
|
| 882 |
|
|
|
|
877 |
|
|
|
878 |
|
|
|
879 |
|
|
| 883 |
|
880 |
|
| 884 |
|
881 |
|
| 885 |
|
882 |
|