* [PATCH] Add nForce MCP61 support to i2c-nforce2
@ 2007-03-10 8:00 Petr Vandrovec
2007-03-10 19:29 ` Jean Delvare
0 siblings, 1 reply; 3+ messages in thread
From: Petr Vandrovec @ 2007-03-10 8:00 UTC (permalink / raw)
To: khali; +Cc: i2c, hfvogt, linux-kernel
Hello,
patch below adds support for nVidia's SMBus adapter present on Gateway's GT5414E
motherboard (ECS's MCP61 PM-AM). Patch is for current Linus's git tree.
Thanks,
Petr
--
Add support for MCP61's SMBus interface to i2c-nforce2. Standard NVIDIA i2c design,
so just adding new device ID is everything needed.
And move MCP55 defines in pci_ids.h around a bit so NVIDIA's section is really sorted
by device ID.
00:01.1 SMBus: nVidia Corporation MCP61 SMBus (rev a2)
Subsystem: Elitegroup Computer Systems Unknown device 2601
Flags: 66MHz, fast devsel, IRQ 10
I/O ports at fc00 [size=64]
I/O ports at 1c00 [size=64]
I/O ports at f400 [size=64]
Capabilities: [44] Power Management version 2
Signed-off-by: Petr Vandrovec <petr@vandrovec.name>
diff -uprdN linux/drivers/i2c/busses/i2c-nforce2.c linux/drivers/i2c/busses/i2c-nforce2.c
--- linux/drivers/i2c/busses/i2c-nforce2.c 2007-03-07 22:13:25.000000000 -0800
+++ linux/drivers/i2c/busses/i2c-nforce2.c 2007-03-09 23:38:47.000000000 -0800
@@ -33,6 +33,7 @@
nForce4 MCP-04 0034
nForce4 MCP51 0264
nForce4 MCP55 0368
+ nForce4 MCP61 03EB
This driver supports the 2 SMBuses that are included in the MCP of the
nForce2/3/4/5xx chipsets.
@@ -200,6 +201,7 @@ static struct pci_device_id nforce2_ids[
{ PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SMBUS) },
{ PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SMBUS) },
{ PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SMBUS) },
+ { PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SMBUS) },
{ 0 }
};
diff -uprdN linux/include/linux/pci_ids.h linux/include/linux/pci_ids.h
--- linux/include/linux/pci_ids.h 2007-03-07 22:13:27.000000000 -0800
+++ linux/include/linux/pci_ids.h 2007-03-09 23:12:22.000000000 -0800
@@ -1157,10 +1157,6 @@
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_IDE 0x0265
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA 0x0266
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA2 0x0267
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SMBUS 0x0368
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_IDE 0x036E
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA 0x037E
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA2 0x037F
#define PCI_DEVICE_ID_NVIDIA_NVENET_12 0x0268
#define PCI_DEVICE_ID_NVIDIA_NVENET_13 0x0269
#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4800 0x0280
@@ -1209,11 +1205,16 @@
#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5700_2 0x0348
#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_GO1000 0x034C
#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_1100 0x034E
+#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SMBUS 0x0368
+#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_IDE 0x036E
#define PCI_DEVICE_ID_NVIDIA_NVENET_14 0x0372
#define PCI_DEVICE_ID_NVIDIA_NVENET_15 0x0373
+#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA 0x037E
+#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA2 0x037F
#define PCI_DEVICE_ID_NVIDIA_NVENET_16 0x03E5
#define PCI_DEVICE_ID_NVIDIA_NVENET_17 0x03E6
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA 0x03E7
+#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SMBUS 0x03EB
#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_IDE 0x03EC
#define PCI_DEVICE_ID_NVIDIA_NVENET_18 0x03EE
#define PCI_DEVICE_ID_NVIDIA_NVENET_19 0x03EF
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Add nForce MCP61 support to i2c-nforce2
2007-03-10 8:00 [PATCH] Add nForce MCP61 support to i2c-nforce2 Petr Vandrovec
@ 2007-03-10 19:29 ` Jean Delvare
2007-03-12 2:08 ` Petr Vandrovec
0 siblings, 1 reply; 3+ messages in thread
From: Jean Delvare @ 2007-03-10 19:29 UTC (permalink / raw)
To: Petr Vandrovec; +Cc: i2c, Hans-Frieder Vogt, linux-kernel
Hi Petr,
On Sat, 10 Mar 2007 09:00:03 +0100, Petr Vandrovec wrote:
> Hello,
> patch below adds support for nVidia's SMBus adapter present on Gateway's GT5414E
> motherboard (ECS's MCP61 PM-AM). Patch is for current Linus's git tree.
We already have a patch doing exactly this in -mm:
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.21-rc3/2.6.21-rc3-mm2/broken-out/jdelvare-i2c-i2c-nforce2-add-mcp61-mcp65-support.patch
> 00:01.1 SMBus: nVidia Corporation MCP61 SMBus (rev a2)
> Subsystem: Elitegroup Computer Systems Unknown device 2601
> Flags: 66MHz, fast devsel, IRQ 10
> I/O ports at fc00 [size=64]
> I/O ports at 1c00 [size=64]
> I/O ports at f400 [size=64]
> Capabilities: [44] Power Management version 2
BTW, note how the MCP61 has not 2 but 3 64-byte I/O areas declared. The
previous chips used BAR 4 and 5, this new one additionally uses BAR 0.
Without documentation it's hard to be sure this is a 3rd SMBus channel,
but it sure looks so. Maybe you'll want to hack the i2c-nforce2 driver
a bit to confirm or infirm this theory.
--
Jean Delvare
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] Add nForce MCP61 support to i2c-nforce2
2007-03-10 19:29 ` Jean Delvare
@ 2007-03-12 2:08 ` Petr Vandrovec
0 siblings, 0 replies; 3+ messages in thread
From: Petr Vandrovec @ 2007-03-12 2:08 UTC (permalink / raw)
To: Jean Delvare; +Cc: i2c, Hans-Frieder Vogt, linux-kernel
Jean Delvare wrote:
> Hi Petr,
>
> On Sat, 10 Mar 2007 09:00:03 +0100, Petr Vandrovec wrote:
>> Hello,
>> patch below adds support for nVidia's SMBus adapter present on Gateway's GT5414E
>> motherboard (ECS's MCP61 PM-AM). Patch is for current Linus's git tree.
>
> We already have a patch doing exactly this in -mm:
> http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.21-rc3/2.6.21-rc3-mm2/broken-out/jdelvare-i2c-i2c-nforce2-add-mcp61-mcp65-support.patch
Thanks.
>> 00:01.1 SMBus: nVidia Corporation MCP61 SMBus (rev a2)
>> Subsystem: Elitegroup Computer Systems Unknown device 2601
>> Flags: 66MHz, fast devsel, IRQ 10
>> I/O ports at fc00 [size=64]
>> I/O ports at 1c00 [size=64]
>> I/O ports at f400 [size=64]
>> Capabilities: [44] Power Management version 2
>
> BTW, note how the MCP61 has not 2 but 3 64-byte I/O areas declared. The
> previous chips used BAR 4 and 5, this new one additionally uses BAR 0.
> Without documentation it's hard to be sure this is a 3rd SMBus channel,
> but it sure looks so. Maybe you'll want to hack the i2c-nforce2 driver
> a bit to confirm or infirm this theory.
I had same idea as you have, so I tried to modify driver to use BAR0 as
well, and (1) i2cdump then said that nobody is there and (2) dump of
range fc00 was quite different from range 1c00 and f400.
So for my hardware I'm sure that BAR0 is of no use for me - if it is 3rd
channel then either it uses different interface from nforce2, or nothing
is connected to it.
Petr
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-03-12 2:08 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-10 8:00 [PATCH] Add nForce MCP61 support to i2c-nforce2 Petr Vandrovec
2007-03-10 19:29 ` Jean Delvare
2007-03-12 2:08 ` Petr Vandrovec
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox