summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/display/dc/gpio
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2020-10-23 09:46:54 +0200
committerAlex Deucher <alexander.deucher@amd.com>2020-10-26 16:52:00 -0400
commit594b6f7370a84ae7fd87e16e2e8560874a01d70c (patch)
tree016457be10c77a2e8da72ee6481d9224cd9c0e02 /drivers/gpu/drm/amd/display/dc/gpio
parent44ea03e17ef5ca4a5f527ffbb26c57d16758bac9 (diff)
downloadlinux-stable-594b6f7370a84ae7fd87e16e2e8560874a01d70c.tar.gz
linux-stable-594b6f7370a84ae7fd87e16e2e8560874a01d70c.tar.bz2
linux-stable-594b6f7370a84ae7fd87e16e2e8560874a01d70c.zip
drm/amd/display: Fix kernel panic by dal_gpio_open() error
Currently both error code paths handled in dal_gpio_open_ex() issues ASSERT_CRITICAL(), and this leads to a kernel panic unnecessarily if CONFIG_KGDB is enabled. Since basically both are non-critical errors and can be recovered, drop those assert calls and use a safer one, BREAK_TO_DEBUGGER(), for allowing the debugging, instead. BugLink: https://bugzilla.opensuse.org/show_bug.cgi?id=1177973 Cc: <stable@vger.kernel.org> Acked-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/dc/gpio')
-rw-r--r--drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
index f67c18375bfd..dac427b68fd7 100644
--- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
+++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_base.c
@@ -63,13 +63,13 @@ enum gpio_result dal_gpio_open_ex(
enum gpio_mode mode)
{
if (gpio->pin) {
- ASSERT_CRITICAL(false);
+ BREAK_TO_DEBUGGER();
return GPIO_RESULT_ALREADY_OPENED;
}
// No action if allocation failed during gpio construct
if (!gpio->hw_container.ddc) {
- ASSERT_CRITICAL(false);
+ BREAK_TO_DEBUGGER();
return GPIO_RESULT_NON_SPECIFIC_ERROR;
}
gpio->mode = mode;