history revision 1.5 1 # $NetBSD: history,v 1.5 2011/06/30 20:09:17 wiz 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 aparently 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 - implmented 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 argumant
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 - Seondary 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 trahsed 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 gernerates 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 an 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 boundry 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 mulitple 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 idenitfied 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 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 comile 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 reconised 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