[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9e60dfa4-b648-8005-2cf3-f993dddf57a6@collabora.com>
Date: Mon, 27 Jun 2022 12:19:07 +0200
From: AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>
To: Bo-Chen Chen <rex-bc.chen@...iatek.com>, chunkuang.hu@...nel.org,
p.zabel@...gutronix.de, daniel@...ll.ch, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, mripard@...nel.org,
tzimmermann@...e.de, matthias.bgg@...il.com, deller@....de,
airlied@...ux.ie
Cc: msp@...libre.com, granquet@...libre.com, jitao.shi@...iatek.com,
wenst@...omium.org, ck.hu@...iatek.com,
dri-devel@...ts.freedesktop.org,
linux-mediatek@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-fbdev@...r.kernel.org,
Project_Global_Chrome_Upstream_Group@...iatek.com
Subject: Re: [PATCH v12 07/10] drm/mediatek: add hpd debounce
Il 27/06/22 10:03, Bo-Chen Chen ha scritto:
> From: Jitao Shi <jitao.shi@...iatek.com>
>
> From the DP spec 1.4a chapter 3.3, upstream devices should implement
> HPD signal de-bouncing on an external connection.
> A period of 100ms should be used to detect an HPD connect event.
> To cover these cases, HPD de-bounce should be implemented only after
> HPD low has been detected for at least 100ms.
>
> Therefore,
> 1. If HPD is low (which means plugging out) for longer than 100ms:
> we need to do de-bouncing (which means we need to wait for 100ms).
> 2. If HPD low is for less than 100ms:
> we don't need to care about the de-bouncing.
>
> In this patch, we start a 100ms timer and use a need_debounce boolean
> to implement the feature.
>
> Two cases when HPD is high:
> 1. If the timer is expired (>100ms):
> - need_debounce is true.
> - When HPD high (plugging event comes), need_debounce will be true
> and then we need to do de-bouncing (wait for 100ms).
> 2. If the timer is not expired (<100ms):
> - need_debounce is false.
> - When HPD high (plugging event comes), need_debounce will be false
> and no need to do de-bouncing.
>
> HPD_______ __________________
> | |<- 100ms ->
> |____________|
> <- 100ms ->
>
> Without HPD de-bouncing, USB-C to HDMI Adapaters will not be detected.
>
> The change has been successfully tested with the following devices:
> - Dell Adapter - USB-C to HDMI
> - Acer 1in1 HDMI dongle
> - Ugreen 1in1 HDMI dongle
> - innowatt HDMI + USB3 hub
> - Acer 2in1 HDMI dongle
> - Apple 3in1 HDMI dongle (A2119)
> - J5Create 3in1 HDMI dongle (JAC379)
>
> Tested-by: Rex-BC Chen <rex-bc.chen@...iatek.com>
> Reviewed-by: Rex-BC Chen <rex-bc.chen@...iatek.com>
> Signed-off-by: Jitao Shi <jitao.shi@...iatek.com>
> Signed-off-by: Guillaume Ranquet <granquet@...libre.com>
> Signed-off-by: Bo-Chen Chen <rex-bc.chen@...iatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@...labora.com>
Powered by blists - more mailing lists