struct rio_dev — RIO device info
struct rio_dev {
struct list_head global_list;
struct list_head net_list;
struct rio_net * net;
bool do_enum;
u16 did;
u16 vid;
u32 device_rev;
u16 asm_did;
u16 asm_vid;
u16 asm_rev;
u16 efptr;
u32 pef;
u32 swpinfo;
u32 src_ops;
u32 dst_ops;
u32 comp_tag;
u32 phys_efptr;
u32 phys_rmap;
u32 em_efptr;
u64 dma_mask;
struct rio_driver * driver;
struct device dev;
struct resource riores[RIO_MAX_DEV_RESOURCES];
int (* pwcback) (struct rio_dev *rdev, union rio_pw_msg *msg, int step);
u16 destid;
u8 hopcount;
struct rio_dev * prev;
atomic_t state;
struct rio_switch rswitch[0];
}; struct list_head global_listNode in list of all RIO devices
struct list_head net_listNode in list of RIO devices in a network
struct rio_net * netNetwork this device is a part of
bool do_enumEnumeration flag
u16 didDevice ID
u16 vidVendor ID
u32 device_revDevice revision
u16 asm_didAssembly device ID
u16 asm_vidAssembly vendor ID
u16 asm_revAssembly revision
u16 efptrExtended feature pointer
u32 pefProcessing element features
u32 swpinfoSwitch port info
u32 src_opsSource operation capabilities
u32 dst_opsDestination operation capabilities
u32 comp_tagRIO component tag
u32 phys_efptrRIO device extended features pointer
u32 phys_rmapLP-Serial Register Map Type (1 or 2)
u32 em_efptrRIO Error Management features pointer
u64 dma_maskMask of bits of RIO address this device implements
struct rio_driver * driverDriver claiming this device
struct device devDevice model device
struct resource riores[RIO_MAX_DEV_RESOURCES]RIO resources this device owns
int (*) (struct rio_dev *rdev, union rio_pw_msg *msg, int step) pwcbackport-write callback function for this device
u16 destidNetwork destination ID (or associated destid for switch)
u8 hopcountHopcount to this device
struct rio_dev * prevPrevious RIO device connected to the current one
atomic_t statedevice state
struct rio_switch rswitch[0]struct rio_switch (if valid for this device)