mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 12:23:31 +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:
@@ -221,14 +221,41 @@ CUSBHardwareDevice::Initialize(
|
||||
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_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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user