# CODEOWNERS for autoreview assigning in github

# https://help.github.com/en/articles/about-code-owners#codeowners-syntax

# Order is important; for each modified file, the last matching
# pattern takes the most precedence.
# That is, with the last pattern being
# *.rst                                     @dbkinder
# if only .rst files are being modified, only dbkinder is
# automatically requested for review, but you can manually
# add others as needed.

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

/.known-issues/                           @inakypg @nashif
/arch/arc/                                @vonhust @ruuddw
/arch/arm/                                @MaureenHelm @galak @ioannisg
/arch/arm/core/cortex_m/cmse/             @ioannisg
/arch/arm/include/cortex_m/cmse.h         @ioannisg
/arch/arm/core/cortex_r/                  @MaureenHelm @galak @ioannisg @bbolen
/arch/common/                             @andrewboie @ioannisg @andyross
/soc/arc/snps_*/                          @vonhust @ruuddw
/soc/nios2/                               @nashif @wentongwu
/soc/arm/                                 @MaureenHelm @galak @ioannisg
/soc/arm/arm/mps2/                        @fvincenzo
/soc/arm/atmel_sam/sam3x/                 @ioannisg
/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/st_stm32/stm32mp1/               @arnop2
/soc/arm/ti_simplelink/cc13x2_cc26x2/     @bwitherspoon
/soc/arm/ti_simplelink/cc32xx/            @vanti
/soc/arm/ti_simplelink/msp432p4xx/        @Mani-Sadhasivam
/soc/xtensa/intel_s1000/                  @sathishkuttan @dcpleung
/arch/x86/                                @andrewboie
/arch/nios2/                              @andrewboie @wentongwu
/arch/posix/                              @aescolar
/arch/riscv/                              @kgugala @pgielda @nategraff-sifive
/soc/posix/                               @aescolar
/soc/riscv/                               @kgugala @pgielda @nategraff-sifive
/soc/riscv/openisa*/                      @MaureenHelm
/soc/x86/                                 @andrewboie
/arch/xtensa/                             @andrewboie @dcpleung @andyross
/soc/xtensa/                              @andrewboie @dcpleung @andyross
/boards/arc/                              @vonhust @ruuddw
/boards/arm/                              @MaureenHelm @galak
/boards/arm/96b_argonkey/                 @avisconti
/boards/arm/96b_avenger96/                @Mani-Sadhasivam
/boards/arm/96b_carbon/                   @rsalveti @idlethread
/boards/arm/96b_meerkat96/                @Mani-Sadhasivam
/boards/arm/96b_nitrogen/                 @idlethread
/boards/arm/96b_neonkey/                  @Mani-Sadhasivam
/boards/arm/96b_stm32_sensor_mez/         @Mani-Sadhasivam
/boards/arm/96b_wistrio/                  @Mani-Sadhasivam
/boards/arm/arduino_due/                  @ioannisg
/boards/arm/cc1352r1_launchxl/            @bwitherspoon
/boards/arm/cc26x2r1_launchxl/            @bwitherspoon
/boards/arm/cc3220sf_launchxl/            @vanti
/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/nrf*/                         @carlescufi @lemrey @ioannisg
/boards/arm/nucleo*/                      @erwango
/boards/arm/nucleo_f401re/                @rsalveti @idlethread
/boards/arm/qemu_cortex_m*/               @ioannisg
/boards/arm/sam4s_xplained/               @fallrisk
/boards/arm/v2m_beetle/                   @fvincenzo
/boards/arm/olimexino_stm32/              @ydamigos
/boards/arm/sensortile_box/               @avisconti
/boards/arm/steval_fcu001v1/              @Navin-Sankar
/boards/arm/stm32l1_disco/                @karlp
/boards/arm/stm32*_disco/                 @erwango
/boards/arm/stm32f3_disco/                @ydamigos
/boards/arm/stm32*_eval/                  @erwango
/boards/common/                           @mbolivar
/boards/nios2/                            @wentongwu
/boards/nios2/altera_max10/               @wentongwu
/boards/arm/stm32_min_dev/                @cbsiddharth
/boards/posix/                            @aescolar
/boards/riscv/                            @kgugala @pgielda @nategraff-sifive
/boards/riscv/rv32m1_vega/                @MaureenHelm
/boards/shields/                          @erwango
/boards/x86/                              @andrewboie @nashif
/boards/xtensa/                           @nashif @dcpleung
/boards/xtensa/intel_s1000_crb/           @sathishkuttan @dcpleung
/boards/xtensa/odroid_go/                 @ydamigos
# All cmake related files
/cmake/                                   @SebastianBoe @nashif
/CMakeLists.txt                           @SebastianBoe @nashif
/doc/                                     @dbkinder
/doc/guides/coccinelle.rst                @himanshujha199640 @JuliaLawall
/doc/CMakeLists.txt                       @carlescufi
/doc/scripts/                             @carlescufi
/doc/guides/bluetooth/                    @joerchan @jhedberg @Vudentz
/doc/reference/bluetooth/                 @joerchan @jhedberg @Vudentz
/drivers/*/*cc13xx_cc26xx*                @bwitherspoon
/drivers/*/*mcux*                         @MaureenHelm
/drivers/*/*stm32*                        @erwango
/drivers/*/*native_posix*                 @aescolar
/drivers/adc/                             @anangl
/drivers/adc/adc_stm32.c                  @cybertale
/drivers/bluetooth/                       @joerchan @jhedberg @Vudentz
/drivers/can/                             @alexanderwachter
/drivers/can/*mcp2515*                    @karstenkoenig
/drivers/clock_control/*nrf*              @nordic-krch
/drivers/counter/                         @nordic-krch
/drivers/counter/counter_cmos.c           @andrewboie
/drivers/display/                         @vanwinkeljan
/drivers/display/display_framebuf.c       @andrewboie
/drivers/dma/*sam0*                       @Sizurka
/drivers/dma/dma_stm32*                   @cybertale
/drivers/eeprom/                          @henrikbrixandersen
/drivers/entropy/*rv32m1*                 @MaureenHelm
/drivers/espi/                            @albertofloyd @franciscomunoz @scottwcpg
/drivers/ps2/                             @albertofloyd @franciscomunoz @scottwcpg
/drivers/kscan/                           @albertofloyd @franciscomunoz @scottwcpg
/drivers/ethernet/                        @jukkar @tbursztyka @pfalcon
/drivers/flash/                           @nashif @nvlsianpu
/drivers/flash/*native_posix*             @vanwinkeljan @aescolar
/drivers/flash/*nrf*                      @nvlsianpu
/drivers/flash/*spi_nor*                  @pabigot
/drivers/flash/*stm32*                    @superna9999
/drivers/gpio/                            @mnkp @pabigot
/drivers/gpio/*ht16k33*                   @henrikbrixandersen
/drivers/gpio/*stm32*                     @rsalveti @idlethread
/drivers/hwinfo/                          @alexanderwachter
/drivers/i2s/i2s_ll_stm32*                @avisconti
/drivers/ieee802154/                      @jukkar @tbursztyka
/drivers/interrupt_controller/            @andrewboie
/drivers/ipm/ipm_mhu*                     @karl-zh
/drivers/ipm/Kconfig.nrfx                 @masz-nordic @ioannisg
/drivers/ipm/Kconfig.nrfx_ipc_channel     @masz-nordic @ioannisg
/drivers/ipm/ipm_nrfx_ipc.c               @masz-nordic @ioannisg
/drivers/ipm/ipm_nrfx_ipc.h               @masz-nordic @ioannisg
/drivers/ipm/ipm_stm32_ipcc.c             @arnop2
/drivers/*/vexriscv_litex.c               @mateusz-holenko @kgugala @pgielda
/drivers/led/                             @Mani-Sadhasivam
/drivers/led_strip/                       @mbolivar
/drivers/modem/                           @mike-scott
/drivers/pcie/                            @andrewboie
/drivers/pinmux/stm32/                    @rsalveti @idlethread
/drivers/pinmux/*hsdk*                    @iriszzw
/drivers/sensor/                          @MaureenHelm
/drivers/sensor/ams_iAQcore/              @alexanderwachter
/drivers/sensor/ens210/                   @alexanderwachter
/drivers/sensor/hts*/                     @avisconti
/drivers/sensor/lis*/                     @avisconti
/drivers/sensor/lps*/                     @avisconti
/drivers/sensor/lsm*/                     @avisconti
/drivers/sensor/st*/                      @avisconti
/drivers/serial/uart_altera_jtag_hal.c    @wentongwu
/drivers/serial/*ns16550*                 @andrewboie
/drivers/serial/Kconfig.litex             @mateusz-holenko @kgugala @pgielda
/drivers/serial/uart_liteuart.c           @mateusz-holenko @kgugala @pgielda
/drivers/serial/Kconfig.rtt               @carlescufi @pkral78
/drivers/serial/uart_rtt.c                @carlescufi @pkral78
/drivers/serial/Kconfig.xlnx              @wjliang
/drivers/serial/uart_xlnx_ps.c            @wjliang
/drivers/net/                             @jukkar @tbursztyka
/drivers/ptp_clock/                       @jukkar
/drivers/pwm/pwm_shell.c                  @henrikbrixandersen
/drivers/spi/                             @tbursztyka
/drivers/spi/spi_ll_stm32.*               @superna9999
/drivers/spi/spi_rv32m1_lpspi*            @karstenkoenig
/drivers/timer/apic_timer.c               @andrewboie
/drivers/timer/cortex_m_systick.c         @ioannisg
/drivers/timer/altera_avalon_timer_hal.c  @wentongwu
/drivers/timer/riscv_machine_timer.c      @nategraff-sifive @kgugala @pgielda
/drivers/timer/litex_timer.c              @mateusz-holenko @kgugala @pgielda
/drivers/timer/xlnx_psttc_timer.c         @wjliang
/drivers/timer/cc13x2_cc26x2_rtc_timer.c  @vanti
/drivers/usb/                             @jfischer-phytec-iot @finikorg
/drivers/usb/device/usb_dc_stm32.c        @ydamigos @loicpoulain
/drivers/video/                           @loicpoulain
/drivers/i2c/i2c_ll_stm32*                @ldts @ydamigos
/drivers/i2c/i2c_rv32m1_lpi2c*            @henrikbrixandersen
/drivers/i2c/*sam0*                       @Sizurka
/drivers/i2c/i2c_dw*                      @dcpleung
/drivers/*/*xec*                     @franciscomunoz @albertofloyd @scottwcpg
/drivers/wifi/                            @jukkar @tbursztyka @pfalcon
/drivers/wifi/eswifi/                     @loicpoulain
/dts/arc/                                 @vonhust @ruuddw @iriszzw
/dts/arm/atmel/samr21.dtsi                @benpicco
/dts/arm/atmel/sam*5*.dtsi                @benpicco
/dts/arm/st/                              @erwango
/dts/arm/ti/cc13?2*                       @bwitherspoon
/dts/arm/ti/cc26?2*                       @bwitherspoon
/dts/arm/ti/cc3235*                       @vanti
/dts/arm/nordic/                          @ioannisg @carlescufi
/dts/arm/nxp/                             @MaureenHelm
/dts/arm/microchip/                       @franciscomunoz @albertofloyd @scottwcpg
/dts/riscv/microsemi-miv.dtsi             @galak
/dts/riscv/rv32m1*                        @MaureenHelm
/dts/riscv/riscv32-fe310.dtsi             @nategraff-sifive
/dts/riscv/riscv32-litex-vexriscv.dtsi    @mateusz-holenko @kgugala @pgielda
/dts/arm/armv7-r.dtsi                     @bbolen
/dts/arm/xilinx/                          @bbolen
/dts/xtensa/xtensa.dtsi                   @ydamigos
/dts/bindings/                            @galak
/dts/bindings/can/                        @alexanderwachter
/dts/bindings/iio/adc/st*stm32-adc.yaml   @cybertale
/dts/bindings/serial/ns16550.yaml         @andrewboie
/dts/bindings/*/nordic*                   @anangl
/dts/bindings/*/nxp*                      @MaureenHelm
/dts/bindings/*/openisa*                  @MaureenHelm
/dts/bindings/*/st*                       @erwango
/dts/bindings/sensor/ams*                 @alexanderwachter
/dts/bindings/*/sifive*                   @mateusz-holenko @kgugala @pgielda @nategraff-sifive
/dts/bindings/*/litex*                    @mateusz-holenko @kgugala @pgielda
/dts/bindings/*/vexriscv*                 @mateusz-holenko @kgugala @pgielda
/dts/posix/                               @aescolar @vanwinkeljan
/dts/bindings/sensor/*bme680*             @BoschSensortec
/dts/bindings/sensor/st*                  @avisconti
/ext/hal/cmsis/                           @MaureenHelm @galak @stephanosio
/ext/lib/crypto/tinycrypt/                @ceolin
/include/                                 @nashif @carlescufi @galak @MaureenHelm
/include/drivers/adc.h                    @anangl
/include/drivers/can.h                    @alexanderwachter
/include/drivers/counter.h                @nordic-krch
/include/drivers/display.h                @vanwinkeljan
/include/drivers/espi.h                   @albertofloyd @franciscomunoz @scottwcpg
/include/drivers/bluetooth/               @joerchan @jhedberg @Vudentz
/include/drivers/flash.h                  @nashif @carlescufi @galak @MaureenHelm @nvlsianpu
/include/drivers/led/ht16k33.h            @henrikbrixandersen
/include/drivers/interrupt_controller/    @andrewboie
/include/drivers/pcie/                    @andrewboie
/include/drivers/hwinfo.h                 @alexanderwachter
/include/drivers/led.h                    @Mani-Sadhasivam
/include/drivers/led_strip.h              @mbolivar
/include/drivers/sensor.h                 @MaureenHelm
/include/drivers/spi.h                    @tbursztyka
/include/app_memory/                      @andrewboie
/include/arch/arc/                        @vonhust @ruuddw
/include/arch/arc/arch.h                  @andrewboie
/include/arch/arc/v2/irq.h                @andrewboie
/include/arch/arm/                        @MaureenHelm @galak @ioannisg
/include/arch/arm/irq.h                   @andrewboie
/include/arch/nios2/                      @andrewboie
/include/arch/nios2/arch.h                @andrewboie
/include/arch/posix/                      @aescolar
/include/arch/riscv/                      @nategraff-sifive @kgugala @pgielda
/include/arch/x86/                        @andrewboie @wentongwu
/include/arch/common/                     @andrewboie @andyross @nashif
/include/arch/xtensa/                     @andrewboie
/include/sys/atomic.h                     @andrewboie @andyross
/include/bluetooth/                       @joerchan @jhedberg @Vudentz
/include/cache.h                          @andrewboie @andyross
/include/device.h                         @wentongwu @nashif
/include/display/                         @vanwinkeljan
/include/dt-bindings/clock/kinetis_mcg.h  @henrikbrixandersen
/include/dt-bindings/clock/kinetis_scg.h  @henrikbrixandersen
/include/dt-bindings/dma/stm32_dma.h      @cybertale
/include/dt-bindings/pcie/                @andrewboie
/include/dt-bindings/usb/usb.h            @galak @finikorg
/include/fs/                              @nashif @wentongwu
/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/linker/app_smem*.ld              @andrewboie
/include/linker/                          @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/power.h                    @wentongwu @nashif
/include/ptp_clock.h                      @jukkar
/include/shared_irq.h                     @andrewboie @andyross
/include/shell/                           @jakub-uC @nordic-krch
/include/sw_isr_table.h                   @andrewboie @andyross
/include/sys_clock.h                      @andrewboie @andyross
/include/sys/sys_io.h                     @andrewboie @andyross
/include/toolchain.h                      @andrewboie @andyross @nashif
/include/toolchain/                       @andrewboie @andyross
/include/zephyr.h                         @andrewboie @andyross
/kernel/                                  @andrewboie @andyross
/lib/gui/                                 @vanwinkeljan
/lib/os/                                  @andrewboie @andyross
/lib/posix/                               @pfalcon
/lib/cmsis_rtos_v2/                       @nashif
/lib/cmsis_rtos_v1/                       @nashif
/lib/libc/                                @nashif @andrewboie
/modules/                                 @nashif
/kernel/device.c                          @andrewboie @andyross @nashif
/kernel/idle.c                            @andrewboie @andyross @nashif
/samples/                                 @nashif
/samples/basic/minimal/                   @carlescufi
/samples/basic/servo_motor/*microbit*     @jhe
/lib/updatehub/                           @chtavares592 @otavio
/samples/bluetooth/                       @jhedberg @Vudentz @joerchan
/samples/boards/intel_s1000_crb/          @sathishkuttan @dcpleung @nashif
/samples/display/                         @vanwinkeljan
/samples/drivers/CAN/                     @alexanderwachter
/samples/drivers/ht16k33/                 @henrikbrixandersen
/samples/gui/                             @vanwinkeljan
/samples/net/                             @jukkar @tbursztyka @pfalcon
/samples/net/dns_resolve/                 @jukkar @tbursztyka @pfalcon
/samples/net/lwm2m_client/                @mike-scott
/samples/net/mqtt_publisher/              @jukkar @tbursztyka
/samples/net/sockets/coap_*/              @rveerama1
/samples/net/sockets/                     @jukkar @tbursztyka @pfalcon
/samples/net/updatehub/                   @chtavares592 @otavio
/samples/sensor/                          @MaureenHelm
/samples/shields/                         @avisconti
/samples/subsys/logging/                  @nordic-krch @jakub-uC
/samples/subsys/shell/                    @jakub-uC @nordic-krch
/samples/subsys/usb/                      @jfischer-phytec-iot @finikorg
/samples/subsys/power/                    @wentongwu @pabigot
/scripts/coccicheck                       @himanshujha199640 @JuliaLawall
/scripts/coccinelle/                      @himanshujha199640 @JuliaLawall
/scripts/kconfig/                         @ulfalizer
/scripts/elf_helper.py                    @andrewboie
/scripts/sanity_chk/expr_parser.py        @nashif
/scripts/gen_app_partitions.py            @andrewboie
/scripts/dts/                             @ulfalizer @galak
/scripts/release/                         @nashif
/arch/x86/gen_gdt.py                      @andrewboie
/arch/x86/gen_idt.py                      @andrewboie
/scripts/gen_kobject_list.py              @andrewboie
/scripts/gen_priv_stacks.py               @andrewboie @agross-oss @ioannisg
/scripts/gen_syscall_header.py            @andrewboie
/scripts/gen_syscalls.py                  @andrewboie
/scripts/process_gperf.py                 @andrewboie
/scripts/gen_relocate_app.py              @wentongwu
/scripts/sanity_chk/                      @nashif
/scripts/sanitycheck                      @nashif
/scripts/series-push-hook.sh              @erwango
/scripts/west_commands/                   @mbolivar
/scripts/west-commands.yml                @mbolivar
/scripts/zephyr_module.py                 @tejlmand
/scripts/valgrind.supp                    @aescolar
/subsys/bluetooth/                        @joerchan @jhedberg @Vudentz
/subsys/bluetooth/controller/             @carlescufi @cvinayak @thoh-ot
/subsys/bluetooth/mesh/                   @jhedberg @trond-snekvik @joerchan @Vudentz
/subsys/cpp/                              @pabigot @vanwinkeljan
/subsys/debug/                            @nashif
/subsys/debug/asan.c                      @vanwinkeljan @aescolar
/subsys/disk/disk_access_spi_sdhc.c       @JunYangNXP
/subsys/disk/disk_access_sdhc.h           @JunYangNXP
/subsys/disk/disk_access_usdhc.c          @JunYangNXP
/subsys/fb/                               @jfischer-phytec-iot
/subsys/fs/                               @nashif
/subsys/fs/fcb/                           @nvlsianpu
/subsys/fs/fuse_fs_access.c               @vanwinkeljan
/subsys/fs/littlefs_fs.c                  @pabigot
/subsys/fs/nvs/                           @Laczen
/subsys/logging/                          @nordic-krch
/subsys/logging/log_backend_net.c         @nordic-krch @jukkar
/subsys/mgmt/                             @carlescufi @nvlsianpu
/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/lwm2m/                    @mike-scott
/subsys/net/lib/config/                   @jukkar @tbursztyka
/subsys/net/lib/mqtt/                     @jukkar @tbursztyka @rlubos
/subsys/net/lib/openthread/               @rlubos
/subsys/net/lib/coap/                     @rveerama1
/subsys/net/lib/sockets/                  @jukkar @tbursztyka @pfalcon
/subsys/net/lib/tls_credentials/          @rlubos
/subsys/net/l2/                           @jukkar @tbursztyka
/subsys/net/l2/canbus/                    @alexanderwachter @jukkar
/subsys/power/                            @wentongwu @pabigot
/subsys/random/                           @dleach02
/subsys/settings/                         @nvlsianpu
/subsys/shell/                            @jakub-uC @nordic-krch
/subsys/storage/                          @nvlsianpu
/subsys/testsuite/                        @nashif
/subsys/usb/                              @jfischer-phytec-iot @finikorg
/tests/                                   @nashif
/tests/application_development/libcxx/    @pabigot
/tests/arch/arm/                          @ioannisg
/tests/boards/native_posix/               @aescolar
/tests/boards/intel_s1000_crb/            @dcpleung @sathishkuttan
/tests/bluetooth/                         @joerchan @jhedberg @Vudentz
/tests/posix/                             @pfalcon
/tests/crypto/                            @ceolin
/tests/crypto/mbedtls/                    @nashif @ceolin
/tests/drivers/can/                       @alexanderwachter
/tests/drivers/flash_simulator/           @nvlsianpu
/tests/drivers/hwinfo/                    @alexanderwachter
/tests/drivers/spi/                       @tbursztyka
/tests/drivers/uart/uart_async_api/       @Mierunski
/tests/kernel/                            @andrewboie @andyross @nashif
/tests/lib/                               @nashif
/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 @wentongwu
/tests/subsys/settings/                   @nvlsianpu
/tests/subsys/shell/                      @jakub-uC @nordic-krch
# Get all docs reviewed
*.rst                                     @dbkinder
*posix*.rst                               @dbkinder @aescolar
