Home | History | Annotate | Line # | Download | only in doc
      1 #	$NetBSD: history,v 1.12 2025/03/23 10:11:34 andvar Exp $
      2 ---------------------------------------------------------------------------
      3 This document is more included as a historical reference and nostalgia :)
      4 rather than a still worked on list.
      5 ---------------------------------------------------------------------------
      6 (stuff before this time is apparently lost)
      7 
      8 3135	- fixed mode selection on boot
      9 	- page up/down, insert and delete now generate the correct codes in
     10 	  the console
     11 	- the configured modesare now compiled in a separate file rather
     12 	  than in vidcconsole.c
     13 	- The eb timeout reduced to 30 secs
     14 
     15 	- clreos problems fixed
     16 	- / on the keypad generated the correct code
     17 	- the block cursor hove down 2 scan lines to align with characters
     18 	- extended irq renamed netslot
     19 	- extra double mapping of kstack removed
     20 	- kstack located at efbfe000
     21 	- implementation of cpu_swapin() to remap the kstack
     22 	- patch to vm_glue to use kmem_alloc for the kstack
     23 	- extra pmap debugging code added with DEBUG669
     24 	- the pventry tables can not be dumped from the kshell
     25 	  or from a running system.
     26 
     27 	- merged console code v133 into kernel
     28 	- the disklabel code no longer prints a warning if a HD is found
     29 	  without a adfs partition
     30 	- the kbd driver now is capable of setting the keyboard leds.
     31 	- added ioctl to set the keyboard leds.
     32 	- added a routine to read the keyboard state.
     33 	- added a routine to set the keyboard state.
     34 	- added some prototypes to kbd.h
     35 	- implemented irq_setmasks() as an assembly function.
     36 	- added an extra disable irq mask
     37 	- the irq bits from IOMD reg A are cleared as soon as req A is read
     38 	- Debugged the plip driver. The ip packet is now word aligned when
     39 	  passed to the upper network levels
     40 
     41 20/09/95
     42 	- the cpu_switch routine checks the amount of stack space used when
     43 	  swapping in a task and prints a warning when 6K has been used
     44 	- removed the remnants of the old kstack double mapping
     45 	- a separate message is printed for umounts during a halt.
     46 	- added extra validation in copyin() copyout() copyinstr() and
     47           copyoutstr()
     48 	- podule irq handler no longer panics
     49 	- Lark A16 podule now recognised
     50 	- section permission faults now cause bus errors
     51 	- the syscall handler now correctly uses bcopy to copy the register
     52 	  passed parameters
     53 	- the copyin() function now validates the uaddrs argument
     54 	- the kstack is filled with a know pattern on a fork()
     55 	- the postmortem code will check the size of the kstack fill pattern
     56 	- the assembly bcopyinout() now returns EFAULT on error
     57 	- the copyin() copyout() copyinstr() copyoutstr() now return EFAULT
     58 	  if the validation checks fail.
     59 23/09/95
     60 	- the fault handler will report faults from (fu/su)iwintr()
     61 	- added new pmap function to return the address of the next physical
     62 	  page (pmap_next_phys_page).
     63 	- added code to machdep.c to compare the page number against
     64 	  pmap_next_phys_page() to try and locate source to kernel size
     65 	  limit
     66 	- added option to syscall_special (32) to return the address of the
     67 	  next physical page.
     68 	- fixed the primary bootstrap to map more memory for the secondary
     69 	  bootstrap to use.
     70 	- The 936K kernel size limit has been removed.
     71 	- Added support for KTRACE in syscall.c
     72 	- Secondary bootstrap now zeros down its memory
     73 	- cpu_switch now zeros curpcb while there is no valid process
     74 	-
     75 1/10/95
     76 	- cpuswitch now detects trashed stacks.
     77 	- new compile option for generation of enhanced postmortem debugging
     78 	- merged console code 183b
     79 	- implemented a memcpy routine
     80 	- removed remnants of the kstackpte's
     81 	- cleaned old commented debugging code out of cpu_switch
     82 	- Added new comments in exception.S
     83 	- userret() check for a non-zero proc pointer
     84 	- extended postmortem debug for cpu_switch bug
     85 	- updated prototype declarations in machdep.c
     86 	- fixed passing of proc0 pointer into cpu_switch from switch_exit
     87 	- podulebus now recognised Lingenuity podules
     88 	- Lingenuity 16bit SCSI card recognised
     89 
     90 3/10/95
     91 	- new compile option ROTTEN_INARDS to dump full debugging info on
     92 	  postmortem
     93 	- Rewritten postmortem debug information printout
     94 	- Postmortem will now examine the IRQ stack for traceback info
     95 	- Fix cpu_exit() bug thus could result in the idle being entered at
     96 	  splhigh()
     97 	- Added function prototypes for functions called in vm_machdep.c
     98 	- boot0() now makes sure IRQ's and FIQ's have been disabled
     99 	- The ARM700 FPA is now correctly turned off during boot
    100 	- A major has been allocated for the vidcaudio device (36)
    101 	- vidcaudio.c added to mainbus/ and associated support added in
    102 	  conf/ and conf.c
    103 	- Patch to the console code to report the version number
    104 	- Latest version of dev/isa/com.c merged into mainbus/com.c
    105 	- Latest version of dev/isa/lpt.c merged into mainbus/lpt.c
    106 	- Latest version of dev/isa/wd.c merged into mainbus/wd.c
    107 	- new assembly version of copystr added
    108 	- buffer address for beep0 removed from attach message
    109 	- unrecognised undefined instructions are now logged as errors to
    110 	  syslog
    111 	- fpe now attaches a coproc2 handler to stap coproc2 FP instructions
    112 	  and report an error
    113 	- New compile option FPE_INLINE added to fpe.c to inline some of the
    114 	  conversion functions
    115 	- Added new compile option FPE_PROF to fpe.c to compile in FP profiling
    116 	  code
    117 	- 
    118 
    119 14/10/95
    120 	- added podule id for laser direct card
    121 	- added podule id for morley SCSI card
    122 	- added podule id for AXRE SCSI card
    123 	- added podule id for CC midi max card
    124 	- modified primary/secondary bootstraps to reserve special boot
    125 	- memory for hydra board
    126 	- added hydra device
    127 	- Added CPU identification for all hydra processors
    128 	- Private stacks are allocated to all slave processors
    129 	- All hydra processors are halted on reboot
    130 	- podule code checks for chunk directories but does not try to read
    131 	  them yet.
    132 	- polling, immediate execution asc driver written for Acorn SCSI
    133 	  card
    134 	- new special syscalls added to aid development of hydra software
    135 
    136 01/11/95
    137 	- kernel built with new netbsd-current source tree
    138 	- arm32 source updated to conform to latest netbsd-current source
    139 	  tree
    140 
    141 03/11/95
    142 	- ALT-Cursor Left/Right now work the correct way round
    143 	- ALT-F6 now generates the correct code
    144 	- alpha version of the cumana SCSI II driver added
    145 	- alpha version of the ether1 driver added
    146 	- console code upgraded to V191
    147 	- driver directory structure changed.
    148 	- ./src/patch directory updated
    149 	- alpha version of ATAPI CDROM driver added
    150 	- mainbus and podulebus directories split in to public and private
    151 	  directories.
    152 	- warnings from validate_trapframe() are prefixed with "VTF"
    153 	- old rpc console stuff removed from files.arm32 and source moved to
    154 	  arch/arm32/old/
    155 	- the arch/arm32/pmap_stuff dir has been moved to arch/arm32/old/
    156 	- the _mcount.S and belgium.S files have been moved to old and
    157 	  removed from files.arm32
    158 	- the device name to major code in autoconf.c now recognised /dev/cd
    159 	  and /dev/wcd
    160 	- the mountroot code in stubs.c will call cd9660_mountroot() instead
    161 	  of ffs_mountroot() is the root dev is a CDROM major.
    162 	- major 36 allocated to audio device
    163 	- major 37 allocated to vidcvideo device
    164 	- major 38 allocated to hydra device
    165 
    166 
    167 07/11/95
    168 	- cpu_fork() now maps in a page table for each process covering the
    169 	  0M-4M block of memory.
    170 	- VM_MIN_ADDRESS lowered to 0x1000
    171 	- cpu_swapout() unmaps the system page at 0x00000000 from its page
    172 	  table
    173 	- cpu_swapin() wires down the pagetable covering 0x00000000 and
    174 	  maps in the system page at 0x00000000
    175 	- cpu_swapin() and cpu_swapout() moved to vm_machdep.c
    176 	- pmap_enter_pv() no longer panics on duplicate mapping, it just
    177 	  prints a warning.
    178 	- alpha version of the powertec SCSI driver
    179 
    180 15/11/95
    181 	- switch_exit now unmaps the system page.
    182 	- added newline to printf in disksubr.c
    183 	- the console code has been moved to the dev directory
    184 	- cumana SCSI II driver upgraded to support interrupts
    185 	- powertec SCSI II driver upgraded to support interrupts
    186 	- the mount root code in stubs.c will attempt to mount
    187 	  a hd partition as cd9660 if the ffs_mountroot() fails.
    188 	- added missing copyright notices
    189 	- updated some declarations in header files
    190 	- removed DEBUG669 code from pmap.c
    191 	- new syncing routine written for boot()
    192 	- syncing no longer requires kshell support
    193 	- Added extra comments to the boot() function
    194 	- Implemented cpu_sysctl() function (just returns not supported
    195 	  error)
    196 	- The nosync kernel interrupt now correctly uses RB_NOSYNC
    197 	- 
    198 
    199 20/11/95
    200 	- restructure of directories contains device files
    201 	- fixed bug in pmap_pte() that could result in non-word
    202 	  aligned pointers being returned in a off page boundary virtual
    203 	  address was specified.
    204 	-
    205 
    206 24/11/95
    207 	- merged in new netbsd-current source tree 
    208 	- removed all the validate_trapframe() calls
    209 	- the ioctl CONSOLE_BLANKTIME now reloads the blank timer
    210 	- the ioctl CONSOLE_BLANKTIME uses the default blank time if a
    211 	  negative time is specified.
    212 	- the machine id is now passed in the bootconfig structure
    213 	- the eb0 driver will set the MAC address from the machine id
    214 	  if the address has not already been set.
    215 
    216 26/11/95
    217 	- Fixed the definition of va_dcl in arm32/include/varargs.h
    218 	- 
    219 
    220 02/12/95
    221 	- Fixed the WriteShort() macro
    222 	- Removed some redundant code from machdep.c
    223 	- cpu_sysctl is now declared to return an int
    224 	- stubs.c now has prototypes for the floppy driver functions it
    225 	  calls when loading the ramdisc.
    226 	- further debugging work on the ether3 driver
    227 
    228 10/12/95
    229 	- Added uk device for unknown scsi devices to configuration files
    230 	  and conf.c
    231 	- Alpha version of the ether3 ea device driver
    232 
    233 14/12/95
    234 	- Merged in beta version of the ether1 (ie) device driver
    235 	- added ifdefs to stubs.c so the cd9660_mountroot() is only called
    236 	  when the kernel is compiled with CD9660
    237 	- created new text file to track all major and minor numbers
    238 
    239 16/12/95
    240 	- define __FORK_BRAINDAMAGE for compilation with the latest NetBSD
    241 	  sources
    242 	- boot() now calls doshutdownhooks()
    243 	- merged in frank's new debugger code (process_machdep.c, ptrace.h,
    244 	  regs.h)
    245 	- patches stub.c to take account of frank's new code
    246 	- patch cpu.h to give more detail on the PSR bits
    247 	- fixed the setting of p->p_mdregs to point to the trapframe in
    248 	  the kernel mapping of kstack rather than the current mapping.
    249 	- removed some redundant code from mem.c
    250 	- commented out all the trace_debug code
    251 	- cpu_coredump moved from stubs.c to vm_machdep.c
    252 	- implemented ptrace.S in libc
    253 	- boot() no longer sets the curproc to proc0 if it was zero.
    254 	- spl's added to the console locking code
    255 	-
    256 
    257 19/12/95
    258 	- merged in new console code (V203) from Nut
    259 	- dosoftints() now calls pppintr()
    260 
    261 21/12/95
    262 	- sys_sysarch() no longer panics but returns EINVAL instead.
    263 	- added 3 new debugging syscalls for tracing the vnode bug
    264 	- identified what goes wrong with vnodes resulting in a lockup
    265 	- fixed a number of source file headers
    266 	- Added new comments to a number of routines.
    267 	- readdisklabel() now sets the B_AGE flag on its buffer
    268 	- ether3 drive now reports the controller chip type
    269 	- removed all stand and glue code from kshell
    270 	- added a new debugging syscall to all wakeup() to be called
    271 
    272 24/12/95
    273 	- removed redundant physconinit() call in initarm().
    274 	- updated comments in machdep.c
    275 	- added support for multiple swap devices to be specified at boot
    276 	  time
    277 	- changed debugging output in userret()
    278 	- added extra debugging
    279 	- added new debugging syscalls for tracubg the vnode bug
    280 	- added new debugging commands to the kshell
    281 	- added a new insw16() function for faster block transfers
    282 	- created a patch to fix p_nice
    283 	- the wd driver now supports multisector transfers
    284 	- added a new outsw16() function for faster block transfers but is
    285 	  currently untested
    286 	- the existing arm32/fpe directory has been renamed to
    287 	  arm32/fpe-sp
    288 	- started work on integrating the ARM FPE
    289 	- a new fpe directory arm32/fpe-arm has been created for the new FPE
    290 	- file arm32/cpu.S renamed to arm32/cpuswitch.S
    291 	- created new mainbus device 'cpu' (mainbus/cpu.c)
    292 	- created new header file include/cpus.h to hold macros and
    293 	  structure definitions for CPUs.
    294 	- all identify functions for the processor and FPA have been moved
    295 	  to mainbus/cpu.c
    296 	- FPE is now attached during the CPU attachment during
    297 	  autoconfiguration
    298 	- Identification of CPU and FPU split into separate functions in
    299 	  mainbus/cpu.c
    300 	- Added new function initialise_fpe() to fpe-sp/fpe.c This is the
    301 	  new initialisation point for the FPE. All vector claiming is done
    302 	  in this routine. Routine is also responsible for IDing the FPE.
    303 	- ramdisc memory allocation now only ever done in the ramdisc driver
    304 	- cpu_model now declared in mainbus/cpu.c
    305 	- rpc_configure() renamed to configure()
    306 	- added function need_proftick() to clock.c
    307 	- further development work ARM FPE driver
    308 	- glue code for ARM FPE written and tested.
    309 	- ARM FPE now gets first chance as being installed with
    310 	  the existing FPE installed as a fallback if the ARM FPE
    311 	  installation failed.
    312 	- Hooks for the ARM FPE added in cpu_fork() cpu_exit() and
    313 	  cpu_switch()
    314 	- Recoding of ether3 driver started.
    315 	- More debugging code added to trace vnode bug
    316 	- macro added to syscall.c to handle exit from the syscall handler
    317 	  for special development syscalls.
    318 	- Vnode bug identified as a corruption of the first word (v_flag)
    319 	  of certain vnodes.
    320 	- Ether3 driver rewritten and debugged. Now a beta stage driver
    321 	- Vnode corruption traced to console code.
    322 	- Ether3 drive now has interface buffer memory tests
    323 	- vnode corruption traced to do_scrolldown() routine in the
    324 	  console driver.
    325 	- vnode corruption bug located and fixed. Incorrect loop start and
    326 	  end points when scrolling the character map down (writing beyond
    327 	  allocated memory).
    328 	- Started work on rewriting the etherB driver
    329 	- cleaned up various header files
    330 	- removed stub.c as it was no longer needed
    331 	- updated strstr.c
    332 	- hydra code hooks now only compiled in if hydra device is
    333 	  configured
    334 	- EtherB driver rewritten to match recoding of ether3 driver
    335 	- EtherB driver now a beta stage driver
    336 	- Work started on generic driver code for SEEQ EDLC's
    337 	- vidcvideo device now supports multiple openings
    338 	- EtherB driver now puts the controller to sleep when not active
    339 	- strstr() replaced with version borrowed from libc/string/strstr.c
    340 
    341 05/01/96
    342 	- Further development of ARM FPE
    343 	- generic fas216 code no longer experimental/NDA
    344 	- powertec scsi driver no longer experimental/NDA
    345 	- entry to undefined instruction handlers is now indirected in
    346 	  exception.s
    347 	- entry to the undefined instruction handlers is made a trapframe
    348 	  on the stack and r0-r12 preserved from exception.
    349 	- bounce code added so the existing undefined instruction handler
    350 	  can be called with r0 pointing to the trapframe.
    351 	- new function arm_fpe_copycontext created
    352 	- fixed the use of FP instructions in sfas.c
    353 	- fixed errors in the softint code
    354 	- netns support can be compiled in the kernel
    355 	- fixed warnings in fpe-sp/fpe.c and mainbus/cpu.c
    356 
    357 10/01/96
    358 	- exception.S updated pending new undefined instruction handling
    359 	  code
    360 	- merged in new wd driver from NetBSD-current
    361 	- merged in new com driver from NetBSD-current
    362 	- merged in new fd driver from NetBSD-current
    363 	- created new file sys_machdep.c for machine dependent syscall stuff
    364 	- moved sys_sysctl from machdep.c to sys_machdep.c
    365 	- fixed nested comments in iic.S
    366 	- removed old bug tracing code from cpuswitch.S
    367 	- debugged new fd driver
    368 
    369 13/01/96
    370 	- undefined mode r13 added to the pcb structure
    371 	- new version of the ARM fpe built
    372 	- ARM FPE now has core deactivate routine accessible
    373 	- Call back from ARM FPE added on instruction completion
    374 	- cpu_switch() now switches UND32 mode r13
    375 	- cpu_fork() now sets up UND32 mode r13 in pcb
    376 	- undefined vector now calls stub routine that indirects
    377 	  via address held in data area.
    378 	- data abort handler address now held in data area rather
    379 	  than text area.
    380 	- prefetch abort handler address now held in data area rather
    381 	  than text area.
    382 	- disabled warnings about soft errors from the fd driver
    383 
    384 17/01/96
    385 	- implemented pmap_resident_count()
    386 	- fixed the kernel avail_start and avail_end variable. This
    387 	  fixes the divide by zero bug in /bin/ps
    388 	- ps now reports the correct resident size
    389 
    390 19/01/96
    391 	- kernel now supports permission faults in UND32 mode.
    392 	- kernel shell now has kshell> prompt instead of #
    393 	- ramdisc loading code has been moved from stubs.c to fd.c
    394 	- ramdisc loading code now uses a rd_conf structure to
    395 	  describe the ramdisc.
    396 	- rd_hooks.c file added to the arm32/dev directory in
    397 	  order to support the generic ramdisk.
    398 	- patch to generic ramdisc driver to allow a device match hook
    399 	- mainbus/ramdisc.c removed.
    400 	- generic ramdisc has now replaces to mainbus/ramdisc.
    401 	- fault.c reformatted
    402 	- new compile symbols introduced to compile in debug code for
    403 	  fault correction.
    404 	- all remnants of the trace_debug code removed.
    405 	- armfpe code moved from arm32/fpe-arm/arm32 to arm32/fpe-arm/
    406 	- fu*() su*() functions moved from libkern into arm32/fusu.c
    407 	- added code to locore.S to traceback frames on the user process
    408 	  stack
    409 	- added variable to enable / disable tracing back of user process
    410 	  stacks
    411 	- added syscall to control user stack trackbacks.
    412 	- optimised ARM FPE exception delivery code
    413 	- implemented ARM FPE post processing callback glue
    414 	- ARM FPE post processor now calls user
    415 	- ARM FPE post processor optimised to recover some of the
    416 	  performance lost by calling userret()
    417 	- integrated alpha version of the etherH driver
    418 	- updated ramdisc hooks to removed the need for a rd_match_hook()
    419 	  function
    420 	- added Oak to the list of podule manufacturers
    421 	- kernel now recognised Oak SCSI I cards.
    422 	- Added generic NCR5380 SCSI driver code
    423 	- integrating in alpha version of the oak SCSI driver
    424 
    425 26/01/96
    426 	- merged in latest updates from the NetBSD-current source tree
    427 
    428 29/01/96
    429 	- code updated for merging into NetBSD source tree
    430 
    431 02/02/96
    432 	- assembly symbol file now names assym.h instead of assym.s
    433 	- The symbol LOCORE has been replaced with _LOCORE
    434 	- ramdisc loading code in now compiled in conditionally on
    435 	  RAMDISK_HOOKS
    436 	- Further development of hydrabus device.
    437 	- CPUs can noe be attached to both the mainbus and the hydrabus
    438 	- hooks for hydrabus device updated in pmap.c syscall.c and
    439 	  machdep.c
    440 	- Extra comments added in exception.S
    441 	- sizeof(struct trapframe) now defined in assym.h
    442 	- register fixup for data transfer instruction aborts now handles
    443 	  LDC/STC instructions i.e. hardware executed LDF/STF
    444 	- configuration files updated for latest devices
    445 	- fixed use of mkdepend in makefile
    446 	- fixed the bug that caused panics when issuing the mode change
    447 	  ioctl to the vidcvideo device
    448 	- console code version number updated
    449 	- Updated armfpe_post_proc() to take a trapframe pointer as the
    450 	  second argument
    451 	- updated the armfpe_post_proc_glue() code to fake a trapframe
    452 	  structure from the FPE frame before calling the post proc handler
    453 	  so that sendsig has a valid trapframe in p->p_md.md_regs
    454 	- updated the armfpe_post_proc_glue() code to patch the FPE frame
    455 	  with data from the trapframe on return from the post proc handler.
    456 	- signal delivery is now working during FP instructions.
    457 	- mondef code resurrected and renamed to setdisplay and moved to the
    458 	  stand directory.
    459 
    460 
    461 NetBSD/arm32 source code is now merged in to the NetBSD source tree.
    462 All code changes are now logged via CVS and are available from the
    463 NetBSD source-changes mailing list.
    464