Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 949f0886 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Sean Paul
Browse files

drm: Make the connector .detect() callback optional



Many drivers (21 to be exact) create connectors that are always
connected (for instance to an LVDS or DSI panel). Instead of forcing
them to implement a dummy .detect() handler, make the callback optional
and consider the connector as always connected in that case.

Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Acked-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: default avatarJyri Sarha <jsarha@ti.com>
Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
Acked-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Acked-by: default avatarVincent Abriou <vincent.abriou@st.com>
Acked-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
[seanpaul fixed small conflict in rcar-du/rcar_du_lvdscon.c]
Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
parent 87291e5d
Loading
Loading
Loading
Loading
+0 −7
Original line number Original line Diff line number Diff line
@@ -429,12 +429,6 @@ dce_virtual_dpms(struct drm_connector *connector, int mode)
	return 0;
	return 0;
}
}


static enum drm_connector_status
dce_virtual_detect(struct drm_connector *connector, bool force)
{
	return connector_status_connected;
}

static int
static int
dce_virtual_set_property(struct drm_connector *connector,
dce_virtual_set_property(struct drm_connector *connector,
			 struct drm_property *property,
			 struct drm_property *property,
@@ -463,7 +457,6 @@ static const struct drm_connector_helper_funcs dce_virtual_connector_helper_func


static const struct drm_connector_funcs dce_virtual_connector_funcs = {
static const struct drm_connector_funcs dce_virtual_connector_funcs = {
	.dpms = dce_virtual_dpms,
	.dpms = dce_virtual_dpms,
	.detect = dce_virtual_detect,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.set_property = dce_virtual_set_property,
	.set_property = dce_virtual_set_property,
	.destroy = dce_virtual_destroy,
	.destroy = dce_virtual_destroy,
+0 −7
Original line number Original line Diff line number Diff line
@@ -41,12 +41,6 @@ static int arcpgu_drm_connector_get_modes(struct drm_connector *connector)
	return count;
	return count;
}
}


static enum drm_connector_status
arcpgu_drm_connector_detect(struct drm_connector *connector, bool force)
{
	return connector_status_connected;
}

static void arcpgu_drm_connector_destroy(struct drm_connector *connector)
static void arcpgu_drm_connector_destroy(struct drm_connector *connector)
{
{
	drm_connector_unregister(connector);
	drm_connector_unregister(connector);
@@ -61,7 +55,6 @@ arcpgu_drm_connector_helper_funcs = {
static const struct drm_connector_funcs arcpgu_drm_connector_funcs = {
static const struct drm_connector_funcs arcpgu_drm_connector_funcs = {
	.dpms = drm_helper_connector_dpms,
	.dpms = drm_helper_connector_dpms,
	.reset = drm_atomic_helper_connector_reset,
	.reset = drm_atomic_helper_connector_reset,
	.detect = arcpgu_drm_connector_detect,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.destroy = arcpgu_drm_connector_destroy,
	.destroy = arcpgu_drm_connector_destroy,
	.atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
	.atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
+0 −7
Original line number Original line Diff line number Diff line
@@ -839,12 +839,6 @@ static void ast_connector_destroy(struct drm_connector *connector)
	kfree(connector);
	kfree(connector);
}
}


static enum drm_connector_status
ast_connector_detect(struct drm_connector *connector, bool force)
{
	return connector_status_connected;
}

static const struct drm_connector_helper_funcs ast_connector_helper_funcs = {
static const struct drm_connector_helper_funcs ast_connector_helper_funcs = {
	.mode_valid = ast_mode_valid,
	.mode_valid = ast_mode_valid,
	.get_modes = ast_get_modes,
	.get_modes = ast_get_modes,
@@ -853,7 +847,6 @@ static const struct drm_connector_helper_funcs ast_connector_helper_funcs = {


static const struct drm_connector_funcs ast_connector_funcs = {
static const struct drm_connector_funcs ast_connector_funcs = {
	.dpms = drm_helper_connector_dpms,
	.dpms = drm_helper_connector_dpms,
	.detect = ast_connector_detect,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.destroy = ast_connector_destroy,
	.destroy = ast_connector_destroy,
};
};
+0 −7
Original line number Original line Diff line number Diff line
@@ -216,12 +216,6 @@ bochs_connector_best_encoder(struct drm_connector *connector)
	return NULL;
	return NULL;
}
}


static enum drm_connector_status bochs_connector_detect(struct drm_connector
							*connector, bool force)
{
	return connector_status_connected;
}

static const struct drm_connector_helper_funcs bochs_connector_connector_helper_funcs = {
static const struct drm_connector_helper_funcs bochs_connector_connector_helper_funcs = {
	.get_modes = bochs_connector_get_modes,
	.get_modes = bochs_connector_get_modes,
	.mode_valid = bochs_connector_mode_valid,
	.mode_valid = bochs_connector_mode_valid,
@@ -230,7 +224,6 @@ static const struct drm_connector_helper_funcs bochs_connector_connector_helper_


static const struct drm_connector_funcs bochs_connector_connector_funcs = {
static const struct drm_connector_funcs bochs_connector_connector_funcs = {
	.dpms = drm_helper_connector_dpms,
	.dpms = drm_helper_connector_dpms,
	.detect = bochs_connector_detect,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.destroy = drm_connector_cleanup,
	.destroy = drm_connector_cleanup,
};
};
+0 −7
Original line number Original line Diff line number Diff line
@@ -239,16 +239,9 @@ static const struct drm_connector_helper_funcs ptn3460_connector_helper_funcs =
	.get_modes = ptn3460_get_modes,
	.get_modes = ptn3460_get_modes,
};
};


static enum drm_connector_status ptn3460_detect(struct drm_connector *connector,
		bool force)
{
	return connector_status_connected;
}

static const struct drm_connector_funcs ptn3460_connector_funcs = {
static const struct drm_connector_funcs ptn3460_connector_funcs = {
	.dpms = drm_atomic_helper_connector_dpms,
	.dpms = drm_atomic_helper_connector_dpms,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.fill_modes = drm_helper_probe_single_connector_modes,
	.detect = ptn3460_detect,
	.destroy = drm_connector_cleanup,
	.destroy = drm_connector_cleanup,
	.reset = drm_atomic_helper_connector_reset,
	.reset = drm_atomic_helper_connector_reset,
	.atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
	.atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state,
Loading