mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 14:13:16 +00:00
98 lines
3.0 KiB
Diff
98 lines
3.0 KiB
Diff
|
From 04ca4e22abfc21a615b6003ea512fa79dee94cd5 Mon Sep 17 00:00:00 2001
|
||
|
From: PolarStarWalker <savmot1929@gmail.com>
|
||
|
Date: Mon, 2 Jan 2023 02:13:27 +0300
|
||
|
Subject: [PATCH] overlays: i2c-sensor: Add BNO055 IMU sensor
|
||
|
|
||
|
Add support for the Bosch BNO055 9-dof IMU sensor.
|
||
|
|
||
|
Signed-off-by: PolarStarWalker <savmot1929@gmail.com>
|
||
|
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
||
|
---
|
||
|
arch/arm/boot/dts/overlays/README | 6 ++++
|
||
|
.../boot/dts/overlays/i2c-sensor-common.dtsi | 28 ++++++++++++++++++-
|
||
|
2 files changed, 33 insertions(+), 1 deletion(-)
|
||
|
|
||
|
--- a/arch/arm/boot/dts/overlays/README
|
||
|
+++ b/arch/arm/boot/dts/overlays/README
|
||
|
@@ -2005,6 +2005,9 @@ Params: addr Set the
|
||
|
bmp280 Select the Bosch Sensortronic BMP280
|
||
|
Valid addresses 0x76-0x77, default 0x76
|
||
|
|
||
|
+ bno055 Select the Bosch Sensortronic BNO055 IMU
|
||
|
+ Valid address 0x28-0x29, default 0x29
|
||
|
+
|
||
|
ccs811 Select the AMS CCS811 digital gas sensor
|
||
|
Valid addresses 0x5a-0x5b, default 0x5b
|
||
|
|
||
|
@@ -2071,6 +2074,9 @@ Params: addr Set the
|
||
|
incompatible device can stop it from being
|
||
|
activated.
|
||
|
|
||
|
+ reset_pin GPIO to be used to reset the device (bno055
|
||
|
+ only, disabled by default)
|
||
|
+
|
||
|
sht3x Select the Sensiron SHT3x temperature and
|
||
|
humidity sensor. Valid addresses 0x44-0x45,
|
||
|
default 0x44
|
||
|
--- a/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi
|
||
|
+++ b/arch/arm/boot/dts/overlays/i2c-sensor-common.dtsi
|
||
|
@@ -2,6 +2,8 @@
|
||
|
/dts-v1/;
|
||
|
/plugin/;
|
||
|
|
||
|
+#include <dt-bindings/gpio/gpio.h>
|
||
|
+
|
||
|
/ {
|
||
|
compatible = "brcm,bcm2835";
|
||
|
|
||
|
@@ -455,6 +457,27 @@
|
||
|
};
|
||
|
};
|
||
|
|
||
|
+ fragment@30 {
|
||
|
+ target = <&bno055>;
|
||
|
+ __dormant__ {
|
||
|
+ reset-gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
+ fragment@31 {
|
||
|
+ target = <&i2cbus>;
|
||
|
+ __dormant__ {
|
||
|
+ #address-cells = <1>;
|
||
|
+ #size-cells = <0>;
|
||
|
+ status = "okay";
|
||
|
+
|
||
|
+ bno055: bno055@29 {
|
||
|
+ compatible = "bosch,bno055";
|
||
|
+ reg = <0x29>;
|
||
|
+ };
|
||
|
+ };
|
||
|
+ };
|
||
|
+
|
||
|
__overrides__ {
|
||
|
bme280 = <0>,"+0";
|
||
|
bmp085 = <0>,"+1";
|
||
|
@@ -487,6 +510,7 @@
|
||
|
ms8607 = <0>,"+27";
|
||
|
mpu6050 = <0>,"+28";
|
||
|
mpu9250 = <0>,"+29";
|
||
|
+ bno055 = <0>,"+31";
|
||
|
|
||
|
addr = <&bme280>,"reg:0", <&bmp280>,"reg:0", <&tmp102>,"reg:0",
|
||
|
<&lm75>,"reg:0", <&hdc100x>,"reg:0", <&sht3x>,"reg:0",
|
||
|
@@ -494,10 +518,12 @@
|
||
|
<&bh1750>,"reg:0", <&mcp980x>,"reg:0", <&jc42>,"reg:0",
|
||
|
<&ms5637>,"reg:0", <&ms5803>,"reg:0", <&ms5805>,"reg:0",
|
||
|
<&ms5837>,"reg:0", <&ms8607>,"reg:0",
|
||
|
- <&mpu6050>, "reg:0", <&mpu9250>, "reg:0";
|
||
|
+ <&mpu6050>,"reg:0", <&mpu9250>,"reg:0",
|
||
|
+ <&bno055>,"reg:0";
|
||
|
int_pin = <&max30102>, "interrupts:0",
|
||
|
<&mpu6050>, "interrupts:0",
|
||
|
<&mpu9250>, "interrupts:0";
|
||
|
no_timeout = <&jc42>, "smbus-timeout-disable?";
|
||
|
+ reset_pin = <&bno055>,"reset-gpios:4", <0>,"+30";
|
||
|
};
|
||
|
};
|