plan9fox/sys/src/9/bcm
cinap_lenrek 1fe3143e4c kernel: cleanup the software mouse cursor mess
The swcursor used a 32x32 image for saving/restoring
screen contents for no reason.

Add a doflush argument to swcursorhide(), so that
disabling software cursor with a double buffered
softscreen is properly hidden. The doflush parameter
should be set to 0 in all other cases as swcursordraw()
will flushes both (current and previours) locations.

Make sure swcursorinit() and swcursorhide() clear the
visibility flag, even when gscreen is nil.

Remove the cursor locking and just do everything within
the drawlock. All cursor functions such as curson(),
cursoff() and setcursor() will be called drawlock
locked. This also means &cursor can be read.

Fix devmouse cursor reads and writes. We now have the
global cursor variable that is only modified under
the drawlock. So copy under drawlock.

Move the pc software cursor implementation into vgasoft
driver, so screen.c does not need to handle it as
a special case.

Remove unused functions such as drawhasclients().
2020-04-10 17:12:51 +02:00
..
arch.c bcm, kw, omap, teg2: implement setregisters() 2019-06-20 13:17:36 +02:00
archbcm.c bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
archbcm2.c bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
arm.h bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
arm.s bcm: simplify reboot code 2018-10-28 06:16:10 +01:00
armv6.s bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
armv7.s bcm: fix /dev/reboot text/data corruption (thanks richard miller) 2018-10-31 19:48:16 +01:00
bootargs.c bcm64: deal with discontinuous memory regions, avoid virtual memory aliasing, implement vmap() proper 2019-08-23 21:39:20 +02:00
cache.v7.s bcm: fix l2 cache maintenance routines for raspi3 (armv8) 2018-10-28 06:05:43 +01:00
clock.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
coproc.c bcm: speed up co-processor operations by avoiding i+d cache flush on each operation 2018-11-07 16:48:14 +01:00
dat.h bcm, bcm64: add dmaflush() function and make virtio size and virtual address configurable in Soc.virtio and Soc.iosize 2019-07-25 08:41:37 +02:00
devarch.c bcm: flush out early boot messages on uart and screen initialization 2019-08-22 02:52:21 +02:00
devgpio.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
dma.c bcm, bcm64: clean dma destination buffer before issuing dma in case of non cache-line-size aligned buffer 2019-07-25 13:55:17 +02:00
dwcotg.h bcm: import changes for raspi2/3 from richard miller 2018-10-20 19:56:31 +02:00
emmc.c emmc: 50MHz highspeed support (from richard miller) 2019-08-25 20:02:53 +02:00
fns.h kernel: remove scheddump() comment for delay() in */fns.h 2020-04-04 16:50:37 +02:00
fpi.c add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
fpi.h add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
fpiarm.c kernel: introduce per process FPU struct (PFPU) for more flexible machine specific fpu handling 2017-11-04 20:08:22 +01:00
fpimem.c add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
gpio.c kernel: expose no execute bit to portable mmu code as SG_NOEXEC / PTENOEXEC, add PTECACHED bits 2019-08-26 22:34:38 +02:00
io.h bcm64: add driver for emmc2 controller 2019-08-18 18:50:24 +02:00
irq.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
l.s bcm: import changes for raspi2/3 from richard miller 2018-10-20 19:56:31 +02:00
lexception.s bcm: move fiq saved pc adjust into lexception.s so it can be shared with arm64 2019-05-03 22:02:07 +02:00
lproc.s add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
main.c kernel: implement portable userinit() and simplify process creation 2020-01-26 19:01:36 +01:00
mem.h kernel: expose no execute bit to portable mmu code as SG_NOEXEC / PTENOEXEC, add PTECACHED bits 2019-08-26 22:34:38 +02:00
mkfile kernel: cleanup makefile for $CONF.$O target 2020-02-02 20:46:58 +01:00
mmu.c bcm: use extended small pages so XN bit can work 2019-12-04 22:02:51 +01:00
mouse.c add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
pi bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
pi2 bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
picpuf kernel: remove ptclbsum dependencies from configs 2019-02-27 08:47:17 +01:00
rebootcode.s bcm: fix /dev/reboot text/data corruption (thanks richard miller) 2018-10-31 19:48:16 +01:00
screen.c kernel: cleanup the software mouse cursor mess 2020-04-10 17:12:51 +02:00
screen.h kernel: cleanup the software mouse cursor mess 2020-04-10 17:12:51 +02:00
softfpu.c add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
syscall.c add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00
trap.c kernel: catch execution read fault on SG_NOEXEC segment 2019-08-27 03:47:18 +02:00
uartmini.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
uartpl011.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
usbdwc.c bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() 2019-07-25 08:58:58 +02:00
vcore.c bcm: invalidate cache on Fbinfo after firmware completion 2019-08-22 02:54:06 +02:00
vfp3.c bcm: speed up co-processor operations by avoiding i+d cache flush on each operation 2018-11-07 16:48:14 +01:00
words add raspberry pi kernel (from sources) 2013-01-26 17:33:56 +01:00