Re: [PATCH -next] drm/bridge: lt8912b: DRM_LONTIUM_LT8912B select GPIOLIB

From: Robert Foss
Date: Tue Apr 06 2021 - 06:21:46 EST


Hey Zhang

On Tue, 6 Apr 2021 at 11:07, Zhang Jianhua <zhangjianhua18@xxxxxxxxxx> wrote:
>
> If CONFIG_DRM_LONTIUM_LT8912B=y, the following errors will be seen while
> compiling lontium-lt8912b.c
>
> drivers/gpu/drm/bridge/lontium-lt8912b.c: In function
> ‘lt8912_hard_power_on’:
> drivers/gpu/drm/bridge/lontium-lt8912b.c:252:2: error: implicit
> declaration of function ‘gpiod_set_value_cansleep’; did you mean
> ‘gpio_set_value_cansleep’? [-Werror=implicit-function-declaration]
> gpiod_set_value_cansleep(lt->gp_reset, 0);
> ^~~~~~~~~~~~~~~~~~~~~~~~
> gpio_set_value_cansleep
> drivers/gpu/drm/bridge/lontium-lt8912b.c: In function ‘lt8912_parse_dt’:
> drivers/gpu/drm/bridge/lontium-lt8912b.c:628:13: error: implicit
> declaration of function ‘devm_gpiod_get_optional’; did you mean
> ‘devm_gpio_request_one’? [-Werror=implicit-function-declaration]
> gp_reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
> ^~~~~~~~~~~~~~~~~~~~~~~
> devm_gpio_request_one
> drivers/gpu/drm/bridge/lontium-lt8912b.c:628:51: error: ‘GPIOD_OUT_HIGH’
> undeclared (first use in this function); did you mean ‘GPIOF_INIT_HIGH’?
> gp_reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
> ^~~~~~~~~~~~~~
> GPIOF_INIT_HIGH
>
> Signed-off-by: Zhang Jianhua <zhangjianhua18@xxxxxxxxxx>
> ---
> drivers/gpu/drm/bridge/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
> index dba62f92d051..caa9658ec933 100644
> --- a/drivers/gpu/drm/bridge/Kconfig
> +++ b/drivers/gpu/drm/bridge/Kconfig
> @@ -67,6 +67,7 @@ config DRM_LONTIUM_LT8912B
> select DRM_PANEL_BRIDGE
> select DRM_KMS_HELPER
> select REGMAP_I2C
> + select GPIOLIB

This appears like the right fix for this problem. However, a number of
drm/bridge drivers seem to call both gpio_set_value_cansleep() and
devm_gpiod_get_optional() without having the GPIOLIB kconfig option
selected so this can't be a new issue. Maybe some more investigation
is in order.