mbox series

[PATCHv4,00/24] drm/bridge: tc358767: DP support

Message ID 20190528082747.3631-1-tomi.valkeinen@ti.com
Headers show
Series drm/bridge: tc358767: DP support | expand

Message

Tomi Valkeinen May 28, 2019, 8:27 a.m. UTC
Hi,

tc358767 bridge was originally implemented for eDP use with an embedded
panel. I've been working to add DP and HPD support, and this series is
the result. I did have a lot of issues with link training, but with
these, it's been working reliably with my devices.

Changes in v2
* Drop "implement naive HPD handling", and implement HPD interrupt handling.

Changes in v3
* Various small comment, description and formatting changes
* 'hpd-num' DT property renamed to 'toshiba,hpd-pin'
* Check DP0CTL == 0 at the beginning of tc_main_link_enable
* Disable only the video stream in tc_stream_disable()
* Fix tc_connector_detect for eDP panels

Changes in v4
* Add "read display_props in get_modes()"
* Remove the tc_get_display_props call from detect callback
* Fix the DP0CTL check in tc_main_link_enable. Only check for DP_EN bit,
  as we can have other bits set (e.g. after reset VID_MN_GEN is set)
* Added some reviewed-bys

 Tomi

Tomi Valkeinen (24):
  drm/bridge: tc358767: fix tc_aux_get_status error handling
  drm/bridge: tc358767: reset voltage-swing & pre-emphasis
  drm/bridge: tc358767: fix ansi 8b10b use
  drm/bridge: tc358767: cleanup spread & scrambler_dis
  drm/bridge: tc358767: remove unused swing & preemp
  drm/bridge: tc358767: cleanup aux_link_setup
  drm/bridge: tc358767: move video stream setup to tc_main_link_stream
  drm/bridge: tc358767: split stream enable/disable
  drm/bridge: tc358767: move PXL PLL enable/disable to stream
    enable/disable
  drm/bridge: tc358767: add link disable function
  drm/bridge: tc358767: disable only video stream in tc_stream_disable
  drm/bridge: tc358767: ensure DP is disabled before LT
  drm/bridge: tc358767: remove unnecessary msleep
  drm/bridge: tc358767: use more reliable seq when finishing LT
  drm/bridge: tc358767: cleanup LT result check
  drm/bridge: tc358767: clean-up link training
  drm/bridge: tc358767: remove check for video mode in link enable
  drm/bridge: tc358767: use bridge mode_valid
  drm/bridge: tc358767: remove tc_connector_best_encoder
  drm/bridge: tc358767: copy the mode data, instead of storing the
    pointer
  drm/bridge: tc358767: read display_props in get_modes()
  drm/bridge: tc358767: add GPIO & interrupt registers
  drm/bridge: tc358767: add IRQ and HPD support
  dt-bindings: tc358767: add HPD support

 .../display/bridge/toshiba,tc358767.txt       |   1 +
 drivers/gpu/drm/bridge/tc358767.c             | 593 +++++++++++-------
 2 files changed, 382 insertions(+), 212 deletions(-)

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

Comments

Andrzej Hajda May 31, 2019, 1:53 p.m. UTC | #1
On 28.05.2019 10:27, Tomi Valkeinen wrote:
> Hi,
>
> tc358767 bridge was originally implemented for eDP use with an embedded
> panel. I've been working to add DP and HPD support, and this series is
> the result. I did have a lot of issues with link training, but with
> these, it's been working reliably with my devices.
>
> Changes in v2
> * Drop "implement naive HPD handling", and implement HPD interrupt handling.
>
> Changes in v3
> * Various small comment, description and formatting changes
> * 'hpd-num' DT property renamed to 'toshiba,hpd-pin'
> * Check DP0CTL == 0 at the beginning of tc_main_link_enable
> * Disable only the video stream in tc_stream_disable()
> * Fix tc_connector_detect for eDP panels
>
> Changes in v4
> * Add "read display_props in get_modes()"
> * Remove the tc_get_display_props call from detect callback
> * Fix the DP0CTL check in tc_main_link_enable. Only check for DP_EN bit,
>   as we can have other bits set (e.g. after reset VID_MN_GEN is set)
> * Added some reviewed-bys
>
>  Tomi
>
> Tomi Valkeinen (24):
>   drm/bridge: tc358767: fix tc_aux_get_status error handling
>   drm/bridge: tc358767: reset voltage-swing & pre-emphasis
>   drm/bridge: tc358767: fix ansi 8b10b use
>   drm/bridge: tc358767: cleanup spread & scrambler_dis
>   drm/bridge: tc358767: remove unused swing & preemp
>   drm/bridge: tc358767: cleanup aux_link_setup
>   drm/bridge: tc358767: move video stream setup to tc_main_link_stream
>   drm/bridge: tc358767: split stream enable/disable
>   drm/bridge: tc358767: move PXL PLL enable/disable to stream
>     enable/disable
>   drm/bridge: tc358767: add link disable function
>   drm/bridge: tc358767: disable only video stream in tc_stream_disable
>   drm/bridge: tc358767: ensure DP is disabled before LT
>   drm/bridge: tc358767: remove unnecessary msleep
>   drm/bridge: tc358767: use more reliable seq when finishing LT
>   drm/bridge: tc358767: cleanup LT result check
>   drm/bridge: tc358767: clean-up link training
>   drm/bridge: tc358767: remove check for video mode in link enable
>   drm/bridge: tc358767: use bridge mode_valid
>   drm/bridge: tc358767: remove tc_connector_best_encoder
>   drm/bridge: tc358767: copy the mode data, instead of storing the
>     pointer
>   drm/bridge: tc358767: read display_props in get_modes()
>   drm/bridge: tc358767: add GPIO & interrupt registers
>   drm/bridge: tc358767: add IRQ and HPD support
>   dt-bindings: tc358767: add HPD support
>
>  .../display/bridge/toshiba,tc358767.txt       |   1 +
>  drivers/gpu/drm/bridge/tc358767.c             | 593 +++++++++++-------
>  2 files changed, 382 insertions(+), 212 deletions(-)


Queued to drm-misc-next.


Regards

Andrzej



>
> --
> Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
> Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki
>
>
>