I just split out heads as a separate data structure from drm_device. I
gave this a couple of hours of testing in different configurations but
I may have missed something. Please let me know.

I probably haven't figured out all of the variables that need to be
moved from drm_device to drm_head. If anyone is interested check out
drmP.h and tell me other candidates to be moved. At least I have the
basic structure split out, moving individual variables is easy.

The three main structures:
drm_driver - one per class of cards
drm_device - one for each physical card
drm_head - one for each head on a card

Heads need to track:
minor number
proc entry - one per card or per head?
sysfs entry

For framebuffer merge they also need:
legal mode list
current mode
location of scanout buffer
size of buffer

Merging DRM and fbdev is much more complicated than I though it was.
Neither fbdev or current DRM data structures are set up for multi-head
support. Both drivers need significant rework to support multihead.
Take for example struct fb_info, half of these variable are needed for
each head and half need to be only one per card.

struct fb_info {
        int node;  -per card
        int flags;  -per card
        struct fb_var_screeninfo var;  -per head
        struct fb_fix_screeninfo fix;  -per card
        struct fb_monspecs monspecs;  -per head
        struct fb_cursor cursor;  -per head
        struct work_struct queue;  -per card
        struct timer_list cursor_timer;  -per card
        struct fb_pixmap pixmap;  -per card
        struct fb_pixmap sprite;  -per card
        struct fb_cmap cmap;  -per head
        struct list_head modelist;  -per head
        struct fb_ops *fbops;  -per card
        char __iomem *screen_base;  -per head
        unsigned long screen_size;  -per head
        int currcon;  -per head
        void *pseudo_palette;  -per head
        u32 state;  -per card
};

-- 
Jon Smirl
[EMAIL PROTECTED]


-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl
--
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to