manifest: hal_wurthelektronik: update to sensors sdk v2.7.0

Update the hal to have the latest Sensors SDK
version 2.7.0

Signed-off-by: Wajdi ELMuhtadi <wajdi.elmuhtadi@we-online.com>
diff --git a/drivers/sensor/wsen/wsen_hids_2525020210002/wsen_hids_2525020210002.h b/drivers/sensor/wsen/wsen_hids_2525020210002/wsen_hids_2525020210002.h
index 64fba2d..c61bf20 100644
--- a/drivers/sensor/wsen/wsen_hids_2525020210002/wsen_hids_2525020210002.h
+++ b/drivers/sensor/wsen/wsen_hids_2525020210002/wsen_hids_2525020210002.h
@@ -10,9 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_HIDS_2525020210002_hal.h"
+#include <WSEN_HIDS_2525020210002.h>
 
 #include <zephyr/drivers/i2c.h>
 #include <zephyr/drivers/sensor/wsen_hids_2525020210002.h>
diff --git a/drivers/sensor/wsen/wsen_isds_2536030320001/wsen_isds_2536030320001.h b/drivers/sensor/wsen/wsen_isds_2536030320001/wsen_isds_2536030320001.h
index baf3fd1..34bbebb 100644
--- a/drivers/sensor/wsen/wsen_isds_2536030320001/wsen_isds_2536030320001.h
+++ b/drivers/sensor/wsen/wsen_isds_2536030320001/wsen_isds_2536030320001.h
@@ -10,9 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_ISDS_2536030320001_hal.h"
+#include <WSEN_ISDS_2536030320001.h>
 
 #if DT_ANY_INST_ON_BUS_STATUS_OKAY(spi)
 #include <zephyr/drivers/spi.h>
diff --git a/drivers/sensor/wsen/wsen_itds_2533020201601/CMakeLists.txt b/drivers/sensor/wsen/wsen_itds_2533020201601/CMakeLists.txt
index 0a8ccb7..6272855 100644
--- a/drivers/sensor/wsen/wsen_itds_2533020201601/CMakeLists.txt
+++ b/drivers/sensor/wsen/wsen_itds_2533020201601/CMakeLists.txt
@@ -5,3 +5,5 @@
 
 zephyr_library_sources(wsen_itds_2533020201601.c)
 zephyr_library_sources_ifdef(CONFIG_WSEN_ITDS_2533020201601_TRIGGER wsen_itds_2533020201601_trigger.c)
+
+zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
diff --git a/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.c b/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.c
index 6de0107..af7da6e 100644
--- a/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.c
+++ b/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.c
@@ -12,6 +12,7 @@
 #include <zephyr/sys/byteorder.h>
 #include <zephyr/logging/log.h>
 
+#include <wsen_sensors_common.h>
 #include "wsen_itds_2533020201601.h"
 
 LOG_MODULE_REGISTER(WSEN_ITDS_2533020201601, CONFIG_SENSOR_LOG_LEVEL);
@@ -40,7 +41,11 @@
 	16,
 };
 
-#define MAX_POLL_STEP_COUNT 10
+/* Map of dts binding power mode to enum power mode*/
+static const ITDS_powerMode_t power_mode_map[] = {
+	[0] = ITDS_lowPower,
+	[1] = ITDS_normalMode,
+};
 
 /* convert raw temperature to celsius */
 static inline int16_t itds_2533020201601_raw_temp_to_celsius(int16_t raw_temp)
@@ -67,6 +72,8 @@
 		return -ENOTSUP;
 	}
 
+	uint32_t step_sleep_duration = 0;
+
 	if (cfg->op_mode == ITDS_singleConversion) {
 		if (ITDS_startSingleDataConversion(&data->sensor_interface, ITDS_enable) !=
 		    WE_SUCCESS) {
@@ -75,6 +82,12 @@
 		}
 
 		k_sleep(K_MSEC(5));
+	} else {
+		if (!wsen_sensor_step_sleep_duration_milli_from_odr_hz(
+			    &itds_2533020201601_odr_list[data->sensor_odr], &step_sleep_duration)) {
+			LOG_ERR("Accelerometer is disabled.");
+			return -ENOTSUP;
+		}
 	}
 
 	ITDS_state_t acceleration_data_ready, temp_data_ready;
@@ -83,10 +96,6 @@
 
 	bool data_ready = false;
 	int step_count = 0;
-	uint32_t step_sleep_duration =
-		((uint32_t)1000000000 /
-		 (uint32_t)sensor_value_to_milli(&itds_2533020201601_odr_list[data->sensor_odr]) /
-		 MAX_POLL_STEP_COUNT);
 
 	while (1) {
 
@@ -594,68 +603,80 @@
 	return 0;
 }
 
+/* clang-format off */
+
 #ifdef CONFIG_WSEN_ITDS_2533020201601_TRIGGER
-#define ITDS_2533020201601_CFG_EVENTS_IRQ(inst)                                                    \
-	.events_interrupt_gpio = GPIO_DT_SPEC_INST_GET(inst, events_interrupt_gpios),
-#define ITDS_2533020201601_CFG_DRDY_IRQ(inst)                                                      \
-	.drdy_interrupt_gpio = GPIO_DT_SPEC_INST_GET(inst, drdy_interrupt_gpios),
+#define ITDS_2533020201601_CFG_EVENTS_IRQ(inst) \
+	.events_interrupt_gpio = \
+		GPIO_DT_SPEC_INST_GET(inst, events_interrupt_gpios),
+
+#define ITDS_2533020201601_CFG_DRDY_IRQ(inst) \
+	.drdy_interrupt_gpio = \
+		GPIO_DT_SPEC_INST_GET(inst, drdy_interrupt_gpios),
 #else
 #define ITDS_2533020201601_CFG_EVENTS_IRQ(inst)
 #define ITDS_2533020201601_CFG_DRDY_IRQ(inst)
 #endif /* CONFIG_WSEN_ITDS_2533020201601_TRIGGER */
 
 #ifdef CONFIG_WSEN_ITDS_2533020201601_TAP
-#define ITDS_2533020201601_CONFIG_TAP(inst)                                                        \
-	.tap_mode = DT_INST_PROP(inst, tap_mode),                                                  \
-	.tap_threshold = DT_INST_PROP(inst, tap_threshold),                                        \
-	.tap_shock = DT_INST_PROP(inst, tap_shock),                                                \
-	.tap_latency = DT_INST_PROP(inst, tap_latency),                                            \
+#define ITDS_2533020201601_CONFIG_TAP(inst) \
+	.tap_mode = DT_INST_PROP(inst, tap_mode), \
+	.tap_threshold = DT_INST_PROP(inst, tap_threshold), \
+	.tap_shock = DT_INST_PROP(inst, tap_shock), \
+	.tap_latency = DT_INST_PROP(inst, tap_latency), \
 	.tap_quiet = DT_INST_PROP(inst, tap_quiet),
 #else
 #define ITDS_2533020201601_CONFIG_TAP(inst)
 #endif /* CONFIG_WSEN_ITDS_2533020201601_TAP */
 
 #ifdef CONFIG_WSEN_ITDS_2533020201601_FREEFALL
-#define ITDS_2533020201601_CONFIG_FREEFALL(inst)                                                   \
-	.freefall_duration = DT_INST_PROP(inst, freefall_duration),                                \
-	.freefall_threshold =                                                                      \
+#define ITDS_2533020201601_CONFIG_FREEFALL(inst) \
+	.freefall_duration = DT_INST_PROP(inst, freefall_duration), \
+	.freefall_threshold = \
 		(ITDS_FreeFallThreshold_t)DT_INST_ENUM_IDX(inst, freefall_threshold),
 #else
 #define ITDS_2533020201601_CONFIG_FREEFALL(inst)
 #endif /* CONFIG_WSEN_ITDS_2533020201601_FREEFALL */
 
 #ifdef CONFIG_WSEN_ITDS_2533020201601_DELTA
-#define ITDS_2533020201601_CONFIG_DELTA(inst)                                                      \
-	.delta_threshold = DT_INST_PROP(inst, delta_threshold),                                    \
-	.delta_duration = DT_INST_PROP(inst, delta_duration),                                      \
-	.delta_offsets = DT_INST_PROP(inst, delta_offsets),                                        \
+#define ITDS_2533020201601_CONFIG_DELTA(inst) \
+	.delta_threshold = DT_INST_PROP(inst, delta_threshold), \
+	.delta_duration = DT_INST_PROP(inst, delta_duration), \
+	.delta_offsets = DT_INST_PROP(inst, delta_offsets), \
 	.delta_offset_weight = DT_INST_PROP(inst, delta_offset_weight),
 #else
 #define ITDS_2533020201601_CONFIG_DELTA(inst)
 #endif /* CONFIG_WSEN_ITDS_2533020201601_DELTA */
 
-#define ITDS_2533020201601_CONFIG_LN(inst)                                                         \
-	.low_noise = COND_CODE_1(DT_INST_NODE_HAS_PROP(inst, low_noise),            \
-		((ITDS_state_t)ITDS_enable), ((ITDS_state_t)ITDS_disable)),
+#define ITDS_2533020201601_CONFIG_LN(inst) \
+	.low_noise = COND_CODE_1( \
+		DT_INST_NODE_HAS_PROP(inst, low_noise), \
+		((ITDS_state_t)ITDS_enable), \
+		((ITDS_state_t)ITDS_disable) \
+	),
 
-#define ITDS_2533020201601_CONFIG_COMMON(inst)                                                     \
-	.odr = (ITDS_outputDataRate_t)(DT_INST_ENUM_IDX(inst, odr) + 1),                           \
-	.op_mode = (ITDS_operatingMode_t)DT_INST_ENUM_IDX(inst, op_mode),                          \
-	.power_mode = (ITDS_powerMode_t)DT_INST_ENUM_IDX(inst, power_mode),                        \
-	.range = DT_INST_PROP(inst, range),                                                        \
-	ITDS_2533020201601_CONFIG_LN(inst)                                                         \
-	ITDS_2533020201601_CONFIG_TAP(inst)                                                        \
-	ITDS_2533020201601_CONFIG_FREEFALL(inst)                                                   \
-	ITDS_2533020201601_CONFIG_DELTA(inst)                                                      \
-	COND_CODE_1(DT_INST_NODE_HAS_PROP(inst, events_interrupt_gpios),                           \
-		    (ITDS_2533020201601_CFG_EVENTS_IRQ(inst)), ())                                 \
-	COND_CODE_1(DT_INST_NODE_HAS_PROP(inst, drdy_interrupt_gpios),                             \
-		    (ITDS_2533020201601_CFG_DRDY_IRQ(inst)), ())
-/*
- * Instantiation macros used when device is on SPI bus.
- */
+#define ITDS_2533020201601_CONFIG_COMMON(inst) \
+	.odr = (ITDS_outputDataRate_t)(DT_INST_ENUM_IDX(inst, odr) + 1), \
+	.op_mode = (ITDS_operatingMode_t)DT_INST_ENUM_IDX(inst, op_mode), \
+	.power_mode = power_mode_map[DT_INST_ENUM_IDX(inst, power_mode)], \
+	.range = DT_INST_PROP(inst, range), \
+	ITDS_2533020201601_CONFIG_LN(inst) \
+	ITDS_2533020201601_CONFIG_TAP(inst) \
+	ITDS_2533020201601_CONFIG_FREEFALL(inst) \
+	ITDS_2533020201601_CONFIG_DELTA(inst) \
+	COND_CODE_1( \
+		DT_INST_NODE_HAS_PROP(inst, events_interrupt_gpios), \
+		(ITDS_2533020201601_CFG_EVENTS_IRQ(inst)), \
+		() \
+	) \
+	COND_CODE_1( \
+		DT_INST_NODE_HAS_PROP(inst, drdy_interrupt_gpios), \
+		(ITDS_2533020201601_CFG_DRDY_IRQ(inst)), \
+		() \
+	)
 
-#define ITDS_2533020201601_SPI_OPERATION                                                           \
+/* SPI configuration */
+#define ITDS_2533020201601_SPI_OPERATION \
 	(SPI_WORD_SET(8) | SPI_OP_MODE_MASTER | SPI_MODE_CPOL | SPI_MODE_CPHA)
 
 #define ITDS_2533020201601_CONFIG_SPI(inst)                                                        \
@@ -665,38 +686,55 @@
 		 },                                                                                \
 	 ITDS_2533020201601_CONFIG_COMMON(inst)}
 
-/*
- * Instantiation macros used when device is on I2C bus.
- */
+/* I2C configuration */
+#define ITDS_2533020201601_CONFIG_I2C(inst) \
+	{ \
+		.bus_cfg = { \
+			.i2c = I2C_DT_SPEC_INST_GET(inst), \
+		}, \
+		ITDS_2533020201601_CONFIG_COMMON(inst) \
+	}
 
-#define ITDS_2533020201601_CONFIG_I2C(inst)                                                        \
-	{.bus_cfg =                                                                                \
-		 {                                                                                 \
-			 .i2c = I2C_DT_SPEC_INST_GET(inst),                                        \
-		 },                                                                                \
-	 ITDS_2533020201601_CONFIG_COMMON(inst)}
+#define ITDS_2533020201601_CONFIG_WE_INTERFACE(inst) \
+	{ \
+		COND_CODE_1( \
+			DT_INST_ON_BUS(inst, i2c), \
+			(.sensor_interface = {.interfaceType = WE_i2c}), \
+			() \
+		) \
+		COND_CODE_1( \
+			DT_INST_ON_BUS(inst, spi), \
+			(.sensor_interface = {.interfaceType = WE_spi}), \
+			() \
+		) \
+	}
 
-#define ITDS_2533020201601_CONFIG_WE_INTERFACE(inst)                                               \
-	{COND_CODE_1(DT_INST_ON_BUS(inst, i2c), \
-	(.sensor_interface = {.interfaceType = WE_i2c}), \
-	()) COND_CODE_1(DT_INST_ON_BUS(inst, spi),  \
-	(.sensor_interface = {.interfaceType = WE_spi}), \
-	()) }
-
-/*
- * Main instantiation macro. Use of COND_CODE_1() selects the right
- * bus-specific macro at preprocessor time.
- */
-#define ITDS_2533020201601_DEFINE(inst)                                                            \
-	static struct itds_2533020201601_data itds_2533020201601_data_##inst =                     \
-		ITDS_2533020201601_CONFIG_WE_INTERFACE(inst);                                      \
-	static const struct itds_2533020201601_config itds_2533020201601_config_##inst =           \
-		COND_CODE_1(DT_INST_ON_BUS(inst, i2c), (ITDS_2533020201601_CONFIG_I2C(inst)), ())  \
-				COND_CODE_1(DT_INST_ON_BUS(inst, spi),                             \
-				    (ITDS_2533020201601_CONFIG_SPI(inst)), ());                    \
-	SENSOR_DEVICE_DT_INST_DEFINE(inst, itds_2533020201601_init, NULL,                          \
-				     &itds_2533020201601_data_##inst,                              \
-				     &itds_2533020201601_config_##inst, POST_KERNEL,               \
-				     CONFIG_SENSOR_INIT_PRIORITY, &itds_2533020201601_driver_api);
+/* Main instantiation macro */
+#define ITDS_2533020201601_DEFINE(inst) \
+	static struct itds_2533020201601_data itds_2533020201601_data_##inst = \
+		ITDS_2533020201601_CONFIG_WE_INTERFACE(inst); \
+	static const struct itds_2533020201601_config itds_2533020201601_config_##inst = \
+		COND_CODE_1( \
+			DT_INST_ON_BUS(inst, i2c), \
+			(ITDS_2533020201601_CONFIG_I2C(inst)), \
+			() \
+		) \
+		COND_CODE_1( \
+			DT_INST_ON_BUS(inst, spi), \
+			(ITDS_2533020201601_CONFIG_SPI(inst)), \
+			() \
+		); \
+	SENSOR_DEVICE_DT_INST_DEFINE( \
+		inst, \
+		itds_2533020201601_init, \
+		NULL, \
+		&itds_2533020201601_data_##inst, \
+		&itds_2533020201601_config_##inst, \
+		POST_KERNEL, \
+		CONFIG_SENSOR_INIT_PRIORITY, \
+		&itds_2533020201601_driver_api \
+	);
 
 DT_INST_FOREACH_STATUS_OKAY(ITDS_2533020201601_DEFINE)
+
+/* clang-format on */
diff --git a/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.h b/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.h
index 793bb39..6b87e81 100644
--- a/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.h
+++ b/drivers/sensor/wsen/wsen_itds_2533020201601/wsen_itds_2533020201601.h
@@ -10,9 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_ITDS_2533020201601_hal.h"
+#include <WSEN_ITDS_2533020201601.h>
 
 #if DT_ANY_INST_ON_BUS_STATUS_OKAY(spi)
 #include <zephyr/drivers/spi.h>
diff --git a/drivers/sensor/wsen/wsen_pads_2511020213301/wsen_pads_2511020213301.h b/drivers/sensor/wsen/wsen_pads_2511020213301/wsen_pads_2511020213301.h
index 8fb335e..e4c8b98 100644
--- a/drivers/sensor/wsen/wsen_pads_2511020213301/wsen_pads_2511020213301.h
+++ b/drivers/sensor/wsen/wsen_pads_2511020213301/wsen_pads_2511020213301.h
@@ -10,9 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_PADS_2511020213301_hal.h"
+#include <WSEN_PADS_2511020213301.h>
 #include <zephyr/drivers/sensor/wsen_pads_2511020213301.h>
 
 #if DT_ANY_INST_ON_BUS_STATUS_OKAY(spi)
diff --git a/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.c b/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.c
index 9b85f40..d659263 100644
--- a/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.c
+++ b/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.c
@@ -61,14 +61,15 @@
 
 	switch (chan) {
 	case SENSOR_CHAN_AMBIENT_TEMP: {
-		int32_t temperature_mega = ((int32_t)(data->temperature - T_MIN_VAL_PDUS)) * 4272;
+		int32_t temperature_mega =
+			((int32_t)(data->temperature - T_MIN_TYP_VAL_PDUS)) * 4272;
 
 		value->val1 = temperature_mega / 1000000;
 		value->val2 = temperature_mega % 1000000;
 		break;
 	}
 	case SENSOR_CHAN_PRESS: {
-		int32_t pressure_temp = ((int32_t)(data->pressure - P_MIN_VAL_PDUS));
+		int32_t pressure_temp = ((int32_t)(data->pressure - P_MIN_TYP_VAL_PDUS));
 
 		/*
 		 * these values are conversion factors based on the sensor type defined in the user
@@ -114,10 +115,9 @@
 	return 0;
 }
 
-static DEVICE_API(sensor, pdus_25131308XXXXX_driver_api) = {
-	.sample_fetch = pdus_25131308XXXXX_sample_fetch,
-	.channel_get = pdus_25131308XXXXX_channel_get
-};
+static DEVICE_API(sensor,
+		  pdus_25131308XXXXX_driver_api) = {.sample_fetch = pdus_25131308XXXXX_sample_fetch,
+						    .channel_get = pdus_25131308XXXXX_channel_get};
 
 static int pdus_25131308XXXXX_init(const struct device *dev)
 {
diff --git a/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.h b/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.h
index ee065f0..c7a5314 100644
--- a/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.h
+++ b/drivers/sensor/wsen/wsen_pdus_25131308XXXXX/wsen_pdus_25131308XXXXX.h
@@ -10,9 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_PDUS_25131308XXX01_hal.h"
+#include <WSEN_PDUS_25131308XXX01.h>
 #include <zephyr/drivers/i2c.h>
 
 struct pdus_25131308XXXXX_data {
diff --git a/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501.h b/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501.h
index 46051ac..cec6571 100644
--- a/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501.h
+++ b/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501.h
@@ -10,10 +10,9 @@
 #include <zephyr/drivers/gpio.h>
 #include <zephyr/drivers/sensor.h>
 
-#include <weplatform.h>
+#include <platform.h>
 
-#include "WSEN_TIDS_2521020222501_hal.h"
-#include <zephyr/drivers/sensor/wsen_tids_2521020222501.h>
+#include <WSEN_TIDS_2521020222501.h>
 
 #include <zephyr/drivers/i2c.h>
 
diff --git a/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501_trigger.c b/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501_trigger.c
index 62fd442..a14f611 100644
--- a/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501_trigger.c
+++ b/drivers/sensor/wsen/wsen_tids_2521020222501/wsen_tids_2521020222501_trigger.c
@@ -11,6 +11,7 @@
 #include <zephyr/logging/log.h>
 
 #include "wsen_tids_2521020222501.h"
+#include <zephyr/drivers/sensor/wsen_tids_2521020222501.h>
 
 LOG_MODULE_DECLARE(WSEN_TIDS_2521020222501, CONFIG_SENSOR_LOG_LEVEL);
 
diff --git a/west.yml b/west.yml
index e65d01d..ff19064 100644
--- a/west.yml
+++ b/west.yml
@@ -275,7 +275,7 @@
       groups:
         - hal
     - name: hal_wurthelektronik
-      revision: e3e2797b224fc48fdef1bc3e5a12a7c73108bba2
+      revision: 7c1297ea071d03289112eb24e789c89c7095c0a2
       path: modules/hal/wurthelektronik
       groups:
         - hal