# 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/               @arnopo
/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/eeprom/eeprom_stm32.c            @KwonTae-young
/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/*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/*/intc_vexriscv_litex.c          @mateusz-holenko @kgugala @pgielda
/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             @arnopo
/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/watchdog/wdt_handlers.c          @andrewboie
/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/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_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_hacks.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 @pfalcon
/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
