diff --git a/src/machine/machine_rp2040_usb.go b/src/machine/machine_rp2040_usb.go index 538cb0176f..efa6440428 100644 --- a/src/machine/machine_rp2040_usb.go +++ b/src/machine/machine_rp2040_usb.go @@ -90,6 +90,7 @@ func handleUSBIRQ(intr interrupt.Interrupt) { } s2 := rp.USBCTRL_REGS.BUFF_STATUS.Get() + rp.USBCTRL_REGS.BUFF_STATUS.Set(s2) // OUT (PC -> rp2040) for i := 0; i < 16; i++ { @@ -110,7 +111,6 @@ func handleUSBIRQ(intr interrupt.Interrupt) { } } - rp.USBCTRL_REGS.BUFF_STATUS.Set(s2) } // Bus is reset diff --git a/src/machine/machine_rp2350_usb.go b/src/machine/machine_rp2350_usb.go index c98327bf13..ca565738a5 100644 --- a/src/machine/machine_rp2350_usb.go +++ b/src/machine/machine_rp2350_usb.go @@ -93,6 +93,7 @@ func handleUSBIRQ(intr interrupt.Interrupt) { } s2 := rp.USB.BUFF_STATUS.Get() + rp.USB.BUFF_STATUS.Set(s2) // OUT (PC -> rp2350) for i := 0; i < 16; i++ { @@ -113,7 +114,6 @@ func handleUSBIRQ(intr interrupt.Interrupt) { } } - rp.USB.BUFF_STATUS.Set(s2) } // Bus is reset