lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c9007e7e-ca1e-4a2e-a80b-4ee3cd873fa8@infradead.org>
Date: Tue, 18 Jun 2024 14:39:11 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: Pankaj Gupta <pankaj.gupta@....com>, Jonathan Corbet <corbet@....net>,
 Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
 Conor Dooley <conor+dt@...nel.org>, Shawn Guo <shawnguo@...nel.org>,
 Sascha Hauer <s.hauer@...gutronix.de>,
 Pengutronix Kernel Team <kernel@...gutronix.de>,
 Fabio Estevam <festevam@...il.com>, Rob Herring <robh+dt@...nel.org>,
 Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>
Cc: linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
 devicetree@...r.kernel.org, imx@...ts.linux.dev,
 linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v3 5/5] firmware: imx: adds miscdev

Sorry, I missed one comment here:


On 6/18/24 2:28 PM, Randy Dunlap wrote:
> Hi--
> 
> On 6/17/24 12:29 AM, Pankaj Gupta wrote:
>> Adds the driver for communication interface to secure-enclave,
>> for exchanging messages with NXP secure enclave HW IP(s) like
>> EdgeLock Enclave from:
>> - User-Space Applications via character driver.
>>
>> ABI documentation for the NXP secure-enclave driver.
>>
>> User-space library using this driver:
>> - i.MX Secure Enclave library:
>>   -- URL: https://github.com/nxp-imx/imx-secure-enclave.git,
>> - i.MX Secure Middle-Ware:
>>   -- URL: https://github.com/nxp-imx/imx-smw.git
>>
>> Signed-off-by: Pankaj Gupta <pankaj.gupta@....com>
>> ---
>>  Documentation/ABI/testing/se-cdev |  42 +++
>>  drivers/firmware/imx/ele_common.c | 153 ++++++++-
>>  drivers/firmware/imx/ele_common.h |   4 +
>>  drivers/firmware/imx/se_ctrl.c    | 694 ++++++++++++++++++++++++++++++++++++++
>>  drivers/firmware/imx/se_ctrl.h    |  49 +++
>>  include/uapi/linux/se_ioctl.h     |  94 ++++++
>>  6 files changed, 1034 insertions(+), 2 deletions(-)
>>
>> diff --git a/Documentation/ABI/testing/se-cdev b/Documentation/ABI/testing/se-cdev
>> new file mode 100644
>> index 000000000000..699525af6b86
>> --- /dev/null
>> +++ b/Documentation/ABI/testing/se-cdev
>> @@ -0,0 +1,42 @@
>> +What:		/dev/<se>_mu[0-9]+_ch[0-9]+
>> +Date:		May 2024
>> +KernelVersion:	6.8
>> +Contact:	linux-imx@....com, pankaj.gupta@....com
>> +Description:
>> +		NXP offers multiple hardware IP(s) for  secure-enclaves like EdgeLock-
> 
> 		                                   for secure enclaves
> 
>> +		Enclave(ELE), SECO. The character device file-descriptors
> 
> 		                                         file descriptors
> 
> and what is SECO?
> 
>> +		/dev/<se>_mu*_ch* are the interface between user-space NXP's secure-
> 
> 		                                            userspace        secure
> 
>> +		enclave shared-library and the kernel driver.
> 
> 		        shared library
> 
>> +
>> +		The ioctl(2)-based ABI is defined and documented in
>> +		[include]<linux/firmware/imx/ele_mu_ioctl.h>
>> +		 ioctl(s) are used primarily for:
>> +			- shared memory management
>> +			- allocation of I/O buffers
>> +			- get mu info
> 
> 			- getting mu info
> 
>> +			- setting a dev-ctx as receiver that is slave to fw

Documentation/process/coding-style.rst says not to introduce new uses of the
word "slave":

For symbol names and documentation, avoid introducing new usage of
'master / slave' (or 'slave' independent of 'master') and 'blacklist /
whitelist'.

Recommended replacements for 'master / slave' are:
    '{primary,main} / {secondary,replica,subordinate}'
    '{initiator,requester} / {target,responder}'
    '{controller,host} / {device,worker,proxy}'
    'leader / follower'
    'director / performer'


>> +			- get SoC info
> 
> 			- getting SoC info
> 
>> +
>> +		The following file operations are supported:
>> +
>> +		open(2)
>> +		  Currently the only useful flags are O_RDWR.
>> +
>> +		read(2)
>> +		  Every read() from the opened character device context is waiting on
>> +		  wakeup_intruptible, that gets set by the registered mailbox callback
> 
> 		  typo in that name?
> 		or is it something that this patch series introduces?
> 
>> +		  function; indicating a message received from the firmware on message-
> 
> 		  function,
> 
>> +		  unit.
>> +
>> +		write(2)
>> +		  Every write() to the opened character device context needs to acquire
>> +		  mailbox_lock, before sending message on to the message unit.
> 
> 		  mailbox_lock before
> 
>> +
>> +		close(2)
>> +		  Stops and free up the I/O contexts that was associated
> 
> 		            frees up                 that were associated
> 
>> +		  with the file descriptor.
>> +
>> +Users:		https://github.com/nxp-imx/imx-secure-enclave.git,
>> +		https://github.com/nxp-imx/imx-smw.git
>> +		crypto/skcipher,
>> +		drivers/nvmem/imx-ocotp-ele.c
> 
> 

-- 
~Randy

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ