Symmetric/Asymmetric Hashing and Random Accelerator (Sahara) Drivers
i.MX51 EVK Linux Reference Manual
23-6
Freescale Semiconductor
8. If in poll mode, transfer control to Poll/ISR process (if in interrupt mode, the Poll/ISR process is
invoked through the interrupt mechanism)
Requests that do not involve Sahara hardware, are processed and immediately returned to the user. For
example, if a
get results
request is received, the list is populated with the user results and the driver
returns to the user.
23.2.2.10 Translator
The translator has the following features:
•
Translates pointer addresses from virtual addresses to physical addresses
•
Ensures that blocks of data that have become fragmented due to page discontinuity are handled
with links in the descriptor chain
•
Locks pages so addresses remain stable
•
Clears processor cache
23.2.2.11 Polling and Interrupts
Polling has the following features:
1. Continuously checks if operation is done (poll the State field in the Status Register) to determine
when the Sahara hardware has completed
2. Moves the content of the in-progress element from the Command Queue to the Result Pool
3. Copies Sahara Status and Error Status registers into the result pool
4. Writes
Clr_Error
in Command register and flag as FAILED if State field in Status register is 010
or 110 (otherwise set to PASSED)
5. Loads the next command into Sahara, if one exists (to keep Sahara loaded with two commands at
a time if possible)
6. If in Interrupt mode, schedule tasklet (bottom half) process Completion Notification (that is, place
it in the ready queue)
7. If polling, transfer control to process Completion Notification
23.2.2.12 Completion Notification
Using compiler switches, this runs as a tasklet or is invoked as a function as follows:
1. Invoke callback function, available in UCO, if in interrupt mode and callbacks are not suppressed
by user
User Non-blocking
with callback
Driver never gives up processor, therefore User
is blocked until request completion (the callback
is invoked prior to request completion)
Driver queues request and returns. Upon request
completion, the callback is invoked
User Non-blocking
without callback
Driver never gives up processor, therefore User
is blocked until request completion
Driver queues request and returns. (User is not
given any indication of completion. It enters a
User Poll mode and polls for the results)
Table 23-1. Blocking/Non-Blocking Definitions (continued)
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...