|
@@ -11,7 +11,7 @@
|
|
|
#include <linux/slab.h>
|
|
|
#include "agp.h"
|
|
|
|
|
|
-#define AMD_MMBASE 0x14
|
|
|
+#define AMD_MMBASE_BAR 1
|
|
|
#define AMD_APSIZE 0xac
|
|
|
#define AMD_MODECNTL 0xb0
|
|
|
#define AMD_MODECNTL2 0xb2
|
|
@@ -205,6 +205,7 @@ static int amd_irongate_fetch_size(void)
|
|
|
static int amd_irongate_configure(void)
|
|
|
{
|
|
|
struct aper_size_info_lvl2 *current_size;
|
|
|
+ phys_addr_t reg;
|
|
|
u32 temp;
|
|
|
u16 enable_reg;
|
|
|
|
|
@@ -212,9 +213,8 @@ static int amd_irongate_configure(void)
|
|
|
|
|
|
if (!amd_irongate_private.registers) {
|
|
|
/* Get the memory mapped registers */
|
|
|
- pci_read_config_dword(agp_bridge->dev, AMD_MMBASE, &temp);
|
|
|
- temp = (temp & PCI_BASE_ADDRESS_MEM_MASK);
|
|
|
- amd_irongate_private.registers = (volatile u8 __iomem *) ioremap(temp, 4096);
|
|
|
+ reg = pci_resource_start(agp_bridge->dev, AMD_MMBASE_BAR);
|
|
|
+ amd_irongate_private.registers = (volatile u8 __iomem *) ioremap(reg, 4096);
|
|
|
if (!amd_irongate_private.registers)
|
|
|
return -ENOMEM;
|
|
|
}
|