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

Commit 284f933d authored by Yinghai Lu's avatar Yinghai Lu Committed by H. Peter Anvin
Browse files

x86/pci: Enable pci root res read out for 32bit too



Should be good for 32bit too.

-v3: cast res->start
-v4: according to Linus, to use %pR instead of cast

Signed-off-by: default avatarYinghai Lu <yinghai@kernel.org>
LKML-Reference: <1265793639-15071-9-git-send-email-yinghai@kernel.org>
Acked-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
parent 9ad3f2c7
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -14,8 +14,7 @@ obj-$(CONFIG_X86_VISWS) += visws.o
obj-$(CONFIG_X86_NUMAQ)		+= numaq_32.o

obj-y				+= common.o early.o
obj-y				+= amd_bus.o
obj-$(CONFIG_X86_64)		+= bus_numa.o
obj-y				+= amd_bus.o bus_numa.o

ifeq ($(CONFIG_PCI_DEBUG),y)
EXTRA_CFLAGS += -DDEBUG
+2 −16
Original line number Diff line number Diff line
@@ -6,9 +6,7 @@

#include <asm/pci_x86.h>

#ifdef CONFIG_X86_64
#include <asm/pci-direct.h>
#endif

#include "bus_numa.h"

@@ -17,8 +15,6 @@
 * also get peer root bus resource for io,mmio
 */

#ifdef CONFIG_X86_64

struct pci_hostbridge_probe {
	u32 bus;
	u32 slot;
@@ -339,24 +335,14 @@ static int __init early_fill_mp_bus_info(void)
		       info->bus_min, info->bus_max, info->node, info->link);
		for (j = 0; j < res_num; j++) {
			res = &info->res[j];
			printk(KERN_DEBUG "bus: %02x index %x %s: [%llx, %llx]\n",
			       busnum, j,
			       (res->flags & IORESOURCE_IO)?"io port":"mmio",
			       res->start, res->end);
			printk(KERN_DEBUG "bus: %02x index %x %pR\n",
				       busnum, j, res);
		}
	}

	return 0;
}

#else  /* !CONFIG_X86_64 */

static int __init early_fill_mp_bus_info(void) { return 0; }

#endif /* !CONFIG_X86_64 */

/* common 32/64 bit code */

#define ENABLE_CF8_EXT_CFG      (1ULL << 46)

static void enable_pci_io_ecs(void *unused)
+2 −2
Original line number Diff line number Diff line
#ifdef CONFIG_X86_64

#ifndef __BUS_NUMA_H
#define __BUS_NUMA_H
/*
 * sub bus (transparent) will use entres from 3 to store extra from
 * root, so need to make sure we have enough slot there, Should we
+0 −4
Original line number Diff line number Diff line
@@ -257,10 +257,6 @@ void __init pcibios_resource_survey(void)
 */
fs_initcall(pcibios_assign_resources);

void __weak x86_pci_root_bus_res_quirks(struct pci_bus *b)
{
}

/*
 *  If we set up a device for bus mastering, we need to check the latency
 *  timer as certain crappy BIOSes forget to set it properly.