tree: https://kernel.googlesource.com/pub/scm/linux/kernel/git/linusw/linux-gpio.git devel-gpio-driver-isolation head: e1db9bf671ed01b4f9fc33bbaa57d0c493c0389f commit: 79f925bb1584cc0ad4af9a37cd2e6bb5ed51ab5a [13/14] gpio: Drop driver header from legacy header include config: arm64-defconfig (attached as .config) compiler: aarch64-linux-gcc (GCC) 7.4.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 79f925bb1584cc0ad4af9a37cd2e6bb5ed51ab5a # save the attached .config to linux build tree GCC_VERSION=7.4.0 make.cross ARCH=arm64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): In file included from include/linux/gpio.h:62:0, from drivers/gpu//drm/msm/disp/dpu1/dpu_io_util.h:8, from drivers/gpu//drm/msm/disp/dpu1/dpu_kms.h:20, from drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:6: include/asm-generic/gpio.h: In function 'gpio_to_chip': include/asm-generic/gpio.h:60:9: error: implicit declaration of function 'gpiod_to_chip'; did you mean 'gpio_to_chip'? [-Werror=implicit-function-declaration] return gpiod_to_chip(gpio_to_desc(gpio)); ^~~~~~~~~~~~~ gpio_to_chip include/asm-generic/gpio.h:60:9: warning: return makes pointer from integer without a cast [-Wint-conversion] return gpiod_to_chip(gpio_to_desc(gpio)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: In function 'dpu_mdss_irq': drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:64:30: error: implicit declaration of function 'irq_desc_get_handler_data'; did you mean 'i2c_get_adapdata'? [-Werror=implicit-function-declaration] struct dpu_mdss *dpu_mdss = irq_desc_get_handler_data(desc); ^~~~~~~~~~~~~~~~~~~~~~~~~ i2c_get_adapdata drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:64:30: warning: initialization makes pointer from integer without a cast [-Wint-conversion] drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:65:26: error: implicit declaration of function 'irq_desc_get_chip'; did you mean 'msm_dss_get_clk'? [-Werror=implicit-function-declaration] struct irq_chip *chip = irq_desc_get_chip(desc); ^~~~~~~~~~~~~~~~~ msm_dss_get_clk drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:65:26: warning: initialization makes pointer from integer without a cast [-Wint-conversion] drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:68:2: error: implicit declaration of function 'chained_irq_enter'; did you mean 'rcu_irq_enter'? [-Werror=implicit-function-declaration] chained_irq_enter(chip, desc); ^~~~~~~~~~~~~~~~~ rcu_irq_enter drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:84:8: error: implicit declaration of function 'generic_handle_irq'; did you mean 'generic_read_dir'? [-Werror=implicit-function-declaration] rc = generic_handle_irq(mapping); ^~~~~~~~~~~~~~~~~~ generic_read_dir drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:94:2: error: implicit declaration of function 'chained_irq_exit'; did you mean 'rcu_irq_exit'? [-Werror=implicit-function-declaration] chained_irq_exit(chip, desc); ^~~~~~~~~~~~~~~~ rcu_irq_exit drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: In function 'dpu_mdss_irq_mask': drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:99:30: error: implicit declaration of function 'irq_data_get_irq_chip_data'; did you mean 'irq_get_irqchip_state'? [-Werror=implicit-function-declaration] struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); ^~~~~~~~~~~~~~~~~~~~~~~~~~ irq_get_irqchip_state drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:99:30: warning: initialization makes pointer from integer without a cast [-Wint-conversion] drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:103:16: error: dereferencing pointer to incomplete type 'struct irq_data' clear_bit(irqd->hwirq, &dpu_mdss->irq_controller.enabled_mask); ^~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: In function 'dpu_mdss_irq_unmask': drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:110:30: warning: initialization makes pointer from integer without a cast [-Wint-conversion] struct dpu_mdss *dpu_mdss = irq_data_get_irq_chip_data(irqd); ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: At top level: drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:119:15: error: variable 'dpu_mdss_irq_chip' has initializer but incomplete type static struct irq_chip dpu_mdss_irq_chip = { ^~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:120:3: error: 'struct irq_chip' has no member named 'name' .name = "dpu_mdss", ^~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:120:10: warning: excess elements in struct initializer .name = "dpu_mdss", ^~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:120:10: note: (near initialization for 'dpu_mdss_irq_chip') drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:121:3: error: 'struct irq_chip' has no member named 'irq_mask' .irq_mask = dpu_mdss_irq_mask, ^~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:121:14: warning: excess elements in struct initializer .irq_mask = dpu_mdss_irq_mask, ^~~~~~~~~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:121:14: note: (near initialization for 'dpu_mdss_irq_chip') drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:122:3: error: 'struct irq_chip' has no member named 'irq_unmask' .irq_unmask = dpu_mdss_irq_unmask, ^~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:122:16: warning: excess elements in struct initializer .irq_unmask = dpu_mdss_irq_unmask, ^~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:122:16: note: (near initialization for 'dpu_mdss_irq_chip') drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: In function 'dpu_mdss_irqdomain_map': drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:132:2: error: implicit declaration of function 'irq_set_lockdep_class'; did you mean 'irq_set_irqchip_state'? [-Werror=implicit-function-declaration] irq_set_lockdep_class(irq, &dpu_mdss_lock_key, &dpu_mdss_request_key); ^~~~~~~~~~~~~~~~~~~~~ irq_set_irqchip_state >> drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:133:2: error: implicit declaration of function 'irq_set_chip_and_handler'; did you mean 'acpi_scan_add_handler'? [-Werror=implicit-function-declaration] irq_set_chip_and_handler(irq, &dpu_mdss_irq_chip, handle_level_irq); ^~~~~~~~~~~~~~~~~~~~~~~~ acpi_scan_add_handler >> drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:133:52: error: 'handle_level_irq' undeclared (first use in this function); did you mean 'rtc_handle_legacy_irq'? irq_set_chip_and_handler(irq, &dpu_mdss_irq_chip, handle_level_irq); ^~~~~~~~~~~~~~~~ rtc_handle_legacy_irq drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:133:52: note: each undeclared identifier is reported only once for each function it appears in >> drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:134:9: error: implicit declaration of function 'irq_set_chip_data'; did you mean 'i2c_set_adapdata'? [-Werror=implicit-function-declaration] return irq_set_chip_data(irq, dpu_mdss); ^~~~~~~~~~~~~~~~~ i2c_set_adapdata drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: In function 'dpu_mdss_destroy': drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:213:2: error: implicit declaration of function 'irq_set_chained_handler_and_data' [-Werror=implicit-function-declaration] irq_set_chained_handler_and_data(irq, NULL, NULL); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c: At top level: drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c:119:24: error: storage size of 'dpu_mdss_irq_chip' isn't known static struct irq_chip dpu_mdss_irq_chip = { ^~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +133 drivers/gpu//drm/msm/disp/dpu1/dpu_mdss.c 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 118 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 119 static struct irq_chip dpu_mdss_irq_chip = { 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 120 .name = "dpu_mdss", 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 121 .irq_mask = dpu_mdss_irq_mask, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 @122 .irq_unmask = dpu_mdss_irq_unmask, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 123 }; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 124 070e64dc1bbc87 Stephen Boyd 2019-01-03 125 static struct lock_class_key dpu_mdss_lock_key, dpu_mdss_request_key; 070e64dc1bbc87 Stephen Boyd 2019-01-03 126 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 127 static int dpu_mdss_irqdomain_map(struct irq_domain *domain, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 128 unsigned int irq, irq_hw_number_t hwirq) 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 129 { 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 130 struct dpu_mdss *dpu_mdss = domain->host_data; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 131 070e64dc1bbc87 Stephen Boyd 2019-01-03 @132 irq_set_lockdep_class(irq, &dpu_mdss_lock_key, &dpu_mdss_request_key); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 @133 irq_set_chip_and_handler(irq, &dpu_mdss_irq_chip, handle_level_irq); 070e64dc1bbc87 Stephen Boyd 2019-01-03 @134 return irq_set_chip_data(irq, dpu_mdss); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 135 } 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 136 :::::: The code at line 133 was first introduced by commit :::::: 25fdd5933e4c0f5fe2ea5cd59994f8ac5fbe90ef drm/msm: Add SDM845 DPU support :::::: TO: Jeykumar Sankaran <jsanka@xxxxxxxxxxxxxx> :::::: CC: Sean Paul <seanpaul@xxxxxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip