1 // SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later 2 /* Copyright 2013-2016 IBM Corp. */ 3 4 #ifndef __CENTAUR_H 5 #define __CENTAUR_H 6 7 #include <stdint.h> 8 #include <lock.h> 9 10 #include <ccan/list/list.h> 11 12 struct centaur_chip { 13 bool valid; 14 bool online; 15 uint8_t ec_level; 16 uint32_t part_id; 17 uint32_t fsi_master_chip_id; 18 uint32_t fsi_master_port; 19 uint32_t fsi_master_engine; 20 uint32_t scache_disable_count; 21 bool scache_was_enabled; 22 uint32_t error_count; 23 struct lock lock; 24 25 struct scom_controller scom; 26 27 /* Used by hw/p8-i2c.c */ 28 struct list_head i2cms; 29 }; 30 31 extern int64_t centaur_disable_sensor_cache(uint32_t part_id); 32 extern int64_t centaur_enable_sensor_cache(uint32_t part_id); 33 34 extern void centaur_init(void); 35 36 extern struct centaur_chip *get_centaur(uint32_t part_id); 37 38 #endif /* __CENTAUR_H */ 39