diff options
author | Namyoon Woo <namyoon@chromium.org> | 2019-04-16 19:22:56 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-06-12 06:00:09 +0000 |
commit | 530e993a15600a6bbc7708522bf75644188279ff (patch) | |
tree | 5c55c4a2fe6600184163702086381acf39940196 /core | |
parent | 8214b2c6e4130acbe7b8d9185b71b1a48cae55ed (diff) | |
download | chrome-ec-530e993a15600a6bbc7708522bf75644188279ff.tar.gz |
g: reduce a mem copy in usb upstream transfer
Upstream data path from uart to usb for cr50/ec/ap console is
as below:
UART RX FIFO -> (usart) rx buffer -> usb config consumer queue ->
usb tx buffer -> USB HOST
This CL reduces a memory copy from consumer queue to usb tx buffer
by giving the memory address of head in consumer queue in USB endpoint
descriptor. This CL can set up to two endpoint descriptors since the
queue is implemented as linear queue, and target data could be separated
in two continuous area.
This reduces RAM usage by 312 bytes, but increases Flash usage
by 208 bytes.
BUG=b:38448364
BRANCH=cr50
TEST=ran uart_stress_tester.sh on bob, and checked the character loss
improves from 41% to 33%.
Also checked flash_ec on coral, scarlet, bob, and ampton.
Change-Id: I42dc07e0f4bf327f3e8bfed825f8fdc4063572b4
Signed-off-by: Namyoon Woo <namyoon@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1570148
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Commit-Queue: Vadim Bendebury <vbendeb@chromium.org>
Diffstat (limited to 'core')
0 files changed, 0 insertions, 0 deletions