* [PATCH 1/2] drm/i915: introduce dp_to_i915() helper
@ 2018-08-27 22:30 Rodrigo Vivi
2018-08-27 22:30 ` [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c Rodrigo Vivi
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Rodrigo Vivi @ 2018-08-27 22:30 UTC (permalink / raw)
To: intel-gfx; +Cc: Rodrigo Vivi
No functional change. But let's get first i915 pointer
directly from intel_dp so we can clean up a lot of code
later.
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/i915/intel_dp.c | 109 +++++++++++++++----------------
drivers/gpu/drm/i915/intel_drv.h | 6 ++
2 files changed, 57 insertions(+), 58 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
index db8515171270..436c22de33b6 100644
--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -107,13 +107,6 @@ bool intel_dp_is_edp(struct intel_dp *intel_dp)
return intel_dig_port->base.type == INTEL_OUTPUT_EDP;
}
-static struct drm_device *intel_dp_to_dev(struct intel_dp *intel_dp)
-{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
-
- return intel_dig_port->base.base.dev;
-}
-
static struct intel_dp *intel_attached_dp(struct drm_connector *connector)
{
return enc_to_intel_dp(&intel_attached_encoder(connector)->base);
@@ -232,7 +225,7 @@ intel_dp_link_required(int pixel_clock, int bpp)
void icl_program_mg_dp_mode(struct intel_dp *intel_dp)
{
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum port port = intel_dig_port->base.port;
enum tc_port tc_port = intel_port_to_tc(dev_priv, port);
u32 ln0, ln1, lane_info;
@@ -661,7 +654,7 @@ intel_dp_pps_init(struct intel_dp *intel_dp);
static void pps_lock(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
/*
* See intel_power_sequencer_reset() why we need
@@ -674,7 +667,7 @@ static void pps_lock(struct intel_dp *intel_dp)
static void pps_unlock(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
mutex_unlock(&dev_priv->pps_mutex);
@@ -684,7 +677,7 @@ static void pps_unlock(struct intel_dp *intel_dp)
static void
vlv_power_sequencer_kick(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum pipe pipe = intel_dp->pps_pipe;
bool pll_enabled, release_cl_override = false;
@@ -789,7 +782,7 @@ static enum pipe vlv_find_free_pps(struct drm_i915_private *dev_priv)
static enum pipe
vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum pipe pipe;
@@ -836,7 +829,7 @@ vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
static int
bxt_power_sequencer_idx(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
int backlight_controller = dev_priv->vbt.backlight.controller;
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -905,7 +898,7 @@ vlv_initial_pps_pipe(struct drm_i915_private *dev_priv,
static void
vlv_initial_power_sequencer_setup(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum port port = intel_dig_port->base.port;
@@ -982,7 +975,7 @@ struct pps_registers {
static void intel_pps_get_registers(struct intel_dp *intel_dp,
struct pps_registers *regs)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
int pps_idx = 0;
memset(regs, 0, sizeof(*regs));
@@ -1028,7 +1021,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
{
struct intel_dp *intel_dp = container_of(this, typeof(* intel_dp),
edp_notifier);
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!intel_dp_is_edp(intel_dp) || code != SYS_RESTART)
return 0;
@@ -1058,7 +1051,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
static bool edp_have_panel_power(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -1071,7 +1064,7 @@ static bool edp_have_panel_power(struct intel_dp *intel_dp)
static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -1085,7 +1078,7 @@ static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
static void
intel_dp_check_edp(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!intel_dp_is_edp(intel_dp))
return;
@@ -1101,7 +1094,7 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
static uint32_t
intel_dp_aux_wait_done(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp);
uint32_t status;
bool done;
@@ -1118,7 +1111,7 @@ intel_dp_aux_wait_done(struct intel_dp *intel_dp)
static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (index)
return 0;
@@ -1132,7 +1125,7 @@ static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (index)
return 0;
@@ -1150,7 +1143,7 @@ static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
static uint32_t hsw_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (intel_dp->aux_ch != AUX_CH_A && HAS_PCH_LPT_H(dev_priv)) {
/* Workaround for non-ULT HSW */
@@ -1552,7 +1545,7 @@ intel_aux_power_domain(struct intel_dp *intel_dp)
static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1568,7 +1561,7 @@ static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1584,7 +1577,7 @@ static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1602,7 +1595,7 @@ static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1620,7 +1613,7 @@ static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1639,7 +1632,7 @@ static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
static i915_reg_t skl_aux_data_reg(struct intel_dp *intel_dp, int index)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum aux_ch aux_ch = intel_dp->aux_ch;
switch (aux_ch) {
@@ -1665,7 +1658,7 @@ intel_dp_aux_fini(struct intel_dp *intel_dp)
static void
intel_dp_aux_init(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
intel_dp->aux_ch = intel_aux_ch(intel_dp);
@@ -1833,7 +1826,7 @@ struct link_config_limits {
static int intel_dp_compute_bpp(struct intel_dp *intel_dp,
struct intel_crtc_state *pipe_config)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_connector *intel_connector = intel_dp->attached_connector;
int bpp, bpc;
@@ -2201,7 +2194,7 @@ static void wait_panel_status(struct intel_dp *intel_dp,
u32 mask,
u32 value)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
i915_reg_t pp_stat_reg, pp_ctrl_reg;
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -2277,7 +2270,7 @@ static void edp_wait_backlight_off(struct intel_dp *intel_dp)
static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 control;
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -2298,7 +2291,7 @@ static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
*/
static bool edp_panel_vdd_on(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
u32 pp;
i915_reg_t pp_stat_reg, pp_ctrl_reg;
@@ -2369,7 +2362,7 @@ void intel_edp_panel_vdd_on(struct intel_dp *intel_dp)
static void edp_panel_vdd_off_sync(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port =
dp_to_dig_port(intel_dp);
u32 pp;
@@ -2435,7 +2428,7 @@ static void edp_panel_vdd_schedule_off(struct intel_dp *intel_dp)
*/
static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -2455,7 +2448,7 @@ static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
static void edp_panel_on(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp;
i915_reg_t pp_ctrl_reg;
@@ -2513,7 +2506,7 @@ void intel_edp_panel_on(struct intel_dp *intel_dp)
static void edp_panel_off(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp;
i915_reg_t pp_ctrl_reg;
@@ -2561,7 +2554,7 @@ void intel_edp_panel_off(struct intel_dp *intel_dp)
/* Enable backlight in the panel power control. */
static void _intel_edp_backlight_on(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp;
i915_reg_t pp_ctrl_reg;
@@ -2604,7 +2597,7 @@ void intel_edp_backlight_on(const struct intel_crtc_state *crtc_state,
/* Disable backlight in the panel power control. */
static void _intel_edp_backlight_off(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp;
i915_reg_t pp_ctrl_reg;
@@ -3035,7 +3028,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
uint32_t *DP,
uint8_t dp_train_pat)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum port port = intel_dig_port->base.port;
uint8_t train_pat_mask = drm_dp_training_pattern_mask(intel_dp->dpcd);
@@ -3117,7 +3110,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
static void intel_dp_enable_port(struct intel_dp *intel_dp,
const struct intel_crtc_state *old_crtc_state)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
/* enable with pattern 1 (as per spec) */
@@ -3374,7 +3367,7 @@ intel_dp_get_link_status(struct intel_dp *intel_dp, uint8_t link_status[DP_LINK_
uint8_t
intel_dp_voltage_max(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
enum port port = encoder->port;
@@ -3393,7 +3386,7 @@ intel_dp_voltage_max(struct intel_dp *intel_dp)
uint8_t
intel_dp_pre_emphasis_max(struct intel_dp *intel_dp, uint8_t voltage_swing)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
enum port port = encoder->port;
@@ -3705,7 +3698,7 @@ ivb_cpu_edp_signal_levels(uint8_t train_set)
void
intel_dp_set_signal_levels(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum port port = intel_dig_port->base.port;
uint32_t signal_levels, mask = 0;
@@ -3762,7 +3755,7 @@ intel_dp_program_link_training_pattern(struct intel_dp *intel_dp,
void intel_dp_set_idle_link_train(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
enum port port = intel_dig_port->base.port;
uint32_t val;
@@ -4455,7 +4448,7 @@ static bool intel_dp_hotplug(struct intel_encoder *encoder,
static bool
intel_dp_short_pulse(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u8 sink_irq_vector = 0;
u8 old_sink_count = intel_dp->sink_count;
bool ret;
@@ -5547,7 +5540,7 @@ static const struct intel_hdcp_shim intel_dp_hdcp_shim = {
static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
lockdep_assert_held(&dev_priv->pps_mutex);
@@ -5568,7 +5561,7 @@ static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
static enum pipe vlv_active_pipe(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
enum pipe pipe;
@@ -5635,7 +5628,7 @@ enum irqreturn
intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
{
struct intel_dp *intel_dp = &intel_dig_port->dp;
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum irqreturn ret = IRQ_NONE;
if (long_hpd && intel_dig_port->base.type == INTEL_OUTPUT_EDP) {
@@ -5751,7 +5744,7 @@ static void intel_dp_init_panel_power_timestamps(struct intel_dp *intel_dp)
static void
intel_pps_readout_hw_state(struct intel_dp *intel_dp, struct edp_power_seq *seq)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp_on, pp_off, pp_div = 0, pp_ctl = 0;
struct pps_registers regs;
@@ -5819,7 +5812,7 @@ intel_pps_verify_state(struct intel_dp *intel_dp)
static void
intel_dp_init_panel_power_sequencer(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct edp_power_seq cur, vbt, spec,
*final = &intel_dp->pps_delays;
@@ -5912,7 +5905,7 @@ static void
intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
bool force_disable_vdd)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 pp_on, pp_off, pp_div, port_sel = 0;
int div = dev_priv->rawclk_freq / 1000;
struct pps_registers regs;
@@ -6008,7 +6001,7 @@ intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
static void intel_dp_pps_init(struct intel_dp *intel_dp)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
vlv_initial_power_sequencer_setup(intel_dp);
@@ -6125,7 +6118,7 @@ static void intel_dp_set_drrs_state(struct drm_i915_private *dev_priv,
void intel_edp_drrs_enable(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!crtc_state->has_drrs) {
DRM_DEBUG_KMS("Panel doesn't support DRRS\n");
@@ -6160,7 +6153,7 @@ void intel_edp_drrs_enable(struct intel_dp *intel_dp,
void intel_edp_drrs_disable(struct intel_dp *intel_dp,
const struct intel_crtc_state *old_crtc_state)
{
- struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!old_crtc_state->has_drrs)
return;
@@ -6392,8 +6385,8 @@ intel_dp_drrs_init(struct intel_connector *connector,
static bool intel_edp_init_connector(struct intel_dp *intel_dp,
struct intel_connector *intel_connector)
{
- struct drm_device *dev = intel_dp_to_dev(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
+ struct drm_device *dev = &dev_priv->drm;
struct drm_connector *connector = &intel_connector->base;
struct drm_display_mode *fixed_mode = NULL;
struct drm_display_mode *downclock_mode = NULL;
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index ea758aa4dee3..0d4e59ec54ac 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1315,6 +1315,12 @@ dp_to_lspcon(struct intel_dp *intel_dp)
return &dp_to_dig_port(intel_dp)->lspcon;
}
+static inline struct drm_i915_private *
+dp_to_i915(struct intel_dp *intel_dp)
+{
+ return to_i915(dp_to_dig_port(intel_dp)->base.base.dev);
+}
+
static inline struct intel_digital_port *
hdmi_to_dig_port(struct intel_hdmi *intel_hdmi)
{
--
2.17.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c
2018-08-27 22:30 [PATCH 1/2] drm/i915: introduce dp_to_i915() helper Rodrigo Vivi
@ 2018-08-27 22:30 ` Rodrigo Vivi
2018-08-28 12:44 ` Ville Syrjälä
2018-08-27 22:53 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: introduce dp_to_i915() helper Patchwork
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: Rodrigo Vivi @ 2018-08-27 22:30 UTC (permalink / raw)
To: intel-gfx; +Cc: Dhinakaran Pandiyan, Rodrigo Vivi
Now that we have a generic caller let's simplify it and
clean up the intel_psr.c code a bit.
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/i915/intel_psr.c | 50 +++++++++-----------------------
1 file changed, 14 insertions(+), 36 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c
index da583a45e942..7acd84a150f7 100644
--- a/drivers/gpu/drm/i915/intel_psr.c
+++ b/drivers/gpu/drm/i915/intel_psr.c
@@ -270,7 +270,7 @@ static void intel_psr_setup_vsc(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(intel_dig_port->base.base.dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct edp_vsc_psr psr_vsc;
if (dev_priv->psr.psr2_enabled) {
@@ -300,8 +300,7 @@ static void intel_psr_setup_vsc(struct intel_dp *intel_dp,
static void hsw_psr_setup_aux(struct intel_dp *intel_dp)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 aux_clock_divider, aux_ctl;
int i;
static const uint8_t aux_msg[] = {
@@ -334,9 +333,7 @@ static void hsw_psr_setup_aux(struct intel_dp *intel_dp)
static void intel_psr_enable_sink(struct intel_dp *intel_dp)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u8 dpcd_val = DP_PSR_ENABLE;
/* Enable ALPM at sink for psr2 */
@@ -357,9 +354,7 @@ static void intel_psr_enable_sink(struct intel_dp *intel_dp)
static void hsw_activate_psr1(struct intel_dp *intel_dp)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 max_sleep_time = 0x1f;
u32 val = EDP_PSR_ENABLE;
@@ -414,9 +409,7 @@ static void hsw_activate_psr1(struct intel_dp *intel_dp)
static void hsw_activate_psr2(struct intel_dp *intel_dp)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
u32 val;
/* Let's use 6 as the minimum to cover all known cases including the
@@ -452,8 +445,7 @@ static void hsw_activate_psr2(struct intel_dp *intel_dp)
static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
struct intel_crtc_state *crtc_state)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
int crtc_hdisplay = crtc_state->base.adjusted_mode.crtc_hdisplay;
int crtc_vdisplay = crtc_state->base.adjusted_mode.crtc_vdisplay;
int psr_max_h = 0, psr_max_v = 0;
@@ -488,7 +480,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
struct intel_crtc_state *crtc_state)
{
struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
const struct drm_display_mode *adjusted_mode =
&crtc_state->base.adjusted_mode;
int psr_setup_time;
@@ -544,9 +536,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
static void intel_psr_activate(struct intel_dp *intel_dp)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (INTEL_GEN(dev_priv) >= 9)
WARN_ON(I915_READ(EDP_PSR2_CTL) & EDP_PSR2_ENABLE);
@@ -566,9 +556,7 @@ static void intel_psr_activate(struct intel_dp *intel_dp)
static void intel_psr_enable_source(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
- struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
/* Only HSW and BDW have PSR AUX registers that need to be setup. SKL+
@@ -639,9 +627,7 @@ static void intel_psr_enable_locked(struct drm_i915_private *dev_priv,
void intel_psr_enable(struct intel_dp *intel_dp,
const struct intel_crtc_state *crtc_state)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!crtc_state->has_psr)
return;
@@ -673,9 +659,7 @@ void intel_psr_enable(struct intel_dp *intel_dp,
static void
intel_psr_disable_source(struct intel_dp *intel_dp)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (dev_priv->psr.active) {
i915_reg_t psr_status;
@@ -714,9 +698,7 @@ intel_psr_disable_source(struct intel_dp *intel_dp)
static void intel_psr_disable_locked(struct intel_dp *intel_dp)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
lockdep_assert_held(&dev_priv->psr.lock);
@@ -743,9 +725,7 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
void intel_psr_disable(struct intel_dp *intel_dp,
const struct intel_crtc_state *old_crtc_state)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
if (!old_crtc_state->has_psr)
return;
@@ -1106,9 +1086,7 @@ void intel_psr_init(struct drm_i915_private *dev_priv)
void intel_psr_short_pulse(struct intel_dp *intel_dp)
{
- struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
- struct drm_device *dev = intel_dig_port->base.base.dev;
- struct drm_i915_private *dev_priv = to_i915(dev);
+ struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
struct i915_psr *psr = &dev_priv->psr;
u8 val;
const u8 errors = DP_PSR_RFB_STORAGE_ERROR |
--
2.17.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: introduce dp_to_i915() helper
2018-08-27 22:30 [PATCH 1/2] drm/i915: introduce dp_to_i915() helper Rodrigo Vivi
2018-08-27 22:30 ` [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c Rodrigo Vivi
@ 2018-08-27 22:53 ` Patchwork
2018-08-27 23:44 ` ✓ Fi.CI.IGT: " Patchwork
2018-08-28 12:43 ` [PATCH 1/2] " Ville Syrjälä
3 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2018-08-27 22:53 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: introduce dp_to_i915() helper
URL : https://patchwork.freedesktop.org/series/48767/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_4712 -> Patchwork_10022 =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/48767/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in Patchwork_10022:
=== IGT changes ===
==== Warnings ====
{igt@pm_rpm@module-reload}:
fi-bsw-n3050: DMESG-WARN -> DMESG-FAIL
fi-hsw-4770r: SKIP -> PASS
== Known issues ==
Here are the changes found in Patchwork_10022 that come from known issues:
=== IGT changes ===
==== Issues hit ====
{igt@amdgpu/amd_prime@amd-to-i915}:
{fi-kbl-8809g}: NOTRUN -> FAIL (fdo#107341)
igt@drv_selftest@live_coherency:
fi-gdg-551: PASS -> DMESG-FAIL (fdo#107164)
igt@drv_selftest@live_hangcheck:
fi-skl-guc: PASS -> DMESG-FAIL (fdo#107174)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
{fi-byt-clapper}: PASS -> FAIL (fdo#107362, fdo#103191)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
fi-skl-guc: PASS -> FAIL (fdo#103191)
{igt@pm_rpm@module-reload}:
fi-cnl-psr: PASS -> WARN (fdo#107602)
==== Possible fixes ====
{igt@amdgpu/amd_basic@userptr}:
{fi-kbl-8809g}: INCOMPLETE (fdo#107402) -> PASS
igt@drv_module_reload@basic-reload-inject:
fi-hsw-4770r: DMESG-WARN (fdo#107425) -> PASS
igt@gem_exec_suspend@basic-s3:
fi-blb-e6850: INCOMPLETE -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
fi-bxt-dsi: INCOMPLETE (fdo#103927) -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#107164 https://bugs.freedesktop.org/show_bug.cgi?id=107164
fdo#107174 https://bugs.freedesktop.org/show_bug.cgi?id=107174
fdo#107341 https://bugs.freedesktop.org/show_bug.cgi?id=107341
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#107402 https://bugs.freedesktop.org/show_bug.cgi?id=107402
fdo#107425 https://bugs.freedesktop.org/show_bug.cgi?id=107425
fdo#107602 https://bugs.freedesktop.org/show_bug.cgi?id=107602
== Participating hosts (54 -> 49) ==
Missing (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u
== Build changes ==
* Linux: CI_DRM_4712 -> Patchwork_10022
CI_DRM_4712: 7b245f2b1e25677a1f2b63fd69003e35731cedda @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4610: c40743d3fce5055682d31610519758dd7379c0f8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_10022: e2fddd13ea2e20989e0c2f203ddff21cca234ecc @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
e2fddd13ea2e drm/i915: Use dp_to_i915 on intel_psr.c
5c18f353b8f2 drm/i915: introduce dp_to_i915() helper
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10022/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* ✓ Fi.CI.IGT: success for series starting with [1/2] drm/i915: introduce dp_to_i915() helper
2018-08-27 22:30 [PATCH 1/2] drm/i915: introduce dp_to_i915() helper Rodrigo Vivi
2018-08-27 22:30 ` [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c Rodrigo Vivi
2018-08-27 22:53 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: introduce dp_to_i915() helper Patchwork
@ 2018-08-27 23:44 ` Patchwork
2018-08-28 12:43 ` [PATCH 1/2] " Ville Syrjälä
3 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2018-08-27 23:44 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx
== Series Details ==
Series: series starting with [1/2] drm/i915: introduce dp_to_i915() helper
URL : https://patchwork.freedesktop.org/series/48767/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_4712_full -> Patchwork_10022_full =
== Summary - SUCCESS ==
No regressions found.
== Known issues ==
Here are the changes found in Patchwork_10022_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@drv_suspend@shrink:
shard-glk: PASS -> INCOMPLETE (fdo#106886, k.org#198133, fdo#103359)
igt@gem_ppgtt@blt-vs-render-ctx0:
shard-kbl: PASS -> INCOMPLETE (fdo#103665, fdo#106023)
==== Possible fixes ====
igt@drv_selftest@live_hangcheck:
shard-kbl: DMESG-FAIL (fdo#106560, fdo#106947) -> PASS
{igt@gem_userptr_blits@readonly-unsync}:
shard-apl: INCOMPLETE (fdo#103927) -> PASS
igt@kms_flip@flip-vs-expired-vblank:
shard-glk: FAIL (fdo#105363) -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
fdo#106947 https://bugs.freedesktop.org/show_bug.cgi?id=106947
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (5 -> 5) ==
No changes in participating hosts
== Build changes ==
* Linux: CI_DRM_4712 -> Patchwork_10022
CI_DRM_4712: 7b245f2b1e25677a1f2b63fd69003e35731cedda @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4610: c40743d3fce5055682d31610519758dd7379c0f8 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_10022: e2fddd13ea2e20989e0c2f203ddff21cca234ecc @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10022/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] drm/i915: introduce dp_to_i915() helper
2018-08-27 22:30 [PATCH 1/2] drm/i915: introduce dp_to_i915() helper Rodrigo Vivi
` (2 preceding siblings ...)
2018-08-27 23:44 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-08-28 12:43 ` Ville Syrjälä
2018-08-28 14:00 ` Rodrigo Vivi
3 siblings, 1 reply; 7+ messages in thread
From: Ville Syrjälä @ 2018-08-28 12:43 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx
On Mon, Aug 27, 2018 at 03:30:20PM -0700, Rodrigo Vivi wrote:
> No functional change. But let's get first i915 pointer
> directly from intel_dp so we can clean up a lot of code
> later.
Pretty sure I have a cocci script for this somewhere, just never posted
the results :)
But manual conversion works fine too, so
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> drivers/gpu/drm/i915/intel_dp.c | 109 +++++++++++++++----------------
> drivers/gpu/drm/i915/intel_drv.h | 6 ++
> 2 files changed, 57 insertions(+), 58 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index db8515171270..436c22de33b6 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -107,13 +107,6 @@ bool intel_dp_is_edp(struct intel_dp *intel_dp)
> return intel_dig_port->base.type == INTEL_OUTPUT_EDP;
> }
>
> -static struct drm_device *intel_dp_to_dev(struct intel_dp *intel_dp)
> -{
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> -
> - return intel_dig_port->base.base.dev;
> -}
> -
> static struct intel_dp *intel_attached_dp(struct drm_connector *connector)
> {
> return enc_to_intel_dp(&intel_attached_encoder(connector)->base);
> @@ -232,7 +225,7 @@ intel_dp_link_required(int pixel_clock, int bpp)
> void icl_program_mg_dp_mode(struct intel_dp *intel_dp)
> {
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum port port = intel_dig_port->base.port;
> enum tc_port tc_port = intel_port_to_tc(dev_priv, port);
> u32 ln0, ln1, lane_info;
> @@ -661,7 +654,7 @@ intel_dp_pps_init(struct intel_dp *intel_dp);
>
> static void pps_lock(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> /*
> * See intel_power_sequencer_reset() why we need
> @@ -674,7 +667,7 @@ static void pps_lock(struct intel_dp *intel_dp)
>
> static void pps_unlock(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> mutex_unlock(&dev_priv->pps_mutex);
>
> @@ -684,7 +677,7 @@ static void pps_unlock(struct intel_dp *intel_dp)
> static void
> vlv_power_sequencer_kick(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum pipe pipe = intel_dp->pps_pipe;
> bool pll_enabled, release_cl_override = false;
> @@ -789,7 +782,7 @@ static enum pipe vlv_find_free_pps(struct drm_i915_private *dev_priv)
> static enum pipe
> vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum pipe pipe;
>
> @@ -836,7 +829,7 @@ vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
> static int
> bxt_power_sequencer_idx(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> int backlight_controller = dev_priv->vbt.backlight.controller;
>
> lockdep_assert_held(&dev_priv->pps_mutex);
> @@ -905,7 +898,7 @@ vlv_initial_pps_pipe(struct drm_i915_private *dev_priv,
> static void
> vlv_initial_power_sequencer_setup(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum port port = intel_dig_port->base.port;
>
> @@ -982,7 +975,7 @@ struct pps_registers {
> static void intel_pps_get_registers(struct intel_dp *intel_dp,
> struct pps_registers *regs)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> int pps_idx = 0;
>
> memset(regs, 0, sizeof(*regs));
> @@ -1028,7 +1021,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
> {
> struct intel_dp *intel_dp = container_of(this, typeof(* intel_dp),
> edp_notifier);
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!intel_dp_is_edp(intel_dp) || code != SYS_RESTART)
> return 0;
> @@ -1058,7 +1051,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
>
> static bool edp_have_panel_power(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> lockdep_assert_held(&dev_priv->pps_mutex);
>
> @@ -1071,7 +1064,7 @@ static bool edp_have_panel_power(struct intel_dp *intel_dp)
>
> static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> lockdep_assert_held(&dev_priv->pps_mutex);
>
> @@ -1085,7 +1078,7 @@ static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
> static void
> intel_dp_check_edp(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!intel_dp_is_edp(intel_dp))
> return;
> @@ -1101,7 +1094,7 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
> static uint32_t
> intel_dp_aux_wait_done(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp);
> uint32_t status;
> bool done;
> @@ -1118,7 +1111,7 @@ intel_dp_aux_wait_done(struct intel_dp *intel_dp)
>
> static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (index)
> return 0;
> @@ -1132,7 +1125,7 @@ static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
>
> static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (index)
> return 0;
> @@ -1150,7 +1143,7 @@ static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
>
> static uint32_t hsw_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (intel_dp->aux_ch != AUX_CH_A && HAS_PCH_LPT_H(dev_priv)) {
> /* Workaround for non-ULT HSW */
> @@ -1552,7 +1545,7 @@ intel_aux_power_domain(struct intel_dp *intel_dp)
>
> static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1568,7 +1561,7 @@ static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
>
> static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1584,7 +1577,7 @@ static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
>
> static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1602,7 +1595,7 @@ static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
>
> static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1620,7 +1613,7 @@ static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
>
> static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1639,7 +1632,7 @@ static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
>
> static i915_reg_t skl_aux_data_reg(struct intel_dp *intel_dp, int index)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum aux_ch aux_ch = intel_dp->aux_ch;
>
> switch (aux_ch) {
> @@ -1665,7 +1658,7 @@ intel_dp_aux_fini(struct intel_dp *intel_dp)
> static void
> intel_dp_aux_init(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
>
> intel_dp->aux_ch = intel_aux_ch(intel_dp);
> @@ -1833,7 +1826,7 @@ struct link_config_limits {
> static int intel_dp_compute_bpp(struct intel_dp *intel_dp,
> struct intel_crtc_state *pipe_config)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_connector *intel_connector = intel_dp->attached_connector;
> int bpp, bpc;
>
> @@ -2201,7 +2194,7 @@ static void wait_panel_status(struct intel_dp *intel_dp,
> u32 mask,
> u32 value)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> i915_reg_t pp_stat_reg, pp_ctrl_reg;
>
> lockdep_assert_held(&dev_priv->pps_mutex);
> @@ -2277,7 +2270,7 @@ static void edp_wait_backlight_off(struct intel_dp *intel_dp)
>
> static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 control;
>
> lockdep_assert_held(&dev_priv->pps_mutex);
> @@ -2298,7 +2291,7 @@ static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
> */
> static bool edp_panel_vdd_on(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> u32 pp;
> i915_reg_t pp_stat_reg, pp_ctrl_reg;
> @@ -2369,7 +2362,7 @@ void intel_edp_panel_vdd_on(struct intel_dp *intel_dp)
>
> static void edp_panel_vdd_off_sync(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port =
> dp_to_dig_port(intel_dp);
> u32 pp;
> @@ -2435,7 +2428,7 @@ static void edp_panel_vdd_schedule_off(struct intel_dp *intel_dp)
> */
> static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> lockdep_assert_held(&dev_priv->pps_mutex);
>
> @@ -2455,7 +2448,7 @@ static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
>
> static void edp_panel_on(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp;
> i915_reg_t pp_ctrl_reg;
>
> @@ -2513,7 +2506,7 @@ void intel_edp_panel_on(struct intel_dp *intel_dp)
>
> static void edp_panel_off(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp;
> i915_reg_t pp_ctrl_reg;
>
> @@ -2561,7 +2554,7 @@ void intel_edp_panel_off(struct intel_dp *intel_dp)
> /* Enable backlight in the panel power control. */
> static void _intel_edp_backlight_on(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp;
> i915_reg_t pp_ctrl_reg;
>
> @@ -2604,7 +2597,7 @@ void intel_edp_backlight_on(const struct intel_crtc_state *crtc_state,
> /* Disable backlight in the panel power control. */
> static void _intel_edp_backlight_off(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp;
> i915_reg_t pp_ctrl_reg;
>
> @@ -3035,7 +3028,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
> uint32_t *DP,
> uint8_t dp_train_pat)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum port port = intel_dig_port->base.port;
> uint8_t train_pat_mask = drm_dp_training_pattern_mask(intel_dp->dpcd);
> @@ -3117,7 +3110,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
> static void intel_dp_enable_port(struct intel_dp *intel_dp,
> const struct intel_crtc_state *old_crtc_state)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> /* enable with pattern 1 (as per spec) */
>
> @@ -3374,7 +3367,7 @@ intel_dp_get_link_status(struct intel_dp *intel_dp, uint8_t link_status[DP_LINK_
> uint8_t
> intel_dp_voltage_max(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> enum port port = encoder->port;
>
> @@ -3393,7 +3386,7 @@ intel_dp_voltage_max(struct intel_dp *intel_dp)
> uint8_t
> intel_dp_pre_emphasis_max(struct intel_dp *intel_dp, uint8_t voltage_swing)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> enum port port = encoder->port;
>
> @@ -3705,7 +3698,7 @@ ivb_cpu_edp_signal_levels(uint8_t train_set)
> void
> intel_dp_set_signal_levels(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum port port = intel_dig_port->base.port;
> uint32_t signal_levels, mask = 0;
> @@ -3762,7 +3755,7 @@ intel_dp_program_link_training_pattern(struct intel_dp *intel_dp,
>
> void intel_dp_set_idle_link_train(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> enum port port = intel_dig_port->base.port;
> uint32_t val;
> @@ -4455,7 +4448,7 @@ static bool intel_dp_hotplug(struct intel_encoder *encoder,
> static bool
> intel_dp_short_pulse(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u8 sink_irq_vector = 0;
> u8 old_sink_count = intel_dp->sink_count;
> bool ret;
> @@ -5547,7 +5540,7 @@ static const struct intel_hdcp_shim intel_dp_hdcp_shim = {
>
> static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> lockdep_assert_held(&dev_priv->pps_mutex);
>
> @@ -5568,7 +5561,7 @@ static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
>
> static enum pipe vlv_active_pipe(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> enum pipe pipe;
>
> @@ -5635,7 +5628,7 @@ enum irqreturn
> intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
> {
> struct intel_dp *intel_dp = &intel_dig_port->dp;
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum irqreturn ret = IRQ_NONE;
>
> if (long_hpd && intel_dig_port->base.type == INTEL_OUTPUT_EDP) {
> @@ -5751,7 +5744,7 @@ static void intel_dp_init_panel_power_timestamps(struct intel_dp *intel_dp)
> static void
> intel_pps_readout_hw_state(struct intel_dp *intel_dp, struct edp_power_seq *seq)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp_on, pp_off, pp_div = 0, pp_ctl = 0;
> struct pps_registers regs;
>
> @@ -5819,7 +5812,7 @@ intel_pps_verify_state(struct intel_dp *intel_dp)
> static void
> intel_dp_init_panel_power_sequencer(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct edp_power_seq cur, vbt, spec,
> *final = &intel_dp->pps_delays;
>
> @@ -5912,7 +5905,7 @@ static void
> intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
> bool force_disable_vdd)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 pp_on, pp_off, pp_div, port_sel = 0;
> int div = dev_priv->rawclk_freq / 1000;
> struct pps_registers regs;
> @@ -6008,7 +6001,7 @@ intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
>
> static void intel_dp_pps_init(struct intel_dp *intel_dp)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
> vlv_initial_power_sequencer_setup(intel_dp);
> @@ -6125,7 +6118,7 @@ static void intel_dp_set_drrs_state(struct drm_i915_private *dev_priv,
> void intel_edp_drrs_enable(struct intel_dp *intel_dp,
> const struct intel_crtc_state *crtc_state)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!crtc_state->has_drrs) {
> DRM_DEBUG_KMS("Panel doesn't support DRRS\n");
> @@ -6160,7 +6153,7 @@ void intel_edp_drrs_enable(struct intel_dp *intel_dp,
> void intel_edp_drrs_disable(struct intel_dp *intel_dp,
> const struct intel_crtc_state *old_crtc_state)
> {
> - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!old_crtc_state->has_drrs)
> return;
> @@ -6392,8 +6385,8 @@ intel_dp_drrs_init(struct intel_connector *connector,
> static bool intel_edp_init_connector(struct intel_dp *intel_dp,
> struct intel_connector *intel_connector)
> {
> - struct drm_device *dev = intel_dp_to_dev(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> + struct drm_device *dev = &dev_priv->drm;
> struct drm_connector *connector = &intel_connector->base;
> struct drm_display_mode *fixed_mode = NULL;
> struct drm_display_mode *downclock_mode = NULL;
> diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
> index ea758aa4dee3..0d4e59ec54ac 100644
> --- a/drivers/gpu/drm/i915/intel_drv.h
> +++ b/drivers/gpu/drm/i915/intel_drv.h
> @@ -1315,6 +1315,12 @@ dp_to_lspcon(struct intel_dp *intel_dp)
> return &dp_to_dig_port(intel_dp)->lspcon;
> }
>
> +static inline struct drm_i915_private *
> +dp_to_i915(struct intel_dp *intel_dp)
> +{
> + return to_i915(dp_to_dig_port(intel_dp)->base.base.dev);
> +}
> +
> static inline struct intel_digital_port *
> hdmi_to_dig_port(struct intel_hdmi *intel_hdmi)
> {
> --
> 2.17.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c
2018-08-27 22:30 ` [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c Rodrigo Vivi
@ 2018-08-28 12:44 ` Ville Syrjälä
0 siblings, 0 replies; 7+ messages in thread
From: Ville Syrjälä @ 2018-08-28 12:44 UTC (permalink / raw)
To: Rodrigo Vivi; +Cc: intel-gfx, Dhinakaran Pandiyan
On Mon, Aug 27, 2018 at 03:30:21PM -0700, Rodrigo Vivi wrote:
> Now that we have a generic caller let's simplify it and
> clean up the intel_psr.c code a bit.
>
> Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_psr.c | 50 +++++++++-----------------------
> 1 file changed, 14 insertions(+), 36 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c
> index da583a45e942..7acd84a150f7 100644
> --- a/drivers/gpu/drm/i915/intel_psr.c
> +++ b/drivers/gpu/drm/i915/intel_psr.c
> @@ -270,7 +270,7 @@ static void intel_psr_setup_vsc(struct intel_dp *intel_dp,
> const struct intel_crtc_state *crtc_state)
> {
> struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(intel_dig_port->base.base.dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct edp_vsc_psr psr_vsc;
>
> if (dev_priv->psr.psr2_enabled) {
> @@ -300,8 +300,7 @@ static void intel_psr_setup_vsc(struct intel_dp *intel_dp,
>
> static void hsw_psr_setup_aux(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 aux_clock_divider, aux_ctl;
> int i;
> static const uint8_t aux_msg[] = {
> @@ -334,9 +333,7 @@ static void hsw_psr_setup_aux(struct intel_dp *intel_dp)
>
> static void intel_psr_enable_sink(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u8 dpcd_val = DP_PSR_ENABLE;
>
> /* Enable ALPM at sink for psr2 */
> @@ -357,9 +354,7 @@ static void intel_psr_enable_sink(struct intel_dp *intel_dp)
>
> static void hsw_activate_psr1(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 max_sleep_time = 0x1f;
> u32 val = EDP_PSR_ENABLE;
>
> @@ -414,9 +409,7 @@ static void hsw_activate_psr1(struct intel_dp *intel_dp)
>
> static void hsw_activate_psr2(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> u32 val;
>
> /* Let's use 6 as the minimum to cover all known cases including the
> @@ -452,8 +445,7 @@ static void hsw_activate_psr2(struct intel_dp *intel_dp)
> static bool intel_psr2_config_valid(struct intel_dp *intel_dp,
> struct intel_crtc_state *crtc_state)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> int crtc_hdisplay = crtc_state->base.adjusted_mode.crtc_hdisplay;
> int crtc_vdisplay = crtc_state->base.adjusted_mode.crtc_vdisplay;
> int psr_max_h = 0, psr_max_v = 0;
> @@ -488,7 +480,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
> struct intel_crtc_state *crtc_state)
> {
> struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_i915_private *dev_priv = to_i915(dig_port->base.base.dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> const struct drm_display_mode *adjusted_mode =
> &crtc_state->base.adjusted_mode;
> int psr_setup_time;
> @@ -544,9 +536,7 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
>
> static void intel_psr_activate(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (INTEL_GEN(dev_priv) >= 9)
> WARN_ON(I915_READ(EDP_PSR2_CTL) & EDP_PSR2_ENABLE);
> @@ -566,9 +556,7 @@ static void intel_psr_activate(struct intel_dp *intel_dp)
> static void intel_psr_enable_source(struct intel_dp *intel_dp,
> const struct intel_crtc_state *crtc_state)
> {
> - struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
>
> /* Only HSW and BDW have PSR AUX registers that need to be setup. SKL+
> @@ -639,9 +627,7 @@ static void intel_psr_enable_locked(struct drm_i915_private *dev_priv,
> void intel_psr_enable(struct intel_dp *intel_dp,
> const struct intel_crtc_state *crtc_state)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!crtc_state->has_psr)
> return;
> @@ -673,9 +659,7 @@ void intel_psr_enable(struct intel_dp *intel_dp,
> static void
> intel_psr_disable_source(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (dev_priv->psr.active) {
> i915_reg_t psr_status;
> @@ -714,9 +698,7 @@ intel_psr_disable_source(struct intel_dp *intel_dp)
>
> static void intel_psr_disable_locked(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> lockdep_assert_held(&dev_priv->psr.lock);
>
> @@ -743,9 +725,7 @@ static void intel_psr_disable_locked(struct intel_dp *intel_dp)
> void intel_psr_disable(struct intel_dp *intel_dp,
> const struct intel_crtc_state *old_crtc_state)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
>
> if (!old_crtc_state->has_psr)
> return;
> @@ -1106,9 +1086,7 @@ void intel_psr_init(struct drm_i915_private *dev_priv)
>
> void intel_psr_short_pulse(struct intel_dp *intel_dp)
> {
> - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> - struct drm_device *dev = intel_dig_port->base.base.dev;
> - struct drm_i915_private *dev_priv = to_i915(dev);
> + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> struct i915_psr *psr = &dev_priv->psr;
> u8 val;
> const u8 errors = DP_PSR_RFB_STORAGE_ERROR |
> --
> 2.17.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] drm/i915: introduce dp_to_i915() helper
2018-08-28 12:43 ` [PATCH 1/2] " Ville Syrjälä
@ 2018-08-28 14:00 ` Rodrigo Vivi
0 siblings, 0 replies; 7+ messages in thread
From: Rodrigo Vivi @ 2018-08-28 14:00 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx
On Tue, Aug 28, 2018 at 03:43:28PM +0300, Ville Syrjälä wrote:
> On Mon, Aug 27, 2018 at 03:30:20PM -0700, Rodrigo Vivi wrote:
> > No functional change. But let's get first i915 pointer
> > directly from intel_dp so we can clean up a lot of code
> > later.
>
> Pretty sure I have a cocci script for this somewhere, just never posted
> the results :)
a script would be easier indeed.... specially consider possible internal
conflict on rebasing.
but anyway let it be now...
>
> But manual conversion works fine too, so
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
... pushed, thanks
>
> >
> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_dp.c | 109 +++++++++++++++----------------
> > drivers/gpu/drm/i915/intel_drv.h | 6 ++
> > 2 files changed, 57 insertions(+), 58 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> > index db8515171270..436c22de33b6 100644
> > --- a/drivers/gpu/drm/i915/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/intel_dp.c
> > @@ -107,13 +107,6 @@ bool intel_dp_is_edp(struct intel_dp *intel_dp)
> > return intel_dig_port->base.type == INTEL_OUTPUT_EDP;
> > }
> >
> > -static struct drm_device *intel_dp_to_dev(struct intel_dp *intel_dp)
> > -{
> > - struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > -
> > - return intel_dig_port->base.base.dev;
> > -}
> > -
> > static struct intel_dp *intel_attached_dp(struct drm_connector *connector)
> > {
> > return enc_to_intel_dp(&intel_attached_encoder(connector)->base);
> > @@ -232,7 +225,7 @@ intel_dp_link_required(int pixel_clock, int bpp)
> > void icl_program_mg_dp_mode(struct intel_dp *intel_dp)
> > {
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum port port = intel_dig_port->base.port;
> > enum tc_port tc_port = intel_port_to_tc(dev_priv, port);
> > u32 ln0, ln1, lane_info;
> > @@ -661,7 +654,7 @@ intel_dp_pps_init(struct intel_dp *intel_dp);
> >
> > static void pps_lock(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > /*
> > * See intel_power_sequencer_reset() why we need
> > @@ -674,7 +667,7 @@ static void pps_lock(struct intel_dp *intel_dp)
> >
> > static void pps_unlock(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > mutex_unlock(&dev_priv->pps_mutex);
> >
> > @@ -684,7 +677,7 @@ static void pps_unlock(struct intel_dp *intel_dp)
> > static void
> > vlv_power_sequencer_kick(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum pipe pipe = intel_dp->pps_pipe;
> > bool pll_enabled, release_cl_override = false;
> > @@ -789,7 +782,7 @@ static enum pipe vlv_find_free_pps(struct drm_i915_private *dev_priv)
> > static enum pipe
> > vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum pipe pipe;
> >
> > @@ -836,7 +829,7 @@ vlv_power_sequencer_pipe(struct intel_dp *intel_dp)
> > static int
> > bxt_power_sequencer_idx(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > int backlight_controller = dev_priv->vbt.backlight.controller;
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> > @@ -905,7 +898,7 @@ vlv_initial_pps_pipe(struct drm_i915_private *dev_priv,
> > static void
> > vlv_initial_power_sequencer_setup(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum port port = intel_dig_port->base.port;
> >
> > @@ -982,7 +975,7 @@ struct pps_registers {
> > static void intel_pps_get_registers(struct intel_dp *intel_dp,
> > struct pps_registers *regs)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > int pps_idx = 0;
> >
> > memset(regs, 0, sizeof(*regs));
> > @@ -1028,7 +1021,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
> > {
> > struct intel_dp *intel_dp = container_of(this, typeof(* intel_dp),
> > edp_notifier);
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (!intel_dp_is_edp(intel_dp) || code != SYS_RESTART)
> > return 0;
> > @@ -1058,7 +1051,7 @@ static int edp_notify_handler(struct notifier_block *this, unsigned long code,
> >
> > static bool edp_have_panel_power(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> >
> > @@ -1071,7 +1064,7 @@ static bool edp_have_panel_power(struct intel_dp *intel_dp)
> >
> > static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> >
> > @@ -1085,7 +1078,7 @@ static bool edp_have_panel_vdd(struct intel_dp *intel_dp)
> > static void
> > intel_dp_check_edp(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (!intel_dp_is_edp(intel_dp))
> > return;
> > @@ -1101,7 +1094,7 @@ intel_dp_check_edp(struct intel_dp *intel_dp)
> > static uint32_t
> > intel_dp_aux_wait_done(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > i915_reg_t ch_ctl = intel_dp->aux_ch_ctl_reg(intel_dp);
> > uint32_t status;
> > bool done;
> > @@ -1118,7 +1111,7 @@ intel_dp_aux_wait_done(struct intel_dp *intel_dp)
> >
> > static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (index)
> > return 0;
> > @@ -1132,7 +1125,7 @@ static uint32_t g4x_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> >
> > static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (index)
> > return 0;
> > @@ -1150,7 +1143,7 @@ static uint32_t ilk_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> >
> > static uint32_t hsw_get_aux_clock_divider(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (intel_dp->aux_ch != AUX_CH_A && HAS_PCH_LPT_H(dev_priv)) {
> > /* Workaround for non-ULT HSW */
> > @@ -1552,7 +1545,7 @@ intel_aux_power_domain(struct intel_dp *intel_dp)
> >
> > static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1568,7 +1561,7 @@ static i915_reg_t g4x_aux_ctl_reg(struct intel_dp *intel_dp)
> >
> > static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1584,7 +1577,7 @@ static i915_reg_t g4x_aux_data_reg(struct intel_dp *intel_dp, int index)
> >
> > static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1602,7 +1595,7 @@ static i915_reg_t ilk_aux_ctl_reg(struct intel_dp *intel_dp)
> >
> > static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1620,7 +1613,7 @@ static i915_reg_t ilk_aux_data_reg(struct intel_dp *intel_dp, int index)
> >
> > static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1639,7 +1632,7 @@ static i915_reg_t skl_aux_ctl_reg(struct intel_dp *intel_dp)
> >
> > static i915_reg_t skl_aux_data_reg(struct intel_dp *intel_dp, int index)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum aux_ch aux_ch = intel_dp->aux_ch;
> >
> > switch (aux_ch) {
> > @@ -1665,7 +1658,7 @@ intel_dp_aux_fini(struct intel_dp *intel_dp)
> > static void
> > intel_dp_aux_init(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> >
> > intel_dp->aux_ch = intel_aux_ch(intel_dp);
> > @@ -1833,7 +1826,7 @@ struct link_config_limits {
> > static int intel_dp_compute_bpp(struct intel_dp *intel_dp,
> > struct intel_crtc_state *pipe_config)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_connector *intel_connector = intel_dp->attached_connector;
> > int bpp, bpc;
> >
> > @@ -2201,7 +2194,7 @@ static void wait_panel_status(struct intel_dp *intel_dp,
> > u32 mask,
> > u32 value)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > i915_reg_t pp_stat_reg, pp_ctrl_reg;
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> > @@ -2277,7 +2270,7 @@ static void edp_wait_backlight_off(struct intel_dp *intel_dp)
> >
> > static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 control;
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> > @@ -2298,7 +2291,7 @@ static u32 ironlake_get_pp_control(struct intel_dp *intel_dp)
> > */
> > static bool edp_panel_vdd_on(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > u32 pp;
> > i915_reg_t pp_stat_reg, pp_ctrl_reg;
> > @@ -2369,7 +2362,7 @@ void intel_edp_panel_vdd_on(struct intel_dp *intel_dp)
> >
> > static void edp_panel_vdd_off_sync(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port =
> > dp_to_dig_port(intel_dp);
> > u32 pp;
> > @@ -2435,7 +2428,7 @@ static void edp_panel_vdd_schedule_off(struct intel_dp *intel_dp)
> > */
> > static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> >
> > @@ -2455,7 +2448,7 @@ static void edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
> >
> > static void edp_panel_on(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp;
> > i915_reg_t pp_ctrl_reg;
> >
> > @@ -2513,7 +2506,7 @@ void intel_edp_panel_on(struct intel_dp *intel_dp)
> >
> > static void edp_panel_off(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp;
> > i915_reg_t pp_ctrl_reg;
> >
> > @@ -2561,7 +2554,7 @@ void intel_edp_panel_off(struct intel_dp *intel_dp)
> > /* Enable backlight in the panel power control. */
> > static void _intel_edp_backlight_on(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp;
> > i915_reg_t pp_ctrl_reg;
> >
> > @@ -2604,7 +2597,7 @@ void intel_edp_backlight_on(const struct intel_crtc_state *crtc_state,
> > /* Disable backlight in the panel power control. */
> > static void _intel_edp_backlight_off(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp;
> > i915_reg_t pp_ctrl_reg;
> >
> > @@ -3035,7 +3028,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
> > uint32_t *DP,
> > uint8_t dp_train_pat)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum port port = intel_dig_port->base.port;
> > uint8_t train_pat_mask = drm_dp_training_pattern_mask(intel_dp->dpcd);
> > @@ -3117,7 +3110,7 @@ _intel_dp_set_link_train(struct intel_dp *intel_dp,
> > static void intel_dp_enable_port(struct intel_dp *intel_dp,
> > const struct intel_crtc_state *old_crtc_state)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > /* enable with pattern 1 (as per spec) */
> >
> > @@ -3374,7 +3367,7 @@ intel_dp_get_link_status(struct intel_dp *intel_dp, uint8_t link_status[DP_LINK_
> > uint8_t
> > intel_dp_voltage_max(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> > enum port port = encoder->port;
> >
> > @@ -3393,7 +3386,7 @@ intel_dp_voltage_max(struct intel_dp *intel_dp)
> > uint8_t
> > intel_dp_pre_emphasis_max(struct intel_dp *intel_dp, uint8_t voltage_swing)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> > enum port port = encoder->port;
> >
> > @@ -3705,7 +3698,7 @@ ivb_cpu_edp_signal_levels(uint8_t train_set)
> > void
> > intel_dp_set_signal_levels(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum port port = intel_dig_port->base.port;
> > uint32_t signal_levels, mask = 0;
> > @@ -3762,7 +3755,7 @@ intel_dp_program_link_training_pattern(struct intel_dp *intel_dp,
> >
> > void intel_dp_set_idle_link_train(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_digital_port *intel_dig_port = dp_to_dig_port(intel_dp);
> > enum port port = intel_dig_port->base.port;
> > uint32_t val;
> > @@ -4455,7 +4448,7 @@ static bool intel_dp_hotplug(struct intel_encoder *encoder,
> > static bool
> > intel_dp_short_pulse(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u8 sink_irq_vector = 0;
> > u8 old_sink_count = intel_dp->sink_count;
> > bool ret;
> > @@ -5547,7 +5540,7 @@ static const struct intel_hdcp_shim intel_dp_hdcp_shim = {
> >
> > static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > lockdep_assert_held(&dev_priv->pps_mutex);
> >
> > @@ -5568,7 +5561,7 @@ static void intel_edp_panel_vdd_sanitize(struct intel_dp *intel_dp)
> >
> > static enum pipe vlv_active_pipe(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct intel_encoder *encoder = &dp_to_dig_port(intel_dp)->base;
> > enum pipe pipe;
> >
> > @@ -5635,7 +5628,7 @@ enum irqreturn
> > intel_dp_hpd_pulse(struct intel_digital_port *intel_dig_port, bool long_hpd)
> > {
> > struct intel_dp *intel_dp = &intel_dig_port->dp;
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > enum irqreturn ret = IRQ_NONE;
> >
> > if (long_hpd && intel_dig_port->base.type == INTEL_OUTPUT_EDP) {
> > @@ -5751,7 +5744,7 @@ static void intel_dp_init_panel_power_timestamps(struct intel_dp *intel_dp)
> > static void
> > intel_pps_readout_hw_state(struct intel_dp *intel_dp, struct edp_power_seq *seq)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp_on, pp_off, pp_div = 0, pp_ctl = 0;
> > struct pps_registers regs;
> >
> > @@ -5819,7 +5812,7 @@ intel_pps_verify_state(struct intel_dp *intel_dp)
> > static void
> > intel_dp_init_panel_power_sequencer(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > struct edp_power_seq cur, vbt, spec,
> > *final = &intel_dp->pps_delays;
> >
> > @@ -5912,7 +5905,7 @@ static void
> > intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
> > bool force_disable_vdd)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > u32 pp_on, pp_off, pp_div, port_sel = 0;
> > int div = dev_priv->rawclk_freq / 1000;
> > struct pps_registers regs;
> > @@ -6008,7 +6001,7 @@ intel_dp_init_panel_power_sequencer_registers(struct intel_dp *intel_dp,
> >
> > static void intel_dp_pps_init(struct intel_dp *intel_dp)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) {
> > vlv_initial_power_sequencer_setup(intel_dp);
> > @@ -6125,7 +6118,7 @@ static void intel_dp_set_drrs_state(struct drm_i915_private *dev_priv,
> > void intel_edp_drrs_enable(struct intel_dp *intel_dp,
> > const struct intel_crtc_state *crtc_state)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (!crtc_state->has_drrs) {
> > DRM_DEBUG_KMS("Panel doesn't support DRRS\n");
> > @@ -6160,7 +6153,7 @@ void intel_edp_drrs_enable(struct intel_dp *intel_dp,
> > void intel_edp_drrs_disable(struct intel_dp *intel_dp,
> > const struct intel_crtc_state *old_crtc_state)
> > {
> > - struct drm_i915_private *dev_priv = to_i915(intel_dp_to_dev(intel_dp));
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> >
> > if (!old_crtc_state->has_drrs)
> > return;
> > @@ -6392,8 +6385,8 @@ intel_dp_drrs_init(struct intel_connector *connector,
> > static bool intel_edp_init_connector(struct intel_dp *intel_dp,
> > struct intel_connector *intel_connector)
> > {
> > - struct drm_device *dev = intel_dp_to_dev(intel_dp);
> > - struct drm_i915_private *dev_priv = to_i915(dev);
> > + struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > + struct drm_device *dev = &dev_priv->drm;
> > struct drm_connector *connector = &intel_connector->base;
> > struct drm_display_mode *fixed_mode = NULL;
> > struct drm_display_mode *downclock_mode = NULL;
> > diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
> > index ea758aa4dee3..0d4e59ec54ac 100644
> > --- a/drivers/gpu/drm/i915/intel_drv.h
> > +++ b/drivers/gpu/drm/i915/intel_drv.h
> > @@ -1315,6 +1315,12 @@ dp_to_lspcon(struct intel_dp *intel_dp)
> > return &dp_to_dig_port(intel_dp)->lspcon;
> > }
> >
> > +static inline struct drm_i915_private *
> > +dp_to_i915(struct intel_dp *intel_dp)
> > +{
> > + return to_i915(dp_to_dig_port(intel_dp)->base.base.dev);
> > +}
> > +
> > static inline struct intel_digital_port *
> > hdmi_to_dig_port(struct intel_hdmi *intel_hdmi)
> > {
> > --
> > 2.17.1
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
> --
> Ville Syrjälä
> Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-08-28 14:01 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-27 22:30 [PATCH 1/2] drm/i915: introduce dp_to_i915() helper Rodrigo Vivi
2018-08-27 22:30 ` [PATCH 2/2] drm/i915: Use dp_to_i915 on intel_psr.c Rodrigo Vivi
2018-08-28 12:44 ` Ville Syrjälä
2018-08-27 22:53 ` ✓ Fi.CI.BAT: success for series starting with [1/2] drm/i915: introduce dp_to_i915() helper Patchwork
2018-08-27 23:44 ` ✓ Fi.CI.IGT: " Patchwork
2018-08-28 12:43 ` [PATCH 1/2] " Ville Syrjälä
2018-08-28 14:00 ` Rodrigo Vivi
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.