diff --git a/src/add-ons/kernel/busses/usb/ohci.cpp b/src/add-ons/kernel/busses/usb/ohci.cpp index 5540eabaeb..639bed3592 100644 --- a/src/add-ons/kernel/busses/usb/ohci.cpp +++ b/src/add-ons/kernel/busses/usb/ohci.cpp @@ -193,7 +193,8 @@ OHCI::OHCI( pci_info *info , Stack *stack ) int i; hcd_soft_endpoint *sed, *psed; dprintf( "OHCI: constructing new BusManager\n" ); - m_opreg_base = OHCI::pci_module->read_pci_config(m_pcii->bus, m_pcii->device, m_pcii->function, 0x20 , 4 ) ^ 1; + m_opreg_base = OHCI::pci_module->read_pci_config(m_pcii->bus, m_pcii->device, m_pcii->function, 0x20, 4); + m_opreg_base &= ~PCI_address_io_mask; TRACE( "OHCI: iospace offset: %lx\n" , m_opreg_base ); m_roothub_base = 255; //Invalidate the Root Hub address { diff --git a/src/add-ons/kernel/busses/usb/uhci.cpp b/src/add-ons/kernel/busses/usb/uhci.cpp index 0a0e4b1798..ec3e5e94a6 100644 --- a/src/add-ons/kernel/busses/usb/uhci.cpp +++ b/src/add-ons/kernel/busses/usb/uhci.cpp @@ -153,7 +153,8 @@ UHCI::UHCI( pci_info *info , Stack *stack ) dprintf( "UHCI: constructing new BusManager\n" ); m_pcii = info; m_stack = stack; - m_reg_base = UHCI::pci_module->read_pci_config(m_pcii->bus, m_pcii->device, m_pcii->function, PCI_memory_base , 4 ) & PCI_address_io_mask ; + m_reg_base = UHCI::pci_module->read_pci_config(m_pcii->bus, m_pcii->device, m_pcii->function, PCI_memory_base, 4); + m_reg_base &= ~PCI_address_io_mask; TRACE( "USB UHCI: iospace offset: %lx\n" , m_reg_base ); m_rh_address = 255; //Invalidate the RH address {