On 4/20/22 17:47, Javier Martinez Canillas wrote: [snip] >> >>> When I built this, it appeared to succeed. I used the command "make >>> M=/drivers/staging/fbtft modules". Is this incorrect? For reference this >>> is my first patch so it's highly likely I did this incorrectly. >> > > You are just changing a header file though, did you also enable one of the > fbtft drivers as a module to see if those build? But as said, by looking at > the code it seems that should build correctly. > It seems that this is the problem with Ian's build test. If I enabled both CONFIG_FB_TFT=y and CONFIG_FB_TFT_AGM1264K_FL=m, I get the following build error (as Uwe pointed out before): $ make M=drivers/staging/fbtft/ CC [M] drivers/staging/fbtft/fb_agm1264k-fl.o In file included from drivers/staging/fbtft/fb_agm1264k-fl.c:15: drivers/staging/fbtft/fbtft.h:284:1: error: expected ‘,’ or ‘;’ before ‘static’ 284 | static int fbtft_driver_probe_spi(struct spi_device *spi) \ | ^~~~~~ drivers/staging/fbtft/fbtft.h:323:1: note: in expansion of macro ‘FBTFT_SPI_DRIVER’ 323 | FBTFT_SPI_DRIVER(_name, _compatible, _display, NULL) \ | ^~~~~~~~~~~~~~~~ drivers/staging/fbtft/fb_agm1264k-fl.c:435:1: note: in expansion of macro ‘FBTFT_REGISTER_DRIVER’ 435 | FBTFT_REGISTER_DRIVER(DRVNAME, "displaytronic,fb_agm1264k-fl", &display); | ^~~~~~~~~~~~~~~~~~~~~ drivers/staging/fbtft/fbtft.h:302:18: error: ‘fbtft_driver_probe_spi’ undeclared here (not in a function); did you mean ‘fbtft_driver_remove_spi’? 302 | .probe = fbtft_driver_probe_spi, \ | ^~~~~~~~~~~~~~~~~~~~~~ drivers/staging/fbtft/fbtft.h:323:1: note: in expansion of macro ‘FBTFT_SPI_DRIVER’ 323 | FBTFT_SPI_DRIVER(_name, _compatible, _display, NULL) \ | ^~~~~~~~~~~~~~~~ drivers/staging/fbtft/fb_agm1264k-fl.c:435:1: note: in expansion of macro ‘FBTFT_REGISTER_DRIVER’ 435 | FBTFT_REGISTER_DRIVER(DRVNAME, "displaytronic,fb_agm1264k-fl", &display); | ^~~~~~~~~~~~~~~~~~~~~ make[1]: *** [scripts/Makefile.build:288: drivers/staging/fbtft/fb_agm1264k-fl.o] Error 1 make: *** [Makefile:1834: drivers/staging/fbtft] Error 2 while without removing the semicolon like this patch does, it builds correctly: $ make M=drivers/staging/fbtft/ CC [M] drivers/staging/fbtft/fb_agm1264k-fl.o MODPOST drivers/staging/fbtft/Module.symvers LD [M] drivers/staging/fbtft/fb_agm1264k-fl.ko -- Best regards, Javier Martinez Canillas Linux Engineering Red Hat