Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Vojta <vojta@Math.Berkeley.EDU>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org
Subject: Re: another device for opl3sa2
Date: Fri, 6 Jul 2007 00:41:36 -0700	[thread overview]
Message-ID: <20070706074136.GA4460@math.berkeley.edu> (raw)
In-Reply-To: <s5hk5te6hku.wl%tiwai@suse.de>

On Thu, Jul 05, 2007 at 04:38:57PM +0200, Takashi Iwai wrote:
> A good finding.  So the possible causes are
> 
> - opl3sa specific initialization, such as snd_opl3sa2_detect()
> - opl3sa specific mixer element, like Master Volume.
> 
> Can your machine suspend/resume?  It's interesting whether the sound
> is resumed well with snd-opl3sa2 driver.  I remember it worked quite
> ago, but not tested with the recent versions.

My machine can sleep but not hibernate.  After sleep the sound is
resumed well.

I also edited cs4231_lib.c and changed lines 242 and 861 from "#if 0"
to "#if 1" (thus enabling the call to snd_cs4231_debug(chip) at the
end of snd_cs4231_playback_prepare() ).  Here is the output I got:

1.  module opl3sa2

  a.  First time running aplay:

CS4231 REGS:      INDEX = 0x0e                   STATUS = 0xc4
  0x00: left input      = 0x00    0x10: alt 1 (CFIG 2)  = 0x80
  0x01: right input     = 0x00    0x11: alt 2 (CFIG 3)  = 0x01
  0x02: GF1 left input  = 0x06    0x12: left line in    = 0x9f
  0x03: GF1 right input = 0x06    0x13: right line in   = 0x9f
  0x04: CD left input   = 0x9f    0x14: timer low       = 0x00
  0x05: CD right input  = 0x9f    0x15: timer high      = 0x00
  0x06: left output     = 0x0c    0x16: left MIC (PnP)  = 0x80
  0x07: right output    = 0x0c    0x17: right MIC (PnP) = 0x80
  0x08: playback format = 0x57    0x18: IRQ status      = 0x00
  0x09: iface (CFIG 1)  = 0x08    0x19: left line out   = 0x80
  0x0a: pin control     = 0x02    0x1a: mono control    = 0x0f
  0x0b: init & status   = 0x20    0x1b: right line out  = 0x80
  0x0c: revision & mode = 0xca    0x1c: record format   = 0x20
  0x0d: loopback        = 0xfc    0x1d: var freq (PnP)  = 0x80
  0x0e: ply upr count   = 0x0a    0x1e: ply lwr count   = 0x00
  0x0f: rec upr count   = 0xc3    0x1f: rec lwr count   = 0x00

  b.  Second time running aplay:

CS4231 REGS:      INDEX = 0x0e                   STATUS = 0xc4
  0x00: left input      = 0x00    0x10: alt 1 (CFIG 2)  = 0x80
  0x01: right input     = 0x00    0x11: alt 2 (CFIG 3)  = 0x01
  0x02: GF1 left input  = 0x06    0x12: left line in    = 0x9f
  0x03: GF1 right input = 0x06    0x13: right line in   = 0x9f
  0x04: CD left input   = 0x9f    0x14: timer low       = 0x00
  0x05: CD right input  = 0x9f    0x15: timer high      = 0x00
  0x06: left output     = 0x0c    0x16: left MIC (PnP)  = 0x80
  0x07: right output    = 0x0c    0x17: right MIC (PnP) = 0x80
  0x08: playback format = 0x57    0x18: IRQ status      = 0x00
  0x09: iface (CFIG 1)  = 0x08    0x19: left line out   = 0x80
  0x0a: pin control     = 0x02    0x1a: mono control    = 0x0f
  0x0b: init & status   = 0x00    0x1b: right line out  = 0x80
  0x0c: revision & mode = 0xca    0x1c: record format   = 0x20
  0x0d: loopback        = 0xfc    0x1d: var freq (PnP)  = 0x80
  0x0e: ply upr count   = 0x0a    0x1e: ply lwr count   = 0x00
  0x0f: rec upr count   = 0xc3    0x1f: rec lwr count   = 0x00

2.  Module cs4232, both times running aplay:

CS4231 REGS:      INDEX = 0x0e                   STATUS = 0xc4
  0x00: left input      = 0x00    0x10: alt 1 (CFIG 2)  = 0x80
  0x01: right input     = 0x00    0x11: alt 2 (CFIG 3)  = 0x01
  0x02: GF1 left input  = 0x9f    0x12: left line in    = 0x9f
  0x03: GF1 right input = 0x9f    0x13: right line in   = 0x9f
  0x04: CD left input   = 0x9f    0x14: timer low       = 0x00
  0x05: CD right input  = 0x9f    0x15: timer high      = 0x00
  0x06: left output     = 0x0c    0x16: left MIC (PnP)  = 0x80
  0x07: right output    = 0x0c    0x17: right MIC (PnP) = 0x80
  0x08: playback format = 0x57    0x18: IRQ status      = 0x00
  0x09: iface (CFIG 1)  = 0x08    0x19: left line out   = 0x80
  0x0a: pin control     = 0x02    0x1a: mono control    = 0xcf
  0x0b: init & status   = 0x00    0x1b: right line out  = 0x80
  0x0c: revision & mode = 0xca    0x1c: record format   = 0x20
  0x0d: loopback        = 0xfc    0x1d: var freq (PnP)  = 0x80
  0x0e: ply upr count   = 0x0a    0x1e: ply lwr count   = 0x00
  0x0f: rec upr count   = 0xc3    0x1f: rec lwr count   = 0x00


The value of 0x0b in the first group is different from the other two groups.

--Paul Vojta, vojta@math.berkeley.edu

  reply	other threads:[~2007-07-06  7:41 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-03  0:27 another device for opl3sa2 Paul Vojta
2007-07-03 10:05 ` Takashi Iwai
2007-07-04  2:24   ` Paul Vojta
2007-07-04  8:53     ` Takashi Iwai
2007-07-05  8:03       ` Paul Vojta
2007-07-05 14:38         ` Takashi Iwai
2007-07-06  7:41           ` Paul Vojta [this message]
2007-07-06  9:45             ` Takashi Iwai
2007-07-08  8:02               ` Paul Vojta
2007-07-09 12:42                 ` Takashi Iwai
2007-07-09 18:14                   ` Paul Vojta
2007-07-27  7:55               ` Paul Vojta
2007-07-27 10:22                 ` Takashi Iwai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070706074136.GA4460@math.berkeley.edu \
    --to=vojta@math.berkeley.edu \
    --cc=alsa-devel@alsa-project.org \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox