Saturday, November 05, 2005

SiS IDE Controller 5513 [sis5513] patch, try 2

Supported (tested) kernels:
2.6.12-1.1381_FC3

Problem:
On original Fedora kernel there is no support to DMA on the SiS IDE controller model 5513.
Go figure why on the file [sis5513] there is no string to address DMA setup to the "SiS5513" chipset, maybe sooner support and no rework after that.

Approach:
Modify the module source to recognise the controller hardware.
In this case the south bridge controller: SiS965.

Remarks:
RPM kernel spec file part will be covered on the kernel specific part.

1. Get and install the kernel source that applies:

2. Patch to the file [sis5513.c]:

### /usr/src/redhat/SOURCES/linux-2.6.12-sis5513.patch ###
cat > /usr/src/redhat/SOURCES/linux-2.6.12-sis5513.patch << __END__
--- a/drivers/ide/pci/sis5513.c 2005-11-05 19:26:57.000000000 +0100
+++ b/drivers/ide/pci/sis5513.c 2005-11-05 19:31:10.000000000 +0100
@@ -87,6 +87,8 @@
u8 chipset_family;
u8 flags;
} SiSHostChipInfo[] = {
+ { "SiS695", PCI_DEVICE_ID_SI_965, ATA_133 },
+
{ "SiS745", PCI_DEVICE_ID_SI_745, ATA_100 },
{ "SiS735", PCI_DEVICE_ID_SI_735, ATA_100 },
{ "SiS733", PCI_DEVICE_ID_SI_733, ATA_100 },
--- a/include/linux/pci_ids.h 2005-11-05 19:38:13.000000000 +0100
+++ b/include/linux/pci_ids.h 2005-11-05 19:39:18.000000000 +0100
@@ -661,6 +661,7 @@
#define PCI_DEVICE_ID_SI_961 0x0961
#define PCI_DEVICE_ID_SI_962 0x0962
#define PCI_DEVICE_ID_SI_963 0x0963
+#define PCI_DEVICE_ID_SI_965 0x0965
#define PCI_DEVICE_ID_SI_5107 0x5107
#define PCI_DEVICE_ID_SI_5300 0x5300
#define PCI_DEVICE_ID_SI_5511 0x5511
__END__
### /usr/src/redhat/SOURCES/linux-2.6.12-sis5513.patch ###

Please always address to my hardware, os and kernel patching general procedures before posting a question.

No comments: