diff options
Diffstat (limited to 'drivers/misc/cxl/debugfs.c')
-rw-r--r-- | drivers/misc/cxl/debugfs.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/misc/cxl/debugfs.c b/drivers/misc/cxl/debugfs.c index 43a1a27c54d1..eae9d749f967 100644 --- a/drivers/misc/cxl/debugfs.c +++ b/drivers/misc/cxl/debugfs.c | |||
@@ -15,6 +15,12 @@ | |||
15 | 15 | ||
16 | static struct dentry *cxl_debugfs; | 16 | static struct dentry *cxl_debugfs; |
17 | 17 | ||
18 | void cxl_stop_trace_psl9(struct cxl *adapter) | ||
19 | { | ||
20 | /* Stop the trace */ | ||
21 | cxl_p1_write(adapter, CXL_PSL9_TRACECFG, 0x4480000000000000ULL); | ||
22 | } | ||
23 | |||
18 | void cxl_stop_trace_psl8(struct cxl *adapter) | 24 | void cxl_stop_trace_psl8(struct cxl *adapter) |
19 | { | 25 | { |
20 | int slice; | 26 | int slice; |
@@ -53,6 +59,14 @@ static struct dentry *debugfs_create_io_x64(const char *name, umode_t mode, | |||
53 | (void __force *)value, &fops_io_x64); | 59 | (void __force *)value, &fops_io_x64); |
54 | } | 60 | } |
55 | 61 | ||
62 | void cxl_debugfs_add_adapter_regs_psl9(struct cxl *adapter, struct dentry *dir) | ||
63 | { | ||
64 | debugfs_create_io_x64("fir1", S_IRUSR, dir, _cxl_p1_addr(adapter, CXL_PSL9_FIR1)); | ||
65 | debugfs_create_io_x64("fir2", S_IRUSR, dir, _cxl_p1_addr(adapter, CXL_PSL9_FIR2)); | ||
66 | debugfs_create_io_x64("fir_cntl", S_IRUSR, dir, _cxl_p1_addr(adapter, CXL_PSL9_FIR_CNTL)); | ||
67 | debugfs_create_io_x64("trace", S_IRUSR | S_IWUSR, dir, _cxl_p1_addr(adapter, CXL_PSL9_TRACECFG)); | ||
68 | } | ||
69 | |||
56 | void cxl_debugfs_add_adapter_regs_psl8(struct cxl *adapter, struct dentry *dir) | 70 | void cxl_debugfs_add_adapter_regs_psl8(struct cxl *adapter, struct dentry *dir) |
57 | { | 71 | { |
58 | debugfs_create_io_x64("fir1", S_IRUSR, dir, _cxl_p1_addr(adapter, CXL_PSL_FIR1)); | 72 | debugfs_create_io_x64("fir1", S_IRUSR, dir, _cxl_p1_addr(adapter, CXL_PSL_FIR1)); |
@@ -92,6 +106,11 @@ void cxl_debugfs_adapter_remove(struct cxl *adapter) | |||
92 | debugfs_remove_recursive(adapter->debugfs); | 106 | debugfs_remove_recursive(adapter->debugfs); |
93 | } | 107 | } |
94 | 108 | ||
109 | void cxl_debugfs_add_afu_regs_psl9(struct cxl_afu *afu, struct dentry *dir) | ||
110 | { | ||
111 | debugfs_create_io_x64("serr", S_IRUSR, dir, _cxl_p1n_addr(afu, CXL_PSL_SERR_An)); | ||
112 | } | ||
113 | |||
95 | void cxl_debugfs_add_afu_regs_psl8(struct cxl_afu *afu, struct dentry *dir) | 114 | void cxl_debugfs_add_afu_regs_psl8(struct cxl_afu *afu, struct dentry *dir) |
96 | { | 115 | { |
97 | debugfs_create_io_x64("sstp0", S_IRUSR, dir, _cxl_p2n_addr(afu, CXL_SSTP0_An)); | 116 | debugfs_create_io_x64("sstp0", S_IRUSR, dir, _cxl_p2n_addr(afu, CXL_SSTP0_An)); |