1$NetBSD: TODO,v 1.31 2019/04/07 03:49:24 rin Exp $ 2 3To do list (in some particular order) 4XXX some entries might be obsolete. 5 6 o use MI driver 7 8 - make fd driver MI, and share it with other ports 9 (contact christos about MI fd driver) 10 11 - use MI bha driver instead of home grown btl 12 XXX needs fixes of DESKstation support 13 14 o VXL framebuffer support (Magnum, RISCstation 2200) 15 (Note nowadays QEMU supports Magnum 4000 with VXL) 16 17 o com_jazzio.c 18 - clock handling clean up (obtain from ARC BIOS) 19 - fifo disabling may be only needed on some Magnum? 20 21 o AD1848 audio support 22 23 o missing MI devices 24 ses?, vcoda, ... 25 26 27 o Xserver 28 29 - VXL Magnum, RISCstation 2200 30 - vga/S3 PICA, Image RISCstation - OpenBSD's? 31 - vga/cirrus RISCserver 2200, Express5800/240 R4400 EISA 32 - vga/??? DESKstation Tyne, rPC44 33 - TGA RISCstation 2250, Express5800/230 R4400 PCI 34 (TGA support in XalphaNetBSD just works, 35 but needs XOrg'fy) 36 37 o Find out why bitmap load to S3-928 flashes screen. (X server) 38 Know why (enable linear mode). Need S3 info. 39 40 41 o repair DescStation support 42 - requires bounce buffer bus_dma for Tyne 43 XXX - too small bounce buffer size (128KB) 44 45 o Olivetti M700 support 46 47 o NEC Express5800/230 R10000 PCI (NEC-J95) support 48 (needs info about interrupt, jazzio device address etc.) 49 50 o SNI RM200PCI/RM300/RM400/RM600 support 51 (Linux/MIPS seems to have some info) 52 53 54 o parse ARC BIOS configuration information and use it 55 56 o fix kernel start address 57 58 o allocate PICA_TL_BASE dynamically 59 60 o remove inb/outb 61 62 o fix mem_clusters[] usage. 63 64 o redesign interrupt handler framework. 65 66 o it is better to always disable the MIPS3 internal timer interrupts 67 (i.e. MIPS_INT_MASK_5) if it is not needed for the system. 68 those are the points which should be fixed: 69 mips_idle: li t0, (MIPS_INT_MASK | MIPS_SR_INT_IE) 70 machdep.c: curpcb->pcb_context[11] = MIPS_INT_MASK | MIPS_SR_INT_IE; 71 spl0() 72 splnone() 73 74 o XXX at least 2000/06/07 version is already quite unstable 75 on PICA and NEC Image RISCstation. (but almost OK on Magnum) 76 Userland commands dumps core randomly. 77 This version is before _MIPS_PADDR_T_64BIT changes 78 and MIPS3_TLB_WIRED_UPAGES changes. 79 80 "vm_page_zero_enable = FALSE" makes this problem disappeared. 81 (vm_page_zero_enable = FALSE by default on all archs w/ UBC, now) 82 83 currently, page zero in the idle loop is also disabled on 84 untested platforms like DESKstation rPC44/Tyne and SNI for safety. 85 86 XXX what's the current status of uvm_pageidlezero()? 87 88 89 o resolve "XXX" 90 91 92(following entries might be MI MIPS items) 93 94 o Move the RO and WIRED attribute from the pte to the pv table. 95 This saves four instructions in the tlb miss handler. 96 97 o clean up ALEAF/NLEAF/NON_LEAF/NNON_LEAF in userland. 98 99Lots of other things..... 100