Gentoo Archives: gentoo-dev

From: Ferris McCormick <fmccor@g.o>
To: Donnie Berkholz <spyderous@g.o>
Cc: gentoo-dev@l.g.o, sparc@g.o
Subject: Re: [gentoo-dev] Modular X plans
Date: Thu, 11 Aug 2005 00:30:03
Message-Id: Pine.LNX.4.63.0508102351170.22642@terciopelo.krait.us
In Reply to: Re: [gentoo-dev] Modular X plans by Donnie Berkholz
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA1
3
4 On Wed, 10 Aug 2005, Donnie Berkholz wrote:
5
6 > --[PinePGP]--------------------------------------------------[begin]--
7 > Ferris McCormick wrote:
8 > | I wrote the note very fast, and it was not too clear. With sunffb, the
9 > | kernel code for current 2.6.x (x > 6) is broken, and davem has taken dri
10 > | support out of the xorg sunffb driver (to paraphrase him, you can't do
11 > | both drm and correct font rendering).
12 >
13 > OK, it might be nice to bring alanh in on this conversation since he
14 > recently fixed up the ffb DRI code, also to retest with the new code.
15 >
16
17 Probably. Kernel seems to be changing so quickly now that as soon as the
18 ffb DRI code gets fixed, the kernel changes out from under it. So when we
19 get to 2.6.13-rcxx, I have problems building it and have nothing to test
20 it on. (I am really not interested in kernel-2.4.30+, because one of
21 these days davem really will fix kernel-2.6.82 (or something) for sparc,
22 and we can start burying the 2.4.xx series. I am speaking for myself,
23 here, but I don't think sparc is hanging on to kernel-2.4.xx because we
24 are in love with it.)
25
26 > And as far as davem taking out DRI from the DDX code, that seems
27 easy
28 > enough to re-enable and test again -- just #if 0 changed back to XF86DRI.
29 >
30 > donnie@supernova
31 > /usr/local/share/xorg/modular/driver/xf86-video-sunffb/src $ grep -i
32 > xf86dri *
33 > ffb_dri.c:#define _XF86DRI_SERVER_
34 > ffb_driver.c:/*#ifdef XF86DRI*/
35 > ffb_driver.c:#if 0 /*def XF86DRI*/
36 > ffb_driver.c:#if 0 /*def XF86DRI*/
37 > ffb_driver.c:#if 0 /*def XF86DRI*/
38 > ffb.h:#ifdef XF86DRI
39 > ffb.h:#ifdef XF86DRI
40 > ffb.h:#ifdef XF86DRI
41 > ffb.h:#ifdef XF86DRI
42 >
43
44 Yes, it's easy enough to re-enable. I haven't tried it yet, though,
45 because I have figured davem had a good reason to disable it, and I
46 generally trust his knowledge on such matters. So discovering what
47 that reason is has been pretty low priority. (I don't know if anyone
48 else has tested or not. The question comes up every now and then,
49 and so far my response has been (tongue in cheek) along the
50 lines of your observation along with a request "If you try this, we'd all
51 like to know how it goes.")
52
53 > | With mach64, the problem on sparc has been the hardware itself, if I
54 > | remember correctly. That is, kernel, xorg are fine, but the mach64 card
55 > | used on U5/U10 is memory-deficient. Someone who has looked at it more
56 > | recently than I have will correct this. (There is a mach64-based sparc
57 > | frame buffer which should be OK for DRI, but I've never seen one. I'll
58 > | chase it down in the framebuffer handbook a little later.)
59 >
60 > My u5 works just fine with DRI at 800x600 resolution, 16-bit color. Any
61 > higher than this and you're right, not enough memory.
62
63 That is new information for me; I had been led to believe otherwise, and
64 I have not been in a position to verify for myself. Thanks.
65
66 >
67 > | Changing DRI_DIRS is exactly what I did.
68 >
69 > Not really...
70 >
71 > DRIVER_DIRS != DRI_DIRS
72 >
73
74 Yes. I answered you without reading carefully.
75
76 > e.g., DRIVER_DIRS = dri, DRI_DIRS = mach64 ffb
77 >
78
79 You are correct, of course. Actually, there should probably be a
80 corresponding dri driver for each sparc-enabled frame buffer, which makes
81 it something like "mach64 ffb savage ..."
82
83 The actual ebuild will have to be a bit more subtle than my immediate
84 patch-to-enable-assembly+get-to-testable for the following reason:
85
86 It always makes sense to enable glx (Mesa) whether there is DRI support or
87 not; some applications can run adequately well using the Mesa-indirect
88 approach, and some graphics cards --- e.g., Elite == afb --- don't allow
89 dri at all. That is what (for sparc, at least) USE=glx should control.
90 On some systems, however, like your U5+mach64, it is beneficial to build
91 the xxxx_dri.so module. That is what the USE=dri flag (on sparc)
92 should control. So, USE=dri without also USE=glx does not make any sense
93 on sparc, but USE="glx -dri" is required for, say, Elite-graphics systems
94 for which one does want libGL built (Like my SB1000+afb system, which is
95 fast enough to do reasonable glx-like things (e.g., blender), but can't do
96 dri at all). Further, there is no way for the ebuild to determine for
97 itself just what case it is addressing.
98
99 So, ultimately, the mesa ebuild should work as you have it if it is given
100 USE="dri glx", but it should build sparc-specific modules. However, it it
101 gets USE="-dri glx", it should arrange to build libGL stand-alone, because
102 the user is saying in effect "I do want mesa/openGL installed, but I am
103 unable to support DRI", and mesa can be built that way. This requires, I
104 think, the ebuild to determine the HOSTCONFIG for sparc based on whether
105 or not it has USE=dri, and to go on and set a sensible DRI_DIRS for the
106 USE=dri case. In all cases, the CFLAGS, SPARC_ASM, etc. should be set up
107 as they are now.
108
109 I hope this isn't too incoherent; this has been a hectic day.
110 Regards,
111 Ferris
112
113 - --
114 Ferris McCormick (P44646, MI) <fmccor@g.o>
115 Developer, Gentoo Linux (sparc, devrel)
116 -----BEGIN PGP SIGNATURE-----
117 Version: GnuPG v1.4.1 (GNU/Linux)
118
119 iD8DBQFC+ptFQa6M3+I///cRAja3AJ93r592HPu8k9riqsvhJEDGz+ZntACgjqOv
120 Q13+BsRVaZ2v4xoa4Pvi/B0=
121 =nCQQ
122 -----END PGP SIGNATURE-----
123 --
124 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] Modular X plans Donnie Berkholz <spyderous@g.o>
Re: [gentoo-dev] Modular X plans Jason Wever <weeve@g.o>