Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Sep 2015 17:01:02 +0000 (UTC)
From:      Jim Harris <jimharris@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r287677 - stable/10/sys/dev/isci
Message-ID:  <201509111701.t8BH12Sm039373@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jimharris
Date: Fri Sep 11 17:01:01 2015
New Revision: 287677
URL: https://svnweb.freebsd.org/changeset/base/287677

Log:
  MFC r287563:
  
    isci: explicitly enable/disable PCI busmaster
  
    BIOS always enables PCI busmaster on the isci device, which effectively
    worked around this omission.  But when passing the isci device through
    to a guest VM, the hypervisor will disable busmaster and isci will not
    work without calling pci_enable_busmaster().
  
  Sponsored by:	Intel

Modified:
  stable/10/sys/dev/isci/isci.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/dev/isci/isci.c
==============================================================================
--- stable/10/sys/dev/isci/isci.c	Fri Sep 11 16:59:04 2015	(r287676)
+++ stable/10/sys/dev/isci/isci.c	Fri Sep 11 17:01:01 2015	(r287677)
@@ -163,6 +163,7 @@ isci_attach(device_t device)
 
 	g_isci = isci;
 	isci->device = device;
+	pci_enable_busmaster(device);
 
 	isci_allocate_pci_memory(isci);
 
@@ -272,6 +273,7 @@ isci_detach(device_t device)
 
 		pci_release_msi(device);
 	}
+	pci_disable_busmaster(device);
 
 	return (0);
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201509111701.t8BH12Sm039373>