diff options
author | Vadim Bendebury <vbendeb@chromium.org> | 2020-03-18 19:03:58 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-03-31 23:24:38 +0000 |
commit | ddbada80f6561cf721fc967ffab965e77b3ae5c3 (patch) | |
tree | 8f30a78ba10ef8cc5847f167b7319675f1f1c580 /include/usb_console.h | |
parent | a795c626a156a92813e7992bc14c764b1ae1f994 (diff) | |
download | chrome-ec-ddbada80f6561cf721fc967ffab965e77b3ae5c3.tar.gz |
Prepare for transitioning to packet mode console
A very few changes are needed to support the packet mode:
- provide functions to report how much room is left in USB/UART
transmit buffers;
- compile out cprintf/cprints/cputs just in case to be able to catch
cases where util_precompile.py fails to convert them for whatever
reason;
- do not add CR to every LF, this messes up packet transmissions, and
the terminal is doing the right thing anyways
- there is a problem with the USB channel in packet mode: the device
reboots as soon as an attempt to send something to the host is
undertaken. The problem can be rectified by disabling the deferred
function path in the Cr50 console USB channel. A bug was open to
track it down, but in packet mode using deferred function in this
path is less critical, as the amount of sent data always is at
least as much as the packet header size
BUG=b:149964350, b:152116489
TEST=with the rest of the patches applied packet mode console works
fine. When packet mode is disabled the conventional mode console
works fine.
Change-Id: Ib010cede36adc87cf80f49e5d76ec9e274d9e608
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2114238
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Reviewed-by: Namyoon Woo <namyoon@chromium.org>
Diffstat (limited to 'include/usb_console.h')
-rw-r--r-- | include/usb_console.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/usb_console.h b/include/usb_console.h index 296829ff9c..cac8fde093 100644 --- a/include/usb_console.h +++ b/include/usb_console.h @@ -62,6 +62,12 @@ uint32_t usb_console_crc(void); */ void usb_console_enable(int enabled, int readonly); +/* Return the size of the free room in the USB TX circular buffer. */ +size_t usb_buffer_room(void); + +/* Send characters to the USB channel. */ +int usb_put(const char *str, int count); + #define usb_va_start va_start #define usb_va_end va_end #else |