mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 17:34:57 +00:00
[USBOHCI]
- Enable bus master on OHCI controllers if it's not set by default svn path=/branches/usb-bringup-trunk/; revision=55476
This commit is contained in:
parent
60e9668112
commit
ec95123297
1 changed files with 32 additions and 5 deletions
|
@ -221,14 +221,41 @@ CUSBHardwareDevice::Initialize(
|
||||||
return STATUS_SUCCESS;
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(PciConfig.Command & PCI_ENABLE_BUS_MASTER))
|
|
||||||
{
|
|
||||||
DPRINT1("PCI Configuration shows this as a non Bus Mastering device!\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
m_VendorID = PciConfig.VendorID;
|
m_VendorID = PciConfig.VendorID;
|
||||||
m_DeviceID = PciConfig.DeviceID;
|
m_DeviceID = PciConfig.DeviceID;
|
||||||
|
|
||||||
|
if (PciConfig.Command & PCI_ENABLE_BUS_MASTER)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
// master is enabled
|
||||||
|
//
|
||||||
|
return STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
DPRINT1("PCI Configuration shows this as a non Bus Mastering device! Enabling...\n");
|
||||||
|
|
||||||
|
PciConfig.Command |= PCI_ENABLE_BUS_MASTER;
|
||||||
|
BusInterface.SetBusData(BusInterface.Context, PCI_WHICHSPACE_CONFIG, &PciConfig, 0, PCI_COMMON_HDR_LENGTH);
|
||||||
|
|
||||||
|
BytesRead = (*BusInterface.GetBusData)(BusInterface.Context,
|
||||||
|
PCI_WHICHSPACE_CONFIG,
|
||||||
|
&PciConfig,
|
||||||
|
0,
|
||||||
|
PCI_COMMON_HDR_LENGTH);
|
||||||
|
|
||||||
|
if (BytesRead != PCI_COMMON_HDR_LENGTH)
|
||||||
|
{
|
||||||
|
DPRINT1("Failed to get pci config information!\n");
|
||||||
|
ASSERT(FALSE);
|
||||||
|
return STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!(PciConfig.Command & PCI_ENABLE_BUS_MASTER))
|
||||||
|
{
|
||||||
|
DPRINT1("Failed to enable master\n");
|
||||||
|
return STATUS_UNSUCCESSFUL;
|
||||||
|
}
|
||||||
|
|
||||||
return STATUS_SUCCESS;
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue