У меня есть карта контроллера Supermicro AOC-SAS2LP-MV8, которую я пытаюсь заставить работать на сервере Ubuntu 12.04 (x86_64). Карта основана на Marvell 88SE9485. До сих пор lscpi
и lshw
карту видите, но один диск, который я подключил для тестирования, не отображается.
lsmod
в списке нет подходящих модулей ядра для этой карты. Я не могу определить, откуда взялся модуль ядра. Поиск в /lib/modules
также не имеет модуля ядра.
Примечание: я стараюсь избегать повторной сборки ядра, так как оно попадет в производственную машину.
Этот патч, кажется, работает для меня в Ubuntu 13.10:
http://lists.debian.org/debian-kernel/2013/09/msg00184.html
Reported-by: Matt Taggart <taggart@debian.org>
Tested-by: Matt Taggart <taggart@debian.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
drivers/scsi/mvsas/mv_init.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/scsi/mvsas/mv_init.c b/drivers/scsi/mvsas/mv_init.c
index 7b7381d..83fa5f8 100644
--- a/drivers/scsi/mvsas/mv_init.c
+++ b/drivers/scsi/mvsas/mv_init.c
@@ -729,6 +729,15 @@ static struct pci_device_id mvs_pci_table[] = {
.class_mask = 0,
.driver_data = chip_9485,
},
+ {
+ .vendor = PCI_VENDOR_ID_MARVELL_EXT,
+ .device = 0x9485,
+ .subvendor = PCI_ANY_ID,
+ .subdevice = 0x9485,
+ .class = 0,
+ .class_mask = 0,
+ .driver_data = chip_9485,
+ },
{ PCI_VDEVICE(OCZ, 0x1021), chip_9485}, /* OCZ RevoDrive3 */
{ PCI_VDEVICE(OCZ, 0x1022), chip_9485}, /* OCZ RevoDrive3/zDriveR4 (exact model unknown) */
{ PCI_VDEVICE(OCZ, 0x1040), chip_9485}, /* OCZ RevoDrive3/zDriveR4 (exact model unknown) */
По крайней мере lshw -c storage
видит контроллер, и fdisk -l
теперь видит подключенный HDD. Я не уверен, насколько стабильно он работает. Сообщу, если у меня возникнут проблемы.