usb: OHCI HcInterruptDisable reads return HcInterruptEnable registers

This commit is contained in:
Cacodemon345
2023-05-05 22:32:20 +06:00
parent 331b579d44
commit b8fb1754d9

View File

@@ -195,6 +195,12 @@ ohci_mmio_read(uint32_t addr, void *p)
case OHCI_HcRhPortStatus3 + 1:
ret |= 0x1;
break;
case OHCI_HcInterruptDisable:
case OHCI_HcInterruptDisable + 1:
case OHCI_HcInterruptDisable + 2:
case OHCI_HcInterruptDisable + 3:
ret = dev->ohci_mmio[OHCI_HcInterruptEnable + (addr - OHCI_HcInterruptDisable)];
break;
default:
break;
}
@@ -433,6 +439,14 @@ ohci_mmio_write(uint32_t addr, uint8_t val, void *p)
case OHCI_HcRhPortStatus1 + 3:
case OHCI_HcRhPortStatus2 + 3:
return;
case OHCI_HcDoneHead:
case OHCI_HcBulkCurrentED:
case OHCI_HcBulkHeadED:
case OHCI_HcControlCurrentED:
case OHCI_HcControlHeadED:
case OHCI_HcPeriodCurrentED:
dev->ohci_mmio[addr] = (val & 0xf0);
return;
}
dev->ohci_mmio[addr] = val;