Re: [PATCH 2/2] m68k/atari - atafb: convert allocation of fb ram to new interface

schmitz
2014-03-22T07:37:17Z

Hi Geert,
>>> I guess it dies in register_framebuffer() - the next log entry is
>>> missing:
>>>
>>> fb_info(&fb_info, "frame buffer device, using %dK of video
>>> memory\n",
>>> screen_len >> 10);
>>>
>>
>> And register_framebuffer() will write to the frame buffer, I think.
>> So info->screen_base may be incorrect.
>>
>> Yep:
>>
>> static void atafb_set_disp(struct fb_info *info)
>> {
>> atafb_get_var(&info->var, info);
>> atafb_get_fix(&info->fix, info);
>>
>> info->screen_base = (void *)info->fix.smem_start;
>> }
>>
>> Missing atari_stram_to_virt().
>>
>
> Should have had phys_to_virt() before I guess. Thanks.

Bingo!

>
>> Any other casts that indicate bugs? ;-)
>>
>
> Probably - I'll go over the source again. My port of atafb a few years
> back was none too subtle.
>

Only a few more - in the external VGA adapter code, in the ioctl code
(copy tp/from user) and one in the atafb_imageblit() that I'm fairly
sure is dead code.

ARAnyM is happy - I'll have yet to see how this works on real hardware.
We might yet need a writethrough mapping for performance.

In the interest of minimizing casts, I'll rewrite the virt/phys
translation helpers and clean up the rest of the code a bit more. Saves
a bit of headache when I need to revisit this code in another decade or
so :-)

Thanks again for your help in tracking this down.

Cheers,

Michael