Message ID | 20190708231629.9296-14-lucas.demarchi@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,01/25] drm/i915: Add 4th pipe and transcoder | expand |
On Mon, 2019-07-08 at 16:16 -0700, Lucas De Marchi wrote: > From: Vandita Kulkarni <vandita.kulkarni@intel.com> > > There are 2 new additional typeC ports in Tiger Lake and PORT-C is > now a > combophy port. This results in 6 typeC ports and 3 combophy ports. > These 6 TC ports can be DP alternate mode, DP over thunderbolt, > native > DP on legacy DP connector or native HDMI on legacy connector. > > v2: Rebase on new modular FIA code (Lucas) > > Cc: Anusha Srivatsa <anusha.srivatsa@intel.com> > Signed-off-by: Vandita Kulkarni <vandita.kulkarni@intel.com> > Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> > --- > drivers/gpu/drm/i915/display/intel_ddi.c | 12 ++++++++++++ > drivers/gpu/drm/i915/display/intel_display.h | 2 ++ > include/drm/i915_component.h | 2 +- > include/drm/i915_drm.h | 3 +++ > 4 files changed, 18 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c > b/drivers/gpu/drm/i915/display/intel_ddi.c > index 30e48609db1d..e72cf0bb48a7 100644 > --- a/drivers/gpu/drm/i915/display/intel_ddi.c > +++ b/drivers/gpu/drm/i915/display/intel_ddi.c > @@ -4297,6 +4297,18 @@ void intel_ddi_init(struct drm_i915_private > *dev_priv, enum port port) > intel_dig_port->ddi_io_power_domain = > POWER_DOMAIN_PORT_DDI_F_IO; > break; > + case PORT_G: > + intel_dig_port->ddi_io_power_domain = > + POWER_DOMAIN_PORT_DDI_G_IO; > + break; > + case PORT_H: > + intel_dig_port->ddi_io_power_domain = > + POWER_DOMAIN_PORT_DDI_H_IO; > + break; > + case PORT_I: > + intel_dig_port->ddi_io_power_domain = > + POWER_DOMAIN_PORT_DDI_I_IO; > + break; > default: > MISSING_CASE(port); > } > diff --git a/drivers/gpu/drm/i915/display/intel_display.h > b/drivers/gpu/drm/i915/display/intel_display.h > index e781df463ffa..270b1f18dedd 100644 > --- a/drivers/gpu/drm/i915/display/intel_display.h > +++ b/drivers/gpu/drm/i915/display/intel_display.h Nit: Missing add new ports to port_identifier() on this file but they can't be HDMI so it should not cause any bugs, even better would be make use of port_name() Other than that: Reviewed-by: José Roberto de Souza <jose.souza@intel.com> > @@ -189,6 +189,8 @@ enum tc_port { > PORT_TC2, > PORT_TC3, > PORT_TC4, > + PORT_TC5, > + PORT_TC6, > > I915_MAX_TC_PORTS > }; > diff --git a/include/drm/i915_component.h > b/include/drm/i915_component.h > index dcb95bd9dee6..55c3b123581b 100644 > --- a/include/drm/i915_component.h > +++ b/include/drm/i915_component.h > @@ -34,7 +34,7 @@ enum i915_component_type { > /* MAX_PORT is the number of port > * It must be sync with I915_MAX_PORTS defined i915_drv.h > */ > -#define MAX_PORTS 6 > +#define MAX_PORTS 9 > > /** > * struct i915_audio_component - Used for direct communication > between i915 and hda drivers > diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h > index 7523e9a7b6e2..eb30062359d1 100644 > --- a/include/drm/i915_drm.h > +++ b/include/drm/i915_drm.h > @@ -109,6 +109,9 @@ enum port { > PORT_D, > PORT_E, > PORT_F, > + PORT_G, > + PORT_H, > + PORT_I, > > I915_MAX_PORTS > };
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c index 30e48609db1d..e72cf0bb48a7 100644 --- a/drivers/gpu/drm/i915/display/intel_ddi.c +++ b/drivers/gpu/drm/i915/display/intel_ddi.c @@ -4297,6 +4297,18 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, enum port port) intel_dig_port->ddi_io_power_domain = POWER_DOMAIN_PORT_DDI_F_IO; break; + case PORT_G: + intel_dig_port->ddi_io_power_domain = + POWER_DOMAIN_PORT_DDI_G_IO; + break; + case PORT_H: + intel_dig_port->ddi_io_power_domain = + POWER_DOMAIN_PORT_DDI_H_IO; + break; + case PORT_I: + intel_dig_port->ddi_io_power_domain = + POWER_DOMAIN_PORT_DDI_I_IO; + break; default: MISSING_CASE(port); } diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h index e781df463ffa..270b1f18dedd 100644 --- a/drivers/gpu/drm/i915/display/intel_display.h +++ b/drivers/gpu/drm/i915/display/intel_display.h @@ -189,6 +189,8 @@ enum tc_port { PORT_TC2, PORT_TC3, PORT_TC4, + PORT_TC5, + PORT_TC6, I915_MAX_TC_PORTS }; diff --git a/include/drm/i915_component.h b/include/drm/i915_component.h index dcb95bd9dee6..55c3b123581b 100644 --- a/include/drm/i915_component.h +++ b/include/drm/i915_component.h @@ -34,7 +34,7 @@ enum i915_component_type { /* MAX_PORT is the number of port * It must be sync with I915_MAX_PORTS defined i915_drv.h */ -#define MAX_PORTS 6 +#define MAX_PORTS 9 /** * struct i915_audio_component - Used for direct communication between i915 and hda drivers diff --git a/include/drm/i915_drm.h b/include/drm/i915_drm.h index 7523e9a7b6e2..eb30062359d1 100644 --- a/include/drm/i915_drm.h +++ b/include/drm/i915_drm.h @@ -109,6 +109,9 @@ enum port { PORT_D, PORT_E, PORT_F, + PORT_G, + PORT_H, + PORT_I, I915_MAX_PORTS };