[PATCH 17/32] drm/i915/display: Move intel_primary_crtc to intel_joiner
Ankit Nautiyal
ankit.k.nautiyal at intel.com
Wed Sep 4 08:45:28 UTC 2024
Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal at intel.com>
---
.../gpu/drm/i915/display/intel_atomic_plane.c | 2 +-
drivers/gpu/drm/i915/display/intel_display.c | 16 +++-------------
drivers/gpu/drm/i915/display/intel_display.h | 1 -
drivers/gpu/drm/i915/display/intel_joiner.c | 11 +++++++++++
drivers/gpu/drm/i915/display/intel_joiner.h | 2 ++
.../gpu/drm/i915/display/intel_modeset_verify.c | 3 ++-
6 files changed, 19 insertions(+), 16 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
index 478205b88502..678910965002 100644
--- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
+++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
@@ -725,7 +725,7 @@ int intel_plane_atomic_check(struct intel_atomic_state *state,
if (new_crtc_state && intel_joiner_crtc_is_joiner_secondary(new_crtc_state)) {
struct intel_crtc *primary_crtc =
- intel_primary_crtc(new_crtc_state);
+ intel_joiner_primary_crtc(new_crtc_state);
struct intel_plane *primary_crtc_plane =
intel_crtc_get_plane(primary_crtc, plane->id);
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 556c7774a0b0..44d920e4df91 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -250,16 +250,6 @@ is_trans_port_sync_mode(const struct intel_crtc_state *crtc_state)
is_trans_port_sync_slave(crtc_state);
}
-struct intel_crtc *intel_primary_crtc(const struct intel_crtc_state *crtc_state)
-{
- struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
-
- if (intel_joiner_crtc_is_joiner_secondary(crtc_state))
- return intel_crtc_for_pipe(i915, intel_joiner_get_primary_pipe(crtc_state));
- else
- return to_intel_crtc(crtc_state->uapi.crtc);
-}
-
static void
intel_wait_for_pipe_off(const struct intel_crtc_state *old_crtc_state)
{
@@ -770,7 +760,7 @@ intel_get_crtc_new_encoder(const struct intel_atomic_state *state,
int num_encoders = 0;
int i;
- primary_crtc = intel_primary_crtc(crtc_state);
+ primary_crtc = intel_joiner_primary_crtc(crtc_state);
for_each_new_connector_in_state(&state->base, connector, connector_state, i) {
if (connector_state->crtc != &primary_crtc->base)
@@ -4331,7 +4321,7 @@ copy_joiner_crtc_state_nomodeset(struct intel_atomic_state *state,
{
struct intel_crtc_state *secondary_crtc_state =
intel_atomic_get_new_crtc_state(state, secondary_crtc);
- struct intel_crtc *primary_crtc = intel_primary_crtc(secondary_crtc_state);
+ struct intel_crtc *primary_crtc = intel_joiner_primary_crtc(secondary_crtc_state);
const struct intel_crtc_state *primary_crtc_state =
intel_atomic_get_new_crtc_state(state, primary_crtc);
@@ -4351,7 +4341,7 @@ copy_joiner_crtc_state_modeset(struct intel_atomic_state *state,
{
struct intel_crtc_state *secondary_crtc_state =
intel_atomic_get_new_crtc_state(state, secondary_crtc);
- struct intel_crtc *primary_crtc = intel_primary_crtc(secondary_crtc_state);
+ struct intel_crtc *primary_crtc = intel_joiner_primary_crtc(secondary_crtc_state);
const struct intel_crtc_state *primary_crtc_state =
intel_atomic_get_new_crtc_state(state, primary_crtc);
struct intel_crtc_state *saved_state;
diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
index b0f5303a5bb0..091801309af9 100644
--- a/drivers/gpu/drm/i915/display/intel_display.h
+++ b/drivers/gpu/drm/i915/display/intel_display.h
@@ -422,7 +422,6 @@ intel_cpu_transcoder_mode_valid(struct drm_i915_private *i915,
enum phy intel_port_to_phy(struct drm_i915_private *i915, enum port port);
bool is_trans_port_sync_mode(const struct intel_crtc_state *state);
bool is_trans_port_sync_master(const struct intel_crtc_state *state);
-struct intel_crtc *intel_primary_crtc(const struct intel_crtc_state *crtc_state);
bool intel_crtc_get_pipe_config(struct intel_crtc_state *crtc_state);
bool intel_pipe_config_compare(const struct intel_crtc_state *current_config,
const struct intel_crtc_state *pipe_config,
diff --git a/drivers/gpu/drm/i915/display/intel_joiner.c b/drivers/gpu/drm/i915/display/intel_joiner.c
index 0899cf51a825..6ef960412c44 100644
--- a/drivers/gpu/drm/i915/display/intel_joiner.c
+++ b/drivers/gpu/drm/i915/display/intel_joiner.c
@@ -7,6 +7,7 @@
#include "i915_drv.h"
#include "intel_atomic.h"
+#include "intel_crtc.h"
#include "intel_display.h"
#include "intel_display_device.h"
#include "intel_display_types.h"
@@ -262,3 +263,13 @@ u8 intel_joiner_crtc_joiner_secondary_pipes(const struct intel_crtc_state *crtc_
else
return 0;
}
+
+struct intel_crtc *intel_joiner_primary_crtc(const struct intel_crtc_state *crtc_state)
+{
+ struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
+
+ if (intel_joiner_crtc_is_joiner_secondary(crtc_state))
+ return intel_crtc_for_pipe(i915, intel_joiner_get_primary_pipe(crtc_state));
+ else
+ return to_intel_crtc(crtc_state->uapi.crtc);
+}
diff --git a/drivers/gpu/drm/i915/display/intel_joiner.h b/drivers/gpu/drm/i915/display/intel_joiner.h
index cae9971c44f6..0373c0d3ad5b 100644
--- a/drivers/gpu/drm/i915/display/intel_joiner.h
+++ b/drivers/gpu/drm/i915/display/intel_joiner.h
@@ -12,6 +12,7 @@ enum pipe;
struct drm_display_mode;
struct drm_i915_private;
struct intel_atomic_state;
+struct intel_crtc;
struct intel_crtc_state;
enum pipe intel_joiner_get_primary_pipe(const struct intel_crtc_state *crtc_state);
@@ -32,5 +33,6 @@ u8 intel_joiner_crtc_joined_pipe_mask(const struct intel_crtc_state *crtc_state)
bool intel_joiner_crtc_is_joiner_primary(const struct intel_crtc_state *crtc_state);
bool intel_joiner_crtc_is_joiner_secondary(const struct intel_crtc_state *crtc_state);
u8 intel_joiner_crtc_joiner_secondary_pipes(const struct intel_crtc_state *crtc_state);
+struct intel_crtc *intel_joiner_primary_crtc(const struct intel_crtc_state *crtc_state);
#endif/* __INTEL_JOINER_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_modeset_verify.c b/drivers/gpu/drm/i915/display/intel_modeset_verify.c
index 3491db5cad31..7a1aed0821d8 100644
--- a/drivers/gpu/drm/i915/display/intel_modeset_verify.c
+++ b/drivers/gpu/drm/i915/display/intel_modeset_verify.c
@@ -15,6 +15,7 @@
#include "intel_display.h"
#include "intel_display_types.h"
#include "intel_fdi.h"
+#include "intel_joiner.h"
#include "intel_modeset_verify.h"
#include "intel_snps_phy.h"
#include "skl_watermark.h"
@@ -193,7 +194,7 @@ verify_crtc_state(struct intel_atomic_state *state,
"transitional active state does not match atomic hw state (expected %i, found %i)\n",
sw_crtc_state->hw.active, crtc->active);
- primary_crtc = intel_primary_crtc(sw_crtc_state);
+ primary_crtc = intel_joiner_primary_crtc(sw_crtc_state);
for_each_encoder_on_crtc(dev, &primary_crtc->base, encoder) {
enum pipe pipe;
--
2.45.2
More information about the Intel-gfx-trybot
mailing list