On Tue, Nov 23, 1999 at 01:48:47PM +0100, Steffen Seeger wrote:
> Hello Johan,
> 
> > the Degas code however, is on a sorry state of disrepair, It's still missing
> > big parts of functionality and is so riddled with #warning and #error
> > statement that even thinking of compiling it would be a waste of time.
> > however, if somebody is interested in looking it over, feel free to do so.
> 
> Some comments from a really insane...
> 
> * all symbols visible with 'nm objectfile.o' should be prefixed with 
>   the metalanguage prefix. 
> 
        Aye, thiswill be cleaned out when I actaully consider compiling the
        thing ;)

> * Don't use pcicfg space for other purposes than initial configuration.
>   Especially do not use it in _mode_setup() to distinguish device versions.
>   Use flags or a chipset_version field in the <meta>_t structure instead.
> 
        This is in my new copy already, I made a paper <gasp> copy of the
        code and got a bit better overlook, this was one of the hideous
        things I noticed ;)

> * calc_partials() is a "permedianism". The Permedia can only accelerate 
>   frame buffers with certain widths. calc_partials() calculates the next 
>   supported width.

        Ok, great, that ellimantes that atleast, Matrox cards still need
        aligned framebuffers too, but those allignments are one liners.
> 
> * bpd, bpf, bpc and bpp refer to the number of bits per
>       {d}ot           (unit transfered to the dot port)
>       {f}rame         (unit stored per pixel and frame)
>       {c}ommon        (unit stored common to all frames)
>       {p}ixel         = bpc + (stereo ? 2 : 1) * frames * bpf
> 
        Got it.

> * Drivers must not share region information. E.g. you must not give the
>   DAC driver access to the memory control region claimed by the chipset
>   driver except through the DacOut() functions. If you have to access
>   indexed registers, declare a 'static inline' function in the 
>   ramdac/clock driver.
> 
        
        Ok, so the chipset driver defines a common DAC function that uses
        the pcibase control region, and the clock and ramdac each decalre
        an EDAC access that calls the shared DAC helper?

> * The kgi/ directory is reserved for kgi extension headers. 
>   Chipset register declarations should go to chipset/Matrox/Gx00.h in your 
>   case. This has the benefit you have them at hand where you work the 
>   most time.

        Ah, I just placed the headers in that directory out of a lack of a
        better place ;)
> 
> * I found it useful to convert the header to the naming conventions first.
>   Especially as this gives a good overview what registers do what.
> 
> These are the comments that came to mind when I had a quick glance over it
> yesterday. Keep asking/working on it!
> 
> Thanks,
> 

Ok, Thanks a lot for looking it over, I'll give it a major overhaul over
thanksgiving.

        Johan Karlberg

Reply via email to