1What:           /sys/bus/event_source/devices/hv_gpci/format
2Date:           September 2020
3Contact:        Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
4Description:    Read-only. Attribute group to describe the magic bits
5                that go into perf_event_attr.config for a particular pmu.
6                (See ABI/testing/sysfs-bus-event_source-devices-format).
7
8                Each attribute under this group defines a bit range of the
9                perf_event_attr.config. All supported attributes are listed
10                below::
11
12				counter_info_version  = "config:16-23"
13				length  = "config:24-31"
14				partition_id  = "config:32-63"
15				request = "config:0-31"
16				sibling_part_id = "config:32-63"
17				hw_chip_id = "config:32-63"
18				offset = "config:32-63"
19				phys_processor_idx = "config:32-63"
20				secondary_index = "config:0-15"
21				starting_index = "config:32-63"
22
23                For example::
24
25		  processor_core_utilization_instructions_completed = "request=0x94,
26					phys_processor_idx=?,counter_info_version=0x8,
27					length=8,offset=0x18"
28
29		In this event, '?' after phys_processor_idx specifies this value
30		this value will be provided by user while running this event.
31
32What:		/sys/bus/event_source/devices/hv_gpci/interface/collect_privileged
33Date:		February 2014
34Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
35Description:
36		'0' if the hypervisor is configured to forbid access to event
37		counters being accumulated by other guests and to physical
38		domain event counters.
39
40		'1' if that access is allowed.
41
42What:		/sys/bus/event_source/devices/hv_gpci/interface/ga
43Date:		February 2014
44Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
45Description:
46		0 or 1. Indicates whether we have access to "GA" events (listed
47		in arch/powerpc/perf/hv-gpci.h).
48
49What:		/sys/bus/event_source/devices/hv_gpci/interface/expanded
50Date:		February 2014
51Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
52Description:
53		0 or 1. Indicates whether we have access to "EXPANDED" events (listed
54		in arch/powerpc/perf/hv-gpci.h).
55
56What:		/sys/bus/event_source/devices/hv_gpci/interface/lab
57Date:		February 2014
58Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
59Description:
60		0 or 1. Indicates whether we have access to "LAB" events (listed
61		in arch/powerpc/perf/hv-gpci.h).
62
63What:		/sys/bus/event_source/devices/hv_gpci/interface/version
64Date:		February 2014
65Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
66Description:
67		A number indicating the version of the gpci interface that the
68		hypervisor reports supporting.
69
70What:		/sys/bus/event_source/devices/hv_gpci/interface/kernel_version
71Date:		February 2014
72Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
73Description:
74		A number indicating the latest version of the gpci interface
75		that the kernel is aware of.
76
77What:		/sys/devices/hv_gpci/cpumask
78Date:		October 2020
79Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
80Description:	read only
81		This sysfs file exposes the cpumask which is designated to make
82		HCALLs to retrieve hv-gpci pmu event counter data.
83
84What:		/sys/devices/hv_gpci/interface/processor_bus_topology
85Date:		July 2023
86Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
87Description:	admin read only
88		This sysfs file exposes the system topology information by making HCALL
89		H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value
90		PROCESSOR_BUS_TOPOLOGY(0xD0).
91
92		* This sysfs file will be created only for power10 and above platforms.
93
94		* User needs root privileges to read data from this sysfs file.
95
96		* This sysfs file will be created, only when the HCALL returns "H_SUCCESS",
97		  "H_AUTHORITY" or "H_PARAMETER" as the return type.
98
99		  HCALL with return error type "H_AUTHORITY" can be resolved during
100		  runtime by setting "Enable Performance Information Collection" option.
101
102		* The end user reading this sysfs file must decode the content as per
103		  underlying platform/firmware.
104
105		Possible error codes while reading this sysfs file:
106
107		* "-EPERM" : Partition is not permitted to retrieve performance information,
108			    required to set "Enable Performance Information Collection" option.
109
110		* "-EIO" : Can't retrieve system information because of invalid buffer length/invalid address
111			   or because of some hardware error. Refer to getPerfCountInfo documentation for
112			   more information.
113
114		* "-EFBIG" : System information exceeds PAGE_SIZE.
115
116What:		/sys/devices/hv_gpci/interface/processor_config
117Date:		July 2023
118Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
119Description:	admin read only
120		This sysfs file exposes the system topology information by making HCALL
121		H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value
122		PROCESSOR_CONFIG(0x90).
123
124		* This sysfs file will be created only for power10 and above platforms.
125
126		* User needs root privileges to read data from this sysfs file.
127
128		* This sysfs file will be created, only when the HCALL returns "H_SUCCESS",
129		  "H_AUTHORITY" or "H_PARAMETER" as the return type.
130
131		  HCALL with return error type "H_AUTHORITY" can be resolved during
132		  runtime by setting "Enable Performance Information Collection" option.
133
134		* The end user reading this sysfs file must decode the content as per
135		  underlying platform/firmware.
136
137		Possible error codes while reading this sysfs file:
138
139		* "-EPERM" : Partition is not permitted to retrieve performance information,
140			    required to set "Enable Performance Information Collection" option.
141
142		* "-EIO" : Can't retrieve system information because of invalid buffer length/invalid address
143			   or because of some hardware error. Refer to getPerfCountInfo documentation for
144			   more information.
145
146		* "-EFBIG" : System information exceeds PAGE_SIZE.
147
148What:		/sys/devices/hv_gpci/interface/affinity_domain_via_virtual_processor
149Date:		July 2023
150Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
151Description:	admin read only
152		This sysfs file exposes the system topology information by making HCALL
153		H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value
154		AFFINITY_DOMAIN_INFORMATION_BY_VIRTUAL_PROCESSOR(0xA0).
155
156		* This sysfs file will be created only for power10 and above platforms.
157
158		* User needs root privileges to read data from this sysfs file.
159
160		* This sysfs file will be created, only when the HCALL returns "H_SUCCESS",
161		  "H_AUTHORITY" or "H_PARAMETER" as the return type.
162
163		  HCALL with return error type "H_AUTHORITY" can be resolved during
164		  runtime by setting "Enable Performance Information Collection" option.
165
166		* The end user reading this sysfs file must decode the content as per
167		  underlying platform/firmware.
168
169		Possible error codes while reading this sysfs file:
170
171		* "-EPERM" : Partition is not permitted to retrieve performance information,
172			    required to set "Enable Performance Information Collection" option.
173
174		* "-EIO" : Can't retrieve system information because of invalid buffer length/invalid address
175			   or because of some hardware error. Refer to getPerfCountInfo documentation for
176			   more information.
177
178		* "-EFBIG" : System information exceeds PAGE_SIZE.
179
180What:		/sys/devices/hv_gpci/interface/affinity_domain_via_domain
181Date:		July 2023
182Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
183Description:	admin read only
184		This sysfs file exposes the system topology information by making HCALL
185		H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value
186		AFFINITY_DOMAIN_INFORMATION_BY_DOMAIN(0xB0).
187
188		* This sysfs file will be created only for power10 and above platforms.
189
190		* User needs root privileges to read data from this sysfs file.
191
192		* This sysfs file will be created, only when the HCALL returns "H_SUCCESS",
193		  "H_AUTHORITY" or "H_PARAMETER" as the return type.
194
195		  HCALL with return error type "H_AUTHORITY" can be resolved during
196		  runtime by setting "Enable Performance Information Collection" option.
197
198		* The end user reading this sysfs file must decode the content as per
199		  underlying platform/firmware.
200
201		Possible error codes while reading this sysfs file:
202
203		* "-EPERM" : Partition is not permitted to retrieve performance information,
204			    required to set "Enable Performance Information Collection" option.
205
206		* "-EIO" : Can't retrieve system information because of invalid buffer length/invalid address
207			   or because of some hardware error. Refer to getPerfCountInfo documentation for
208			   more information.
209
210		* "-EFBIG" : System information exceeds PAGE_SIZE.
211
212What:		/sys/devices/hv_gpci/interface/affinity_domain_via_partition
213Date:		July 2023
214Contact:	Linux on PowerPC Developer List <linuxppc-dev@lists.ozlabs.org>
215Description:	admin read only
216		This sysfs file exposes the system topology information by making HCALL
217		H_GET_PERF_COUNTER_INFO. The HCALL is made with counter request value
218		AFFINITY_DOMAIN_INFORMATION_BY_PARTITION(0xB1).
219
220		* This sysfs file will be created only for power10 and above platforms.
221
222		* User needs root privileges to read data from this sysfs file.
223
224		* This sysfs file will be created, only when the HCALL returns "H_SUCCESS",
225		  "H_AUTHORITY" or "H_PARAMETER" as the return type.
226
227		  HCALL with return error type "H_AUTHORITY" can be resolved during
228		  runtime by setting "Enable Performance Information Collection" option.
229
230		* The end user reading this sysfs file must decode the content as per
231		  underlying platform/firmware.
232
233		Possible error codes while reading this sysfs file:
234
235		* "-EPERM" : Partition is not permitted to retrieve performance information,
236			    required to set "Enable Performance Information Collection" option.
237
238		* "-EIO" : Can't retrieve system information because of invalid buffer length/invalid address
239			   or because of some hardware error. Refer to getPerfCountInfo documentation for
240			   more information.
241
242		* "-EFBIG" : System information exceeds PAGE_SIZE.
243