git: kernel - Enable busmaster on bridges (BIOS might not)

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Aug 1 10:59:37 PDT 2019


commit 21cff6dd2604ac705d956cb0ff454fff2e80fa8b
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Aug 1 10:51:55 2019 -0700

    kernel - Enable busmaster on bridges (BIOS might not)
    
    * BIOSes do not always enable busmaster on bridges.  Make sure
      busmaster is enabled on all bridges.
    
    * Reproduced with an Asus X370-PRO (AM4) motherboard which was not
      enabling busmaster on the bridges connecting either the motherboard
      IGB or the quad IGB card installed in a slot, but only when booting
      EFI.  When booting legacy the BIOS did enable busmaster.
    
    * The characteristics of the failure is that NICs fail to physically
      transmit packets and received packets cannot be DMA'd into the rings,
      causing the packet error counter to increment once the receive
      hardware FIFO is full.
    
    * Fixes EFI booting on some motherboards.

Summary of changes:
 sys/bus/pci/pci_pci.c | 7 +++++++
 1 file changed, 7 insertions(+)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/21cff6dd2604ac705d956cb0ff454fff2e80fa8b


-- 
DragonFly BSD source repository



More information about the Commits mailing list