[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1412253901-9938-1-git-send-email-ingo.tuchscherer@de.ibm.com>
Date: Thu, 2 Oct 2014 14:45:01 +0200
From: Ingo Tuchscherer <ingo.tuchscherer@...ibm.com>
To: linux-kernel@...r.kernel.org
Cc: Martin Schwidefsky <schwidefsky@...ibm.com>,
Heiko Carstens <heicars2@...ux.vnet.ibm.com>,
Gerald Schaefer <gerald.schaefer@...ibm.com>,
Hendrik Brueckner <brueckner@...ibm.com>,
Harald Freudenberger <freude@...ibm.com>,
Ingo Tuchscherer <ingo.tuchscherer@...ibm.com>,
Harald Freudenberger <freude@...ux.vnet.ibm.com>
Subject: [PATCH] s390/zcrypt: Toleration of new crypto hardware
s390/zcrypt: Toleration of new crypto hardware
The zcrypt device driver will accept the new crypto adapter
in toleration mode. A new sysfs attribute 'raw_hwtype' will
expose the raw hardware type.
Signed-off-by: Ingo Tuchscherer <ingo.tuchscherer@...ibm.com>
Signed-off-by: Harald Freudenberger <freude@...ux.vnet.ibm.com>
Index: linux/drivers/s390/crypto/ap_bus.h
===================================================================
--- linux.orig/drivers/s390/crypto/ap_bus.h
+++ linux/drivers/s390/crypto/ap_bus.h
@@ -161,6 +161,7 @@ struct ap_device {
ap_qid_t qid; /* AP queue id. */
int queue_depth; /* AP queue depth.*/
int device_type; /* AP device type. */
+ int raw_hwtype; /* AP raw hardware type. */
unsigned int functions; /* AP device function bitfield. */
int unregistered; /* marks AP device as unregistered */
struct timer_list timeout; /* Timer for request timeouts. */
Index: linux/drivers/s390/crypto/ap_bus.c
===================================================================
--- linux.orig/drivers/s390/crypto/ap_bus.c
+++ linux/drivers/s390/crypto/ap_bus.c
@@ -664,6 +664,17 @@ static ssize_t ap_hwtype_show(struct dev
}
static DEVICE_ATTR(hwtype, 0444, ap_hwtype_show, NULL);
+
+static ssize_t ap_raw_hwtype_show(struct device *dev,
+ struct device_attribute *attr, char *buf)
+{
+ struct ap_device *ap_dev = to_ap_dev(dev);
+
+ return snprintf(buf, PAGE_SIZE, "%d\n", ap_dev->raw_hwtype);
+}
+
+static DEVICE_ATTR(raw_hwtype, 0444, ap_raw_hwtype_show, NULL);
+
static ssize_t ap_depth_show(struct device *dev, struct device_attribute *attr,
char *buf)
{
@@ -734,6 +745,7 @@ static DEVICE_ATTR(ap_functions, 0444, a
static struct attribute *ap_dev_attrs[] = {
&dev_attr_hwtype.attr,
+ &dev_attr_raw_hwtype.attr,
&dev_attr_depth.attr,
&dev_attr_request_count.attr,
&dev_attr_requestq_count.attr,
@@ -1417,9 +1429,13 @@ static void ap_scan_bus(struct work_stru
continue;
}
break;
+ case 11:
+ ap_dev->device_type = 10;
+ break;
default:
ap_dev->device_type = device_type;
}
+ ap_dev->raw_hwtype = device_type;
rc = ap_query_functions(qid, &device_functions);
if (!rc)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists