Thread (3 messages) 3 messages, 3 authors, 2002-07-05

Re: [PATCH] fbdev updates.

flat view

From: James Simmons <hidden>
Date: 2002-07-05 17:14:23

First, I detest the idea of "fix", "var", "par" and "info".  Specifically
the "par" crap. Intensely.
   Why? Should each driver have their own structs that are completely
different then? In this case you would be better off doing something like
newport_con.c.

    We pretty much have this today. Each driver has so much excess code
because they want to create their own special structs. Lost of bloat for
no reason! I will NOT put up with that anymore!!!! Sorry!
"par" and "info" should be combined IMO,
which my framebuffer drivers do.
No!!!! This is one of the reasons we have the mess we have!! Look at how
much code that could be removed from the standard drivers into fbmem.c and
fbcon.c.

We should have
					 focus on
struct vc_data    struct fb_info         struct xxx_par

[ fbcon.c]        [ fbmem.c]             [ fbdev driver ]

This makes for a nice modular system. It allows for fbdev to exist without
fbcon. Ideally fbmem could even be modular. Insmod the core driver.
Insmod fbmem.o and you have the fbdev interface. You could then rmmod
fbmem.o and do dri.o. Now with the same core driver you have the DRI
interface. Or you could do both drivers at the same time. Eventually I
will combine both interfaces but that will take some time.
Secondly, I think you're completely confused above.  lccr0 and lccr3 have
nothing to do with some "generic struct fb_info".  They hold the base
register values for two of the SA1100 control registers.

Thirdly, you didn't delete them.  You _moved_ them within the structure.
They therefore served zero functional purpose.
If you could send me a patch I would be happy.
Fourthly, nothing but the sa1100fb driver has any business accessing the
elements around these two both before and after the move.
True which is why things like that go into par.
Ehh?  That's got nothing to do with cpufreq.  The reason we have the
cpufreq interface in sa1100fb is that the base clock rate for the LCD
controller on this chip is derived from the CPU core clock.  You change
the core clock, you have to reprogram the pixel clock divisor.
Other devices besides the SA1100 does this as well. I knew this and this
reason lead me to originally place it into struct fb_info. Later I
realized it was a bad idea.





-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Bringing you mounds of caffeinated joy.
http://thinkgeek.com/sf
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help