[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a8de299f-0868-eef7-7bef-de8207900370@amd.com>
Date: Wed, 10 Aug 2022 09:23:50 -0400
From: Hamza Mahfooz <hamza.mahfooz@....com>
To: Lyude Paul <lyude@...hat.com>, linux-kernel@...r.kernel.org
Cc: Harry Wentland <harry.wentland@....com>,
Fangzhi Zuo <Jerry.Zuo@....com>, Wayne Lin <Wayne.Lin@....com>,
Aurabindo Pillai <aurabindo.pillai@....com>,
hersenxs.wu@....com, Leo Li <sunpeng.li@....com>,
Rodrigo Siqueira <Rodrigo.Siqueira@....com>,
Alex Deucher <alexander.deucher@....com>,
Christian König <christian.koenig@....com>,
"Pan, Xinhui" <Xinhui.Pan@....com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Mikita Lipski <mikita.lipski@....com>,
Claudio Suarez <cssk@...-c.es>,
Bhawanpreet Lakha <Bhawanpreet.Lakha@....com>,
Roman Li <Roman.Li@....com>, Ian Chen <ian.chen@....com>,
Colin Ian King <colin.king@...el.com>,
Nicholas Kazlauskas <nicholas.kazlauskas@....com>,
Thomas Zimmermann <tzimmermann@...e.de>,
Jani Nikula <jani.nikula@...el.com>,
Imran Khan <imran.f.khan@...cle.com>,
Ville Syrjälä <ville.syrjala@...ux.intel.com>,
Javier Martinez Canillas <javierm@...hat.com>,
Kees Cook <keescook@...omium.org>,
Imre Deak <imre.deak@...el.com>,
David Zhang <dingchen.zhang@....com>,
amd-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org
Subject: Re: [PATCH v2 1/3] drm/dp_mst: add passthrough_aux to struct
drm_dp_mst_port
On 2022-08-09 18:01, Lyude Paul wrote:
> Ah yes of course! Probably should have asked when I gave the r-b :). Also,
> just so patchwork actually catches it I will say the magic incantation:
>
> Reviewed-by: Lyude Paul <lyude@...hat.com>
>
> Do we want to merge just this patch to drm-misc-next, or do you want to merge
> the whole series through there? If you'd rather just merge this through amd's
> branch I'm fine with that as well
In that case, it is preferable to have all of the patches in this series
to get merged through amd's branch.
>
> On Tue, 2022-08-09 at 11:15 -0400, Hamza Mahfooz wrote:
>> Hey Lyude,
>>
>> On 2022-08-05 17:17, Lyude Paul wrote:
>>> lgtm!
>>>
>>
>> Any chance you can apply this to drm-misc-next?
>>
>>> Reviewed-by: Lyude Paul <lyude@...hat.com>
>>>
>>> On Fri, 2022-08-05 at 17:13 -0400, Hamza Mahfooz wrote:
>>>> Currently, there is no way to identify if DSC pass-through can be
>>>> enabled and what aux DSC pass-through requests ought to be sent to. So,
>>>> add a variable to struct drm_dp_mst_port that keeps track of the
>>>> aforementioned information.
>>>>
>>>> Signed-off-by: Hamza Mahfooz <hamza.mahfooz@....com>
>>>> ---
>>>> v2: define DP_DSC_PASSTHROUGH_IS_SUPPORTED
>>>> ---
>>>> drivers/gpu/drm/display/drm_dp_mst_topology.c | 4 +++-
>>>> include/drm/display/drm_dp.h | 1 +
>>>> include/drm/display/drm_dp_mst_helper.h | 3 +++
>>>> 3 files changed, 7 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c b/drivers/gpu/drm/display/drm_dp_mst_topology.c
>>>> index 67b3b9697da7..71915afd9892 100644
>>>> --- a/drivers/gpu/drm/display/drm_dp_mst_topology.c
>>>> +++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c
>>>> @@ -5921,8 +5921,10 @@ struct drm_dp_aux *drm_dp_mst_dsc_aux_for_port(struct drm_dp_mst_port *port)
>>>> /* Enpoint decompression with DP-to-DP peer device */
>>>> if ((endpoint_dsc & DP_DSC_DECOMPRESSION_IS_SUPPORTED) &&
>>>> (endpoint_fec & DP_FEC_CAPABLE) &&
>>>> - (upstream_dsc & 0x2) /* DSC passthrough */)
>>>> + (upstream_dsc & DP_DSC_PASSTHROUGH_IS_SUPPORTED)) {
>>>> + port->passthrough_aux = &immediate_upstream_port->aux;
>>>> return &port->aux;
>>>> + }
>>>>
>>>> /* Virtual DPCD decompression with DP-to-DP peer device */
>>>> return &immediate_upstream_port->aux;
>>>> diff --git a/include/drm/display/drm_dp.h b/include/drm/display/drm_dp.h
>>>> index 9e3aff7e68bb..4d0abe4c7ea9 100644
>>>> --- a/include/drm/display/drm_dp.h
>>>> +++ b/include/drm/display/drm_dp.h
>>>> @@ -239,6 +239,7 @@
>>>>
>>>> #define DP_DSC_SUPPORT 0x060 /* DP 1.4 */
>>>> # define DP_DSC_DECOMPRESSION_IS_SUPPORTED (1 << 0)
>>>> +# define DP_DSC_PASSTHROUGH_IS_SUPPORTED (1 << 1)
>>>>
>>>> #define DP_DSC_REV 0x061
>>>> # define DP_DSC_MAJOR_MASK (0xf << 0)
>>>> diff --git a/include/drm/display/drm_dp_mst_helper.h b/include/drm/display/drm_dp_mst_helper.h
>>>> index 10adec068b7f..4a39c95f8afd 100644
>>>> --- a/include/drm/display/drm_dp_mst_helper.h
>>>> +++ b/include/drm/display/drm_dp_mst_helper.h
>>>> @@ -86,6 +86,8 @@ struct drm_dp_vcpi {
>>>> * @next: link to next port on this branch device
>>>> * @aux: i2c aux transport to talk to device connected to this port, protected
>>>> * by &drm_dp_mst_topology_mgr.base.lock.
>>>> + * @passthrough_aux: parent aux to which DSC pass-through requests should be
>>>> + * sent, only set if DSC pass-through is possible.
>>>> * @parent: branch device parent of this port
>>>> * @vcpi: Virtual Channel Payload info for this port.
>>>> * @connector: DRM connector this port is connected to. Protected by
>>>> @@ -140,6 +142,7 @@ struct drm_dp_mst_port {
>>>> */
>>>> struct drm_dp_mst_branch *mstb;
>>>> struct drm_dp_aux aux; /* i2c bus for this port? */
>>>> + struct drm_dp_aux *passthrough_aux;
>>>> struct drm_dp_mst_branch *parent;
>>>>
>>>> struct drm_dp_vcpi vcpi;
>>>
>>
>
--
Hamza
Powered by blists - more mailing lists