Subject: Re: Nvidia nForce2 / ASUS A7N8X deluxe
To: Jason R Thorpe <thorpej@wasabisystems.com>
From: Gary Duzan <gary@duzan.org>
List: current-users
Date: 01/19/2003 17:33:46
------- =_aaaaaaaaaa0
Content-Type: text/plain; charset="us-ascii"
Content-ID: <409.1043015622.1@capo.xnet.duzan.org>
In Message <200301171537.h0HFbDC23993@wheel.duzan.org> ,
Gary Duzan <gary@duzan.org> wrote:
=>In Message <20030117152553.GB2380@yeah-baby.shagadelic.org> ,
=> Jason R Thorpe <thorpej@wasabisystems.com> wrote:
=>
=>=>On Fri, Jan 17, 2003 at 05:41:08AM -0500, Gary Duzan wrote:
=>=>
=>=> > pciide* at pci? dev ? function ? flags 0x0001
=>=> >
=>=> > made it much happier:
=>=> >
=>=> > pciide0 at pci0 dev 9 function 0: Nvidia Corporation product 0x0065 (rev. 0xa2)
=>=> > pciide0: bus-master DMA support present, used without full driver support
=>=> > pciide0: primary channel configured to compatibility mode
=>=> > pciide0: primary channel interrupting at irq 14
=>=> >
=>=> > Before this change, doing a CVS update would take up to 50% of the
=>=> > CPU (as reported by "systat vm") in interrupts, and this with an
=>=> > Athlon XP 2100+. Afterwards, it was closer to 1%, and I have
=>=> > noticed no stability problems.
=>=>
=>=>Hm. I wonder if it's simply compatible with the Intel PCI IDE (it would
=>=>not surprise me, since the audio is compatible with the Intel AC97).
=>
=> I expect it could very well be compatible with one of the existing
=>IDE controllers, and I considered guessing at them, but put that
=>on hold after I spotted the "flags" option. I may poke around with
=>it a bit over the weekend.
No joy, at least not yet. I tried the PIIX, CMD680, and PDC chip
maps, but each failed in some way or another. I did go ahead and add
pcidevs entries for all the nForce2 MCP-T devices I could sort out
and added a stub vendor/product entry to pciide.c, which are attached,
along with the resulting dmesg output.
Gary Duzan
p.s. I might try configuring the Nvidia ethernet MAC using an existing
ethernet driver to see what I get, but I'm not very hopeful.
------- =_aaaaaaaaaa0
Content-Type: text/plain; name="nForce2-patch"; charset="us-ascii"
Content-ID: <409.1043015622.2@capo.xnet.duzan.org>
Content-Description: nForce2-patch
Index: pcidevs
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pcidevs,v
retrieving revision 1.497
diff -u -r1.497 pcidevs
--- pcidevs 2003/01/17 00:17:35 1.497
+++ pcidevs 2003/01/19 22:14:59
@@ -1789,8 +1789,16 @@
product NVIDIA GEFORCE2DDR 0x0151 GeForce2 GTS (DDR)
product NVIDIA GEFORCE2BR 0x0152 GeForce2 GTS
product NVIDIA QUADRO2 0x0153 Quadro2
-product NVIDIA NFORCE_MCP_AC 0x01b1 nForce MCP AC-97
-product NVIDIA NFORCE2_MCPT_AC 0x006a nForce2 MCP-T AC-97
+product NVIDIA NFORCE_MCP_AC 0x01b1 nForce MCP AC-97
+product NVIDIA NFORCE2_MCPT_ISA 0x0060 nForce2 MCP-T PCI to ISA Bridge
+product NVIDIA NFORCE2_MCPT_SMB 0x0064 nForce2 MCP-T SMBus
+product NVIDIA NFORCE2_MCPT_IDE 0x0065 nForce2 MCP-T IDE Controller
+product NVIDIA NFORCE2_MCPT_ETHER 0x0066 nForce2 MCP-T Ethernet
+product NVIDIA NFORCE2_MCPT_USB 0x0067 nForce2 MCP-T USB Host Adapter
+product NVIDIA NFORCE2_MCPT_AC 0x006a nForce2 MCP-T AC-97
+product NVIDIA NFORCE2_MCPT_PCI 0x006c nForce2 MCP-T PCI to PCI Bridge
+product NVIDIA NFORCE2_MCPT_FW 0x006e nForce2 MCP-T Firewire
+product NVIDIA NFORCE2_MCPT_AGP 0x01e8 nForce2 MCP-T PCI to AGP Bridge
/* Nvidia Corporation & SGS Thomson Microelectric */
product NVIDIA_SGS RIVA128 0x0018 Riva 128
Index: pciide.c
===================================================================
RCS file: /cvsroot/src/sys/dev/pci/pciide.c,v
retrieving revision 1.176
diff -u -r1.176 pciide.c
--- pciide.c 2002/12/26 20:54:03 1.176
+++ pciide.c 2003/01/19 22:15:05
@@ -604,6 +604,18 @@
}
};
+const struct pciide_product_desc pciide_nvidia_products[] = {
+ { PCI_PRODUCT_NVIDIA_NFORCE2_MCPT_IDE,
+ 0,
+ "Nvidia nForce2 MCP-T Ultra ATA/133 controller",
+ default_chip_map,
+ },
+ { 0,
+ 0,
+ NULL,
+ }
+};
+
struct pciide_vendor_desc {
u_int32_t ide_vendor;
const struct pciide_product_desc *ide_products;
@@ -624,6 +636,7 @@
{ PCI_VENDOR_SERVERWORKS, pciide_serverworks_products },
{ PCI_VENDOR_SYMPHONY, pciide_symphony_products },
{ PCI_VENDOR_WINBOND, pciide_winbond_products },
+ { PCI_VENDOR_NVIDIA, pciide_nvidia_products },
{ 0, NULL }
};
------- =_aaaaaaaaaa0
Content-Type: text/plain; name="nForce2-dmesg"; charset="us-ascii"
Content-ID: <409.1043015622.3@capo.xnet.duzan.org>
Content-Description: nForce2-dmesg
NetBSD 1.6L (CAPO) #6: Sun Jan 19 17:05:51 EST 2003
gary@capo:/usr2/current/i386/obj/usr2/current/src/sys/arch/i386/compile/CAPO
total memory = 511 MB
avail memory = 369 MB
using 6144 buffers containing 127 MB of memory
BIOS32 rev. 0 found at 0xfb390
mainbus0 (root)
cpu0 at mainbus0: (uniprocessor)
cpu0: AMD Athlon XP 2100+ (686-class), 1737.36 MHz, id 0x662
cpu0: features c3c3fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR>
cpu0: features c3c3fbff<PGE,MCA,CMOV,PAT,PSE36,MMXX,MMX>
cpu0: features c3c3fbff<FXSR,SSE,3DNOW2,3DNOW>
cpu0: I-cache 64 KB 64b/line 2-way, D-cache 64 KB 64b/line 2-way
cpu0: L2 cache 256 KB 64b/line 16-way
cpu0: ITLB 16 4 KB entries fully associative, 8 4 MB entries fully associative
cpu0: DTLB 32 4 KB entries fully associative, 8 4 MB entries 4-way
cpu0: 8 page colors
acpi0 at mainbus0
acpi0: X/RSDT: OemId <Nvidia,AWRDACPI,42302e31>, AslId <AWRD,00000000>
acpi0: SCI interrupting at int 9
acpi0: fixed-feature power button present
ACPI Object Type 'Processor' (0x0c) at acpi0 not configured
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not configured
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not configured
acpibut0 at acpi0 (PNP0C0C): ACPI Power Button
PNP0C01 [System Board] at acpi0 not configured
PNP0A03 [PCI Bus] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C0F [PCI interrupt link device] at acpi0 not configured
PNP0C02 [Plug and Play motherboard register resources] at acpi0 not configured
PNP0000 [AT Interrupt Controller] at acpi0 not configured
PNP0200 [AT DMA Controller] at acpi0 not configured
PNP0100 [AT Timer] at acpi0 not configured
PNP0B00 [AT Real-Time Clock] at acpi0 not configured
PNP0800 [AT-style speaker sound] at acpi0 not configured
npx0 at acpi0 (PNP0C04)
npx0: io 0xf0-0xff irq 13
npx0: using exception 16
fdc0 at acpi0 (PNP0700)
fdc0: io 0x3f0-0x3f5,0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
com0 at acpi0 (PNP0501-1)
com0: io 0x3f8-0x3ff irq 4
com0: ns16550a, working fifo
pckbc0 at acpi0 (PNP0303): kbd port
pckbc0: io 0x60,0x64 irq 1
PNPB006 [MPU401 compatible ] at acpi0 not configured
PNP0C0B [ACPI Fan] at acpi0 not configured
acpitz0 at acpi0 (): ACPI Thermal Zone
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0
pchb0: Nvidia Corporation product 0x01e0 (rev. 0xa2)
agp at pchb0 not configured
Nvidia Corporation product 0x01eb (RAM memory, revision 0xa2) at pci0 dev 0 function 1 not configured
Nvidia Corporation product 0x01ee (RAM memory, revision 0xa2) at pci0 dev 0 function 2 not configured
Nvidia Corporation product 0x01ed (RAM memory, revision 0xa2) at pci0 dev 0 function 3 not configured
Nvidia Corporation product 0x01ec (RAM memory, revision 0xa2) at pci0 dev 0 function 4 not configured
Nvidia Corporation product 0x01ef (RAM memory, revision 0xa2) at pci0 dev 0 function 5 not configured
pcib0 at pci0 dev 1 function 0
pcib0: Nvidia Corporation nForce2 MCP-T PCI to ISA Bridge (rev. 0xa3)
Nvidia Corporation nForce2 MCP-T SMBus (SMBus serial bus, revision 0xa2) at pci0 dev 1 function 1 not configured
ohci0 at pci0 dev 2 function 0: Nvidia Corporation nForce2 MCP-T USB Host Adapter (rev. 0xa3)
ohci0: interrupting at irq 7
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
uhub0 at usb0
uhub0: Nvidia Corporat OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 3 ports with 3 removable, self powered
ohci1 at pci0 dev 2 function 1: Nvidia Corporation nForce2 MCP-T USB Host Adapter (rev. 0xa3)
ohci1: interrupting at irq 5
ohci1: OHCI version 1.0, legacy support
usb1 at ohci1: USB revision 1.0
uhub1 at usb1
uhub1: Nvidia Corporat OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 3 ports with 3 removable, self powered
Nvidia Corporation nForce2 MCP-T Ethernet (ethernet network, revision 0xa1) at pci0 dev 4 function 0 not configured
Nvidia Corporation product 0x006b (audio multimedia, revision 0xa2) at pci0 dev 5 function 0 not configured
auich0 at pci0 dev 6 function 0: nForce2 MCP-T AC-97 Audio
auich0: interrupting at irq 3
auich0: Avance Logic ALC650 codec; 20 bit DAC, 18 bit ADC, Realtek 3D
auich0: variable rate audio, double rate output, S/PDIF, center DAC, surround DAC, LFE DAC
audio0 at auich0: full duplex, mmap, independent
ppb0 at pci0 dev 8 function 0: Nvidia Corporation nForce2 MCP-T PCI to PCI Bridge (rev. 0xa3)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
rtk0 at pci1 dev 8 function 0: D-Link Systems DFE 530TX+
rtk0: interrupting at irq 11
rtk0: Ethernet address 00:50:ba:60:0e:19
ukphy0 at rtk0 phy 7: Generic IEEE 802.3u media interface
ukphy0: OUI 0x000000, model 0x0000, rev. 0
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pciide0 at pci0 dev 9 function 0: Nvidia nForce2 MCP-T Ultra ATA/133 controller (rev. 0xa2)
pciide0: bus-master DMA support present, used without full driver support
pciide0: primary channel configured to compatibility mode
pciide0: primary channel interrupting at irq 14
wd0 at pciide0 channel 0 drive 0: <ST320423A>
wd0: drive supports 32-sector PIO transfers, LBA addressing
wd0: 19536 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 40011300 sectors
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66)
pciide0: secondary channel configured to compatibility mode
pciide0: secondary channel interrupting at irq 15
atapibus0 at pciide0 channel 1: 2 targets
cd0 at atapibus0 drive 0: <SONY CD-ROM CDU4821, MT1198-B Firmware, S0.Q> cdrom removable
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wdc_atapi_get_params: drive 1 not present
wd1 at pciide0 channel 1 drive 1: <MAXTOR 6L080L4>
wd1: drive supports 16-sector PIO transfers, LBA addressing
wd1: 76345 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 156355584 sectors
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
pciide0:0:0: using DMA data transfers
pciide0:1:0: using DMA data transfers
pciide0:1:1: using DMA data transfers
fwohci0 at pci0 dev 13 function 0: Nvidia Corporation nForce2 MCP-T Firewire (rev. 0xa3)
fwohci0: interrupting at irq 11
fwohci0: OHCI 1.1, 00:30:04:00:01:02:90:a6, 400Mb/s, 2048 max_rec, 4 ir_ctx, 4 it_ctx
ppb1 at pci0 dev 30 function 0: Nvidia Corporation nForce2 MCP-T PCI to AGP Bridge (rev. 0xa2)
pci2 at ppb1 bus 2
pci2: i/o space, memory space enabled
vga0 at pci2 dev 0 function 0: ATI Technologies Radeon 7000/VE (rev. 0x00)
wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
isa0 at pcib0
pcppi0 at isa0 port 0x61
sysbeep0 at pcppi0
auich0: measured ac97 link rate at 42471 Hz, will use 48000 Hz
fw0 at fwohci0: 00:30:04:00:01:02:90:a6:0a:02:ff:ff:f0:01:00:00
uhub0: device problem, disabling port 1
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
IP Filter: v3.4.29 initialized. Default = pass all, Logging = enabled
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsdisplay0: screen 5 added (80x25, vt100 emulation)
wsdisplay0: screen 6 added (80x25, vt100 emulation)
wsdisplay0: screen 7 added (80x25, vt100 emulation)
------- =_aaaaaaaaaa0--