All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH 0/9] RFC: display/ddi: keep register indexes in a table
@ 2019-12-23 19:58 Lucas De Marchi
  2019-12-23 19:58 ` [Intel-gfx] [PATCH 1/9] drm/i915/display: nuke skl workaround for pre-production hw Lucas De Marchi
                   ` (10 more replies)
  0 siblings, 11 replies; 34+ messages in thread
From: Lucas De Marchi @ 2019-12-23 19:58 UTC (permalink / raw)
  To: intel-gfx

First 3 commits are more or less independent from this RFC and pretty
harmless "drive-by changes".

For the others: my intention is to get rid of the never ending checks
for platform to decide what to depending on the port and phy,
conversions from port to phy, port to tc_port, etc.

For that I decided to create a table-based initialization approach in
which I keep the useful indexes for each platform: these indexes work
similarly to what we have on the pll part. "enum port" is mostly a
"driver thing" and when all the conversions take place, it would allow
us to stop using the port as indexes to register or register bits. "enum
tc_port", "enum phy", etc are not meaningful numbers from the spec POV
and change with every other platform.

I'm doing the conversion to use the new indexes, but the effort is
paramount as the port <-> tc_port <-> phy, paired with the checks
intel_phy_is_combo(), are everywhere, hence this RFC on the idea before
I continue the conversions.

Right now I'm keeping a intel_ddi_port_info inside intel_digital_port
(see last commit). I first imagined I could ignore the dsi part and let
it leave on its own world, but upon converting
icl_dpclka_cfgcr0_clk_off() and  icl_sanitize_encoder_pll_mapping() I
noticed this is probably not true, since it re-uses the phy mapping.
So, I would probably have to move the port_info to intel_encoder and
make let the dsi init also fill it up or let the dsi init() call be part
of the ddi init. IMO the latter is better, but pulls another great
amount of work to complete.

RFC: do you see other shortcomings? I think this provides a nice cleanup
but others may disagree.


Lucas De Marchi (9):
  drm/i915/display: nuke skl workaround for pre-production hw
  drm/i915/display: remove alias to dig_port
  drm/i915/display: prefer the more common dig_port name
  drm/i915/display: start description-based ddi initialization
  drm/i915/display: move icl to description-based ddi init
  drm/i915/display: description-based initialization for remaining ddi
    platforms
  drm/i915/display: add phy, vbt and ddi indexes
  drm/i915/display: refer to vbt info as vbt_port_info
  drm/i915/display: use port_info on intel_ddi_init

 drivers/gpu/drm/i915/display/intel_ddi.c      |  93 +++----
 drivers/gpu/drm/i915/display/intel_ddi.h      |   8 +-
 drivers/gpu/drm/i915/display/intel_display.c  | 232 ++++++++++++------
 drivers/gpu/drm/i915/display/intel_display.h  |   9 +-
 .../drm/i915/display/intel_display_power.c    |   4 +-
 .../drm/i915/display/intel_display_types.h    |  20 +-
 drivers/gpu/drm/i915/display/intel_dpio_phy.c |  38 +--
 drivers/gpu/drm/i915/display/intel_hdmi.c     |  20 +-
 8 files changed, 269 insertions(+), 155 deletions(-)

-- 
2.24.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2020-07-03 13:23 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-23 19:58 [Intel-gfx] [PATCH 0/9] RFC: display/ddi: keep register indexes in a table Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 1/9] drm/i915/display: nuke skl workaround for pre-production hw Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 2/9] drm/i915/display: remove alias to dig_port Lucas De Marchi
2019-12-23 21:05   ` Matt Roper
2019-12-23 19:58 ` [Intel-gfx] [PATCH 3/9] drm/i915/display: prefer the more common dig_port name Lucas De Marchi
2019-12-23 21:16   ` Matt Roper
2019-12-23 21:25     ` Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 4/9] drm/i915/display: start description-based ddi initialization Lucas De Marchi
2019-12-31  9:58   ` Jani Nikula
2020-01-02  7:19     ` Lucas De Marchi
2020-06-22 23:50       ` Lucas De Marchi
2020-07-03 13:22         ` Jani Nikula
2019-12-23 19:58 ` [Intel-gfx] [PATCH 5/9] drm/i915/display: move icl to description-based ddi init Lucas De Marchi
2019-12-24  0:00   ` Matt Roper
2019-12-31 10:14   ` Jani Nikula
2020-01-02  7:32     ` Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 6/9] drm/i915/display: description-based initialization for remaining ddi platforms Lucas De Marchi
2019-12-31 10:25   ` Jani Nikula
2019-12-31 10:26     ` Jani Nikula
2020-01-02  7:23     ` Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 7/9] drm/i915/display: add phy, vbt and ddi indexes Lucas De Marchi
2019-12-24  0:10   ` Matt Roper
2019-12-24  0:17     ` Lucas De Marchi
2019-12-31 10:33   ` Jani Nikula
2020-01-02  7:50     ` Lucas De Marchi
2019-12-23 19:58 ` [Intel-gfx] [PATCH 8/9] drm/i915/display: refer to vbt info as vbt_port_info Lucas De Marchi
2019-12-31 10:39   ` Jani Nikula
2019-12-23 19:58 ` [Intel-gfx] [PATCH 9/9] drm/i915/display: use port_info on intel_ddi_init Lucas De Marchi
2019-12-24  0:16   ` Matt Roper
2019-12-31 11:20     ` Jani Nikula
2020-06-23  1:11       ` Lucas De Marchi
2019-12-31 11:22   ` Jani Nikula
2019-12-23 20:14 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for RFC: display/ddi: keep register indexes in a table Patchwork
2019-12-23 20:57 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.