<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openslx-ng/ipxe.git/src/drivers, branch v1.20.1</title>
<subtitle>Fork of ipxe; additional commands and features</subtitle>
<id>https://git.openslx.org/openslx-ng/ipxe.git/atom/src/drivers?h=v1.20.1</id>
<link rel='self' href='https://git.openslx.org/openslx-ng/ipxe.git/atom/src/drivers?h=v1.20.1'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/'/>
<updated>2019-12-16T10:46:04+00:00</updated>
<entry>
<title>[snp] Set EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST bit as per UEFI spec</title>
<updated>2019-12-16T10:46:04+00:00</updated>
<author>
<name>Ignat Korchagin</name>
</author>
<published>2019-12-13T16:17:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=ea832529a5d2ac7c82f68b1ce86cf272f0cdf2cb'/>
<id>urn:sha1:ea832529a5d2ac7c82f68b1ce86cf272f0cdf2cb</id>
<content type='text'>
According to UEFI specification 2.8 p 24.1 we must set the
EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST bit in the "Disable" mask, when
"ResetMCastFilter" is TRUE.

Signed-off-by: Ignat Korchagin &lt;ignat@cloudflare.com&gt;
Split-by: Michael Brown &lt;mcb30@ipxe.org&gt;
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[snp] Try promiscuous multicast receive filter if the regular one fails</title>
<updated>2019-12-16T10:42:09+00:00</updated>
<author>
<name>Ignat Korchagin</name>
</author>
<published>2019-12-13T16:17:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=ed4a82e239dbdc3b60840d792fca9ceb269953e4'/>
<id>urn:sha1:ed4a82e239dbdc3b60840d792fca9ceb269953e4</id>
<content type='text'>
Currently, if the SNP driver for whatever reason fails to enable
receive filters for multicast frames, it falls back to enabling just
unicast and broadcast filters.  This breaks some IPv6 functionality as
the network card does not respond to neighbour solicitation requests.

Some cards refuse to enable EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST, but
do support enabling EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS_MULTICAST,
so try it before falling back to just unicast+broadcast.

Signed-off-by: Ignat Korchagin &lt;ignat@cloudflare.com&gt;
Split-by: Michael Brown &lt;mcb30@ipxe.org&gt;
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[lan78xx] Always enable automatic speed and duplex detection</title>
<updated>2019-09-29T19:59:22+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-09-29T19:59:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=3fe683ebab29afacf224e6b0921f6329bebcdca7'/>
<id>urn:sha1:3fe683ebab29afacf224e6b0921f6329bebcdca7</id>
<content type='text'>
On devices with no EEPROM or OTP, the MAC_CR register defaults to not
using automatic link speed detection, with the result that no packets
are successfully sent or received.

Fix by always enabling automatic speed and duplex detection, since
iPXE provides no mechanism for manual configuration of either link
speed or duplex.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[efi] Do not attempt EFI_USB_IO_PROTOCOL transfers during shutdown</title>
<updated>2019-09-15T09:40:23+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-09-15T09:40:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=41a9a5c7b3674f0fac6d8fa3b633cde17c2df78f'/>
<id>urn:sha1:41a9a5c7b3674f0fac6d8fa3b633cde17c2df78f</id>
<content type='text'>
On at least some platforms (observed with a Raspberry Pi), any attempt
to perform USB transfers via EFI_USB_IO_PROTOCOL during EFI shutdown
will lock up the system.  This is quite probably due to the already
documented failure of all EFI timers when ExitBootServices() is
called: see e.g. commit 5cf5ffea2 "[efi] Work around temporal anomaly
encountered during ExitBootServices()".

Work around this problem by refusing to poll endpoints if shutdown is
in progress, and by immediately failing any attempts to enqueue new
transfers.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[efi] Report failed control transfers as expected by the USB core</title>
<updated>2019-09-15T09:25:46+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-09-15T09:25:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=4c8721331d8d658f37acf08b3596c14c0599ea52'/>
<id>urn:sha1:4c8721331d8d658f37acf08b3596c14c0599ea52</id>
<content type='text'>
The USB core reuses the I/O buffer space occupied by the USB setup
packet to hold the completion status for message transfers, assuming
that the message() method will always strip the setup packet before
returning.  This assumption is correct for all of the hardware
controller drivers (XHCI, EHCI, and UHCI), since these drivers are
able to enqueue the transfer as a separate action from waiting for the
transfer to complete.

The EFI_USB_IO_PROTOCOL does not allow us to separate actions in this
way: there is only a single blocking method that both enqueues and
waits for completion.  Our usbio driver therefore currently defers
stripping the setup packet until the control endpoint is polled.

This causes a bug if a message transfer is enqueued but never polled
and is subsequently cancelled, since the cancellation will be reported
with the I/O buffer still containing the setup packet.  This breaks
the assumption that the setup packet has been stripped, and triggers
an assertion failure in usb_control_complete().

Fix by always stripping the setup packet in usbio_endpoint_message(),
and adjusting usbio_control_poll() to match.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[golan] Fix address-of-pointer bug for multicast attach/detach</title>
<updated>2019-08-17T16:51:18+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-08-17T16:51:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=0b3000bbece3f96d1c4e00aaf93968f6905105bb'/>
<id>urn:sha1:0b3000bbece3f96d1c4e00aaf93968f6905105bb</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[smscusb] Fetch MAC from device tree for Raspberry Pi Model B+</title>
<updated>2019-07-19T18:15:33+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-07-19T18:15:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=f4cc5834efe1b8fd366ec35cc016cd23527e2f42'/>
<id>urn:sha1:f4cc5834efe1b8fd366ec35cc016cd23527e2f42</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[smsc95xx] Fetch MAC from device tree for Raspberry Pi</title>
<updated>2019-07-19T16:44:27+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-07-19T16:43:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=83e0f9f377246ba99f61e24a9074122d86ec3f20'/>
<id>urn:sha1:83e0f9f377246ba99f61e24a9074122d86ec3f20</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[golan] Add various new PCI device IDs</title>
<updated>2019-05-02T10:00:18+00:00</updated>
<author>
<name>Mohammed</name>
</author>
<published>2019-05-02T10:00:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=1cdf56f75157d5f4dcfb98dee7b1ba60cd6b93c1'/>
<id>urn:sha1:1cdf56f75157d5f4dcfb98dee7b1ba60cd6b93c1</id>
<content type='text'>
Signed-off-by: Mohammed &lt;mohammedt@mellanox.com&gt;
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[intelxl] Add driver for Intel 40 Gigabit Ethernet NIC virtual functions</title>
<updated>2019-04-27T19:26:18+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-04-24T16:15:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=a95966955c6904b975b0ccec0dd338385fb3066b'/>
<id>urn:sha1:a95966955c6904b975b0ccec0dd338385fb3066b</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
</feed>
