Re: [PATCH v4 4/4] drm/i915/bxt: add bxt dsi gpio element support

Jani Nikula
2016-04-08T09:16:06Z

On Thu, 07 Apr 2016, kbuild test robot <lkp@intel.com> wrote:
> Hi Jani,
>
> [auto build test ERROR on drm-intel/for-linux-next]
> [cannot apply to v4.6-rc2 next-20160407]
> [if your patch is applied to the wrong git tree, please drop us a note to help improving the system]
>
> url: https://github.com/0day-ci/linux/commits/Jani-Nikula/drm-i915-dsi-improved-gpio-element-support-for-vlv-chv-bxt/20160407-223107
> base: git://anongit.freedesktop.org/drm-intel for-linux-next
> config: x86_64-randconfig-a0-04072115 (attached as .config)

Meh, including linux/gpio.h works for CONFIG_GPIOLIB=y, but it fails to
include the consumer function stubs for CONFIG_GPIOLIB=n. The fix is to
include linux/gpio/consumer.h instead.

BR,
Jani.

> reproduce:
> # save the attached .config to linux build tree
> make ARCH=x86_64
>
> All errors (new ones prefixed by >>):
>
> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c: In function 'bxt_exec_gpio':
>>> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c:307:15: error: implicit declaration of function 'devm_gpiod_get_index' [-Werror=implicit-function-declaration]
> gpio_desc = devm_gpiod_get_index(dev_priv->dev->dev,
> ^
>>> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c:309:16: error: 'GPIOD_OUT_LOW' undeclared (first use in this function)
> value ? GPIOD_OUT_LOW :
> ^
> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c:309:16: note: each undeclared identifier is reported only once for each function it appears in
>>> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c:310:8: error: 'GPIOD_OUT_HIGH' undeclared (first use in this function)
> GPIOD_OUT_HIGH);
> ^
>>> drivers/gpu/drm/i915/intel_dsi_panel_vbt.c:321:2: error: implicit declaration of function 'gpiod_set_value' [-Werror=implicit-function-declaration]
> gpiod_set_value(gpio_desc, value);
> ^
> cc1: some warnings being treated as errors
>
> vim +/devm_gpiod_get_index +307 drivers/gpu/drm/i915/intel_dsi_panel_vbt.c
>
> 301 {
> 302 /* XXX: this table is a quick ugly hack. */
> 303 static struct gpio_desc *bxt_gpio_table[U8_MAX + 1];
> 304 struct gpio_desc *gpio_desc = bxt_gpio_table[gpio_index];
> 305
> 306 if (!gpio_desc) {
> > 307 gpio_desc = devm_gpiod_get_index(dev_priv->dev->dev,
> 308 NULL, gpio_index,
> > 309 value ? GPIOD_OUT_LOW :
> > 310 GPIOD_OUT_HIGH);
> 311
> 312 if (IS_ERR_OR_NULL(gpio_desc)) {
> 313 DRM_ERROR("GPIO index %u request failed (%ld)\n",
> 314 gpio_index, PTR_ERR(gpio_desc));
> 315 return;
> 316 }
> 317
> 318 bxt_gpio_table[gpio_index] = gpio_desc;
> 319 }
> 320
> > 321 gpiod_set_value(gpio_desc, value);
> 322 }
> 323
> 324 static const u8 *mipi_exec_gpio(struct intel_dsi *intel_dsi, const u8 *data)
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation

--
Jani Nikula, Intel Open Source Technology Center