1 |
OK, now I have some time to look at this in detail: |
2 |
|
3 |
maxim wexler schreef: |
4 |
> |
5 |
> --- Ryan Sims <rwsims@×××××.com> wrote: |
6 |
> |
7 |
> |
8 |
>>On 8/23/05, Mark Knecht <markknecht@×××××.com> |
9 |
>>wrote: |
10 |
>> |
11 |
>>>Hi Maxim, |
12 |
>>> An AGP support issue probably. Which kernel are |
13 |
>> |
14 |
>>you using? |
15 |
|
16 |
Mark, I think you're right: |
17 |
|
18 |
>> |
19 |
>>I found that running with a 2.6.12 kernel gave me |
20 |
>>this error; |
21 |
>>downgrading to 2.6.11 fixed it. here's a relevant |
22 |
>>forum topic: |
23 |
> |
24 |
> |
25 |
> Actually, I *was* using 2.6.11. Now I've compiled the |
26 |
> 2.6.12 and re-emerged ati-drivers-8.12.10(Why so |
27 |
> out-dated, I just did a -uD world a few days ago?). It |
28 |
> seems to work OK but it fails to produce fglrx.ko. |
29 |
> |
30 |
> Checking for MTRR support enabled ... |
31 |
> (we really don't need the color codes, so I'm deleting them) |
32 |
> Checking for AGP support enabled ... |
33 |
> |
34 |
> Checking for DRM support disabled ... |
35 |
> |
36 |
> X11 implementation is xorg-x11. |
37 |
|
38 |
OK, so this is what I was saying in my other mail; the install script |
39 |
checks for certain kernel options to be enabled or disabled. The three |
40 |
options, as you can now see, are |
41 |
|
42 |
MTRR support must be enabled |
43 |
|
44 |
AGP support (/dev/agpgart) must be enabled (can be a module) |
45 |
|
46 |
DRM must be disabled |
47 |
|
48 |
So we got that far, then we get to this: |
49 |
|
50 |
>>>>Source unpacked. |
51 |
> |
52 |
> Building the DRM module... |
53 |
> make: Entering directory |
54 |
> `/usr/src/linux-2.6.12-gentoo-r6' |
55 |
> CC [M] |
56 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agp3.o |
57 |
> CC [M] |
58 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/nvidia-agp.o |
59 |
> CC [M] |
60 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.o |
61 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c: |
62 |
> In function `agp_find_supported_device': |
63 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7150: |
64 |
> error: structure has no member named `slot_name' |
65 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7170: |
66 |
> error: structure has no member named `slot_name' |
67 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7175: |
68 |
> error: structure has no member named `slot_name' |
69 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7201: |
70 |
> error: structure has no member named `slot_name' |
71 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7221: |
72 |
> error: structure has no member named `slot_name' |
73 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7241: |
74 |
> error: structure has no member named `slot_name' |
75 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:7246: |
76 |
> error: structure has no member named `slot_name' |
77 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:6542: |
78 |
> warning: unused variable `cap_ptr' |
79 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c: |
80 |
> At top level: |
81 |
> /var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.c:6523: |
82 |
> warning: `agp_check_supported_device' defined but not |
83 |
> used |
84 |
> make[1]: *** |
85 |
> [/var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod/agpgart_be.o] |
86 |
> Error 1 |
87 |
> make: *** |
88 |
> [_module_/var/tmp/portage/ati-drivers-8.12.10/work/lib/modules/fglrx/build_mod] |
89 |
> Error 2 |
90 |
> make: Leaving directory |
91 |
> `/usr/src/linux-2.6.12-gentoo-r6' |
92 |
> DRM module not built |
93 |
|
94 |
Now, I would first think the most likely cause of this error is that the |
95 |
drivers don't support 2.6.12, and that could possibly well be involved. |
96 |
|
97 |
But the error is totally in agpgart, and I suspect that it is due to an |
98 |
incomplete kernel configuration. |
99 |
|
100 |
What motherboard do you have? |
101 |
|
102 |
You see, agpgart often doesn't exist on its own in the kernel. Many |
103 |
motherboard chipsets 'speak their own language' as it were, and while |
104 |
the kernel can speak to them, it needs to be told 'who' it is speaking |
105 |
to so that it knows how to be understood by the motherboard. |
106 |
|
107 |
So if I enable /dev/agpgart in my kernel (as I must), I also have to |
108 |
enable one of the options that becomes available when I enable |
109 |
/dev/agpgart-- the kernel will not be able to communicate with my VIA |
110 |
KT266 chipset motherboard, if I do not also enable the VIA chipset |
111 |
support option, which will compile the via-agp module. |
112 |
|
113 |
And if the kernel can't talk to my motherboard, the ati-driver can't |
114 |
talk to the kernel and ask it what kind of card is connected to that AGP |
115 |
slot (because the kernel doesn't know, because it can't communicate with |
116 |
the motherboard). |
117 |
|
118 |
In fact, I can't use the internal agpgart compiled by the fglrx drivers |
119 |
(I have to set UseInternalAGPGART to 'no' in my xorg.conf), because the |
120 |
kernel needs its own module to talk to my mobo's AGP slot (and if the |
121 |
kernel can't talk to the AGP slot, then the drivers for the card in that |
122 |
slot are SOL). |
123 |
|
124 |
It's possible that you did not compile support for your motherboard's |
125 |
AGP chipset into the kernel (I find it works best as a module, loaded |
126 |
with /etc/modules.autoload.d, but it might be doable either way). It's |
127 |
very possible you need such support as well, especially if your chipset |
128 |
is one of the following (as you'll see, it covers a lot of very common |
129 |
motherboard chipsets): |
130 |
|
131 |
|
132 |
|
133 |
ALI chipset support |
134 |
|
135 |
ATI chipset support (this refers to ATI motherboards, not video cards) |
136 |
|
137 |
|
138 |
AMD Irongate, 761, and 762 chipset support |
139 |
|
140 |
AMD Opteron/Athlon64 on-CPU GART support |
141 |
|
142 |
Intel 440LX/BX/GX, I8xx and E7x05 chipset support |
143 |
|
144 |
NVIDIA nForce/nForce2 chipset support |
145 |
|
146 |
SiS chipset support |
147 |
|
148 |
Serverworks LE/HE chipset support |
149 |
|
150 |
|
151 |
Perhaps you didn't select it (a lot of people make that mistake), or |
152 |
perhaps the module isn't loaded for it (the driver install does, I |
153 |
believe, probe the AGP slot for information about the card, so there is |
154 |
a problem if it can't communicate with the slot because the necessary |
155 |
module to allow such communication is not loaded. There are a very few |
156 |
kernel modules that will fail to compile if the hardware that uses the |
157 |
driver is not present/available on the system. I've had new kernel |
158 |
compiles fail for that reason-- I was trying to 'plan for the future' |
159 |
and compile for hardware I didn't have yet. The kernel wouldn't have it, |
160 |
and I had to disable the modules until such time as I got the hardware, |
161 |
if I ever did. Interestingly, this occurred with attempting to add |
162 |
modules for TV cards, when I was thinking about getting one. Interesting |
163 |
because it seems to be 'a video thing' where this tends to happen). |
164 |
> |
165 |
> |
166 |
> But what's the best way to proceed? emerge seems happy |
167 |
> with the older(?) drivers. Shouldn't it be attempting |
168 |
> a download from somewhere, seeing as how I just did an |
169 |
> emerge sync and emerge -uD world a few days ago(that's |
170 |
> how I came by this 2.6.12 kernel)? |
171 |
|
172 |
|
173 |
Have you possibly masked more recent versions of the driver? 8.12.10 |
174 |
isn't even the most recent stable: |
175 |
|
176 |
eix ati-drivers |
177 |
* media-video/ati-drivers |
178 |
Available versions: 8.8.25-r3 8.10.19 8.12.10 [M]8.13.3 [M]8.13.4 |
179 |
8.14.13 8.14.13-r1 8.14.13-r2 [M]8.14.13-r3 8.16.20 |
180 |
Installed: 8.16.20 |
181 |
|
182 |
|
183 |
(yeah, I unmasked 8.16.20 again, to try an experiment. My hunch was |
184 |
right; and they seem to be working. But that's another story; ask me if |
185 |
you want to know what the trick was). |
186 |
|
187 |
Anyway, you should at least be able to get 8.14.13-r2 (stable for x86 |
188 |
and amd64). So if all Portage will offer is 8.12.10, I would suspect |
189 |
that it's because you told Portage not to offer you anything beyond |
190 |
that. Check /etc/portage/package.mask. |
191 |
|
192 |
I would recommend upgrading to 8.14.13, because it is patched to compile |
193 |
against 2.6.12 kernels, and that patch actually works well now (the |
194 |
driver was released with support only for 2.6.11 kernels, and the patch |
195 |
for 2.6.12 was.... rough.... at the start, but it did get itself |
196 |
together, and that's the patch used in 8.14.13-r2 (I speak from |
197 |
experience :) ). |
198 |
|
199 |
Anyway, hope this helps; the drivers are not good, exactly, but they're |
200 |
better than this (have been since around 8.12.10, actually; that's when |
201 |
I stopped having issues with installing them, though strictly speaking I |
202 |
never really had issues with installing them under Gentoo, unlike SuSE |
203 |
or Mandrake or Ubuntu. But then again, I've been installing these |
204 |
drivers since 3.2.8 on various distributions; I know a lot more about |
205 |
how my system needs to be configured to effectively interact with them |
206 |
than a new user might). |
207 |
|
208 |
'Course, that still doesn't get me textures in KotOR, but it ain't |
209 |
because the drivers don't run ;) . |
210 |
|
211 |
Holly |
212 |
-- |
213 |
gentoo-user@g.o mailing list |