summaryrefslogtreecommitdiffstats
path: root/hw/usb/dev-storage.c
diff options
context:
space:
mode:
authorLinus Walleij2018-01-25 12:45:30 +0100
committerPeter Maydell2018-01-25 12:45:30 +0100
commit24da047af0e99a83fcc0d50b86c0f2627f7418b3 (patch)
treed90727b6edeee71497ace8dc91b3476a30a98b65 /hw/usb/dev-storage.c
parentxilinx_spips: Correct usage of an uninitialized local variable (diff)
downloadqemu-24da047af0e99a83fcc0d50b86c0f2627f7418b3.tar.gz
qemu-24da047af0e99a83fcc0d50b86c0f2627f7418b3.tar.xz
qemu-24da047af0e99a83fcc0d50b86c0f2627f7418b3.zip
pl110: Implement vertical compare/next base interrupts
This implements rudimentary support for interrupt generation on the PL110. I am working on a new DRI/KMS driver for Linux and since that uses the blanking interrupt, we need something to fire here. Without any interrupt support Linux waits for a while and then gives ugly messages about the vblank not working in the console (it does not hang perpetually or anything though, DRI is pretty forgiving). I solved it for now by setting up a timer to fire at 60Hz and pull the interrupts for "vertical compare" and "next memory base" at this interval. This works fine and fires roughly the same number of IRQs on QEMU as on the hardware and leaves the console clean and nice. People who want to create more accurate emulation can probably work on top of this if need be. It is certainly closer to the hardware behaviour than what we have today anyway. Cc: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Message-id: 20180123225654.5764-1-linus.walleij@linaro.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> [PMM: folded long lines] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw/usb/dev-storage.c')
0 files changed, 0 insertions, 0 deletions