zephyr/drivers
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
..
adc adc: Make driver config_info structure const. 2016-10-20 16:48:45 +00:00
aio qmsi: update qmsi to 1.1 alpha 2016-05-23 21:30:04 +00:00
bluetooth Bluetooth: Controller: Make radio compatible with the nRF51 series 2016-10-22 01:25:56 +00:00
clock_control arm/nordic: use a common header for the nrf51/nrf52 SoC families 2016-10-22 01:25:54 +00:00
console drivers/uart: Refactor UART input hook. 2016-10-25 11:31:08 +00:00
counter ext qmsi: Update to QMSI 1.2 release 2016-10-18 23:26:01 +00:00
dma dma: qmsi: Make driver config_info structure const. 2016-10-20 16:48:45 +00:00
ethernet eth: enc28j60: Make driver config_info structure const. 2016-10-20 16:48:46 +00:00
flash flash/nrf5: support non word-aligned write 2016-10-25 00:34:28 +00:00
gpio drivers/gpio/nrf5: change default IRQ_PRI 2016-10-22 01:25:55 +00:00
grove grove: fixed log level kconfig variable 2016-10-25 10:42:32 +00:00
i2c i2c qmsi: Fix enabling of the clock at driver init 2016-10-21 16:53:42 +00:00
ieee802154 drivers: ieee802154: Fix register name 2016-10-21 17:03:57 +00:00
interrupt_controller stm32: cleanup how we get external interrupt base addr 2016-10-20 12:18:41 +02:00
ipm ipm/ipm_quark_se: Make config_info pointers const. 2016-10-07 20:33:57 +00:00
pci drivers: pci: fix incorrect printk() usage 2016-08-28 07:47:28 -04:00
pinmux pinmux: Add hexiwear pinmux table 2016-10-18 21:42:32 +00:00
pwm pwm/pca9685: Make driver config_info structure const. 2016-10-20 16:48:57 +00:00
random ksdk: Add KSDK RNGA driver. 2016-09-14 12:35:30 +00:00
rtc drivers: Fix type problems when building QMSI rtc driver 2016-10-22 01:27:02 +00:00
sensor th02: Limit name space pollution by using 'static' 2016-10-24 20:10:15 +00:00
serial drivers/serial: Make nRF5 UART pin configuration board-specific 2016-10-24 15:04:46 +00:00
shared_irq shared_irq: Make driver config_info structure const. 2016-10-20 16:48:54 +00:00
spi spi/dw: Make driver config_info structure const. 2016-10-20 16:48:53 +00:00
timer unified: Add tickless idle support for ARC 2016-10-22 01:27:01 +00:00
usb ext qmsi: Update to QMSI 1.2 release 2016-10-18 23:26:01 +00:00
watchdog ext qmsi: Update to QMSI 1.2 release 2016-10-18 23:26:01 +00:00
Kconfig drivers: reverting Kconfig/Makefile changes for slip 2016-07-27 16:26:51 +00:00
Makefile drivers: reverting Kconfig/Makefile changes for slip 2016-07-27 16:26:51 +00:00