Re: [git pull] drm for rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 14, 2011 at 8:40 PM, Anca Emanuel <anca.emanuel@xxxxxxxxx> wrote:
> On Fri, Jan 14, 2011 at 8:26 PM, James Simmons <jsimmons@xxxxxxxxxxxxx> wrote:
>>
>>> > Just as I thought. Even this breaks the nouveau driver.
>>> >
>>> > Could you now add also in the drm_fb_helper_fill_fix function
>>> >
>>> > DRM_INFO("pitch %d, depth %d\n", fb_helper->fb->pitch,
>>> >          fb_helper->fb->depth);
>>> >
>>> > I have a feeling the values are not right. Thanks.
>>> >
>>>
>>> Please make an patch to test.
>>
>> Done. I had to test the patch myself. No need to do a revert. Just apply
>> this patch to linus tree. Then send the dmesg to me. Thanks.
>>
>> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
>> index 0307d60..beded14 100644
>> --- a/drivers/gpu/drm/drm_fb_helper.c
>> +++ b/drivers/gpu/drm/drm_fb_helper.c
>> @@ -609,6 +609,7 @@ EXPORT_SYMBOL(drm_fb_helper_fini);
>>
>>  void drm_fb_helper_fill_fix(struct fb_info *info, struct drm_framebuffer *fb)
>>  {
>> +       DRM_INFO("pitch %d, depth %d\n", fb->pitch, fb->depth);
>>        info->fix.type = FB_TYPE_PACKED_PIXELS;
>>        info->fix.visual = fb->depth == 8 ? FB_VISUAL_PSEUDOCOLOR :
>>                FB_VISUAL_TRUECOLOR;
>> @@ -973,7 +974,6 @@ int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper,
>>
>>        if (new_fb) {
>>                info->var.pixclock = 0;
>> -               drm_fb_helper_fill_fix(info, fb_helper->fb);
>>                if (register_framebuffer(info) < 0) {
>>                        return -EINVAL;
>>                }
>> diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
>> index a26d047..fe87319 100644
>> --- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c
>> +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c
>> @@ -359,6 +359,7 @@ nouveau_fbcon_create(struct nouveau_fbdev *nfbdev,
>>        info->screen_base = nvbo_kmap_obj_iovirtual(nouveau_fb->nvbo);
>>        info->screen_size = size;
>>
>> +       drm_fb_helper_fill_fix(info, fb);
>>        drm_fb_helper_fill_var(info, &nfbdev->helper, sizes->fb_width, sizes->fb_height);
>>
>>        /* Set aperture base/size for vesafb takeover */
>
> I will test it, but first, I will need to disable the cassini driver,
> because it can not compile.
>

I will test this first:

diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index 0307d60..beded14 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -609,6 +609,7 @@ EXPORT_SYMBOL(drm_fb_helper_fini);

 void drm_fb_helper_fill_fix(struct fb_info *info, struct drm_framebuffer *fb)
 {
+       DRM_INFO("pitch %d, depth %d\n", fb->pitch, fb->depth);
        info->fix.type = FB_TYPE_PACKED_PIXELS;
        info->fix.visual = fb->depth == 8 ? FB_VISUAL_PSEUDOCOLOR :
                FB_VISUAL_TRUECOLOR;
@@ -973,7 +974,6 @@ int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_h

        if (new_fb) {
                info->var.pixclock = 0;
-               drm_fb_helper_fill_fix(info, fb_helper->fb);
                if (register_framebuffer(info) < 0) {
                        return -EINVAL;
                }
diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/n
index a26d047..3896771 100644
--- a/drivers/gpu/drm/nouveau/nouveau_fbcon.c
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index 0307d60..beded14 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -609,6 +609,7 @@ EXPORT_SYMBOL(drm_fb_helper_fini);

 void drm_fb_helper_fill_fix(struct fb_info *info, struct drm_framebuffer *fb)
 {
+       DRM_INFO("pitch %d, depth %d\n", fb->pitch, fb->depth);
        info->fix.type = FB_TYPE_PACKED_PIXELS;
        info->fix.visual = fb->depth == 8 ? FB_VISUAL_PSEUDOCOLOR :
                FB_VISUAL_TRUECOLOR;
@@ -973,7 +974,6 @@ int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_h

        if (new_fb) {
                info->var.pixclock = 0;
-               drm_fb_helper_fill_fix(info, fb_helper->fb);
                if (register_framebuffer(info) < 0) {
                        return -EINVAL;
                }
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux