diff --git a/src/add-ons/accelerants/intel_extreme/Jamfile b/src/add-ons/accelerants/intel_extreme/Jamfile index 43415c362c..3b14351940 100644 --- a/src/add-ons/accelerants/intel_extreme/Jamfile +++ b/src/add-ons/accelerants/intel_extreme/Jamfile @@ -5,7 +5,6 @@ SetSubDirSupportedPlatformsBeOSCompatible ; UsePrivateHeaders graphics ; UsePrivateHeaders [ FDirName graphics intel_extreme ] ; UsePrivateHeaders [ FDirName graphics common ] ; -UsePrivateHeaders shared ; Addon intel_extreme.accelerant : accelerant.cpp diff --git a/src/add-ons/kernel/busses/agp_gart/Jamfile b/src/add-ons/kernel/busses/agp_gart/Jamfile index e7078ce150..34af1f0949 100644 --- a/src/add-ons/kernel/busses/agp_gart/Jamfile +++ b/src/add-ons/kernel/busses/agp_gart/Jamfile @@ -7,7 +7,6 @@ UsePrivateHeaders [ FDirName kernel arch $(TARGET_ARCH) ] ; UsePrivateHeaders [ FDirName graphics intel_extreme ] ; UsePrivateHeaders [ FDirName graphics common ] ; UsePrivateHeaders drivers graphics kernel ; -UsePrivateHeaders shared ; KernelAddon intel : intel_gart.cpp diff --git a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp index 325d0f0b3f..f5f818a8b4 100644 --- a/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp +++ b/src/add-ons/kernel/busses/agp_gart/intel_gart.cpp @@ -149,23 +149,21 @@ determine_memory_sizes(intel_info &info, size_t >tSize, size_t &stolenSize) break; } } else if ((info.type & INTEL_TYPE_GROUP_MASK) == INTEL_TYPE_G4x) { - switch (memoryConfig & G4X_GGC_GGMS_MASK) { - case G4X_GGMS_NONE: + switch (memoryConfig & G4X_GTT_MASK) { + case G4X_GTT_NONE: gttSize = 0; break; - case G4X_GGMS_NO_IVT_1M: + case G4X_GTT_1M_NO_IVT: gttSize = 1 << 20; break; - case G4X_GGMS_NO_IVT_2M: + case G4X_GTT_2M_NO_IVT: + case G4X_GTT_2M_IVT: gttSize = 2 << 20; break; - case G4X_GGMS_IVT_2M: - gttSize = 2 << 20; - break; - case G4X_GGMS_IVT_3M: + case G4X_GTT_3M_IVT: gttSize = 3 << 20; break; - case G4X_GGMS_IVT_4M: + case G4X_GTT_4M_IVT: gttSize = 4 << 20; break; } @@ -205,33 +203,6 @@ determine_memory_sizes(intel_info &info, size_t >tSize, size_t &stolenSize) memorySize *= 8; break; } - } else if (info.type == INTEL_TYPE_G4x) { - switch (memoryConfig & G4X_GGC_GMS_MASK) { - case G4X_GMS_32MB: - memorySize *= 32; - break; - case G4X_GMS_64MB: - memorySize *= 64; - break; - case G4X_GMS_128MB: - memorySize *= 128; - break; - case G4X_GMS_256MB: - memorySize *= 256; - break; - case G4X_GMS_96MB: - memorySize *= 96; - break; - case G4X_GMS_160MB: - memorySize *= 160; - break; - case G4X_GMS_224MB: - memorySize *= 224; - break; - case G4X_GMS_352MB: - memorySize *= 352; - break; - } } else if (info.type == INTEL_TYPE_85x || (info.type & INTEL_TYPE_9xx) == INTEL_TYPE_9xx) { switch (memoryConfig & STOLEN_MEMORY_MASK) { @@ -259,6 +230,18 @@ determine_memory_sizes(intel_info &info, size_t >tSize, size_t &stolenSize) case i855_STOLEN_MEMORY_256M: memorySize *= 256; break; + case G4X_STOLEN_MEMORY_96MB: + memorySize *= 96; + break; + case G4X_STOLEN_MEMORY_160MB: + memorySize *= 160; + break; + case G4X_STOLEN_MEMORY_224MB: + memorySize *= 224; + break; + case G4X_STOLEN_MEMORY_352MB: + memorySize *= 352; + break; } } else { // TODO: error out! @@ -329,12 +312,13 @@ intel_map(intel_info &info) if (get_memory_map(scratchAddress, B_PAGE_SIZE, &entry, 1) != B_OK) return B_ERROR; - if ((info.type & INTEL_TYPE_GROUP_MASK) == INTEL_TYPE_G4x) - info.gtt_physical_base = info.display.u.h0.base_registers[mmioIndex] - + (2UL << 20); - else if ((info.type & INTEL_TYPE_FAMILY_MASK) == INTEL_TYPE_9xx) - info.gtt_physical_base = get_pci_config(info.display, i915_GTT_BASE, 4); - else { + if ((info.type & INTEL_TYPE_FAMILY_MASK) == INTEL_TYPE_9xx) { + if ((info.type & INTEL_TYPE_GROUP_MASK) == INTEL_TYPE_G4x) { + info.gtt_physical_base = info.display.u.h0.base_registers[mmioIndex] + + (2UL << 20); + } else + info.gtt_physical_base = get_pci_config(info.display, i915_GTT_BASE, 4); + } else { info.gtt_physical_base = read32(info.registers + INTEL_PAGE_TABLE_CONTROL) & ~PAGE_TABLE_ENABLED; if (info.gtt_physical_base == 0) { diff --git a/src/add-ons/kernel/drivers/graphics/intel_extreme/Jamfile b/src/add-ons/kernel/drivers/graphics/intel_extreme/Jamfile index 54e1a5e9f0..96b6872262 100644 --- a/src/add-ons/kernel/drivers/graphics/intel_extreme/Jamfile +++ b/src/add-ons/kernel/drivers/graphics/intel_extreme/Jamfile @@ -5,7 +5,6 @@ SetSubDirSupportedPlatformsBeOSCompatible ; UsePrivateHeaders [ FDirName graphics intel_extreme ] ; UsePrivateHeaders [ FDirName graphics common ] ; UsePrivateHeaders graphics kernel ; -UsePrivateHeaders shared ; KernelAddon intel_extreme : driver.cpp diff --git a/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp b/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp index 3f259e8352..8e6343b15c 100644 --- a/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp +++ b/src/add-ons/kernel/drivers/graphics/intel_extreme/intel_extreme.cpp @@ -247,13 +247,13 @@ intel_extreme_init(intel_info &info) } else if (info.device_type.InGroup(INTEL_TYPE_G4x)) { dprintf("G4x clock gating\n"); write32(info.registers + 0x6204, 0); - write32(info.registers + 0x6208, BIT(9) | BIT(7) | BIT(6)); + write32(info.registers + 0x6208, (1L << 9) | (1L << 7) | (1L << 6)); write32(info.registers + 0x6210, 0); - uint32 dspclk_gate_val = BIT(28) | BIT(3) | BIT(2); + uint32 dspclk_gate_val = (1L << 28) | (1L << 3) | (1L << 2); if ((info.device_type.type & INTEL_TYPE_MOBILE) == INTEL_TYPE_MOBILE) { dprintf("G4x mobile clock gating\n"); - dspclk_gate_val |= BIT(18); + dspclk_gate_val |= 1L << 18; } write32(info.registers + 0x6200, dspclk_gate_val) ;