All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH v5 0/7] drm/i915/display: Don't use port enum as register offset
@ 2022-10-03 17:00 Balasubramani Vivekanandan
  2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 1/7] drm/i915/display: Pass struct drm_i915_private to DDI_BUF_CTL macro Balasubramani Vivekanandan
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Balasubramani Vivekanandan @ 2022-10-03 17:00 UTC (permalink / raw)
  To: intel-gfx

Prior to display version 12, platforms had DDI ports A,B,C,D,E,F                  
represented by enums PORT_A,PORT_B...PORT_F. The DDI register offsets of          
the ports were in the same order as the ports. So the port enums                   
were directly used as index to calculate the register offset of the               
ports.                                                                            
Starting in display version 12, TypeC ports were introduced in the                
platforms. These were defined as new enums PORT_TC1,PORT_TC2... The               
later generation platforms had DDI register offests of TypeC and                  
non-TypeC ports interleaved and the existing port enums didn't match the          
order of the DDI register offests. So the enums could no more be used as          
index to calculate the register offest.                                           
This led to the creation of new platform specific enums for the ports             
like PORT_D_XELPD, PORT_E_XELPD to match the index of the ports in those          
platforms and additional code to handle the special enums.                        
                                                                                  
So we want to make the port enums not tied to DDI register offset and             
use the index from somewhere else to calculate the register offsets.              
The index of the DDI ports in the platform is now defined as part of              
device info.

Series includes few patches at the end which does some cleanup and
fixing made possible because of unique enums for the ports.

v2: ddi_index defined for platforms starting from Gen75. Many platforms
from Gen75 has ddi support.
v3: Updated DDI_CLK_SEL macro to use new index for DDI register offset
caculation.

Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>

Balasubramani Vivekanandan (7):
  drm/i915/display: Pass struct drm_i915_private to DDI_BUF_CTL macro
  drm/i915/display: Pass struct drm_i915_private to DDI_CLK_SEL macro
  drm/i915/display: Define the DDI port indices inside device info
  drm/i915/display: Free port enums from tied to register offset
  drm/i915/display: Remove PORT_D_XELPD/PORT_E_XELPD platform specific
    defintions
  drm/i915/display: Fix port_identifier function
  drm/i915/display: cleanup unused DDI port enums

 drivers/gpu/drm/i915/display/icl_dsi.c        | 12 +--
 drivers/gpu/drm/i915/display/intel_bios.c     |  7 +-
 drivers/gpu/drm/i915/display/intel_ddi.c      | 80 ++++++++-----------
 drivers/gpu/drm/i915/display/intel_display.c  | 12 +--
 drivers/gpu/drm/i915/display/intel_display.h  | 29 ++++---
 .../drm/i915/display/intel_display_power.c    | 40 +---------
 drivers/gpu/drm/i915/display/intel_fdi.c      | 14 ++--
 drivers/gpu/drm/i915/display/intel_tc.c       |  6 +-
 drivers/gpu/drm/i915/gvt/display.c            | 30 +++----
 drivers/gpu/drm/i915/gvt/handlers.c           | 17 ++--
 drivers/gpu/drm/i915/i915_pci.c               | 46 ++++++++++-
 drivers/gpu/drm/i915/i915_reg.h               |  7 +-
 drivers/gpu/drm/i915/intel_device_info.h      |  1 +
 drivers/gpu/drm/i915/intel_gvt_mmio_table.c   | 10 +--
 include/drm/i915_component.h                  |  2 +-
 15 files changed, 151 insertions(+), 162 deletions(-)

-- 
2.34.1


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

end of thread, other threads:[~2022-10-04  3:51 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-03 17:00 [Intel-gfx] [PATCH v5 0/7] drm/i915/display: Don't use port enum as register offset Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 1/7] drm/i915/display: Pass struct drm_i915_private to DDI_BUF_CTL macro Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 2/7] drm/i915/display: Pass struct drm_i915_private to DDI_CLK_SEL macro Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 3/7] drm/i915/display: Define the DDI port indices inside device info Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 4/7] drm/i915/display: Free port enums from tied to register offset Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 5/7] drm/i915/display: Remove PORT_D_XELPD/PORT_E_XELPD platform specific defintions Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 6/7] drm/i915/display: Fix port_identifier function Balasubramani Vivekanandan
2022-10-03 17:00 ` [Intel-gfx] [PATCH v5 7/7] drm/i915/display: cleanup unused DDI port enums Balasubramani Vivekanandan
2022-10-03 21:36 ` [Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/display: Don't use port enum as register offset (rev7) Patchwork
2022-10-03 21:57 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-10-04  3:51 ` [Intel-gfx] ✓ Fi.CI.IGT: " 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.