Commit Graph

18304 Commits

Author SHA1 Message Date
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
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
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
martin 5689de1472 Bugfixes and acceleration support.
From Michael Lorenz.
2005-01-09 16:29:20 +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
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
kanaoka 6488f7bcc4 - Use aprint_*.
- Remove unnecesarry code.
 - Changes some cosmetic.
2005-01-09 12:15:36 +00:00
joff c8da149022 add tslcd 2005-01-08 20:26:28 +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
fredb f8f4807136 Regen. 2005-01-08 16:07:20 +00:00
fredb 99ad984e37 Recognize the Broadcom 5721 Gigabit Ethernet, as found on SuperMicro P8SCi
motherboards.
2005-01-08 16:00:03 +00:00
ginsbach 4b4b860766 regen 2005-01-08 04:58:22 +00:00
ginsbach d3c0713e84 Use the more common name, Radeon U1, for the IGP 320M. 2005-01-08 04:53:39 +00:00
joff de9b3a018a Add TS7200/EP93xx ARM related device names 2005-01-08 04:04:00 +00:00
yamt 06fbfe5c17 constify. 2005-01-08 03:16:51 +00:00
joff 8d1a86c97d add tscs 2005-01-08 02:56:35 +00:00
joff 4b903bb725 Support for TS-ETH10 PC/104 enet isa card based on CS8900 2005-01-08 02:55:52 +00:00
ginsbach 661eb28d4c Add command to read the defect data from a direct access device. 2005-01-07 02:08:34 +00:00
he 33d45d5d2a Add recognition of LSI Logic FC919X chips, as found on
LSI Logic LSI7102XP-LC controllers.
Document FC919X and FC929X with separate entries in the man page.
2005-01-06 14:58:00 +00:00
he c4d71a859c Regen after adding entry for LSI Logic FC919X. 2005-01-06 14:56:22 +00:00
he 9d71f19b13 Add entry for LSI Logic FC919X, as found on LSI Logic LSI7102XP-LC
controllers.
2005-01-06 14:55:37 +00:00
matt 1e9fedba3e Make sure to get the right softc in rriodone. 2005-01-04 19:36:48 +00:00
dyoung 00f3f1b613 In ad hoc mode, start the ath rate adaptation with the lowest, most
robust transmit bit rate.  From Greg Troxel.
2005-01-04 01:45:04 +00:00
dyoung e470ffcf3b Set initial conditions to guarantee that when read_seeprom toggles
Chip Select, it turns *on* rather than *off*.
2005-01-04 01:04:52 +00:00
dyoung 9a756f795b Add the logic for IBSS merges. 2005-01-04 01:00:30 +00:00
dyoung 5dc6377838 IBSS-merge clean-up, inspired by some Linux patches from Jon Anderson
(mail@janderson.ca): remove ieee80211_ibss_merge's TSFT argument.
Do the TSFT comparison in the drivers (ath, atw).  Remove a lot of
extraneous debug statements from ieee80211_ibss_merge.

Set the ieee80211_node's state to IEEE80211_STA_BSS after it's been
copied to the ic_bss, not before.

In struct ieee80211_node, make the ni_tstamp field a union of a
uint64_t and the 8 TSF octets so that it's easier to compare a
neighbor's TSF with the local TSF.

Log IBSS merges (Greg Troxel's suggestion).  Also log IBSS creation.
These are rare and important events that deserve to be logged.
2005-01-04 00:56:51 +00:00
dyoung 66e0c6fbb9 sys/dev/ic/rtw.c:
Cosmetic: remove two short ladders from rtw_init.  Fit the
        NIC registers print-out onto one line using the RTW_PRINT_REGS
        macro.

sys/dev/ic/rtwvar.h:

        Add RTW_PRINT_REGS wrapper macro for rtw_print_regs.  It
        is a null op unless defined(RTW_DEBUG).
2005-01-03 03:25:06 +00:00
dyoung 4903d25d90 In sys/dev/ic/rtw.c:
Use clue from rtk(4) and re(4) to fix the rtw(4) packet
	filter.  Previously, I was using the wrong CRC32 function
	to hash multicast addresses; to compensate, I set the
	multicast filter to all 1s.  Now that I hash the addresses
	correctly, I do not any longer set the filter to all 1s.

	In rtw_ioctl, avoid gratuitous re-initialization when the
	interface flags change.  If a !IFF_UP -> IFF_UP transition,
	call rtw_init(); otherwise, only reload the packet filter.

In sys/dev/ic/rtwreg.h:

	Put useful combinations of Receiver Control Register flags
	in RTW_RCR_PKTFILT_MASK, RTW_RCR_MONITOR, and
	RTW_RCR_PKTFILT_DEFAULT.  (XXX RTW_RCR_MONITOR should be
	called RTW_RCR_PKTFILT_MONITOR.)
2005-01-03 03:07:12 +00:00
scw 71d14cde75 Major re-write of the recently-committed Synaptics Touchpad driver,
prompted by jittery and/or random movement during tap gestures, lack
of edge motion, and a general desire to make use of the extra features
available with the native protocol.

 - Ditch the kernel thread; it was overkill for the small amount of
   processing required to deal with touchpad events.

 - If we fail to probe a Synaptics touchpad, issue a RESET command
   to ensure that whatever device is out there is left in a sane
   state (thanks to Reinoud Zandijk for the hint).

 - Completely re-write gesture support.

 - Put the touchpad in 80 packets per second mode and count them so
   they can be used to time gesture durations (instead of using
   mono_time).

 - Enhance up/down button support with options to use them to emulate
   the middle button or Z-axis events (like a traditional wheel mouse).

 - Add 'edge motion'. If a drag gesture is in progress, and the reported
   finger position moves to the touchpad's border region, continue
   to report movement events at a fixed rate as if the finger carried
   on moving in the same direction. This restores some functionality
   usually provided by the touchpad's firmware in PS/2 mode.

 - Filter successive movement events to reduce jitter. When scaling
   movement events, fold the remainder into the next event to prevent
   loss of information during slow/small finger movements. Pointer
   movement is now much more refined.

 - Add support for touchpads which can report more than one finger on
   the pad simultaneously. Optionally use this feature for middle/right
   button emulation (i.e. tap two fingers to emulate middle button).
   This feature is disabled by default (for now) to avoid surprise
   pasting of clipboard text. ;-)
2005-01-02 22:37:12 +00:00
mhitch 4b076289c1 Change screen blanking to be like other *fb.c drivers (and to not call
sfb_screenblank() needlessly).
2005-01-02 20:43:23 +00:00
mhitch b603617fbc Fix and simplify incorrect check for screen blanking in WSDISPLAYIO_SVIDEO. 2005-01-02 20:41:20 +00:00
mhitch c2f973c445 Fix a 3 year old error which caused px_init() to fail. Fixes PR 28798. 2005-01-02 19:25:56 +00:00
martin 9eba7eabba PR kern/28837: fix undef typo. 2005-01-02 15:43:49 +00:00
tsutsui 290f8ccd57 - use ANSI function decls
- remove __P()
- u_intNN_t -> uintNN_t
2005-01-02 12:41:03 +00:00
tsutsui 1d25696d75 u_intNN_t -> uintNN_t 2005-01-02 12:22:18 +00:00
tsutsui 2be3acc29a u_intNN_t -> uintNN_t 2005-01-02 12:03:12 +00:00
dyoung 1236e46cff Guess the meanings of most registers on the baseband processor.
Available documentation is incomplete, so the true meanings will
have to be found out by painstaking experimentation.
2005-01-02 04:29:36 +00:00
dyoung 37420795ec Cosmetic: change u_int{8,16,32,64}_t to C99-style uint{8,16,32,64}_t,
which is preferred.
2005-01-02 04:23:03 +00:00
thorpej 092726cfb1 Make this compile again. 2005-01-01 19:29:59 +00:00
bjh21 b1cd280714 Go back to filtering out KBD_IDLE events by default. The Xsun shipped with
NetBSD 2.0 gets confused by them (generating events for keycode 134 when
all keys are released), and even when that's fixed we should keep one release
worth of backward compatibility.
2004-12-31 14:18:35 +00:00
jonathan 54528c79ad Add rgephy driver to sys/dev/mii/files.mii. Supports integrated PHY
in Realtek 8169S.
2004-12-30 23:03:19 +00:00
bjh21 70c402ea14 Since I've got the datasheets in front of me, add #defines for the missing
registers in the supported MK48Txx chips.
2004-12-30 12:36:29 +00:00
bjh21 73c7ba9d59 If clock_ymdhms_to_secs() fails, return ERANGE. This gets my ELC with
a broken NVRAM to boot cleanly.
2004-12-29 21:33:42 +00:00
bjh21 8f7f78f2f0 In clock_ymdhms_to_secs(), rather than returning rubbish when presented with
a year before 1970 or a date beyond the time_t rollover, return -1 so callers
can detect it.  Callers which expect the function not to fail just get a
different kind of rubbish from before.
2004-12-29 20:55:57 +00:00
dyoung 23e8e34093 Remove the cut & pasted copyright and apply my copyright. 2004-12-29 19:43:27 +00:00
dyoung cef7a909d1 Add my copyright. 2004-12-29 19:41:54 +00:00
dyoung c3a19d4272 In rtw_detach, flag the rtw as "invalid" (RTW_F_INVALID). Do not
try to power-down the RF section of an invalid rtw.

The radiotap signal quality field is 16, not 8, bits wide.  Convert
the byte order.
2004-12-29 19:41:04 +00:00
jdolecek 015f874310 fix error printf()
change one mask to use hexadecimal number instead of decimal, so it's easier
to verify
2004-12-29 18:14:12 +00:00
imp ed235136f1 regen for usbdevs 1.392 2004-12-29 08:40:30 +00:00