From 5dd0792cf58a760c84c2da217bd9108f130e7bb6 Mon Sep 17 00:00:00 2001 From: Harry Wentland Date: Thu, 7 Feb 2019 15:12:35 -0500 Subject: [PATCH 1235/2940] drm/amd/display: Check hpd_gpio for NULL before accessing it dal_gpio_open and dal_gpio_unlock_pin dereference hpd_gpio. Check for NULL before calling those functions. Fixes: e261568f94d6 ("drm/amd/display: add gpio lock/unlock") Reported-by: Przemek Socha CC: Chiawen Huang CC: Tony Cheng Signed-off-by: Harry Wentland Acked-by: Alex Deucher Tested-by: Alex Deucher --- drivers/gpu/drm/amd/display/dc/core/dc_link.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_link.c b/drivers/gpu/drm/amd/display/dc/core/dc_link.c index 829319abaa2a..a5b18cfac326 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_link.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_link.c @@ -1127,10 +1127,11 @@ static bool construct( link->dc->res_pool->funcs->link_init(link); link->hpd_gpio = get_hpd_gpio(link->ctx->dc_bios, link->link_id, link->ctx->gpio_service); - dal_gpio_open(link->hpd_gpio, GPIO_MODE_INTERRUPT); - dal_gpio_unlock_pin(link->hpd_gpio); - if (link->hpd_gpio != NULL) + if (link->hpd_gpio != NULL) { + dal_gpio_open(link->hpd_gpio, GPIO_MODE_INTERRUPT); + dal_gpio_unlock_pin(link->hpd_gpio); link->irq_source_hpd = dal_irq_get_source(link->hpd_gpio); + } switch (link->link_id.id) { case CONNECTOR_ID_HDMI_TYPE_A: -- 2.17.1