[alsa-devel] getting the sound to work on my asus m6s00v
Raymond Yau
superquad.vortex2 at gmail.com
Sat Mar 28 11:33:36 CET 2015
2015-3-28 下午5:52 於 "Christian Gleerup" <cromozon at swn.nu> 寫道:
>
> Trying again with my previous kernel since the new kernel seems broken
regarding loading the sound module
>
> nothin plugged in
> ../hdajacksensetest/hdajacksensetest -a; for i in 0x14 0x15 0x15; do
./hda-verb /dev/snd/hwC0D0 $i SET_PIN_SENSE 0 nid ;./hda-verb
/dev/snd/hwC0D0 $i GET_PIN_SENSE 0 nid; done
> Pin 0x14 (Green Headphone, Rear side): present = No
> Pin 0x15 (Not connected): present = Yes
> Pin 0x16 (Not connected): present = No
> Pin 0x17 (Not connected): present = No
> Pin 0x18 (Pink Mic, Rear side): present = No
> Pin 0x19 (Not connected): present = No
> Pin 0x1a (Not connected): present = No
> Pin 0x1b (Not connected): present = No
> Pin 0x1c (Internal CD, Mobile-In): present = No
> Pin 0x1d (Not connected): present = No
> Pin 0x1e (Green SPDIF Out, Rear side): present = No
> Pin 0x1f (Not connected): present = No
> nid = 0x14, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x14, verb = 0xf09, param = 0x0
> value = 0x7fffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0xffffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0xffffffff
>
> Headphone plugged in
> ../hdajacksensetest/hdajacksensetest -a; for i in 0x14 0x15 0x15; do
./hda-verb /dev/snd/hwC0D0 $i SET_PIN_SENSE 0 nid ;./hda-verb
/dev/snd/hwC0D0 $i GET_PIN_SENSE 0 nid; done
> Pin 0x14 (Green Headphone, Rear side): present = No
> Pin 0x15 (Not connected): present = No
> Pin 0x16 (Not connected): present = No
> Pin 0x17 (Not connected): present = No
> Pin 0x18 (Pink Mic, Rear side): present = No
> Pin 0x19 (Not connected): present = No
> Pin 0x1a (Not connected): present = No
> Pin 0x1b (Not connected): present = No
> Pin 0x1c (Internal CD, Mobile-In): present = No
> Pin 0x1d (Not connected): present = No
> Pin 0x1e (Green SPDIF Out, Rear side): present = No
> Pin 0x1f (Not connected): present = No
> nid = 0x14, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x14, verb = 0xf09, param = 0x0
> value = 0x7fffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0xffffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0xffffffff
0xffffffff = 0x80000000 + 0x7ffffff
Try the modified version of hda_jack_sense_test.py which need hda_analyzer
's codec parser and alsa python
https://bugzilla.kernel.org/show_bug.cgi?id=66621#c39
it need time for the impedance measurement to complete and become stable,
You may need to increase time.sleep(0.02) if you still get 0xffffffff
https://bugzilla.kernel.org/show_bug.cgi?id=66621#c41
# the hda_codec.py file comes from Jaroslav Kysela's hda_analyzer program.
from hda_codec import *
import time
def parseoptions():
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-c", "--card", dest="cardindex", default=0,
metavar="CARD",
help="card index (as can be seen in /proc/asound/cards)")
parser.add_option("-i", "--codec", dest="codecindex", default=0,
metavar="CODEC",
help="codec index (as can be seen in /proc/asound/cardX/codecY)")
(options, args) = parser.parse_args()
return int(options.cardindex), int(options.codecindex)
cardindex, codecindex = parseoptions()
codec = HDACodec(cardindex, codecindex)
codec.analyze()
for nid in codec.nodes:
node = codec.get_node(nid)
if WIDGET_TYPE_IDS[node.wtype] == 'PIN':
pd = " "
impedance = " "
if ((node.pincaps & 4) == 4):
if (node.pincaps & 2):
codec.rw(nid, VERBS['SET_PIN_SENSE'], 0)
time.sleep(0.02)
sense = codec.rw(nid, VERBS['GET_PIN_SENSE'], 0)
if (node.pincaps & 1):
impedance = "Imp=%d" % (sense & 0x7fffffff)
if (sense & 0x80000000):
pd = "PD=1"
else:
pd = "PD=0"
print "Pin 0x%.2x [%s] %s %s at %s (%s) %s : %s %s" % (nid,
node.jack_conn_name, node.jack_type_name, node.jack_location_name,
node.jack_location2_name, node.jack_color_name, node.defcfg_misc , pd,
impedance)
>
> Mic plugged in
> ../hdajacksensetest/hdajacksensetest -a; for i in 0x14 0x15 0x15; do
./hda-verb /dev/snd/hwC0D0 $i SET_PIN_SENSE 0 nid ;./hda-verb
/dev/snd/hwC0D0 $i GET_PIN_SENSE 0 nid; done
> Pin 0x14 (Green Headphone, Rear side): present = Yes
> Pin 0x15 (Not connected): present = No
> Pin 0x16 (Not connected): present = No
> Pin 0x17 (Not connected): present = No
> Pin 0x18 (Pink Mic, Rear side): present = No
> Pin 0x19 (Not connected): present = No
> Pin 0x1a (Not connected): present = Yes
> Pin 0x1b (Not connected): present = No
> Pin 0x1c (Internal CD, Mobile-In): present = No
> Pin 0x1d (Not connected): present = No
> Pin 0x1e (Green SPDIF Out, Rear side): present = No
> Pin 0x1f (Not connected): present = No
> nid = 0x14, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x14, verb = 0xf09, param = 0x0
> value = 0xffffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0x7fffffff
> nid = 0x15, verb = 0x709, param = 0x0
> value = 0x0
> nid = 0x15, verb = 0xf09, param = 0x0
> value = 0x7fffffff
>
>
>
>
>
>
More information about the Alsa-devel
mailing list