1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- #ifndef __ALPHA_GCT_H
- #define __ALPHA_GCT_H
- typedef u64 gct_id;
- typedef u64 gct6_handle;
- typedef struct __gct6_node {
- u8 type;
- u8 subtype;
- u16 size;
- u32 hd_extension;
- gct6_handle owner;
- gct6_handle active_user;
- gct_id id;
- u64 flags;
- u16 rev;
- u16 change_counter;
- u16 max_child;
- u16 reserved1;
- gct6_handle saved_owner;
- gct6_handle affinity;
- gct6_handle parent;
- gct6_handle next;
- gct6_handle prev;
- gct6_handle child;
- u64 fw_flags;
- u64 os_usage;
- u64 fru_id;
- u32 checksum;
- u32 magic; /* 'GLXY' */
- } gct6_node;
- typedef struct {
- u8 type;
- u8 subtype;
- void (*callout)(gct6_node *);
- } gct6_search_struct;
- #define GCT_NODE_MAGIC 0x59584c47 /* 'GLXY' */
- /*
- * node types
- */
- #define GCT_TYPE_HOSE 0x0E
- /*
- * node subtypes
- */
- #define GCT_SUBTYPE_IO_PORT_MODULE 0x2C
- #define GCT_NODE_PTR(off) ((gct6_node *)((char *)hwrpb + \
- hwrpb->frut_offset + \
- (gct6_handle)(off))) \
- int gct6_find_nodes(gct6_node *, gct6_search_struct *);
- #endif /* __ALPHA_GCT_H */
|