Age | Commit message (Collapse) | Author |
|
modes, "double speed")
- connect s/pdif output to the correct controller channels
fixes s/pdif output, which I partly broke when adding multichannel
support. problem reported and patches tested by Antti Harri, thanks.
|
|
messages for devices using prefetchable memory sitting behind bridges.
|
|
reference the code in global envy_card structures. Allows the same
mixer code to be shared across differents cards. Will ease adding
codec-specific knobs when adding support for new cards.
|
|
controls later. Also stop using ``next'' and ``prev'' pointers,
since they make impossible exposing ``source'' knobs for streams
that do not have ``gain'' knobs. This implies renaming ``xxx.source''
knobs to ``xxx_source''. Besides that, no behaviour change.
|
|
|
|
datasheets.
|
|
|
|
default, as long is the first output pin is not also connected to
that DAC. cleanup a bit now that there are multiple muting methods.
|
|
connects to be default. if that's not possible, try to make it so
that the speaker and the first output pin do not connect to the same
DAC by default. allows more configuration freedom.
|
|
- if any pin can select both the target and other nids, it is not
a sole connection
- if there is more than a single selection but the other selections are
disabled, that's a sole connection as well
|
|
interfaces. Therefore we now always start off with vr_link = 1.
Bug found and feedback by Emilio Perea.
OK sthen@
|
|
make write_gatt actually readable, and a tad smaller. Don't use macros when we
can just call the damned function. coalesce a few bits of code.
as a bonus this actually fixes a bus in the i810/815 dcache case since we got
the offset wrong (confirmed by looking at the datasheet).
|
|
vlan filter so it will work properly.
ok reyk@
|
|
|
|
|
|
state change. Workaround by resetting the chip if necessary.
Also do not try to send packets if our link is down, as this triggers
watchdog timeouts. While there correct the VR_RXSTAT_RX_OK define
(not used yet). Changes inspired from FreeBSDs overhauled vr(4).
Testing, input and OK sthen@
|
|
to special case the speaker dac ...
|
|
since autoconf(9) allocates softc with M_ZERO; ok deraadt
|
|
|
|
cards using it. No mixer yet.
ok jakemsr@
|
|
generic Envy24 chip common to all cards and another part specific
to the cards. This will ease adding support for other card models.
ok jakemsr@
|
|
|
|
source or endpoint.
|
|
to be listed in other widgets' connection lists. if a beep
generator is found in another widget's connection list, treat it
as a dead end.
|
|
1. Simba, the UltraSPARC-IIi Advanced PCI Bridge doesn't support the standard
address range registers. Skip resource accounting on these devices for now.
2. Some machines (for example sparc64) actually implement a 32-bit I/O space,
so start parsing the registers that gives us the upper 16 bits and make
sure the extent covers the entire 32-bit address range.
|
|
|
|
|
|
|
|
by Wim Van Sebroeck. Commented out in GENERIC but Heriberto Molina is
getting devices for developers so we can maintain this more easily.
Many thanks to both!
Man page will follow later.
``don't hold back for man page'' deraadt
|
|
|
|
|
|
|
|
|
|
by default might not be in a converter group. make sure such a
dac is not disabled and gets a meaningful name.
|
|
create the converter group lists. start with converters that are
connected to pins by default, then add converters that can be
connected to pins.
|
|
be a non-generic version. move the prototype to azalia.h so it
can also be used in azalia.c in the future.
|
|
the pin nids, the default converter the pin connects to and the
pin's priority. priority is based on the pin's default direction
and the association and sequence numbers from the vendor. according
to the hda spec, lower association/priority means higher priority.
sort the list in order of highest to lowest priority.
|
|
default
- a function to find the first adc in the adc list that a node is
connected to
- use these functions to find which adc the internal mic is connected
to by default
|
|
and do some further initialization and information gathering:
- disable mixer and selector widgets that don't have any enabled
connections
- create lists of analog and digital input and output converters
- find the internal/fixed connection microphone and speaker, and
which converters they are connected to by default
- create a list of jack sensing capable pins
some of this was already being done in other places, but moved here
for simplification/better organization
|
|
connections to a mixer widget are enabled and unmuted by default.
when finding a default connection through a mixer, check all
connections, not just the "selected" connection.
|
|
Initial diff from reyk with a bunch of critical fixes from me.
ok reyk@, 'put it in when you're confident with it' dlg@ on an earlier rev.
|
|
Tested by Christian Stuermer.
|
|
allocate mbufs for it. Another jumbo allocator bites the dust!
ok dlg@
|
|
extents based on address range forwarded by the bridge as indicated by
the limit registers. Remove the now redundant BAR initialization code
for type 0 devices.
ok oga@
|
|
pool_init does its job properly.
|
|
on the tx rings (one mbuf ptr/dmamap array entry was created for
every tx descriptor slot at attach time) with a dynamically grown
list of mbuf pointers and dmamaps.
bnx used to have 512 dmamaps/mbuf pointers for the tx ring, now my
system is running with 8 under moderate load.
the big bonus from this is that the dmamap handling is greatly
simplified.
reyk@ likes this a lot
|
|
|
|
last descriptor slot in the ring. the tx completion code expects the dmamap
to be there so it can unload it.
ok reyk@
|
|
ok dlg@
|
|
If we're just going to be making it available to userland (the X
server), just use load_raw and make sure it's zeroed with BUS_DMA_ZERO.
Should save $AMOUNT_BOUND_TO_GART kva. Most kernel users also write
through the gart, so no mapping there either.
tested by sthen and todd a while back.
|