diff options
Diffstat (limited to 'drivers/gpu/drm/tegra/output.c')
| -rw-r--r-- | drivers/gpu/drm/tegra/output.c | 11 | 
1 files changed, 9 insertions, 2 deletions
| diff --git a/drivers/gpu/drm/tegra/output.c b/drivers/gpu/drm/tegra/output.c index c662efc7e413..9c2b9dad55c3 100644 --- a/drivers/gpu/drm/tegra/output.c +++ b/drivers/gpu/drm/tegra/output.c @@ -36,7 +36,7 @@ int tegra_output_connector_get_modes(struct drm_connector *connector)  	else if (output->ddc)  		edid = drm_get_edid(connector, output->ddc); -	cec_notifier_set_phys_addr_from_edid(output->notifier, edid); +	cec_notifier_set_phys_addr_from_edid(output->cec, edid);  	drm_connector_update_edid_property(connector, edid);  	if (edid) { @@ -73,7 +73,7 @@ tegra_output_connector_detect(struct drm_connector *connector, bool force)  	}  	if (status != connector_status_connected) -		cec_notifier_phys_addr_invalidate(output->notifier); +		cec_notifier_phys_addr_invalidate(output->cec);  	return status;  } @@ -174,11 +174,18 @@ int tegra_output_probe(struct tegra_output *output)  		disable_irq(output->hpd_irq);  	} +	output->cec = cec_notifier_get(output->dev); +	if (!output->cec) +		return -ENOMEM; +  	return 0;  }  void tegra_output_remove(struct tegra_output *output)  { +	if (output->cec) +		cec_notifier_put(output->cec); +  	if (gpio_is_valid(output->hpd_gpio)) {  		free_irq(output->hpd_irq, output);  		gpio_free(output->hpd_gpio); | 
