Re: [PATCH] drm/radeon/kms/atom: initialize dig phy a bit later

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

 



On Fri, Jun 3, 2011 at 4:03 PM, Ari Savolainen
<ari.m.savolainen@xxxxxxxxx> wrote:
> I'm using ASUS EAH3650SILENTMG/HTDP.
>
> I got the feeling that in my case, radeon_atom_encoder_prepare needed to be
> called before radeon_atom_encoder_init (the call occurred during
> radeon_fbdev_init). That ensured radeon_encoder->enc_priv->dig_encoder to have
> a value other than -1 in the first call of atombios_dig_transmitter_setup (with
> action=ATOM_TRANSMITTER_ACTION_INIT).  But I don't know the code well enough to
> be sure about that.

NACK on the patch for now.  Let's try and sort this out.  INIT needs
to be called before the mode is set, so this needs to come before
fbdev sets the mode.  I'll send out a patch soon.

Alex

>
> Ari
>
> 2011/6/3 Alex Deucher <alexdeucher@xxxxxxxxx>:
>> On Thu, Jun 2, 2011 at 5:20 PM, Ari Savolainen
>> <ari.m.savolainen@xxxxxxxxx> wrote:
>>> Commit ac89af1e1010640db072416c786f97391b85790f caused one of the monitors
>>> attached to a dual head radeon gpu to have inverted colors (until the first
>>> suspend/resume). Initializing dig phy a bit later fixes the problem.
>>
>> Strange, I don't see why that would make a difference, I guess perhaps
>> there's some strange interaction between the hpd setup or the initial
>> clock/voltage setup on DCE5 hw.  What chip are you using?
>>
>> Anyway, should be fine.
>>
>> Acked-by: Alex Deucher <alexdeucher@xxxxxxxxx>
>>
>>>
>>> ---
>>>  drivers/gpu/drm/radeon/radeon_display.c |    8 ++++----
>>>  1 files changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/radeon/radeon_display.c
>>> b/drivers/gpu/drm/radeon/radeon_display.c
>>> index ae247ee..ddff2cf 100644
>>> --- a/drivers/gpu/drm/radeon/radeon_display.c
>>> +++ b/drivers/gpu/drm/radeon/radeon_display.c
>>> @@ -1346,10 +1346,6 @@ int radeon_modeset_init(struct radeon_device *rdev)
>>>                return ret;
>>>        }
>>>
>>> -       /* init dig PHYs */
>>> -       if (rdev->is_atom_bios)
>>> -               radeon_atom_encoder_init(rdev);
>>> -
>>>        /* initialize hpd */
>>>        radeon_hpd_init(rdev);
>>>
>>> @@ -1359,6 +1355,10 @@ int radeon_modeset_init(struct radeon_device *rdev)
>>>        radeon_fbdev_init(rdev);
>>>        drm_kms_helper_poll_init(rdev->ddev);
>>>
>>> +       /* init dig PHYs */
>>> +       if (rdev->is_atom_bios)
>>> +               radeon_atom_encoder_init(rdev);
>>> +
>>>        return 0;
>>>  }
>>>
>>> --
>>> 1.7.4.1
>>>
>>
>
_______________________________________________
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