On Tue, 2020-03-10 at 21:06 +0200, Ville Syrjälä wrote: > On Tue, Mar 10, 2020 at 02:54:16PM -0400, Lyude Paul wrote: > > i915 can enable aux device nodes for DP MST by calling > > drm_dp_mst_connector_late_register()/drm_dp_mst_connector_early_unregister > > (), > > so let's hook that up. > > > > Changes since v1: > > * Call intel_connector_register/unregister() from > > intel_dp_mst_connector_late_register/unregister() so we don't lose > > error injection - Ville Syrjälä > > > > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Cc: Manasi Navare <manasi.d.navare@xxxxxxxxx> > > Cc: "Lee, Shawn C" <shawn.c.lee@xxxxxxxxx> > > Signed-off-by: Lyude Paul <lyude@xxxxxxxxxx> > > --- > > drivers/gpu/drm/i915/display/intel_dp_mst.c | 28 +++++++++++++++++++-- > > 1 file changed, 26 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c > > b/drivers/gpu/drm/i915/display/intel_dp_mst.c > > index d53978ed3c12..9311c10f5b1b 100644 > > --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c > > +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c > > @@ -548,12 +548,36 @@ static int intel_dp_mst_get_ddc_modes(struct > > drm_connector *connector) > > return ret; > > } > > > > +static int > > +intel_dp_mst_connector_late_register(struct drm_connector *connector) > > +{ > > + struct intel_connector *intel_connector = > > to_intel_connector(connector); > > + int ret; > > + > > + ret = drm_dp_mst_connector_late_register(connector, > > + intel_connector->port); > > + if (ret < 0) > > + return ret; > > + > > + return intel_connector_register(connector); > > Don't we have to undo the damage if this fails? Yep, whoops. Will send out another respin with this fixed > > > +} > > + > > +static void > > +intel_dp_mst_connector_early_unregister(struct drm_connector *connector) > > +{ > > + struct intel_connector *intel_connector = > > to_intel_connector(connector); > > + > > + intel_connector_unregister(connector); > > + drm_dp_mst_connector_early_unregister(connector, > > + intel_connector->port); > > +} > > + > > static const struct drm_connector_funcs intel_dp_mst_connector_funcs = { > > .fill_modes = drm_helper_probe_single_connector_modes, > > .atomic_get_property = intel_digital_connector_atomic_get_property, > > .atomic_set_property = intel_digital_connector_atomic_set_property, > > - .late_register = intel_connector_register, > > - .early_unregister = intel_connector_unregister, > > + .late_register = intel_dp_mst_connector_late_register, > > + .early_unregister = intel_dp_mst_connector_early_unregister, > > .destroy = intel_connector_destroy, > > .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, > > .atomic_duplicate_state = intel_digital_connector_duplicate_state, > > -- > > 2.24.1 -- Cheers, Lyude Paul (she/her) Associate Software Engineer at Red Hat _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx