summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/sc520_cdp/sc520_cdp.c1
-rw-r--r--cpu/i386/sc520/sc520_pci.c2
-rw-r--r--include/configs/sc520_cdp.h2
-rw-r--r--lib_i386/pci.c2
-rw-r--r--lib_i386/video_bios.c18
5 files changed, 14 insertions, 11 deletions
diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
index 830ec37..9cbe63e 100644
--- a/board/sc520_cdp/sc520_cdp.c
+++ b/board/sc520_cdp/sc520_cdp.c
@@ -27,6 +27,7 @@
#include <asm/io.h>
#include <asm/pci.h>
#include <asm/ic/sc520.h>
+#include <asm/ic/pci.h>
#include <ali512x.h>
#include <spi.h>
#include <netdev.h>
diff --git a/cpu/i386/sc520/sc520_pci.c b/cpu/i386/sc520/sc520_pci.c
index 38b837e..871ad0a 100644
--- a/cpu/i386/sc520/sc520_pci.c
+++ b/cpu/i386/sc520/sc520_pci.c
@@ -124,7 +124,7 @@ void pci_sc520_init(struct pci_controller *hose)
SC520_PCI_MEMORY_BUS,
SC520_PCI_MEMORY_PHYS,
SC520_PCI_MEMORY_SIZE,
- PCI_REGION_MEM | PCI_REGION_MEMORY);
+ PCI_REGION_MEM | PCI_REGION_SYS_MEMORY);
/* PCI memory space */
pci_set_region(hose->regions + 1,
diff --git a/include/configs/sc520_cdp.h b/include/configs/sc520_cdp.h
index 3e2bb02..36e1224 100644
--- a/include/configs/sc520_cdp.h
+++ b/include/configs/sc520_cdp.h
@@ -206,6 +206,8 @@
************************************************************/
#ifndef GRUSS_TESTING
#define CONFIG_VIDEO /* To enable video controller support */
+#define PCI_VIDEO_VENDOR_ID 0 /*Use the appropriate vendor ID*/
+#define PCI_VIDEO_DEVICE_ID 0 /*Use the appropriate Device ID*/
#else
#undef CONFIG_VIDEO
#endif
diff --git a/lib_i386/pci.c b/lib_i386/pci.c
index 4331b04..f366bdc 100644
--- a/lib_i386/pci.c
+++ b/lib_i386/pci.c
@@ -60,7 +60,7 @@ int pci_shadow_rom(pci_dev_t dev, unsigned char *dest)
vendor, device, class_code);
#endif
/* Enable the rom addess decoder */
- pci_write_config_dword(dev, PCI_ROM_ADDRESS, PCI_ROM_ADDRESS_MASK);
+ pci_write_config_dword(dev, PCI_ROM_ADDRESS, (u32)PCI_ROM_ADDRESS_MASK);
pci_read_config_dword(dev, PCI_ROM_ADDRESS, &addr_reg);
if (!addr_reg) {
diff --git a/lib_i386/video_bios.c b/lib_i386/video_bios.c
index ce96a3e..c8060e6 100644
--- a/lib_i386/video_bios.c
+++ b/lib_i386/video_bios.c
@@ -76,18 +76,22 @@ void print_bios_bios_stat(void)
}
#endif
+#ifdef CONFIG_VIDEO
+
#define PCI_CLASS_VIDEO 3
#define PCI_CLASS_VIDEO_STD 0
#define PCI_CLASS_VIDEO_PROG_IF_VGA 0
+static struct pci_device_id supported[] = {
+ {PCI_VIDEO_VENDOR_ID, PCI_VIDEO_DEVICE_ID},
+ {}
+};
static u32 probe_pci_video(void)
{
pci_dev_t devbusfn;
- if ((devbusfn = pci_find_class(PCI_CLASS_VIDEO,
- PCI_CLASS_VIDEO_STD,
- PCI_CLASS_VIDEO_PROG_IF_VGA, 0)) != -1) {
+ if ((devbusfn = pci_find_devices(supported, 0) != -1)) {
u32 old;
u32 addr;
@@ -103,7 +107,7 @@ static u32 probe_pci_video(void)
/* Test the ROM decoder, do the device support a rom? */
pci_read_config_dword(devbusfn, PCI_ROM_ADDRESS, &old);
- pci_write_config_dword(devbusfn, PCI_ROM_ADDRESS, PCI_ROM_ADDRESS_MASK);
+ pci_write_config_dword(devbusfn, PCI_ROM_ADDRESS, (u32)PCI_ROM_ADDRESS_MASK);
pci_read_config_dword(devbusfn, PCI_ROM_ADDRESS, &addr);
pci_write_config_dword(devbusfn, PCI_ROM_ADDRESS, old);
@@ -133,11 +137,6 @@ static u32 probe_pci_video(void)
return 0;
}
-
-#endif
-
-#ifdef CONFIG_VIDEO
-
static int probe_isa_video(void)
{
u32 ptr;
@@ -220,3 +219,4 @@ int video_bios_init(void)
}
#endif
+#endif