* Query regarding snd_pcm_lib_preallocate_pages_for_all()
@ 2007-11-13 18:42 Pharaoh .
2007-11-13 20:31 ` Mitac 8252D hda_intel glv
2007-11-14 8:14 ` Query regarding snd_pcm_lib_preallocate_pages_for_all() Takashi Iwai
0 siblings, 2 replies; 9+ messages in thread
From: Pharaoh . @ 2007-11-13 18:42 UTC (permalink / raw)
To: alsa-devel
Hi,
I am trying to use snd_pcm_lib_preallocate_pages_for_all() on an arm based
platform for preallocating the DMA buffer.
I am using it as
snd_pcm_lib_preallocate_pages_for_all(pcm,
SNDRV_DMA_TYPE_DEV,
NULL,
64 * 1024, 64 * 1024);
since I dont know what should be passed as the 3'rd param. I tried passing
my device pointer i.e. card->dev after
correctly populating it but I get an error as 'DMA coherent mask in not set'
and buffer is not allocated.
If I pass NULL as shown above, which I think is appropriate, the allocation
is done well and I can play some samples too
using aplay, but when I do a rmmod all hell breaks free.
I am thinking this is corrupting memory some where, since when I preallocate
using SNDRV_DMA_TYPE_CONTINUOUS,
everything works well but I since I need to mmap the buffer I dont use it.
I get following:
c001f7e0 c001f7e0 c001f814 c03b3040 0000000b c34c1c98 c34c1c88
1c80: c003642c c0071978 c34c0000 c34c1cb8 c34c1c9c c003b780 c00363fc
c34c0000
1ca0: c34c0000 c03b3040 00000001 c34c1cd4 c34c1cbc c003bd94 c003b690
c34c1ce8
1cc0: 60000093 00000001 c34c1ce8 c34c1cd8 c002908c c003bbe8 bf000000
c34c1d08
1ce0: c34c1cec c002b2ac c0028d84 ffffffec c03b3040 c34733c8 c001f7e0
c34c1d40
1d00: c34c1d0c c002b588 c002b250 c03a7060 c34c1d94 00000017 ffffffff
c026dd40
1d20: 00000017 c34c1dec 00000004 00000093 40130000 c34c1de8 c34c1d44
c002b688
1d40: c002b3a0 0000007e 00000000 00000000 00000000 00000000 00000000
00000000
1d60: 00000000 c03a7060 c34c1e14 c03b3040 c022eef4 c34c1f14 00000000
00000a00
1d80: c34c1e80 c34c1d90 c019ee84 c01bb390 00000000 7a035438 00000005
00000000
1da0: 00000a00 c03a7060 c0271cdc c34c1d50 00000000 c34c1e08 c34c1dc4
c0063a94
1dc0: c0063984 00000044 ffffffff c34c1e20 00000000 c02eabe0 c347317c
c34c1e44
1de0: c34c1dec c00249a0 c002b65c c02eabe0 00000000 00000013 00000093
c34c0000
1e00: c0306200 00000000 c02eabe0 c347317c c001f7e0 40130000 c34c1e44
c02eabe0
1e20: c34c1e34 c02c0bfc c0067478 00000093 ffffffff 10d5f0ff c34c1e7c
c34c1e48
1e40: c006d658 c0067444 c3541cc0 00000000 00000002 11b100df 000004c0
c347317c
1e60: c34c0000 00000001 c001f7e0 40130000 c34c1ecc c34c1e80 c006e61c
c006d1b8
1e80: c3545000 c001f820 11b100df 0000007e 00000000 00000010 c3545000
00000800
1ea0: c34c0000 ffffffeb c03b3040 c347317c c001f7e0 c001f814 c34c1fb0
40130958
1ec0: c34c1f04 c34c1ed0 c002b470 c006dedc c004822c c03b307c 0000081f
ffffffff
1ee0: c026ddc0 0000081f c34c1fb0 40130958 00000055 4012f000 c34c1fac
c34c1f08
1f00: c002b688 c002b3a0 c34c1f14 c0222148 c0221a50 c34c1e94 0000000c
c34c1e84
1f20: 00000001 00000000 00000000 c1b01040 00000000 00000009 0001d2b4
00000066
1f40: c0024fe4 00000001 c34c1f6c c34c1f58 c01a02c0 c01a01c0 00000000
00000000
1f60: c34c1fa4 c34c1f70 c01a09d0 c01a02b0 c34c1e70 c34c1e74 00000004
0001d2b4
1f80: 00000a00 00000000 0000008e ffffffff 00000115 0001d2dd 00000000
00000000
1fa0: 00000000 c34c1fb0 c0024de8 c002b65c 00000000 0000b05c 54434100
00000001
1fc0: 40130958 00000115 0001d2dd 00000000 00000000 00000055 4012f000
00000007
1fe0: 0001d150 be8ba5ec 0000b05c 40082fbc 60000010 ffffffff 00000000
00000000
Backtrace:
[<c0073880>] (page_remove_rmap+0x0/0x118) from [<c006c628>]
(unmap_vmas+0x3c4/0x60c)
r4 = C02EABE0
[<c006c264>] (unmap_vmas+0x0/0x60c) from [<c00719e8>] (exit_mmap+0x80/0x150)
[<c0071968>] (exit_mmap+0x0/0x150) from [<c003642c>] (mmput+0x40/0xe4)
r8 = 0000000B r7 = C03B3040 r6 = C001F814 r5 = C001F7E0
r4 = C001F7E0
[<c00363ec>] (mmput+0x0/0xe4) from [<c003b780>] (exit_mm+0x100/0x10c)
r4 = C34C0000
[<c003b680>] (exit_mm+0x0/0x10c) from [<c003bd94>] (do_exit+0x1bc/0x9c4)
r7 = 00000001 r6 = C03B3040 r5 = C34C0000 r4 = C34C0000
[<c003bbd8>] (do_exit+0x0/0x9c4) from [<c002908c>] (die+0x318/0x36c)
[<c0028d74>] (die+0x0/0x36c) from [<c002b2ac>] (__do_kernel_fault+0x6c/0x7c)
[<c002b240>] (__do_kernel_fault+0x0/0x7c) from [<c002b588>]
(do_page_fault+0x1f8/0x210)
r7 = C001F7E0 r6 = C34733C8 r5 = C03B3040 r4 = FFFFFFEC
[<c002b390>] (do_page_fault+0x0/0x210) from [<c002b688>]
(do_DataAbort+0x3c/0xa0)
[<c002b64c>] (do_DataAbort+0x0/0xa0) from [<c00249a0>]
(__dabt_svc+0x40/0x60)
r8 = C347317C r7 = C02EABE0 r6 = 00000000 r5 = C34C1E20
r4 = FFFFFFFF
[<c0067434>] (lru_cache_add_active+0x0/0xa0) from [<c006d658>]
(do_wp_page+0x4b0/0x574)
r4 = 10D5F0FF
[<c006d1a8>] (do_wp_page+0x0/0x574) from [<c006e61c>]
(__handle_mm_fault+0x750/0x824)
[<c006decc>] (__handle_mm_fault+0x0/0x824) from [<c002b470>]
(do_page_fault+0xe0/0x210)
[<c002b390>] (do_page_fault+0x0/0x210) from [<c002b688>]
(do_DataAbort+0x3c/0xa0)
[<c002b64c>] (do_DataAbort+0x0/0xa0) from [<c0024de8>]
(ret_from_exception+0x0/0x10)
r8 = 00000000 r7 = 00000000 r6 = 0001D2DD r5 = 00000115
r4 = FFFFFFFF
Code: e3130901 e1a03004 1594300c e59f008c (e5931004)
<1>Fixing recursive fault but reboot is needed!
BUG: scheduling while atomic: udevd/0x00000004/245
Bad page state in process 'exe'
page:c02eaa60 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaa60 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaa80 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaa80 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaaa0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaaa0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaac0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaac0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaae0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaae0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab00 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab00 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab20 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab20 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab40 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab40 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab60 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab60 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab80 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eab80 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaba0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eaba0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eabc0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'exe'
page:c02eabc0 flags:0x00004000 mapping:00000000 mapcount:0 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
so on
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Mitac 8252D hda_intel
2007-11-13 18:42 Query regarding snd_pcm_lib_preallocate_pages_for_all() Pharaoh .
@ 2007-11-13 20:31 ` glv
2007-11-14 8:14 ` Query regarding snd_pcm_lib_preallocate_pages_for_all() Takashi Iwai
1 sibling, 0 replies; 9+ messages in thread
From: glv @ 2007-11-13 20:31 UTC (permalink / raw)
To: alsa-devel
Hello,
I have a Mitac 8252D computer with hda_intel, it has 3 sockets in front:
microphone, audio(headphones)and S/PDIF.
When using 5.1 the manual says:
Microphone: rear speakers
Audio: front speakers
S/PDIF: center and subwoofer
Modprobing without any options gives me sound to the headphone and digital
socket and
Modprobing with model=6stack-hp gives me sound to the speakers to but they
stay on when headph. are pluged in
Output from alsa-info.sh:
http://pastebin.ca/772406
Output from lspci -vv:
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio
Controller (rev 03)
Subsystem: Mitac Unknown device 8253
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 22
Region 0: Memory at fc200000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA
PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [60] Message Signalled Interrupts: Mask- 64bit+
Queue=0/0 Enable-
Address: 0000000000000000 Data: 0000
Capabilities: [70] Express Unknown type IRQ 0
Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag-
Device: Latency L0s <64ns, L1 <1us
Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-
Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+
Device: MaxPayload 128 bytes, MaxReadReq 128 bytes
Link: Supported Speed unknown, Width x0, ASPM unknown, Port 0
Link: Latency L0s <64ns, L1 <1us
Link: ASPM Disabled CommClk- ExtSynch-
Link: Speed unknown, Width x0
Capabilities: [100] Virtual Channel
Capabilities: [130] Unknown (5)
thank you.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Mitac 8252D hda_intel
@ 2007-11-13 20:51 glv
2007-11-15 11:40 ` Takashi Iwai
0 siblings, 1 reply; 9+ messages in thread
From: glv @ 2007-11-13 20:51 UTC (permalink / raw)
To: alsa-devel
(Second attempt, hope this works)
Hello,
I have a Mitac 8252D computer with hda_intel, it has 3 sockets in front:
microphone, audio(headphones)and S/PDIF.
When using 5.1 the manual says:
Microphone: rear speakers
Audio: front speakers
S/PDIF: center and subwoofer
Modprobing without any options gives me sound to the headphone and digital
socket and
Modprobing with model=6stack-hp gives me sound to the speakers to but they
stay on when headph. are pluged in
Output from alsa-info.sh:
http://pastebin.ca/772406
Output from lspci -vv:
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio
Controller (rev 03)
Subsystem: Mitac Unknown device 8253
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 22
Region 0: Memory at fc200000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA
PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [60] Message Signalled Interrupts: Mask- 64bit+
Queue=0/0 Enable-
Address: 0000000000000000 Data: 0000
Capabilities: [70] Express Unknown type IRQ 0
Device: Supported: MaxPayload 128 bytes, PhantFunc 0, ExtTag-
Device: Latency L0s <64ns, L1 <1us
Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-
Device: RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+
Device: MaxPayload 128 bytes, MaxReadReq 128 bytes
Link: Supported Speed unknown, Width x0, ASPM unknown, Port 0
Link: Latency L0s <64ns, L1 <1us
Link: ASPM Disabled CommClk- ExtSynch-
Link: Speed unknown, Width x0
Capabilities: [100] Virtual Channel
Capabilities: [130] Unknown (5)
thank you.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Query regarding snd_pcm_lib_preallocate_pages_for_all()
2007-11-13 18:42 Query regarding snd_pcm_lib_preallocate_pages_for_all() Pharaoh .
2007-11-13 20:31 ` Mitac 8252D hda_intel glv
@ 2007-11-14 8:14 ` Takashi Iwai
2007-11-14 12:13 ` Pharaoh .
1 sibling, 1 reply; 9+ messages in thread
From: Takashi Iwai @ 2007-11-14 8:14 UTC (permalink / raw)
To: Pharaoh .; +Cc: alsa-devel
At Wed, 14 Nov 2007 00:12:07 +0530,
Pharaoh . wrote:
>
> Hi,
>
> I am trying to use snd_pcm_lib_preallocate_pages_for_all() on an arm based
> platform for preallocating the DMA buffer.
> I am using it as
>
> snd_pcm_lib_preallocate_pages_for_all(pcm,
> SNDRV_DMA_TYPE_DEV,
> NULL,
> 64 * 1024, 64 * 1024);
>
> since I dont know what should be passed as the 3'rd param. I tried passing
> my device pointer i.e. card->dev after
> correctly populating it but I get an error as 'DMA coherent mask in not set'
> and buffer is not allocated.
For ARM, avoid the present buffer-preallocation and mmap functions in
ALSA core. Instead you can allocate the buffers directly via normal
dma_alloc_coherent() in your driver. And, mmap it via
dma_mmap_coherent() by defining the own mmap callback for PCM ops.
See other arm/* drivers for rerecence.
Takashi
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Query regarding snd_pcm_lib_preallocate_pages_for_all()
2007-11-14 12:13 ` Pharaoh .
@ 2007-11-14 9:10 ` Takashi Iwai
0 siblings, 0 replies; 9+ messages in thread
From: Takashi Iwai @ 2007-11-14 9:10 UTC (permalink / raw)
To: Pharaoh .; +Cc: alsa-devel
At Wed, 14 Nov 2007 17:43:21 +0530,
Pharaoh . wrote:
>
> On Nov 14, 2007 1:44 PM, Takashi Iwai <tiwai@suse.de> wrote:
>
> > At Wed, 14 Nov 2007 00:12:07 +0530,
> > Pharaoh . wrote:
> > >
> > > Hi,
> > >
> > > I am trying to use snd_pcm_lib_preallocate_pages_for_all() on an arm
> > based
> > > platform for preallocating the DMA buffer.
> > > I am using it as
> > >
> > > snd_pcm_lib_preallocate_pages_for_all(pcm,
> > > SNDRV_DMA_TYPE_DEV,
> > > NULL,
> > > 64 * 1024, 64 * 1024);
> > >
> > > since I dont know what should be passed as the 3'rd param. I tried
> > passing
> > > my device pointer i.e. card->dev after
> > > correctly populating it but I get an error as 'DMA coherent mask in not
> > set'
> > > and buffer is not allocated.
> >
> > For ARM, avoid the present buffer-preallocation and mmap functions in
> > ALSA core. Instead you can allocate the buffers directly via normal
> > dma_alloc_coherent() in your driver. And, mmap it via
> > dma_mmap_coherent() by defining the own mmap callback for PCM ops.
> >
> > See other arm/* drivers for rerecence.
> >
> >
> > Takashi
> >
>
> Yes, I am using my own buffer preallocation scheme now. I allocate a 128K
> buffer using dma_alloc_coherent in probe and free it only in remove i.e. at
> rmmod time.
>
> I dont think keeping a huge buffer like this till driver removal is a good
> idea but when I allocate/deallocate it in hw_params/hw_free respectively, it
> is causing fragmentation and sometimes the allocation fails. Do you think
> anything better can
> be done?
Unfortuantely, no other way, so far. It's the only way that a driver
can do -- keeping the large chunk as long as it needs.
Takashi
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Query regarding snd_pcm_lib_preallocate_pages_for_all()
2007-11-14 8:14 ` Query regarding snd_pcm_lib_preallocate_pages_for_all() Takashi Iwai
@ 2007-11-14 12:13 ` Pharaoh .
2007-11-14 9:10 ` Takashi Iwai
0 siblings, 1 reply; 9+ messages in thread
From: Pharaoh . @ 2007-11-14 12:13 UTC (permalink / raw)
To: Takashi Iwai; +Cc: alsa-devel
On Nov 14, 2007 1:44 PM, Takashi Iwai <tiwai@suse.de> wrote:
> At Wed, 14 Nov 2007 00:12:07 +0530,
> Pharaoh . wrote:
> >
> > Hi,
> >
> > I am trying to use snd_pcm_lib_preallocate_pages_for_all() on an arm
> based
> > platform for preallocating the DMA buffer.
> > I am using it as
> >
> > snd_pcm_lib_preallocate_pages_for_all(pcm,
> > SNDRV_DMA_TYPE_DEV,
> > NULL,
> > 64 * 1024, 64 * 1024);
> >
> > since I dont know what should be passed as the 3'rd param. I tried
> passing
> > my device pointer i.e. card->dev after
> > correctly populating it but I get an error as 'DMA coherent mask in not
> set'
> > and buffer is not allocated.
>
> For ARM, avoid the present buffer-preallocation and mmap functions in
> ALSA core. Instead you can allocate the buffers directly via normal
> dma_alloc_coherent() in your driver. And, mmap it via
> dma_mmap_coherent() by defining the own mmap callback for PCM ops.
>
> See other arm/* drivers for rerecence.
>
>
> Takashi
>
Yes, I am using my own buffer preallocation scheme now. I allocate a 128K
buffer using dma_alloc_coherent in probe and free it only in remove i.e. at
rmmod time.
I dont think keeping a huge buffer like this till driver removal is a good
idea but when I allocate/deallocate it in hw_params/hw_free respectively, it
is causing fragmentation and sometimes the allocation fails. Do you think
anything better can
be done?
-pharaoh.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Mitac 8252D hda_intel
2007-11-13 20:51 Mitac 8252D hda_intel glv
@ 2007-11-15 11:40 ` Takashi Iwai
2007-11-15 16:53 ` Tobin Davis
2007-11-15 19:49 ` glv
0 siblings, 2 replies; 9+ messages in thread
From: Takashi Iwai @ 2007-11-15 11:40 UTC (permalink / raw)
To: glv; +Cc: alsa-devel
At Tue, 13 Nov 2007 20:51:10 +0000,
glv wrote:
>
> (Second attempt, hope this works)
>
> Hello,
> I have a Mitac 8252D computer with hda_intel, it has 3 sockets in front:
> microphone, audio(headphones)and S/PDIF.
> When using 5.1 the manual says:
> Microphone: rear speakers
> Audio: front speakers
> S/PDIF: center and subwoofer
> Modprobing without any options gives me sound to the headphone and digital
> socket and
> Modprobing with model=6stack-hp gives me sound to the speakers to but they
> stay on when headph. are pluged in
>
> Output from alsa-info.sh:
> http://pastebin.ca/772406
Posting here, at least the content of /proc/asound/codec#*, would be
more helpful.
Is the SPDIF optical? If yes, the device should have two output pins,
one for SPDIF and one for CLFE. That'll be relatively easy.
If the SPDIF output is really shared, it means that the digital audio
out widget is used for the analog out, too. It's not implemented in
other devices, so the change would be somehow unique for this device.
thanks,
Takashi
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Mitac 8252D hda_intel
2007-11-15 11:40 ` Takashi Iwai
@ 2007-11-15 16:53 ` Tobin Davis
2007-11-15 19:49 ` glv
1 sibling, 0 replies; 9+ messages in thread
From: Tobin Davis @ 2007-11-15 16:53 UTC (permalink / raw)
To: Takashi Iwai; +Cc: glv, alsa-devel
On Thu, 2007-11-15 at 12:40 +0100, Takashi Iwai wrote:
> At Tue, 13 Nov 2007 20:51:10 +0000,
> glv wrote:
> >
> > (Second attempt, hope this works)
> >
> > Hello,
> > I have a Mitac 8252D computer with hda_intel, it has 3 sockets in front:
> > microphone, audio(headphones)and S/PDIF.
> > When using 5.1 the manual says:
> > Microphone: rear speakers
> > Audio: front speakers
> > S/PDIF: center and subwoofer
> > Modprobing without any options gives me sound to the headphone and digital
> > socket and
> > Modprobing with model=6stack-hp gives me sound to the speakers to but they
> > stay on when headph. are pluged in
> >
> > Output from alsa-info.sh:
> > http://pastebin.ca/772406
>
> Posting here, at least the content of /proc/asound/codec#*, would be
> more helpful.
The link he posted is from alsa-info.sh, a script written by wishie on
#alsa irc and heavily promoted by me. It has the codec output, as
well as everything else needed to determine how his system is
configured.
> Is the SPDIF optical? If yes, the device should have two output pins,
> one for SPDIF and one for CLFE. That'll be relatively easy.
> If the SPDIF output is really shared, it means that the digital audio
> out widget is used for the analog out, too. It's not implemented in
> other devices, so the change would be somehow unique for this device.
Actually, a lot of laptops (mine included) have a mini-TOS plug
combined with a headphone plug, so it is possible for an optical jack
and an analog jack to share space. Plugging in an spdif cable with
mini-tos adapter activates the hp-detect routine. I haven't tested
spdif output yet (need a good stereo receiver), but that's the
principle behind it.
--
Tobin Davis
In case of atomic attack, the federal ruling against prayer in schools
will be temporarily canceled.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Mitac 8252D hda_intel
2007-11-15 11:40 ` Takashi Iwai
2007-11-15 16:53 ` Tobin Davis
@ 2007-11-15 19:49 ` glv
1 sibling, 0 replies; 9+ messages in thread
From: glv @ 2007-11-15 19:49 UTC (permalink / raw)
To: alsa-devel
Thank you for your reply,
Þann Fimmtudagur 15 nóvember 2007 skrifaði Takashi Iwai:
>
> Posting here, at least the content of /proc/asound/codec#*, would be
> more helpful.
>
Here is the output from /proc/asound/card0/codec#0:
Codec: Realtek ALC883
Address: 0
Vendor Id: 0x10ec0883
Subsystem Id: 0x10718253
Revision Id: 0x100002
No Modem Function Group found
Default PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
Node 0x02 [Audio Output] wcaps 0x11: Stereo
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x03 [Audio Output] wcaps 0x11: Stereo
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x04 [Audio Output] wcaps 0x11: Stereo
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x05 [Audio Output] wcaps 0x11: Stereo
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0x1e]: 16 20 24 32
formats [0x1]: PCM
Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x08 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x08, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x80 0x80]
PCM:
rates [0x160]: 44100 48000 96000
bits [0x6]: 16 20
formats [0x1]: PCM
Connection: 1
0x23
Node 0x09 [Audio Input] wcaps 0x10011b: Stereo Amp-In
Amp-In caps: ofs=0x08, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x80 0x80]
PCM:
rates [0x160]: 44100 48000 96000
bits [0x6]: 16 20
formats [0x1]: PCM
Connection: 1
0x22
Node 0x0a [Audio Input] wcaps 0x100391: Stereo Digital
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0x1e]: 16 20 24 32
formats [0x1]: PCM
Connection: 1
0x1f
Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
Amp-In vals: [0x1f 0x1f] [0x9f 0x9f] [0x80 0x80] [0x80 0x80] [0x80 0x80]
[0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Connection: 10
0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17
Node 0x0c [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x1f 0x1f]
Connection: 2
0x02 0x0b
Node 0x0d [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x1f 0x1f]
Connection: 2
0x03 0x0b
Node 0x0e [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 2
0x04 0x0b
Node 0x0f [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 2
0x05 0x0b
Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x12 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x14 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083e: IN OUT HP Detect
Pin Default 0x99138110: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Purple
Pin-ctls: 0x20: IN
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x15 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x083e: IN OUT HP Detect
Pin Default 0x0121401f: [Jack] HP Out at Ext Rear
Conn = 1/8, Color = Green
Pin-ctls: 0xc0: OUT HP
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x16 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083e: IN OUT HP Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
Pin-ctls: 0x20: IN
Connection: 5
0x0c 0x0d 0x0e* 0x0f 0x26
Node 0x17 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x083e: IN OUT HP Detect
Pin Default 0x99138120: [Fixed] Speaker at Int ATAPI
Conn = ATAPI, Color = Purple
Pin-ctls: 0x20: IN
Connection: 5
0x0c 0x0d 0x0e 0x0f* 0x26
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x03 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08173e: IN OUT HP Detect
Pin Default 0x01a19c50: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
Pin-ctls: 0x24: IN
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x01 0x01] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08173e: IN OUT HP Detect
Pin Default 0x99a38960: [Fixed] Mic at Int ATAPI
Conn = ATAPI, Color = Purple
Pin-ctls: 0x24: IN
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x08173e: IN OUT HP Detect
Pin Default 0x01013021: [Jack] Line Out at Ext Rear
Conn = 1/8, Color = Blue
Pin-ctls: 0x40: OUT
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x08173e: IN OUT HP Detect
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
Pin-ctls: 0x20: IN
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26
Node 0x1c [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
Pin-ctls: 0x00:
Node 0x1d [Pin Complex] wcaps 0x400000: Mono
Pincap 0x0820: IN
Pin Default 0x40138205: [N/A] Speaker at Ext N/A
Conn = ATAPI, Color = Purple
Pin-ctls: 0x00:
Node 0x1e [Pin Complex] wcaps 0x400300: Mono Digital
Pincap 0x0810: OUT
Pin Default 0x01443140: [Jack] SPDIF Out at Ext Rear
Conn = RCA, Color = Blue
Pin-ctls: 0x00:
Connection: 1
0x06
Node 0x1f [Pin Complex] wcaps 0x400200: Mono Digital
Pincap 0x0820: IN
Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
Conn = 1/8, Color = Black
Pin-ctls: 0x00:
Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x22 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x80 0x80]
[0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Amp-Out caps: N/A
Amp-Out vals: [0x00 0x00]
Connection: 11
0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x23 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00] [0x00 0x00] [0x80 0x80] [0x00 0x00]
[0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
Amp-Out caps: N/A
Amp-Out vals: [0x00 0x00]
Connection: 11
0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
Node 0x24 [Vendor Defined Widget] wcaps 0xf00000: Mono
Node 0x25 [Audio Output] wcaps 0x11: Stereo
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x26 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 2
0x25 0x0b
here is card#1:
Codec: Conexant ID 2c06
Address: 1
Vendor Id: 0x14f12c06
Subsystem Id: 0x14f10000
Revision Id: 0x100000
Modem Function Group: 0x2
> Is the SPDIF optical? If yes, the device should have two output pins,
> one for SPDIF and one for CLFE. That'll be relatively easy.
> If the SPDIF output is really shared, it means that the digital audio
> out widget is used for the analog out, too. It's not implemented in
> other devices, so the change would be somehow unique for this device.
I have an iec958 switch that I can use to turn on a red light in the plug
hole, but it has no effect on if I plug in headphones I can allways hear
them, allthough somewhat lower than in the headphone jack.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2007-11-15 19:50 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-13 18:42 Query regarding snd_pcm_lib_preallocate_pages_for_all() Pharaoh .
2007-11-13 20:31 ` Mitac 8252D hda_intel glv
2007-11-14 8:14 ` Query regarding snd_pcm_lib_preallocate_pages_for_all() Takashi Iwai
2007-11-14 12:13 ` Pharaoh .
2007-11-14 9:10 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2007-11-13 20:51 Mitac 8252D hda_intel glv
2007-11-15 11:40 ` Takashi Iwai
2007-11-15 16:53 ` Tobin Davis
2007-11-15 19:49 ` glv
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).