How to manually add SATA driver manually when kernel boot?
Today I update the kernel from 2.6.8 to 2.6.24 for etch.
After I build and install the new kernel version, it show me errors :
Alert:/dev/sda1 doesn't exist .Dropping to a shell.
I search old post about this problem.
It maybe because the SATA driver was mounted as module.
So I should manually add it to some configure file so that it can work as kernel boot.
But which file should be changed >?? .config or menu.lst or fstab??
Anybody can help me ??
I think the reason is I use the old config file to configure the new kernel. So it can not find drivers for SATA.
I add libata,sata_via,ata_piix,sd_mod,scsi_mod to /etc/modules and restart.
It still has same problem.
Then I add libata,sata_via,ata_piix,sd_mod,scsi_mod to /etc/mkinitrd/modules, and do :
mkinitrd -o /boot/initrd.img.2.6.24-custom 2.6.24-custom
It show me there is no libata and sata_via,etc..
So I think I need install these modules manually.
I go to /usr/src/drivers/
I find above module's source file...
How could I compile the driver for SATA???
Don't know what I was thinking, but my original post was all wrong, so I've deleted it.
Tks for your reply,unfortunately I didn't see your post..
Now the problem is how to compile the SATA driver in the linux source file to get .ko file.
If you have some suggestions ,please tell me..
OK, I think I've got it right this time. I believe it was kernel 2.6.16 when they changed the naming convention for the SATA stuff in the .config file. So:
In 2.6.8 you will see something like this for the SATA_SIL controller:
In 2.6.24 it would need to be:
Notice that the change is that they deleted "SCSI" from the string. Change yours wherever you see "CONFIG_SCSI_SATA" to "CONFIG_SATA" and see if that fixes it for you.
NOTE: The string "CONFIG_SCSI" is valid for SCSI devices, but "CONFIG_SCSI_SATA" is not, so be careful what you change.
You will have to recompile for this to take effect.
Thanks a lot ..That's it ...
|All times are GMT -5. The time now is 11:42 PM.|