zephyr/drivers/serial
Adithya Baglody b0db28b512 drivers: Cmake: Add __ZEPHYR_SUPERVISOR__ macro for driver files.
Normally a syscall would check the current privilege level and then
decide to go to _impl_<syscall> directly or go through a
_handler_<syscall>.
__ZEPHYR_SUPERVISOR__ is a compiler optimization flag which will
make all the system calls from the driver files directly link
to the _impl_<syscall>. Thereby reducing the overhead of checking the
privileges.

In the previous implementation all the source files would be compiled
by zephyr_source() rule. This means that zephyr_* is a catchall CMake
library for source files that can be built purely with the include
paths, defines, and other compiler flags that all zephyr source
files uses. This states that adding one extra compiler flag for only
one complete directory would fail.
This limitation can be overcome by using zephyr_libray* APIs. This
creates a library for the required directories and it also supports
directory level properties.
Hence we use zephyr_library* to create a new library with
macro _ZEPHYR_SUPERVISOR_ for the optimization.

Signed-off-by: Adithya Baglody <adithya.nagaraj.baglody@intel.com>
2018-05-15 17:48:18 +03:00
..
CMakeLists.txt drivers: Cmake: Add __ZEPHYR_SUPERVISOR__ macro for driver files. 2018-05-15 17:48:18 +03:00
Kconfig serial: Add imx uart driver shim 2018-04-11 08:27:05 +02:00
Kconfig.altera_jtag kconfig: fix more help spacing issues 2018-02-15 23:20:55 -05:00
Kconfig.cc32xx serial: introduce SERIAL_SUPPORT_INTERRUPT Kconfig option 2017-06-29 07:07:31 -04:00
Kconfig.cmsdk_apb serial: introduce SERIAL_SUPPORT_INTERRUPT Kconfig option 2017-06-29 07:07:31 -04:00
Kconfig.esp32 kconfig: fix more help spacing issues 2018-02-15 23:20:55 -05:00
Kconfig.fe310 serial: introduce SERIAL_SUPPORT_INTERRUPT Kconfig option 2017-06-29 07:07:31 -04:00
Kconfig.gecko drivers: serial: Add uart driver for Silabs EXX32 MCUs 2017-10-10 11:56:47 -05:00
Kconfig.imx serial: Add imx uart driver shim 2018-04-11 08:27:05 +02:00
Kconfig.mcux serial: Refactor mcux uart shim driver to use clock control interface 2017-10-20 12:28:11 -05:00
Kconfig.mcux_lpc_usart lpc: Add usart shim driver for lpcxpresso54114 2018-01-23 09:18:32 -06:00
Kconfig.mcux_lpsci serial: Refactor mcux lpsci shim driver to use clock control interface 2017-10-20 12:28:11 -05:00
Kconfig.mcux_lpuart serial: Add another instance to the mcux lpuart driver 2017-11-15 09:09:58 -06:00
Kconfig.msp432p4xx drivers: serial: Add MSP-EXP432P401R UART 2017-10-19 12:16:11 -05:00
Kconfig.nrf5 arch: arm: nrf: Rename nrf5 SoC Family to nrf 2018-03-20 11:57:14 +01:00
Kconfig.ns16550 arch: arc: em{7,9,11}d: Add initial DTS UART support 2018-03-23 10:13:53 +01:00
Kconfig.nsim serial: nsim: Add missing SERIAL_HAS_DRIVER in Kconfig 2017-06-29 07:07:31 -04:00
Kconfig.qmsi serial: introduce SERIAL_SUPPORT_INTERRUPT Kconfig option 2017-06-29 07:07:31 -04:00
Kconfig.riscv_qemu kconfig: fix more help spacing issues 2018-02-15 23:20:55 -05:00
Kconfig.sam0 serial: add a serial driver for the SAM0 family. 2018-01-04 13:18:25 -05:00
Kconfig.stellaris kconfig: fix more help spacing issues 2018-02-15 23:20:55 -05:00
Kconfig.stm32 drivers: uart: stm32: make comments and options less specific 2018-03-21 15:40:55 -04:00
Kconfig.uart_sam serial: sam: add support for interrupt driven serial 2018-02-21 11:26:20 -06:00
Kconfig.usart_sam driver: usart: Added support for interrupt driver USART on SAM E70. 2018-03-10 11:42:25 -06:00
uart_altera_jtag_hal.c drivers: serial: Add Altera shim driver for JTAG UART soft IP 2017-11-17 07:46:40 -05:00
uart_cc32xx.c cc3200: Remove TI cc3200 SOC and LaunchXL board support 2017-08-15 11:02:48 -05:00
uart_cmsdk_apb.c linker: move all linker headers to include/linker 2017-06-18 09:24:04 -05:00
uart_esp32.c esp32: Prefix ROM routines with esp32_rom_ 2017-10-09 20:53:22 -04:00
uart_fe310.c drivers: serial: uart_fe310: fix function definiton name for UART1 IRQ 2017-06-07 12:17:15 -05:00
uart_gecko.c drivers: serial: Add uart driver for Silabs EXX32 MCUs 2017-10-10 11:56:47 -05:00
uart_handlers.c drivers: Perform a runtime check if a driver is capable of an operation 2018-04-26 02:57:12 +05:30
uart_imx.c serial: Add imx uart driver shim 2018-04-11 08:27:05 +02:00
uart_mcux_lpsci.c serial: Refactor mcux lpsci shim driver to use clock control interface 2017-10-20 12:28:11 -05:00
uart_mcux_lpuart.c serial: Add another instance to the mcux lpuart driver 2017-11-15 09:09:58 -06:00
uart_mcux.c serial: Refactor mcux uart shim driver to use clock control interface 2017-10-20 12:28:11 -05:00
uart_msp432p4xx.c drivers: serial: Add MSP-EXP432P401R UART 2017-10-19 12:16:11 -05:00
uart_nrf5.c arch: arm: nordic_nrf: Restore copyright years 2018-03-20 13:25:44 +01:00
uart_ns16550.c serial/uart_ns16500: poll THRE to determine when data can be written 2017-09-12 11:24:56 -04:00
uart_ns16550.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
uart_nsim.c linker: move all linker headers to include/linker 2017-06-18 09:24:04 -05:00
uart_qmsi.c uart_qmsi: fix possible divide-by-zero 2018-05-07 22:25:48 -04:00
uart_riscv_qemu.c serial: introduce SERIAL_SUPPORT_INTERRUPT Kconfig option 2017-06-29 07:07:31 -04:00
uart_sam0.c serial: sam0: add samd20 support 2018-02-21 08:07:09 -06:00
uart_sam.c serial: sam: add support for interrupt driven serial 2018-02-21 11:26:20 -06:00
uart_stellaris.c linker: move all linker headers to include/linker 2017-06-18 09:24:04 -05:00
uart_stm32.c drivers: uart: stm32: improve STM32L0 support 2018-03-21 15:40:55 -04:00
uart_stm32.h stm32: clean up after completion of transition to ll Clock control 2017-06-02 14:11:13 -04:00
usart_mcux_lpc.c ext: mcux: Reorganize imported drivers into soc family subfolders 2018-04-24 07:55:48 -05:00
usart_sam.c driver: usart: Added support for interrupt driver USART on SAM E70. 2018-03-10 11:42:25 -06:00