summaryrefslogtreecommitdiff
path: root/drivers/char
diff options
context:
space:
mode:
authorLokesh Vutla <lokeshvutla@ti.com>2013-08-20 15:02:34 (GMT)
committerHerbert Xu <herbert@gondor.apana.org.au>2013-08-21 11:28:07 (GMT)
commitb8411ccd613fc7c504104f56265bd640b6c42d8e (patch)
treedad54820ba4a34f10671f586178609409d34c27e /drivers/char
parent5bc357037476bf8d4623ab4ef0d1640b947c4625 (diff)
downloadlinux-b8411ccd613fc7c504104f56265bd640b6c42d8e.tar.xz
crypto: omap-sham - Enable Polling mode if DMA fails
For writing input buffer into DATA_IN register current driver has the following state machine: -> if input buffer < 9 : use fallback driver -> else if input buffer < block size : Copy input buffer into data_in regs -> else use dma transfer. In cases where requesting for DMA channels fails for some reason, or channel numbers are not provided in DT or platform data, probe also fails. Instead of returning from driver use cpu polling mode. In this mode processor polls on INPUT_READY bit and writes data into data_in regs when it equals 1. This operation is repeated until the length of message. Now the state machine looks like: -> if input buffer < 9 : use fallback driver -> else if input buffer < block size : Copy input buffer into data_in regs -> else if dma enabled: use dma transfer else use cpu polling mode. Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/char')
0 files changed, 0 insertions, 0 deletions