On Thu, 24 Jul 2003, Duclos Andre wrote:
> Test this patch for SATA 376 with caution please.
I tried a similar patch first on my Asus A7V8X w/PDC376 and it didn't
work, you didn't test it? This 20376 identifies itself as a RAID
controller instead of a MISC storage device, and the driver checks on
this so I needed to change a bit more.
With attached patch the driver works. I haven't done real stress tests,
but so far I haven't had any problems. Inserting the pdc-ultra module
makes the system unresponsive for a few seconds, but it doesn't seem to do
any harm. Only tested with a PATA disk.
sd_mod must be inserted to use the disk(s)
Christiaan
[original quoted message]
> -----Message d'origine-----
> De : Svetoslav Slavtchev [mailto:[EMAIL PROTECTED]
> Envoy� : mercredi 23 juillet 2003 09:42
> � : [EMAIL PROTECTED]
> Objet : Re: [Cooker] Re: [CHRPM] kernel-2.4.21.5mdk-1-1mdk
<snip>
> me again :)
> (may be for 6mdk)
>
> has anyone seen this thread on lkml:
> "Promise SATA driver GPL'd"
> <snip>
> So <drum-roll, trumpets> here it is: the Promise SATA driver for
> the PDC20318, PDC20375, PDC20378, and PDC20618. This driver is
> released as-is. It is useful for the
> Promise SATA150 TX4
> Promise SATA150 TX2plus
> Promise SATA 378
> Promise Ultra 618
>
> cards. As a temporary download location, the GPL'd driver can be
> obtained from http://www.busybox.net/pdc-ultra-1.00.0.10.tgz
> <snip>
> http://marc.theaimsgroup.com/?l=linux-kernel&m=105889969926179&w=2
> --
>
diff -ru pdc-ultra/pdc618_mod.c pdc-ultra-20376/pdc618_mod.c
--- pdc-ultra/pdc618_mod.c 2003-06-08 18:10:00.000000000 +0200
+++ pdc-ultra-20376/pdc618_mod.c 2003-07-24 17:20:22.000000000 +0200
@@ -469,8 +469,10 @@
}
#endif
- /* class code is 0x0180 or PDC378*/
- if(pdc618_pci_dev->class>>8 == PCI_CLASS_STORAGE_OTHER ||
PDC618_DEVID[class] == DID378) {
+ /* class code is 0x0180 or 0x0104 or it's a PDC378*/
+ if( pdc618_pci_dev->class>>8 ==
PCI_CLASS_STORAGE_OTHER ||
+ pdc618_pci_dev->class>>8 ==
PCI_CLASS_STORAGE_RAID ||
+ PDC618_DEVID[class] == DID378) {
pdc618_adapter_t *pada;
/* pdc378 class:0x0104 */
diff -ru pdc-ultra/pdc618_mod.h pdc-ultra-20376/pdc618_mod.h
--- pdc-ultra/pdc618_mod.h 2003-06-08 18:10:00.000000000 +0200
+++ pdc-ultra-20376/pdc618_mod.h 2003-07-24 17:27:52.000000000 +0200
@@ -25,6 +25,7 @@
#define DID318 0x3318
#define DID375 0x3375
+#define DID376 0x3376
#define DID378 0x3373
#define DID618 0x6626
@@ -48,7 +49,7 @@
#define STIO_READ_FLASHMEM 0x00004006
#define STIO_WRITE_FLASHMEM 0x00004007
-unsigned short PDC618_DEVID[5] = { DID618, DID318, DID375, DID378, 0};
+unsigned short PDC618_DEVID[6] = { DID618, DID318, DID375, DID376, DID378, 0};
typedef struct _pdc618_adapter pdc618_adapter_t;
typedef struct _pdc618_channel pdc618_channel_t;
@@ -122,7 +123,8 @@
ULTRA618, /* ULTRA 618 */
SATA375, /* SATA150 TX2plus */
SATA318, /* SATA150 TX4 */
- SATA378 /* SATA 378 */
+ SATA378, /* SATA 378 */
+ SATA376 /* SATA 376 */
} hardwaretype;
typedef struct _tag_adaptercount {