Age | Commit message (Collapse) | Author |
|
- be careful not to set a direction that the pin doesn't support
- remove a workaround in the generic code which is more or less for a
specific device, there are better ways to deal with such situations now
|
|
|
|
Earlier changes meant that we were reading the wrong register, on the
graphics card instead of the gmch (bus 0, device 0, function 0. it's the
memory controller on all boards with intel chipsets). Later chipsets
have a ``mirror'' register on the graphics card device, explaining why
this didn't manifest on all chipsets. For simplicity, always find and
read the register from the GMCH. While i'm here, fixup unaligned
configuration space access (0x50 vs 0x52)
Tested by several.
|
|
Tested by several x200 owners.
|
|
it is about codec gpio quirks. so rename it as azalia_codec_gpio_quirks,
and move it to where the rest of the codec specific code is.
|
|
|
|
|
|
|
|
more clear.
|
|
- remove the codec datasheet URLs. URLs change and these particular
datasheets are all easy to find.
|
|
move it to one place, instead of scattered thoughout with #define
and DPRINTF. my eyes are happier now.
|
|
now "SPDIF", S/PDIF-in is still "SPDIF-in".
line change because we need to differentiate. S/PDIF change because
SPDIF-out is too long, and for consistency.
|
|
overflow) interrupt.
Yes deraadt@
|
|
b) members of the widget connection list may be invalid.
so,
- change azalia_nid_to_index to azalia_widget_enabled, and have it only
check that the given nid is valid, and that the corresponding widget
is enabled.
- use azalia_widget_enabled every time members of the connection list
are used.
|
|
|
|
|
|
try again later.
tested by many
|
|
|
|
|
|
|
|
|
|
to not be redundant. important for understanding how widgets are
connected.
|
|
|
|
disabled widgets any other name.
|
|
|
|
a converter than a selector.
|
|
values read from pin complex widgets.
|
|
- use "beep" as pin device 0xe
|
|
"new" multicast address and address range counters in the ifp. shrinks
and simplifies that code a lot.
ive had this diff since may 2007.
|
|
us cope if the rx ring empties completely and the hardware tells us we're
still getting packets.
|
|
azalia_widget_label_widgets to right after the generic widget
initialization. nothing uses this yet.
|
|
widget for the widget it's connected to. but be a bit careful
to not end up with duplicate mixer item names.
|
|
e.g. the first DAC in the converter group is now dac, the second
is dac2, etc.
unused converters (not in a converter group) will have a "u-" prefix.
these will disappear completely in the near future, as they are useless.
if there is more than one converter group, converters in the second
group will have a "dig-" prefix, since they are digital converters.
|
|
- move the azalia_widget_init_connection call from
azalia_widget_label_widgets to just after azalia_widget_init
- move azalia_widget_label_widgets to after dacgroup initialization
- move the widget info printing from azalia_widget_init_connection
and azalia_widget_init to new function azalia_widget_dump_info
- call azalia_widget_dump_info right after azalia_widget_init_connection
- in functions that are ony used if AZALIA_DEBUG is defined, use printf
instead of DPRINTF()
|
|
classes in azalia.h instead of azalia_codec.c. this will allow
the mixer class to be determined outside of azalia_generic_mixer_init.
|
|
given widget is the sole connection to an ADC, DAC or pin complex.
not used just yet.
|
|
m_defrag() does not work. It seems to assume that if the length of
the mbuf passed as parameter is less than MHLEN, then it is an mbuf
header and not a cluster (or something like that.)
It thus fails miserably in the bcopy path.
I don't have the time to investigate further into this.
Thanks to Okan Demirmen for reporting the issue on a ral(4) RT2560.
The RT2560 chipset does not support TX scatter and thus m_defrag()
was called much more often than in other drivers using m_defrag()
where it was less noticeable.
|
|
RX buffers allocated.
ok dlg@
|
|
from Marko Pecic. thanks!
|
|
add "support" for physical addresses larger than 32-bit.
|
|
sometimes reproduce this, but i cannot see why it would be a problem. tres
weird.
only put 4k frames on the jumbo ring to cope. i'll try to figure this out
again later.
|
|
Sometimes the sarea isn't there and screws us. The intention of this
call was to set the scanout buffer back to being correct.
On the other hand: If we're in lastclose the xserver is shutting and
thus the scanout buffer is moot. Kernel modesetting will probably
revising pageflipping, but that'll be a different interface anyway.
Since all lastclose does not is call radeon_do_release() just rename
radeon_do_release to lastclose and nuke the old one.
Uwe@ has some crashes in here occasionally, this diff fixed them for him.
|
|
|
|
|
|
flag even if playback and record are not independent; otherwise
AUDIO_GETINFO ioctl may return false parameters on devices like
envy(4) that don't use the same number of channels for playback
and recording.
|
|
flags field and use the flags as appropriate.
ok jakemsg@
|
|
Noticed by kettenis@.
|
|
ok oga@
|
|
from form@.
ok dlg, krw
|
|
being chained into a jumbo we would not replace them when filling the rx
ring again until they were passed up the stack.
|