* [BK PATCH] PCI update for 2.6.3
@ 2004-02-20 19:04 Greg KH
2004-02-20 19:06 ` [PATCH] " Greg KH
0 siblings, 1 reply; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:04 UTC (permalink / raw)
To: torvalds, akpm; +Cc: linux-kernel, pcihpd-discuss
Hi,
Here are some PCI and PCI hotplug patches for 2.6.3.
The majority of these changes are 3 new pci hotplug drivers:
- ppc64 dynamic partition driver
- PCI Express hotplug driver
- SHPC hotplug driver (the "standard" pci hotplug driver.)
Should work just fine on most x86-64 boxes too.
There are some other minor bug fixes in here, and the moving of the
CONFIG_HOTPLUG declaration so that all archs can now use it.
Please pull from:
bk://kernel.bkbits.net/gregkh/linux/pci-2.6
thanks,
greg k-h
p.s. I'll send these as patches in response to this email to lkml for
those who want to see them.
Documentation/MSI-HOWTO.txt | 19
arch/alpha/Kconfig | 18
arch/arm/Kconfig | 36
arch/arm26/Kconfig | 18
arch/i386/Kconfig | 36
arch/ia64/Kconfig | 36
arch/m68knommu/Kconfig | 18
arch/mips/Kconfig | 18
arch/mips/pci/pci-cobalt.c | 2
arch/ppc/Kconfig | 18
arch/ppc64/Kconfig | 18
arch/sh/Kconfig | 18
arch/sparc64/Kconfig | 18
arch/v850/Kconfig | 18
arch/x86_64/Kconfig | 36
drivers/net/gt96100eth.c | 6
drivers/parisc/Kconfig | 18
drivers/pci/hotplug/Kconfig | 90
drivers/pci/hotplug/Makefile | 40
drivers/pci/hotplug/cpqphp_sysfs.c | 4
drivers/pci/hotplug/pci_hotplug.h | 21
drivers/pci/hotplug/pci_hotplug_core.c | 1
drivers/pci/hotplug/pciehp.h | 386 ++++
drivers/pci/hotplug/pciehp_core.c | 707 +++++++
drivers/pci/hotplug/pciehp_ctrl.c | 2622 ++++++++++++++++++++++++++++
drivers/pci/hotplug/pciehp_hpc.c | 1436 +++++++++++++++
drivers/pci/hotplug/pciehp_pci.c | 834 +++++++++
drivers/pci/hotplug/pciehp_sysfs.c | 147 +
drivers/pci/hotplug/pciehprm.h | 53
drivers/pci/hotplug/pciehprm_acpi.c | 1689 ++++++++++++++++++
drivers/pci/hotplug/pciehprm_nonacpi.c | 498 +++++
drivers/pci/hotplug/pciehprm_nonacpi.h | 56
drivers/pci/hotplug/rpadlpar.h | 24
drivers/pci/hotplug/rpadlpar_core.c | 343 +++
drivers/pci/hotplug/rpadlpar_sysfs.c | 151 +
drivers/pci/hotplug/rpaphp.h | 101 +
drivers/pci/hotplug/rpaphp_core.c | 948 ++++++++++
drivers/pci/hotplug/rpaphp_pci.c | 75
drivers/pci/hotplug/shpchp.h | 467 +++++
drivers/pci/hotplug/shpchp_core.c | 704 +++++++
drivers/pci/hotplug/shpchp_ctrl.c | 3055 +++++++++++++++++++++++++++++++++
drivers/pci/hotplug/shpchp_hpc.c | 1608 +++++++++++++++++
drivers/pci/hotplug/shpchp_pci.c | 821 ++++++++
drivers/pci/hotplug/shpchp_sysfs.c | 147 +
drivers/pci/hotplug/shpchprm.h | 56
drivers/pci/hotplug/shpchprm_acpi.c | 1694 ++++++++++++++++++
drivers/pci/hotplug/shpchprm_legacy.c | 474 +++++
drivers/pci/hotplug/shpchprm_legacy.h | 113 +
drivers/pci/hotplug/shpchprm_nonacpi.c | 431 ++++
drivers/pci/hotplug/shpchprm_nonacpi.h | 56
drivers/pci/msi.c | 6
drivers/pci/msi.h | 4
drivers/pci/pci.c | 94 -
drivers/pci/quirks.c | 9
drivers/s390/Kconfig | 22
include/linux/pci.h | 2
include/linux/pci_ids.h | 26
init/Kconfig | 19
58 files changed, 19946 insertions(+), 439 deletions(-)
-----
<lxiep:linux.ibm.com>:
o PCI Hotplug: Add PPC64 PCI Hotplug Driver for RPA
<martine.silbermann:hp.com>:
o PCI: update MSI Documentation
<tlnguyen:snoqualmie.dp.intel.com>:
o PCI: add copyright for files msi.c and msi.h
Adam Belay:
o PCI: remove unused defines in pci.h
Bartlomiej Zolnierkiewicz:
o move CONFIG_HOTPLUG to init/Kconfig
Dely Sy:
o PCI Hotplug: Add SHPC and PCI Express hot-plug drivers
Greg Kroah-Hartman:
o PCI Hotplug: fix build warnings on 64 bit processors
o PCI: fix pci quirk for P4B533-V, fixes bug 1720
John Rose:
o PCI Hotplug : add DLPAR driver for PPC64 PCI Hotplug slots
Mark A. Greer:
o PCI: Changing 'GALILEO' to 'MARVELL'
Matthew Wilcox:
o PCI: Fix pci_bus_find_capability()
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] PCI update for 2.6.3
2004-02-20 19:04 [BK PATCH] PCI update for 2.6.3 Greg KH
@ 2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:41 ` Dave Jones
0 siblings, 2 replies; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:06 UTC (permalink / raw)
To: linux-kernel, pcihpd-discuss
ChangeSet 1.1557.58.1, 2004/02/18 11:15:56-08:00, mgreer@mvista.com
[PATCH] PCI: Changing 'GALILEO' to 'MARVELL'
I'm working with some Marvell components (formerly Galileo Technologies)
and noticed that the entries in include/linux/pci_ids.h have become
dated. I have attached a patch that changes 'GALILEO' to 'MARVELL',
adds some more devices, and updates the uses of the macros in the code.
Please note that the newer marvell parts start with 'MV' instead of 'GT'
to represent the new name. Also, I didn't change all uses of galileo to
marvell, only the macro in pci_ids.h.
arch/mips/pci/pci-cobalt.c | 2 +-
drivers/net/gt96100eth.c | 6 +++---
include/linux/pci_ids.h | 13 ++++++++-----
3 files changed, 12 insertions(+), 9 deletions(-)
diff -Nru a/arch/mips/pci/pci-cobalt.c b/arch/mips/pci/pci-cobalt.c
--- a/arch/mips/pci/pci-cobalt.c Fri Feb 20 10:45:28 2004
+++ b/arch/mips/pci/pci-cobalt.c Fri Feb 20 10:45:28 2004
@@ -258,7 +258,7 @@
qube_raq_via_bmIDE_fixup},
{PCI_FIXUP_HEADER, PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_21142,
qube_raq_tulip_fixup},
- {PCI_FIXUP_HEADER, PCI_VENDOR_ID_GALILEO, PCI_ANY_ID,
+ {PCI_FIXUP_HEADER, PCI_VENDOR_ID_MARVELL, PCI_ANY_ID,
qube_raq_galileo_fixup},
{PCI_FIXUP_HEADER, PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C860,
qube_raq_scsi_fixup},
diff -Nru a/drivers/net/gt96100eth.c b/drivers/net/gt96100eth.c
--- a/drivers/net/gt96100eth.c Fri Feb 20 10:45:28 2004
+++ b/drivers/net/gt96100eth.c Fri Feb 20 10:45:28 2004
@@ -661,9 +661,9 @@
pcibios_read_config_word(0, 0, PCI_VENDOR_ID, &vendor_id);
pcibios_read_config_word(0, 0, PCI_DEVICE_ID, &device_id);
- if (vendor_id != PCI_VENDOR_ID_GALILEO ||
- (device_id != PCI_DEVICE_ID_GALILEO_GT96100 &&
- device_id != PCI_DEVICE_ID_GALILEO_GT96100A)) {
+ if (vendor_id != PCI_VENDOR_ID_MARVELL ||
+ (device_id != PCI_DEVICE_ID_MARVELL_GT96100 &&
+ device_id != PCI_DEVICE_ID_MARVELL_GT96100A)) {
printk(KERN_ERR __FILE__ ": GT96100 not found!\n");
return -ENODEV;
}
diff -Nru a/include/linux/pci_ids.h b/include/linux/pci_ids.h
--- a/include/linux/pci_ids.h Fri Feb 20 10:45:28 2004
+++ b/include/linux/pci_ids.h Fri Feb 20 10:45:28 2004
@@ -1422,11 +1422,14 @@
#define PCI_SUBVENDOR_ID_KEYSPAN 0x11a9
#define PCI_SUBDEVICE_ID_KEYSPAN_SX2 0x5334
-#define PCI_VENDOR_ID_GALILEO 0x11ab
-#define PCI_DEVICE_ID_GALILEO_GT64011 0x4146
-#define PCI_DEVICE_ID_GALILEO_GT64111 0x4146
-#define PCI_DEVICE_ID_GALILEO_GT96100 0x9652
-#define PCI_DEVICE_ID_GALILEO_GT96100A 0x9653
+#define PCI_VENDOR_ID_MARVELL 0x11ab
+#define PCI_DEVICE_ID_MARVELL_GT64011 0x4146
+#define PCI_DEVICE_ID_MARVELL_GT64111 0x4146
+#define PCI_DEVICE_ID_MARVELL_GT64260 0x6430
+#define PCI_DEVICE_ID_MARVELL_MV64360 0x6460
+#define PCI_DEVICE_ID_MARVELL_MV64460 0x6480
+#define PCI_DEVICE_ID_MARVELL_GT96100 0x9652
+#define PCI_DEVICE_ID_MARVELL_GT96100A 0x9653
#define PCI_VENDOR_ID_LITEON 0x11ad
#define PCI_DEVICE_ID_LITEON_LNE100TX 0x0002
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:06 ` [PATCH] " Greg KH
@ 2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:19 ` Christoph Hellwig
2004-02-20 19:41 ` Dave Jones
1 sibling, 2 replies; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:06 UTC (permalink / raw)
To: linux-kernel, pcihpd-discuss
ChangeSet 1.1557.58.2, 2004/02/18 11:16:10-08:00, tlnguyen@snoqualmie.dp.intel.com
[PATCH] PCI: add copyright for files msi.c and msi.h
First I would like to say sorry for not responding immediately after receiving
your email mentioning Copyright. I have contacted Intel Legal for proper text
upon receiving this email; but have not received any response. As a result of
team discussion, the attached patch, based on Linux kernel 2.6.3-rc2, includes
the Intel Copyright for files: msi.h and msi.c.
drivers/pci/msi.c | 6 +++++-
drivers/pci/msi.h | 4 +++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff -Nru a/drivers/pci/msi.c b/drivers/pci/msi.c
--- a/drivers/pci/msi.c Fri Feb 20 10:45:21 2004
+++ b/drivers/pci/msi.c Fri Feb 20 10:45:21 2004
@@ -1,5 +1,9 @@
/*
- * linux/drivers/pci/msi.c
+ * File: msi.c
+ * Purpose: PCI Message Signaled Interrupt (MSI)
+ *
+ * Copyright (C) 2003-2004 Intel
+ * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com)
*/
#include <linux/mm.h>
diff -Nru a/drivers/pci/msi.h b/drivers/pci/msi.h
--- a/drivers/pci/msi.h Fri Feb 20 10:45:21 2004
+++ b/drivers/pci/msi.h Fri Feb 20 10:45:21 2004
@@ -1,6 +1,8 @@
/*
- * msi.h
+ * File: msi.h
*
+ * Copyright (C) 2003-2004 Intel
+ * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com)
*/
#ifndef MSI_H
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:06 ` Greg KH
@ 2004-02-20 19:06 ` Greg KH
0 siblings, 0 replies; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:06 UTC (permalink / raw)
To: linux-kernel, pcihpd-discuss
ChangeSet 1.1557.58.4, 2004/02/18 11:40:45-08:00, ambx1@neo.rr.com
[PATCH] PCI: remove unused defines in pci.h
It occured to me that we also have the following related code in pci.h:
Perhaps this should be removed as well?
include/linux/pci.h | 2 --
1 files changed, 2 deletions(-)
diff -Nru a/include/linux/pci.h b/include/linux/pci.h
--- a/include/linux/pci.h Fri Feb 20 10:45:09 2004
+++ b/include/linux/pci.h Fri Feb 20 10:45:09 2004
@@ -362,8 +362,6 @@
#define PCI_DMA_NONE 3
#define DEVICE_COUNT_COMPATIBLE 4
-#define DEVICE_COUNT_IRQ 2
-#define DEVICE_COUNT_DMA 2
#define DEVICE_COUNT_RESOURCE 12
/*
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:06 ` Greg KH
@ 2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:19 ` Christoph Hellwig
1 sibling, 1 reply; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:06 UTC (permalink / raw)
To: linux-kernel, pcihpd-discuss
ChangeSet 1.1557.58.3, 2004/02/18 11:16:24-08:00, willy@debian.org
[PATCH] PCI: Fix pci_bus_find_capability()
pci_bus_find_capability() is currently broken. It checks the wrong
device's hdr_type for being a cardbus bridge or not. This patch pulls
the guts of pci_bus_find_capability() and pci_find_capability() into a
new function __pci_bus_find_cap() and changes these two functions to
call it.
drivers/pci/pci.c | 94 +++++++++++++++++++++---------------------------------
1 files changed, 38 insertions(+), 56 deletions(-)
diff -Nru a/drivers/pci/pci.c b/drivers/pci/pci.c
--- a/drivers/pci/pci.c Fri Feb 20 10:45:15 2004
+++ b/drivers/pci/pci.c Fri Feb 20 10:45:15 2004
@@ -67,6 +67,39 @@
return max;
}
+static int __pci_bus_find_cap(struct pci_bus *bus, unsigned int devfn, u8 hdr_type, int cap)
+{
+ u16 status;
+ u8 pos, id;
+ int ttl = 48;
+
+ pci_bus_read_config_word(bus, devfn, PCI_STATUS, &status);
+ if (!(status & PCI_STATUS_CAP_LIST))
+ return 0;
+
+ switch (hdr_type) {
+ case PCI_HEADER_TYPE_NORMAL:
+ case PCI_HEADER_TYPE_BRIDGE:
+ pci_bus_read_config_byte(bus, devfn, PCI_CAPABILITY_LIST, &pos);
+ break;
+ case PCI_HEADER_TYPE_CARDBUS:
+ pci_bus_read_config_byte(bus, devfn, PCI_CB_CAPABILITY_LIST, &pos);
+ break;
+ default:
+ return 0;
+ }
+ while (ttl-- && pos >= 0x40) {
+ pos &= ~3;
+ pci_bus_read_config_byte(bus, devfn, pos + PCI_CAP_LIST_ID, &id);
+ if (id == 0xff)
+ break;
+ if (id == cap)
+ return pos;
+ pci_bus_read_config_byte(bus, devfn, pos + PCI_CAP_LIST_NEXT, &pos);
+ }
+ return 0;
+}
+
/**
* pci_find_capability - query for devices' capabilities
* @dev: PCI device to query
@@ -94,34 +127,7 @@
int
pci_find_capability(struct pci_dev *dev, int cap)
{
- u16 status;
- u8 pos, id;
- int ttl = 48;
-
- pci_read_config_word(dev, PCI_STATUS, &status);
- if (!(status & PCI_STATUS_CAP_LIST))
- return 0;
- switch (dev->hdr_type) {
- case PCI_HEADER_TYPE_NORMAL:
- case PCI_HEADER_TYPE_BRIDGE:
- pci_read_config_byte(dev, PCI_CAPABILITY_LIST, &pos);
- break;
- case PCI_HEADER_TYPE_CARDBUS:
- pci_read_config_byte(dev, PCI_CB_CAPABILITY_LIST, &pos);
- break;
- default:
- return 0;
- }
- while (ttl-- && pos >= 0x40) {
- pos &= ~3;
- pci_read_config_byte(dev, pos + PCI_CAP_LIST_ID, &id);
- if (id == 0xff)
- break;
- if (id == cap)
- return pos;
- pci_read_config_byte(dev, pos + PCI_CAP_LIST_NEXT, &pos);
- }
- return 0;
+ return __pci_bus_find_cap(dev->bus, dev->devfn, dev->hdr_type, cap);
}
/**
@@ -139,35 +145,11 @@
*/
int pci_bus_find_capability(struct pci_bus *bus, unsigned int devfn, int cap)
{
- u16 status;
- u8 pos, id;
- int ttl = 48;
- struct pci_dev *dev = bus->self;
+ u8 hdr_type;
- pci_bus_read_config_word(bus, devfn, PCI_STATUS, &status);
- if (!(status & PCI_STATUS_CAP_LIST))
- return 0;
- switch (dev->hdr_type) {
- case PCI_HEADER_TYPE_NORMAL:
- case PCI_HEADER_TYPE_BRIDGE:
- pci_bus_read_config_byte(bus, devfn, PCI_CAPABILITY_LIST, &pos);
- break;
- case PCI_HEADER_TYPE_CARDBUS:
- pci_bus_read_config_byte(bus, devfn, PCI_CB_CAPABILITY_LIST, &pos);
- break;
- default:
- return 0;
- }
- while (ttl-- && pos >= 0x40) {
- pos &= ~3;
- pci_bus_read_config_byte(bus, devfn, pos + PCI_CAP_LIST_ID, &id);
- if (id == 0xff)
- break;
- if (id == cap)
- return pos;
- pci_bus_read_config_byte(bus, devfn, pos + PCI_CAP_LIST_NEXT, &pos);
- }
- return 0;
+ pci_bus_read_config_byte(bus, devfn, PCI_HEADER_TYPE, &hdr_type);
+
+ return __pci_bus_find_cap(bus, devfn, hdr_type & 0x7f, cap);
}
/**
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
@ 2004-02-20 19:19 ` Christoph Hellwig
1 sibling, 0 replies; 8+ messages in thread
From: Christoph Hellwig @ 2004-02-20 19:19 UTC (permalink / raw)
To: Greg KH; +Cc: linux-kernel, pcihpd-discuss
On Fri, Feb 20, 2004 at 11:06:18AM -0800, Greg KH wrote:
> @@ -1,5 +1,9 @@
> /*
> - * linux/drivers/pci/msi.c
> + * File: msi.c
Please kill these silly comments. Everyone opening that file should
better know what he's looking at..
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:06 ` [PATCH] " Greg KH
2004-02-20 19:06 ` Greg KH
@ 2004-02-20 19:41 ` Dave Jones
2004-02-20 19:53 ` Greg KH
1 sibling, 1 reply; 8+ messages in thread
From: Dave Jones @ 2004-02-20 19:41 UTC (permalink / raw)
To: Greg KH; +Cc: linux-kernel, pcihpd-discuss
On Fri, Feb 20, 2004 at 11:06:17AM -0800, Greg KH wrote:
> ChangeSet 1.1557.58.1, 2004/02/18 11:15:56-08:00, mgreer@mvista.com
>
> [PATCH] PCI: Changing 'GALILEO' to 'MARVELL'
>
> I'm working with some Marvell components (formerly Galileo Technologies)
> and noticed that the entries in include/linux/pci_ids.h have become
> dated
I just changed this at pciids.sf.net too, so the pci.ids in the kernel
will get updated in the next update.
Dave
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] PCI update for 2.6.3
2004-02-20 19:41 ` Dave Jones
@ 2004-02-20 19:53 ` Greg KH
0 siblings, 0 replies; 8+ messages in thread
From: Greg KH @ 2004-02-20 19:53 UTC (permalink / raw)
To: Dave Jones, linux-kernel, pcihpd-discuss
On Fri, Feb 20, 2004 at 07:41:30PM +0000, Dave Jones wrote:
> On Fri, Feb 20, 2004 at 11:06:17AM -0800, Greg KH wrote:
> > ChangeSet 1.1557.58.1, 2004/02/18 11:15:56-08:00, mgreer@mvista.com
> >
> > [PATCH] PCI: Changing 'GALILEO' to 'MARVELL'
> >
> > I'm working with some Marvell components (formerly Galileo Technologies)
> > and noticed that the entries in include/linux/pci_ids.h have become
> > dated
>
> I just changed this at pciids.sf.net too, so the pci.ids in the kernel
> will get updated in the next update.
Nice, thanks for doing this.
greg k-h
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2004-02-20 20:01 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-20 19:04 [BK PATCH] PCI update for 2.6.3 Greg KH
2004-02-20 19:06 ` [PATCH] " Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:06 ` Greg KH
2004-02-20 19:19 ` Christoph Hellwig
2004-02-20 19:41 ` Dave Jones
2004-02-20 19:53 ` Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox