/** * Copyright (c) 2017-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. */ #ifndef _TEST_LTC4274_H #define _TEST_LTC4274_H #include "fake/fake_GPIO.h" #include "fake/fake_I2C.h" #include "fake/fake_ThreadedISR.h" #include "inc/devices/ltc4274.h" #include #include #include "unity.h" #define LTC4274_ALERT_CB_CONTEXT 1 #define LTC4274_CLASSIFICATION_VALUE 0x6C #define LTC4274_CLASSTYPE_RESERVED_VAL 0x6B #define LTC4274_CLASSTYPE_UNKOWN_VAL 0x1B #define LTC4274_CLASSTYPE_0_VAL 0x7B #define LTC4274_CLASSTYPE_1_VAL 0x2B #define LTC4274_CLASSTYPE_2_VAL 0x3B #define LTC4274_CLASSTYPE_3_VAL 0x4B #define LTC4274_CLASSTYPE_4_VAL 0x5B #define LTC4274_DEFAULT_VALUE 0xFF #define LTC4274_DETECT_EVENT_VALUE 0x6B #define LTC4274_INTERRUPT_ENABLE_FALSE 0x00 #define LTC4274_INTERRUPT_ENABLE_0x5D 0xFF #define LTC4274_INTERRUPT_STATUS_VAL 0x2F #define LTC4274_INVALID_DEV_SLAVE_ADDR 0x52 #define LTC4274_INVALID_MODE 10 #define LTC4274_LTEPOE_RESERVED_VAL 0xFB #define LTC4274_LTEPOE_TYPE_38_7W_VAL 0xEB #define LTC4274_LTEPOE_TYPE_52_7W_VAL 0x9B #define LTC4274_LTEPOE_TYPE_70W_VAL 0xAB #define LTC4274_LTEPOE_TYPE_90W_VAL 0xBB #define LTC4274_OVERCURRENT_CLEAR_EVENT 0x2F #define LTC4274_OVERCURRENT_VAL 0x8B #define LTC4274_POST_DEVID 0x0C #define LTC4274_POST_INCORRECT_DEVID 0x0D #define LTC4274_POST_MANID 0xFF #define LTC4274_POWER_CLEAR_EVENT 0x2E #define LTC4274_POWERGOOD_NOTOK_VALUE 0x00 #define LTC4274_POWERGOOD_VALUE 0x54 #define LTC4274_READ_WRITE_VAL 0x5A #define LTC4274_SET_INTERRUPT_MASK 0xFF #define LTC4274_SLAVE_ADDR 0x2F #define LTC4274_SUPPLY_CLEAR_EVENT 0x3A #define POST_DATA_NULL 0x00 typedef enum LTC4274Regs { LTC4274_REG_INTERRUPT_STATUS = 0x00, LTC4274_REG_INTERRUPT_MASK, LTC4274_REG_POWER_EVENT, LTC4274_REG_POWER_EVENT_COR, LTC4274_REG_DETECT_EVENT, LTC4274_REG_DETECT_EVENT_COR, LTC4274_REG_FAULT_EVENT, LTC4274_REG_FAULT_EVENT_COR, LTC4274_REG_START_EVENT, LTC4274_REG_START_EVENT_COR, LTC4274_REG_SUPPLY_EVENT, LTC4274_REG_SUPPLY_EVENT_COR, LTC4274_REG_STATUS, LTC4274_REG_POWER_STATUS = 0x10, LTC4274_REG_PNI_STATUS, LTC4274_REG_OPERATION_MODE, LTC4274_REG_ENABLE_DUSCONNECT, LTC4274_REG_DETECT_CLASS_ENABLE, LTC4274_REG_MIDSPAN, LTC4274_REG_MCONF = 0x17, LTC4274_REG_DETPB, LTC4274_REG_PWRPB, LTC4274_REG_RSTPB, LTC4274_REG_ID, LTC4274_REG_TLIMIT = 0x1E, LTC4274_REG_IP1LSB = 0x30, LTC4274_REG_IP1MSB, LTC4274_REG_VP1LSB, LTC4274_REG_VP1MSB, LTC4274_REG_FIRMWARE = 0x41, LTC4274_REG_WDOG, LTC4274_REG_DEVID, LTC4274_REG_HP_ENABLE, LTC4274_REG_HP_MODE = 0x46, LTC4274_REG_CUT1, LTC4274_REG_LIM1, LTC4274_REG_IHP_STATUS, } LTC4274Regs; #endif