Commit 6fc41c1c authored by Abderrahmane Jarmouni's avatar Abderrahmane Jarmouni Committed by Anas Nashif
Browse files

drivers: display: stm32_ltdc: fix return value



Blanking On/Off calls should not return 0 when there is no panel
controller to forward them to, instead they should return ENOSYS to
signal to the application that they were not actually executed.

"device_is_ready" does check for null, but also for
"dev->state->initialized == false", so we need to isolate the
"dev == NULL" case.

Signed-off-by: default avatarAbderrahmane Jarmouni <git@jarmouni.me>
(cherry picked from commit f7de44df)
parent b258fb02
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -252,8 +252,10 @@ static int stm32_ltdc_display_blanking_off(const struct device *dev)
	const struct display_stm32_ltdc_config *config = dev->config;
	const struct device *display_dev = config->display_controller;

	/* Panel controller's phandle is not passed to LTDC in devicetree */
	if (display_dev == NULL) {
		return 0;
		LOG_ERR("There is no panel controller to forward blanking_off call to");
		return -ENOSYS;
	}

	if (!device_is_ready(display_dev)) {
@@ -269,8 +271,10 @@ static int stm32_ltdc_display_blanking_on(const struct device *dev)
	const struct display_stm32_ltdc_config *config = dev->config;
	const struct device *display_dev = config->display_controller;

	/* Panel controller's phandle is not passed to LTDC in devicetree */
	if (display_dev == NULL) {
		return 0;
		LOG_ERR("There is no panel controller to forward blanking_on call to");
		return -ENOSYS;
	}

	if (!device_is_ready(config->display_controller)) {