mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-13 14:24:11 +08:00
s390/ap: introduce new AP bus sysfs attribute features
Introduce a new AP bus sysfs attribute /sys/bus/ap/features which shows the features from the QCI information. Currently these feature bits are evaluated: - QCI S bit is shown as 'APSC' - QCI N bit is shown as 'APXA' - QCI C bit is shown as 'QACT' - QCI R bit is shown as 'RC8A' - QCI B bit is shown as 'APSB' Signed-off-by: Harald Freudenberger <freude@linux.ibm.com> Reviewed-by: Tony Krowiak <akrowiak@linux.ibm.com> Reviewed-by: Holger Dengler <dengler@linux.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
This commit is contained in:
parent
f604704021
commit
d7b1813af6
@ -1557,6 +1557,31 @@ static ssize_t bindings_show(struct bus_type *bus, char *buf)
|
||||
|
||||
static BUS_ATTR_RO(bindings);
|
||||
|
||||
static ssize_t features_show(struct bus_type *bus, char *buf)
|
||||
{
|
||||
int n = 0;
|
||||
|
||||
if (!ap_qci_info) /* QCI not supported */
|
||||
return sysfs_emit(buf, "-\n");
|
||||
|
||||
if (ap_qci_info->apsc)
|
||||
n += sysfs_emit_at(buf, n, "APSC ");
|
||||
if (ap_qci_info->apxa)
|
||||
n += sysfs_emit_at(buf, n, "APXA ");
|
||||
if (ap_qci_info->qact)
|
||||
n += sysfs_emit_at(buf, n, "QACT ");
|
||||
if (ap_qci_info->rc8a)
|
||||
n += sysfs_emit_at(buf, n, "RC8A ");
|
||||
if (ap_qci_info->apsb)
|
||||
n += sysfs_emit_at(buf, n, "APSB ");
|
||||
|
||||
sysfs_emit_at(buf, n == 0 ? 0 : n - 1, "\n");
|
||||
|
||||
return n;
|
||||
}
|
||||
|
||||
static BUS_ATTR_RO(features);
|
||||
|
||||
static struct attribute *ap_bus_attrs[] = {
|
||||
&bus_attr_ap_domain.attr,
|
||||
&bus_attr_ap_control_domain_mask.attr,
|
||||
@ -1572,6 +1597,7 @@ static struct attribute *ap_bus_attrs[] = {
|
||||
&bus_attr_aqmask.attr,
|
||||
&bus_attr_scans.attr,
|
||||
&bus_attr_bindings.attr,
|
||||
&bus_attr_features.attr,
|
||||
NULL,
|
||||
};
|
||||
ATTRIBUTE_GROUPS(ap_bus);
|
||||
|
Loading…
Reference in New Issue
Block a user