# CODEOWNERS for autoreview assigning in github

# Order is important; the last matching pattern takes the most
# precedence.

# Do not use wildcard on all source yet
# *                                        @galak @nashif

.known-issues/                           @inakypg @nashif
arch/arc/                                @vonhust @ruuddw
arch/arm/                                @MaureenHelm @galak
soc/arm/                                 @MaureenHelm @galak
soc/arm/arm/mps2/                        @fvincenzo
soc/arm/atmel_sam/sam4s                  @fallrisk
soc/arm/nxp*/                            @MaureenHelm
soc/arm/nordic_nrf/                      @ioannisg
soc/arm/st_stm32/                        @erwango
soc/arm/st_stm32/stm32f4/                @rsalveti @idlethread
soc/arm/ti_simplelink/cc32xx             @GAnthony
soc/arm/ti_simplelink/msp432p4xx         @Mani-Sadhasivam
arch/nios2/                              @andrewboie @ramakrishnapallala
arch/posix/                              @aescolar
arch/riscv32/                            @kgugala @pgielda @nategraff-sifive
soc/posix/                               @aescolar
soc/riscv32/                             @kgugala @pgielda @nategraff-sifive
arch/x86/                                @andrewboie @ramakrishnapallala
arch/x86/core/                           @andrewboie
arch/x86/core/crt0.S                     @ramakrishnapallala @nashif
soc/x86/                                 @andrewboie @ramakrishnapallala
soc/x86/intel_quark/quark_d2000/         @nashif
soc/x86/intel_quark/quark_se/            @nashif
soc/x86/intel_quark/quark_x1000/         @nashif
arch/xtensa/                             @andrewboie @rgundi @andyross
soc/xtensa/                              @andrewboie @rgundi @andyross
boards/arc/                              @vonhust @ruuddw
boards/arc/arduino_101_sss/              @nashif
boards/arc/em_starterkit/                @vonhust
boards/arc/quark_se_c1000_ss_devboard/   @nashif
boards/arm/                              @MaureenHelm @galak
boards/arm/96b_argonkey/                 @avisconti
boards/arm/96b_carbon/                   @rsalveti @idlethread
boards/arm/96b_nitrogen/                 @idlethread
boards/arm/96b_neonkey/                  @Mani-Sadhasivam
boards/arm/96b_stm32_sensor_mez/         @Mani-Sadhasivam
boards/arm/cc3220sf_launchxl/            @GAnthony
boards/arm/curie_ble/                    @jhedberg
boards/arm/disco_l475_iot1/              @erwango
boards/arm/frdm*/                        @MaureenHelm
boards/arm/frdm*/doc/                    @MaureenHelm @MeganHansen
boards/arm/hexiwear*/                    @MaureenHelm
boards/arm/hexiwear*/doc/                @MaureenHelm @MeganHansen
boards/arm/lpcxpresso*/                  @MaureenHelm
boards/arm/lpcxpresso*/doc/              @MaureenHelm @MeganHansen
boards/arm/mimxrt*/                      @MaureenHelm
boards/arm/mimxrt*/doc/                  @MaureenHelm @MeganHansen
boards/arm/mps2_an385/                   @fvincenzo
boards/arm/msp_exp432p401r_launchxl/     @Mani-Sadhasivam
boards/arm/nrf51_blenano/                @rsalveti
boards/arm/nrf51_pca10028/               @carlescufi
boards/arm/nrf52_pca10040/               @carlescufi
boards/arm/nrf52_pca20020/               @tkln
boards/arm/nrf52810_pca10040/            @carlescufi
boards/arm/nrf52840_pca10056/            @carlescufi
boards/arm/nrf52840_pca10059/            @lemrey
boards/arm/nrf9160_pca10090/             @ioannisg
boards/arm/nucleo_f401re/                @rsalveti @idlethread
boards/arm/sam4s_xplained/               @fallrisk
boards/arm/v2m_beetle/                   @fvincenzo
boards/arm/olimexino_stm32/              @ydamigos
boards/arm/stm32f3_disco/                @ydamigos
boards/nios2/                            @ramakrishnapallala
boards/nios2/altera_max10/               @ramakrishnapallala
boards/posix/                            @aescolar
boards/riscv32/                          @kgugala @pgielda @nategraff-sifive
boards/x86/                              @andrewboie @nashif
boards/x86/arduino_101/                  @nashif
boards/x86/galileo/                      @nashif
boards/x86/quark_d2000_crb/              @nashif
boards/x86/quark_se_c1000_devboard/      @nashif
boards/xtensa/                           @andrewboie @ramakrishnapallala
# All cmake related files
cmake/                                   @nashif @SebastianBoe
/CMakeLists.txt                          @nashif @SebastianBoe
doc/                                     @dbkinder
doc/application/coccinelle.rst           @himanshujha199640 @JuliaLawall
doc/CMakeLists.txt                       @carlescufi
doc/scripts/                             @carlescufi
doc/subsystems/bluetooth/                @sjanc @jhedberg @Vudentz
drivers/*/*mcux*                         @MaureenHelm
drivers/*/*qmsi*                         @nashif
drivers/*/*stm32*                        @erwango
drivers/*/*native_posix*                 @aescolar
drivers/adc/                             @anangl
drivers/bluetooth/                       @sjanc @jhedberg @Vudentz
drivers/clock_control/*stm32f4*          @rsalveti @idlethread
drivers/counter/                         @anangl
drivers/display/                         @vanwinkeljan
drivers/ethernet/                        @jukkar @tbursztyka @pfalcon
drivers/flash/                           @nashif
drivers/flash/*stm32*                    @superna9999
drivers/gpio/*stm32*                     @rsalveti @idlethread
drivers/i2s/i2s_ll_stm32*                @avisconti
drivers/ieee802154/                      @jukkar @tbursztyka
drivers/interrupt_controller/            @andrewboie
drivers/led/                             @Mani-Sadhasivam
drivers/led_strip/                       @mbolivar
drivers/pinmux/stm32/                    @rsalveti @idlethread
drivers/sensor/                          @bogdan-davidoaia @MaureenHelm
drivers/sensor/hts*/                     @avisconti
drivers/sensor/lis*/                     @avisconti
drivers/sensor/lps*/                     @avisconti
drivers/sensor/lsm*/                     @avisconti
drivers/serial/uart_altera_jtag_hal.c    @ramakrishnapallala
drivers/serial/uart_riscv_qemu.c         @kgugala @pgielda @nategraff-sifive
drivers/net/slip.c                       @jukkar @tbursztyka
drivers/spi/                             @tbursztyka
drivers/spi/spi_ll_stm32.*               @superna9999
drivers/timer/altera_avalon_timer_hal.c  @ramakrishnapallala
drivers/timer/riscv_machine_timer.c      @nategraff-sifive @kgugala @pgielda
drivers/usb/                             @jfischer-phytec-iot @finikorg
drivers/usb/device/usb_dc_stm32.c        @ydamigos @loicpoulain
drivers/i2c/i2c_ll_stm32*                @ldts @ydamigos
drivers/wifi/                            @jukkar @tbursztyka @pfalcon
drivers/wifi/eswifi                      @loicpoulain
dts/arm/st/                              @erwango
dts/arm/nordic/                          @ioannisg @carlescufi
ext/fs/                                  @nashif @ramakrishnapallala
ext/hal/cmsis/                           @MaureenHelm @galak
ext/hal/nordic/                          @carlescufi @anangl
ext/hal/nxp/                             @MaureenHelm
ext/hal/qmsi/                            @nashif
ext/hal/st/stm32cube/                    @erwango
ext/lib/crypto/mbedtls/                  @nashif
ext/lib/crypto/tinycrypt/                @ceolin
include/adc.h                            @anangl
include/arch/arc/                        @vonhust @ruuddw
include/arch/arc/arch.h                  @andrewboie
include/arch/arc/v2/irq.h                @andrewboie
include/arch/arm/                        @MaureenHelm @galak
include/arch/arm/cortex_m/irq.h          @andrewboie
include/arch/nios2/                      @andrewboie
include/arch/nios2/arch.h                @andrewboie
include/arch/posix/                      @aescolar
include/arch/riscv32                     @nategraff-sifive @kgugala @pgielda
include/arch/x86/                        @andrewboie @ramakrishnapallala
include/arch/x86/arch.h                  @andrewboie
include/arch/xtensa/                     @andrewboie
include/atomic.h                         @andrewboie @andyross
include/bluetooth/                       @sjanc @jhedberg @Vudentz
include/cache.h                          @andrewboie @andyross
include/counter.h                        @anangl
include/device.h                         @ramakrishnapallala @nashif
include/display.h                        @vanwinkeljan
include/display/                         @vanwinkeljan
include/drivers/bluetooth/               @sjanc @jhedberg @Vudentz
include/drivers/ioapic.h                 @andrewboie
include/drivers/loapic.h                 @andrewboie
include/drivers/mvic.h                   @andrewboie
include/fs.h                             @nashif @ramakrishnapallala
include/fs/                              @nashif @ramakrishnapallala
include/init.h                           @andrewboie @andyross
include/irq.h                            @andrewboie @andyross
include/irq_offload.h                    @andrewboie @andyross
include/kernel.h                         @andrewboie @andyross
include/kernel_version.h                 @andrewboie @andyross
include/led.h                            @Mani-Sadhasivam
include/led_strip.h                      @mbolivar
include/linker/linker-defs.h             @andrewboie @andyross
include/linker/linker-tool-gcc.h         @andrewboie @andyross
include/linker/linker-tool.h             @andrewboie @andyross
include/linker/section_tags.h            @andrewboie @andyross
include/linker/sections.h                @andrewboie @andyross
include/logging/                         @nordic-krch
include/misc/                            @andrewboie @andyross
include/net/                             @jukkar @tbursztyka @pfalcon
include/net/buf.h                        @jukkar @jhedberg @tbursztyka @pfalcon
include/posix/                           @pfalcon
include/power.h                          @ramakrishnapallala @nashif
include/sensor.h                         @bogdan-davidoaia
include/shared_irq.h                     @andrewboie @andyross
include/shell/                           @jarz-nordic @nordic-krch
include/spi.h                            @tbursztyka
include/sw_isr_table.h                   @andrewboie @andyross
include/sys_clock.h                      @andrewboie @andyross
include/sys_io.h                         @andrewboie @andyross
include/toolchain.h                      @andrewboie @andyross
include/toolchain/                       @andrewboie @andyross
include/zephyr.h                         @andrewboie @andyross
kernel/                                  @andrewboie @andyross
lib/gui/                                 @vanwinkeljan
lib/posix/                               @ramakrishnapallala @nniranjhana @pfalcon
kernel/device.c                          @ramakrishnapallala @nashif
kernel/idle.c                            @ramakrishnapallala @nashif
samples/bluetooth/                       @sjanc @jhedberg @Vudentz
samples/boards/quark_se_c1000/power*/    @ramakrishnapallala @nashif
samples/display/                         @vanwinkeljan
samples/gui/                             @vanwinkeljan
samples/net/                             @jukkar @tbursztyka @pfalcon
samples/net/dns_resolve/                 @jukkar @tbursztyka @pfalcon
samples/net/http_server/                 @jukkar @tbursztyka
samples/net/lwm2m_client/                @mike-scott
samples/net/mbedtls_sslclient/           @jukkar
samples/net/mqtt_publisher/              @jukkar @tbursztyka
samples/net/coap_client/                 @rveerama1
samples/net/coap_server/                 @rveerama1
samples/net/sockets/                     @jukkar @tbursztyka @pfalcon
samples/sensor/                          @bogdan-davidoaia
samples/subsys/usb                       @jfischer-phytec-iot @finikorg
scripts/coccicheck                       @himanshujha199640 @JuliaLawall
scripts/coccinelle/                      @himanshujha199640 @JuliaLawall
scripts/elf_helper.py                    @andrewboie
scripts/expr_parser.py                   @andrewboie @nashif
scripts/gen_app_partitions.py            @andrewboie
scripts/gen_gdt.py                       @andrewboie
scripts/gen_idt.py                       @andrewboie
scripts/gen_kobject_list.py              @andrewboie
scripts/gen_mmu_x86.py                   @andrewboie
scripts/gen_priv_stacks.py               @agross-linaro
scripts/gen_syscall_header.py            @andrewboie
scripts/gen_syscalls.py                  @andrewboie
scripts/process_gperf.py                 @andrewboie
scripts/sanity_chk/                      @andrewboie @nashif
scripts/sanitycheck                      @andrewboie @nashif
scripts/west_commands/                   @mbolivar
scripts/west-commands.yml                @mbolivar
subsys/bluetooth/                        @sjanc @jhedberg @Vudentz
subsys/bluetooth/controller/             @carlescufi @cvinayak @thoh-ot
subsys/fs/                               @nashif
subsys/logging/                          @nordic-krch
subsys/net/buf.c                         @jukkar @jhedberg @tbursztyka @pfalcon
subsys/net/ip/                           @jukkar @tbursztyka @pfalcon
subsys/net/lib/                          @jukkar @tbursztyka @pfalcon
subsys/net/lib/dns/                      @jukkar @tbursztyka @pfalcon
subsys/net/lib/http/                     @jukkar @tbursztyka
subsys/net/lib/lwm2m/                    @mike-scott
subsys/net/lib/mqtt/                     @jukkar @tbursztyka
subsys/net/lib/coap/                     @rveerama1
subsys/net/lib/sockets/                  @jukkar @tbursztyka @pfalcon
subsys/shell/                            @jarz-nordic @nordic-krch
subsys/*/*native_posix*/                 @aescolar
subsys/usb/                              @jfischer-phytec-iot @finikorg
tests/boards/native_posix/               @aescolar
tests/bluetooth/                         @sjanc @jhedberg @Vudentz
tests/posix/                             @nniranjhana @pfalcon
tests/crypto/                            @ceolin
tests/crypto/mbedtls/                    @nashif @ceolin
tests/drivers/spi/                       @tbursztyka
tests/kernel/                            @andrewboie @andyross @spoorthik @nniranjhana
tests/net/                               @jukkar @tbursztyka @pfalcon
tests/net/buf/                           @jukkar @jhedberg @tbursztyka @pfalcon
tests/net/lib/                           @jukkar @tbursztyka @pfalcon
tests/net/lib/http_header_fields/        @jukkar @tbursztyka
tests/net/lib/mqtt_packet/               @jukkar @tbursztyka
tests/net/lib/coap/                      @rveerama1
tests/net/socket/                        @jukkar @tbursztyka @pfalcon
tests/subsys/fs/                         @nashif @ramakrishnapallala

# Get all docs reviewed
*.rst                                    @dbkinder
