summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorMichael Brown2019-04-24 23:11:14 +0200
committerMichael Brown2019-04-27 21:26:18 +0200
commit92b46b7858c8bf99abc9007c550be72d8eb4f132 (patch)
tree63213f8e0e192b204fbe117f9469687588ecbc5e /src/include
parent[intelxl] Expose functions required by virtual function driver (diff)
downloadipxe-92b46b7858c8bf99abc9007c550be72d8eb4f132.tar.gz
ipxe-92b46b7858c8bf99abc9007c550be72d8eb4f132.tar.xz
ipxe-92b46b7858c8bf99abc9007c550be72d8eb4f132.zip
[intelxl] Choose to operate in non-PXE mode
The physical function defaults to operating in "PXE mode" after a power-on reset. In this mode, receive descriptors are fetched and written back as single descriptors. In normal (non-PXE mode) operation, receive descriptors are fetched and written back only as complete cachelines unless an interrupt is raised. There is no way to return to PXE mode from non-PXE mode, and there is no way for the virtual function driver to operate in PXE mode. Choose to operate in non-PXE mode. This requires us to trick the hardware into believing that it is raising an interrupt, so that it will not defer writing back receive descriptors until a complete cacheline (i.e. four packets) have been consumed. We do so by configuring the hardware to use MSI-X with a dummy target location in place of the usual APIC register. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include')
0 files changed, 0 insertions, 0 deletions