-
Notifications
You must be signed in to change notification settings - Fork 123
Open
Description
When using CONFIG_VIN_SENSOR_OV4689 (enabled in starfive_jh7110_defconfig) on unmodified https://github.com/starfive-tech/linux/tree/JH7110_VisionFive2_6.12.y_devel branch:
CC [M] drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.o
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c: In function ‘ov4689_write_reg’:
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c:1569:15: error: implicit declaration of function ‘i2c_transfer’; did you mean ‘spi_sync_transfer’? [-Werror=implicit-function-declaration]
1569 | ret = i2c_transfer(client->adapter, &msg, 1);
| ^~~~~~~~~~~~
| spi_sync_transfer
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c: At top level:
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c:2979:1: warning: data definition has no type or storage class
2979 | module_i2c_driver(ov4689_i2c_driver);
| ^~~~~~~~~~~~~~~~~
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c:2979:1: error: type defaults to ‘int’ in declaration of ‘module_i2c_driver’ [-Werror=implicit-int]
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c:2979:1: warning: parameter names (without types) in function declaration
drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.c:2968:26: warning: ‘ov4689_i2c_driver’ defined but not used [-Wunused-variable]
2968 | static struct i2c_driver ov4689_i2c_driver = {
| ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[6]: *** [scripts/Makefile.build:229: drivers/media/platform/starfive/v4l2_driver/ov4689_mipi.o] Error 1
make[5]: *** [scripts/Makefile.build:478: drivers/media/platform/starfive] Error 2
make[4]: *** [scripts/Makefile.build:478: drivers/media/platform] Error 2
make[3]: *** [scripts/Makefile.build:478: drivers/media] Error 2
make[2]: *** [scripts/Makefile.build:478: drivers] Error 2
make[2]: *** Waiting for unfinished jobs....
linux/i2c.h is included, but the structure is defined only within CONFIG_I2C check, which is not explicitly enabled in the default config. Adding CONFIG_I2C=y or CONFIG_I2C=m solves the issue. Seems the explicit depends/select for this is missing?
Metadata
Metadata
Assignees
Labels
No labels