mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-02 02:12:40 +00:00
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>
29 lines
1.7 KiB
CMake
29 lines
1.7 KiB
CMake
zephyr_library()
|
|
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_ALTERA_NIOS2 gpio_altera_nios2.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_ATMEL_SAM3 gpio_atmel_sam3.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_CC2650 gpio_cc2650.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_CC32XX gpio_cc32xx.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_CMSDK_AHB gpio_cmsdk_ahb.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_DW gpio_dw.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_ESP32 gpio_esp32.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_FE310 gpio_fe310.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_GECKO gpio_gecko.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_IMX gpio_imx.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX gpio_mcux.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX_IGPIO gpio_mcux_igpio.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_MCUX_LPC gpio_mcux_lpc.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_MMIO32 gpio_mmio32.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_NRF5 gpio_nrf5.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_PCAL9535A gpio_pcal9535a.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_PULPINO gpio_pulpino.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_QMSI gpio_qmsi.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_QMSI_SS gpio_qmsi_ss.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_SCH gpio_sch.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_STM32 gpio_stm32.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_SAM0 gpio_sam0.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_SAM gpio_sam.c)
|
|
zephyr_library_sources_ifdef(CONFIG_GPIO_SX1509B gpio_sx1509b.c)
|
|
|
|
zephyr_library_sources_ifdef(CONFIG_USERSPACE gpio_handlers.c)
|