summaryrefslogtreecommitdiff
path: root/vl.c
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2018-01-25 11:45:30 +0000
committerPeter Maydell <peter.maydell@linaro.org>2018-01-25 11:45:30 +0000
commit24da047af0e99a83fcc0d50b86c0f2627f7418b3 (patch)
treed90727b6edeee71497ace8dc91b3476a30a98b65 /vl.c
parentfbe5dac7b2777626670097218ce4dfc4a19a17e9 (diff)
downloadqemu-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 'vl.c')
0 files changed, 0 insertions, 0 deletions