免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 6331 | 回复: 21
打印 上一主题 下一主题

编译内核后kernel panic,应该是sata驱动没有加载上,如何给kernel加驱动? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-05 10:06 |只看该作者 |倒序浏览
如题,在编译内核安装并用新的内核重启后,就挂了,应该是驱动没有加载,我现在不知道如何把一个驱动加入内核呢?如果该内核版本没有这个sata driver的驱动。

我的机器是dell的D520,sata控制器是intel的ich7,看到内核应该是有这个驱动的啊,而且我已经打了勾,结果就是不行。不知道为什么。我编译的内核版本是2.6.28.

所以,想了解一下,如果内核没有内置驱动,我是否可以patch他一下,具体该怎么弄呢?看了精华区,没有相关的文章。

谢谢。

论坛徽章:
5
2 [报告]
发表于 2009-06-05 10:17 |只看该作者
2.6的后期版本, 都有sata驱动的. 不清楚是否支持ich7.

怎么patch:
1. 先下载patch
2. 把patch装到内核中
3. 编译内核和驱动

论坛徽章:
0
3 [报告]
发表于 2009-06-05 10:21 |只看该作者
感谢yidou, patch的打法我知道,问题是没有官方的patch,我就想加载这个驱动,比如这个intel的ich7,那么这个驱动的形式是源码或者其他,我怎么弄呢?
再次感谢。

论坛徽章:
0
4 [报告]
发表于 2009-06-05 10:24 |只看该作者
另外,附上我现在工作正常的内核信息:
uname -a

2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:27:17 EDT 2006 i686 i686 i386 GNU/Linux

lspci -vv

00:1f.2 IDE interface: Intel Corporation 82801GB/GR/GH (ICH7 Family) Serial ATA Storage Controller IDE (rev 01) (prog-if 8f [Master SecP SecO PriP PriO])
        Subsystem: Dell: Unknown device 01ad
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 0
        Interrupt: pin C routed to IRQ 217
        Region 0: I/O ports at fe00
        Region 1: I/O ports at fe10
        Region 2: I/O ports at fe20
        Region 3: I/O ports at fe30
        Region 4: I/O ports at fea0
        Capabilities: [70] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-


lsmod

Module                  Size  Used by
md5                     8001  1
ipv6                  241761  14
parport_pc             27905  1
lp                     15405  0
parport                37641  2 parport_pc,lp
autofs4                22725  0
sunrpc                143397  1
joydev                 14209  0
button                 10449  0
battery                12869  0
ac                      8773  0
uhci_hcd               32729  0
ehci_hcd               32069  0
hw_random               9557  0
snd_intel8x0           34921  0
snd_ac97_codec         65169  1 snd_intel8x0
snd_pcm_oss            52345  0
snd_mixer_oss          21825  1 snd_pcm_oss
snd_pcm                91973  2 snd_intel8x0,snd_pcm_oss
snd_timer              27973  1 snd_pcm
snd_page_alloc         13641  2 snd_intel8x0,snd_pcm
snd_mpu401_uart        11329  1 snd_intel8x0
snd_rawmidi            27749  1 snd_mpu401_uart
snd_seq_device         11849  1 snd_rawmidi
snd                    56997  9 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer,snd_mpu401_uart,snd_rawmidi,snd_seq_device
soundcore              12961  1 snd
tg3                   100933  0
8139too                27457  0
mii                     9153  1 8139too
dm_snapshot            21093  0
dm_zero                 6337  0
dm_mirror              31645  0
ext3                  118729  2
jbd                    59609  1 ext3
dm_mod                 60357  8 dm_snapshot,dm_zero,dm_mirror
ata_piix               15557  2
libata                 67613  1 ata_piix
sd_mod                 20545  3
scsi_mod              117709  2 libata,sd_mod

[ 本帖最后由 alexann 于 2009-6-5 10:26 编辑 ]

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
5 [报告]
发表于 2009-06-05 10:24 |只看该作者
编译内核选项的时候sata选项选择正确了?

论坛徽章:
5
6 [报告]
发表于 2009-06-05 10:27 |只看该作者

回复 #3 alexann 的帖子

如果是厂商的驱动, 非内核自带. 一般会有README之类的文档, 你先看看.

常见的过程是:
1. 编译驱动
2. 加载驱动. 加载的时候, sata会依赖scsi mod, 如果没有先加载scsi mod, 会报错. Unknown symbol ...之类的.

论坛徽章:
5
7 [报告]
发表于 2009-06-05 10:28 |只看该作者
LZ:
ata_piix               15557  2  就是SATA驱动, 不清楚是否for ich7

论坛徽章:
0
8 [报告]
发表于 2009-06-05 10:36 |只看该作者
对了,在make modules_insall的时候,有这样一个提示:
WARNING: No module ata_piix found for kernel 2.6.28, continuing anyway

这个东西我再内核选项里面找不到。。
难道2.6.28不支持sata??问题是kernel的选项里面有很多serial ata的设备驱动选项啊。。。很困惑。。

论坛徽章:
5
9 [报告]
发表于 2009-06-05 10:39 |只看该作者

回复 #8 alexann 的帖子

从你的描述, 2.6.28应该支持sata, 只是没有ata_piix的驱动. 你看看对应的目录, ata_piix.c在不在

论坛徽章:
0
10 [报告]
发表于 2009-06-05 10:50 |只看该作者
那东西有。。在drivers/ata/目录下面。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP