Subject: Re: amr and Dell PE 2600
To: Mark Davies <mark@mcs.vuw.ac.nz>
From: Tracy Di Marco White <netbsd@gendalia.org>
List: current-users
Date: 06/09/2003 21:19:40
Mark Davies <mark@mcs.vuw.ac.nz> wrote:
>	From:  Tracy Di Marco White <netbsd@gendalia.org>
>	Date:  Mon, 09 Jun 2003 20:45:29 -0500
>
>> I have a Dell PowerEdge 2600, which is available with several different
>> RAID controllers.  I thought the changes necessary for my PERC 4/di were
>> added to current already:
>> # dmesg|grep amr
>> amr0 at pci8 dev 8 function 0: AMI RAID <PERC 4/Di>
>> amr0: interrupting at apic 6 int 0 (irq 11)
>> amr0: firmware 2.24, BIOS 1.03, 128MB RAM
>> ld0 at amr0 unit 0: RAID 5, optimal
>
>> How current are you working with?
>
>Just a little over a week old.  Version 1.11 of amr.c (which is the latest) 
>and before I added the DELL vendor and product ID's to the table it wasn't 
>picking it up as an amr at all.

The tree I'm working with is older, so you'll want to check over my diffs,
as they are diffed against a (now) current tree.  Credit to Andrew Doran
for these.

-Tracy

Index: amr.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/amr.c,v
retrieving revision 1.11
diff -r1.11 amr.c
135c135,136
< 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_AMI_MEGARAID3, AT_QUARTZ | AT_SIG }
---
> 	{ PCI_VENDOR_INTEL, PCI_PRODUCT_AMI_MEGARAID3, AT_QUARTZ | AT_SIG },
> 	{ PCI_VENDOR_DELL,   PCI_PRODUCT_DELL_PERC_4DI, AT_QUARTZ }
477c478
< 	kthread_create(amr_thread_create, amr);
---
> 	/*kthread_create(amr_thread_create, amr);*/
1173c1174
< 	if ((v & (AMR_QIDB_SUBMIT | AMR_QIDB_ACK)) != 0) {
---
> 	if ((v & AMR_QIDB_SUBMIT) != 0) {
1189c1190,1191
< 	amr_outl(amr, AMR_QREG_IDB, amr->amr_mbox_paddr | AMR_QIDB_SUBMIT);
---
> 	amr_outl(amr, AMR_QREG_IDB,
> 	    (amr->amr_mbox_paddr + 16) | AMR_QIDB_SUBMIT);
1262c1264
< 		;
---
> 		DELAY(10);
Index: pcidevs
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs,v
retrieving revision 1.530
diff -r1.530 pcidevs
1195a1196
> product DELL PERC_4DI		0x000e	PERC 4/Di
Index: pcidevs.h
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs.h,v
retrieving revision 1.531
diff -r1.531 pcidevs.h
1c1
< /*	$NetBSD: pcidevs.h,v 1.531 2003/04/28 08:33:48 haya Exp $	*/
---
> /*	$NetBSD$	*/
1202a1203
> #define	PCI_PRODUCT_DELL_PERC_4DI	0x000e		/* PERC 4/Di */
Index: pcidevs_data.h
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs_data.h,v
retrieving revision 1.529
diff -r1.529 pcidevs_data.h
1c1
< /*	$NetBSD: pcidevs_data.h,v 1.529 2003/04/28 08:33:49 haya Exp $	*/
---
> /*	$NetBSD$	*/
2818a2819,2824
> 	},
> 	{
> 	    PCI_VENDOR_DELL, PCI_PRODUCT_DELL_PERC_4DI,
> 	    0,
> 	    "Dell Computer",
> 	    "PERC 4/Di",