amd64/110449: ata: new pci ids for nvidia mcp61/"430 mcp" chipset
Andriy Gapon
avg at icyb.net.ua
Sat Mar 17 16:50:16 UTC 2007
>Number: 110449
>Category: amd64
>Synopsis: ata: new pci ids for nvidia mcp61/"430 mcp" chipset
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-amd64
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sat Mar 17 16:50:15 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Andriy Gapon
>Release: FreeBSD 6.2-RELEASE-p2 amd64
>Organization:
>Environment:
System: FreeBSD FreeBSD 6.2-RELEASE-p2 amd64
Hardware:
Motherboard is Asus M2N
Chipset is "nForce 430 MCP" which seems to mean (or be equivalent to) MCP61
ATA controllers
atapci0 at pci0:6:0: class=0x01018a card=0x82341043 chip=0x03ec10de rev=0xa2 hdr=0x00
vendor = 'NVIDIA Corporation'
class = mass storage
subclass = ATA
atapci1 at pci0:8:0: class=0x010185 card=0x82341043 chip=0x03f610de rev=0xa2 hdr=0x00
vendor = 'NVIDIA Corporation'
class = mass storage
subclass = ATA
atapci2 at pci0:8:1: class=0x010185 card=0x82341043 chip=0x03f610de rev=0xa2 hdr=0x00
vendor = 'NVIDIA Corporation'
class = mass storage
subclass = ATA
>Description:
None of the ATA devices (03ec and 03f6) is recognized specificly, so all of them are being
handled in a generic way by our ATA driver. All disks show up as UDMA33.
After applying the attached patch I get the following (from verbose dmesg):
Mar 14 18:54:19 rein kernel: atapci0: <nVidia nForce MCP61 UDMA133 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xffa0-0xffaf at devi
ce 6.0 on pci0
Mar 14 18:54:19 rein kernel: atapci1: <nVidia nForce MCP61 SATA300 controller> port 0xe400-0xe407,0xe080-0xe083,0xe000-0xe007,0xdc00-0xdc03,0
xd880-0xd88f mem 0xddefc000-0xddefcfff irq 21 at device 8.0 on pci0
Mar 14 18:54:19 rein kernel: atapci2: <nVidia nForce MCP61 SATA300 controller> port 0xd800-0xd807,0xd480-0xd483,0xd400-0xd407,0xd080-0xd083,0
xd000-0xd00f mem 0xddef3000-0xddef3fff irq 22 at device 8.1 on pci0
Mar 14 18:54:19 rein kernel: ata2-master: pio=PIO4 wdma=WDMA2 udma=UDMA133 cable=40 wire
Mar 14 18:54:19 rein kernel: ad4: 286168MB <WDC WD3000JS-19PDB0 21.00M21> at ata2-master SATA300
Mar 14 18:54:19 rein kernel: ad4: 586072368 sectors [581421C/16H/63S] 16 sectors/interrupt 1 depth queue
The system is stable and performs up to the specs.
I've also noticed a post from couple of months ago with an identical patch:
http://lists.freebsd.org/pipermail/freebsd-current/2007-January/068852.html
>How-To-Repeat:
>Fix:
--- ata.diff begins here ---
--- sys/dev/ata/ata-chipset.c Mon Oct 9 19:01:35 2006
+++ sys/dev/ata/ata-chipset.c Mon Mar 12 17:09:38 2007
@@ -2828,6 +2828,8 @@ ata_nvidia_ident(device_t dev)
{ ATA_NFORCE_MCP55, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce MCP55" },
{ ATA_NFORCE_MCP55_S1, 0, 0, NV4|NVQ, ATA_SA300, "nForce MCP55" },
{ ATA_NFORCE_MCP55_S2, 0, 0, NV4|NVQ, ATA_SA300, "nForce MCP55" },
+ { ATA_NFORCE_MCP61, 0, AMDNVIDIA, NVIDIA, ATA_UDMA6, "nForce MCP61" },
+ { ATA_NFORCE_MCP61_S2, 0, 0, NV4|NVQ, ATA_SA300, "nForce MCP61" },
{ 0, 0, 0, 0, 0, 0}} ;
char buffer[64] ;
--- sys/dev/ata/ata-pci.h Sat Sep 30 17:51:49 2006
+++ sys/dev/ata/ata-pci.h Mon Mar 12 17:09:38 2007
@@ -216,6 +216,8 @@ struct ata_connect_task {
#define ATA_NFORCE_MCP55 0x036e10de
#define ATA_NFORCE_MCP55_S1 0x037e10de
#define ATA_NFORCE_MCP55_S2 0x037f10de
+#define ATA_NFORCE_MCP61 0x03ec10de
+#define ATA_NFORCE_MCP61_S2 0x03f610de
#define ATA_PROMISE_ID 0x105a
#define ATA_PDC20246 0x4d33105a
--- ata.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-amd64
mailing list