TODO revision 1.29 1 $NetBSD: TODO,v 1.29 2011/01/08 09:44:37 tsutsui Exp $
2
3 To do list (in some particular order)
4 XXX 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 remove UADDR
63
64 o fix mem_clusters[] usage.
65
66 o intrcnt[] name cleanup, use MI evcnt(9)
67
68 o redesign interrupt handler framework.
69
70 o it is better to always disable the MIPS3 internal timer interrupts
71 (i.e. MIPS_INT_MASK_5) if it is not needed for the system.
72 those are the points which should be fixed:
73 mips_idle: li t0, (MIPS_INT_MASK | MIPS_SR_INT_IE)
74 machdep.c: curpcb->pcb_context[11] = MIPS_INT_MASK | MIPS_SR_INT_IE;
75 spl0()
76 splnone()
77
78 o XXX at least 2000/06/07 version is already quite unstable
79 on PICA and NEC Image RISCstation. (but almost OK on Magnum)
80 Userland commands dumps core randomly.
81 This version is before _MIPS_PADDR_T_64BIT changes
82 and MIPS3_TLB_WIRED_UPAGES changes.
83
84 "vm_page_zero_enable = FALSE" makes this problem disappeared.
85 (vm_page_zero_enable = FALSE by default on all archs w/ UBC, now)
86
87 currently, page zero in the idle loop is also disabled on
88 untested platforms like DESKstation rPC44/Tyne and SNI for safety.
89
90 XXX what's the current status of uvm_pageidlezero()?
91
92
93 o resolve "XXX"
94
95
96 (following entries might be MI MIPS items)
97
98 o Move the RO and WIRED attribute from the pte to the pv table.
99 This saves four instructions in the tlb miss handler.
100
101 o clean up ALEAF/NLEAF/NON_LEAF/NNON_LEAF in userland.
102
103 Lots of other things.....
104