1/* 2 * Texas Instruments TMP105 Temperature Sensor 3 * 4 * Browse the data sheet: 5 * 6 * http://www.ti.com/lit/gpn/tmp105 7 * 8 * Copyright (C) 2012 Alex Horn <alex.horn@cs.ox.ac.uk> 9 * Copyright (C) 2008-2012 Andrzej Zaborowski <balrogg@gmail.com> 10 * 11 * This work is licensed under the terms of the GNU GPL, version 2 or 12 * later. See the COPYING file in the top-level directory. 13 */ 14#ifndef QEMU_TMP105_H 15#define QEMU_TMP105_H 16 17#include "hw/i2c/i2c.h" 18#include "hw/misc/tmp105_regs.h" 19 20#define TYPE_TMP105 "tmp105" 21#define TMP105(obj) OBJECT_CHECK(TMP105State, (obj), TYPE_TMP105) 22 23/** 24 * TMP105State: 25 * @config: Bits 5 and 6 (value 32 and 64) determine the precision of the 26 * temperature. See Table 8 in the data sheet. 27 * 28 * @see_also: http://www.ti.com/lit/gpn/tmp105 29 */ 30typedef struct TMP105State { 31 /*< private >*/ 32 I2CSlave i2c; 33 /*< public >*/ 34 35 uint8_t len; 36 uint8_t buf[2]; 37 qemu_irq pin; 38 39 uint8_t pointer; 40 uint8_t config; 41 int16_t temperature; 42 int16_t limit[2]; 43 int faults; 44 uint8_t alarm; 45} TMP105State; 46 47#endif 48