s390/pci: fmb enhancements
Implement the function type specific function measurement block used in new machines. Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:

committed by
Martin Schwidefsky

parent
8fd575200d
commit
f9dc447ec8
@@ -31,20 +31,41 @@ int pci_proc_domain(struct pci_bus *);
|
||||
#define ZPCI_FC_BLOCKED 0x20
|
||||
#define ZPCI_FC_DMA_ENABLED 0x10
|
||||
|
||||
#define ZPCI_FMB_DMA_COUNTER_VALID (1 << 23)
|
||||
|
||||
struct zpci_fmb_fmt0 {
|
||||
u64 dma_rbytes;
|
||||
u64 dma_wbytes;
|
||||
};
|
||||
|
||||
struct zpci_fmb_fmt1 {
|
||||
u64 rx_bytes;
|
||||
u64 rx_packets;
|
||||
u64 tx_bytes;
|
||||
u64 tx_packets;
|
||||
};
|
||||
|
||||
struct zpci_fmb_fmt2 {
|
||||
u64 consumed_work_units;
|
||||
u64 max_work_units;
|
||||
};
|
||||
|
||||
struct zpci_fmb {
|
||||
u32 format : 8;
|
||||
u32 dma_valid : 1;
|
||||
u32 : 23;
|
||||
u32 format : 8;
|
||||
u32 fmt_ind : 24;
|
||||
u32 samples;
|
||||
u64 last_update;
|
||||
/* hardware counters */
|
||||
/* common counters */
|
||||
u64 ld_ops;
|
||||
u64 st_ops;
|
||||
u64 stb_ops;
|
||||
u64 rpcit_ops;
|
||||
u64 dma_rbytes;
|
||||
u64 dma_wbytes;
|
||||
u64 pad[2];
|
||||
/* format specific counters */
|
||||
union {
|
||||
struct zpci_fmb_fmt0 fmt0;
|
||||
struct zpci_fmb_fmt1 fmt1;
|
||||
struct zpci_fmb_fmt2 fmt2;
|
||||
};
|
||||
} __packed __aligned(128);
|
||||
|
||||
enum zpci_state {
|
||||
|
Reference in New Issue
Block a user