WSL2-Linux-Kernel/drivers/s390/crypto
Harald Freudenberger a17becc112 s390/zcrypt: extend EP11 card and queue sysfs attributes
This patch introduces new sysfs attributes for EP11 cards
and queues:

An EP11 card gets four new sysfs attributes:

/sys/devices/ap/cardxx/API_ordinalnr
  The EP11 card firmware API ordinal number.

/sys/devices/ap/cardxx/FW_version
  The EP11 card firmware major and minor version.

/sys/devices/ap/cardxx/serialnr
  Displays the serial number of the EP11 card. The serial
  number is a 16 character string unique for this EP11 card.

/sys/devices/ap/cardxx/op_modes
  Displays operation modes for this EP11 card. Known operation
  modes are: FIPS2009, BSI2009, FIPS2011, BSI2011 and BSICC2017.

The EP11 queues get two new sysfs attributes:

/sys/devices/ap/cardxx/xx.yyyy/mkvps
  Displays information about the master key(s) states and
  verification patterns. Two lines are displayed:

  WK CUR: <wk_cur_state> <wk_cur_vp>
  WK NEW: <wk_new_state> <wk_new_vp>

  with

  <wk_cur_state>: 'invalid' or 'valid'
  <wk_new_state>: 'empty' or 'uncommitted' or 'committed'
  <wk_cur_vp> and <wk_new_vp>: '-' or a 32 byte hash pattern

/sys/devices/ap/cardxx/xx.yyyy/op_modes
  Displays operation modes for this EP11 queue. Known operation
  modes are: FIPS2009, BSI2009, FIPS2011, BSI2011 and BSICC2017.

The card information displayed with the sysfs attributes is fresh
fetched from the card if the card is online, otherwise cached values
are used. The queue information displayed with the sysfs attributes is
always fetched on the fly and not cached. So each read of any of these
sysfs attributes will cause an request/reply CPRB communication with
the EP11 crypto card. The queue attributes address the corresponding
EP11 domain within the EP11 card. The card attributes addresses any
domain within the EP11 card (subject to the dispatch algorithm within
the zcrypt device driver). If the addressed domain is offline or for
card addressing all domains are offline the attributes will display
'-' for state and verification patterns and an empty string for op
mode, serial number, API_ordinalnr and FW_version.

Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2020-01-30 13:07:56 +01:00
..
Makefile s390/zcrypt: add new low level ep11 functions support file 2020-01-30 13:07:55 +01:00
ap_bus.c s390/zcrypt: move ap device reset from bus to driver code 2020-01-09 16:59:18 +01:00
ap_bus.h s390/zcrypt: move ap device reset from bus to driver code 2020-01-09 16:59:18 +01:00
ap_card.c s390/zcrypt: code beautify 2018-08-20 16:02:11 +02:00
ap_debug.h s390/zcrypt: Make ap init functions static. 2018-04-10 07:39:01 +02:00
ap_queue.c s390/zcrypt: move ap device reset from bus to driver code 2020-01-09 16:59:18 +01:00
pkey_api.c s390/pkey: Add support for key blob with clear key value 2020-01-30 13:07:55 +01:00
vfio_ap_drv.c s390/zcrypt: CEX7S exploitation support 2019-09-19 12:56:06 +02:00
vfio_ap_ops.c s390: vfio-ap: fix warning reset not completed 2019-09-05 15:18:15 +02:00
vfio_ap_private.h s390: ap: implement PAPQ AQIC interception in kernel 2019-07-02 16:00:28 +02:00
zcrypt_api.c s390/zcrypt: add new low level ep11 functions support file 2020-01-30 13:07:55 +01:00
zcrypt_api.h s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb 2020-01-30 13:07:55 +01:00
zcrypt_card.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cca_key.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_ccamisc.c s390/zcrypt: Fix CCA cipher key gen with clear key value function 2020-01-09 16:59:18 +01:00
zcrypt_ccamisc.h s390/pkey: Add support for key blob with clear key value 2020-01-30 13:07:55 +01:00
zcrypt_cex2a.c s390/zcrypt: move ap device reset from bus to driver code 2020-01-09 16:59:18 +01:00
zcrypt_cex2a.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex2c.c s390/zcrypt: move ap device reset from bus to driver code 2020-01-09 16:59:18 +01:00
zcrypt_cex2c.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_cex4.c s390/zcrypt: extend EP11 card and queue sysfs attributes 2020-01-30 13:07:56 +01:00
zcrypt_cex4.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
zcrypt_debug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
zcrypt_ep11misc.c s390/zcrypt: add new low level ep11 functions support file 2020-01-30 13:07:55 +01:00
zcrypt_ep11misc.h s390/zcrypt: add new low level ep11 functions support file 2020-01-30 13:07:55 +01:00
zcrypt_error.h s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR 2019-11-30 10:52:44 +01:00
zcrypt_msgtype6.c s390/zcrypt: adjust switch fall through comments for -Wimplicit-fallthrough 2019-08-02 13:58:23 +02:00
zcrypt_msgtype6.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_msgtype50.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_msgtype50.h s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00
zcrypt_queue.c s390/zcrypt: zcrypt device driver cleanup 2018-10-09 11:21:35 +02:00