Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 295178 Details for
Bug 430315
Xorg failed to start on Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 02) using kernel-xen
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
Add support for G33, Q33 and Q35 chipsets to intel_agp
agpgart-G33-support.patch (text/plain), 7.16 KB, created by
Saurabh Bathe
on 2008-02-18 16:34:45 UTC
(
hide
)
Description:
Add support for G33, Q33 and Q35 chipsets to intel_agp
Filename:
MIME Type:
Creator:
Saurabh Bathe
Created:
2008-02-18 16:34:45 UTC
Size:
7.16 KB
patch
obsolete
>--- a/drivers/char/agp/agp.h.orig 2008-02-18 19:21:13.000000000 +0530 >+++ b/drivers/char/agp/agp.h 2008-02-18 19:30:34.000000000 +0530 >@@ -176,7 +176,7 @@ > #define I830_GMCH_MEM_MASK 0x1 > #define I830_GMCH_MEM_64M 0x1 > #define I830_GMCH_MEM_128M 0 >-#define I830_GMCH_GMS_MASK 0x70 >+#define I830_GMCH_GMS_MASK 0xF0 > #define I830_GMCH_GMS_DISABLED 0x00 > #define I830_GMCH_GMS_LOCAL 0x10 > #define I830_GMCH_GMS_STOLEN_512 0x20 >@@ -231,6 +231,9 @@ > #define I965_PGETBL_SIZE_512KB (0 << 1) > #define I965_PGETBL_SIZE_256KB (1 << 1) > #define I965_PGETBL_SIZE_128KB (2 << 1) >+#define G33_PGETBL_SIZE_MASK (3 << 8) >+#define G33_PGETBL_SIZE_1M (1 << 8) >+#define G33_PGETBL_SIZE_2M (2 << 8) > #define I810_DRAM_CTL 0x3000 > #define I810_DRAM_ROW_0 0x00000001 > #define I810_DRAM_ROW_0_SDRAM 0x00000001 >--- a/drivers/char/agp/intel-agp.c.orig 2008-02-18 19:28:09.000000000 +0530 >+++ b/drivers/char/agp/intel-agp.c 2008-02-18 20:29:01.000000000 +0530 >@@ -20,6 +20,12 @@ > #define PCI_DEVICE_ID_INTEL_82965G_IG 0x29A2 > #define PCI_DEVICE_ID_INTEL_82965GM_HB 0x2A00 > #define PCI_DEVICE_ID_INTEL_82965GM_IG 0x2A02 >+#define PCI_DEVICE_ID_INTEL_G33_HB 0x29C0 >+#define PCI_DEVICE_ID_INTEL_G33_IG 0x29C2 >+#define PCI_DEVICE_ID_INTEL_Q35_HB 0x29B0 >+#define PCI_DEVICE_ID_INTEL_Q35_IG 0x29B2 >+#define PCI_DEVICE_ID_INTEL_Q33_HB 0x29D0 >+#define PCI_DEVICE_ID_INTEL_Q33_IG 0x29D2 > > #define IS_I965 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82946GZ_HB || \ > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965G_1_HB || \ >@@ -27,6 +33,10 @@ > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965G_HB || \ > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82965GM_HB) > >+#define IS_G33 (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G33_HB || \ >+ agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q35_HB || \ >+ agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_Q33_HB) >+ > > extern int agp_memory_reserved; > >@@ -53,6 +63,8 @@ > #define I915_PTEADDR 0x1C > #define I915_GMCH_GMS_STOLEN_48M (0x6 << 4) > #define I915_GMCH_GMS_STOLEN_64M (0x7 << 4) >+#define G33_GMCH_GMS_STOLEN_128M (0x8 << 4) >+#define G33_GMCH_GMS_STOLEN_256M (0x9 << 4) > > /* Intel 965G registers */ > #define I965_MSAC 0x62 >@@ -453,6 +465,22 @@ > size = 512; > } > size += 4; /* add in BIOS popup space */ >+ } else if (IS_G33) { >+ /* G33's GTT size defined in gmch_ctrl */ >+ switch (gmch_ctrl & G33_PGETBL_SIZE_MASK) { >+ case G33_PGETBL_SIZE_1M: >+ size = 1024; >+ break; >+ case G33_PGETBL_SIZE_2M: >+ size = 2048; >+ break; >+ default: >+ printk(KERN_INFO PFX "Unknown page table size 0x%x, " >+ "assuming 512KB\n", >+ (gmch_ctrl & G33_PGETBL_SIZE_MASK)); >+ size = 512; >+ } >+ size += 4; > } else { > /* On previous hardware, the GTT size was just what was > * required to map the aperture. >@@ -504,7 +532,8 @@ > if (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82915G_HB || > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82915GM_HB || > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945G_HB || >- agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945GM_HB || IS_I965 ) >+ agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945GM_HB || >+ IS_I965 || IS_G33) > gtt_entries = MB(48) - KB(size); > else > gtt_entries = 0; >@@ -514,10 +543,24 @@ > if (agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82915G_HB || > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82915GM_HB || > agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945G_HB || >- agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945GM_HB || IS_I965) >+ agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_82945GM_HB || >+ IS_I965 || IS_G33) > gtt_entries = MB(64) - KB(size); > else > gtt_entries = 0; >+ break; >+ case G33_GMCH_GMS_STOLEN_128M: >+ if (IS_G33) >+ gtt_entries = MB(128) - KB(size); >+ else >+ gtt_entries = 0; >+ break; >+ case G33_GMCH_GMS_STOLEN_256M: >+ if (IS_G33) >+ gtt_entries = MB(256) - KB(size); >+ else >+ gtt_entries = 0; >+ break; > default: > gtt_entries = 0; > break; >@@ -1724,6 +1767,31 @@ > .agp_type_to_mask_type = agp_generic_type_to_mask_type, > }; > >+static const struct agp_bridge_driver intel_g33_driver = { >+ .owner = THIS_MODULE, >+ .aperture_sizes = intel_i830_sizes, >+ .size_type = FIXED_APER_SIZE, >+ .num_aperture_sizes = 4, >+ .needs_scratch_page = TRUE, >+ .configure = intel_i915_configure, >+ .fetch_size = intel_i9xx_fetch_size, >+ .cleanup = intel_i915_cleanup, >+ .tlb_flush = intel_i810_tlbflush, >+ .mask_memory = intel_i965_mask_memory, >+ .masks = intel_i810_masks, >+ .agp_enable = intel_i810_agp_enable, >+ .cache_flush = global_cache_flush, >+ .create_gatt_table = intel_i915_create_gatt_table, >+ .free_gatt_table = intel_i830_free_gatt_table, >+ .insert_memory = intel_i915_insert_entries, >+ .remove_memory = intel_i915_remove_entries, >+ .alloc_by_type = intel_i830_alloc_by_type, >+ .free_by_type = intel_i810_free_by_type, >+ .agp_alloc_page = agp_generic_alloc_page, >+ .agp_destroy_page = agp_generic_destroy_page, >+ .agp_type_to_mask_type = intel_i830_type_to_mask_type, >+}; >+ > static int find_i810(u16 device) > { > struct pci_dev *i810_dev; >@@ -1938,6 +2006,27 @@ > bridge->driver = &intel_7505_driver; > name = "E7205"; > break; >+ case PCI_DEVICE_ID_INTEL_G33_HB: >+ if (find_i830(PCI_DEVICE_ID_INTEL_G33_IG)) >+ bridge->driver = &intel_g33_driver; >+ else >+ bridge->driver = &intel_845_driver; >+ name = "G33"; >+ break; >+ case PCI_DEVICE_ID_INTEL_Q35_HB: >+ if (find_i830(PCI_DEVICE_ID_INTEL_Q35_IG)) >+ bridge->driver = &intel_g33_driver; >+ else >+ bridge->driver = &intel_845_driver; >+ name = "Q35"; >+ break; >+ case PCI_DEVICE_ID_INTEL_Q33_HB: >+ if (find_i830(PCI_DEVICE_ID_INTEL_Q33_IG)) >+ bridge->driver = &intel_g33_driver; >+ else >+ bridge->driver = &intel_845_driver; >+ name = "Q33"; >+ break; > default: > if (cap_ptr) > printk(KERN_WARNING PFX "Unsupported Intel chipset (device id: %04x)\n", >@@ -2089,6 +2178,9 @@ > ID(PCI_DEVICE_ID_INTEL_82965Q_HB), > ID(PCI_DEVICE_ID_INTEL_82965G_HB), > ID(PCI_DEVICE_ID_INTEL_82965GM_HB), >+ ID(PCI_DEVICE_ID_INTEL_G33_HB), >+ ID(PCI_DEVICE_ID_INTEL_Q35_HB), >+ ID(PCI_DEVICE_ID_INTEL_Q33_HB), > { } > }; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 430315
:
293027
| 295178 |
295179
|
298497
|
298498
|
298717
|
298720