1 /* 2 * Copyright (c) 2019 Centaur Analytics, Inc 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 #ifndef ZEPHYR_DRIVERS_SENSOR_TMP116_TMP116_H_ 8 #define ZEPHYR_DRIVERS_SENSOR_TMP116_TMP116_H_ 9 10 #define TMP116_REG_TEMP 0x0 11 #define TMP116_REG_CFGR 0x1 12 #define TMP116_REG_HIGH_LIM 0x2 13 #define TMP116_REG_LOW_LIM 0x3 14 #define TMP116_REG_EEPROM_UL 0x4 15 #define TMP116_REG_EEPROM1 0x5 16 #define TMP116_REG_EEPROM2 0x6 17 #define TMP116_REG_EEPROM3 0x7 18 #define TMP117_REG_TEMP_OFFSET 0x7 19 #define TMP116_REG_EEPROM4 0x8 20 #define TMP116_REG_DEVICE_ID 0xF 21 22 #define TMP116_RESOLUTION 78125 /* in tens of uCelsius*/ 23 #define TMP116_RESOLUTION_DIV 10000000 24 25 #define TMP116_DEVICE_ID 0x1116 26 #define TMP117_DEVICE_ID 0x0117 27 28 #define TMP116_CFGR_DATA_READY BIT(13) 29 #define TMP116_EEPROM_UL_UNLOCK BIT(15) 30 #define TMP116_EEPROM_UL_BUSY BIT(14) 31 32 struct tmp116_data { 33 uint16_t sample; 34 uint16_t id; 35 }; 36 37 struct tmp116_dev_config { 38 struct i2c_dt_spec bus; 39 }; 40 41 #endif /* ZEPHYR_DRIVERS_SENSOR_TMP116_TMP116_H_ */ 42