diff options
Diffstat (limited to 'meta-moblin/packages/linux/linux-moblin-2.6.27/0042-intelfb-945gme.patch')
-rw-r--r-- | meta-moblin/packages/linux/linux-moblin-2.6.27/0042-intelfb-945gme.patch | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/meta-moblin/packages/linux/linux-moblin-2.6.27/0042-intelfb-945gme.patch b/meta-moblin/packages/linux/linux-moblin-2.6.27/0042-intelfb-945gme.patch new file mode 100644 index 0000000000..0f74d47bf1 --- /dev/null +++ b/meta-moblin/packages/linux/linux-moblin-2.6.27/0042-intelfb-945gme.patch | |||
@@ -0,0 +1,154 @@ | |||
1 | The following patch adds support for Intel's 945GME graphics chip to | ||
2 | the intelfb driver. I have assumed that the 945GME is identical to the | ||
3 | already-supported 945GM apart from its PCI IDs; this is based on a quick | ||
4 | look at the X driver for these chips which seems to treat them | ||
5 | identically. | ||
6 | |||
7 | Signed-off-by: Phil Endecott <spam_from_intelfb@chezphil.org> | ||
8 | |||
9 | --- | ||
10 | |||
11 | The 945GME is used in the ASUS Eee 901, and I coded this in the hope that | ||
12 | I'd be able to use it to get a console at the native 1024x600 resolution | ||
13 | which is not known to the BIOS. I realised too late that the intelfb | ||
14 | driver does not support mode changing on laptops, so it won't be any | ||
15 | use for me. But rather than throw it away I will post it here as | ||
16 | essentially "untested"; maybe someone who knows more about this driver, | ||
17 | and with more useful hardware to test on, can pick it up. | ||
18 | |||
19 | --- | ||
20 | Documentation/fb/intelfb.txt | 1 + | ||
21 | drivers/video/intelfb/intelfb.h | 7 +++++-- | ||
22 | drivers/video/intelfb/intelfb_i2c.c | 1 + | ||
23 | drivers/video/intelfb/intelfbdrv.c | 7 ++++++- | ||
24 | drivers/video/intelfb/intelfbhw.c | 7 +++++++ | ||
25 | 5 files changed, 20 insertions(+), 3 deletions(-) | ||
26 | |||
27 | Index: linux-2.6.27/Documentation/fb/intelfb.txt | ||
28 | =================================================================== | ||
29 | --- linux-2.6.27.orig/Documentation/fb/intelfb.txt 2008-10-14 16:54:54.000000000 +0200 | ||
30 | +++ linux-2.6.27/Documentation/fb/intelfb.txt 2008-10-14 17:05:36.000000000 +0200 | ||
31 | @@ -14,6 +14,7 @@ graphics devices. These would include: | ||
32 | Intel 915GM | ||
33 | Intel 945G | ||
34 | Intel 945GM | ||
35 | + Intel 945GME | ||
36 | Intel 965G | ||
37 | Intel 965GM | ||
38 | |||
39 | Index: linux-2.6.27/drivers/video/intelfb/intelfb.h | ||
40 | =================================================================== | ||
41 | --- linux-2.6.27.orig/drivers/video/intelfb/intelfb.h 2008-10-14 16:55:37.000000000 +0200 | ||
42 | +++ linux-2.6.27/drivers/video/intelfb/intelfb.h 2008-10-14 17:05:36.000000000 +0200 | ||
43 | @@ -12,9 +12,9 @@ | ||
44 | #endif | ||
45 | |||
46 | /*** Version/name ***/ | ||
47 | -#define INTELFB_VERSION "0.9.5" | ||
48 | +#define INTELFB_VERSION "0.9.6" | ||
49 | #define INTELFB_MODULE_NAME "intelfb" | ||
50 | -#define SUPPORTED_CHIPSETS "830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM" | ||
51 | +#define SUPPORTED_CHIPSETS "830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/945GME/965G/965GM" | ||
52 | |||
53 | |||
54 | /*** Debug/feature defines ***/ | ||
55 | @@ -58,6 +58,7 @@ | ||
56 | #define PCI_DEVICE_ID_INTEL_915GM 0x2592 | ||
57 | #define PCI_DEVICE_ID_INTEL_945G 0x2772 | ||
58 | #define PCI_DEVICE_ID_INTEL_945GM 0x27A2 | ||
59 | +#define PCI_DEVICE_ID_INTEL_945GME 0x27AE | ||
60 | #define PCI_DEVICE_ID_INTEL_965G 0x29A2 | ||
61 | #define PCI_DEVICE_ID_INTEL_965GM 0x2A02 | ||
62 | |||
63 | @@ -160,6 +161,7 @@ enum intel_chips { | ||
64 | INTEL_915GM, | ||
65 | INTEL_945G, | ||
66 | INTEL_945GM, | ||
67 | + INTEL_945GME, | ||
68 | INTEL_965G, | ||
69 | INTEL_965GM, | ||
70 | }; | ||
71 | @@ -363,6 +365,7 @@ struct intelfb_info { | ||
72 | ((dinfo)->chipset == INTEL_915GM) || \ | ||
73 | ((dinfo)->chipset == INTEL_945G) || \ | ||
74 | ((dinfo)->chipset == INTEL_945GM) || \ | ||
75 | + ((dinfo)->chipset == INTEL_945GME) || \ | ||
76 | ((dinfo)->chipset == INTEL_965G) || \ | ||
77 | ((dinfo)->chipset == INTEL_965GM)) | ||
78 | |||
79 | Index: linux-2.6.27/drivers/video/intelfb/intelfb_i2c.c | ||
80 | =================================================================== | ||
81 | --- linux-2.6.27.orig/drivers/video/intelfb/intelfb_i2c.c 2008-10-14 16:55:37.000000000 +0200 | ||
82 | +++ linux-2.6.27/drivers/video/intelfb/intelfb_i2c.c 2008-10-14 17:05:36.000000000 +0200 | ||
83 | @@ -171,6 +171,7 @@ void intelfb_create_i2c_busses(struct in | ||
84 | /* has some LVDS + tv-out */ | ||
85 | case INTEL_945G: | ||
86 | case INTEL_945GM: | ||
87 | + case INTEL_945GME: | ||
88 | case INTEL_965G: | ||
89 | case INTEL_965GM: | ||
90 | /* SDVO ports have a single control bus - 2 devices */ | ||
91 | Index: linux-2.6.27/drivers/video/intelfb/intelfbdrv.c | ||
92 | =================================================================== | ||
93 | --- linux-2.6.27.orig/drivers/video/intelfb/intelfbdrv.c 2008-10-14 16:55:37.000000000 +0200 | ||
94 | +++ linux-2.6.27/drivers/video/intelfb/intelfbdrv.c 2008-10-14 17:05:36.000000000 +0200 | ||
95 | @@ -2,7 +2,7 @@ | ||
96 | * intelfb | ||
97 | * | ||
98 | * Linux framebuffer driver for Intel(R) 830M/845G/852GM/855GM/865G/915G/915GM/ | ||
99 | - * 945G/945GM/965G/965GM integrated graphics chips. | ||
100 | + * 945G/945GM/945GME/965G/965GM integrated graphics chips. | ||
101 | * | ||
102 | * Copyright © 2002, 2003 David Dawes <dawes@xfree86.org> | ||
103 | * 2004 Sylvain Meyer | ||
104 | @@ -102,6 +102,9 @@ | ||
105 | * | ||
106 | * 04/2008 - Version 0.9.5 | ||
107 | * Add support for 965G/965GM. (Maik Broemme <mbroemme@plusserver.de>) | ||
108 | + * | ||
109 | + * 08/2008 - Version 0.9.6 | ||
110 | + * Add support for 945GME. (Phil Endecott <spam_from_intelfb@chezphil.org>) | ||
111 | */ | ||
112 | |||
113 | #include <linux/module.h> | ||
114 | @@ -183,6 +186,7 @@ static struct pci_device_id intelfb_pci_ | ||
115 | { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_915GM, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_915GM }, | ||
116 | { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_945G, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_945G }, | ||
117 | { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_945GM, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_945GM }, | ||
118 | + { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_945GME, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_945GME }, | ||
119 | { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_965G, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_965G }, | ||
120 | { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_965GM, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, INTELFB_CLASS_MASK, INTEL_965GM }, | ||
121 | { 0, } | ||
122 | @@ -555,6 +559,7 @@ static int __devinit intelfb_pci_registe | ||
123 | (ent->device == PCI_DEVICE_ID_INTEL_915GM) || | ||
124 | (ent->device == PCI_DEVICE_ID_INTEL_945G) || | ||
125 | (ent->device == PCI_DEVICE_ID_INTEL_945GM) || | ||
126 | + (ent->device == PCI_DEVICE_ID_INTEL_945GME) || | ||
127 | (ent->device == PCI_DEVICE_ID_INTEL_965G) || | ||
128 | (ent->device == PCI_DEVICE_ID_INTEL_965GM)) { | ||
129 | |||
130 | Index: linux-2.6.27/drivers/video/intelfb/intelfbhw.c | ||
131 | =================================================================== | ||
132 | --- linux-2.6.27.orig/drivers/video/intelfb/intelfbhw.c 2008-10-14 16:55:37.000000000 +0200 | ||
133 | +++ linux-2.6.27/drivers/video/intelfb/intelfbhw.c 2008-10-14 17:05:36.000000000 +0200 | ||
134 | @@ -143,6 +143,12 @@ int intelfbhw_get_chipset(struct pci_dev | ||
135 | dinfo->mobile = 1; | ||
136 | dinfo->pll_index = PLLS_I9xx; | ||
137 | return 0; | ||
138 | + case PCI_DEVICE_ID_INTEL_945GME: | ||
139 | + dinfo->name = "Intel(R) 945GME"; | ||
140 | + dinfo->chipset = INTEL_945GME; | ||
141 | + dinfo->mobile = 1; | ||
142 | + dinfo->pll_index = PLLS_I9xx; | ||
143 | + return 0; | ||
144 | case PCI_DEVICE_ID_INTEL_965G: | ||
145 | dinfo->name = "Intel(R) 965G"; | ||
146 | dinfo->chipset = INTEL_965G; | ||
147 | @@ -186,6 +192,7 @@ int intelfbhw_get_memory(struct pci_dev | ||
148 | case PCI_DEVICE_ID_INTEL_915GM: | ||
149 | case PCI_DEVICE_ID_INTEL_945G: | ||
150 | case PCI_DEVICE_ID_INTEL_945GM: | ||
151 | + case PCI_DEVICE_ID_INTEL_945GME: | ||
152 | case PCI_DEVICE_ID_INTEL_965G: | ||
153 | case PCI_DEVICE_ID_INTEL_965GM: | ||
154 | /* 915, 945 and 965 chipsets support a 256MB aperture. | ||