mbox series

[v2,0/3] block: sed-opal: Generic Read/Write Opal Tables

Message ID 20191015230246.10171-1-revanth.rajashekar@intel.com (mailing list archive)
Headers show
Series block: sed-opal: Generic Read/Write Opal Tables | expand

Message

Revanth Rajashekar Oct. 15, 2019, 11:02 p.m. UTC
This series of patches aims at extending SED Opal support:
1. Exposing enum opal_uid and opaluid definitions to the users to select
   the desired opal table UID.
2. Generalizing write data to any opal table
3. Add an IOCTL for reading/writing any Opal Table with Admin-1 authority

Datastore feature described in:
https://trustedcomputinggroup.org/wp-content/uploads/TCG_Storage-Opal_Feature_Set-Additional_DataStore_Tables_v1_00_r1_00_Final.pdf

Opal Application Note:
https://trustedcomputinggroup.org/wp-content/uploads/TCG_Storage_Opal_SSC_Application_Note_1-00_1-00-Final.pdf

This feature has been successfully tested on OPAL Datastore and MBR table using
internal tools with a Intel SSD and Intel Optane.

Changes from v1(https://lore.kernel.org/linux-block/20190821191051.3535-1-revanth.rajashekar@intel.com/):
	1. Fix the spelling mistake in the commit message.
	2. Introduce a length check condition before Copy To User in opal_read_table
	   function to facilitate user with easy debugging.
	3. Introduce switch cases in the opal_generic_read_write_table ioctl function.
	4. Move read/write table opal_step to discrete functions to reduce the load
	   on the ioctl function.
	5. Introduce 'opal table operations' enumeration in uapi.
	6. Remove tabs before the #defines in opal_read_write_table structure
           to improve the code readability

Revanth Rajashekar (3):
  block: sed-opal: Expose enum opal_uid and opaluid
  block: sed-opal: Generalizing write data to any opal table
  block: sed-opal: Add support to read/write opal tables generically

 block/opal_proto.h            |  39 ----
 block/sed-opal.c              | 375 ++++++++++++++++++++++------------
 include/linux/sed-opal.h      |   1 +
 include/uapi/linux/sed-opal.h | 132 ++++++++++++
 4 files changed, 373 insertions(+), 174 deletions(-)

--
2.17.1