diff options
author | Anton Staaf <robotboy@chromium.org> | 2015-07-14 12:18:37 -0700 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2015-07-15 21:57:36 +0000 |
commit | 88a1790bb7d82a30e052f1e10a9c7c88fb5c5c36 (patch) | |
tree | a3346ab0cfc317ac386d29420506f79be9ec4be7 /chip/stm32/usart_tx_interrupt.c | |
parent | c08e3b2113e2c871afa03b84365d06d714ea7228 (diff) | |
download | chrome-ec-88a1790bb7d82a30e052f1e10a9c7c88fb5c5c36.tar.gz |
Queue: Add ability to modify contiguous units inplace
Previously all access to the queue was done by adding or removing units
with no access to the underlying byte array, or ability to notify the
queue that the byte array had been updated. This prevented direct DMA
transfers to and from the underlying byte array.
This change adds a new struct, a queue_chunk, that represents a
contiguous region of the queues byte array. Regions of valid units as
well as free space can be requested. And there are now update functions
to signal to the queue that new units were added or existing units were
read from these chunks. A chunk can be queried and used to initialize
a DMA transfer, as interrupts or polling indicates that the DMA is
working the queue indicies can be updated and the policy activated as
needed.
Signed-off-by: Anton Staaf <robotboy@chromium.org>
BRANCH=None
BUG=None
TEST=make buildall -j
Change-Id: I7e37d937c56153122f0a3c73ba8064b656106e3a
Reviewed-on: https://chromium-review.googlesource.com/285556
Trybot-Ready: Anton Staaf <robotboy@chromium.org>
Tested-by: Anton Staaf <robotboy@chromium.org>
Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
Commit-Queue: Anton Staaf <robotboy@chromium.org>
Diffstat (limited to 'chip/stm32/usart_tx_interrupt.c')
0 files changed, 0 insertions, 0 deletions