Home | History | Annotate | Line # | Download | only in arc
TODO revision 1.25
      1 $NetBSD: TODO,v 1.25 2007/03/04 09:09:10 tsutsui Exp $
      2 
      3 To do list (in some particular order)
      4 XXX some entries might be obsolete.
      5 
      6     o	sysinst
      7 	maybe MD fdisk partitioning support is required to load files
      8 	from FAT partition on ARC BIOS prompt.
      9 
     10     o	install notes
     11 
     12 
     13     o	use MI driver
     14 
     15 	-   make fd driver MI, and share it with other ports
     16 	    (contact christos about MI fd driver)
     17 
     18 	-   use MI bha driver instead of home grown btl
     19 	    XXX needs fixes of DESKstation support
     20 
     21     o	VXL framebuffer support (Magnum, RISCstation 2200)
     22 
     23     o	com_jazzio.c
     24 	-   clock handling clean up (obtain from ARC BIOS)
     25 	-   fifo disabling may be only needed on some Magnum?
     26 
     27     o	remove pccons and switch to wscons completely
     28 	(XXX what's the problem to remove pccons?)
     29 
     30     o	AD1848 audio support
     31 
     32     o	missing MI devices
     33 		ses?, vcoda, ...
     34 
     35 
     36     o	Xserver
     37 
     38 	-   VXL		Magnum, RISCstation 2200
     39 	-   vga/S3	PICA, Image RISCstation - OpenBSD's?
     40 	-   vga/cirrus	RISCserver 2200, Express5800/240 R4400 EISA
     41 	-   vga/???	DESKstation Tyne, rPC44
     42 	-   TGA		RISCstation 2250, Express5800/230 R4400 PCI
     43 
     44     o   Find out why bitmap load to S3-928 flashes screen. (X server)
     45 	Know why (enable linear mode). Need S3 info.
     46 
     47 
     48     o	repair DESKstation support
     49 	-   requires bounce buffer bus_dma for Tyne
     50 		XXX - too small bounce buffer size (128KB)
     51 
     52     o	Olivetti M700 support
     53 
     54     o	NEC Express5800/230 R10000 PCI (NEC-J95) support
     55 	(needs MI R10000 support)
     56 
     57     o	SNI RM200PCI/RM300/RM400/RM600 support
     58 
     59 
     60     o	parse ARC BIOS configuration information and use it
     61 
     62     o	increase MAXPHYS to 64KB
     63 	(XXX why is it limited to 32KB?)
     64 
     65     o	fix kernel start address
     66 	(maybe requires bootloader support)
     67 
     68     o	allocate PICA_TL_BASE dynamically
     69 
     70     o	remove inb/outb
     71 
     72     o	remove UADDR
     73 
     74     o	fix mem_clusters[] usage.
     75 
     76     o	intrcnt[] name cleanup, use MI evcnt(9)
     77 
     78     o	test and merge soren's clean up about proc0.p_addr.
     79 
     80     o	redesign interrupt handler framework.
     81 	i/o bus devices should have sane IPL, but currently doesn't.
     82 
     83     o	make CLKF_INTR() work.
     84 
     85     o	it is better to always disable the MIPS3 internal timer interrupts
     86 	(i.e. MIPS_INT_MASK_5) if it is not needed for the system.
     87 	those are the points which should be fixed:
     88 	mips_idle: li t0, (MIPS_INT_MASK | MIPS_SR_INT_IE)
     89 	machdep.c: curpcb->pcb_context[11] = MIPS_INT_MASK | MIPS_SR_INT_IE;
     90 	spl0()
     91 	splnone()
     92 
     93     o	XXX at least 2000/06/07 version is already quite unstable
     94 	on PICA and NEC Image RISCstation. (but almost OK on Magnum)
     95 	Userland commands dumps	core randomly.
     96 	This version is before _MIPS_PADDR_T_64BIT changes
     97 	and MIPS3_TLB_WIRED_UPAGES changes.	
     98 
     99 	"vm_page_zero_enable = FALSE" makes this problem disappeared.
    100 	(vm_page_zero_enable = FALSE by default on all archs w/ UBC, now)
    101 
    102 	currently, page zero in the idle loop is also disabled on
    103 	untested platforms like DESKstation rPC44/Tyne and SNI for safety.
    104 
    105 	    XXX what's the current status of uvm_pageidlezero()?
    106 
    107 
    108     o	resolve "XXX"
    109 
    110 
    111 (following entries might be MI MIPS items)
    112 
    113     o	Move the RO and WIRED attribute from the pte to the pv table.
    114 	This saves four instructions in the tlb miss handler.
    115 
    116     o   Can we have 32 double registers?
    117 
    118     o	64bit kernel/userland
    119 
    120     o	omit __SWAP_BROKEN in <mips/types.h>
    121 
    122     o	clean up ALEAF/NLEAF/NON_LEAF/NNON_LEAF in userland.
    123 
    124 Lots of other things.....
    125