ACPI, APM, PIC, and USB.

This commit is contained in:
OBattler
2022-07-16 02:54:49 +02:00
parent d12b8b8c30
commit d68121ae89
4 changed files with 7 additions and 7 deletions

View File

@@ -144,12 +144,12 @@ acpi_raise_smi(void *priv, int do_smi)
if ((dev->vendor == VEN_VIA) || (dev->vendor == VEN_VIA_596B)) { if ((dev->vendor == VEN_VIA) || (dev->vendor == VEN_VIA_596B)) {
if ((!dev->regs.smi_lock || !dev->regs.smi_active)) { if ((!dev->regs.smi_lock || !dev->regs.smi_active)) {
if (do_smi) if (do_smi)
smi_line = 1; smi_raise();
dev->regs.smi_active = 1; dev->regs.smi_active = 1;
} }
} else if ((dev->vendor == VEN_INTEL) || (dev->vendor == VEN_ALI)) { } else if ((dev->vendor == VEN_INTEL) || (dev->vendor == VEN_ALI)) {
if (do_smi) if (do_smi)
smi_line = 1; smi_raise();
/* Clear bit 16 of GLBCTL. */ /* Clear bit 16 of GLBCTL. */
if (dev->vendor == VEN_INTEL) if (dev->vendor == VEN_INTEL)
dev->regs.glbctl &= ~0x00010000; dev->regs.glbctl &= ~0x00010000;
@@ -157,7 +157,7 @@ acpi_raise_smi(void *priv, int do_smi)
dev->regs.ali_soft_smi = 1; dev->regs.ali_soft_smi = 1;
} else if (dev->vendor == VEN_SMC) { } else if (dev->vendor == VEN_SMC) {
if (do_smi) if (do_smi)
smi_line = 1; smi_raise();
} }
} }
} }
@@ -1449,7 +1449,7 @@ acpi_apm_out(uint16_t port, uint8_t val, void *p)
dev->apm->cmd = val; dev->apm->cmd = val;
// acpi_raise_smi(dev, dev->apm->do_smi); // acpi_raise_smi(dev, dev->apm->do_smi);
if (dev->apm->do_smi) if (dev->apm->do_smi)
smi_line = 1; smi_raise();
dev->regs.ali_soft_smi = 1; dev->regs.ali_soft_smi = 1;
} else if (port == 0x0003) } else if (port == 0x0003)
dev->apm->stat = val; dev->apm->stat = val;

View File

@@ -67,7 +67,7 @@ apm_out(uint16_t port, uint8_t val, void *p)
if (port == 0x0000) { if (port == 0x0000) {
dev->cmd = val; dev->cmd = val;
if (dev->do_smi) if (dev->do_smi)
smi_line = 1; smi_raise();
} else } else
dev->stat = val; dev->stat = val;
} }

View File

@@ -608,7 +608,7 @@ picint_common(uint16_t num, int level, int set)
if (set) { if (set) {
if (smi_irq_mask & num) { if (smi_irq_mask & num) {
smi_line = 1; smi_raise();
smi_irq_status |= num; smi_irq_status |= num;
} }

View File

@@ -173,7 +173,7 @@ ohci_mmio_write(uint32_t addr, uint8_t val, void *p)
if (val & 0x08) { if (val & 0x08) {
dev->ohci_mmio[0x0f] = 0x40; dev->ohci_mmio[0x0f] = 0x40;
if ((dev->ohci_mmio[0x13] & 0xc0) == 0xc0) if ((dev->ohci_mmio[0x13] & 0xc0) == 0xc0)
smi_line = 1; smi_raise();
} }
/* bit HostControllerReset must be cleared for the controller to be seen as initialized */ /* bit HostControllerReset must be cleared for the controller to be seen as initialized */