2024-01-10 18:56:28

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] iio: imu: bno055: serdev requires REGMAP

There are a ton of build errors when REGMAP is not set, so select
REGMAP to fix all of them.

Examples (not all of them):

./drivers/iio/imu/bno055/bno055_ser_core.c:495:15: error: variable 'bno055_ser_regmap_bus' has initializer but incomplete type
495 | static struct regmap_bus bno055_ser_regmap_bus = {
./drivers/iio/imu/bno055/bno055_ser_core.c:496:10: error: 'struct regmap_bus' has no member named 'write'
496 | .write = bno055_ser_write_reg,
./drivers/iio/imu/bno055/bno055_ser_core.c:497:10: error: 'struct regmap_bus' has no member named 'read'
497 | .read = bno055_ser_read_reg,
./drivers/iio/imu/bno055/bno055_ser_core.c: In function 'bno055_ser_probe':
./drivers/iio/imu/bno055/bno055_ser_core.c:532:18: error: implicit declaration of function 'devm_regmap_init'; did you mean 'vmem_map_init'? [-Werror=implicit-function-declaration]
532 | regmap = devm_regmap_init(&serdev->dev, &bno055_ser_regmap_bus,
./drivers/iio/imu/bno055/bno055_ser_core.c:532:16: warning: assignment to 'struct regmap *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
532 | regmap = devm_regmap_init(&serdev->dev, &bno055_ser_regmap_bus,
./drivers/iio/imu/bno055/bno055_ser_core.c: At top level:
./drivers/iio/imu/bno055/bno055_ser_core.c:495:26: error: storage size of 'bno055_ser_regmap_bus' isn't known
495 | static struct regmap_bus bno055_ser_regmap_bus = {

Fixes: 2eef5a9cc643 ("iio: imu: add BNO055 serdev driver")
Signed-off-by: Randy Dunlap <[email protected]>
Cc: Andrea Merello <[email protected]>
Cc: Jonathan Cameron <[email protected]>
Cc: Lars-Peter Clausen <[email protected]>
Cc: [email protected]
---
drivers/iio/imu/bno055/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff -- a/drivers/iio/imu/bno055/Kconfig b/drivers/iio/imu/bno055/Kconfig
--- a/drivers/iio/imu/bno055/Kconfig
+++ b/drivers/iio/imu/bno055/Kconfig
@@ -8,6 +8,7 @@ config BOSCH_BNO055
config BOSCH_BNO055_SERIAL
tristate "Bosch BNO055 attached via UART"
depends on SERIAL_DEV_BUS
+ select REGMAP
select BOSCH_BNO055
help
Enable this to support Bosch BNO055 IMUs attached via UART.


2024-01-13 16:26:23

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH] iio: imu: bno055: serdev requires REGMAP

On Wed, 10 Jan 2024 10:56:11 -0800
Randy Dunlap <[email protected]> wrote:

> There are a ton of build errors when REGMAP is not set, so select
> REGMAP to fix all of them.
>
> Examples (not all of them):
>
> ../drivers/iio/imu/bno055/bno055_ser_core.c:495:15: error: variable 'bno055_ser_regmap_bus' has initializer but incomplete type
> 495 | static struct regmap_bus bno055_ser_regmap_bus = {
> ../drivers/iio/imu/bno055/bno055_ser_core.c:496:10: error: 'struct regmap_bus' has no member named 'write'
> 496 | .write = bno055_ser_write_reg,
> ../drivers/iio/imu/bno055/bno055_ser_core.c:497:10: error: 'struct regmap_bus' has no member named 'read'
> 497 | .read = bno055_ser_read_reg,
> ../drivers/iio/imu/bno055/bno055_ser_core.c: In function 'bno055_ser_probe':
> ../drivers/iio/imu/bno055/bno055_ser_core.c:532:18: error: implicit declaration of function 'devm_regmap_init'; did you mean 'vmem_map_init'? [-Werror=implicit-function-declaration]
> 532 | regmap = devm_regmap_init(&serdev->dev, &bno055_ser_regmap_bus,
> ../drivers/iio/imu/bno055/bno055_ser_core.c:532:16: warning: assignment to 'struct regmap *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
> 532 | regmap = devm_regmap_init(&serdev->dev, &bno055_ser_regmap_bus,
> ../drivers/iio/imu/bno055/bno055_ser_core.c: At top level:
> ../drivers/iio/imu/bno055/bno055_ser_core.c:495:26: error: storage size of 'bno055_ser_regmap_bus' isn't known
> 495 | static struct regmap_bus bno055_ser_regmap_bus = {
>
> Fixes: 2eef5a9cc643 ("iio: imu: add BNO055 serdev driver")
> Signed-off-by: Randy Dunlap <[email protected]>
> Cc: Andrea Merello <[email protected]>
> Cc: Jonathan Cameron <[email protected]>
> Cc: Lars-Peter Clausen <[email protected]>
> Cc: [email protected]
Applied to the fixes-togreg branch of iio.git and marked for stable.

Thanks,
Jonathan

> ---
> drivers/iio/imu/bno055/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff -- a/drivers/iio/imu/bno055/Kconfig b/drivers/iio/imu/bno055/Kconfig
> --- a/drivers/iio/imu/bno055/Kconfig
> +++ b/drivers/iio/imu/bno055/Kconfig
> @@ -8,6 +8,7 @@ config BOSCH_BNO055
> config BOSCH_BNO055_SERIAL
> tristate "Bosch BNO055 attached via UART"
> depends on SERIAL_DEV_BUS
> + select REGMAP
> select BOSCH_BNO055
> help
> Enable this to support Bosch BNO055 IMUs attached via UART.