Symmetric/Asymmetric Hashing and Random Accelerator (Sahara) Drivers
i.MX51 EVK Linux Reference Manual
23-4
Freescale Semiconductor
2. Uninstall interrupt handler (top half) if in interrupt mode
3. Uninstall tasklet (bottom half) if in interrupt mode
4. Reset Sahara (leave Sahara interrupt disabled)
5. Null pointers to command queue, result pool, and registration list
23.2.2.6
Sahara Public Interface
This is the only access users are permitted to the Sahara functionality (Refer to the API document included
in doxygen format). The interface is the same in both User and Kernel Space.
•
Converts service requests into descriptor chains, for those requests that required descriptors
— For final block of data, ensure that it is consumed correctly (Hardware Erratum for buffer
length issue)
— Descriptor pointers are created based on information in the SKO, HCO, and/or SCCO
— Descriptor pointers reference input and output data buffers, fields in the SKO, HCO, and/or
SCCO
•
Returns error if input parameters are inconsistent or otherwise in error
•
Passes pointers to a descriptor chain and a UCO to the next process
•
Receives status information from the rest of the driver to return through the API return value
•
Passes raw descriptor chains through (must be registered, that is, have a UCO). It is necessary to
determine if the hardware erratum for buffer length issue applies to this descriptor chain and, if so,
modify the chain appropriately
•
Passes information into, and receives from, the Access Grant or UM Extension process, as
appropriate
23.2.2.7
UM Extension
When the Sahara public interface is built for user space, the user mode extension is included in the build
to provide a way for the user space sahara public interface to communicate into kernel mode.
•
Transports information passed from Sahara Public Interface from User to Kernel space and back
•
Passes information into, and receives from, the Access Grant process
•
Passes information into, and receives from, the Sahara Public Interface in User Space
•
When signaled by the Completion Notification process, invokes the User callback routine (the
callback was acquired during registration)
23.2.2.8
Access Grant
All tasks must be registered with the driver before being able to request services.
•
If this is a registration request, do the following:
— Enter user information in Registration List, such as: ID, maximum number of outstanding
commands possible (Result Pool size requested)
— Populate its User Context Object
Summary of Contents for i.MX51 EVK
Page 1: ...Part Number 924 76374 Rev 10 11 01 11 2010 i MX51 EVK Linux Reference Manual...
Page 14: ...i MX51 EVK Linux Reference Manual xiv Freescale Semiconductor...
Page 18: ...i MX51 EVK Linux Reference Manual xviii Freescale Semiconductor...
Page 24: ...i MX51 EVK Linux Reference Manual xxiv Freescale Semiconductor...
Page 38: ...Machine Specific Layer MSL i MX51 EVK Linux Reference Manual 2 8 Freescale Semiconductor...
Page 52: ...MC13892 Digitizer Driver i MX51 EVK Linux Reference Manual 5 4 Freescale Semiconductor...
Page 64: ...TV Encoder TVE Driver i MX51 EVK Linux Reference Manual 10 4 Freescale Semiconductor...
Page 82: ...Video for Linux Two V4L2 Driver i MX51 EVK Linux Reference Manual 12 8 Freescale Semiconductor...
Page 86: ...i MX5 Dual Display i MX51 EVK Linux Reference Manual 13 4 Freescale Semiconductor...
Page 100: ...X Windows Acceleration i MX51 EVK Linux Reference Manual 16 6 Freescale Semiconductor...
Page 118: ...Low Level Keypad Driver i MX51 EVK Linux Reference Manual 20 6 Freescale Semiconductor...
Page 134: ...Security Drivers i MX51 EVK Linux Reference Manual 22 10 Freescale Semiconductor...
Page 148: ...Inter IC I2C Driver i MX51 EVK Linux Reference Manual 24 4 Freescale Semiconductor...
Page 178: ...ARC USB Driver i MX51 EVK Linux Reference Manual 29 10 Freescale Semiconductor...
Page 194: ...OProfile i MX51 EVK Linux Reference Manual 33 6 Freescale Semiconductor...