* HDA codec graphing
@ 2008-01-17 12:24 Claudio Matsuoka
2008-01-17 14:46 ` Takashi Iwai
2008-01-18 16:47 ` Alexander E. Patrakov
0 siblings, 2 replies; 11+ messages in thread
From: Claudio Matsuoka @ 2008-01-17 12:24 UTC (permalink / raw)
To: ALSA Developers
After a lot of time published only as a git repository, I created a
page and tarball for Eduardo Habkost's codecgraph tool to graph the
layout of HDA codecs. It may be useful for those tweaking or
troubleshooting existing drivers. The page has also examples of
different codec layouts rendered in SVG. See details at
http://helllabs.org/codecgraph/.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-17 12:24 HDA codec graphing Claudio Matsuoka
@ 2008-01-17 14:46 ` Takashi Iwai
2008-01-17 18:18 ` Claudio Matsuoka
2008-01-18 16:47 ` Alexander E. Patrakov
1 sibling, 1 reply; 11+ messages in thread
From: Takashi Iwai @ 2008-01-17 14:46 UTC (permalink / raw)
To: Claudio Matsuoka; +Cc: ALSA Developers
At Thu, 17 Jan 2008 10:24:00 -0200,
Claudio Matsuoka wrote:
>
> After a lot of time published only as a git repository, I created a
> page and tarball for Eduardo Habkost's codecgraph tool to graph the
> layout of HDA codecs. It may be useful for those tweaking or
> troubleshooting existing drivers. The page has also examples of
> different codec layouts rendered in SVG. See details at
> http://helllabs.org/codecgraph/.
Nice. Then we shouldn't change the proc output format any more, or at
least, keep codecgraph working :)
I think it's worth to include this to the ALSA upstream repo.
Any other useful stuff? Maybe Tobin's script would be good.
Or, maybe it's better to keep outside so that other people can change
more freely than on alsa-project.org...
Takashi
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-17 14:46 ` Takashi Iwai
@ 2008-01-17 18:18 ` Claudio Matsuoka
2008-01-18 4:28 ` Tobin Davis
0 siblings, 1 reply; 11+ messages in thread
From: Claudio Matsuoka @ 2008-01-17 18:18 UTC (permalink / raw)
To: Takashi Iwai; +Cc: ALSA Developers
On Jan 17, 2008 12:46 PM, Takashi Iwai <tiwai@suse.de> wrote:
> Nice. Then we shouldn't change the proc output format any more, or at
> least, keep codecgraph working :)
Change the format as needed, as long as it is unambiguous and contains
all the necessary information we'll keep the tool up to date.
> I think it's worth to include this to the ALSA upstream repo.
> Any other useful stuff? Maybe Tobin's script would be good.
> Or, maybe it's better to keep outside so that other people can change
> more freely than on alsa-project.org...
The grapher is still unstable, keeping it outside would probably be
better for now.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-17 18:18 ` Claudio Matsuoka
@ 2008-01-18 4:28 ` Tobin Davis
2008-01-18 10:39 ` Claudio Matsuoka
2008-01-18 12:02 ` Eduardo Pereira Habkost
0 siblings, 2 replies; 11+ messages in thread
From: Tobin Davis @ 2008-01-18 4:28 UTC (permalink / raw)
To: Claudio Matsuoka; +Cc: Takashi Iwai, ALSA Developers
[-- Attachment #1: Type: text/plain, Size: 1712 bytes --]
I ran this on my home system (Intel DP965LT - STAC9227). Attached is
the graph to add to your samples.
I also am submitting the first (of possibly many) patches. This one
will also look in the $PWD for the codecgraph.py file, so users who
don't wish to install this can just download and run it in place.
I noticed a few output errors as well:
6: Unknown item: No Modem Function Group found
10: Unknown item: Default PCM:
But as I am not yet familiar with python, I'd like to just report these
for now.
As to "my script", first let me clarify that it isn't mine. A user
(wishie) on #alsa at irc.freenode.net worked with me to develop it, but
he deserves full credit. On that note, these both should be added to
alsa-utils or alsa-tools and to the main web site. Together, they will
make development/debug much nicer.
Tobin
On Thu, 2008-01-17 at 16:18 -0200, Claudio Matsuoka wrote:
> On Jan 17, 2008 12:46 PM, Takashi Iwai <tiwai@suse.de> wrote:
>
> > Nice. Then we shouldn't change the proc output format any more, or at
> > least, keep codecgraph working :)
>
> Change the format as needed, as long as it is unambiguous and contains
> all the necessary information we'll keep the tool up to date.
>
>
> > I think it's worth to include this to the ALSA upstream repo.
> > Any other useful stuff? Maybe Tobin's script would be good.
> > Or, maybe it's better to keep outside so that other people can change
> > more freely than on alsa-project.org...
>
> The grapher is still unstable, keeping it outside would probably be
> better for now.
--
Tobin Davis
Anyway, Zen And Art Of Feeding Patches Into Tree is a topic for a different
thread...
- Al Viro on linux-kernel
[-- Attachment #2: codec#2.svg --]
[-- Type: application/octet-stream, Size: 45853 bytes --]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [
<!ATTLIST svg xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink">
]>
<!-- Generated by dot version 2.8 (Sun Aug 13 01:37:46 UTC 2006)
For user: (tobind) Tobin Davis -->
<!-- Title: _anonymous_0 Pages: 1 -->
<svg width="2546pt" height="1736pt"
viewBox = "0 0 2546 1736"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" style="font-family:Times-Roman;font-size:14.00;">
<title>_anonymous_0</title>
<polygon style="fill:white;stroke:white;" points="-2,1738 -2,-2 2548,-2 2548,1738 -2,1738"/>
<g id="graph2" class="cluster"><title>cluster-nid-02</title>
<polygon style="fill:none;stroke:#cccccc;" points="63,1428 499,1428 499,1356 63,1356 63,1428"/>
</g>
<g id="graph3" class="cluster"><title>cluster-nid-03</title>
<polygon style="fill:none;stroke:#cccccc;" points="63,1572 499,1572 499,1500 63,1500 63,1572"/>
</g>
<g id="graph4" class="cluster"><title>cluster-nid-04</title>
<polygon style="fill:none;stroke:#cccccc;" points="63,1188 499,1188 499,1116 63,1116 63,1188"/>
</g>
<g id="graph5" class="cluster"><title>cluster-nid-05</title>
<polygon style="fill:none;stroke:#cccccc;" points="63,1044 499,1044 499,972 63,972 63,1044"/>
</g>
<g id="graph7" class="cluster"><title>cluster-nid-07</title>
<polygon style="fill:none;stroke:#cccccc;" points="2399,324 2485,324 2485,252 2399,252 2399,324"/>
</g>
<g id="graph8" class="cluster"><title>cluster-nid-08</title>
<polygon style="fill:none;stroke:#cccccc;" points="2399,572 2485,572 2485,500 2399,500 2399,572"/>
</g>
<g id="graph9" class="cluster"><title>cluster-nid-09</title>
<polygon style="fill:none;stroke:#cccccc;" points="2399,676 2485,676 2485,604 2399,604 2399,676"/>
</g>
<g id="graph10" class="cluster"><title>cluster-nid-0a-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="730,1532 914,1532 914,1444 730,1444 730,1532"/>
</g>
<g id="graph11" class="cluster"><title>cluster-nid-0a-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,772 198,772 198,684 14,684 14,772"/>
</g>
<g id="graph12" class="cluster"><title>cluster-nid-0b-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="740,1436 904,1436 904,1348 740,1348 740,1436"/>
</g>
<g id="graph13" class="cluster"><title>cluster-nid-0b-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="24,868 188,868 188,780 24,780 24,868"/>
</g>
<g id="graph14" class="cluster"><title>cluster-nid-0c-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="730,1724 914,1724 914,1636 730,1636 730,1724"/>
</g>
<g id="graph15" class="cluster"><title>cluster-nid-0c-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,964 198,964 198,876 14,876 14,964"/>
</g>
<g id="graph16" class="cluster"><title>cluster-nid-0d-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="728,1340 916,1340 916,1252 728,1252 728,1340"/>
</g>
<g id="graph17" class="cluster"><title>cluster-nid-0d-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="12,196 200,196 200,108 12,108 12,196"/>
</g>
<g id="graph18" class="cluster"><title>cluster-nid-0e-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="742,1148 902,1148 902,1060 742,1060 742,1148"/>
</g>
<g id="graph19" class="cluster"><title>cluster-nid-0e-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="26,292 186,292 186,204 26,204 26,292"/>
</g>
<g id="graph20" class="cluster"><title>cluster-nid-0f-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="733,1052 911,1052 911,964 733,964 733,1052"/>
</g>
<g id="graph21" class="cluster"><title>cluster-nid-0f-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="17,388 195,388 195,300 17,300 17,388"/>
</g>
<g id="graph22" class="cluster"><title>cluster-nid-10-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="730,1244 914,1244 914,1156 730,1156 730,1244"/>
</g>
<g id="graph23" class="cluster"><title>cluster-nid-10-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,484 198,484 198,396 14,396 14,484"/>
</g>
<g id="graph24" class="cluster"><title>cluster-nid-11-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="730,1628 914,1628 914,1540 730,1540 730,1628"/>
</g>
<g id="graph25" class="cluster"><title>cluster-nid-11-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,580 198,580 198,492 14,492 14,580"/>
</g>
<g id="graph27" class="cluster"><title>cluster-nid-12-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,676 198,676 198,588 14,588 14,676"/>
</g>
<g id="graph30" class="cluster"><title>cluster-nid-15</title>
<polygon style="fill:none;stroke:#cccccc;" points="405,480 857,480 857,384 405,384 405,480"/>
</g>
<g id="graph31" class="cluster"><title>cluster-nid-16</title>
<polygon style="fill:none;stroke:#cccccc;" points="405,584 857,584 857,488 405,488 405,584"/>
</g>
<g id="graph32" class="cluster"><title>cluster-nid-17</title>
<polygon style="fill:none;stroke:#cccccc;" points="405,688 857,688 857,592 405,592 405,688"/>
</g>
<g id="graph33" class="cluster"><title>cluster-nid-18</title>
<polygon style="fill:none;stroke:#cccccc;" points="1116,408 1504,408 1504,312 1116,312 1116,408"/>
</g>
<g id="graph34" class="cluster"><title>cluster-nid-19</title>
<polygon style="fill:none;stroke:#cccccc;" points="1116,584 1504,584 1504,488 1116,488 1116,584"/>
</g>
<g id="graph35" class="cluster"><title>cluster-nid-1a</title>
<polygon style="fill:none;stroke:#cccccc;" points="1116,688 1504,688 1504,592 1116,592 1116,688"/>
</g>
<g id="graph36" class="cluster"><title>cluster-nid-1b</title>
<polygon style="fill:none;stroke:#cccccc;" points="1704,336 2121,336 2121,240 1704,240 1704,336"/>
</g>
<g id="graph37" class="cluster"><title>cluster-nid-1c</title>
<polygon style="fill:none;stroke:#cccccc;" points="1704,584 2121,584 2121,488 1704,488 1704,584"/>
</g>
<g id="graph38" class="cluster"><title>cluster-nid-1d</title>
<polygon style="fill:none;stroke:#cccccc;" points="1704,688 2121,688 2121,592 1704,592 1704,688"/>
</g>
<g id="graph39" class="cluster"><title>cluster-nid-1e</title>
<polygon style="fill:none;stroke:#cccccc;" points="2022,480 2150,480 2150,408 2022,408 2022,480"/>
</g>
<g id="graph40" class="cluster"><title>cluster-nid-1f</title>
<polygon style="fill:none;stroke:#cccccc;" points="2030,400 2142,400 2142,344 2030,344 2030,400"/>
</g>
<g id="graph41" class="cluster"><title>cluster-nid-20</title>
<polygon style="fill:none;stroke:#cccccc;" points="400,92 528,92 528,20 400,20 400,92"/>
</g>
<g id="graph42" class="cluster"><title>cluster-nid-21-in</title>
<polygon style="fill:none;stroke:#cccccc;" points="2350,488 2534,488 2534,400 2350,400 2350,488"/>
</g>
<g id="graph45" class="cluster"><title>cluster-nid-22-out</title>
<polygon style="fill:none;stroke:#cccccc;" points="14,100 198,100 198,12 14,12 14,100"/>
</g>
<!-- nid-02 -->
<g id="node2" class="node"><title>nid-02</title>
<ellipse style="fill:none;stroke:blue;" cx="106" cy="1392" rx="33" ry="28"/>
<text text-anchor="middle" x="106" y="1389">0x02</text>
<text text-anchor="middle" x="106" y="1405">Stereo</text>
</g>
<!-- nid-02-ampout -->
<g id="node3" class="node"><title>nid-02-ampout</title>
<polygon style="fill:none;stroke:#0000ff;" points="491,1392 451,1374 451,1410 491,1392"/>
</g>
<!-- nid-02->nid-02-ampout -->
<g id="edge3" class="edge"><title>nid-02->nid-02-ampout</title>
<path style="fill:none;stroke:#0000ff;" d="M145,1392C221,1392 389,1392 445,1392"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="143" cy="1392" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="445,1390 450,1392 445,1394 445,1390"/>
</g>
<!-- nid-0a-in -->
<g id="node31" class="node"><title>nid-0a-in</title>
<polygon style="fill:none;stroke:green;" points="905,1452 739,1452 739,1524 905,1524 905,1452"/>
<text text-anchor="middle" x="822" y="1469">0x0a</text>
<text text-anchor="middle" x="822" y="1485">[Jack] HP Out at Ext Front</text>
<text text-anchor="middle" x="822" y="1501">Stereo</text>
<text text-anchor="middle" x="822" y="1517">IN OUT HP Detect</text>
</g>
<!-- nid-02-ampout->nid-0a-in -->
<g id="edge26" class="edge"><title>nid-02-ampout->nid-0a-in</title>
<path style="fill:none;stroke:#333333;" d="M481,1397C525,1409 644,1440 728,1463"/>
<polygon style="fill:#333333;stroke:#333333;" points="729,1460 738,1466 727,1466 729,1460"/>
</g>
<!-- nid-0b-in -->
<g id="node37" class="node"><title>nid-0b-in</title>
<polygon style="fill:none;stroke:green;" points="895,1356 749,1356 749,1428 895,1428 895,1356"/>
<text text-anchor="middle" x="822" y="1373">0x0b</text>
<text text-anchor="middle" x="822" y="1389">[Jack] Mic at Ext Front</text>
<text text-anchor="middle" x="822" y="1405">Stereo</text>
<text text-anchor="middle" x="822" y="1421">IN OUT HP Detect</text>
</g>
<!-- nid-02-ampout->nid-0b-in -->
<g id="edge32" class="edge"><title>nid-02-ampout->nid-0b-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M491,1392C543,1392 658,1392 738,1392"/>
<polygon style="fill:gray;stroke:gray;" points="738,1388 748,1392 738,1395 738,1388"/>
</g>
<!-- nid-0d-in -->
<g id="node48" class="node"><title>nid-0d-in</title>
<polygon style="fill:none;stroke:green;" points="907,1260 737,1260 737,1332 907,1332 907,1260"/>
<text text-anchor="middle" x="822" y="1277">0x0d</text>
<text text-anchor="middle" x="822" y="1293">[Jack] Line Out at Ext Rear</text>
<text text-anchor="middle" x="822" y="1309">Stereo</text>
<text text-anchor="middle" x="822" y="1325">IN OUT HP Detect</text>
</g>
<!-- nid-02-ampout->nid-0d-in -->
<g id="edge42" class="edge"><title>nid-02-ampout->nid-0d-in</title>
<path style="fill:none;stroke:#333333;" d="M481,1387C525,1375 642,1344 726,1322"/>
<polygon style="fill:#333333;stroke:#333333;" points="725,1319 736,1319 727,1325 725,1319"/>
</g>
<!-- nid-03 -->
<g id="node6" class="node"><title>nid-03</title>
<ellipse style="fill:none;stroke:blue;" cx="106" cy="1536" rx="33" ry="28"/>
<text text-anchor="middle" x="106" y="1533">0x03</text>
<text text-anchor="middle" x="106" y="1549">Stereo</text>
</g>
<!-- nid-03-ampout -->
<g id="node7" class="node"><title>nid-03-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="491,1536 451,1518 451,1554 491,1536"/>
</g>
<!-- nid-03->nid-03-ampout -->
<g id="edge6" class="edge"><title>nid-03->nid-03-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M145,1536C221,1536 389,1536 445,1536"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="143" cy="1536" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="445,1534 450,1536 445,1538 445,1534"/>
</g>
<!-- nid-03-ampout->nid-0a-in -->
<g id="edge28" class="edge"><title>nid-03-ampout->nid-0a-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M485,1533C531,1527 645,1511 728,1500"/>
<polygon style="fill:gray;stroke:gray;" points="728,1497 738,1499 728,1503 728,1497"/>
</g>
<!-- nid-03-ampout->nid-0b-in -->
<g id="edge34" class="edge"><title>nid-03-ampout->nid-0b-in</title>
<path style="fill:none;stroke:#333333;" d="M478,1530C521,1513 651,1460 739,1426"/>
<polygon style="fill:#333333;stroke:#333333;" points="737,1423 748,1422 740,1429 737,1423"/>
</g>
<!-- nid-0c-in -->
<g id="node43" class="node"><title>nid-0c-in</title>
<polygon style="fill:none;stroke:green;" points="906,1644 738,1644 738,1716 906,1716 906,1644"/>
<text text-anchor="middle" x="822" y="1661">0x0c</text>
<text text-anchor="middle" x="822" y="1677">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="822" y="1693">Stereo</text>
<text text-anchor="middle" x="822" y="1709">IN OUT Detect</text>
</g>
<!-- nid-03-ampout->nid-0c-in -->
<g id="edge38" class="edge"><title>nid-03-ampout->nid-0c-in</title>
<path style="fill:none;stroke:#333333;" d="M478,1542C519,1558 641,1607 729,1642"/>
<polygon style="fill:#333333;stroke:#333333;" points="730,1639 738,1646 727,1645 730,1639"/>
</g>
<!-- nid-11-in -->
<g id="node68" class="node"><title>nid-11-in</title>
<polygon style="fill:none;stroke:green;" points="906,1548 738,1548 738,1620 906,1620 906,1548"/>
<text text-anchor="middle" x="822" y="1565">0x11</text>
<text text-anchor="middle" x="822" y="1581">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="822" y="1597">Stereo</text>
<text text-anchor="middle" x="822" y="1613">IN OUT Detect</text>
</g>
<!-- nid-03-ampout->nid-11-in -->
<g id="edge58" class="edge"><title>nid-03-ampout->nid-11-in</title>
<path style="fill:none;stroke:#333333;" d="M485,1539C531,1545 645,1561 728,1572"/>
<polygon style="fill:#333333;stroke:#333333;" points="728,1569 738,1573 728,1575 728,1569"/>
</g>
<!-- nid-04 -->
<g id="node10" class="node"><title>nid-04</title>
<ellipse style="fill:none;stroke:blue;" cx="106" cy="1152" rx="33" ry="28"/>
<text text-anchor="middle" x="106" y="1149">0x04</text>
<text text-anchor="middle" x="106" y="1165">Stereo</text>
</g>
<!-- nid-04-ampout -->
<g id="node11" class="node"><title>nid-04-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="491,1152 451,1134 451,1170 491,1152"/>
</g>
<!-- nid-04->nid-04-ampout -->
<g id="edge9" class="edge"><title>nid-04->nid-04-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M145,1152C221,1152 389,1152 445,1152"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="143" cy="1152" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="445,1150 450,1152 445,1154 445,1150"/>
</g>
<!-- nid-0e-in -->
<g id="node53" class="node"><title>nid-0e-in</title>
<polygon style="fill:none;stroke:green;" points="893,1068 751,1068 751,1140 893,1140 893,1068"/>
<text text-anchor="middle" x="822" y="1085">0x0e</text>
<text text-anchor="middle" x="822" y="1101">[Jack] Mic at Ext Rear</text>
<text text-anchor="middle" x="822" y="1117">Stereo</text>
<text text-anchor="middle" x="822" y="1133">IN OUT Detect</text>
</g>
<!-- nid-04-ampout->nid-0e-in -->
<g id="edge46" class="edge"><title>nid-04-ampout->nid-0e-in</title>
<path style="fill:none;stroke:#333333;" d="M485,1149C533,1142 657,1126 740,1115"/>
<polygon style="fill:#333333;stroke:#333333;" points="740,1112 750,1114 740,1118 740,1112"/>
</g>
<!-- nid-10-in -->
<g id="node63" class="node"><title>nid-10-in</title>
<polygon style="fill:none;stroke:green;" points="906,1164 738,1164 738,1236 906,1236 906,1164"/>
<text text-anchor="middle" x="822" y="1181">0x10</text>
<text text-anchor="middle" x="822" y="1197">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="822" y="1213">Stereo</text>
<text text-anchor="middle" x="822" y="1229">IN OUT Detect</text>
</g>
<!-- nid-04-ampout->nid-10-in -->
<g id="edge54" class="edge"><title>nid-04-ampout->nid-10-in</title>
<path style="fill:none;stroke:#333333;" d="M485,1155C531,1161 645,1177 728,1188"/>
<polygon style="fill:#333333;stroke:#333333;" points="728,1185 738,1189 728,1191 728,1185"/>
</g>
<!-- nid-05 -->
<g id="node14" class="node"><title>nid-05</title>
<ellipse style="fill:none;stroke:blue;" cx="106" cy="1008" rx="33" ry="28"/>
<text text-anchor="middle" x="106" y="1005">0x05</text>
<text text-anchor="middle" x="106" y="1021">Stereo</text>
</g>
<!-- nid-05-ampout -->
<g id="node15" class="node"><title>nid-05-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="491,1008 451,990 451,1026 491,1008"/>
</g>
<!-- nid-05->nid-05-ampout -->
<g id="edge12" class="edge"><title>nid-05->nid-05-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M145,1008C221,1008 389,1008 445,1008"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="143" cy="1008" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="445,1006 450,1008 445,1010 445,1006"/>
</g>
<!-- nid-0f-in -->
<g id="node58" class="node"><title>nid-0f-in</title>
<polygon style="fill:none;stroke:green;" points="903,972 741,972 741,1044 903,1044 903,972"/>
<text text-anchor="middle" x="822" y="989">0x0f</text>
<text text-anchor="middle" x="822" y="1005">[Jack] Line In at Ext Rear</text>
<text text-anchor="middle" x="822" y="1021">Stereo</text>
<text text-anchor="middle" x="822" y="1037">IN OUT Detect</text>
</g>
<!-- nid-05-ampout->nid-0f-in -->
<g id="edge50" class="edge"><title>nid-05-ampout->nid-0f-in</title>
<path style="fill:none;stroke:#333333;" d="M491,1008C542,1008 652,1008 731,1008"/>
<polygon style="fill:#333333;stroke:#333333;" points="731,1004 741,1008 731,1011 731,1004"/>
</g>
<!-- nid-07 -->
<g id="node19" class="node"><title>nid-07</title>
<ellipse style="fill:none;stroke:red;" cx="2442" cy="288" rx="33" ry="28"/>
<text text-anchor="middle" x="2442" y="285">0x07</text>
<text text-anchor="middle" x="2442" y="301">Stereo</text>
</g>
<!-- nid-1b-ampout -->
<g id="node20" class="node"><title>nid-1b-ampout</title>
<polygon style="fill:none;stroke:#0000ff;" points="2113,288 2073,270 2073,306 2113,288"/>
</g>
<!-- nid-1b-ampout->nid-07 -->
<g id="edge16" class="edge"><title>nid-1b-ampout->nid-07</title>
<path style="fill:none;stroke:#333333;" d="M2113,288C2174,288 2322,288 2397,288"/>
<polygon style="fill:#333333;stroke:#333333;" points="2397,284 2407,288 2397,291 2397,284"/>
</g>
<!-- nid-21-in -->
<g id="node152" class="node"><title>nid-21-in</title>
<polygon style="fill:none;stroke:green;" points="2526,408 2358,408 2358,480 2526,480 2526,408"/>
<text text-anchor="middle" x="2442" y="425">0x21</text>
<text text-anchor="middle" x="2442" y="441">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="2442" y="457">Stereo Digital</text>
<text text-anchor="middle" x="2442" y="473">OUT</text>
</g>
<!-- nid-1b-ampout->nid-21-in -->
<g id="edge168" class="edge"><title>nid-1b-ampout->nid-21-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M2100,294C2141,312 2264,366 2351,404"/>
<polygon style="fill:gray;stroke:gray;" points="2352,401 2360,408 2349,407 2352,401"/>
</g>
<!-- nid-08 -->
<g id="node23" class="node"><title>nid-08</title>
<ellipse style="fill:none;stroke:red;" cx="2442" cy="536" rx="33" ry="28"/>
<text text-anchor="middle" x="2442" y="533">0x08</text>
<text text-anchor="middle" x="2442" y="549">Stereo</text>
</g>
<!-- nid-1c-ampout -->
<g id="node24" class="node"><title>nid-1c-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="2113,536 2073,518 2073,554 2113,536"/>
</g>
<!-- nid-1c-ampout->nid-08 -->
<g id="edge19" class="edge"><title>nid-1c-ampout->nid-08</title>
<path style="fill:none;stroke:#333333;" d="M2113,536C2174,536 2322,536 2397,536"/>
<polygon style="fill:#333333;stroke:#333333;" points="2397,532 2407,536 2397,539 2397,532"/>
</g>
<!-- nid-1c-ampout->nid-21-in -->
<g id="edge170" class="edge"><title>nid-1c-ampout->nid-21-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M2103,532C2146,520 2264,490 2348,469"/>
<polygon style="fill:gray;stroke:gray;" points="2347,466 2358,466 2349,472 2347,466"/>
</g>
<!-- nid-09 -->
<g id="node27" class="node"><title>nid-09</title>
<ellipse style="fill:none;stroke:red;" cx="2442" cy="640" rx="33" ry="28"/>
<text text-anchor="middle" x="2442" y="637">0x09</text>
<text text-anchor="middle" x="2442" y="653">Stereo</text>
</g>
<!-- nid-1d-ampout -->
<g id="node28" class="node"><title>nid-1d-ampout</title>
<polygon style="fill:none;stroke:#0000ff;" points="2113,640 2073,622 2073,658 2113,640"/>
</g>
<!-- nid-1d-ampout->nid-09 -->
<g id="edge22" class="edge"><title>nid-1d-ampout->nid-09</title>
<path style="fill:none;stroke:#333333;" d="M2113,640C2174,640 2322,640 2397,640"/>
<polygon style="fill:#333333;stroke:#333333;" points="2397,636 2407,640 2397,643 2397,636"/>
</g>
<!-- nid-1d-ampout->nid-21-in -->
<g id="edge172" class="edge"><title>nid-1d-ampout->nid-21-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M2098,633C2141,610 2279,533 2367,485"/>
<polygon style="fill:gray;stroke:gray;" points="2366,482 2376,480 2369,488 2366,482"/>
</g>
<!-- nid-0a-out -->
<g id="node33" class="node"><title>nid-0a-out</title>
<polygon style="fill:none;stroke:green;" points="189,692 23,692 23,764 189,764 189,692"/>
<text text-anchor="middle" x="106" y="709">0x0a</text>
<text text-anchor="middle" x="106" y="725">[Jack] HP Out at Ext Front</text>
<text text-anchor="middle" x="106" y="741">Stereo</text>
<text text-anchor="middle" x="106" y="757">IN OUT HP Detect</text>
</g>
<!-- nid-15 -->
<g id="node78" class="node"><title>nid-15</title>
<polygon style="fill:none;stroke:black;" points="513,392 435,392 415,472 493,472 513,392"/>
<text text-anchor="middle" x="464" y="429">0x15</text>
<text text-anchor="middle" x="464" y="445">Stereo</text>
</g>
<!-- nid-0a-out->nid-15 -->
<g id="edge79" class="edge"><title>nid-0a-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M182,692C188,688 194,684 200,680 302,607 308,566 400,484 402,482 404,480 406,478"/>
<polygon style="fill:gray;stroke:gray;" points="404,475 414,472 408,481 404,475"/>
</g>
<!-- nid-16 -->
<g id="node91" class="node"><title>nid-16</title>
<polygon style="fill:none;stroke:black;" points="513,496 435,496 415,576 493,576 513,496"/>
<text text-anchor="middle" x="464" y="533">0x16</text>
<text text-anchor="middle" x="464" y="549">Stereo</text>
</g>
<!-- nid-0a-out->nid-16 -->
<g id="edge100" class="edge"><title>nid-0a-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M177,692C185,688 192,684 200,680 273,641 355,596 408,567"/>
<polygon style="fill:gray;stroke:gray;" points="407,564 417,562 410,570 407,564"/>
</g>
<!-- nid-17 -->
<g id="node104" class="node"><title>nid-17</title>
<polygon style="fill:none;stroke:black;" points="513,600 435,600 415,680 493,680 513,600"/>
<text text-anchor="middle" x="464" y="637">0x17</text>
<text text-anchor="middle" x="464" y="653">Stereo</text>
</g>
<!-- nid-0a-out->nid-17 -->
<g id="edge121" class="edge"><title>nid-0a-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,707C259,690 353,667 411,652"/>
<polygon style="fill:gray;stroke:gray;" points="411,649 421,650 412,655 411,649"/>
</g>
<!-- nid-0b-out -->
<g id="node39" class="node"><title>nid-0b-out</title>
<polygon style="fill:none;stroke:green;" points="179,788 33,788 33,860 179,860 179,788"/>
<text text-anchor="middle" x="106" y="805">0x0b</text>
<text text-anchor="middle" x="106" y="821">[Jack] Mic at Ext Front</text>
<text text-anchor="middle" x="106" y="837">Stereo</text>
<text text-anchor="middle" x="106" y="853">IN OUT HP Detect</text>
</g>
<!-- nid-0b-out->nid-15 -->
<g id="edge73" class="edge"><title>nid-0b-out->nid-15</title>
<path style="fill:none;stroke:#333333;" d="M180,791C187,786 194,781 200,776 319,672 294,599 400,484 402,482 404,479 407,477"/>
<polygon style="fill:#333333;stroke:#333333;" points="404,475 414,470 409,480 404,475"/>
</g>
<!-- nid-0b-out->nid-16 -->
<g id="edge94" class="edge"><title>nid-0b-out->nid-16</title>
<path style="fill:none;stroke:#333333;" d="M180,789C187,785 194,780 200,776 300,705 309,668 400,588 402,586 404,584 406,582"/>
<polygon style="fill:#333333;stroke:#333333;" points="404,579 414,576 408,585 404,579"/>
</g>
<!-- nid-0b-out->nid-17 -->
<g id="edge115" class="edge"><title>nid-0b-out->nid-17</title>
<path style="fill:none;stroke:#333333;" d="M177,788C185,784 192,780 200,776 273,738 355,696 409,669"/>
<polygon style="fill:#333333;stroke:#333333;" points="408,666 418,664 411,672 408,666"/>
</g>
<!-- nid-0c-out -->
<g id="node45" class="node"><title>nid-0c-out</title>
<polygon style="fill:none;stroke:green;" points="190,884 22,884 22,956 190,956 190,884"/>
<text text-anchor="middle" x="106" y="901">0x0c</text>
<text text-anchor="middle" x="106" y="917">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="106" y="933">Stereo</text>
<text text-anchor="middle" x="106" y="949">IN OUT Detect</text>
</g>
<!-- nid-0c-out->nid-15 -->
<g id="edge75" class="edge"><title>nid-0c-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M186,884C191,880 196,876 200,872 338,735 278,634 400,484 402,482 404,479 407,477"/>
<polygon style="fill:gray;stroke:gray;" points="405,474 414,469 410,479 405,474"/>
</g>
<!-- nid-0c-out->nid-16 -->
<g id="edge96" class="edge"><title>nid-0c-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M184,884C190,880 195,876 200,872 317,770 295,700 400,588 402,586 404,584 406,582"/>
<polygon style="fill:gray;stroke:gray;" points="404,579 414,575 409,584 404,579"/>
</g>
<!-- nid-0c-out->nid-17 -->
<g id="edge117" class="edge"><title>nid-0c-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M181,884C188,880 194,876 200,872 283,816 367,737 418,687"/>
<polygon style="fill:gray;stroke:gray;" points="415,685 425,680 420,690 415,685"/>
</g>
<!-- nid-0d-out -->
<g id="node50" class="node"><title>nid-0d-out</title>
<polygon style="fill:none;stroke:green;" points="191,116 21,116 21,188 191,188 191,116"/>
<text text-anchor="middle" x="106" y="133">0x0d</text>
<text text-anchor="middle" x="106" y="149">[Jack] Line Out at Ext Rear</text>
<text text-anchor="middle" x="106" y="165">Stereo</text>
<text text-anchor="middle" x="106" y="181">IN OUT HP Detect</text>
</g>
<!-- nid-0d-out->nid-15 -->
<g id="edge77" class="edge"><title>nid-0d-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M182,188C188,192 194,196 200,200 287,258 376,342 425,392"/>
<polygon style="fill:gray;stroke:gray;" points="427,389 432,399 422,394 427,389"/>
</g>
<!-- nid-0d-out->nid-16 -->
<g id="edge98" class="edge"><title>nid-0d-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M185,188C190,192 195,196 200,200 317,301 295,371 400,484 407,491 414,498 422,504"/>
<polygon style="fill:gray;stroke:gray;" points="425,502 430,511 420,507 425,502"/>
</g>
<!-- nid-0d-out->nid-17 -->
<g id="edge119" class="edge"><title>nid-0d-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M186,188C191,192 196,196 200,200 338,336 278,437 400,588 407,595 414,603 422,609"/>
<polygon style="fill:gray;stroke:gray;" points="425,607 430,616 420,612 425,607"/>
</g>
<!-- nid-0e-out -->
<g id="node55" class="node"><title>nid-0e-out</title>
<polygon style="fill:none;stroke:green;" points="177,212 35,212 35,284 177,284 177,212"/>
<text text-anchor="middle" x="106" y="229">0x0e</text>
<text text-anchor="middle" x="106" y="245">[Jack] Mic at Ext Rear</text>
<text text-anchor="middle" x="106" y="261">Stereo</text>
<text text-anchor="middle" x="106" y="277">IN OUT Detect</text>
</g>
<!-- nid-0e-out->nid-15 -->
<g id="edge67" class="edge"><title>nid-0e-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M177,284C185,288 193,292 200,296 277,336 367,381 420,409"/>
<polygon style="fill:gray;stroke:gray;" points="422,406 429,414 419,412 422,406"/>
</g>
<!-- nid-0e-out->nid-16 -->
<g id="edge88" class="edge"><title>nid-0e-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M178,282C185,286 193,291 200,296 300,366 309,403 400,484 407,490 415,496 423,502"/>
<polygon style="fill:gray;stroke:gray;" points="426,500 431,509 421,505 426,500"/>
</g>
<!-- nid-0e-out->nid-17 -->
<g id="edge109" class="edge"><title>nid-0e-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M178,280C186,285 193,290 200,296 319,399 294,472 400,588 407,595 414,602 422,608"/>
<polygon style="fill:gray;stroke:gray;" points="425,606 430,615 420,611 425,606"/>
</g>
<!-- nid-0f-out -->
<g id="node60" class="node"><title>nid-0f-out</title>
<polygon style="fill:none;stroke:green;" points="187,308 25,308 25,380 187,380 187,308"/>
<text text-anchor="middle" x="106" y="325">0x0f</text>
<text text-anchor="middle" x="106" y="341">[Jack] Line In at Ext Rear</text>
<text text-anchor="middle" x="106" y="357">Stereo</text>
<text text-anchor="middle" x="106" y="373">IN OUT Detect</text>
</g>
<!-- nid-0f-out->nid-15 -->
<g id="edge71" class="edge"><title>nid-0f-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M187,364C258,381 358,406 416,420"/>
<polygon style="fill:gray;stroke:gray;" points="417,417 426,423 415,423 417,417"/>
</g>
<!-- nid-0f-out->nid-16 -->
<g id="edge92" class="edge"><title>nid-0f-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M177,380C185,384 193,388 200,392 278,433 368,482 420,511"/>
<polygon style="fill:gray;stroke:gray;" points="422,508 429,516 419,514 422,508"/>
</g>
<!-- nid-0f-out->nid-17 -->
<g id="edge113" class="edge"><title>nid-0f-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M182,380C188,384 194,388 200,392 302,464 308,505 400,588 407,594 415,600 423,606"/>
<polygon style="fill:gray;stroke:gray;" points="426,604 431,613 421,609 426,604"/>
</g>
<!-- nid-10-out -->
<g id="node65" class="node"><title>nid-10-out</title>
<polygon style="fill:none;stroke:green;" points="190,404 22,404 22,476 190,476 190,404"/>
<text text-anchor="middle" x="106" y="421">0x10</text>
<text text-anchor="middle" x="106" y="437">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="106" y="453">Stereo</text>
<text text-anchor="middle" x="106" y="469">IN OUT Detect</text>
</g>
<!-- nid-10-out->nid-15 -->
<g id="edge81" class="edge"><title>nid-10-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,438C260,437 355,434 414,433"/>
<polygon style="fill:gray;stroke:gray;" points="414,429 424,433 414,436 414,429"/>
</g>
<!-- nid-10-out->nid-16 -->
<g id="edge102" class="edge"><title>nid-10-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,463C261,482 359,508 417,523"/>
<polygon style="fill:gray;stroke:gray;" points="418,520 427,526 416,526 418,520"/>
</g>
<!-- nid-10-out->nid-17 -->
<g id="edge123" class="edge"><title>nid-10-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M178,476C186,480 193,484 200,488 278,531 369,583 420,614"/>
<polygon style="fill:gray;stroke:gray;" points="422,611 429,619 419,617 422,611"/>
</g>
<!-- nid-11-out -->
<g id="node70" class="node"><title>nid-11-out</title>
<polygon style="fill:none;stroke:green;" points="190,500 22,500 22,572 190,572 190,500"/>
<text text-anchor="middle" x="106" y="517">0x11</text>
<text text-anchor="middle" x="106" y="533">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="106" y="549">Stereo</text>
<text text-anchor="middle" x="106" y="565">IN OUT Detect</text>
</g>
<!-- nid-11-out->nid-15 -->
<g id="edge83" class="edge"><title>nid-11-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,511C258,492 352,464 410,448"/>
<polygon style="fill:gray;stroke:gray;" points="409,445 420,445 411,451 409,445"/>
</g>
<!-- nid-11-out->nid-16 -->
<g id="edge104" class="edge"><title>nid-11-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,536C260,536 355,536 414,536"/>
<polygon style="fill:gray;stroke:gray;" points="414,532 424,536 414,539 414,532"/>
</g>
<!-- nid-11-out->nid-17 -->
<g id="edge125" class="edge"><title>nid-11-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,561C261,581 359,610 417,626"/>
<polygon style="fill:gray;stroke:gray;" points="418,623 427,629 416,629 418,623"/>
</g>
<!-- nid-12-out -->
<g id="node74" class="node"><title>nid-12-out</title>
<polygon style="fill:none;stroke:green;" points="190,596 22,596 22,668 190,668 190,596"/>
<text text-anchor="middle" x="106" y="613">0x12</text>
<text text-anchor="middle" x="106" y="629">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="106" y="645">Stereo</text>
<text text-anchor="middle" x="106" y="661">IN</text>
</g>
<!-- nid-12-out->nid-15 -->
<g id="edge69" class="edge"><title>nid-12-out->nid-15</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M177,596C185,592 193,588 200,584 273,544 355,496 408,465"/>
<polygon style="fill:gray;stroke:gray;" points="407,462 417,460 410,468 407,462"/>
</g>
<!-- nid-12-out->nid-16 -->
<g id="edge90" class="edge"><title>nid-12-out->nid-16</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,609C258,591 353,566 411,551"/>
<polygon style="fill:gray;stroke:gray;" points="410,548 421,548 412,554 410,548"/>
</g>
<!-- nid-12-out->nid-17 -->
<g id="edge111" class="edge"><title>nid-12-out->nid-17</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M190,634C260,635 356,638 414,639"/>
<polygon style="fill:gray;stroke:gray;" points="414,635 424,639 414,642 414,635"/>
</g>
<!-- nid-15-ampout -->
<g id="node79" class="node"><title>nid-15-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="849,432 809,414 809,450 849,432"/>
</g>
<!-- nid-15->nid-15-ampout -->
<g id="edge65" class="edge"><title>nid-15->nid-15-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M508,432C586,432 748,432 803,432"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="506" cy="432" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="803,430 808,432 803,434 803,430"/>
</g>
<!-- nid-18-ampin -->
<g id="node118" class="node"><title>nid-18-ampin</title>
<polygon style="fill:none;stroke:#0000ff;" points="1178,360 1138,342 1138,378 1178,360"/>
</g>
<!-- nid-15-ampout->nid-18-ampin -->
<g id="edge130" class="edge"><title>nid-15-ampout->nid-18-ampin</title>
<path style="fill:none;stroke:#333333;" d="M840,428C896,416 1065,379 1127,365"/>
<polygon style="fill:#333333;stroke:#333333;" points="1127,362 1137,363 1128,368 1127,362"/>
</g>
<!-- nid-16-ampout -->
<g id="node92" class="node"><title>nid-16-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="849,536 809,518 809,554 849,536"/>
</g>
<!-- nid-16->nid-16-ampout -->
<g id="edge86" class="edge"><title>nid-16->nid-16-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M508,536C586,536 748,536 803,536"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="506" cy="536" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="803,534 808,536 803,538 803,534"/>
</g>
<!-- nid-19-ampin -->
<g id="node123" class="node"><title>nid-19-ampin</title>
<polygon style="fill:none;stroke:#0000ff;" points="1178,536 1138,518 1138,554 1178,536"/>
</g>
<!-- nid-16-ampout->nid-19-ampin -->
<g id="edge135" class="edge"><title>nid-16-ampout->nid-19-ampin</title>
<path style="fill:none;stroke:#333333;" d="M849,536C912,536 1068,536 1127,536"/>
<polygon style="fill:#333333;stroke:#333333;" points="1127,532 1137,536 1127,539 1127,532"/>
</g>
<!-- nid-17-ampout -->
<g id="node105" class="node"><title>nid-17-ampout</title>
<polygon style="fill:none;stroke:#c8c8c8;" points="849,640 809,622 809,658 849,640"/>
</g>
<!-- nid-17->nid-17-ampout -->
<g id="edge107" class="edge"><title>nid-17->nid-17-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M508,640C586,640 748,640 803,640"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="506" cy="640" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="803,638 808,640 803,642 803,638"/>
</g>
<!-- nid-1a-ampin -->
<g id="node128" class="node"><title>nid-1a-ampin</title>
<polygon style="fill:none;stroke:#0000ff;" points="1178,640 1138,622 1138,658 1178,640"/>
</g>
<!-- nid-17-ampout->nid-1a-ampin -->
<g id="edge140" class="edge"><title>nid-17-ampout->nid-1a-ampin</title>
<path style="fill:none;stroke:#333333;" d="M849,640C912,640 1068,640 1127,640"/>
<polygon style="fill:#333333;stroke:#333333;" points="1127,636 1137,640 1127,643 1127,636"/>
</g>
<!-- nid-18 -->
<g id="node117" class="node"><title>nid-18</title>
<polygon style="fill:none;stroke:black;" points="1494,320 1416,320 1396,400 1474,400 1494,320"/>
<text text-anchor="middle" x="1445" y="357">0x18</text>
<text text-anchor="middle" x="1445" y="373">Stereo</text>
</g>
<!-- nid-1b -->
<g id="node132" class="node"><title>nid-1b</title>
<polygon style="fill:none;stroke:black;" points="1812,248 1734,248 1714,328 1792,328 1812,248"/>
<text text-anchor="middle" x="1763" y="285">0x1b</text>
<text text-anchor="middle" x="1763" y="301">Stereo</text>
</g>
<!-- nid-18->nid-1b -->
<g id="edge145" class="edge"><title>nid-18->nid-1b</title>
<path style="fill:none;stroke:#333333;" d="M1488,350C1545,338 1648,314 1710,300"/>
<polygon style="fill:#333333;stroke:#333333;" points="1710,297 1720,298 1711,303 1710,297"/>
</g>
<!-- nid-18-ampin->nid-18 -->
<g id="edge128" class="edge"><title>nid-18-ampin->nid-18</title>
<path style="fill:none;stroke:#0000ff;" d="M1182,360C1234,360 1340,360 1400,360"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="1180" cy="360" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="1400,358 1405,360 1400,362 1400,358"/>
</g>
<!-- nid-19 -->
<g id="node122" class="node"><title>nid-19</title>
<polygon style="fill:none;stroke:black;" points="1494,496 1416,496 1396,576 1474,576 1494,496"/>
<text text-anchor="middle" x="1445" y="533">0x19</text>
<text text-anchor="middle" x="1445" y="549">Stereo</text>
</g>
<!-- nid-1c -->
<g id="node136" class="node"><title>nid-1c</title>
<polygon style="fill:none;stroke:black;" points="1812,496 1734,496 1714,576 1792,576 1812,496"/>
<text text-anchor="middle" x="1763" y="533">0x1c</text>
<text text-anchor="middle" x="1763" y="549">Stereo</text>
</g>
<!-- nid-19->nid-1c -->
<g id="edge150" class="edge"><title>nid-19->nid-1c</title>
<path style="fill:none;stroke:#333333;" d="M1485,536C1543,536 1650,536 1713,536"/>
<polygon style="fill:#333333;stroke:#333333;" points="1713,532 1723,536 1713,539 1713,532"/>
</g>
<!-- nid-19-ampin->nid-19 -->
<g id="edge133" class="edge"><title>nid-19-ampin->nid-19</title>
<path style="fill:none;stroke:#0000ff;" d="M1182,536C1234,536 1340,536 1400,536"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="1180" cy="536" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="1400,534 1405,536 1400,538 1400,534"/>
</g>
<!-- nid-1a -->
<g id="node127" class="node"><title>nid-1a</title>
<polygon style="fill:none;stroke:black;" points="1494,600 1416,600 1396,680 1474,680 1494,600"/>
<text text-anchor="middle" x="1445" y="637">0x1a</text>
<text text-anchor="middle" x="1445" y="653">Stereo</text>
</g>
<!-- nid-1d -->
<g id="node140" class="node"><title>nid-1d</title>
<polygon style="fill:none;stroke:black;" points="1812,600 1734,600 1714,680 1792,680 1812,600"/>
<text text-anchor="middle" x="1763" y="637">0x1d</text>
<text text-anchor="middle" x="1763" y="653">Stereo</text>
</g>
<!-- nid-1a->nid-1d -->
<g id="edge155" class="edge"><title>nid-1a->nid-1d</title>
<path style="fill:none;stroke:#333333;" d="M1485,640C1543,640 1650,640 1713,640"/>
<polygon style="fill:#333333;stroke:#333333;" points="1713,636 1723,640 1713,643 1713,636"/>
</g>
<!-- nid-1a-ampin->nid-1a -->
<g id="edge138" class="edge"><title>nid-1a-ampin->nid-1a</title>
<path style="fill:none;stroke:#0000ff;" d="M1182,640C1234,640 1340,640 1400,640"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="1180" cy="640" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="1400,638 1405,640 1400,642 1400,638"/>
</g>
<!-- nid-1b->nid-1b-ampout -->
<g id="edge143" class="edge"><title>nid-1b->nid-1b-ampout</title>
<path style="fill:none;stroke:#0000ff;" d="M1807,288C1879,288 2018,288 2067,288"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="1805" cy="288" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="2067,286 2072,288 2067,290 2067,286"/>
</g>
<!-- nid-1c->nid-1c-ampout -->
<g id="edge148" class="edge"><title>nid-1c->nid-1c-ampout</title>
<path style="fill:none;stroke:#c8c8c8;" d="M1807,536C1879,536 2018,536 2067,536"/>
<ellipse style="fill:#c8c8c8;stroke:#c8c8c8;" cx="1805" cy="536" rx="2" ry="2"/>
<polygon style="fill:#c8c8c8;stroke:#c8c8c8;" points="2067,534 2072,536 2067,538 2067,534"/>
</g>
<!-- nid-1d->nid-1d-ampout -->
<g id="edge153" class="edge"><title>nid-1d->nid-1d-ampout</title>
<path style="fill:none;stroke:#0000ff;" d="M1807,640C1879,640 2018,640 2067,640"/>
<ellipse style="fill:#0000ff;stroke:#0000ff;" cx="1805" cy="640" rx="2" ry="2"/>
<polygon style="fill:#0000ff;stroke:#0000ff;" points="2067,638 2072,640 2067,642 2067,638"/>
</g>
<!-- nid-1e -->
<g id="node144" class="node"><title>nid-1e</title>
<ellipse style="fill:none;stroke:blue;" cx="2086" cy="444" rx="55" ry="28"/>
<text text-anchor="middle" x="2086" y="441">0x1e</text>
<text text-anchor="middle" x="2086" y="457">Stereo Digital</text>
</g>
<!-- nid-1e->nid-21-in -->
<g id="edge164" class="edge"><title>nid-1e->nid-21-in</title>
<path style="fill:none;stroke:#333333;" d="M2142,444C2197,444 2282,444 2348,444"/>
<polygon style="fill:#333333;stroke:#333333;" points="2348,440 2358,444 2348,447 2348,440"/>
</g>
<!-- nid-1f -->
<g id="node146" class="node"><title>nid-1f</title>
<polygon style="fill:none;stroke:black;" points="2133,352 2039,352 2039,392 2133,392 2133,352"/>
<text text-anchor="middle" x="2086" y="369">0x1f</text>
<text text-anchor="middle" x="2086" y="385">Stereo Digital</text>
</g>
<!-- nid-1f->nid-21-in -->
<g id="edge166" class="edge"><title>nid-1f->nid-21-in</title>
<path style="fill:none;stroke:gray;stroke-dasharray:5,2;" d="M2134,382C2188,392 2279,411 2348,425"/>
<polygon style="fill:gray;stroke:gray;" points="2349,422 2358,427 2348,428 2349,422"/>
</g>
<!-- nid-20 -->
<g id="node148" class="node"><title>nid-20</title>
<ellipse style="fill:none;stroke:red;" cx="464" cy="56" rx="55" ry="28"/>
<text text-anchor="middle" x="464" y="53">0x20</text>
<text text-anchor="middle" x="464" y="69">Stereo Digital</text>
</g>
<!-- nid-22-out -->
<g id="node149" class="node"><title>nid-22-out</title>
<polygon style="fill:none;stroke:green;" points="190,20 22,20 22,92 190,92 190,20"/>
<text text-anchor="middle" x="106" y="37">0x22</text>
<text text-anchor="middle" x="106" y="53">[N/A] Line Out at Ext N/A</text>
<text text-anchor="middle" x="106" y="69">Stereo Digital</text>
<text text-anchor="middle" x="106" y="85">IN EAPD Detect</text>
</g>
<!-- nid-22-out->nid-20 -->
<g id="edge160" class="edge"><title>nid-22-out->nid-20</title>
<path style="fill:none;stroke:#333333;" d="M190,56C253,56 340,56 398,56"/>
<polygon style="fill:#333333;stroke:#333333;" points="398,52 408,56 398,59 398,52"/>
</g>
</g>
</svg>
[-- Attachment #3: codecgraph.patch --]
[-- Type: text/x-patch, Size: 338 bytes --]
--- codecgraph~ 2008-01-17 20:17:17.000000000 -0800
+++ codecgraph 2008-01-17 20:17:30.000000000 -0800
@@ -52,7 +52,7 @@
exit 1
fi
-if [ -z "`which codecgraph.py`" ]; then
+if [ -z "`which codecgraph.py`" ] && [ -z "codecgraph.py" ]; then
echo "error: can't find codecgraph.py in PATH (package corrupt?)" >&2
exit 1
fi
[-- Attachment #4: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-18 4:28 ` Tobin Davis
@ 2008-01-18 10:39 ` Claudio Matsuoka
2008-01-18 14:52 ` Tobin Davis
2008-01-18 12:02 ` Eduardo Pereira Habkost
1 sibling, 1 reply; 11+ messages in thread
From: Claudio Matsuoka @ 2008-01-18 10:39 UTC (permalink / raw)
To: Tobin Davis; +Cc: Takashi Iwai, ALSA Developers
On Jan 18, 2008 2:28 AM, Tobin Davis <tdavis@dsl-only.net> wrote:
> I ran this on my home system (Intel DP965LT - STAC9227). Attached is the
> graph to add to your samples.
Could you send me the subdevice ID and the codec file? We store the
samples in codec file format (instead of the generated ps/svg/png
files).
> I also am submitting the first (of possibly many) patches. This one will
> also look in the $PWD for the codecgraph.py file, so users who don't wish to
> install this can just download and run it in place.
>
> I noticed a few output errors as well:
>
> 6: Unknown item: No Modem Function Group found
> 10: Unknown item: Default PCM:
> But as I am not yet familiar with python, I'd like to just report these for
> now.
Thanks. In fact the tool is Eduardo's, I added the wrapper shell
instead of building that functionality into the Python script exactly
because I'm not familiar with Python as well, but I though this script
was a good excuse to learn it ;) So eventually (soon, I hope) I'll
change the main script to pipe the output directly into graphviz and
get rid of the wrapper.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-18 4:28 ` Tobin Davis
2008-01-18 10:39 ` Claudio Matsuoka
@ 2008-01-18 12:02 ` Eduardo Pereira Habkost
1 sibling, 0 replies; 11+ messages in thread
From: Eduardo Pereira Habkost @ 2008-01-18 12:02 UTC (permalink / raw)
To: Tobin Davis; +Cc: Takashi Iwai, Claudio Matsuoka, ALSA Developers
On Thu, Jan 17, 2008 at 08:28:13PM -0800, Tobin Davis wrote:
> I ran this on my home system (Intel DP965LT - STAC9227). Attached is
> the graph to add to your samples.
>
> I also am submitting the first (of possibly many) patches. This one
> will also look in the $PWD for the codecgraph.py file, so users who
> don't wish to install this can just download and run it in place.
>
> I noticed a few output errors as well:
>
> 6: Unknown item: No Modem Function Group found
> 10: Unknown item: Default PCM:
It is just a warning because the script doesn't know what those lines
mean. But those lines are simply ignored and it shouldn't cause problems.
I have just changed the script to not give a warning on those cases.
--
Eduardo
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-18 10:39 ` Claudio Matsuoka
@ 2008-01-18 14:52 ` Tobin Davis
2008-01-19 2:04 ` Claudio Matsuoka
0 siblings, 1 reply; 11+ messages in thread
From: Tobin Davis @ 2008-01-18 14:52 UTC (permalink / raw)
To: Claudio Matsuoka; +Cc: Takashi Iwai, ALSA Developers
[-- Attachment #1: Type: text/plain, Size: 1406 bytes --]
On Fri, 2008-01-18 at 08:39 -0200, Claudio Matsuoka wrote:
> On Jan 18, 2008 2:28 AM, Tobin Davis <tdavis@dsl-only.net> wrote:
>
> > I ran this on my home system (Intel DP965LT - STAC9227). Attached is the
> > graph to add to your samples.
>
> Could you send me the subdevice ID and the codec file? We store the
> samples in codec file format (instead of the generated ps/svg/png
> files).
>
Ok, attached.
>
> > I also am submitting the first (of possibly many) patches. This one will
> > also look in the $PWD for the codecgraph.py file, so users who don't wish to
> > install this can just download and run it in place.
> >
> > I noticed a few output errors as well:
> >
> > 6: Unknown item: No Modem Function Group found
> > 10: Unknown item: Default PCM:
> > But as I am not yet familiar with python, I'd like to just report these for
> > now.
>
> Thanks. In fact the tool is Eduardo's, I added the wrapper shell
> instead of building that functionality into the Python script exactly
> because I'm not familiar with Python as well, but I though this script
> was a good excuse to learn it ;) So eventually (soon, I hope) I'll
> change the main script to pipe the output directly into graphviz and
> get rid of the wrapper.
--
Tobin Davis
Fortune finishes the great quotations, #6
"But, soft! What light through yonder window breaks?"
It's nothing, honey. Go back to sleep.
[-- Attachment #2: codec#2.out --]
[-- Type: application/octet-stream, Size: 5834 bytes --]
Codec: SigmaTel STAC9227
Address: 2
Vendor Id: 0x83847618
Subsystem Id: 0x80862111
Revision Id: 0x100201
No Modem Function Group found
Default PCM:
rates [0x7e0]: 44100 48000 88200 96000 176400 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: ofs=0x00, nsteps=0x0e, stepsize=0x05, mute=0
Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
Node 0x02 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0x7f 0x7f]
Power: 0x0
Node 0x03 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x04 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xca 0x00]
Power: 0x0
Node 0x05 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xb5 0x80]
Power: 0x0
Node 0x06 [Vendor Defined Widget] wcaps 0xfd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x07 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1b
Node 0x08 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1c
Node 0x09 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1d
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x0221401f: [Jack] HP Out at Ext Front
Conn = 1/8, Color = Green
Pin-ctls: 0xc0: OUT HP
Connection: 2
0x02* 0x03
Node 0x0b [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x02a19120: [Jack] Mic at Ext Front
Conn = 1/8, Color = Pink
Pin-ctls: 0x24: IN
Connection: 2
0x02 0x03*
Node 0x0c [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x03
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x01014011: [Jack] Line Out at Ext Rear
Conn = 1/8, Color = Green
Pin-ctls: 0x40: OUT
Connection: 1
0x02
Node 0x0e [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x01a19021: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
Pin-ctls: 0x40: OUT
Connection: 1
0x04
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x01813024: [Jack] Line In at Ext Rear
Conn = 1/8, Color = Blue
Pin-ctls: 0x20: IN
Connection: 1
0x05
Node 0x10 [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0837: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x04
Node 0x11 [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0837: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x03
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Node 0x13 [Vendor Defined Widget] wcaps 0xf00001: Stereo
Node 0x14 [Vendor Defined Widget] wcaps 0xf00001: Stereo
Node 0x15 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x04 0x04]
Connection: 9
0x0e 0x12 0x0f 0x0b* 0x0c 0x0d 0x0a 0x10 0x11
Node 0x16 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x04 0x04]
Connection: 9
0x0e 0x12 0x0f 0x0b* 0x0c 0x0d 0x0a 0x10 0x11
Node 0x17 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x04 0x04]
Connection: 9
0x0e 0x12 0x0f 0x0b* 0x0c 0x0d 0x0a 0x10 0x11
Node 0x18 [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x15
Node 0x19 [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x16
Node 0x1a [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x17
Node 0x1b [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Connection: 1
0x18
Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Connection: 1
0x19
Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Connection: 1
0x1a
Node 0x1e [Audio Output] wcaps 0x40211: Stereo Digital
PCM:
rates [0x7e0]: 44100 48000 88200 96000 176400 192000
bits [0xe]: 16 20 24
formats [0x5]: PCM AC3
Node 0x1f [Vendor Defined Widget] wcaps 0xf30201: Stereo Digital
Node 0x20 [Audio Input] wcaps 0x140311: Stereo Digital
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x5]: PCM AC3
Connection: 1
0x22
Node 0x21 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 5
0x1e* 0x1f 0x1b 0x1c 0x1d
Node 0x22 [Pin Complex] wcaps 0x430681: Stereo Digital
Pincap 0x0810024: IN EAPD Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Power: 0x0
Node 0x23 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=0
Amp-Out vals: [0x00]
Node 0x24 [Volume Knob Widget] wcaps 0x600000: Mono
[-- Attachment #3: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-17 12:24 HDA codec graphing Claudio Matsuoka
2008-01-17 14:46 ` Takashi Iwai
@ 2008-01-18 16:47 ` Alexander E. Patrakov
2008-01-19 1:39 ` Claudio Matsuoka
1 sibling, 1 reply; 11+ messages in thread
From: Alexander E. Patrakov @ 2008-01-18 16:47 UTC (permalink / raw)
To: alsa-devel
[-- Attachment #1: Type: text/plain, Size: 1724 bytes --]
Claudio Matsuoka wrote:
> After a lot of time published only as a git repository, I created a
> page and tarball for Eduardo Habkost's codecgraph tool to graph the
> layout of HDA codecs. It may be useful for those tweaking or
> troubleshooting existing drivers. The page has also examples of
> different codec layouts rendered in SVG. See details at
> http://helllabs.org/codecgraph/.
Please find attached a codec file for SigmaTel STAC9227, for addition to the
samples on your web page.
home:~# lspci -n -vv -d 8086:284b
00:1b.0 0403: 8086:284b (rev 02)
Subsystem: 8086:2114
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 23
Region 0: Memory at 90420000 (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
--
Alexander E. Patrakov
[-- Attachment #2: codec#2-SigmaTel_STAC9227 --]
[-- Type: text/plain, Size: 5803 bytes --]
Codec: SigmaTel STAC9227
Address: 2
Vendor Id: 0x83847618
Subsystem Id: 0x80862114
Revision Id: 0x100201
Default PCM:
rates [0x7e0]: 44100 48000 88200 96000 176400 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Default Amp-In caps: ofs=0x00, nsteps=0x0e, stepsize=0x05, mute=0
Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
Node 0x02 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0x5b 0x5b]
Power: 0x0
Node 0x03 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x04 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x05 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x06 [Vendor Defined Widget] wcaps 0xfd0c05: Stereo Amp-Out
Amp-Out caps: N/A
Amp-Out vals: [0xff 0xff]
Power: 0x0
Node 0x07 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1b
Node 0x08 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1c
Node 0x09 [Audio Input] wcaps 0x1d0541: Stereo
Power: 0x0
Connection: 1
0x1d
Node 0x0a [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x0221401f: [Jack] HP Out at Ext Front
Conn = 1/8, Color = Green
Pin-ctls: 0xc0: OUT HP
Connection: 2
0x02* 0x03
Node 0x0b [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x02a19120: [Jack] Mic at Ext Front
Conn = 1/8, Color = Pink
Pin-ctls: 0x24: IN
Connection: 2
0x02 0x03*
Node 0x0c [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x03
Node 0x0d [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x08173f: IN OUT HP Detect
Pin Default 0x01014011: [Jack] Line Out at Ext Rear
Conn = 1/8, Color = Green
Pin-ctls: 0x40: OUT
Connection: 1
0x02
Node 0x0e [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x01a19021: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
Pin-ctls: 0x24: IN
Connection: 1
0x04
Node 0x0f [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x081737: IN OUT Detect
Pin Default 0x01813024: [Jack] Line In at Ext Rear
Conn = 1/8, Color = Blue
Pin-ctls: 0x20: IN
Connection: 1
0x05
Node 0x10 [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0837: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x04
Node 0x11 [Pin Complex] wcaps 0x400181: Stereo
Pincap 0x0837: IN OUT Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 1
0x03
Node 0x12 [Pin Complex] wcaps 0x400001: Stereo
Pincap 0x0820: IN
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Node 0x13 [Vendor Defined Widget] wcaps 0xf00001: Stereo
Node 0x14 [Vendor Defined Widget] wcaps 0xf00001: Stereo
Node 0x15 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x04 0x04]
Connection: 9
0x0e 0x12 0x0f 0x0b* 0x0c 0x0d 0x0a 0x10 0x11
Node 0x16 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 9
0x0e* 0x12 0x0f 0x0b 0x0c 0x0d 0x0a 0x10 0x11
Node 0x17 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 9
0x0e* 0x12 0x0f 0x0b 0x0c 0x0d 0x0a 0x10 0x11
Node 0x18 [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x15
Node 0x19 [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x16
Node 0x1a [Audio Selector] wcaps 0x300103: Stereo Amp-In
Amp-In caps: N/A
Amp-In vals: [0x00 0x00]
Connection: 1
0x17
Node 0x1b [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Connection: 1
0x18
Node 0x1c [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Connection: 1
0x19
Node 0x1d [Audio Selector] wcaps 0x30090d: Stereo Amp-Out
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Connection: 1
0x1a
Node 0x1e [Audio Output] wcaps 0x40211: Stereo Digital
PCM:
rates [0x7e0]: 44100 48000 88200 96000 176400 192000
bits [0xe]: 16 20 24
formats [0x5]: PCM AC3
Node 0x1f [Vendor Defined Widget] wcaps 0xf30201: Stereo Digital
Node 0x20 [Audio Input] wcaps 0x140311: Stereo Digital
PCM:
rates [0x160]: 44100 48000 96000
bits [0xe]: 16 20 24
formats [0x5]: PCM AC3
Connection: 1
0x22
Node 0x21 [Pin Complex] wcaps 0x400301: Stereo Digital
Pincap 0x0810: OUT
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Connection: 5
0x1e* 0x1f 0x1b 0x1c 0x1d
Node 0x22 [Pin Complex] wcaps 0x430681: Stereo Digital
Pincap 0x0810024: IN EAPD Detect
Pin Default 0x40000100: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
Pin-ctls: 0x00:
Power: 0x0
Node 0x23 [Beep Generator Widget] wcaps 0x70000c: Mono Amp-Out
Amp-Out caps: ofs=0x03, nsteps=0x03, stepsize=0x17, mute=0
Amp-Out vals: [0x00]
Node 0x24 [Volume Knob Widget] wcaps 0x600000: Mono
[-- Attachment #3: Type: text/plain, Size: 160 bytes --]
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-18 16:47 ` Alexander E. Patrakov
@ 2008-01-19 1:39 ` Claudio Matsuoka
2008-01-19 6:20 ` Alexander E. Patrakov
0 siblings, 1 reply; 11+ messages in thread
From: Claudio Matsuoka @ 2008-01-19 1:39 UTC (permalink / raw)
To: Alexander E. Patrakov; +Cc: alsa-devel
2008/1/18 Alexander E. Patrakov <patrakov@gmail.com>:
> Please find attached a codec file for SigmaTel STAC9227, for addition to the
> samples on your web page.
Thanks, is that an Intel DG965SS board?
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-18 14:52 ` Tobin Davis
@ 2008-01-19 2:04 ` Claudio Matsuoka
0 siblings, 0 replies; 11+ messages in thread
From: Claudio Matsuoka @ 2008-01-19 2:04 UTC (permalink / raw)
To: Tobin Davis; +Cc: Takashi Iwai, ALSA Developers
On Jan 18, 2008 12:52 PM, Tobin Davis <tdavis@dsl-only.net> wrote:
> On Fri, 2008-01-18 at 08:39 -0200, Claudio Matsuoka wrote:
>
> Could you send me the subdevice ID and the codec file? We store the
> samples in codec file format (instead of the generated ps/svg/png
> files).
>
> Ok, attached.
Added, thanks. I also changed the way it finds the python script so
you'll be able to run it from the same path as the wrapper script.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: HDA codec graphing
2008-01-19 1:39 ` Claudio Matsuoka
@ 2008-01-19 6:20 ` Alexander E. Patrakov
0 siblings, 0 replies; 11+ messages in thread
From: Alexander E. Patrakov @ 2008-01-19 6:20 UTC (permalink / raw)
To: Claudio Matsuoka; +Cc: alsa-devel
2008/1/19, Claudio Matsuoka <cmatsuoka@gmail.com>:
> 2008/1/18 Alexander E. Patrakov <patrakov@gmail.com>:
>
> > Please find attached a codec file for SigmaTel STAC9227, for addition to the
> > samples on your web page.
>
> Thanks, is that an Intel DG965SS board?
Yes.
--
Alexander E. Patrakov
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2008-01-19 6:20 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-17 12:24 HDA codec graphing Claudio Matsuoka
2008-01-17 14:46 ` Takashi Iwai
2008-01-17 18:18 ` Claudio Matsuoka
2008-01-18 4:28 ` Tobin Davis
2008-01-18 10:39 ` Claudio Matsuoka
2008-01-18 14:52 ` Tobin Davis
2008-01-19 2:04 ` Claudio Matsuoka
2008-01-18 12:02 ` Eduardo Pereira Habkost
2008-01-18 16:47 ` Alexander E. Patrakov
2008-01-19 1:39 ` Claudio Matsuoka
2008-01-19 6:20 ` Alexander E. Patrakov
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.