Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 23dac14d authored by Paul Burton's avatar Paul Burton Committed by Ralf Baechle
Browse files

MIPS: PCI: Use struct list_head lists



Rather than open-coding a linked list implementation, make use of the
one in linux/list.h.

Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/14340/


Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent d05c5130
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@
 */

#include <linux/ioport.h>
#include <linux/list.h>
#include <linux/of.h>

/*
@@ -25,7 +26,7 @@
 * single controller supporting multiple channels.
 */
struct pci_controller {
	struct pci_controller *next;
	struct list_head list;
	struct pci_bus *bus;
	struct device_node *of_node;

+4 −5
Original line number Diff line number Diff line
@@ -28,8 +28,7 @@
/*
 * The PCI controller list.
 */

static struct pci_controller *hose_head, **hose_tail = &hose_head;
static LIST_HEAD(controllers);

unsigned long PCIBIOS_MIN_IO;
unsigned long PCIBIOS_MIN_MEM;
@@ -193,8 +192,8 @@ void register_pci_controller(struct pci_controller *hose)
		goto out;
	}

	*hose_tail = hose;
	hose_tail = &hose->next;
	INIT_LIST_HEAD(&hose->list);
	list_add(&hose->list, &controllers);

	/*
	 * Do not panic here but later - this might happen before console init.
@@ -248,7 +247,7 @@ static int __init pcibios_init(void)
	pcibios_set_cache_line_size();

	/* Scan all of the recorded PCI controllers.  */
	for (hose = hose_head; hose; hose = hose->next)
	list_for_each_entry(hose, &controllers, list)
		pcibios_scanbus(hose);

	pci_fixup_irqs(pci_common_swizzle, pcibios_map_irq);