Commit Graph

74226 Commits

Author SHA1 Message Date
mycroft
7f1fe4e81f Rearrange some code slightly to avoid uninitialized variable warnings. 2005-01-11 00:19:36 +00:00
joff
5b4ec09e40 Add GPIO addresses 2005-01-10 23:17:53 +00:00
kent
8874b02756 2.99.13 (audio in-kernel API changes) 2005-01-10 22:08:55 +00:00
kent
23b5d91433 merge kent-audio1 branch, which introduces audio filter pipeline to the MI
audio framework


Summary of changes:

* struct audio_params
  - remove sw_code, factor, factor_denom, hw_sample_rate,
hw_encoding ,hw_precision, and hw_channels.  Conversion information
is conveyed by stream_filter_list_t.
  - change the type of sample_rate: u_long -> u_int
  - add `validbits,' which represents the valid data size in
precision bits.  It is required in order to distinguish 24/32bit
from 24/24bit or 32/32bit.

* audio_hw_if
 - add two parameters to set_params()
	stream_filter_list_t *pfil, stream_filter_list *rfil
   A HW driver should set filter recipes for requested formats
 - constify audio_params parameters of trigger_output() and
trigger_input().  They represent audio formats for the hardware.
 - make open() and close() optional
 - add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters
 to round_blocksize()

* sw_code is replaced with stream_filter_t.
  stream_filer_t converts audio data in an input buffer and writes
into another output buffer unlike sw_code, which converts data in
single buffer.
  converters in dev/auconv.c, dev/mulaw.c, dev/aurateconv.c,
dev/tc/bba.c, dev/ic/msm6258.c, and arch/arm/iomd/vidcaudio.c are
reimplemented as stream_filter_t

* MI audio
 - audiosetinfo() builds filter pipelines from stream_filter_list_t
filled by audio_hw_if::set_params()
 - audiosetinfo() returns with EINVAL if mmapped and set_params()
requests filters
 - audio_write(), audio_pint(), and audio_rint() invoke a filter
pipeline.
 - ioctl() for FIONREAD, AUDIO_WSEEK, AUDIO_GETIOFFS,
AUDIO_GETOOFFS, and audio_prinfo::{seek,samples} for
AUDIO_GETINFO handle values for a buffer nearest to userland.

* add `struct device *' parameter to ac97_attach()

* all of audio HW drivers follow audio_hw_if and ac97 changes
2005-01-10 22:01:36 +00:00
chs
a1dc78ab6b use a global variable to ensure that only one instance is configured
rather than requiring that its unit number be zero.
simplify by not pretending that nexts can have more than 1 zsc.
2005-01-10 17:07:09 +00:00
chs
da79fa5c17 de-__P, remove register, ansify. 2005-01-10 17:01:55 +00:00
chs
84f5997a1a really remove register. 2005-01-10 17:01:22 +00:00
chs
69ef38f074 de-__P, remove register, ansify, other cleanup. 2005-01-10 16:47:48 +00:00
chs
d65ac815a8 use a global variable to ensure that only one instance is configured
rather than requiring that its unit number be zero.
simplify by not pretending that powermacs can have more than 1 zsc.
2005-01-10 16:38:06 +00:00
chs
35cacfdeb8 de-__P, remove register, ansify. 2005-01-10 16:34:46 +00:00
tls
abcbeb46d9 Users have observed that the amount of memory used by the metadata cache
can in some situations exceed the high-water mark, and stay there once it
gets there.  Adjust the canrelease function so that it will immediately
bring us back down to the high-water mark in this situation.

How can this happen at all?  Consider a machine with two filesystems, one
with a much larger blocksize than the other.  If the small-block filesystem
is very busy, growing the cache up to the high-water mark, and then the
large-block filesystem becomes busy, buffers will be recycled (since we
are at the high-water mark) but _grow each time they're recycled_.  Once
we're above the high-water mark, the canrelease call in allocbuf (without
this change) doesn't shrink us back down below it; so things get worse and
worse.
2005-01-10 15:29:50 +00:00
matt
b046d5ecf9 Now that countless UVM bugs have been fixed, enable "topdown" memory
allocation by default.
2005-01-10 05:42:09 +00:00
mycroft
87e784e1de Now that countless UVM bugs have been fixed, enable "topdown" memory
allocation by default.
2005-01-10 05:34:51 +00:00
mhitch
248d777d24 Fix Maxine keyboard and mouse ioctl routines to return EPASSTHROUGH for
unrecognized commands so they can be passed to other handlers.
2005-01-10 04:43:34 +00:00
mhitch
4deb82db56 Maxine mouse buttons were being mapped incorrectly (old dtop.c code mapped
them to serial mouse buttons, which were then mapped into events to pass
to the X server).
Also fix bug in mouse motion - putting 2 unsigned bytes into an integer
resulted in a 16-bit unsigned value, so negative mouse motion didn't work.
2005-01-10 04:40:05 +00:00
lukem
4ae6a6d6f4 Support -DNOINET6 to disable USE_INET6 (a la the FreeBSD section earlier) 2005-01-10 02:10:47 +00:00
smb
ddd2ade252 Add a software watchdog timer facility. Because this slightly
changes the "tickle" model of wdogctl(8), it was modified as well;
while I was in there, I cleaned up the argument parsing.

The code was reviewed by simonb@.
2005-01-09 22:51:32 +00:00
joff
fdb2df8f5f enable pcic(9) PCMCIA controllers in default kernel 2005-01-09 21:44:32 +00:00
joff
6b75e7b0f9 Allow for pcic(9) attachments on the ISA bus 2005-01-09 21:40:02 +00:00
joff
0686f5514c call isa_bs_mallocok() right before ISA bus attachment 2005-01-09 21:35:51 +00:00
joff
453e7edc70 Implement extent(9) based management of ISA io/mem so pcic(9) has
a chance of working.
2005-01-09 21:32:08 +00:00
christos
4bfe82cbac Flip the order of two lines I mixed. Thanks to wiz for noticing. 2005-01-09 20:25:26 +00:00
christos
870890917c now takes an optional filename. 2005-01-09 19:23:26 +00:00
christos
82ee9647b8 Allow PT_DUMPCORE to specify the core filename. 2005-01-09 19:22:55 +00:00
tsutsui
e34a3b7f08 Small optimization in vmapbuf()/vunmapbuf().
BTW, should we also pass 'VM_PROT_READ|VM_PROT_WRITE' to flags
with PMAP_WIRED for pmap_enter() in vmapbuf()?
2005-01-09 17:41:34 +00:00
tsutsui
a9b3f31984 Some cosmetics:
- remove __P()
- use ansi decls
- u_int8_t, u_char -> uint8_t
- use macro for debug printfs
- some KNF
2005-01-09 16:59:41 +00:00
chs
8975a0856f adjust the UBC mapping code to support non-vnode uvm_objects.
this means we can no longer look at the vnode size to determine how many
pages to request in a fault, which is good since for NFS the size can change
out from under us on the server anyway.  there's also a new flag UBC_UNMAP
for ubc_release(), so that the file system code can make the decision about
whether to cache mappings for files being used as executables.
2005-01-09 16:42:43 +00:00
martin
5689de1472 Bugfixes and acceleration support.
From Michael Lorenz.
2005-01-09 16:29:20 +00:00
joff
5f20950e38 o reversed sense of RS in writereg
o attempt HD44780 reset on open if LCD not detected at bootup
o skip everything if sc_dev_ok == 0 in writereg/readreg
2005-01-09 15:48:51 +00:00
joff
838c742991 Handle (i.e. don't lock up the kernel in hd44780_busy_wait) the case of the
LCD not being there.
2005-01-09 15:43:56 +00:00
tsutsui
8d65a2e17f - Switch to wscons(4) with MI vga(4), pckbc(4) and pms(4).
- Reorganize console initialization code like i386 rather than cninit().
Note old pccons/opms and ofcons support still works.

XXX Xserver is not tested because XF86_4 doesn't have support
XXX for IGS CyberPro2010 on shark. (yet?)
2005-01-09 15:39:59 +00:00
tsutsui
7da0e84338 - Adapt to vga_common_attach() API changes.
- Add more VGA initialization code to vga_ofbus_cnattach() from pccons.c.
- Export vga_ofbus_cnattach() prototype for consinit() ops.
2005-01-09 15:29:27 +00:00
tsutsui
01c812cc7b Add bus_space_copy_region_2() op, which is required by MI vga(4),
from sys/arch/arm/arm/bus_space_asm_generic.S.

XXX: isa_io_asm.S and bus_space_asm_generic.S is mostly identical.
2005-01-09 15:26:19 +00:00
kanaoka
dcccc9d794 sys/dev/ic/rtl8169.c:
- re_attach(): Use bus_dma* directly instead of calling re_alloc().
 - re_attach(): Free bus_dma* resources if attach fails.
 - re_detach(): Free bus_dma* resources.
 - re_newbuf(): Remove unnecessary error check.

sys/dev/ic/rtl81x9reg.h:
 - Define RTK_NTXSEGS.

sys/dev/ic/rtl81x9var.h:
 - Add new members to struct rtk_list_data for bus_dma*.
2005-01-09 12:25:25 +00:00
yamt
d502f705e1 ifioctl: don't use super user priviledge unless it's needed. 2005-01-09 12:18:46 +00:00
kanaoka
6488f7bcc4 - Use aprint_*.
- Remove unnecesarry code.
 - Changes some cosmetic.
2005-01-09 12:15:36 +00:00
mycroft
e72fc6717e Whoops -- move the location of the VOP_OPEN()/VOP_CLOSE(), et al, from
foo_mountfs() to foo_mount(), to match the new mountroot API.
Also, for ext2fs and lfs, copy some restructuring from ffs to allow changing
file system parameters without specifying the device name.
(ntfs could use some more work.)
2005-01-09 09:27:17 +00:00
mycroft
0461b30ac3 Rework the mountroot interface so that vfs_mountroot() opens the root device
and just passes it on to the file system functions.  This avoids opening and
closing the device several times.

Mentioned on tech-kern some time ago, IIRC.  I've been running this for a
long time.
2005-01-09 03:11:48 +00:00
yamt
e5bd47dc3c invalidate cache if filesize is changed besides our activity
because it means that we're out of sync with the server.
2005-01-09 01:32:32 +00:00
cube
da24800d8c Install net/if_tap.h. 2005-01-08 22:28:51 +00:00
cube
0615d0207e Addition of tap(4).
NAME
     tap - virtual Ethernet device

SYNOPSIS
     pseudo-device tap

DESCRIPTION
     The tap driver allows the creation and use of virtual Ethernet devices.
     Those interfaces appear just as any real Ethernet NIC to the kernel, but
     can also be accessed by userland through a character device node in order
     to read frames being sent by the system or to inject frames.

     In that respect it is very similar to what tun(4) provides, but the added
     Ethernet layer allows easy integration with machine emulators or virtual
     Ethernet networks through the use of bridge(4) with tunneling.

``Qui tacet consentire videtur.''
2005-01-08 22:27:54 +00:00
joff
9a859b8fc6 Support LCD by default on TS-7200 2005-01-08 20:41:56 +00:00
joff
63b4d87a37 Add tslcd device 2005-01-08 20:39:18 +00:00
joff
c8da149022 add tslcd 2005-01-08 20:26:28 +00:00
joff
8bf98807a3 Add tslcd device 2005-01-08 20:24:59 +00:00
joff
c87859c9da Support for bit-banging HD44780 bus cycles on the generic LCD header 2005-01-08 20:23:32 +00:00
joff
762a60356c Replace the rwrite and rread functions that take a bus_space_tag_t and
bus_space_handle_t with the new writereg and readreg
functions that take a struct hd44780_chip * and a u_int32_t rs (register-select)
2005-01-08 20:21:00 +00:00
joff
3d76a36e9e Change TIMEOUT_XXX to HD_TIMEOUT_XXX 2005-01-08 20:19:08 +00:00
joff
79ce2f10af Various improvements for connecting HD44780s using bit-banging style devices
o add sc_writereg and sc_readreg functions that get passed the hd44780_chip
  struct and RS (register-select) signal
o add sc_dev to struct hd44780_chip so upper level read/write routines can get
  back to their parent softc
o change TIMEOUT_XXX to HD_TIMEOUT_XXX
o remove sc_rread and sc_rwrite in favor of new sc_writereg and sc_readreg
o add new flag HD_UP to sc_flags that is set once 4bit/8bit mode selection
  has been finalized.
o remove sc_irwrite, MD readreg/writereg should check state of HD_UP instead
2005-01-08 20:17:22 +00:00
mhitch
d6b26ac1f0 Fix MAXINE keyboard multi-key press bug. Keyboard sends all currently
depressed keys in each message.  Any keys in current message that are
also present in previous message are ignored.  However, copying a byte
array into an integer array and comparing entry by entry doesn't have
the desired effect.  Change the definition of the save buffer to match
the current message buffer data.
2005-01-08 18:48:34 +00:00