TODO revision 1.34
11.34Spalle/* $NetBSD: TODO,v 1.34 2021/02/22 10:30:57 palle Exp $ */
21.1Spalle
31.1SpalleThings to be done:
41.1Spalle
51.5Spallecommon:
61.5Spalle- make %g6 point to curcpu
71.5Spalle- make %g7 point to curlwp
81.8Spalle- change run-time checks for cpu type to function pointers
91.5Spalle
101.1Spallesun4u:
111.10Spalle- GENERIC.UP kernel hangs on v445 (missing interrupt?)
121.1Spalle
131.1Spallesun4v:
141.34Spalle - current status
151.34Spalle     T5 ldom with 2 VCPU and 4GB:
161.34Spalle       The kernel boots and starts userland when booting miniroot.fs.
171.34Spalle       The sysinst tool starts properly and requests terminal type.
181.34Spalle	   Upon entering characters on the console, a crash occurs inside
191.34Spalle	   OpenBoot (properly trashed registers).
201.34Spalle	 T2000 ldom with 8 VCPU and 4GB:
211.34Spalle	   On this platform it crashes in /sbin/init doing an access() call where %o0 is corrupted (zero)
221.1Spalle- 64-bit kernel support
231.1Spalle- 32-bit kernel support
241.2Spalle- libkvm
251.2Spalle- ofwboot: tlb_init_sun4v() hardcodes number of slots to 64
261.17Spalle- locore.s: sun4v_datatrap missing implementation for trap level 1
271.5Spalle- check build without SUN4V defined
281.13Spalle- replace relevant references to %ver with GET_MAXCWP
291.6Spalle- pmap_mp_init(): sun4v missing handling
301.6Spalle- replace constructs like "wrpr %g0, PSTATE_KERN, %pstate" with NORMAL_GLOBALS
311.6Spalle- replace constructs line "wrpr %g0, PSTATE_INTR, %pstate" with ALTERNATE_GOBALS
321.7Spalle- sun4v tsb no need to lock... per cpu... anyway...
331.7Spalle- ci_tsb_desc->td_ctxidx: -1 or 1?
341.14Spalle- MP support - currently bypassed in pmap_bootstrap() for sun4v
351.12Spalle- vpci.c/vpcivar.h: cleanup FIXMEs
361.30Sskrll- interrupts not handled properly (com at ebus only...)
371.18Spalle- mpt(4) complains: mpt0: Phy 0: Link Status Unknown
381.20Spalle- man pages for drivers imported from OpenBSD lke vpci, vbus, cbus, vdsk, ldc etc.
391.20Spalle- vdsk and ldc drivers: code maked with OPENBSD_BUSDMA - make the bus_dma stuff work properly
401.22Spalle- vbus.c: handle prom_getprop() memory leaks
411.25Spalle- locore.s: rft_user (sun4v specific manaul fill) - seems to work, but is it good enough (compared to openbsds rft_user?
421.27Spalle - platforms tested so far:
431.33Spalle -- qemu sun4v/niagara - reaches the point where the kernel needs to mount a root fs
441.27Spalle -- T2000 - mmu fault somewhere
451.27Spalle -- T5 - stickcmpr is not properly initialized ???
46