Home | History | Annotate | Line # | Download | only in ia64
TODO revision 1.5
      1  1.1  scole $ NetBSD: TODO,v 1.1 2018/04/14 12:06:03 scole Exp $
      2  1.1  scole 
      3  1.1  scole What works:
      4  1.1  scole   The ski simulator (pkgsrc/emulators/ski) works on NetBSD, can run
      5  1.1  scole   and step through in assembly.
      6  1.1  scole 
      7  1.1  scole   Netbooting may work on some machines, basically you need to boot
      8  1.1  scole   diskless with the loader.efi (from src/sys/arch/ia64/stand/ia64/)
      9  1.1  scole   using dhcpd and put the kernel in a nfs accessible directory.  There
     10  1.1  scole   is info here https://www.netbsd.org/docs/network/netboot/ and
     11  1.1  scole   http://gnats.netbsd.org/49717 about how to setup.
     12  1.1  scole 
     13  1.1  scole   Also, a successful report of booting off the CD is here
     14  1.1  scole   http://mail-index.netbsd.org/port-ia64/2009/06/18/msg000102.html
     15  1.1  scole 
     16  1.1  scole Tasks remaining, first couple seem most important:
     17  1.1  scole 
     18  1.5  scole - pmap.c is getting compilation warnings (for gcc6 & gcc7) like
     19  1.5  scole   /var/tmp//cckQKcKn.s:7614: Warning: Use of 'st8' may violate RAW dependency 'RR#' (data)
     20  1.5  scole   ...
     21  1.5  scole   how to change compile flags for specific kernel file like "CFLAGS.pmap.c+= -O0" ?
     22  1.1  scole - context switching and forking appear unfinished,
     23  1.1  scole   vm_machdep.c::cpu_lwp_fork() appears incomplete
     24  1.1  scole - pmap module, imported from freebsd but still needs more work and
     25  1.1  scole   testing
     26  1.1  scole - IA64 Stack unwind code: Support remaining unwind descriptor
     27  1.1  scole   types. (See arch/ia64/unwind/TODO). ddb() traces need to print line
     28  1.1  scole   information also.  Seems like a lot of this could be re-used
     29  1.1  scole   from freebsd
     30  1.1  scole - redo _regset.h in netbsd style with __greg_t __gregset_t
     31  1.1  scole - some commands in ski are not yet implemented, 2 important ones
     32  1.1  scole   are still missing, "cstack" and "pm", which view the stack and
     33  1.1  scole   source code lines respectively 
     34  1.1  scole - create a ski network driver
     35  1.1  scole - create a ski disk driver
     36  1.1  scole - implement ld.elf_so, MK_DYNAMICROOT
     37  1.1  scole - fix memory detection, on real hardware doesn't find all memory
     38  1.1  scole - implement interrupts (sacpi & pci), can be mostly from freebsd?
     39  1.3  scole - MKGDB for ia64
     40  1.1  scole - implement fp[gs]etsticky, [make|get|set|swap]context
     41  1.1  scole - floating point, fenv functions were imported from freebsd, but haven't been tested
     42  1.1  scole - implement core_machdep.c
     43  1.1  scole - implement __cloneS ptrace.S sbrk.S shmat.S
     44  1.1  scole - implement kvm_ia64.c
     45  1.1  scole - implement pmc (performance monitoring counters) for ia64 pmc registers
     46  1.3  scole - implement ia64 md code for cpuctl, intrctl as needed
     47  1.1  scole - optional(?) mutex.h/lock_stubs.S, mutex_enter()/mutex_exit() __HAVE_MUTEX_STUBS
     48  1.1  scole        mutex_spin_enter()/mutex_spin_exit() __HAVE_SPIN_MUTEX_STUBS
     49  1.1  scole - rwlock.h rw_enter(),rw_exit(),rw_tryenter() __HAVE_RW_STUBS, implemented already?
     50  1.1  scole - add efipart_dev to read gpt/ffs disks for bootloader
     51  1.1  scole - fix printf of lx in bootloader/libsa ?
     52  1.1  scole - sort out bootloader/loader.efi stuff, is freebsd one good enough or
     53  1.1  scole   do we want commands more like netbsd i386 bootloader? e.g., add
     54  1.1  scole   command to boot nfs from loader.efi instead of hack now
     55  1.1  scole - ia64 implement __HAVE_FAST_SOFTINTS?
     56  1.2  scole - want or need __HAVE_CPU_UAREA_ROUTINES, cpu_uarea_alloc,  cpu_uarea_free
     57  1.1  scole - fix all "[Nn]ot yet" and "XXX" functions everywhere
     58  1.1  scole - create/fix sys/arch/ia64/include/pci_machdep.h and implement actual functions,
     59  1.1  scole   need to handle "multiple" pci busses like from http://www.openpa.net/systems/il/rp3400-bus.txt,
     60  1.1  scole   add pchb, looks like one here
     61  1.1  scole    http://mail-index.netbsd.org/port-ia64/2010/06/29/msg000116.html
     62  1.1  scole   and/or could port from freebsd
     63  1.1  scole - Kernel module pre-loading via the bootloader
     64  1.1  scole - SMP
     65  1.1  scole - write console and/or X framebuffer driver.  freebsd has vgapci
     66  1.1  scole   device that may be portable
     67  1.1  scole - add ia32 emulation, port from freebsd
     68  1.1  scole - create install EFI/cdrom/netbsd
     69  1.3  scole - fix ski to run on other archs beside i386, or at least amd64
     70  1.2  scole 
     71  1.2  scole Pie in the sky
     72  1.2  scole - Xen and itanium!
     73  1.2  scole - qemu and itanium
     74