Go to file
Marcus Shawcroft 1bc999cb8d drivers/uart: Refactor UART input hook.
This refactor is in preparation for making driver API structures
const.

The console driver provides a mechanism to install an input and an
output hook function.  These are primarily used by the onboard
gdb-server.  The output hook is entirely implemented within the
console driver.

The input hook is partially implemented in the top of the uart driver
and within the console driver.  The hook function itself is installed
in the uart API structure, but is invoked only by the console driver.

Installing the hook function directly into the uart API structure
prevents the API structure being const.  There are two approaches to
fixing this:

1) Implement setting of the input hook in the same way as
uart_irq_callback_set().

2) Move the input hook entirely to the console driver.

We implement the latter.  This approach has two benefits, first it
removes the need for every uart driver to implement the behaviour and
second, the current placement of the callback function in the uart API
seems odd given that the callback is only invoked by the console
driver, never by a uart driver.

Change-Id: I258b312d3055df1c2bdeb896bd4f4f39c40838f7
Signed-off-by: Marcus Shawcroft <marcus.shawcroft@arm.com>
2016-10-25 11:31:08 +00:00
.known-issues
arch
boards
doc
drivers drivers/uart: Refactor UART input hook. 2016-10-25 11:31:08 +00:00
ext
fs
include drivers/uart: Refactor UART input hook. 2016-10-25 11:31:08 +00:00
kernel
lib
misc drivers/uart: Refactor UART input hook. 2016-10-25 11:31:08 +00:00
net
samples samples/soc_flash_nrf5: test non-word aligned writes 2016-10-25 00:34:29 +00:00
scripts
tests sensor/th02: Add missing build_all test. 2016-10-25 11:31:08 +00:00
usb
.checkpatch.conf
.gitattributes
.gitignore
.gitreview
.mailmap
defaults.tc
Kbuild
Kconfig
Kconfig.zephyr
LICENSE
MAINTAINERS
Makefile
Makefile.inc
zephyr-env.sh