- Major overhaul.
- Removed all the RiscPC and RC7500 specific code and moved that into
separate files for the two machine architectures.
- This routine now provides support for the machine specific machdep
code and provides cpu_startup().
- New versions of the drivers for the devices that really are IOMD
specific. The old arm32/mainbus drivers have either been rewritten
and are now child devices of the IOMD or they have been restructured
and split into generic drivers will IOMD specific attachments.
- These files are not generic or even really mainbus specific.
They are IOMD specific device.
- These devices have been re-written as child devices of the IOMD
device and the new versions will take up residence in the arm32/iomd
directory with the other IOMD specific code.
- IOMD specific clock support. This used to the the generic ARM clock
support but is now specific to the IOMD device.
- Updated to support new IOMD device etc.
- IOMD specific interrupt handling. These files are mainly the old
arch/arm32/irq* files moved here and updated for new iomd device etc.
(revision history maintained).
- Create an independ IOMD device that can be utilised by all ARM
architectures that use an IOMD.
- Configure all IOMD child devices based on the IOMD type and features.
- Debugged so mis-disassembled instructions.
- Change the main disassembled so that the function to use for
printing can be passed in as an parameter.
- Provide wrappers for disassembling using the standard kernel
printf() and db_printf()
- Most changes are comment cleanups.
_ iomd.h is no longer an exported header.
- Added intr.h for MI interrupt definitions.
- Added definitions for ARM8 cpu.
- Added bus dma support.
pseudo-device rnd # /dev/random and in-kernel generator
in config files.
o Add declaration to all architectures.
o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
that this code is derived in part from Ted Tyso's linux code.
Only assembly version for i386 bswap16 and bswap32 for now (bswap64 uses
bswap32). Contribution of assembly versions of these are welcome.
Add byte-swapping of ext2fs metadata for big-endian systems.
Tested on i386 and sparc.
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
at the same time instead by using two different calls. This enables
it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
play and record settings are independent.
- Fix some buglets in audio.c.
- Change the way attach and open works to allow multiple audio
devices.
- Split the mulaw.c file into two to avoid dragging in mulaw
convertsion when they are not needed. Add 16 bit alaw/mulaw tables.
- Change the way audio properties are gotten.
- Recognize more versions os SoundBlaster.
Removed some un-necessary cache synchronisations.
Call the cpu_sleep() function in an infinite loop in halt().
Removed the long dead swap specifier from rc7500 initarm().
the only timings we know are the ones inherited from the boot and the
drivers that will attach to the bus may change these.
Use the IS_PODULE macro for checking manufacturer and podule id's
against attach args.
PROFILE_ASM are defined.
Added missing .data directive prior to the curpcb declaration.
Fixed the calling of the cpu sleep function in idle(). The sleep function
takes a single argument which is the sleep mode. This is currently unused
but 0 should be passed for future compatibility.
sense code for zero and if found repeat the request sense. This solves
a bug in the sbic driver when accessing JAZ drives that results in
faulty sense data being returned following a transfer. A retry returns
the correct information.
This is probably showing up a more fundemental bug in the sbic driver
and will probably have to wait for a complete overhaul of the sbic
driver (planned) for a perfect fix.
Fix supplied by Rob Black <r.black@ic.ac.uk>
shift value thus making register more flexible.
Remove the absolute shift of 2 in all the podule read/write routines and
use the tag cookie (passed in r0) as the shift value.
register shift value.
For the podulebus_bs_tag structure set the shift to 2 (the current
hardcoded value in the actual read/write routines).
Use the cookie to provide the register shift in podulebus_subregion().
the locators.
In wdcprobe_internal() set the WDCF_32BIT flag if the data32 io handle
is set.
All transfers to and from the data register now check for softc flags
to see if 32 bit transfers are enabled i.e. reading drive parameters
and doing a dump will use 32 bit transfers as well.
In the probe routines check the mainbus attach args mb_iobase field
to verify that the iobase did not default as an iobase address needs
to be specifically specified.
they have different podule ID's.
Always attach the driver even if it appears to fail the tx test as there
appear to be a collection of cards around that will fail this tx test but
will actually work ok - This problem needs further investigation.
- It is now possible to handle devices that want "looping" DMA,
e.g. the SoundBlaster correctly. The WSS and SB drivers use this.
To do this several new methods were introduced in audio_hw_if.
- Different silence handling (forced by previous change).
- The audio driver can now be mmap()-ed, but due to problems in
the VM system only for writing for now.
- The OSS (Linux) audio emulation takes advantage of some of the
new features.
renamed AUDIO_ENCODING_SLINEAR and AUDIO_ENCODING_LINEAR reverts to the
NetBSD 1.2 sematics. A kernel with COMPAT_12 defined will accept
AUDIO_ENCODING_LINEAR and treat it as before, without COMPAT_12 it
will be rejected.
Set the encoding parameters slightly differently.
Remove the SW encoding/decodinf functions from this interface
and move them to the audio_parameter struct; this is both more efficient
and flexible.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.
For the detailed change history, look at the commit log entries for
the is-newarp branch.
MMU in boot0().
This solves the problem of cache hits after the kernel has rebooted the
machine as even with the cache off hits will occur for data/instructions
already in the cache.