tree: https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio.git b4/descriptors-wireless head: 3ca0eec7ecfa5c404f41e9b1e7690ec64de77b53 commit: 3ca0eec7ecfa5c404f41e9b1e7690ec64de77b53 [2/2] wifi: ath9k: Obtain system GPIOS from descriptors config: hexagon-allmodconfig (https://download.01.org/0day-ci/archive/20240410/202404101357.XagbwkcW-lkp@xxxxxxxxx/config) compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 8b3b4a92adee40483c27f26c478a384cd69c6f05) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240410/202404101357.XagbwkcW-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202404101357.XagbwkcW-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from drivers/gpio/gpio-ath79.c:11: In file included from include/linux/gpio/driver.h:8: In file included from include/linux/irqchip/chained_irq.h:10: In file included from include/linux/irq.h:20: In file included from include/linux/io.h:13: In file included from arch/hexagon/include/asm/io.h:328: include/asm-generic/io.h:547:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 547 | val = __raw_readb(PCI_IOBASE + addr); | ~~~~~~~~~~ ^ include/asm-generic/io.h:560:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 560 | val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr)); | ~~~~~~~~~~ ^ include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu' 37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x)) | ^ In file included from drivers/gpio/gpio-ath79.c:11: In file included from include/linux/gpio/driver.h:8: In file included from include/linux/irqchip/chained_irq.h:10: In file included from include/linux/irq.h:20: In file included from include/linux/io.h:13: In file included from arch/hexagon/include/asm/io.h:328: include/asm-generic/io.h:573:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 573 | val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr)); | ~~~~~~~~~~ ^ include/uapi/linux/byteorder/little_endian.h:35:51: note: expanded from macro '__le32_to_cpu' 35 | #define __le32_to_cpu(x) ((__force __u32)(__le32)(x)) | ^ In file included from drivers/gpio/gpio-ath79.c:11: In file included from include/linux/gpio/driver.h:8: In file included from include/linux/irqchip/chained_irq.h:10: In file included from include/linux/irq.h:20: In file included from include/linux/io.h:13: In file included from arch/hexagon/include/asm/io.h:328: include/asm-generic/io.h:584:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 584 | __raw_writeb(value, PCI_IOBASE + addr); | ~~~~~~~~~~ ^ include/asm-generic/io.h:594:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 594 | __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr); | ~~~~~~~~~~ ^ include/asm-generic/io.h:604:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic] 604 | __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr); | ~~~~~~~~~~ ^ >> drivers/gpio/gpio-ath79.c:240:32: error: use of undeclared identifier 'pdev'; did you mean 'dev'? 240 | lookup = devm_kzalloc(&pdev->dev, | ^~~~ | dev drivers/gpio/gpio-ath79.c:233:64: note: 'dev' declared here 233 | static int ath79_gpio_register_wifi_descriptors(struct device *dev, | ^ >> drivers/gpio/gpio-ath79.c:240:38: error: no member named 'dev' in 'struct device'; did you mean 'devt'? 240 | lookup = devm_kzalloc(&pdev->dev, | ^~~ | devt include/linux/device.h:776:10: note: 'devt' declared here 776 | dev_t devt; /* dev_t, creates the sysfs "dev" */ | ^ >> drivers/gpio/gpio-ath79.c:251:4: error: call to undeclared function 'PIO_LOOKUP_IDX'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 251 | PIO_LOOKUP_IDX(label, 0, NULL, i, | ^ >> drivers/gpio/gpio-ath79.c:250:22: error: used type 'struct gpiod_lookup' where arithmetic or pointer type is required 250 | lookup->table[i] = (struct gpiod_lookup) | ^ 251 | PIO_LOOKUP_IDX(label, 0, NULL, i, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 252 | GPIO_ACTIVE_HIGH); | ~~~~~~~~~~~~~~~~~ 6 warnings and 4 errors generated. vim +240 drivers/gpio/gpio-ath79.c 225 226 #if IS_ENABLED(CONFIG_ATH9K_AHB) 227 /* 228 * This registers all of the ath79k GPIOs as descriptors to be picked 229 * directly from the ATH79K wifi driver if the two are jitted together 230 * in the same SoC. 231 */ 232 #define ATH79K_WIFI_DESCS 32 233 static int ath79_gpio_register_wifi_descriptors(struct device *dev, 234 const char *label) 235 { 236 struct gpiod_lookup_table *lookup; 237 int i; 238 239 /* Create a gpiod lookup using gpiochip-local offsets + 1 for NULL */ > 240 lookup = devm_kzalloc(&pdev->dev, 241 struct_size(lookup, table, ATH79K_WIFI_DESCS + 1), 242 GFP_KERNEL); 243 244 if (!lookup) 245 return -ENOMEM; 246 247 lookup->dev_id = "ath9k"; 248 249 for (i = 0; i < ATH79K_WIFI_DESCS; i++) { > 250 lookup->table[i] = (struct gpiod_lookup) > 251 PIO_LOOKUP_IDX(label, 0, NULL, i, 252 GPIO_ACTIVE_HIGH); 253 } 254 255 gpiod_add_lookup_table(lookup); 256 257 return 0; 258 } 259 #else 260 static int ath79_gpio_register_wifi_descriptors(struct device *dev, 261 const char *label) 262 { 263 } 264 #endif 265 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki