History log of /freebsd/sys/dev/sound/pci/ich.c (Results 26 – 50 of 180)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 2e334adf 18-Apr-2007 Ariff Abdullah <ariff@FreeBSD.org>

sndbuf_alloc() now accept dmaflags argument which will be forwarded to
internal bus_dmammem_alloc() for greater flexibility on setting up DMA /
page attributes.


# 703c934a 21-Mar-2007 Ariff Abdullah <ariff@FreeBSD.org>

Memory leak killing spree, mostly bus_dma(9) related.


# 4582b3a1 15-Mar-2007 Ariff Abdullah <ariff@FreeBSD.org>

Fix severe out-of-bound mtx "type" pointer, causing WITNESS refcount
confusions and panic provided that the following conditions are met:

1) WITNESS is enabled (watch/trace).
2) Using modules, i

Fix severe out-of-bound mtx "type" pointer, causing WITNESS refcount
confusions and panic provided that the following conditions are met:

1) WITNESS is enabled (watch/trace).
2) Using modules, instead of statically linked (Not a strict
requirement, but easier to reproduce this way).
3) 2 or more modules share the same mtx type ("sound softc").
- They might share the same name (strcmp() == 0), but it always
point to different address.
4) Repetitive kldunload/load on any module that shares the same mtx
type (Not a strict requirement, but easier to reproduce this way).

Consider module A and module B:
- From enroll() - subr_witness.c:
* Load module A. Everything seems fine right now.
wA-w_refcount == 1 ; wA-w_name = "sound softc"
* Load module B.
* w->w_name == description will always fail.
("sound softc" from A and B point to different address).
* wA->w_refcount > 0 && strcmp(description, wA->w_name) == 0
* enroll() will return wA instead of returning (possibly unique)
wB.
wA->w_refcount++ , == 2.
* Unload module A, mtx_destroy(), wA->w_name become invalid,
but wA->w_refcount-- become 1 instead of 0. wA will not be
removed from witness list.
* Some other places call mtx_init(), iterating witness list,
found wA, failed on wA->w_name == description
* wA->w_refcount > 0 && strcmp(description, wA->w_name)
* Panic on strcmp() since wA->w_name no longer point to valid
address.

Note that this could happened in other places as well, not just sound
(eg. consider lots of drivers that share simmilar MTX_NETWORK_LOCK).

Solutions (for sound case):
1) Provide unique mtx type string for each mutex creation (chosen)
or
2) Put "sound softc" global variable somewhere and use it.

show more ...


# 0b989078 23-Feb-2007 Alexander Leidinger <netchild@FreeBSD.org>

MFp4 (114068):
Use bus_get_dma_tag() to obtain the parent DMA tag to make the drivers
a little bit more non-ia32/amd64 friendly.

There is no man page for bus_get_dma_tag, so

MFp4 (114068):
Use bus_get_dma_tag() to obtain the parent DMA tag to make the drivers
a little bit more non-ia32/amd64 friendly.

There is no man page for bus_get_dma_tag, so this is modelled after
rev. 1.62 of src/sys/dev/sound/pci/es137x.c by marius.

Inspired by: commit by marius

show more ...


Revision tags: release/6.2.0_cvs, release/6.2.0
# dc9e52cf 17-Dec-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add support for Nvidia Nforce MCP04 AC97 controller.

PR: kern/106829
Submitted by: Frédéric Petit <fredantispam@free.fr>


# fbf953b5 01-Dec-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add inverted amplifier sense quirk for HP Compaq nx4300.

PR: kern/106104
Submitted by: Shun-ichi Kobayashi <koba@mbox.kudpc.kyoto-u.ac.jp>
MFC after: 3 days


# a580b31a 26-Nov-2006 Ariff Abdullah <ariff@FreeBSD.org>

Welcome to Once-a-year Sound Mega-Commit. Enjoy numerous updates and fixes
in every sense.

General
-------

- Multichannel safe, endian safe, format safe
* Large part of critical pcm filters such

Welcome to Once-a-year Sound Mega-Commit. Enjoy numerous updates and fixes
in every sense.

General
-------

- Multichannel safe, endian safe, format safe
* Large part of critical pcm filters such as vchan.c, feeder_rate.c,
feeder_volume.c, feeder_fmt.c and feeder.c has been rewritten so that
using them does not cause the pcm data to be converted to 16bit little
endian.
* Macrosses for accessing pcm data safely are defined within sound.h in
the form of PCM_READ_* / PCM_WRITE_*
* Currently, most of them are probably limited for mono/stereo handling,
but the future addition of true multichannel will be much easier.

- Low latency operation
* Well, this require lot more works to do not just within sound driver,
but we're heading towards right direction. Buffer/block sizing within
channel.c is rewritten to calculate precise allocation for various
combination of sample/data/rate size. As a result, applying correct
SNDCTL_DSP_POLICY value will achive expected latency behaviour simmilar
to what commercial 4front driver do.
* Signal handling fix. ctrl+c of "cat /dev/zero > /dev/dsp" does not
result long delay.
* Eliminate sound truncation if the sound data is too small.
DIY:
1) Download / extract
http://people.freebsd.org/~ariff/lowlatency/shortfiles.tar.gz
2) Do a comparison between "cat state*.au > /dev/dsp" and
"for x in state*.au ; do cat $x > /dev/dsp ; done"
- there should be no "perceivable" differences.
Double close for PR kern/31445.

CAVEAT: Low latency come with (unbearable) price especially for poorly
written applications. Applications that trying to act smarter
by requesting (wrong) blocksize/blockcount will suffer the most.
Fixup samples/patches can be found at:
http://people.freebsd.org/~ariff/ports/

- Switch minimum/maximum sampling rate limit to "1" and "2016000" (48k * 42)
due to closer compatibility with 4front driver.
Discussed with: marcus@ (long time ago?)

- All driver specific sysctls in the form of "hw.snd.pcm%d.*" have been
moved to their own dev sysctl nodes, notably:
hw.snd.pcm%d.vchans -> dev.pcm.%d.vchans
Bump __FreeBSD_version.

Driver specific
---------------

- Ditto for sysctls.

- snd_atiixp, snd_es137x, snd_via8233, snd_hda
* Numerous cleanups and fixes.
* _EXPERIMENTAL_ polling mode support using simple callout_* mechanisme.
This was intended for pure debugging and latency measurement, but proven
good enough in few unexpected and rare cases (such as problematic shared
IRQ with GIANT devices - USB). Polling can be enabled/disabled through
dev.pcm.0.polling. Disabled by default.

- snd_ich
* Fix possible overflow during speed calibration. Delay final
initialization (pcm_setstatus) after calibration finished.
PR: kern/100169
Tested by: Kevin Overman <oberman@es.net>
* Inverted EAPD for few Nec VersaPro.
PR: kern/104715
Submitted by: KAWATA Masahiko <kawata@mta.biglobe.ne.jp>

Thanks to various people, notably Joel Dahl, Yuriy Tsibizov, Kevin Oberman,
those at #freebsd-azalia @ freenode and others for testing.

Joel Dahl will do the manpage update.

show more ...


# 03923cd3 15-Aug-2006 Pyun YongHyeon <yongari@FreeBSD.org>

Add inverted amplifier sense quirks for Compaq Presario B3800

Reported by: Nick Withers < nick AT nickwithers DOT com >
Tested by: Nick Withers < nick AT nickwithers DOT com >
No objection from: ari

Add inverted amplifier sense quirks for Compaq Presario B3800

Reported by: Nick Withers < nick AT nickwithers DOT com >
Tested by: Nick Withers < nick AT nickwithers DOT com >
No objection from: ariff
MFC after: 1 week

show more ...


# 851a904a 18-Jun-2006 Alexander Leidinger <netchild@FreeBSD.org>

- Rename hw.snd.unit to hw.snd.default_unit to make the purpose more obvious.
- Enable 4 automatic vchan's by default.
- Add some comments which provide ides/questions for improvement.
- Prefix some

- Rename hw.snd.unit to hw.snd.default_unit to make the purpose more obvious.
- Enable 4 automatic vchan's by default.
- Add some comments which provide ides/questions for improvement.
- Prefix some temporary sysctl's with an underscore to denote that it is not
an official API but a workaround until the real solution is implemented.

show more ...


Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0
# 14055d2a 01-May-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add inverted amplifier sense quirks for Sony VAIO VGN B1VP/B1XP.

Reported by: Stan Behrens <s.behrens at kon.de>


# facebb04 03-Apr-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add device ID for nForce 410 MCP audio controller.

PR: kern/95257
Submitted by: cenix <cenixxx at gmail dot com>
MFC after: 3 days


# 6d52c3bf 22-Mar-2006 Ariff Abdullah <ariff@FreeBSD.org>

Don't set primary resume interrupt flag during channel initialization
since it can cause high interrupt rate (storm) and slowdown the entire
system.

Note: Please report back to me if this commit cau

Don't set primary resume interrupt flag during channel initialization
since it can cause high interrupt rate (storm) and slowdown the entire
system.

Note: Please report back to me if this commit cause any abnormal
behaviour, especially during suspend / resume.

Reported/Submitted by: [1] Daan Vreeken [PA4DAN] <Danovitsch_at_vitsch dot net>
Reported/Confirmed by: [2] Angka H. K. <harikurniawan at gmail dot com>

MFC after: 5 days

[1] http://lists.freebsd.org/mailman/htdig/freebsd-hackers/2004-December/009335.html
[2] http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-March/003830.html

show more ...


# ead3cc43 07-Mar-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add another inverted amplifier sense quirk for Kvazar-Micro Senator 3592XT.

Submitted by: [1] Alexandr Krivulya <admin at marcom-group.com>
MFC after: 3 days

[1] http://lists.freebsd.org/pipermail/

Add another inverted amplifier sense quirk for Kvazar-Micro Senator 3592XT.

Submitted by: [1] Alexandr Krivulya <admin at marcom-group.com>
MFC after: 3 days

[1] http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-March/003773.html

show more ...


# 428feeb3 05-Mar-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add another inverted amplifier sense quirk for Sony VAIO Type T.

PR: kern/94056
Submitted by: Yoshihiko Sarumaru <mistral at imasy.or.jp>
MFC after: 3 days


# 34733eb5 12-Feb-2006 Ariff Abdullah <ariff@FreeBSD.org>

Fix possible DMA leak and locking violation especially
during suspend <-> resume and module load <-> unload.

PR: kern/92764
MFC after: 3 days


# f432c562 15-Jan-2006 Ariff Abdullah <ariff@FreeBSD.org>

Add another inverted EAPD quirk for Gateway 7326GZ.

Tested by: Jeff Cross <jeff.cross at averageadmins.com>
MFC after: 3 days


# c02b454d 10-Jan-2006 Ariff Abdullah <ariff@FreeBSD.org>

More thorough fixes to enable inverted external amplifier sense flag.
Instead of dragging the entire ICH4/82801DB into this mess, select
only few boards based on pci subdevice / subvendor.

Tested by

More thorough fixes to enable inverted external amplifier sense flag.
Instead of dragging the entire ICH4/82801DB into this mess, select
only few boards based on pci subdevice / subvendor.

Tested by: Daisuke Orikasa <luxury-acura-3.5rl at nifty.com>
MFC after: 3 days

show more ...


# be0fee94 09-Jan-2006 Ariff Abdullah <ariff@FreeBSD.org>

Turn on inverted external amplifier sense flags for ICH4/82801DB.

PR: kern/66422, kern/75687, kern/84471
MFC after: 2 days


# d0ddbe88 21-Nov-2005 Pyun YongHyeon <yongari@FreeBSD.org>

Add a hack to ignore PCR bit for 6300ESB, 82801[D-G]B chips. It seems
that enabling busmastering would result in PCR bit ON after codec
reset.
While I'm here add DELAY(1) to codec access routine to g

Add a hack to ignore PCR bit for 6300ESB, 82801[D-G]B chips. It seems
that enabling busmastering would result in PCR bit ON after codec
reset.
While I'm here add DELAY(1) to codec access routine to give reasonable
time to codec operation. Without the delay, it would cause problems on
super-fast machines(> 2GHz). Also enable legacy audio for all 6300ESB,
82801[D-G]B chips. Previously, it enabled legacy audio for 82801DB(ICH4)
chip only.

Reported by: Maxim Maximov mcsi AT mcsi DOT pp DOT ru
Andrew Bliznak andriko.b AT gmail DOT com
Tested by: brueffer, Maxim Maximov, Andrew Bliznak

show more ...


# 6a728ce5 14-Nov-2005 Ariff Abdullah <ariff@FreeBSD.org>

- Added few more Intel HDA ids (ICH 6/7) which does have backward
compatible AC97 codec.
- As the driver supports so many variants, create a table ids for
ease of probing and maintenance.
Submi

- Added few more Intel HDA ids (ICH 6/7) which does have backward
compatible AC97 codec.
- As the driver supports so many variants, create a table ids for
ease of probing and maintenance.
Submitted by: yongari
Reviewed/Tested by: multimedia@
- From luigi:
The code to compute fragment sizes in the ich driver almost
invariably ends up using the full buffer available, no matter
how the user specifies fragment size and number.
With audio telephony (8khz, 16bit-stereo) and the 16k buffer
size this results in an unbearable 500ms delay.
This patch makes sure that we never use more than 4 fragments,
(i don't think we need more unless there are huge interrupt
servicing latencies), and obey to the requested fragment size,
so that latency is acceptable.
Based on this (and after much regression tests), I can conclude
that this driver works best with 2 fragments, thus solving various
long standing issues of ICH driver not capable to flush or play
short files perfectly.
Suggested by: luigi (the idea of smaller fragments)
- MPSAFE conversion.

Approved by: netchild (mentor)

show more ...


Revision tags: release/6.0.0_cvs, release/6.0.0
# dcbde453 05-Oct-2005 Alexander Leidinger <netchild@FreeBSD.org>

Add a comment regarding problems with NForce 2 mainboards and add disabled
code which may help.

People with a ich compatible soundcard which want to help out should
change the "#if 1" to a "#if 0" a

Add a comment regarding problems with NForce 2 mainboards and add disabled
code which may help.

People with a ich compatible soundcard which want to help out should
change the "#if 1" to a "#if 0" and try if the soundcard still works.
Reports about working or not-working soundcards with this change to
multimedia@ please.

PR: 73987

show more ...


# 7b7c2c20 30-May-2005 Seigo Tanimura <tanimura@FreeBSD.org>

s/-1000/BUS_PROBE_LOW_PRIORITY/

Pointed out by: nyan


# db051dad 28-May-2005 Seigo Tanimura <tanimura@FreeBSD.org>

Add 6300ESB, which should be treated as ICH4.

PR: kern/81573
Submitted by: OOTOMO Hiroyuki <ootomo@za.wakwak.com>
MFC after: 1 week


Revision tags: release/5.4.0_cvs, release/5.4.0
# ddc5ac8b 20-Mar-2005 Murray Stokely <murray@FreeBSD.org>

Return BUS_PROBE_DEFAULT in preference to 0.

Pointed out by: Nate Lawson <nate@root.org>


# a52010a0 19-Mar-2005 Murray Stokely <murray@FreeBSD.org>

Add device id for nForce 4 audio controller.

PR: kern/78482
Submitted by: Markus Niemistö <markus.niemisto@iki.fi>
MFC after: 1 week


12345678