diff --git a/src/device/kbc_at.c b/src/device/kbc_at.c index 74ade4cd3..dd18649de 100644 --- a/src/device/kbc_at.c +++ b/src/device/kbc_at.c @@ -406,7 +406,9 @@ kbc_send_to_ob(atkbc_t *dev, uint8_t val, uint8_t channel, uint8_t stat_hi) } else if (dev->mem[0x20] & 0x01) picintlevel(1 << 1, &dev->irq_state); /* AT KBC: IRQ 1 is level-triggered because it is tied to OBF. */ - if (dev->is_asic || (kbc_ven == KBC_VEN_IBM_PS1) || (kbc_ven == KBC_VEN_IBM)) +#ifdef WRONG_CONDITION + if ((dev->channel > 0) || dev->is_asic || (kbc_ven == KBC_VEN_IBM_PS1) || (kbc_ven == KBC_VEN_IBM)) +#endif kbc_do_irq(dev); dev->ob = temp;