diff options
author | Arun Murthy <arun.murthy@stericsson.com> | 2011-12-13 22:44:34 +0530 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@stericsson.com> | 2012-05-22 11:07:31 +0200 |
commit | 9e2de8518e8762e40d91de5202ecb225be569a06 (patch) | |
tree | 513f623bb5550da3b139bd8a19dfc69f20f0c96b /drivers/gator/gator_annotate_kernel.c | |
parent | 7fd2405c0498ec7f9d6b6f319f016d8b3e4e2317 (diff) |
caif-shm: synchronize caif flow control
In the shm tx work function caif flow control is turned ON and without
acquiring the spin lock. In the rx callback cail flow control is turned
off. The expected sequence would be on caif writing message to modem
via shm, if shm finds that there is no empty space then, it is not sets
caif flow control to OFF. On shm receiving messages from modem, it sets
caif flow control to ON. Now this since this is in interrupt context, there
are chances of this fucntion being preeempted by the caif OFF that is being
set in the tx work function.
Hence create a seperate workqueue and two work functions to turn caif flow
control ON and OFF. With this implementation it is ensured that caif flow
control is turned OFF first by tx work function and turned ON by the rx
callback.
ST-Ericsson Linux next: NA
ST-Ericsson ID: 372652
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: Ide75415233d7b4560faf25862876c15421df7c2c
Signed-off-by: Arun Murthy <arun.murthy@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/42438
Reviewed-by: QABUILD
Reviewed-by: Hemant-vilas RAMDASI <hemant.ramdasi@stericsson.com>
Reviewed-by: Sjur BRENDELAND <sjur.brandeland@stericsson.com>
Diffstat (limited to 'drivers/gator/gator_annotate_kernel.c')
0 files changed, 0 insertions, 0 deletions