Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1671496
| From | Michel Dänzer <michel@daenzer.net> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [Nouveau] [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set |
| Date | 2017-06-21 10:40 +0200 |
| Message-ID | <tUJl7-3Kj-3@gated-at.bofh.it> (permalink) |
| References | <tUIp4-38j-21@gated-at.bofh.it> <tUIp4-38j-23@gated-at.bofh.it> <tUIp4-38j-19@gated-at.bofh.it> <tUIS7-3AK-25@gated-at.bofh.it> <tUJ1M-3E2-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 21/06/17 05:14 PM, Daniel Vetter wrote:
> On Wed, Jun 21, 2017 at 04:59:31PM +0900, Michel Dänzer wrote:
>> On 21/06/17 04:38 PM, Daniel Vetter wrote:
>>> On Tue, Jun 20, 2017 at 09:25:25PM +0200, Peter Rosin wrote:
>>>> This makes the redundant fb helpers .load_lut, .gamma_set and .gamma_get
>>>> totally obsolete.
>>>>
>>>> I think the gamma_store can end up invalid on error. But the way I read
>>>> it, that can happen in drm_mode_gamma_set_ioctl as well, so why should
>>>> this pesky legacy fbdev stuff be any better?
>>>>
>>>> drm_fb_helper_save_lut_atomic justs saves the gamma lut for later. However,
>>>> it saves it to the gamma_store which should already be up to date with what
>>>> .gamma_get would return and is thus a nop. So, zap it.
>>>
>>> Removing drm_fb_helper_save_lut_atomic should be a separate patch I
>>> think.
>>>
>>>> Signed-off-by: Peter Rosin <peda@axentia.se>
>>
>> [...]
>>
>>>> @@ -1167,50 +1150,6 @@ void drm_fb_helper_set_suspend_unlocked(struct drm_fb_helper *fb_helper,
>>>> }
>>>> EXPORT_SYMBOL(drm_fb_helper_set_suspend_unlocked);
>>>>
>>>> -static int setcolreg(struct drm_crtc *crtc, u16 red, u16 green,
>>>> - u16 blue, u16 regno, struct fb_info *info)
>>>> -{
>>>> - struct drm_fb_helper *fb_helper = info->par;
>>>> - struct drm_framebuffer *fb = fb_helper->fb;
>>>> -
>>>> - if (info->fix.visual == FB_VISUAL_TRUECOLOR) {
>>>
>>> This case here seems gone, and it was also the pièce de résistance when I
>>> tried tackling fbdev lut support. As far as I understand this stuff we do
>>> not support FB_VISUAL_TRUECOLOR palette, and all that bitshifting here is
>>> pointless. But I'm honestly not really clear.
>>>
>>> I think removing this case should also be a separate patch, and I'd very
>>> much prefer that someone with some fbdev-clue would ack it.
>>
>> No need for anyone with fbdev-clue, just run fbset -i. :)
Adding Bartlomiej and the linux-fbdev list, just in case I'm wrong below.
>> fbcon uses a TRUECOLOR visual at depths > 8.
>
> Then I understand even less what exactly this code does ... Should we keep
> it?
I think we need it. It updates the entries of info->pseudo_palette,
which is kind of a pseudocolor palette mapping 16 indices to pixel
values to write to the framebuffer.
If the setcolreg hook is removed, the setcmap hook needs to do this instead.
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Mesa and X developer
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Daniel Vetter <daniel@ffwll.ch> - 2017-06-21 09:40 +0200
Re: [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Michel Dänzer <michel@daenzer.net> - 2017-06-21 10:10 +0200
Re: [Nouveau] [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Daniel Vetter <daniel@ffwll.ch> - 2017-06-21 10:20 +0200
Re: [Nouveau] [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Michel Dänzer <michel@daenzer.net> - 2017-06-21 10:40 +0200
Re: [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Daniel Vetter <daniel@ffwll.ch> - 2017-06-22 08:40 +0200
Re: [PATCH 01/11] drm/fb-helper: do a generic fb_setcmap helper in terms of crtc .gamma_set Daniel Vetter <daniel@ffwll.ch> - 2017-06-23 10:50 +0200
csiph-web