# Can't easily add license to rat-excludes file.
.rat-excludes

# Temporary user files.
.gdb_history
.gdb_out
tags

# Non-source files
RELEASE_NOTES.md
repository.yml
.gitignore
00readme.txt
uncrustify.cfg
README.md
.mailmap
version.txt

# unit tests executables
bin

# CRC16 - BSD License.
crc16.*

# Nordic nRF51 SDK - BSD License.
nrf51dk_no_boot.ld
system_nrf51.c
gcc_startup_nrf51.s
nrf51dk-16kbram_no_boot.ld
boot-nrf51xxaa.ld
nrf51xxaa.ld
boot-nrf51xxac.ld
nrf51xxac.ld
split-nrf51dk.ld
boot-nrf51xxac.ld
nrf51xxac.ld
split-nrf51dk.ld
split-nrf51dk-16kbram.ld
nrf51.ld
nrf51.h
nrf51_bitfields.h
nrf51_deprecated.h
system_nrf51.h
gcc_startup_nrf51_split.s

# Nordic nRF52 SDK - BSD License.
nrf52dk_no_boot.ld
bmd300eval_no_boot.ld
boot-nrf52xxaa.ld
nrf52xxaa.ld
primo_no_boot.ld
split-primo.ld
split-bmd300eval.ld
split-nrf52dk.ld
rb-nano2_no_boot.ld
split-rb-nano2.ld
nrf52.ld
nrf52_ram_resident.ld
ada_feather_nrf52_no_boot.ld
split_ada_feather_nrf52.ld
split-microbit.ld
system_nrf52.c
gcc_startup_nrf52.s
nrf51_to_nrf52.h
nrf52.h
nrf52_bitfields.h
system_nrf52.h
gcc_startup_nrf52_split.s
gcc_startup_nrf52840.s
nrf51_to_nrf52840.h
nrf52840.h
nrf52840_bitfields.h
nrf52840_peripherals.h
nrf52_to_nrf52840.h
system_nrf52840.c
system_nrf52840.h

# Nordic nRF51 SDK - BSD License.
# Nordic nRF52 SDK - BSD License.
compiler_abstraction.h
nrf.h
nrf52_name_change.h
system_nrf51422.c
arm_startup_nrf51.s
arm_startup_nrf52.s
uicr_config.h
iar_startup_nrf51.s
iar_startup_nrf52.s

# Nordic BLE400 SDK - BSD License
ble400_no_boot.ld
split-ble400.ld

# Nordic nRF52 Thingy SDK - BSD License
nrf52-thingy_no_boot.ld
split-nrf52-thingy.ld

# Nordic SDK - BSD License
nordic_pca10028_no_boot.ld
split-nordic_pca10028.ld
nordic_pca10028-16k_no_boot.ld
split-nordic_pca10028-16k.ld
nordic_pca10040_no_boot.ld
split-nordic_pca10040.ld
nordic_pca10056_no_boot.ld
split-nordic_pca10056.ld
nordic_pca20020_no_boot.ld
split-nordic_pca20020.ld

# RedBear Blend2 SDK - BSD License
rb-blend2_no_boot.ld
split-rb-blend2.ld

# Telenor ee02 SDK - BSD License
split-telee02.ld
telee02_no_boot.ld

# VBLUno51 board - BSD License
split-vbluno51.ld
vbluno51_no_boot.ld

# VBLUno52 board - BSD License
split-vbluno52.ld
vbluno52_no_boot.ld

# STM32 HAL - BSD License
stm32_driver_mod_i2c_v1.c
stm32_driver_mod_i2c_v2.c
stm32_driver_mod_spi.c
stm32_driver_mod_timer.c

# STM32CubeF4  - BSD License.
stm32f4xx_hal_conf.h
system_stm32f4xx.c
startup_STM32F40x.s
stm32f407xx.h
stm32f4xx.h
stm32f4xx_hal.h
stm32f4xx_hal_adc.h
stm32f4xx_hal_adc_ex.h
stm32f4xx_hal_can.h
stm32f4xx_hal_cec.h
stm32f4xx_hal_cortex.h
stm32f4xx_hal_crc.h
stm32f4xx_hal_cryp.h
stm32f4xx_hal_cryp_ex.h
stm32f4xx_hal_dac.h
stm32f4xx_hal_dac_ex.h
stm32f4xx_hal_dcmi.h
stm32f4xx_hal_dcmi_ex.h
stm32f4xx_hal_def.h
stm32f4xx_hal_dma.h
stm32f4xx_hal_dma2d.h
stm32f4xx_hal_dma_ex.h
stm32f4xx_hal_eth.h
stm32f4xx_hal_flash.h
stm32f4xx_hal_flash_ex.h
stm32f4xx_hal_flash_ramfunc.h
stm32f4xx_hal_fmpi2c.h
stm32f4xx_hal_fmpi2c_ex.h
stm32f4xx_hal_gpio.h
stm32f4xx_hal_gpio_ex.h
stm32f4xx_hal_hash.h
stm32f4xx_hal_hash_ex.h
stm32f4xx_hal_hcd.h
stm32f4xx_hal_i2c.h
stm32f4xx_hal_i2c_ex.h
stm32f4xx_hal_i2s.h
stm32f4xx_hal_i2s_ex.h
stm32f4xx_hal_irda.h
stm32f4xx_hal_iwdg.h
stm32f4xx_hal_ltdc.h
stm32f4xx_hal_nand.h
stm32f4xx_hal_nor.h
stm32f4xx_hal_pccard.h
stm32f4xx_hal_pcd.h
stm32f4xx_hal_pcd_ex.h
stm32f4xx_hal_pwr.h
stm32f4xx_hal_pwr_ex.h
stm32f4xx_hal_qspi.h
stm32f4xx_hal_rcc.h
stm32f4xx_hal_rcc_ex.h
stm32f4xx_hal_rng.h
stm32f4xx_hal_rtc.h
stm32f4xx_hal_rtc_ex.h
stm32f4xx_hal_sai.h
stm32f4xx_hal_sai_ex.h
stm32f4xx_hal_sd.h
stm32f4xx_hal_sdram.h
stm32f4xx_hal_smartcard.h
stm32f4xx_hal_spdifrx.h
stm32f4xx_hal_spi.h
stm32f4xx_hal_sram.h
stm32f4xx_hal_tim.h
stm32f4xx_hal_tim_ex.h
stm32f4xx_hal_uart.h
stm32f4xx_hal_usart.h
stm32f4xx_hal_wwdg.h
stm32f4xx_ll_fmc.h
stm32f4xx_ll_fsmc.h
stm32f4xx_ll_sdmmc.h
stm32f4xx_ll_usb.h
system_stm32f4xx.h
stm32f4xx_hal_flash.c
stm32f4xx_hal_flash_ex.c
stm32f4xx_hal_gpio.c
stm32f4xx_hal_rcc.c
stm32f4xx_hal_uart.c

# STM32F4x MCU/BSP clock customization
clock_stm32f4xx.c

#STM32F0xx HAL - BSD licence
STM32F0xx_HAL_Driver
stm32f0xx

# baselibc - BSD License.
# tinyprintf - BSD License.
# klibc - MIT License.
baselibc

# CMSIS-CORE - BSD License.
core_ca9.h
core_caFunc.h
core_caInstr.h
core_ca_mmu.h
core_cm0.h
core_cm0plus.h
core_cm3.h
core_cm4.h
core_cm4_simd.h
core_cmFunc.h
core_cmInstr.h
cmsis_nvic.c
cmsis_nvic.h
HAL_CM0.s
HAL_CM3.s
HAL_CM4.s
HAL_CM33.s
SVC_Table.s
arm_common_tables.h
arm_const_structs.h
arm_math.h
cmsis_armcc.h
cmsis_armcc_V6.h
cmsis_gcc.h
core_cm7.h
core_cmSimd.h
core_sc000.h
core_sc300.h
HAL_CM7.s

# microjson - BSD License.
MSJSON_COPYING
json_decode.c
json_encode.c

# queue.h - BSD License.
queue.h

# FreeBSD - BSD License.
os_mbuf.c
base64.c

# tinycrypt - BSD License.
tinycrypt

# frdm-k64f clock configuration - BSD License.
clock_config.c
clock_config.h

# CMSIS Cortex-M4, STM32f4 - BSD License.
STM32F4xx
STM32F4xx_HAL_Driver

# NXP SDK - BSD License.
sdk-2.0-frdm-k64f_b160321
MK64FN1M0xxx12_flash.ld
boot-MK64FN1M0xxx12_flash.ld
startup_MK64F12.S

# LWIP - BSD License.
lwip_base

# OIC - BSD License.
oic

# FATFS ChaN License
diskio.h
ff.h
ffconf.h
integer.h
ff.c
unicode.c
00history.txt

#Codesoucery License
split-nrf52840pdk.ld
nrf52840pdk_no_boot.ld

# Freescale Semiconductor License
boot-mkw41z512.ld
mkw41z512.ld
no-boot-mkw41z512.ld
gcc_startup_mkw41z.s
MKW41Z4.h
fsl_device_registers.h
system_MKW41Z4.h
MKW41Z4_features.h
system_MKW41Z4.c

# Imagination Technologies - BSD License
mips-hal
ctx.S
excpt_isr.S
uhi32.ld
abiflags.S

# Cygnus Support - MIT like License
gcc_startup_mips.S

# HiFive1 - Apache License 2.0
sifive

# MQTT - Eclipse Public License
mqtt

# CMSIS Cortex-M7, STM32f7 - BSD License.
STM32F7xx
STM32F7xx_HAL_Driver

# LORA - BSD License
lora

# loraping - BSD License (main.c only)
loraping

# SEGGER Sysview - BSD License
sysview

# SEGGER RTT - BSD License
rtt

# Adafruit TSL2561 Sensor - BSD License
tsl2561

# pic32mx470f512h - BSD License
pic32mx470f512h

# Sensorhub board - BSD License
startup_STM32F427xx.s

# STM32F7 Discovery BSP - BSD License
stm32f7xx_hal_conf.h
system_stm32f7xx.c
startup_stm32f746xx.s

# STM32F3 Discovery BSP - BSD License
startup_stm32f303xc.s

# STM32F429 BSP - BSD License
startup_STM32F429x.s

# STM32L152C BSP - BSD License
stm32l1xx_hal_conf.h
system_stm32l1xx.c
startup_stm32l152xc.s

# NUCLEO-F767 BSP - BSD License
startup_stm32f767xx.s

# NUCLEO-F439 BSP - BSD License
startup_stm32f439xx.s

# NUCLEO-F413ZH BSP - BSD License
nucleo-f413zh

# NUCLEO-L467rg BSP - BSD License
nucleo-l476rg

# NUCLEO-F072RB BSP - BSD License
nucleo-f072rb

# NUCLEO-F030R8 BSP - BSD License
nucleo-f030r8

# NUCLEO-F103RB BSP - BSD License
stm32f1xx_hal_conf.h
system_stm32f1xx.c
startup_stm32f103xb.s

# Microchip PIC32 SDK - BSD License
p32mz2048efg100.h
pic32_init_cache.S
pic32_init_tlb_ebi_sqi.S
cache-err-exception.S
cp0defs.h
simple-tlb-refill-exception.S
crt0.S

# Calliope SDK - BSD Licence
split-calliope_mini.ld

# Bluetooth Mesh - Apache 2.0 License
mesh

# pic32mx470_6lp_clicker BSP - one BSD licensed file (other are Apache):
# /hw/bsp/pic32mx470_6lp_clicker/src/sbrk.c
pic32mx470_6lp_clicker

# pic32mz2048_wi-fire BSP - one BSD licensed file (other are Apache):
# ./hw/bsp/pic32mz2048_wi-fire/src/sbrk.c
pic32mz2048_wi-fire

# SDK for Apollo2 - MIT/BSD/Apache License
# hw/bsp/apollo2_evb/src/arch/cortex_m4/gcc_startup.s
apollo2_evb

# BSP for Apollo2 - BSD License
AmbiqSuite
apollo2.h
system_apollo2.h
system_apollo2.c
apollo_nvic.h

# Apollo2 linker script - MIT License
apollo2.ld

# CMSIS Cortex-M4, STM32f3 - BSD License.
STM32F3xx
STM32F3xx_HAL_Driver

# Nucleo-F303K8, Nucleo-F303RE - BSD License.
system_stm32f3xx.c
startup_stm32f303x8.s
startup_stm32f303xe.s
stm32f3xx_hal_conf.h

# Ignore documentation folder
docs

# nrfX - BSD License
nrfx
nrfx_glue.h
nrf52xxx
nrf52xxx-compat

# cmsis-core - Apache License
cmsis-core

# stm32l1xx - BSD License
stm32l1xx

# stm32f1xx - BSD License
stm32f1xx

# ARC - BSD License
arc
embarc_emsk

# DWM1001 - BSD Licence
dwm1001-dev_no_boot.ld
split-dwm1001-dev.ld

# olimex-p103 - BSD and APL 2.0 License
olimex-p103

# puckjs - BSD License
puckjs_no_boot.ld
split_puckjs.ld

# STM32L0xx SDK - BSD License
stm32l0xx

# STM32L4xx SDK - BSD License
stm32l4xx

# Fanstel EVBT840 BSP linker scripts - BSD License
fanstel-ev-bt840_no_boot.ld
split-fanstel-ev-bt840.ld

# B-L072Z-LRWAN1 BSP - BSD License
b-l072z-lrwan1

# B-L475E-IOT01A BSP - BSD License
b-l475e-iot01a

# bluepill BSP - BSD License
bluepill

# Ruuvitag BSP - BSD License
ruuvitag_rev_b

# reel_board BSP - BSD License
reel_board

# Dialog DA1469x BSP - BSD and APL2 license
dialog_da1469x-dk-pro
da1469x
DA1469xAB.h
