diff options
author | Michael Brown <mcb30@ipxe.org> | 2019-04-24 22:11:14 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2019-04-27 20:26:18 +0100 |
commit | 92b46b7858c8bf99abc9007c550be72d8eb4f132 (patch) | |
tree | 63213f8e0e192b204fbe117f9469687588ecbc5e /src/hci/wireless_errors.c | |
parent | 3078a952a83d8af37f40a82e93461c087efa7e5a (diff) | |
download | ipxe-92b46b7858c8bf99abc9007c550be72d8eb4f132.tar.gz |
[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/hci/wireless_errors.c')
0 files changed, 0 insertions, 0 deletions