diff options
author | se <se@FreeBSD.org> | 1997-05-26 21:11:05 +0000 |
---|---|---|
committer | se <se@FreeBSD.org> | 1997-05-26 21:11:05 +0000 |
commit | d4c4dc86bf4338e642f9f145855a15e93e2199e9 (patch) | |
tree | fe65af2a994e42f0f4ec69e40242fd414f8d6364 /sys/i386/pci | |
parent | 2d9259ea49a0c22f384b29f0f68f77d903d8a41a (diff) | |
download | FreeBSD-src-d4c4dc86bf4338e642f9f145855a15e93e2199e9.zip FreeBSD-src-d4c4dc86bf4338e642f9f145855a15e93e2199e9.tar.gz |
Set enable bit when writing the configuration address in configuration
mode 1. Omission of this bit makes all config register accesses fail in
on recent chip sets ...
(The problem was reported and debug output provided by: Steve Passe)
Diffstat (limited to 'sys/i386/pci')
-rw-r--r-- | sys/i386/pci/pci_bus.c | 4 | ||||
-rw-r--r-- | sys/i386/pci/pci_cfgreg.c | 4 | ||||
-rw-r--r-- | sys/i386/pci/pci_pir.c | 4 |
3 files changed, 6 insertions, 6 deletions
diff --git a/sys/i386/pci/pci_bus.c b/sys/i386/pci/pci_bus.c index df84794..cc58c0d 100644 --- a/sys/i386/pci/pci_bus.c +++ b/sys/i386/pci/pci_bus.c @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id$ + * $Id: pcibus.c,v 1.36 1997/05/26 15:08:42 se Exp $ * */ @@ -59,7 +59,7 @@ pci_cfgenable(unsigned bus, unsigned slot, unsigned func, int reg, int bytes) && (reg & (bytes -1)) == 0) { switch (cfgmech) { case 1: - outl(CONF1_ADDR_PORT, + outl(CONF1_ADDR_PORT, 0x8000 | (bus << 16) | (slot << 11) | (func << 8) | reg); dataport = CONF1_DATA_PORT; break; diff --git a/sys/i386/pci/pci_cfgreg.c b/sys/i386/pci/pci_cfgreg.c index df84794..cc58c0d 100644 --- a/sys/i386/pci/pci_cfgreg.c +++ b/sys/i386/pci/pci_cfgreg.c @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id$ + * $Id: pcibus.c,v 1.36 1997/05/26 15:08:42 se Exp $ * */ @@ -59,7 +59,7 @@ pci_cfgenable(unsigned bus, unsigned slot, unsigned func, int reg, int bytes) && (reg & (bytes -1)) == 0) { switch (cfgmech) { case 1: - outl(CONF1_ADDR_PORT, + outl(CONF1_ADDR_PORT, 0x8000 | (bus << 16) | (slot << 11) | (func << 8) | reg); dataport = CONF1_DATA_PORT; break; diff --git a/sys/i386/pci/pci_pir.c b/sys/i386/pci/pci_pir.c index df84794..cc58c0d 100644 --- a/sys/i386/pci/pci_pir.c +++ b/sys/i386/pci/pci_pir.c @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id$ + * $Id: pcibus.c,v 1.36 1997/05/26 15:08:42 se Exp $ * */ @@ -59,7 +59,7 @@ pci_cfgenable(unsigned bus, unsigned slot, unsigned func, int reg, int bytes) && (reg & (bytes -1)) == 0) { switch (cfgmech) { case 1: - outl(CONF1_ADDR_PORT, + outl(CONF1_ADDR_PORT, 0x8000 | (bus << 16) | (slot << 11) | (func << 8) | reg); dataport = CONF1_DATA_PORT; break; |