On 2/27/23 6:41 PM, Andreas Bartelt wrote:
On 2/27/23 2:40 PM, Alexandre Ratchov wrote:
On Sat, Feb 25, 2023 at 05:20:53PM +0100, Andreas Bartelt wrote:
Hi,

I've tested a recent OpenBSD snapshot of CURRENT on an ASUS ProArt
X670E-CREATOR WIFI mainboard. According to the information provided by ASUS, this mainboard features a "Realtek S1220A CODEC" which attaches as Realtek ALC1220 on OpenBSD -- however, audio output (tested with headphones on the
line out connector) doesn't work there yet. Applications (e.g., mplayer,
mpg123) hang and I can hear no sound.

[I don't know if this helps but I previously also had access to an ASUS ROG
STRIX B550-E GAMING mainboard which, according to ASUS, also features an
S1220A CODEC which also attaches as Realtek ALC1220 on OpenBSD -- audio
output (tested on the line out connector) works there without problems.]

In order to verify that the new mainboard doesn't have a physical defect
with regard to the line out audio connector, I've also tested a FreeBSD 13.2 BETA3 snapshot on the ASUS ProArt X670E-CREATOR WIFI mainboard. Audio output worked there out-of-the-box, so this might be a fixable problem on OpenBSD.

I've found some info with regard to audio debugging at
https://www.openbsd.org/faq/faq13.html#audioprob . While running
# cat > /dev/audio0 < /dev/zero
play.bytes doesn't increase at all:
# audioctl play.{bytes,errors}
play.bytes=0
play.errors=0


mixerctl shows that the host manages communicate with the codec, but
above lines suggest that DMA doesn't start. Could you check if there
are any audio-related options in the BIOS? Especially, if there's an
option to disable the microphone (or "recording" or alike), please
enable it.

There's no microphone or recording specific options available. I could only identify a single audio related configuration option. Under Advanced\Onboard Devices Configuration: enable/disable "HD Audio Controller" (description says Enable/Disable Azalia HD Audio). It does exactly that, i.e., disabling this option removes the azalia1 device from OpenBSD's dmesg.

With this option enabled again, mp3 playback works with FreeBSD but hangs with OpenBSD -- same BIOS config.


I've made audio work on the ASUS ProArt X670E-CREATOR WIFI mainboard, simply by enabling msi.

azalia1 at pci21 dev 0 function 6 "AMD 17h/1xh HD Audio" rev 0x00: msi
azalia1: codecs: Realtek ALC1220
audio0 at azalia1

The following diff fixes the problem:
Index: src/sys/dev/pci/azalia.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/azalia.c,v
retrieving revision 1.283
diff -u -p -r1.283 azalia.c
--- src/sys/dev/pci/azalia.c    21 Feb 2023 13:42:59 -0000      1.283
+++ src/sys/dev/pci/azalia.c    4 Mar 2023 15:02:31 -0000
@@ -554,7 +554,6 @@ azalia_pci_attach(struct device *parent,
        if (PCI_VENDOR(sc->pciid) == PCI_VENDOR_AMD) {
                switch (PCI_PRODUCT(sc->pciid)) {
                case PCI_PRODUCT_AMD_17_HDA:
-               case PCI_PRODUCT_AMD_17_1X_HDA:
                case PCI_PRODUCT_AMD_HUDSON2_HDA:
                        pa->pa_flags &= ~PCI_FLAGS_MSI_ENABLED;
                }

OK?

Reply via email to