diff options
author | H. Peter Anvin <hpa@linux.intel.com> | 2011-04-22 15:57:33 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2011-04-22 15:57:33 -0700 |
commit | 2fa8eb93e5b2fc684d27f018c0a84341eaed5476 (patch) | |
tree | 2a29092e6e79813f930c76ed8d6f78e5843bab04 /com32 | |
parent | f5203bfa11fde88d16f471b4050ed1da73387c7a (diff) | |
download | syslinux-2fa8eb93e5b2fc684d27f018c0a84341eaed5476.tar.gz |
lwip: handle UNDI stacks which need to be polled
If the UNDI stack reports either IRQ 0 or does NOT report the NDIS IRQ
supported flag, then poll the interrupt routine from the idle thread
instead.
This is somewhat limited; we really should have a chain of idle poll
routines to support things like serial console.
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'com32')
-rw-r--r-- | com32/include/syslinux/pxe_api.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/com32/include/syslinux/pxe_api.h b/com32/include/syslinux/pxe_api.h index 27166b0b..93243294 100644 --- a/com32/include/syslinux/pxe_api.h +++ b/com32/include/syslinux/pxe_api.h @@ -359,7 +359,24 @@ typedef struct s_PXENV_UNDI_GET_IFACE_INFO { uint32_t LinkSpeed; uint32_t ServiceFlags; uint32_t Reserved[4]; -} __packed t_PXENV_UNDI_GET_NDIS_INFO; +} __packed t_PXENV_UNDI_GET_IFACE_INFO; +#define PXE_UNDI_IFACE_FLAG_BCAST 0x00000001 +#define PXE_UNDI_IFACE_FLAG_MCAST 0x00000002 +#define PXE_UNDI_IFACE_FLAG_GROUP 0x00000004 +#define PXE_UNDI_IFACE_FLAG_PROMISC 0x00000008 +#define PXE_UNDI_IFACE_FLAG_SOFTMAC 0x00000010 +#define PXE_UNDI_IFACE_FLAG_STATS 0x00000020 +#define PXE_UNDI_IFACE_FLAG_DIAGS 0x00000040 +#define PXE_UNDI_IFACE_FLAG_LOOPBACK 0x00000080 +#define PXE_UNDI_IFACE_FLAG_RCVCHAIN 0x00000100 +#define PXE_UNDI_IFACE_FLAG_IBMSRCRT 0x00000200 +#define PXE_UNDI_IFACE_FLAG_RESET 0x00000400 +#define PXE_UNDI_IFACE_FLAG_OPEN 0x00000800 +#define PXE_UNDI_IFACE_FLAG_IRQ 0x00001000 +#define PXE_UNDI_IFACE_FLAG_SRCRT 0x00002000 +#define PXE_UNDI_IFACE_FLAG_GDTVIRT 0x00004000 +#define PXE_UNDI_IFACE_FLAG_MULTI 0x00008000 +#define PXE_UNDI_IFACE_FLAG_LKFISZ 0x00010000 typedef struct s_PXENV_UNDI_GET_STATE { #define PXE_UNDI_GET_STATE_STARTED 1 |