2005-03-05 15:46:59

by Domen Puncer

[permalink] [raw]
Subject: [patch 02/12] arch/i386/pci/i386.c: Use new for_each_pci_dev macro




As requested by Christoph Hellwig I've created a new macro called
for_each_pci_dev. It is a wrapper for this common use of pci_get/find_device:

(while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL))

This macro will return the pci_dev *for all pci devices. Here is the first patch I
used to test this macro with. Compiled and booted on my T23. There will be
53 more patches using this new macro.

Signed-off-by: Hanna Linder <[email protected]>
Signed-off-by: Maximilian Attems <[email protected]>
Signed-off-by: Domen Puncer <[email protected]>
---


kj-domen/arch/i386/pci/i386.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN arch/i386/pci/i386.c~for-each-pci-dev-arch_i386_pci_i386 arch/i386/pci/i386.c
--- kj/arch/i386/pci/i386.c~for-each-pci-dev-arch_i386_pci_i386 2005-03-05 16:09:19.000000000 +0100
+++ kj-domen/arch/i386/pci/i386.c 2005-03-05 16:09:19.000000000 +0100
@@ -124,7 +124,7 @@ static void __init pcibios_allocate_reso
u16 command;
struct resource *r, *pr;

- while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
+ for_each_pci_dev(dev) {
pci_read_config_word(dev, PCI_COMMAND, &command);
for(idx = 0; idx < 6; idx++) {
r = &dev->resource[idx];
@@ -168,7 +168,7 @@ static int __init pcibios_assign_resourc
int idx;
struct resource *r;

- while ((dev = pci_get_device(PCI_ANY_ID, PCI_ANY_ID, dev)) != NULL) {
+ for_each_pci_dev(dev) {
int class = dev->class >> 8;

/* Don't touch classless devices and host bridges */
_