当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 22 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : 690G的主板真的就不能有声音了么
帖子发表于 : 2008-08-29 23:16 

注册: 2008-03-18 0:24
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
从7.10到8.04
不管怎么折腾 始终还是没出过声音
:cry:
看来ubuntu只能拿来写写代码 做做东西了
想听音乐看电影还是去windows好了


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-08-30 9:32 
头像

注册: 2006-04-30 19:49
帖子: 116
送出感谢: 1
接收感谢: 0 次
我也是690g的板,我都是自己下载alsa-driver改一下代码,然后编译安装的。具体过程我是看的linuxsir上某位大侠帖子上的


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-08-30 9:33 
头像

注册: 2006-04-30 19:49
帖子: 116
送出感谢: 1
接收感谢: 0 次
内容如下
引用:
花了三天时间,终于把主板集成声卡给装好了,不敢独享,给需要的朋友们。
解决的方法还是很简单,只不过中间走了很多的弯路,还进了一个死胡同。
Part I 有一些分析过程,其实也是很简单的。如果你只是想知道应该怎么做,可以直接跳到ParII
Part II 说明了修改步骤。

Part I
在实验室的时候,电脑的集成声卡很差,有爆音,还有杂声。所以就在TAOBAO上淘了一块aureal的au8820。这块声卡,很好找,Debian装好的时候,自带的ALSA就能找到。可是主板集成的声卡,死活也找不到。

我用lspci明明能看到这个device
#lspci
00:00.0 Host bridge: ATI Technologies Inc Unknown device 7910
00:01.0 PCI bridge: ATI Technologies Inc Unknown device 7912
00:07.0 PCI bridge: ATI Technologies Inc Unknown device 7917
00:12.0 IDE interface: ATI Technologies Inc SB600 Non-Raid-5 SATA
00:13.0 USB Controller: ATI Technologies Inc SB600 USB (OHCI0)
00:13.1 USB Controller: ATI Technologies Inc SB600 USB (OHCI1)
00:13.2 USB Controller: ATI Technologies Inc SB600 USB (OHCI2)
00:13.3 USB Controller: ATI Technologies Inc SB600 USB (OHCI3)
00:13.4 USB Controller: ATI Technologies Inc SB600 USB (OHCI4)
00:13.5 USB Controller: ATI Technologies Inc SB600 USB Controller (EHCI)
00:14.0 SMBus: ATI Technologies Inc SB600 SMBus (rev 13)
00:14.1 IDE interface: ATI Technologies Inc SB600 IDE
00:14.3 ISA bridge: ATI Technologies Inc SB600 PCI to LPC Bridge
00:14.4 PCI bridge: ATI Technologies Inc SB600 PCI to PCI Bridge
00:14.5 Multimedia audio controller: ATI Technologies Inc SB600 AC97 Audio
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:05.0 VGA compatible controller: ATI Technologies Inc Unknown device 791e
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 01)
03:06.0 Multimedia audio controller: Aureal Semiconductor Vortex 1 (rev 02)

我用alsaconf,可以找到au8820,可是找不到集成的声卡。所以,先看一下alsaconf的机制是什么样的。

所有加载的pci driver都会在/lib/modules/2.6.18-4-amd64/modules.pcimap这个文件中记录。(这里的2.6.18-4-amd64是和系统相关的)
如下:
more /lib/modules/2.6.18-4-amd64/modules.pcimap
# pci module vendor device subvendor subdevice class class_mask driver_data
BusLogic 0x0000104b 0x00001040 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
BusLogic 0x0000104b 0x00000140 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
BusLogic 0x0000104b 0x00008130 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0
其中就包括了,这个driver能作用的device的vendor和device。
alsaconf就是根据这两个参数来找的。
可以看到,对于au8820在modules.pcimap里有一行

#cat /lib/modules/2.6.18-4-amd64/modules.pcimap | grep -i au
snd-au8820 0x000012eb 0x00000001 0xffffffff 0xffffffff 0x00000000 0x00000000 0x0

#lspci -nn|grep -i
可以看到
00:14.5 Multimedia audio controller [0401]: ATI Technologies Inc SB600 AC97 Audio [1002:4382]
03:06.0 Multimedia audio controller [0401]: Aureal Semiconductor Vortex 1 [12eb:0001] (rev 02)
vendor和device都是相同的。也就是说,这个device可以用snd-au8820这个driver来驱动

集成声卡的[1002:4382],在/lib/modules/2.6.18-4-amd64/modules.pcimap这个文件里找不到相应的driver.

这下好了,到[url]www.alsa-project.org/[url]下了最新了driver.
alsa-driver-1.0.14rc4.tar.bz2
解压后进目录
用grep -R 4382 *
还是找不到对这个device的支持。于是我想到,应该只要把这个device的加到某个驱动里,就可能用了。事实证明,这是对的,最后,我也是这样做的。
不过,就是这个时候,犯了一个大错,就多花了一天。:(

因为网上找到的SB600都说是用snd-hda-intel这个驱动。所以,改动了snd_hda_intel.c这个文件。
编译后加载上去。alsaconf真找到了。可是还是没有声音出来。又上网找了半天,都没有找到想要的结果。看来只能自己解决了。

.configure的时候加上--with-debug=detect
重新编译,加载。加载的时候显示出了一个错误:
no codec found
往回找,原来是读一个叫STATESTS的register的时候,读的数据是0x0。
加了几行代码,读出0x00~0xff的所有的register,并不是所有的都是0x00,看来读的过程还是没有问题,只是数据有问题。我也没有datasheet,也没有办法进一步调试了。

在下进了死胡同了,在网上东撞西撞的。无意中发现hda-intel是要SB600 AZALIA的驱动。而我的,是AC97。难道是开始就选错了?晕死了,重新来吧。(AZALIA是AC97的升级)

发现ATIIXP是用的AC97的CODEC。
修改atiixp.c后,编译,加载。果然成了。

Part II
下面的操作都要在root下完成
0.
这个修改是否支持你的主板?如果你是onda a69g,那一定可以用。
#lspci -nn
如果你的集成声卡也是[1002:4382],那么就可以用。

1.
上www.alsa-project.org下载最新的driver,utilities
ftp://ftp.alsa-project.org/pub/drive....14rc4.tar.bz2
ftp://ftp.alsa-project.org/pub/utils....14rc4.tar.bz2
解压
#tar jxf alsa-driver-1.0.14rc4.tar.bz2
#tar jxf alsa-utils-1.0.14rc4.tar.bz2

2.装备utilities
#cd alsa-utils-1.0.14rc4
#./configure && make && make install

3.修改atiixp.c
#cd ../alsa-driver-1.0.14rc4
#vi alsa-kernel/pci/atiixp.c
在290行左右有一个结构
static struct pci_device_id snd_atiixp_ids[] = {
{ 0x1002, 0x4341, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB200 */
{ 0x1002, 0x4361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB300 */
{ 0x1002, 0x4370, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB400 */
{ 0, }
};
加一行,成如下
static struct pci_device_id snd_atiixp_ids[] = {
{ 0x1002, 0x4341, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB200 */
{ 0x1002, 0x4361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB300 */
{ 0x1002, 0x4370, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB400 */
{ 0x1002, 0x4382, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB600 */
{ 0, }
};
保存退出(用:wq)

3.
编译,安装
# ./configure --with-cards=atiixp --with-sequencer=yes ; make ; make install


4.
#modprobe snd-atiixp

5.
#alsaconf

6.
#alsamixer
调节声音(注意的是,声卡是静音的,要打开)

7.
#alsactl store



页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-08-30 9:35 
头像

注册: 2006-04-30 19:49
帖子: 116
送出感谢: 1
接收感谢: 0 次
当然我是下载的alsa-driver 1.0.17然后hack下代码安装的
完全没有问题,希望可以帮到你 :lol:


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2008-09-01 20:42 
头像

注册: 2007-06-19 11:25
帖子: 530
地址: 北京
系统: kubuntu 13.04
送出感谢: 0 次
接收感谢: 0 次
我也是690G的主板,装上系统直接就有声音的,但是显示驱动太烂了!


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2008-09-03 1:41 

注册: 2008-09-03 0:51
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
xzzgd 写道:
当然我是下载的alsa-driver 1.0.17然后hack下代码安装的
完全没有问题,希望可以帮到你 :lol:


root@xihao-desktop:/home/xihao/1/alsa-utils-1.0.14rc4# alsaconf
-bash: alsaconf: command not found
root@xihao-desktop:/home/xihao/1/alsa-utils-1.0.14rc4# alsactl store
alsactl: save_state:1251: No soundcards found...
root@xihao-desktop:/home/xihao/1/alsa-utils-1.0.14rc4#


最后由 xihaoabc 编辑于 2008-09-06 17:02,总共编辑了 1 次

页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2008-09-03 13:17 
头像

注册: 2005-08-14 19:53
帖子: 3998
送出感谢: 1
接收感谢: 2
我这里也是直接就有声音了啊。。。可以试试看8.10。alsa没有道理到现在还不支持690G


页首
 用户资料  
 
8 楼 
 文章标题 :
帖子发表于 : 2008-09-04 11:52 
头像

注册: 2006-04-30 19:49
帖子: 116
送出感谢: 1
接收感谢: 0 次
是alsa不支持,当然只要修改一点代码就可以了


页首
 用户资料  
 
9 楼 
 文章标题 :
帖子发表于 : 2008-09-04 12:17 
头像

注册: 2006-04-30 19:49
帖子: 116
送出感谢: 1
接收感谢: 0 次
我简化一下过程啊
1) 终端运行
引用:
# lspci -nn|grep audio

如果显示
引用:
00:14.5 Multimedia audio controller [0401]: ATI Technologies Inc SB600 AC97 Audio [1002:4382]

特别是最后是[1002:4382]就可以往下看了。
2)下载ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.17.tar.bz2
解压缩,进入文件夹/alsa-driver-1.0.17/alsa-alsa-kernel/pci/,用文本编辑器打开atiixp.c,在290行左右有
引用:
{ 0x1002, 0x4341, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB200 */
{ 0x1002, 0x4361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB300 */
{ 0x1002, 0x4370, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB400 */

在下面添加一行{ 0x1002, 0x4382, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB600 */
变成
引用:
{ 0x1002, 0x4341, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB200 */
{ 0x1002, 0x4361, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB300 */
{ 0x1002, 0x4370, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB400 */
{ 0x1002, 0x4382, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 }, /* SB600 */

保存退出
在终端里/alsa-driver-1.0.17文件夹下运行
代码:
# ./configure --with-cards=atiixp --with-sequencer=yes ; make ; make install

3)
代码:
#modprobe snd-atiixp

4)
代码:
#alsaconf

找到声卡,搞定。


页首
 用户资料  
 
10 楼 
 文章标题 :
帖子发表于 : 2008-09-04 12:17 
头像

注册: 2007-09-29 3:09
帖子: 5773
送出感谢: 0 次
接收感谢: 3
太有钱,太新,太先进... :lol:


_________________
HUNT Unfortunately No Talent...


页首
 用户资料  
 
11 楼 
 文章标题 :
帖子发表于 : 2008-09-04 13:41 
头像

注册: 2005-08-14 19:53
帖子: 3998
送出感谢: 1
接收感谢: 2
690G还新呢!我这里怎么都还好没有遇到问题。。。


页首
 用户资料  
 
12 楼 
 文章标题 :
帖子发表于 : 2008-09-05 0:14 

注册: 2008-09-03 0:51
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
555
下载 速度 好慢阿!!!
不过 00:14.5 Multimedia audio controller [0401]: ATI Technologies Inc SB600 AC97 Audio [1002:4382]
这个完全一样
今天晚上 弄不出声音不睡觉了!!

十分感谢楼主细心的教导!


页首
 用户资料  
 
13 楼 
 文章标题 :
帖子发表于 : 2008-09-05 0:41 

注册: 2008-09-03 0:51
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
install: 无法创建一般文件 “/usr/include/sound”: Permission denied
make: *** [install-headers] 错误 1


页首
 用户资料  
 
14 楼 
 文章标题 :
帖子发表于 : 2008-09-05 0:41 

注册: 2008-09-03 0:51
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
还是不行阿!!!
太郁闷了!


页首
 用户资料  
 
15 楼 
 文章标题 :
帖子发表于 : 2008-09-05 0:46 

注册: 2008-09-03 0:51
帖子: 11
送出感谢: 0 次
接收感谢: 0 次
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.04.1
Release: 8.04
Codename: hardy
root@any-desktop://home/any/alsa-driver-1.0.17# cat /etc/redhat-release
cat: /etc/redhat-release: No such file or directory
root@any-desktop://home/any/alsa-driver-1.0.17# lspci
00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
00:02.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Graphics Port 0)
00:07.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 3)
00:12.0 SATA controller: ATI Technologies Inc SB600 Non-Raid-5 SATA
00:13.0 USB Controller: ATI Technologies Inc SB600 USB (OHCI0)
00:13.1 USB Controller: ATI Technologies Inc SB600 USB (OHCI1)
00:13.2 USB Controller: ATI Technologies Inc SB600 USB (OHCI2)
00:13.3 USB Controller: ATI Technologies Inc SB600 USB (OHCI3)
00:13.4 USB Controller: ATI Technologies Inc SB600 USB (OHCI4)
00:13.5 USB Controller: ATI Technologies Inc SB600 USB Controller (EHCI)
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 14)
00:14.1 IDE interface: ATI Technologies Inc SB600 IDE
00:14.3 ISA bridge: ATI Technologies Inc SB600 PCI to LPC Bridge
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge
00:14.5 Multimedia audio controller: ATI Technologies Inc SB600 AC97 Audio
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon X1650 Series
01:00.1 Display controller: ATI Technologies Inc Radeon X1650 Series (Secondary)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E PCI Express Fast Ethernet controller (rev 01)
03:06.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 61)
03:06.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 61)
03:06.2 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 63)


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 22 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译