From: "Kan-I Jyo" <cecilhsujp@gmail.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org
Subject: Re: [Fwd: [Alsa-user] Intel Poulsbo(SCH) chipset does not recognize Adi 1986 codec under linux]]
Date: Fri, 1 Aug 2008 12:30:54 +0900 [thread overview]
Message-ID: <1e8a3dd0807312030r215d7d00qa0c4fc08ddf5c63f@mail.gmail.com> (raw)
In-Reply-To: <s5hmykxlstg.wl%tiwai@suse.de>
Dear Takhashi,
After having some discussions with the hardware vender and reviewing
some technical specifiction documents on Intel's website, this issue
has now been fixed by a rework of the hardware.
I would like to say thank you for all your kind support on this issue.
2008/7/4 Takashi Iwai <tiwai@suse.de>:
> At Thu, 3 Jul 2008 14:42:16 +0900,
> Kan-I Jyo wrote:
>>
>> Dear Takashi,
>>
>> Thank you for your reply.
>>
>> 2008/7/1 Takashi Iwai <tiwai@suse.de>:
>>
>> > If you know the slot number of the codec beforehand, you can modify to
>> > force to set chip->codec_mask in azx_reset(). Then the driver will
>> > continue to probe the codec.
>>
>> By changing the "chip->codec_mask", amazingly the codec chip is now recognized.
>>
>> <hda_intel.c.diff>
>> --- hda_intel.c.orig 2008-07-02 13:27:14.699908463 +0900
>> +++ hda_intel.c 2008-07-02 13:27:48.303899618 +0900
>> @@ -750,7 +750,8 @@ static int azx_reset(struct azx *chip)
>>
>> /* detect codecs */
>> if (!chip->codec_mask) {
>> - chip->codec_mask = azx_readw(chip, STATESTS);
>> + /* chip->codec_mask = azx_readw(chip, STATESTS); */
>> + chip->codec_mask = 1;
>> snd_printdd("codec_mask = 0x%x\n", chip->codec_mask);
>> }
>>
>> <ends here>
>>
>> I do not consider this as a good way to solve this issue, this is
>> quite a progress to me. Thank you for your advise, Takashi.
>>
>> Regardless of being recognized and been configurable by alsamixer,
>> there is no sound output from the speaker. I have tried all the model
>> option listed in Documentation/sound/alsa/ALSA-Configuration.txt for
>> AD1986A and none provides a sound output.
>>
>> By switching to different models, it results some similar log output
>> in both dmesg and /var/log/messages have some info like this:
>>
>> <dmesg>
>>
>> --snip--
>> ALSA /root/alsa-driver-1.0.17rc3/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:601:
>> hda_intel: azx_get_response timeout, switching to polling mode: last
>> cmd=0x000f0000
>> ALSA /root/alsa-driver-1.0.17rc3/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:608:
>> hda_intel: azx_get_response timeout, switching to single_cmd mode:
>> last cmd=0x000f0000
>
> If this happens, usually it means that the device access is pretty
> ragged. Does /proc/asound/card0/codec#* show the correct values?
>
>> ALSA /root/alsa-driver-1.0.17rc3/pci/hda/hda_codec.c:2334: hda_codec:
>> model '6stack' is selected
>> ALSA /root/alsa-driver-1.0.17rc3/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:1196:
>> snd_hda_codec_new() results is 0
>>
>> <ends here>
>>
>> When trying to apply the "position_fix" module option to values other
>> than the default "0", I got following ouput from dmesg.
>>
>> <dmesg>
>>
>> --snip--
>> ALSA /root/alsa-driver-1.0.17rc3/acore/../alsa-kernel/core/pcm_lib.c:1540:
>> playback write error (DMA or IRQ trouble?)
>
> This error is fatal, and implies that the IRQ isn't triggered
> properly. Doesn't this happen if you set position_fix=0? Still
> weird...
>
>>
>> <ends here>
>>
>> And in /var/log/messages, I have following messages complaining that
>> the position buffer is invalid.
>>
>> </var/log/messages>
>>
>> --snip--
>> Jan 2 18:34:03 localhost kernel: hda-intel: Invalid position buffer,
>> using LPIB read method instead.
>> Jan 2 18:34:03 localhost kernel: hda-intel: IRQ timing workaround is
>> activated for card #0. Suggest a bigger bdl_pos_adj.
>
> On Intel devices, we choose the 1 sample position fix while 32 samples
> for other controller chips. This might be a wrong assumption, but I'd
> like to check all other cases first.
>
> And, this basically is no fatal error. This may lead to higher CPU
> load (for busy wait) but the playback should still work.
>
>
> Takashi
>
--
Sincerely,
Jyo
next prev parent reply other threads:[~2008-08-01 3:30 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-25 1:40 [Fwd: [Alsa-user] Intel Poulsbo(SCH) chipset does not recognize Adi 1986 codec under linux]] Kan-I Jyo
2008-06-25 1:50 ` Tobin Davis
2008-06-25 3:23 ` Kan-I Jyo
2008-06-25 9:37 ` Takashi Iwai
2008-06-25 12:00 ` Kan-I Jyo
2008-06-25 12:20 ` Takashi Iwai
2008-06-30 13:20 ` Kan-I Jyo
2008-06-30 13:22 ` Kan-I Jyo
2008-07-01 10:22 ` Takashi Iwai
2008-07-03 5:42 ` Kan-I Jyo
2008-07-04 12:47 ` Takashi Iwai
2008-08-01 3:30 ` Kan-I Jyo [this message]
-- strict thread matches above, loose matches on Subject: below --
2008-06-23 13:20 [Fwd: [Alsa-user] Intel Poulsbo(SCH) chipset does not recognize Adi 1986 codec under linux] stan
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=1e8a3dd0807312030r215d7d00qa0c4fc08ddf5c63f@mail.gmail.com \
--to=cecilhsujp@gmail.com \
--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