/*
 * Copyright (c) 2019 STMicroelectronics
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	aliases {
		magn0 = &lis2mdl_1e;
		accel0 = &lis2dw12_19;
		accel1 = &lsm6dso_6b;
	};
};

&arduino_i2c {

	hts221@5f {
		compatible = "st,hts221";
		reg = <0x5f>;
	};

	lps22hh@5d {
		compatible = "st,lps22hh";
		reg = <0x5d>;
		drdy-gpios =  <&arduino_header 12 GPIO_ACTIVE_HIGH>; /* D6 */
	};

	stts751@4a {
		compatible = "st,stts751";
		reg = <0x4a>;
		drdy-gpios =  <&arduino_header 4 GPIO_ACTIVE_LOW>; /* A4 */
	};

	lis2mdl_1e: lis2mdl@1e {
		compatible = "st,lis2mdl";
		reg = <0x1e>;
		irq-gpios =  <&arduino_header 2 GPIO_ACTIVE_HIGH>; /* A2 */
	};

	lis2dw12_19: lis2dw12@19 {
		compatible = "st,lis2dw12";
		reg = <0x19>;
		irq-gpios =  <&arduino_header 3 GPIO_ACTIVE_HIGH>; /* A3 */
	};

	lsm6dso_6b: lsm6dso@6b {
		compatible = "st,lsm6dso";
		reg = <0x6b>;
		irq-gpios =  <&arduino_header 11 GPIO_ACTIVE_HIGH>; /* D5 */
		int-pin = <2>;
	};
};
