All of 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.