cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

gct.h (1042B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef __ALPHA_GCT_H
      3#define __ALPHA_GCT_H
      4
      5typedef u64 gct_id;
      6typedef u64 gct6_handle;
      7
      8typedef struct __gct6_node {
      9	u8 type;	
     10	u8 subtype;
     11	u16 size;
     12	u32 hd_extension;
     13	gct6_handle owner;
     14	gct6_handle active_user;
     15	gct_id id;
     16	u64 flags;
     17	u16 rev;
     18	u16 change_counter;
     19	u16 max_child;
     20	u16 reserved1;
     21	gct6_handle saved_owner;
     22	gct6_handle affinity;
     23	gct6_handle parent;
     24	gct6_handle next;
     25	gct6_handle prev;
     26	gct6_handle child;
     27	u64 fw_flags;
     28	u64 os_usage;
     29	u64 fru_id;
     30	u32 checksum;
     31	u32 magic;	/* 'GLXY' */
     32} gct6_node;
     33
     34typedef struct {
     35	u8 type;	
     36	u8 subtype;
     37	void (*callout)(gct6_node *);
     38} gct6_search_struct;
     39
     40#define GCT_NODE_MAGIC	  0x59584c47	/* 'GLXY' */
     41
     42/* 
     43 * node types 
     44 */
     45#define GCT_TYPE_HOSE			0x0E
     46
     47/*
     48 * node subtypes
     49 */
     50#define GCT_SUBTYPE_IO_PORT_MODULE	0x2C
     51
     52#define GCT_NODE_PTR(off) ((gct6_node *)((char *)hwrpb + 		\
     53					 hwrpb->frut_offset + 		\
     54					 (gct6_handle)(off)))		\
     55
     56int gct6_find_nodes(gct6_node *, gct6_search_struct *);
     57
     58#endif /* __ALPHA_GCT_H */
     59