aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios/os
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios/os')
-rw-r--r--lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.c558
-rw-r--r--lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.h522
-rw-r--r--lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.mk8
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/cfe_osal.mk8
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/common_types.h267
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-core.h274
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-custom.h68
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-filesys.h419
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-loader.h91
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-net.h61
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-timer.h68
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-version.h48
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi.h143
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/osal/src/osapi.c2281
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/cfe_psp.mk11
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/include/cfe_psp.h375
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/include/cfe_psp_config.h21
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/include/psp_version.h38
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/src/cfe_psp_exception.c60
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/src/cfe_psp_memory.c136
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/src/cfe_psp_support.c72
-rw-r--r--lib/chibios/os/common/abstractions/nasa_cfe/psp/src/cfe_psp_timer.c81
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/ADuCM360.h10031
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/ADuCM361.h9458
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/ADuCM362.h10352
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/ADuCM363.h9830
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/ADuCM36x.h16
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/system_ADuCM360.h112
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/system_ADuCM361.h112
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/system_ADuCM362.h113
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM36x/system_ADuCM363.h112
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM41x/ADuCM410.h7327
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM41x/ADuCM41x.h10
-rw-r--r--lib/chibios/os/common/ext/ADI/ADUCM41x/system_ADuCM410.h45
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_armcc.h865
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_armclang.h1869
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_compiler.h266
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_gcc.h2085
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_iccarm.h935
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/cmsis_version.h39
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_armv8mbl.h1918
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_armv8mml.h2927
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm0.h949
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm0plus.h1083
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm1.h976
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm23.h1993
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm3.h1941
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm33.h3002
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm4.h2129
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_cm7.h2671
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_sc000.h1022
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/core_sc300.h1915
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/mpu_armv7.h270
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/mpu_armv8.h333
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core/Include/tz_context.h70
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/ARMCA5.h135
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_armcc.h544
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_armclang.h503
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_compiler.h201
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_cp15.h514
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_gcc.h679
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/cmsis_iccarm.h559
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/core_ca.h2614
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/irq_ctrl.h186
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Include/system_ARMCA5.h65
-rw-r--r--lib/chibios/os/common/ext/ARM/CMSIS/Core_A/Source/irq_ctrl_gic.c410
-rwxr-xr-xlib/chibios/os/common/ext/ARM/CMSIS/readme.txt6
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f030x6.h5390
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f030x8.h5457
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f030xc.h5834
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f031x6.h5709
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f038xx.h5674
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f042x6.h10684
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f048xx.h10648
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f051x8.h6791
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f058xx.h6756
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f070x6.h5635
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f070xb.h5821
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f071xb.h7389
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f072xb.h11309
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f078xx.h11279
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f091xc.h11868
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f098xx.h11835
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/stm32f0xx.h242
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F0xx/system_stm32f0xx.h121
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f100xb.h6373
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f100xe.h6988
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f101x6.h5717
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f101xb.h5848
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f101xe.h6851
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f101xg.h7061
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f102x6.h6850
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f102xb.h6972
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f103x6.h10511
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f103xb.h10642
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f103xe.h11777
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f103xg.h11961
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f105xc.h14749
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f107xc.h15662
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/stm32f1xx.h238
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F1xx/system_stm32f1xx.h116
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/stm32f205xx.h13711
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/stm32f207xx.h15002
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/stm32f215xx.h13968
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/stm32f217xx.h15259
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/stm32f2xx.h209
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F2xx/system_stm32f2xx.h124
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f301x8.h8621
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f302x8.h12382
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f302xc.h12694
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f302xe.h14434
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f303x8.h12158
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f303xc.h13397
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f303xe.h15251
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f318xx.h8606
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f328xx.h12128
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f334x8.h15120
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f358xx.h13176
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f373xc.h11996
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f378xx.h11784
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f398xx.h15017
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/stm32f3xx.h250
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F3xx/system_stm32f3xx.h122
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f401xc.h8642
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f401xe.h8642
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f405xx.h14304
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f407xx.h15595
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f410cx.h7351
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f410rx.h7355
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f410tx.h7294
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f411xe.h8681
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f412cx.h13522
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f412rx.h14521
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f412vx.h14521
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f412zx.h14522
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f413xx.h15128
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f415xx.h14595
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f417xx.h15881
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f423xx.h15281
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f427xx.h16817
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f429xx.h17175
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f437xx.h17113
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f439xx.h17463
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f446xx.h15976
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f469xx.h20277
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f479xx.h20568
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/stm32f4xx.h271
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F4xx/system_stm32f4xx.h124
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f722xx.h15165
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f723xx.h15244
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f732xx.h15390
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f733xx.h15469
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f745xx.h17219
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f746xx.h17569
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f756xx.h17856
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f765xx.h17938
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f767xx.h18599
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f769xx.h21769
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f777xx.h18886
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f779xx.h22056
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/stm32f7xx.h230
-rw-r--r--lib/chibios/os/common/ext/ST/STM32F7xx/system_stm32f7xx.h125
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G0xx/stm32g070xx.h7639
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G0xx/stm32g071xx.h9160
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G0xx/stm32g081xx.h9468
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G0xx/stm32g0xx.h181
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G0xx/system_stm32g0xx.h106
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g431xx.h13141
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g441xx.h13374
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g471xx.h13699
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g473xx.h14550
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g474xx.h17914
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g483xx.h14783
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g484xx.h18147
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32g4xx.h199
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/stm32gbk1cb.h13079
-rw-r--r--lib/chibios/os/common/ext/ST/STM32G4xx/system_stm32g4xx.h106
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h742xx.h25651
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h743xx.h26301
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h745xx.h27074
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h747xx.h30247
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h750xx.h26569
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h753xx.h26570
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h755xx.h27343
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h757xx.h30516
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7a3xx.h22435
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7a3xxq.h22447
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7b0xx.h22907
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7b0xxq.h22919
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7b3xx.h22908
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7b3xxq.h22920
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/stm32h7xx.h224
-rw-r--r--lib/chibios/os/common/ext/ST/STM32H7xx/system_stm32h7xx.h105
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l011xx.h5955
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l021xx.h6095
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l031xx.h6094
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l041xx.h6234
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l051xx.h6270
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l052xx.h7346
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l053xx.h7506
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l061xx.h6410
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l062xx.h7486
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l063xx.h7646
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l071xx.h6503
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l072xx.h7681
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l073xx.h7843
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l081xx.h6643
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l082xx.h7821
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l083xx.h7983
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/stm32l0xx.h241
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L0xx/system_stm32l0xx.h125
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l100xb.h8116
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l100xba.h8264
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l100xc.h8679
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xb.h8085
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xba.h8161
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xc.h8901
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xca.h9160
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xd.h9848
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xdx.h9215
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l151xe.h9215
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xb.h8239
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xba.h8300
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xc.h9055
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xca.h9314
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xd.h10002
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xdx.h9369
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l152xe.h9369
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l162xc.h9197
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l162xca.h9456
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l162xd.h10144
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l162xdx.h9511
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l162xe.h9511
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/stm32l1xx.h264
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L1xx/system_stm32l1xx.h126
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l431xx.h15064
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l432xx.h14855
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l433xx.h15962
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l442xx.h15083
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l443xx.h16190
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l451xx.h15325
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l452xx.h16069
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l462xx.h16297
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l471xx.h16846
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l475xx.h18383
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l476xx.h18537
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l485xx.h18611
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l486xx.h18765
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l496xx.h19784
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4a6xx.h20127
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4r5xx.h20145
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4r7xx.h20650
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4r9xx.h23782
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4s5xx.h20495
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4s7xx.h21000
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4s9xx.h24132
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/stm32l4xx.h257
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L4xx/system_stm32l4xx.h123
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L5xx/stm32l552xx.h20397
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L5xx/stm32l562xx.h21198
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L5xx/stm32l5xx.h180
-rw-r--r--lib/chibios/os/common/ext/ST/STM32L5xx/system_stm32l5xx.h110
-rw-r--r--lib/chibios/os/common/ext/readme.txt7
-rw-r--r--lib/chibios/os/common/portability/CW/ccportab.h129
-rw-r--r--lib/chibios/os/common/portability/GCC/ccportab.h129
-rw-r--r--lib/chibios/os/common/portability/GHS/ccportab.h129
-rw-r--r--lib/chibios/os/common/ports/ARM/chcore.c54
-rw-r--r--lib/chibios/os/common/ports/ARM/chcore.h607
-rw-r--r--lib/chibios/os/common/ports/ARM/chcore_timer.h126
-rw-r--r--lib/chibios/os/common/ports/ARM/compilers/GCC/chcoreasm.S167
-rw-r--r--lib/chibios/os/common/ports/ARM/compilers/GCC/chtypes.h115
-rw-r--r--lib/chibios/os/common/ports/ARM/compilers/GCC/mk/port_generic.mk12
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore.c54
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore.h208
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore_timer.h133
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore_v6m.c155
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore_v6m.h466
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore_v7m.c391
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/chcore_v7m.h790
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v6m.S154
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/GCC/chcoreasm_v7m.S242
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/GCC/chtypes.h97
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk13
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk13
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v6m.s156
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/IAR/chcoreasm_v7m.s169
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/IAR/chtypes.h115
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v6m.s152
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/RVCT/chcoreasm_v7m.s167
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/compilers/RVCT/chtypes.h97
-rw-r--r--lib/chibios/os/common/ports/ARMCMx/mpu.h228
-rw-r--r--lib/chibios/os/common/ports/AVR/chcore.c159
-rw-r--r--lib/chibios/os/common/ports/AVR/chcore.h542
-rw-r--r--lib/chibios/os/common/ports/AVR/chcore_timer.h126
-rw-r--r--lib/chibios/os/common/ports/AVR/compilers/GCC/chtypes.h98
-rw-r--r--lib/chibios/os/common/ports/AVR/compilers/GCC/mk/port.mk12
-rw-r--r--lib/chibios/os/common/ports/AVR/compilers/GCC/rules.mk284
-rw-r--r--lib/chibios/os/common/ports/SIMIA32/chcore.c131
-rw-r--r--lib/chibios/os/common/ports/SIMIA32/chcore.h461
-rw-r--r--lib/chibios/os/common/ports/SIMIA32/compilers/GCC/chtypes.h109
-rw-r--r--lib/chibios/os/common/ports/SIMIA32/compilers/GCC/port.mk12
-rw-r--r--lib/chibios/os/common/ports/e200/chcore.c54
-rw-r--r--lib/chibios/os/common/ports/e200/chcore.h722
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/CW/chcoreasm.s119
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/CW/chtypes.h97
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/CW/ivor.s205
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GCC/chcoreasm.S113
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GCC/chtypes.h97
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GCC/ivor.S263
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GCC/mk/port.mk13
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GHS/chcoreasm.s107
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GHS/chtypes.h97
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GHS/ivor.s265
-rw-r--r--lib/chibios/os/common/ports/e200/compilers/GHS/mk/port.mk13
-rw-r--r--lib/chibios/os/common/ports/readme.txt3
-rw-r--r--lib/chibios/os/common/ports/templates/chcore.c75
-rw-r--r--lib/chibios/os/common/ports/templates/chcore.dox33
-rw-r--r--lib/chibios/os/common/ports/templates/chcore.h460
-rw-r--r--lib/chibios/os/common/ports/templates/chtypes.h101
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/crt0.S123
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/crt1.c84
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/ld/LPC2148.ld43
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/ld/rules.ld237
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/mk/startup_lpc214x.mk15
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/rules.mk352
-rw-r--r--lib/chibios/os/common/startup/ARM/compilers/GCC/vectors.S104
-rw-r--r--lib/chibios/os/common/startup/ARM/devices/LPC214x/armparams.h62
-rw-r--r--lib/chibios/os/common/startup/ARM/devices/LPC214x/lpc214x.h523
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/crt0.S190
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/ld/rules.ld11
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/ld/rules_code.ld80
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/ld/rules_data.ld43
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/ld/rules_memory.ld27
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/ld/rules_stacks.ld27
-rw-r--r--lib/chibios/os/common/startup/ARMCMx-SB/compilers/GCC/mk/startup.mk14
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/crt0_v6m.S288
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/crt0_v7m.S350
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/crt1.c219
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/ADUCM360.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/ADUCM410.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F030x4.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F030x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F030x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F031x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F042x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F051x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F070x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F070xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F072xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F091xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F100xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103xB_maplemini_bootloader.ld88
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103xD.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F103xG.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F107xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F207xG.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F302x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F303x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F303xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F303xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F334x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F373xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F401xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F401xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F405xG.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F407xE.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F407xG.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F410x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F410xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F411xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F411xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F412xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F412xG.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F413xH.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F429xI.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F446xC.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F446xE.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F469xI.ld86
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F722xE.ld136
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F746xG.ld136
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F746xG_ETH.ld137
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F746xG_MAX.ld138
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F756xG.ld136
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F76xxG.ld136
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32F76xxI.ld136
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32G071xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32G431xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32G474xE.ld85
-rwxr-xr-xlib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32H743xI.ld139
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32H755xI_M7.ld143
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L011x3.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L011x4.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L031x4.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L031x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L052x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L052x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L053x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L053x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L073x8.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L073xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L073xZ.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L151x6.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L152xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L152xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L432xB.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L432xC.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L452xE.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L476xG.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L496xG.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L4R5xI.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/STM32L4R9xI.ld85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/rules.ld11
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/rules_code.ld80
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/rules_data.ld43
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/rules_memory.ld317
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/ld/rules_stacks.ld40
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/arm-none-eabi.mk23
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/rules.mk291
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_aducm36x.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_aducm41x.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f1xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f2xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f3xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f4xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f7xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32g0xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32g4xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32h7xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32l0xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32l1xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32l4xx.mk18
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/GCC/vectors.S1031
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/IAR/cstartup.s169
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/IAR/vectors.s1006
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/LLVM/mk/clang.mk19
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/LLVM/mk/rules.mk284
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/RVCT/cstartup.s131
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/compilers/RVCT/vectors.s1002
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/ADUCM36x/cmparams.h84
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/ADUCM41x/cmparams.h89
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F0xx/cmparams.h93
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F1xx/cmparams.h90
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F2xx/cmparams.h84
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F3xx/cmparams.h93
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F4xx/cmparams.h100
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32F7xx/cmparams.h93
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32G0xx/cmparams.h85
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32G4xx/cmparams.h91
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32H7xx/cmparams.h94
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32L0xx/cmparams.h88
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32L1xx/cmparams.h97
-rw-r--r--lib/chibios/os/common/startup/ARMCMx/devices/STM32L4xx/cmparams.h104
-rw-r--r--lib/chibios/os/common/startup/SIMIA32/compilers/GCC/rules.mk206
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/CW/crt0.s258
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/CW/unhandled.s1858
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/CW/vectors.h78
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/CW/vectors.s1577
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/crt0.S253
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC560B50.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC560B60.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC560B64.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC560D40.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC560P50.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC563M64.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC564A70.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC564A80.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC56EC74.ld27
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC56EL54_LSM.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC56EL60_LSM.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/SPC56EL70_LSM.ld26
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/rules_z0.ld159
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/rules_z3.ld156
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/ld/rules_z4.ld156
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc560bcxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc560bxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc560dxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc560pxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc563mxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc564axx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc56ecxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/mk/startup_spc56elxx.mk17
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/rules.mk260
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/vectors.S2612
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GCC/vectors.h78
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/crt0.s244
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC560B50.ld165
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC560B60.ld165
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC560B64.ld165
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC560D40.ld165
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC560P50.ld165
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/ld/SPC56EC74.ld159
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc560bcxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc560bxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc560dxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc560pxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc563mxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc564axx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc56ecxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/mk/startup_spc56elxx.mk16
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/rules.mk253
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/vectors.h78
-rw-r--r--lib/chibios/os/common/startup/e200/compilers/GHS/vectors.s2614
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560BCxx/boot.S218
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560BCxx/boot.h114
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560BCxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560BCxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Bxx/boot.S218
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Bxx/boot.h114
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Bxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Bxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/boot.S218
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/boot.h114
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/boot_cw.s200
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/boot_ghs.s216
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Dxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Pxx/boot.S218
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Pxx/boot.h114
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Pxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC560Pxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC563Mxx/boot.S192
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC563Mxx/boot.h119
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC563Mxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC563Mxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC564Axx/boot.S357
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC564Axx/boot.h242
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC564Axx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC564Axx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/boot.S408
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/boot.h248
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/boot_cw.s400
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/boot_ghs.s405
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/intc.h95
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ECxx/ppcparams.h83
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ELxx/boot.S409
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ELxx/boot.h248
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ELxx/intc.h93
-rw-r--r--lib/chibios/os/common/startup/e200/devices/SPC56ELxx/ppcparams.h83
-rw-r--r--lib/chibios/os/ex/devices/Bosch/bmp085.c788
-rw-r--r--lib/chibios/os/ex/devices/Bosch/bmp085.h403
-rw-r--r--lib/chibios/os/ex/devices/Bosch/bmp085.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/hts221.c781
-rw-r--r--lib/chibios/os/ex/devices/ST/hts221.h707
-rw-r--r--lib/chibios/os/ex/devices/ST/hts221.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/l3gd20.c642
-rw-r--r--lib/chibios/os/ex/devices/ST/l3gd20.h725
-rw-r--r--lib/chibios/os/ex/devices/ST/l3gd20.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lis302dl.c554
-rw-r--r--lib/chibios/os/ex/devices/ST/lis302dl.h566
-rw-r--r--lib/chibios/os/ex/devices/ST/lis302dl.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3dsh.c641
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3dsh.h708
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3dsh.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3mdl.c627
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3mdl.h670
-rw-r--r--lib/chibios/os/ex/devices/ST/lis3mdl.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lps22hb.c686
-rw-r--r--lib/chibios/os/ex/devices/ST/lps22hb.h724
-rw-r--r--lib/chibios/os/ex/devices/ST/lps22hb.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lps25h.c696
-rw-r--r--lib/chibios/os/ex/devices/ST/lps25h.h740
-rw-r--r--lib/chibios/os/ex/devices/ST/lps25h.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303agr.c906
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303agr.h921
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303agr.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303dlhc.c1175
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303dlhc.h958
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm303dlhc.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6ds0.c1109
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6ds0.h1034
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6ds0.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6dsl.c1119
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6dsl.h1055
-rw-r--r--lib/chibios/os/ex/devices/ST/lsm6dsl.mk10
-rw-r--r--lib/chibios/os/ex/devices/ST/vl53l0x.h443
-rw-r--r--lib/chibios/os/ex/devices/ST/vl53l0x.mk10
-rw-r--r--lib/chibios/os/ex/dox/ex_accelerometer.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_barometer.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_compass.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_displays.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_gyro.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_hygrometer.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_rangefinder.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_sensor.dox22
-rw-r--r--lib/chibios/os/ex/dox/ex_thermometer.dox22
-rw-r--r--lib/chibios/os/ex/dox/main.dox92
-rw-r--r--lib/chibios/os/ex/include/ex.h107
-rw-r--r--lib/chibios/os/ex/include/ex_accelerometer.h219
-rw-r--r--lib/chibios/os/ex/include/ex_barometer.h218
-rw-r--r--lib/chibios/os/ex/include/ex_compass.h218
-rw-r--r--lib/chibios/os/ex/include/ex_displays.h112
-rw-r--r--lib/chibios/os/ex/include/ex_gyroscope.h238
-rw-r--r--lib/chibios/os/ex/include/ex_hygrometer.h218
-rw-r--r--lib/chibios/os/ex/include/ex_rangefinder.h218
-rw-r--r--lib/chibios/os/ex/include/ex_sensors.h151
-rw-r--r--lib/chibios/os/ex/include/ex_thermometer.h218
-rw-r--r--lib/chibios/os/hal/boards/ADICUP360/board.c154
-rw-r--r--lib/chibios/os/hal/boards/ADICUP360/board.h271
-rw-r--r--lib/chibios/os/hal/boards/ADICUP360/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ADI_EVAL_ADUCM410EBZ/board.c154
-rw-r--r--lib/chibios/os/hal/boards/ADI_EVAL_ADUCM410EBZ/board.h271
-rw-r--r--lib/chibios/os/hal/boards/ADI_EVAL_ADUCM410EBZ/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_LEONARDO/board.c75
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_LEONARDO/board.h127
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_LEONARDO/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MEGA/board.c75
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MEGA/board.h128
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MEGA/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MINI/board.c50
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MINI/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_MINI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_NANO/board.c50
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_NANO/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_NANO/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_UNO/board.c50
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_UNO/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ARDUINO_UNO/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/DIGISPARK_ATTINY_167/board.c72
-rw-r--r--lib/chibios/os/hal/boards/DIGISPARK_ATTINY_167/board.h49
-rw-r--r--lib/chibios/os/hal/boards/DIGISPARK_ATTINY_167/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_11C24/board.c52
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_11C24/board.h81
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_11C24/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1114/board.c58
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1114/board.h96
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1114/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_11U14/board.c65
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_11U14/board.h88
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_11U14/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1343/board.c58
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1343/board.h91
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_BB_1343/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_LPC812/board.c135
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_LPC812/board.h125
-rw-r--r--lib/chibios/os/hal/boards/EA_LPCXPRESSO_LPC812/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/GOLDBULL_STM32_F107VC/board.c98
-rw-r--r--lib/chibios/os/hal/boards/GOLDBULL_STM32_F107VC/board.h254
-rw-r--r--lib/chibios/os/hal/boards/GOLDBULL_STM32_F107VC/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/MAPLEMINI_STM32_F103/board.c49
-rw-r--r--lib/chibios/os/hal/boards/MAPLEMINI_STM32_F103/board.h193
-rw-r--r--lib/chibios/os/hal/boards/MAPLEMINI_STM32_F103/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/MIKROE_CLICKER2_STM32/board.c266
-rw-r--r--lib/chibios/os/hal/boards/MIKROE_CLICKER2_STM32/board.h1359
-rw-r--r--lib/chibios/os/hal/boards/MIKROE_CLICKER2_STM32/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/MIKROE_CLICKER2_STM32/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/MIKROE_CLICKER2_STM32/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/MT-DB-X4/board.c68
-rw-r--r--lib/chibios/os/hal/boards/MT-DB-X4/board.h86
-rw-r--r--lib/chibios/os/hal/boards/MT-DB-X4/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/NGX_BB_LPC11U14/board.c60
-rw-r--r--lib/chibios/os/hal/boards/NGX_BB_LPC11U14/board.h125
-rw-r--r--lib/chibios/os/hal/boards/NGX_BB_LPC11U14/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_CAN/board.c89
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_CAN/board.h99
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_CAN/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_MT_128/board.c92
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_MT_128/board.h124
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_AVR_MT_128/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1227/board.c53
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1227/board.h94
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1227/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1343/board.c51
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1343/board.h104
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P1343/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P2148/board.c94
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P2148/board.h92
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P2148/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P2148/buzzer.c110
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_LPC_P2148/buzzer.h32
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_MSP430_P1611/board.c79
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_MSP430_P1611/board.h80
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_MSP430_P1611/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_EX256/board.c136
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_EX256/board.h101
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_EX256/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_P256/board.c116
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_P256/board.h81
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_SAM7_P256/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_103STK/board.c49
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_103STK/board.h168
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_103STK/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407/board.c266
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407/cfg/board.chcfg342
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407_REV_D/board.c266
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407_REV_D/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407_REV_D/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407_REV_D/cfg/board.chcfg342
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_E407_REV_D/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H103/board.c49
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H103/board.h132
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H103/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H407/board.c266
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H407/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H407/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H407/cfg/board.chcfg342
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_H407/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_LCD/board.c87
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_LCD/board.h196
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_LCD/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P103/board.c64
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P103/board.h169
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P103/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P107/board.c83
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P107/board.h193
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P107/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P407/board.c77
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P407/board.h651
-rw-r--r--lib/chibios/os/hal/boards/OLIMEX_STM32_P407/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/PJRC_TEENSY_2PLUSPLUS/board.c75
-rw-r--r--lib/chibios/os/hal/boards/PJRC_TEENSY_2PLUSPLUS/board.h86
-rw-r--r--lib/chibios/os/hal/boards/PJRC_TEENSY_2PLUSPLUS/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/RAISONANCE_REVA_STM8S/board.c77
-rw-r--r--lib/chibios/os/hal/boards/RAISONANCE_REVA_STM8S/board.h184
-rwxr-xr-xlib/chibios/os/hal/boards/SEEED_ARCH_MAX/board.c266
-rwxr-xr-xlib/chibios/os/hal/boards/SEEED_ARCH_MAX/board.h1380
-rwxr-xr-xlib/chibios/os/hal/boards/SEEED_ARCH_MAX/board.mk9
-rwxr-xr-xlib/chibios/os/hal/boards/SEEED_ARCH_MAX/cfg/board.chcfg342
-rw-r--r--lib/chibios/os/hal/boards/SEEED_ARCH_MAX/cfg/board.fmpp15
-rwxr-xr-xlib/chibios/os/hal/boards/SPARKFUN_PRO_MICRO/board.c75
-rwxr-xr-xlib/chibios/os/hal/boards/SPARKFUN_PRO_MICRO/board.h86
-rwxr-xr-xlib/chibios/os/hal/boards/SPARKFUN_PRO_MICRO/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/STM32F103C8_MINIMAL/board.c49
-rw-r--r--lib/chibios/os/hal/boards/STM32F103C8_MINIMAL/board.h151
-rw-r--r--lib/chibios/os/hal/boards/STM32F103C8_MINIMAL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/STUDIEL_AT91SAM7A3_EK/board.c108
-rw-r--r--lib/chibios/os/hal/boards/STUDIEL_AT91SAM7A3_EK/board.h93
-rw-r--r--lib/chibios/os/hal/boards/ST_EVALKITST7580_1/board.c53
-rw-r--r--lib/chibios/os/hal/boards/ST_EVALKITST7580_1/board.h221
-rw-r--r--lib/chibios/os/hal/boards/ST_EVALKITST7580_1/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560B/board.c66
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560B/board.h73
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560B/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560BC/board.c66
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560BC/board.h68
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560BC/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560D/board.c71
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560D/board.h66
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560D/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560P/board.c68
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560P/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC560P/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC563M/board.c57
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC563M/board.h66
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC563M/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC564A/board.c58
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC564A/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC564A/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EC/board.c73
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EC/board.h71
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EC/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EL/board.c70
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EL/board.h66
-rw-r--r--lib/chibios/os/hal/boards/ST_EVB_SPC56EL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_INEMO_M1_DISCOVERY/board.c51
-rw-r--r--lib/chibios/os/hal/boards/ST_INEMO_M1_DISCOVERY/board.h195
-rw-r--r--lib/chibios/os/hal/boards/ST_INEMO_M1_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F207ZG/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F207ZG/board.h1835
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F207ZG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F207ZG/cfg/board.chcfg1458
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F207ZG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F303ZE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F303ZE/board.h1804
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F303ZE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F303ZE/cfg/board.chcfg1449
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F303ZE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F412ZG/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F412ZG/board.h1844
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F412ZG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F412ZG/cfg/board.chcfg1453
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F412ZG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F413ZH/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F413ZH/board.h1844
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F413ZH/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F413ZH/cfg/board.chcfg1453
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F413ZH/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F429ZI/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F429ZI/board.h1851
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F429ZI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F429ZI/cfg/board.chcfg1458
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F429ZI/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F446ZE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F446ZE/board.h1850
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F446ZE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F446ZE/cfg/board.chcfg1458
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F446ZE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F722ZE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F722ZE/board.h1856
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F722ZE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F722ZE/cfg/board.chcfg1455
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F722ZE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F746ZG/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F746ZG/board.h1862
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F746ZG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F746ZG/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F746ZG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F756ZG/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F756ZG/board.h1862
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F756ZG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F756ZG/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F756ZG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F767ZI/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F767ZI/board.h1862
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F767ZI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F767ZI/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_F767ZI/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H743ZI/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H743ZI/board.h1642
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H743ZI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H743ZI/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H743ZI/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H755ZI/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H755ZI/board.h1642
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H755ZI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H755ZI/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_H755ZI/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L496ZG/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L496ZG/board.h1478
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L496ZG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L496ZG/cfg/board.chcfg420
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L496ZG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L4R5ZI/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L4R5ZI/board.h1644
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L4R5ZI/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L4R5ZI/cfg/board.chcfg1483
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO144_L4R5ZI/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F031K6/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F031K6/board.h953
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F031K6/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F031K6/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F031K6/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F042K6/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F042K6/board.h953
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F042K6/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F042K6/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F042K6/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F303K8/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F303K8/board.h1221
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F303K8/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F303K8/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_F303K8/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L011K4/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L011K4/board.h953
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L011K4/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L011K4/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L011K4/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L031K6/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L031K6/board.h1089
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L031K6/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L031K6/cfg/board.chcfg929
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L031K6/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L432KC/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L432KC/board.h1486
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L432KC/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L432KC/cfg/board.chcfg1320
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO32_L432KC/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F030R8/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F030R8/board.h838
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F030R8/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F030R8/cfg/board.chcfg669
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F030R8/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F070RB/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F070RB/board.h970
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F070RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F070RB/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F070RB/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F072RB/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F072RB/board.h970
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F072RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F072RB/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F072RB/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F091RC/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F091RC/board.h972
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F091RC/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F091RC/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F091RC/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F103RB/board.c49
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F103RB/board.h260
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F103RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F302R8/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F302R8/board.h1239
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F302R8/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F302R8/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F302R8/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F303RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F303RE/board.h1240
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F303RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F303RE/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F303RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F334R8/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F334R8/board.h1240
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F334R8/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F334R8/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F334R8/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F401RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F401RE/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F401RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F401RE/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F401RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F410RB/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F410RB/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F410RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F410RB/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F410RB/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F411RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F411RE/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F411RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F411RE/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F411RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F446RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F446RE/board.h1380
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F446RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F446RE/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_F446RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G071RB/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G071RB/board.h796
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G071RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G071RB/cfg/board.chcfg669
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G071RB/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G431RB/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G431RB/board.h1078
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G431RB/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G431RB/cfg/board.chcfg929
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G431RB/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G474RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G474RE/board.h1078
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G474RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G474RE/cfg/board.chcfg929
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_G474RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L053R8/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L053R8/board.h837
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L053R8/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L053R8/cfg/board.chcfg669
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L053R8/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L073RZ/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L073RZ/board.h971
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L073RZ/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L073RZ/cfg/board.chcfg799
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L073RZ/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L152RE/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L152RE/board.h1237
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L152RE/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L152RE/cfg/board.chcfg1063
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L152RE/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L452RE_P/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L452RE_P/board.h1505
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L452RE_P/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L452RE_P/cfg/board.chcfg1320
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L452RE_P/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L476RG/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L476RG/board.h1505
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L476RG/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L476RG/cfg/board.chcfg1320
-rw-r--r--lib/chibios/os/hal/boards/ST_NUCLEO64_L476RG/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210C_EVAL/board.c54
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210C_EVAL/board.h128
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210C_EVAL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210E_EVAL/board.c67
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210E_EVAL/board.h261
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3210E_EVAL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3220G_EVAL/board.c53
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3220G_EVAL/board.h226
-rw-r--r--lib/chibios/os/hal/boards/ST_STM3220G_EVAL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32373C_EVAL/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32373C_EVAL/board.h1237
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32373C_EVAL/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32373C_EVAL/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32373C_EVAL/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F072B_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F072B_DISCOVERY/board.h941
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F072B_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F072B_DISCOVERY/cfg/board.chcfg703
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F072B_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F0_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F0_DISCOVERY/board.h799
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F0_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F0_DISCOVERY/cfg/board.chcfg669
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F0_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F2_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F2_DISCOVERY/board.h1358
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F2_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F2_DISCOVERY/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F2_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F334_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F334_DISCOVERY/board.h1212
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F334_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F334_DISCOVERY/cfg/board.chcfg1059
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F334_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F3_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F3_DISCOVERY/board.h1234
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F3_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F3_DISCOVERY/cfg/board.chcfg1060
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F3_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F401C_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F401C_DISCOVERY/board.h1365
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F401C_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F401C_DISCOVERY/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F401C_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F429I_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F429I_DISCOVERY/board.h1420
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F429I_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F429I_DISCOVERY/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F429I_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F469I_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F469I_DISCOVERY/board.h1743
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F469I_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F469I_DISCOVERY/cfg/board.chcfg1453
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F469I_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F4_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F4_DISCOVERY/board.h1358
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F4_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F4_DISCOVERY/cfg/board.chcfg1193
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F4_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F746G_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F746G_DISCOVERY/board.h1777
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F746G_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F746G_DISCOVERY/cfg/board.chcfg1467
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F746G_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F769I_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F769I_DISCOVERY/board.h1764
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F769I_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F769I_DISCOVERY/cfg/board.chcfg1467
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32F769I_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32H750XB_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32H750XB_DISCOVERY/board.h1733
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32H750XB_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32H750XB_DISCOVERY/cfg/board.chcfg1459
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32H750XB_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L053_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L053_DISCOVERY/board.h823
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L053_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L053_DISCOVERY/cfg/board.chcfg669
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L053_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L476_DISCOVERY/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L476_DISCOVERY/board.h1542
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L476_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L476_DISCOVERY/cfg/board.chcfg1320
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L476_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L4R9I_DISCOVERY/board.c281
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L4R9I_DISCOVERY/board.h1655
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L4R9I_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L4R9I_DISCOVERY/cfg/board.chcfg1483
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L4R9I_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L_DISCOVERY/board.c266
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L_DISCOVERY/board.h934
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L_DISCOVERY/cfg/board.chcfg803
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32L_DISCOVERY/cfg/board.fmpp15
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32VL_DISCOVERY/board.c49
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32VL_DISCOVERY/board.h143
-rw-r--r--lib/chibios/os/hal/boards/ST_STM32VL_DISCOVERY/board.mk9
-rw-r--r--lib/chibios/os/hal/boards/ST_STM8L_DISCOVERY/board.c61
-rw-r--r--lib/chibios/os/hal/boards/ST_STM8L_DISCOVERY/board.h167
-rw-r--r--lib/chibios/os/hal/boards/ST_STM8S_DISCOVERY/board.c77
-rw-r--r--lib/chibios/os/hal/boards/ST_STM8S_DISCOVERY/board.h121
-rw-r--r--lib/chibios/os/hal/boards/genboard.sh17
-rw-r--r--lib/chibios/os/hal/boards/genboards.sh18
-rw-r--r--lib/chibios/os/hal/boards/readme.txt17
-rw-r--r--lib/chibios/os/hal/boards/simulator/board.c34
-rw-r--r--lib/chibios/os/hal/boards/simulator/board.h30
-rw-r--r--lib/chibios/os/hal/boards/simulator/board.mk9
-rw-r--r--lib/chibios/os/hal/dox/hal.dox32
-rw-r--r--lib/chibios/os/hal/dox/hal_adc.dox141
-rw-r--r--lib/chibios/os/hal/dox/hal_buffers.dox20
-rw-r--r--lib/chibios/os/hal/dox/hal_can.dox87
-rw-r--r--lib/chibios/os/hal/dox/hal_crypto.dox25
-rw-r--r--lib/chibios/os/hal/dox/hal_dac.dox26
-rw-r--r--lib/chibios/os/hal/dox/hal_efl.dox25
-rw-r--r--lib/chibios/os/hal/dox/hal_flash.dox52
-rw-r--r--lib/chibios/os/hal/dox/hal_gpt.dox74
-rw-r--r--lib/chibios/os/hal/dox/hal_i2c.dox98
-rw-r--r--lib/chibios/os/hal/dox/hal_i2s.dox27
-rw-r--r--lib/chibios/os/hal/dox/hal_icu.dox107
-rw-r--r--lib/chibios/os/hal/dox/hal_interfaces.dox60
-rw-r--r--lib/chibios/os/hal/dox/hal_ioblock.dox100
-rw-r--r--lib/chibios/os/hal/dox/hal_mac.dox26
-rw-r--r--lib/chibios/os/hal/dox/hal_mfs.dox30
-rw-r--r--lib/chibios/os/hal/dox/hal_mii.dox23
-rw-r--r--lib/chibios/os/hal/dox/hal_mmc_spi.dox35
-rw-r--r--lib/chibios/os/hal/dox/hal_mmcsd.dox24
-rw-r--r--lib/chibios/os/hal/dox/hal_norflash.dox54
-rw-r--r--lib/chibios/os/hal/dox/hal_objects.dox20
-rw-r--r--lib/chibios/os/hal/dox/hal_pal.dox70
-rw-r--r--lib/chibios/os/hal/dox/hal_peripherals.dox22
-rw-r--r--lib/chibios/os/hal/dox/hal_pwm.dox65
-rw-r--r--lib/chibios/os/hal/dox/hal_queues.dox20
-rw-r--r--lib/chibios/os/hal/dox/hal_rtc.dox26
-rw-r--r--lib/chibios/os/hal/dox/hal_sdc.dox33
-rw-r--r--lib/chibios/os/hal/dox/hal_serial.dox57
-rw-r--r--lib/chibios/os/hal/dox/hal_serial_usb.dox52
-rw-r--r--lib/chibios/os/hal/dox/hal_sio.dox58
-rw-r--r--lib/chibios/os/hal/dox/hal_spi.dox90
-rw-r--r--lib/chibios/os/hal/dox/hal_st.dox24
-rw-r--r--lib/chibios/os/hal/dox/hal_trng.dox25
-rw-r--r--lib/chibios/os/hal/dox/hal_uart.dox117
-rw-r--r--lib/chibios/os/hal/dox/hal_usb.dox180
-rw-r--r--lib/chibios/os/hal/dox/hal_usb_cdc.dox23
-rw-r--r--lib/chibios/os/hal/dox/hal_wdg.dox26
-rwxr-xr-xlib/chibios/os/hal/dox/hal_wspi.dox26
-rw-r--r--lib/chibios/os/hal/dox/main.dox195
-rw-r--r--lib/chibios/os/hal/hal.mk132
-rw-r--r--lib/chibios/os/hal/include/hal.h273
-rw-r--r--lib/chibios/os/hal/include/hal_adc.h416
-rw-r--r--lib/chibios/os/hal/include/hal_buffers.h345
-rw-r--r--lib/chibios/os/hal/include/hal_can.h257
-rw-r--r--lib/chibios/os/hal/include/hal_channels.h315
-rw-r--r--lib/chibios/os/hal/include/hal_crypto.h383
-rw-r--r--lib/chibios/os/hal/include/hal_dac.h379
-rw-r--r--lib/chibios/os/hal/include/hal_efl.h130
-rw-r--r--lib/chibios/os/hal/include/hal_files.h240
-rw-r--r--lib/chibios/os/hal/include/hal_flash.h369
-rw-r--r--lib/chibios/os/hal/include/hal_gpt.h158
-rw-r--r--lib/chibios/os/hal/include/hal_i2c.h166
-rw-r--r--lib/chibios/os/hal/include/hal_i2s.h240
-rw-r--r--lib/chibios/os/hal/include/hal_icu.h240
-rw-r--r--lib/chibios/os/hal/include/hal_ioblock.h269
-rw-r--r--lib/chibios/os/hal/include/hal_mac.h202
-rw-r--r--lib/chibios/os/hal/include/hal_mii.h176
-rw-r--r--lib/chibios/os/hal/include/hal_mmc_spi.h195
-rw-r--r--lib/chibios/os/hal/include/hal_mmcsd.h494
-rw-r--r--lib/chibios/os/hal/include/hal_objects.h86
-rw-r--r--lib/chibios/os/hal/include/hal_pal.h1023
-rw-r--r--lib/chibios/os/hal/include/hal_persistent.h184
-rw-r--r--lib/chibios/os/hal/include/hal_pwm.h308
-rw-r--r--lib/chibios/os/hal/include/hal_queues.h327
-rw-r--r--lib/chibios/os/hal/include/hal_rtc.h204
-rw-r--r--lib/chibios/os/hal/include/hal_sdc.h209
-rw-r--r--lib/chibios/os/hal/include/hal_serial.h312
-rw-r--r--lib/chibios/os/hal/include/hal_serial_usb.h197
-rw-r--r--lib/chibios/os/hal/include/hal_sio.h208
-rw-r--r--lib/chibios/os/hal/include/hal_spi.h532
-rw-r--r--lib/chibios/os/hal/include/hal_st.h90
-rw-r--r--lib/chibios/os/hal/include/hal_streams.h156
-rw-r--r--lib/chibios/os/hal/include/hal_trng.h122
-rw-r--r--lib/chibios/os/hal/include/hal_uart.h425
-rw-r--r--lib/chibios/os/hal/include/hal_usb.h638
-rw-r--r--lib/chibios/os/hal/include/hal_usb_cdc.h136
-rw-r--r--lib/chibios/os/hal/include/hal_wdg.h89
-rw-r--r--lib/chibios/os/hal/include/hal_wspi.h468
-rw-r--r--lib/chibios/os/hal/lib/complex/mfs/hal_mfs.c1482
-rw-r--r--lib/chibios/os/hal/lib/complex/mfs/hal_mfs.h451
-rw-r--r--lib/chibios/os/hal/lib/complex/mfs/hal_mfs.mk9
-rw-r--r--lib/chibios/os/hal/lib/complex/readme.txt6
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/macronix_mx25/hal_flash_device.c666
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/macronix_mx25/hal_flash_device.h441
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/macronix_mx25/hal_flash_device.mk11
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/micron_n25q/hal_flash_device.c586
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/micron_n25q/hal_flash_device.h337
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/devices/micron_n25q/hal_flash_device.mk11
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/hal_serial_nor.c770
-rw-r--r--lib/chibios/os/hal/lib/complex/serial_nor/hal_serial_nor.h212
-rw-r--r--lib/chibios/os/hal/lib/fallback/I2C/hal_i2c_lld.c444
-rw-r--r--lib/chibios/os/hal/lib/fallback/I2C/hal_i2c_lld.h232
-rw-r--r--lib/chibios/os/hal/lib/streams/chprintf.c473
-rw-r--r--lib/chibios/os/hal/lib/streams/chprintf.h50
-rw-r--r--lib/chibios/os/hal/lib/streams/memstreams.c114
-rw-r--r--lib/chibios/os/hal/lib/streams/memstreams.h95
-rw-r--r--lib/chibios/os/hal/lib/streams/nullstreams.c93
-rw-r--r--lib/chibios/os/hal/lib/streams/nullstreams.h86
-rw-r--r--lib/chibios/os/hal/lib/streams/streams.mk10
-rw-r--r--lib/chibios/os/hal/osal/lib/osal_vt.c168
-rw-r--r--lib/chibios/os/hal/osal/lib/osal_vt.h123
-rw-r--r--lib/chibios/os/hal/osal/os-less/ARMCMx/osal.c467
-rw-r--r--lib/chibios/os/hal/osal/os-less/ARMCMx/osal.h754
-rw-r--r--lib/chibios/os/hal/osal/os-less/ARMCMx/osal.mk11
-rw-r--r--lib/chibios/os/hal/osal/os-less/AVR/osal.c467
-rw-r--r--lib/chibios/os/hal/osal/os-less/AVR/osal.h677
-rw-r--r--lib/chibios/os/hal/osal/os-less/AVR/osal.mk9
-rw-r--r--lib/chibios/os/hal/osal/rt-nil/osal.c51
-rw-r--r--lib/chibios/os/hal/osal/rt-nil/osal.h1092
-rw-r--r--lib/chibios/os/hal/osal/rt-nil/osal.mk9
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/aducm_cc.h252
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/aducm_gp.h80
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/aducm_isr.c69
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/aducm_isr.h98
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_lld.c237
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_lld.h491
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_pal_lld.c109
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_pal_lld.h383
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_serial_lld.c358
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_serial_lld.h158
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_spi_lld.c448
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_spi_lld.h231
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_st_lld.c117
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/hal_st_lld.h167
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM36x/platform.mk36
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/aducm_gp.h80
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/aducm_isr.c69
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/aducm_isr.h98
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/hal_lld.c133
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/hal_lld.h436
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/hal_st_lld.c113
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/hal_st_lld.h167
-rw-r--r--lib/chibios/os/hal/ports/ADUCM/ADUCM41x/platform.mk30
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/ATMEGAxx/avr_pins.h159
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/ATMEGAxx/avr_timers.h55
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.c55
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/ATMEGAxx/hal_lld.h72
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/ATMEGAxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/ADCv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/ADCv1/hal_adc_lld.c202
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/ADCv1/hal_adc_lld.h198
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/EXTv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/EXTv1/hal_ext_lld.c376
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/EXTv1/hal_ext_lld.h135
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/GPIOv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.c239
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/GPIOv1/hal_pal_lld.h447
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/I2Cv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/I2Cv1/hal_i2c_lld.c275
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/I2Cv1/hal_i2c_lld.h220
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/SPIv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/SPIv1/hal_spi_lld.c297
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/SPIv1/hal_spi_lld.h270
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/driver.mk19
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_gpt_lld.c402
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_gpt_lld.h221
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_icu_lld.c341
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_icu_lld.h238
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_pwm_lld.c626
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_pwm_lld.h231
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.c247
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/TIMv1/hal_st_lld.h162
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USARTv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.c408
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USARTv1/hal_serial_lld.h158
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USBv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USBv1/hal_usb_lld.c872
-rw-r--r--lib/chibios/os/hal/ports/AVR/MEGA/LLD/USBv1/hal_usb_lld.h411
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/ATTinyxxx/hal_lld.c55
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/ATTinyxxx/hal_lld.h72
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/ATTinyxxx/platform.mk15
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/GPIOv1/driver.mk10
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/GPIOv1/hal_pal_lld.c245
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/GPIOv1/hal_pal_lld.h438
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/TIMv1/driver.mk19
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/TIMv1/hal_st_lld.c254
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/TIMv1/hal_st_lld.h163
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/USARTv1/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/USARTv1/hal_uart_lld.c227
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/USARTv1/hal_uart_lld.h217
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/avr_pins.h159
-rw-r--r--lib/chibios/os/hal/ports/AVR/TINY/LLD/avr_timers.h55
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/ATXMEGAxxxA4U/hal_lld.c63
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/ATXMEGAxxxA4U/hal_lld.h72
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/ATXMEGAxxxA4U/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/CRYPv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/CRYPv1/hal_crypto_lld.c342
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/CRYPv1/hal_crypto_lld.h176
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DACv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DACv1/hal_dac_lld.c260
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DACv1/hal_dac_lld.h268
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DMAv1/driver.mk15
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DMAv1/xmega_dma_lld.c198
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/DMAv1/xmega_dma_lld.h138
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/GPIOv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/GPIOv1/hal_pal_lld.c246
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/GPIOv1/hal_pal_lld.h419
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/SPIv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/SPIv1/hal_spi_lld.c409
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/SPIv1/hal_spi_lld.h309
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/TIMv1/driver.mk19
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/TIMv1/hal_st_lld.c105
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/TIMv1/hal_st_lld.h155
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/USARTv1/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/USARTv1/hal_serial_lld.c816
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/USARTv1/hal_serial_lld.h217
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/USARTv1/hal_uart_lld.c483
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/USARTv1/hal_uart_lld.h448
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/WDGv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/WDGv1/hal_wdg_lld.c268
-rw-r--r--lib/chibios/os/hal/ports/AVR/XMEGA/LLD/WDGv1/hal_wdg_lld.h139
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_lld.c116
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_lld.h83
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_pal_lld.c112
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_pal_lld.h327
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_serial_lld.c343
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_serial_lld.h163
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_spi_lld.c337
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_spi_lld.h142
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_st_lld.c68
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/hal_st_lld.h149
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/platform.mk14
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/vic.c64
-rw-r--r--lib/chibios/os/hal/ports/LPC/LPC214x/vic.h39
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/DSPI_v1/cfg/hal_spi_lld_cfg.c.ftl119
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/DSPI_v1/cfg/hal_spi_lld_cfg.h.ftl87
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/DSPI_v1/hal_spi_lld.c1870
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/DSPI_v1/hal_spi_lld.h848
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/DSPI_v1/spc5_dspi.h460
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/EDMA_v1/spc5_edma.c1397
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/EDMA_v1/spc5_edma.h1005
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/ESCI_v1/hal_serial_lld.c343
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/ESCI_v1/hal_serial_lld.h195
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/LINFlex_v1/hal_serial_lld.c1171
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/LINFlex_v1/hal_serial_lld.h574
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/LINFlex_v1/spc5_linflex.h637
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/SIUL_v1/hal_pal_lld.c180
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/SIUL_v1/hal_pal_lld.h473
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/SIU_v1/hal_pal_lld.c144
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/SIU_v1/hal_pal_lld.h448
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/STM_v1/hal_st_lld.c94
-rw-r--r--lib/chibios/os/hal/ports/SPC5/LLD/STM_v1/hal_st_lld.h200
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/cfg/mcuconf.h.ftl236
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/hal_lld.c276
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/hal_lld.h779
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/spc5_registry.h419
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560BCxx/xpc560bc.h3757
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/cfg/mcuconf.h.ftl330
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/hal_lld.c279
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/hal_lld.h779
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/spc5_registry.h676
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Bxx/xpc560b.h6551
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/cfg/mcuconf.h.ftl191
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/hal_lld.c285
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/hal_lld.h769
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/spc5_registry.h289
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Dxx/xpc560d.h5554
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/cfg/mcuconf.h.ftl452
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/hal_lld.c314
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/hal_lld.h1179
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/spc5_registry.h389
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC560Pxx/xpc560p.h7801
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/cfg/mcuconf.h.ftl209
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/hal_lld.c125
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/hal_lld.h322
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/spc5_registry.h225
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC563Mxx/xpc563m.h4123
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/cfg/mcuconf.h.ftl281
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/hal_lld.c146
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/hal_lld.h294
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/spc5_registry.h314
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC564Axx/xpc564a.h6377
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/cfg/mcuconf.h.ftl369
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/hal_lld.c291
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/hal_lld.h908
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/spc5_registry.h757
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ECxx/xpc56ec.h8475
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/cfg/mcuconf.h.ftl272
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/hal_lld.c306
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/hal_lld.h1000
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/platform.mk19
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/registers.h60
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/spc5_registry.h433
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/typedefs.h38
-rw-r--r--lib/chibios/os/hal/ports/SPC5/SPC56ELxx/xpc56el.h20796
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv1/hal_adc_lld.c485
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv1/hal_adc_lld.h415
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv1/notes.txt16
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv2/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv2/hal_adc_lld.c452
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv2/hal_adc_lld.h486
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv2/notes.txt13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv3/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv3/hal_adc_lld.c1020
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv3/hal_adc_lld.h1026
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv3/notes.txt22
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv4/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv4/hal_adc_lld.c848
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv4/hal_adc_lld.h777
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv4/notes.txt13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv5/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv5/hal_adc_lld.c476
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv5/hal_adc_lld.h401
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/ADCv5/notes.txt16
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/BDMAv1/driver.mk2
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/BDMAv1/notes.txt11
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/BDMAv1/stm32_bdma.c455
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/BDMAv1/stm32_bdma.h441
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CANv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CANv1/hal_can_lld.c1032
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CANv1/hal_can_lld.h471
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CRYPv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CRYPv1/hal_crypto_lld.c1901
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/CRYPv1/hal_crypto_lld.h618
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DACv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DACv1/hal_dac_lld.c769
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DACv1/hal_dac_lld.h662
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/driver.mk2
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/notes.txt26
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/stm32_dma.c816
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/stm32_dma.h554
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/stm32_dma1_ch23.inc78
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv1/stm32_dma1_ch4567.inc90
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv2/driver.mk2
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv2/notes.txt18
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv2/stm32_dma.c675
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/DMAv2/stm32_dma.h682
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/driver.mk2
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/notes.txt16
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti.c218
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti.h257
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti0.inc95
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti0_1.inc96
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti1.inc95
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti10_15.inc101
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti16-35_38.inc130
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti16-40_41.inc119
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti16.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti17.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti18.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti19-21.inc104
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti19.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti2.inc95
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti20.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti20_21.inc104
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti21.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti21_22-29.inc109
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti21_22.inc104
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti22.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti23.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti2_3.inc96
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti3.inc95
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti30_32.inc119
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti33.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti4.inc95
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti4_15.inc108
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/EXTIv1/stm32_exti5_9.inc100
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/hal_can_lld.c566
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/hal_can_lld.h470
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/stm32_fdcan1.inc106
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/stm32_fdcan2.inc106
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/FDCANv1/stm32_fdcan3.inc106
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv1/hal_pal_lld.c300
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv1/hal_pal_lld.h459
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv2/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv2/hal_pal_lld.c271
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv2/hal_pal_lld.h514
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv2/stm32_gpio.h111
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv3/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv3/hal_pal_lld.c249
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv3/hal_pal_lld.h554
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/GPIOv3/stm32_gpio.h113
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv1/driver.mk21
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv1/hal_i2c_lld.c889
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv1/hal_i2c_lld.h513
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv2/driver.mk21
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv2/hal_i2c_lld.c1169
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv2/hal_i2c_lld.h509
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv3/driver.mk21
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv3/hal_i2c_lld.c1316
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/I2Cv3/hal_i2c_lld.h603
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MACv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MACv1/hal_mac_lld.c758
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MACv1/hal_mac_lld.h359
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MDMAv1/driver.mk2
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MDMAv1/notes.txt11
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MDMAv1/stm32_mdma.c355
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/MDMAv1/stm32_mdma.h462
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OCTOSPIv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OCTOSPIv1/hal_wspi_lld.c464
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OCTOSPIv1/hal_wspi_lld.h334
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OTGv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OTGv1/hal_usb_lld.c1265
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OTGv1/hal_usb_lld.h604
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/OTGv1/stm32_otg.h927
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.c382
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv1/hal_wspi_lld.h313
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv2/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv2/hal_wspi_lld.c365
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv2/hal_wspi_lld.h279
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/QUADSPIv2/stm32_quadspi1.inc110
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RNGv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RNGv1/hal_trng_lld.c179
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RNGv1/hal_trng_lld.h141
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RNGv1/notes.txt10
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.c447
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv1/hal_rtc_lld.h152
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv2/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.c843
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv2/hal_rtc_lld.h249
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv3/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv3/hal_rtc_lld.c717
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/RTCv3/hal_rtc_lld.h289
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDIOv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDIOv1/hal_sdc_lld.c876
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDIOv1/hal_sdc_lld.h353
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv1/hal_sdc_lld.c981
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv1/hal_sdc_lld.h400
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv2/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv2/hal_sdc_lld.c865
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv2/hal_sdc_lld.h301
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv2/stm32_sdmmc1.inc110
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SDMMCv2/stm32_sdmmc2.inc110
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv1/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_i2s_lld.c584
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_i2s_lld.h371
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_spi_lld.c679
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv1/hal_spi_lld.h495
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv2/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv2/hal_i2s_lld.c572
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv2/hal_i2s_lld.h371
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.c720
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv2/hal_spi_lld.h552
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv3/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv3/hal_spi_lld.c1142
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/SPIv3/hal_spi_lld.h590
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/driver.mk19
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_gpt_lld.c1153
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_gpt_lld.h980
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_icu_lld.c1135
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_icu_lld.h893
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_pwm_lld.c1302
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_pwm_lld.h1034
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_st_lld.c492
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/hal_st_lld.h701
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim.h566
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim1.inc172
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim14.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim15.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim16.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim17.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim1_15_16_17.inc341
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim1_9_10_11.inc343
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim2.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim20.inc170
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim21.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim22.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim3.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim4.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim5.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim6.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim7.inc133
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim8.inc172
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/stm32_tim8_12_13_14.inc343
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/TIMv1/tim_irq_mapping.txt14
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv1/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv1/hal_serial_lld.c650
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv1/hal_serial_lld.h362
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv1/hal_uart_lld.c1008
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv1/hal_uart_lld.h758
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/driver.mk13
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/hal_serial_lld.c913
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/hal_serial_lld.h534
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/hal_uart_lld.c1075
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/hal_uart_lld.h842
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_lpuart1.inc110
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_uart4.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_uart5.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_uart7.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_uart8.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart1.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart2.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart3.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart3_4_lp1.inc157
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart4_5.inc144
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USARTv2/stm32_usart6.inc121
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USBv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USBv1/hal_usb_lld.c874
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USBv1/hal_usb_lld.h521
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/USBv1/stm32_usb.h266
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/xWDGv1/driver.mk9
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/xWDGv1/hal_wdg_lld.c135
-rw-r--r--lib/chibios/os/hal/ports/STM32/LLD/xWDGv1/hal_wdg_lld.h183
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/hal_lld.c356
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/hal_lld.h1006
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/platform.mk44
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/stm32_isr.c286
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/stm32_isr.h246
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/stm32_rcc.h965
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F0xx/stm32_registry.h2222
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_adc_lld.c235
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_adc_lld.h284
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_efl_lld.c489
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_efl_lld.h120
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_lld.c339
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_lld.h226
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_lld_f100.h575
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_lld_f103.h604
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/hal_lld_f105_f107.h814
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/platform.mk48
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/platform_f105_f107.mk47
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/stm32_isr.c255
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/stm32_isr.h266
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/stm32_rcc.h1230
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F1xx/stm32_registry.h1399
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/hal_adc_lld.c740
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/hal_adc_lld.h639
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/hal_lld.c216
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/hal_lld.h1011
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/platform.mk47
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/stm32_isr.c255
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/stm32_isr.h243
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/stm32_rcc.h1020
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F37x/stm32_registry.h572
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/hal_lld.c226
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/hal_lld.h1205
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/platform.mk44
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/stm32_isr.c382
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/stm32_isr.h400
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/stm32_rcc.h1026
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F3xx/stm32_registry.h3130
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_efl_lld.c668
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_efl_lld.h134
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_lld.c334
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_lld.h278
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_lld_type1.h1996
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/hal_lld_type2.h1212
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/platform.mk49
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/stm32_isr.c255
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/stm32_isr.h275
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/stm32_rcc.h1658
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F4xx/stm32_registry.h3174
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/hal_lld.c311
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/hal_lld.h2181
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/platform.mk49
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/stm32_isr.c176
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/stm32_isr.h340
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/stm32_rcc.h1700
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32F7xx/stm32_registry.h1107
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/hal_efl_lld.c608
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/hal_efl_lld.h144
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/hal_lld.c244
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/hal_lld.h1565
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/platform.mk44
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/stm32_dmamux.h131
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/stm32_isr.c134
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/stm32_isr.h182
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/stm32_rcc.h869
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G0xx/stm32_registry.h449
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/hal_lld.c277
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/hal_lld.h1985
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/platform.mk46
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/stm32_dmamux.h183
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/stm32_isr.c183
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/stm32_isr.h298
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/stm32_rcc.h1366
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32G4xx/stm32_registry.h524
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/hal_lld.c432
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/hal_lld.h3053
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/platform.mk50
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/stm32_dmamux.h206
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/stm32_isr.c198
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/stm32_isr.h384
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/stm32_rcc.h1907
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32H7xx/stm32_registry.h558
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/hal_lld.c261
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/hal_lld.h1234
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/platform.mk45
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/stm32_isr.c125
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/stm32_isr.h182
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/stm32_rcc.h819
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L0xx/stm32_registry.h1220
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/hal_adc_lld.c294
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/hal_adc_lld.h383
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/hal_lld.c237
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/hal_lld.h863
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/platform.dox315
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/platform.mk46
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/stm32_isr.c255
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/stm32_isr.h230
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/stm32_rcc.h795
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L1xx/stm32_registry.h377
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/hal_efl_lld.c631
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/hal_efl_lld.h159
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/hal_lld.c374
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/hal_lld.h2595
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/platform.mk49
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/stm32_dmamux.h161
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/stm32_isr.c165
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/stm32_isr.h290
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/stm32_rcc.h1358
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx+/stm32_registry.h282
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/hal_efl_lld.c542
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/hal_efl_lld.h116
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/hal_lld.c392
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/hal_lld.h2349
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/platform.mk49
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/platform_l432.mk48
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/stm32_isr.c159
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/stm32_isr.h289
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/stm32_rcc.h1279
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L4xx/stm32_registry.h1349
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/hal_lld.h2680
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/platform.mk34
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_dmamux.h162
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.c192
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_isr.h299
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_rcc.h1254
-rw-r--r--lib/chibios/os/hal/ports/STM32/STM32L5xx/stm32_registry.h277
-rw-r--r--lib/chibios/os/hal/ports/STM32/todo.txt4
-rw-r--r--lib/chibios/os/hal/ports/common/ARMCMx/cache.h160
-rw-r--r--lib/chibios/os/hal/ports/common/ARMCMx/mpu_v7m.h228
-rw-r--r--lib/chibios/os/hal/ports/common/ARMCMx/nvic.c114
-rw-r--r--lib/chibios/os/hal/ports/common/ARMCMx/nvic.h88
-rw-r--r--lib/chibios/os/hal/ports/simulator/console.c145
-rw-r--r--lib/chibios/os/hal/ports/simulator/console.h62
-rw-r--r--lib/chibios/os/hal/ports/simulator/hal_pal_lld.c95
-rw-r--r--lib/chibios/os/hal/ports/simulator/hal_pal_lld.h267
-rw-r--r--lib/chibios/os/hal/ports/simulator/hal_st_lld.c67
-rw-r--r--lib/chibios/os/hal/ports/simulator/hal_st_lld.h141
-rwxr-xr-xlib/chibios/os/hal/ports/simulator/posix/hal_lld.c103
-rwxr-xr-xlib/chibios/os/hal/ports/simulator/posix/hal_lld.h79
-rwxr-xr-xlib/chibios/os/hal/ports/simulator/posix/hal_serial_lld.c298
-rwxr-xr-xlib/chibios/os/hal/ports/simulator/posix/hal_serial_lld.h143
-rwxr-xr-xlib/chibios/os/hal/ports/simulator/posix/platform.mk14
-rw-r--r--lib/chibios/os/hal/ports/simulator/win32/hal_lld.c110
-rw-r--r--lib/chibios/os/hal/ports/simulator/win32/hal_lld.h67
-rw-r--r--lib/chibios/os/hal/ports/simulator/win32/hal_serial_lld.c282
-rw-r--r--lib/chibios/os/hal/ports/simulator/win32/hal_serial_lld.h143
-rw-r--r--lib/chibios/os/hal/ports/simulator/win32/platform.mk14
-rw-r--r--lib/chibios/os/hal/src/hal.c157
-rw-r--r--lib/chibios/os/hal/src/hal_adc.c324
-rw-r--r--lib/chibios/os/hal/src/hal_buffers.c847
-rw-r--r--lib/chibios/os/hal/src/hal_can.c394
-rw-r--r--lib/chibios/os/hal/src/hal_crypto.c1736
-rw-r--r--lib/chibios/os/hal/src/hal_dac.c350
-rw-r--r--lib/chibios/os/hal/src/hal_efl.c134
-rw-r--r--lib/chibios/os/hal/src/hal_flash.c125
-rw-r--r--lib/chibios/os/hal/src/hal_gpt.c266
-rw-r--r--lib/chibios/os/hal/src/hal_i2c.c287
-rw-r--r--lib/chibios/os/hal/src/hal_i2s.c159
-rw-r--r--lib/chibios/os/hal/src/hal_icu.c231
-rw-r--r--lib/chibios/os/hal/src/hal_mac.c264
-rw-r--r--lib/chibios/os/hal/src/hal_mmc_spi.c920
-rw-r--r--lib/chibios/os/hal/src/hal_mmcsd.c331
-rw-r--r--lib/chibios/os/hal/src/hal_pal.c257
-rw-r--r--lib/chibios/os/hal/src/hal_pwm.c313
-rw-r--r--lib/chibios/os/hal/src/hal_queues.c699
-rw-r--r--lib/chibios/os/hal/src/hal_rtc.c335
-rw-r--r--lib/chibios/os/hal/src/hal_sdc.c999
-rw-r--r--lib/chibios/os/hal/src/hal_serial.c349
-rw-r--r--lib/chibios/os/hal/src/hal_serial_usb.c553
-rw-r--r--lib/chibios/os/hal/src/hal_sio.c126
-rw-r--r--lib/chibios/os/hal/src/hal_spi.c469
-rw-r--r--lib/chibios/os/hal/src/hal_st.c262
-rw-r--r--lib/chibios/os/hal/src/hal_trng.c151
-rw-r--r--lib/chibios/os/hal/src/hal_uart.c524
-rw-r--r--lib/chibios/os/hal/src/hal_usb.c1002
-rw-r--r--lib/chibios/os/hal/src/hal_wdg.c124
-rw-r--r--lib/chibios/os/hal/src/hal_wspi.c410
-rw-r--r--lib/chibios/os/hal/templates/board/board.c24
-rw-r--r--lib/chibios/os/hal/templates/board/board.h40
-rw-r--r--lib/chibios/os/hal/templates/board/board.mk5
-rw-r--r--lib/chibios/os/hal/templates/hal_adc_lld.c141
-rw-r--r--lib/chibios/os/hal/templates/hal_adc_lld.h130
-rw-r--r--lib/chibios/os/hal/templates/hal_can_lld.c257
-rw-r--r--lib/chibios/os/hal/templates/hal_can_lld.h275
-rw-r--r--lib/chibios/os/hal/templates/hal_crypto_lld.c1346
-rw-r--r--lib/chibios/os/hal/templates/hal_crypto_lld.h376
-rw-r--r--lib/chibios/os/hal/templates/hal_dac_lld.c167
-rw-r--r--lib/chibios/os/hal/templates/hal_dac_lld.h137
-rw-r--r--lib/chibios/os/hal/templates/hal_efl_lld.c365
-rw-r--r--lib/chibios/os/hal/templates/hal_efl_lld.h110
-rw-r--r--lib/chibios/os/hal/templates/hal_gpt_lld.c163
-rw-r--r--lib/chibios/os/hal/templates/hal_gpt_lld.h154
-rw-r--r--lib/chibios/os/hal/templates/hal_i2c_lld.c187
-rw-r--r--lib/chibios/os/hal/templates/hal_i2c_lld.h152
-rw-r--r--lib/chibios/os/hal/templates/hal_i2s_lld.c137
-rw-r--r--lib/chibios/os/hal/templates/hal_i2s_lld.h102
-rw-r--r--lib/chibios/os/hal/templates/hal_icu_lld.c187
-rw-r--r--lib/chibios/os/hal/templates/hal_icu_lld.h193
-rw-r--r--lib/chibios/os/hal/templates/hal_lld.c60
-rw-r--r--lib/chibios/os/hal/templates/hal_lld.h82
-rw-r--r--lib/chibios/os/hal/templates/hal_mac_lld.c313
-rw-r--r--lib/chibios/os/hal/templates/hal_mac_lld.h181
-rw-r--r--lib/chibios/os/hal/templates/hal_pal_lld.c85
-rw-r--r--lib/chibios/os/hal/templates/hal_pal_lld.h444
-rw-r--r--lib/chibios/os/hal/templates/hal_pwm_lld.c220
-rw-r--r--lib/chibios/os/hal/templates/hal_pwm_lld.h215
-rw-r--r--lib/chibios/os/hal/templates/hal_rtc_lld.c153
-rw-r--r--lib/chibios/os/hal/templates/hal_rtc_lld.h149
-rw-r--r--lib/chibios/os/hal/templates/hal_sdc_lld.c328
-rw-r--r--lib/chibios/os/hal/templates/hal_sdc_lld.h180
-rw-r--r--lib/chibios/os/hal/templates/hal_serial_lld.c126
-rw-r--r--lib/chibios/os/hal/templates/hal_serial_lld.h119
-rw-r--r--lib/chibios/os/hal/templates/hal_sio_lld.c140
-rw-r--r--lib/chibios/os/hal/templates/hal_sio_lld.h205
-rw-r--r--lib/chibios/os/hal/templates/hal_spi_lld.c263
-rw-r--r--lib/chibios/os/hal/templates/hal_spi_lld.h120
-rw-r--r--lib/chibios/os/hal/templates/hal_st_lld.c67
-rw-r--r--lib/chibios/os/hal/templates/hal_st_lld.h141
-rw-r--r--lib/chibios/os/hal/templates/hal_trng_lld.c140
-rw-r--r--lib/chibios/os/hal/templates/hal_trng_lld.h101
-rw-r--r--lib/chibios/os/hal/templates/hal_uart_lld.c191
-rw-r--r--lib/chibios/os/hal/templates/hal_uart_lld.h202
-rw-r--r--lib/chibios/os/hal/templates/hal_usb_lld.c390
-rw-r--r--lib/chibios/os/hal/templates/hal_usb_lld.h383
-rw-r--r--lib/chibios/os/hal/templates/hal_wdg_lld.c104
-rw-r--r--lib/chibios/os/hal/templates/hal_wdg_lld.h113
-rw-r--r--lib/chibios/os/hal/templates/hal_wspi_lld.c208
-rw-r--r--lib/chibios/os/hal/templates/hal_wspi_lld.h119
-rw-r--r--lib/chibios/os/hal/templates/halconf.h531
-rw-r--r--lib/chibios/os/hal/templates/mcuconf.h30
-rw-r--r--lib/chibios/os/hal/templates/osal/osal.c411
-rw-r--r--lib/chibios/os/hal/templates/osal/osal.h690
-rw-r--r--lib/chibios/os/hal/templates/osal/osal.mk9
-rw-r--r--lib/chibios/os/hal/templates/platform.mk111
-rw-r--r--lib/chibios/os/license/chcustomer.h103
-rw-r--r--lib/chibios/os/license/chlicense.h200
-rw-r--r--lib/chibios/os/license/chversion.h103
-rw-r--r--lib/chibios/os/license/license.dox37
-rw-r--r--lib/chibios/os/license/license.mk9
-rw-r--r--lib/chibios/os/nil/dox/nil.dox65
-rw-r--r--lib/chibios/os/nil/include/ch.h1426
-rw-r--r--lib/chibios/os/nil/include/chevt.h301
-rw-r--r--lib/chibios/os/nil/include/chmsg.h123
-rw-r--r--lib/chibios/os/nil/include/chsem.h180
-rw-r--r--lib/chibios/os/nil/nil.mk42
-rw-r--r--lib/chibios/os/nil/src/ch.c1080
-rw-r--r--lib/chibios/os/nil/src/chevt.c478
-rw-r--r--lib/chibios/os/nil/src/chmsg.c201
-rw-r--r--lib/chibios/os/nil/src/chsem.c224
-rw-r--r--lib/chibios/os/nil/templates/chconf.h482
-rw-r--r--lib/chibios/os/oslib/dox/lib.dox100
-rw-r--r--lib/chibios/os/oslib/include/chbsem.h311
-rw-r--r--lib/chibios/os/oslib/include/chdelegates.h208
-rw-r--r--lib/chibios/os/oslib/include/chfactory.h523
-rw-r--r--lib/chibios/os/oslib/include/chjobs.h397
-rw-r--r--lib/chibios/os/oslib/include/chlib.h264
-rw-r--r--lib/chibios/os/oslib/include/chmboxes.h209
-rw-r--r--lib/chibios/os/oslib/include/chmemcore.h211
-rw-r--r--lib/chibios/os/oslib/include/chmemheaps.h178
-rw-r--r--lib/chibios/os/oslib/include/chmempools.h385
-rw-r--r--lib/chibios/os/oslib/include/chobjcaches.h304
-rw-r--r--lib/chibios/os/oslib/include/chobjfifos.h430
-rw-r--r--lib/chibios/os/oslib/include/chpipes.h208
-rw-r--r--lib/chibios/os/oslib/oslib.mk57
-rw-r--r--lib/chibios/os/oslib/readme.txt2
-rw-r--r--lib/chibios/os/oslib/src/chdelegates.c239
-rw-r--r--lib/chibios/os/oslib/src/chfactory.c829
-rw-r--r--lib/chibios/os/oslib/src/chmboxes.c522
-rw-r--r--lib/chibios/os/oslib/src/chmemcore.c227
-rw-r--r--lib/chibios/os/oslib/src/chmemheaps.c399
-rw-r--r--lib/chibios/os/oslib/src/chmempools.c336
-rw-r--r--lib/chibios/os/oslib/src/chobjcaches.c491
-rw-r--r--lib/chibios/os/oslib/src/chpipes.c388
-rw-r--r--lib/chibios/os/readme.txt29
-rw-r--r--lib/chibios/os/rt/dox/rt.dox157
-rw-r--r--lib/chibios/os/rt/include/ch.h137
-rw-r--r--lib/chibios/os/rt/include/chalign.h121
-rw-r--r--lib/chibios/os/rt/include/chchecks.h263
-rw-r--r--lib/chibios/os/rt/include/chcond.h116
-rw-r--r--lib/chibios/os/rt/include/chdebug.h169
-rw-r--r--lib/chibios/os/rt/include/chdynamic.h99
-rw-r--r--lib/chibios/os/rt/include/chevents.h291
-rw-r--r--lib/chibios/os/rt/include/chlists.h406
-rw-r--r--lib/chibios/os/rt/include/chmsg.h212
-rw-r--r--lib/chibios/os/rt/include/chmtx.h168
-rw-r--r--lib/chibios/os/rt/include/chregistry.h185
-rw-r--r--lib/chibios/os/rt/include/chrestrictions.h118
-rw-r--r--lib/chibios/os/rt/include/chschd.h600
-rw-r--r--lib/chibios/os/rt/include/chsem.h200
-rw-r--r--lib/chibios/os/rt/include/chstats.h105
-rw-r--r--lib/chibios/os/rt/include/chsys.h471
-rw-r--r--lib/chibios/os/rt/include/chsystypes.h130
-rw-r--r--lib/chibios/os/rt/include/chthreads.h443
-rw-r--r--lib/chibios/os/rt/include/chtime.h492
-rw-r--r--lib/chibios/os/rt/include/chtm.h109
-rw-r--r--lib/chibios/os/rt/include/chtrace.h256
-rw-r--r--lib/chibios/os/rt/include/chvt.h364
-rw-r--r--lib/chibios/os/rt/rt.mk75
-rw-r--r--lib/chibios/os/rt/src/chcond.c321
-rw-r--r--lib/chibios/os/rt/src/chdebug.c257
-rw-r--r--lib/chibios/os/rt/src/chdynamic.c185
-rw-r--r--lib/chibios/os/rt/src/chevents.c603
-rw-r--r--lib/chibios/os/rt/src/chmsg.c221
-rw-r--r--lib/chibios/os/rt/src/chmtx.c540
-rw-r--r--lib/chibios/os/rt/src/chregistry.c268
-rw-r--r--lib/chibios/os/rt/src/chschd.c493
-rw-r--r--lib/chibios/os/rt/src/chsem.c405
-rw-r--r--lib/chibios/os/rt/src/chstats.c126
-rw-r--r--lib/chibios/os/rt/src/chsys.c445
-rw-r--r--lib/chibios/os/rt/src/chthreads.c907
-rw-r--r--lib/chibios/os/rt/src/chtm.c168
-rw-r--r--lib/chibios/os/rt/src/chtrace.c265
-rw-r--r--lib/chibios/os/rt/src/chvt.c674
-rw-r--r--lib/chibios/os/rt/templates/chconf.h759
-rw-r--r--lib/chibios/os/rt/templates/meta/module.c80
-rw-r--r--lib/chibios/os/rt/templates/meta/module.h76
-rw-r--r--lib/chibios/os/sb/common/sberr.h97
-rw-r--r--lib/chibios/os/sb/host/compilers/GCC/sbexc.S170
-rw-r--r--lib/chibios/os/sb/host/compilers/GCC/sbhost.mk14
-rw-r--r--lib/chibios/os/sb/host/sb.h151
-rw-r--r--lib/chibios/os/sb/host/sbapi.c1067
-rw-r--r--lib/chibios/os/sb/host/sbapi.h127
-rw-r--r--lib/chibios/os/sb/host/sbhost.c146
-rw-r--r--lib/chibios/os/sb/host/sbhost.h265
-rw-r--r--lib/chibios/os/sb/host/sbposix.c136
-rw-r--r--lib/chibios/os/sb/host/sbposix.h73
-rw-r--r--lib/chibios/os/sb/user/sbuser.c74
-rw-r--r--lib/chibios/os/sb/user/sbuser.h669
-rw-r--r--lib/chibios/os/sb/user/sbuser.mk12
-rw-r--r--lib/chibios/os/sb/various/syscalls.c142
-rw-r--r--lib/chibios/os/various/cpp_wrappers/ch.cpp45
-rw-r--r--lib/chibios/os/various/cpp_wrappers/ch.hpp3133
-rw-r--r--lib/chibios/os/various/cpp_wrappers/chcpp.mk9
-rw-r--r--lib/chibios/os/various/cpp_wrappers/syscalls_cpp.cpp41
-rw-r--r--lib/chibios/os/various/cpp_wrappers/syscalls_cpp.hpp13
-rw-r--r--lib/chibios/os/various/evtimer.c85
-rw-r--r--lib/chibios/os/various/evtimer.h94
-rw-r--r--lib/chibios/os/various/fatfs_bindings/fatfs.mk11
-rw-r--r--lib/chibios/os/various/fatfs_bindings/fatfs_diskio.c267
-rw-r--r--lib/chibios/os/various/fatfs_bindings/fatfs_syscall.c84
-rw-r--r--lib/chibios/os/various/fatfs_bindings/readme.txt12
-rw-r--r--lib/chibios/os/various/lwip_bindings/arch/cc.h89
-rw-r--r--lib/chibios/os/various/lwip_bindings/arch/perf.h57
-rw-r--r--lib/chibios/os/various/lwip_bindings/arch/sys_arch.c239
-rw-r--r--lib/chibios/os/various/lwip_bindings/arch/sys_arch.h68
-rw-r--r--lib/chibios/os/various/lwip_bindings/lwip.mk23
-rw-r--r--lib/chibios/os/various/lwip_bindings/lwipthread.c530
-rw-r--r--lib/chibios/os/various/lwip_bindings/lwipthread.h275
-rw-r--r--lib/chibios/os/various/lwip_bindings/readme.txt6
-rw-r--r--lib/chibios/os/various/lwip_bindings/static_lwipopts.h42
-rw-r--r--lib/chibios/os/various/shell/shell.c604
-rw-r--r--lib/chibios/os/various/shell/shell.h235
-rw-r--r--lib/chibios/os/various/shell/shell.mk9
-rw-r--r--lib/chibios/os/various/shell/shell_cmd.c248
-rw-r--r--lib/chibios/os/various/shell/shell_cmd.h114
-rw-r--r--lib/chibios/os/various/syscalls.c197
-rw-r--r--lib/chibios/os/various/various.dox91
-rw-r--r--lib/chibios/os/various/wolfssl_bindings/hwrng.c80
-rw-r--r--lib/chibios/os/various/wolfssl_bindings/user_settings.h86
-rw-r--r--lib/chibios/os/various/wolfssl_bindings/wolfssl.mk98
-rw-r--r--lib/chibios/os/various/wolfssl_bindings/wolfssl_chibios.c252
-rw-r--r--lib/chibios/os/various/wolfssl_bindings/wolfssl_chibios.h70
1950 files changed, 2949354 insertions, 0 deletions
diff --git a/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.c b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.c
new file mode 100644
index 000000000..9bd63da8f
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.c
@@ -0,0 +1,558 @@
1/*
2 ChibiOS - Copyright (C) 2006,2007,2008,2009,2010,2011,2012,2013,2014,
3 2015,2016,2017,2018,2019,2020,2021 Giovanni Di Sirio.
4
5 This file is part of ChibiOS.
6
7 ChibiOS is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation version 3 of the License.
10
11 ChibiOS is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19/*
20 Concepts and parts of this file have been contributed by Andre R.
21 */
22
23/**
24 * @file cmsis_os.c
25 * @brief CMSIS RTOS module code.
26 *
27 * @addtogroup CMSIS_OS
28 * @{
29 */
30
31#include "cmsis_os.h"
32#include <string.h>
33
34/*===========================================================================*/
35/* Module local definitions. */
36/*===========================================================================*/
37
38/*===========================================================================*/
39/* Module exported variables. */
40/*===========================================================================*/
41
42int32_t cmsis_os_started;
43
44/*===========================================================================*/
45/* Module local types. */
46/*===========================================================================*/
47
48/*===========================================================================*/
49/* Module local variables. */
50/*===========================================================================*/
51
52static memory_pool_t sempool;
53static semaphore_t semaphores[CMSIS_CFG_NUM_SEMAPHORES];
54
55static memory_pool_t timpool;
56static struct os_timer_cb timers[CMSIS_CFG_NUM_TIMERS];
57
58/*===========================================================================*/
59/* Module local functions. */
60/*===========================================================================*/
61
62/**
63 * @brief Virtual timers common callback.
64 */
65static void timer_cb(void const *arg) {
66
67 osTimerId timer_id = (osTimerId)arg;
68 timer_id->ptimer(timer_id->argument);
69 if (timer_id->type == osTimerPeriodic) {
70 chSysLockFromISR();
71 chVTDoSetI(&timer_id->vt, TIME_MS2I(timer_id->millisec),
72 (vtfunc_t)timer_cb, timer_id);
73 chSysUnlockFromISR();
74 }
75}
76
77/*===========================================================================*/
78/* Module exported functions. */
79/*===========================================================================*/
80
81/**
82 * @brief Kernel initialization.
83 */
84osStatus osKernelInitialize(void) {
85
86 cmsis_os_started = 0;
87
88 chSysInit();
89 chThdSetPriority(HIGHPRIO);
90
91 chPoolObjectInit(&sempool, sizeof(semaphore_t), chCoreAllocAlignedI);
92 chPoolLoadArray(&sempool, semaphores, CMSIS_CFG_NUM_SEMAPHORES);
93
94 chPoolObjectInit(&timpool, sizeof(struct os_timer_cb), chCoreAllocAlignedI);
95 chPoolLoadArray(&timpool, timers, CMSIS_CFG_NUM_TIMERS);
96
97 return osOK;
98}
99
100/**
101 * @brief Kernel start.
102 */
103osStatus osKernelStart(void) {
104
105 cmsis_os_started = 1;
106
107 chThdSetPriority(NORMALPRIO);
108
109 return osOK;
110}
111
112/**
113 * @brief Creates a thread.
114 */
115osThreadId osThreadCreate(const osThreadDef_t *thread_def, void *argument) {
116 size_t size;
117
118 size = thread_def->stacksize == 0 ? CMSIS_CFG_DEFAULT_STACK :
119 thread_def->stacksize;
120 return (osThreadId)chThdCreateFromHeap(0,
121 THD_WORKING_AREA_SIZE(size),
122 thread_def->name,
123 NORMALPRIO+thread_def->tpriority,
124 (tfunc_t)thread_def->pthread,
125 argument);
126}
127
128/**
129 * @brief Thread termination.
130 * @note The thread is not really terminated but asked to terminate which
131 * is not compliant.
132 */
133osStatus osThreadTerminate(osThreadId thread_id) {
134
135 if (thread_id == osThreadGetId()) {
136 /* Note, no memory will be recovered unless a cleaner thread is
137 implemented using the registry.*/
138 chThdExit(0);
139 }
140 chThdTerminate(thread_id);
141 chThdWait((thread_t *)thread_id);
142
143 return osOK;
144}
145
146/**
147 * @brief Change thread priority.
148 * @note This can interfere with the priority inheritance mechanism.
149 */
150osStatus osThreadSetPriority(osThreadId thread_id, osPriority newprio) {
151 thread_t * tp = (thread_t *)thread_id;
152
153 chSysLock();
154
155 /* Changing priority.*/
156#if CH_CFG_USE_MUTEXES
157 if ((tp->hdr.pqueue.prio == tp->realprio) ||
158 ((tprio_t)newprio > tp->hdr.pqueue.prio))
159 tp->hdr.pqueue.prio = (tprio_t)newprio;
160 tp->realprio = (tprio_t)newprio;
161#else
162 tp->hdr.pqueue.prio = (tprio_t)newprio;
163#endif
164
165 /* The following states need priority queues reordering.*/
166 switch (tp->state) {
167#if CH_CFG_USE_MUTEXES | \
168 CH_CFG_USE_CONDVARS | \
169 (CH_CFG_USE_SEMAPHORES && CH_CFG_USE_SEMAPHORES_PRIORITY) | \
170 (CH_CFG_USE_MESSAGES && CH_CFG_USE_MESSAGES_PRIORITY)
171#if CH_CFG_USE_MUTEXES
172 case CH_STATE_WTMTX:
173#endif
174#if CH_CFG_USE_CONDVARS
175 case CH_STATE_WTCOND:
176#endif
177#if CH_CFG_USE_SEMAPHORES && CH_CFG_USE_SEMAPHORES_PRIORITY
178 case CH_STATE_WTSEM:
179#endif
180#if CH_CFG_USE_MESSAGES && CH_CFG_USE_MESSAGES_PRIORITY
181 case CH_STATE_SNDMSGQ:
182#endif
183 /* Re-enqueues tp with its new priority on the queue.*/
184 ch_sch_prio_insert(ch_queue_dequeue(&tp->hdr.queue),
185 (ch_queue_t *)tp->u.wtobjp);
186 break;
187#endif
188 case CH_STATE_READY:
189#if CH_DBG_ENABLE_ASSERTS
190 /* Prevents an assertion in chSchReadyI().*/
191 tp->state = CH_STATE_CURRENT;
192#endif
193 /* Re-enqueues tp with its new priority on the ready list.*/
194 chSchReadyI((thread_t *)ch_queue_dequeue(&tp->hdr.queue));
195 break;
196 }
197
198 /* Rescheduling.*/
199 chSchRescheduleS();
200
201 chSysUnlock();
202
203 return osOK;
204}
205
206/**
207 * @brief Create a timer.
208 */
209osTimerId osTimerCreate(const osTimerDef_t *timer_def,
210 os_timer_type type,
211 void *argument) {
212
213 osTimerId timer = chPoolAlloc(&timpool);
214 chVTObjectInit(&timer->vt);
215 timer->ptimer = timer_def->ptimer;
216 timer->type = type;
217 timer->argument = argument;
218 return timer;
219}
220
221/**
222 * @brief Start a timer.
223 */
224osStatus osTimerStart(osTimerId timer_id, uint32_t millisec) {
225
226 if ((millisec == 0) || (millisec == osWaitForever))
227 return osErrorValue;
228
229 timer_id->millisec = millisec;
230 chVTSet(&timer_id->vt, TIME_MS2I(millisec), (vtfunc_t)timer_cb, timer_id);
231
232 return osOK;
233}
234
235/**
236 * @brief Stop a timer.
237 */
238osStatus osTimerStop(osTimerId timer_id) {
239
240 chVTReset(&timer_id->vt);
241
242 return osOK;
243}
244
245/**
246 * @brief Delete a timer.
247 */
248osStatus osTimerDelete(osTimerId timer_id) {
249
250 chVTReset(&timer_id->vt);
251 chPoolFree(&timpool, (void *)timer_id);
252
253 return osOK;
254}
255
256/**
257 * @brief Send signals.
258 */
259int32_t osSignalSet(osThreadId thread_id, int32_t signals) {
260 int32_t oldsignals;
261
262 syssts_t sts = chSysGetStatusAndLockX();
263 oldsignals = (int32_t)thread_id->epending;
264 chEvtSignalI((thread_t *)thread_id, (eventmask_t)signals);
265 chSysRestoreStatusX(sts);
266
267 return oldsignals;
268}
269
270/**
271 * @brief Clear signals.
272 */
273int32_t osSignalClear(osThreadId thread_id, int32_t signals) {
274 eventmask_t m;
275
276 chSysLock();
277
278 m = thread_id->epending & (eventmask_t)signals;
279 thread_id->epending &= ~(eventmask_t)signals;
280
281 chSysUnlock();
282
283 return (int32_t)m;
284}
285
286/**
287 * @brief Wait for signals.
288 */
289osEvent osSignalWait(int32_t signals, uint32_t millisec) {
290 osEvent event;
291 sysinterval_t timeout = (millisec == osWaitForever ?
292 TIME_INFINITE : (millisec == 0 ? TIME_IMMEDIATE :
293 TIME_MS2I(millisec)));
294
295 if (signals == 0)
296 event.value.signals = (uint32_t)chEvtWaitAnyTimeout(ALL_EVENTS, timeout);
297 else
298 event.value.signals = (uint32_t)chEvtWaitAllTimeout((eventmask_t)signals,
299 timeout);
300
301 /* Type of event.*/
302 if (event.value.signals == 0)
303 event.status = osEventTimeout;
304 else
305 event.status = osEventSignal;
306
307 return event;
308}
309
310/**
311 * @brief Create a semaphore.
312 * @note @p semaphore_def is not used.
313 * @note Can involve memory allocation.
314 */
315osSemaphoreId osSemaphoreCreate(const osSemaphoreDef_t *semaphore_def,
316 int32_t count) {
317
318 (void)semaphore_def;
319
320 semaphore_t *sem = chPoolAlloc(&sempool);
321 chSemObjectInit(sem, (cnt_t)count);
322 return sem;
323}
324
325/**
326 * @brief Wait on a semaphore.
327 */
328int32_t osSemaphoreWait(osSemaphoreId semaphore_id, uint32_t millisec) {
329 sysinterval_t timeout = (millisec == osWaitForever ?
330 TIME_INFINITE : (millisec == 0 ? TIME_IMMEDIATE :
331 TIME_MS2I(millisec)));
332
333 msg_t msg = chSemWaitTimeout((semaphore_t *)semaphore_id, timeout);
334 switch (msg) {
335 case MSG_OK:
336 return osOK;
337 case MSG_TIMEOUT:
338 return osErrorTimeoutResource;
339 }
340 return osErrorResource;
341}
342
343/**
344 * @brief Release a semaphore.
345 */
346osStatus osSemaphoreRelease(osSemaphoreId semaphore_id) {
347
348 syssts_t sts = chSysGetStatusAndLockX();
349 chSemSignalI((semaphore_t *)semaphore_id);
350 chSysRestoreStatusX(sts);
351
352 return osOK;
353}
354
355/**
356 * @brief Deletes a semaphore.
357 * @note After deletion there could be references in the system to a
358 * non-existent semaphore.
359 */
360osStatus osSemaphoreDelete(osSemaphoreId semaphore_id) {
361
362 chSemReset((semaphore_t *)semaphore_id, 0);
363 chPoolFree(&sempool, (void *)semaphore_id);
364
365 return osOK;
366}
367
368/**
369 * @brief Create a mutex.
370 * @note @p mutex_def is not used.
371 * @note Can involve memory allocation.
372 */
373osMutexId osMutexCreate(const osMutexDef_t *mutex_def) {
374
375 (void)mutex_def;
376
377 binary_semaphore_t *mtx = chPoolAlloc(&sempool);
378 chBSemObjectInit(mtx, false);
379 return mtx;
380}
381
382/**
383 * @brief Wait on a mutex.
384 */
385osStatus osMutexWait(osMutexId mutex_id, uint32_t millisec) {
386 sysinterval_t timeout = (millisec == osWaitForever ?
387 TIME_INFINITE : (millisec == 0 ? TIME_IMMEDIATE :
388 TIME_MS2I(millisec)));
389
390 msg_t msg = chBSemWaitTimeout((binary_semaphore_t *)mutex_id, timeout);
391 switch (msg) {
392 case MSG_OK:
393 return osOK;
394 case MSG_TIMEOUT:
395 return osErrorTimeoutResource;
396 }
397 return osErrorResource;
398}
399
400/**
401 * @brief Release a mutex.
402 */
403osStatus osMutexRelease(osMutexId mutex_id) {
404
405 syssts_t sts = chSysGetStatusAndLockX();
406 chBSemSignalI((binary_semaphore_t *)mutex_id);
407 chSysRestoreStatusX(sts);
408
409 return osOK;
410}
411
412/**
413 * @brief Deletes a mutex.
414 * @note After deletion there could be references in the system to a
415 * non-existent semaphore.
416 */
417osStatus osMutexDelete(osMutexId mutex_id) {
418
419 chSemReset((semaphore_t *)mutex_id, 0);
420 chPoolFree(&sempool, (void *)mutex_id);
421
422 return osOK;
423}
424
425/**
426 * @brief Create a memory pool.
427 * @note The pool is not really created because it is allocated statically,
428 * this function just re-initializes it.
429 */
430osPoolId osPoolCreate(const osPoolDef_t *pool_def) {
431
432 chPoolObjectInit(pool_def->pool, (size_t)pool_def->item_sz, NULL);
433 chPoolLoadArray(pool_def->pool, pool_def->items, (size_t)pool_def->pool_sz);
434
435 return (osPoolId)pool_def->pool;
436}
437
438/**
439 * @brief Allocate an object.
440 */
441void *osPoolAlloc(osPoolId pool_id) {
442 void *object;
443
444 syssts_t sts = chSysGetStatusAndLockX();
445 object = chPoolAllocI((memory_pool_t *)pool_id);
446 chSysRestoreStatusX(sts);
447
448 return object;
449}
450
451/**
452 * @brief Allocate an object clearing it.
453 */
454void *osPoolCAlloc(osPoolId pool_id) {
455 void *object;
456
457 object = chPoolAllocI((memory_pool_t *)pool_id);
458 memset(object, 0, pool_id->object_size);
459 return object;
460}
461
462/**
463 * @brief Free an object.
464 */
465osStatus osPoolFree(osPoolId pool_id, void *block) {
466
467 syssts_t sts = chSysGetStatusAndLockX();
468 chPoolFreeI((memory_pool_t *)pool_id, block);
469 chSysRestoreStatusX(sts);
470
471 return osOK;
472}
473
474/**
475 * @brief Create a message queue.
476 * @note The queue is not really created because it is allocated statically,
477 * this function just re-initializes it.
478 */
479osMessageQId osMessageCreate(const osMessageQDef_t *queue_def,
480 osThreadId thread_id) {
481
482 /* Ignoring this parameter for now.*/
483 (void)thread_id;
484
485 if (queue_def->item_sz > sizeof (msg_t))
486 return NULL;
487
488 chMBObjectInit(queue_def->mailbox,
489 queue_def->items,
490 (size_t)queue_def->queue_sz);
491
492 return (osMessageQId) queue_def->mailbox;
493}
494
495/**
496 * @brief Put a message in the queue.
497 */
498osStatus osMessagePut(osMessageQId queue_id,
499 uint32_t info,
500 uint32_t millisec) {
501 msg_t msg;
502 sysinterval_t timeout = (millisec == osWaitForever ?
503 TIME_INFINITE : (millisec == 0 ? TIME_IMMEDIATE :
504 TIME_MS2I(millisec)));
505
506 if (port_is_isr_context()) {
507
508 /* Waiting makes no sense in ISRs so any value except "immediate"
509 makes no sense.*/
510 if (millisec != 0)
511 return osErrorValue;
512
513 chSysLockFromISR();
514 msg = chMBPostI((mailbox_t *)queue_id, (msg_t)info);
515 chSysUnlockFromISR();
516 }
517 else
518 msg = chMBPostTimeout((mailbox_t *)queue_id, (msg_t)info, timeout);
519
520 return msg == MSG_OK ? osOK : osEventTimeout;
521}
522
523/**
524 * @brief Get a message from the queue.
525 */
526osEvent osMessageGet(osMessageQId queue_id,
527 uint32_t millisec) {
528 msg_t msg;
529 osEvent event;
530 sysinterval_t timeout = (millisec == osWaitForever ?
531 TIME_INFINITE : (millisec == 0 ? TIME_IMMEDIATE :
532 TIME_MS2I(millisec)));
533
534 event.def.message_id = queue_id;
535
536 if (port_is_isr_context()) {
537
538 /* Waiting makes no sense in ISRs so any value except "immediate"
539 makes no sense.*/
540 if (millisec != 0) {
541 event.status = osErrorValue;
542 return event;
543 }
544
545 chSysLockFromISR();
546 msg = chMBFetchI((mailbox_t *)queue_id, (msg_t*)&event.value.v);
547 chSysUnlockFromISR();
548 }
549 else {
550 msg = chMBFetchTimeout((mailbox_t *)queue_id, (msg_t*)&event.value.v, timeout);
551 }
552
553 /* Returned event type.*/
554 event.status = msg == MSG_OK ? osEventMessage : osEventTimeout;
555 return event;
556}
557
558/** @} */
diff --git a/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.h b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.h
new file mode 100644
index 000000000..dafe3e398
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.h
@@ -0,0 +1,522 @@
1/*
2 ChibiOS - Copyright (C) 2006,2007,2008,2009,2010,2011,2012,2013,2014,
3 2015,2016,2017,2018,2019,2020,2021 Giovanni Di Sirio.
4
5 This file is part of ChibiOS.
6
7 ChibiOS is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation version 3 of the License.
10
11 ChibiOS is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19/*
20 Concepts and parts of this file have been contributed by Andre R.
21 */
22
23/**
24 * @file cmsis_os.h
25 * @brief CMSIS RTOS module macros and structures.
26 *
27 * @addtogroup CMSIS_OS
28 * @{
29 */
30
31#ifndef CMSIS_OS_H
32#define CMSIS_OS_H
33
34#include "ch.h"
35
36/*===========================================================================*/
37/* Module constants. */
38/*===========================================================================*/
39
40/**
41 * @brief API version.
42 */
43#define osCMSIS 0x10002
44
45/**
46 * @brief Kernel version.
47 */
48#define osKernelSystemId "KERNEL V1.00"
49
50/**
51 * @brief ChibiOS/RT version encoded for CMSIS.
52 */
53#define osCMSIS_KERNEL ((CH_KERNEL_MAJOR << 16) | \
54 (CH_KERNEL_MINOR << 8) | \
55 (CH_KERNEL_PATCH))
56
57/**
58 * @name CMSIS Capabilities
59 * @{
60 */
61#define osFeature_MainThread 1
62#define osFeature_Pool 1
63#define osFeature_MailQ 0
64#define osFeature_MessageQ 1
65#define osFeature_Signals 24
66#define osFeature_Semaphore ((1U << 31) - 1U)
67#define osFeature_Wait 0
68#define osFeature_SysTick 1
69/**< @} */
70
71/**
72 * @brief Wait forever specification for timeouts.
73 */
74#define osWaitForever ((uint32_t)-1)
75
76/**
77 * @brief System tick frequency.
78 */
79#define osKernelSysTickFrequency CH_CFG_ST_FREQUENCY
80
81/*===========================================================================*/
82/* Module pre-compile time settings. */
83/*===========================================================================*/
84
85/**
86 * @brief Number of pre-allocated static semaphores/mutexes.
87 */
88#if !defined(CMSIS_CFG_DEFAULT_STACK)
89#define CMSIS_CFG_DEFAULT_STACK 256
90#endif
91
92/**
93 * @brief Number of pre-allocated static semaphores/mutexes.
94 */
95#if !defined(CMSIS_CFG_NUM_SEMAPHORES)
96#define CMSIS_CFG_NUM_SEMAPHORES 4
97#endif
98
99/**
100 * @brief Number of pre-allocated static timers.
101 */
102#if !defined(CMSIS_CFG_NUM_TIMERS)
103#define CMSIS_CFG_NUM_TIMERS 4
104#endif
105
106/*===========================================================================*/
107/* Derived constants and error checks. */
108/*===========================================================================*/
109
110#if !CH_CFG_USE_MEMPOOLS
111#error "CMSIS RTOS requires CH_CFG_USE_MEMPOOLS"
112#endif
113
114#if !CH_CFG_USE_EVENTS
115#error "CMSIS RTOS requires CH_CFG_USE_EVENTS"
116#endif
117
118#if !CH_CFG_USE_EVENTS_TIMEOUT
119#error "CMSIS RTOS requires CH_CFG_USE_EVENTS_TIMEOUT"
120#endif
121
122#if !CH_CFG_USE_SEMAPHORES
123#error "CMSIS RTOS requires CH_CFG_USE_SEMAPHORES"
124#endif
125
126#if !CH_CFG_USE_DYNAMIC
127#error "CMSIS RTOS requires CH_CFG_USE_DYNAMIC"
128#endif
129
130/*===========================================================================*/
131/* Module data structures and types. */
132/*===========================================================================*/
133
134/**
135 * @brief Type of priority levels.
136 */
137typedef enum {
138 osPriorityIdle = -3,
139 osPriorityLow = -2,
140 osPriorityBelowNormal = -1,
141 osPriorityNormal = 0,
142 osPriorityAboveNormal = +1,
143 osPriorityHigh = +2,
144 osPriorityRealtime = +3,
145 osPriorityError = 0x84
146} osPriority;
147
148/**
149 * @brief Type of error codes.
150 */
151typedef enum {
152 osOK = 0,
153 osEventSignal = 0x08,
154 osEventMessage = 0x10,
155 osEventMail = 0x20,
156 osEventTimeout = 0x40,
157 osErrorParameter = 0x80,
158 osErrorResource = 0x81,
159 osErrorTimeoutResource = 0xC1,
160 osErrorISR = 0x82,
161 osErrorISRRecursive = 0x83,
162 osErrorPriority = 0x84,
163 osErrorNoMemory = 0x85,
164 osErrorValue = 0x86,
165 osErrorOS = 0xFF,
166 os_status_reserved = 0x7FFFFFFF
167} osStatus;
168
169/**
170 * @brief Type of a timer mode.
171 */
172typedef enum {
173 osTimerOnce = 0,
174 osTimerPeriodic = 1
175} os_timer_type;
176
177/**
178 * @brief Type of thread functions.
179 */
180typedef void (*os_pthread) (void const *argument);
181
182/**
183 * @brief Type of timer callback.
184 */
185typedef void (*os_ptimer) (void const *argument);
186
187/**
188 * @brief Type of pointer to thread control block.
189 */
190typedef thread_t *osThreadId;
191
192/**
193 * @brief Type of pointer to timer control block.
194 */
195typedef struct os_timer_cb {
196 virtual_timer_t vt;
197 os_timer_type type;
198 os_ptimer ptimer;
199 void *argument;
200 uint32_t millisec;
201} *osTimerId;
202
203/**
204 * @brief Type of pointer to mutex control block.
205 */
206typedef binary_semaphore_t *osMutexId;
207
208/**
209 * @brief Type of pointer to semaphore control block.
210 */
211typedef semaphore_t *osSemaphoreId;
212
213/**
214 * @brief Type of pointer to memory pool control block.
215 */
216typedef memory_pool_t *osPoolId;
217
218/**
219 * @brief Type of pointer to message queue control block.
220 */
221typedef struct mailbox *osMessageQId;
222
223/**
224 * @brief Type of an event.
225 */
226typedef struct {
227 osStatus status;
228 union {
229 uint32_t v;
230 void *p;
231 int32_t signals;
232 } value;
233 union {
234/* osMailQId mail_id;*/
235 osMessageQId message_id;
236 } def;
237} osEvent;
238
239/**
240 * @brief Type of a thread definition block.
241 */
242typedef struct os_thread_def {
243 os_pthread pthread;
244 osPriority tpriority;
245 uint32_t stacksize;
246 const char *name;
247} osThreadDef_t;
248
249/**
250 * @brief Type of a timer definition block.
251 */
252typedef struct os_timer_def {
253 os_ptimer ptimer;
254} osTimerDef_t;
255
256/**
257 * @brief Type of a mutex definition block.
258 */
259typedef struct os_mutex_def {
260 uint32_t dummy;
261} osMutexDef_t;
262
263/**
264 * @brief Type of a semaphore definition block.
265 */
266typedef struct os_semaphore_def {
267 uint32_t dummy;
268} osSemaphoreDef_t;
269
270/**
271 * @brief Type of a memory pool definition block.
272 */
273typedef struct os_pool_def {
274 uint32_t pool_sz;
275 uint32_t item_sz;
276 memory_pool_t *pool;
277 void *items;
278} osPoolDef_t;
279
280/**
281 * @brief Type of a message queue definition block.
282 */
283typedef struct os_messageQ_def {
284 uint32_t queue_sz;
285 uint32_t item_sz;
286 mailbox_t *mailbox;
287 void *items;
288} osMessageQDef_t;
289
290/*===========================================================================*/
291/* Module macros. */
292/*===========================================================================*/
293
294/**
295 * @brief Convert a microseconds value to a RTOS kernel system timer value.
296 */
297#define osKernelSysTickMicroSec(microsec) (((uint64_t)microsec * \
298 (osKernelSysTickFrequency)) / \
299 1000000)
300
301/**
302 * @brief Create a Thread definition.
303 */
304#if defined(osObjectsExternal)
305#define osThreadDef(thd, priority, stacksz, name) \
306 extern const osThreadDef_t os_thread_def_##thd
307#else
308#define osThreadDef(thd, priority, stacksz, name) \
309const osThreadDef_t os_thread_def_##thd = { \
310 (thd), \
311 (priority), \
312 (stacksz), \
313 (name) \
314}
315#endif
316
317/**
318 * @brief Access a Thread definition.
319 */
320#define osThread(name) &os_thread_def_##name
321
322/**
323 * @brief Define a Timer object.
324 */
325#if defined(osObjectsExternal)
326#define osTimerDef(name, function) \
327 extern const osTimerDef_t os_timer_def_##name
328#else
329#define osTimerDef(name, function) \
330const osTimerDef_t os_timer_def_##name = { \
331 (function) \
332}
333#endif
334
335/**
336 * @brief Access a Timer definition.
337 */
338#define osTimer(name) &os_timer_def_##name
339
340/**
341 * @brief Define a Mutex.
342 */
343#if defined(osObjectsExternal)
344#define osMutexDef(name) extern const osMutexDef_t os_mutex_def_##name
345#else
346#define osMutexDef(name) const osMutexDef_t os_mutex_def_##name = {0}
347#endif
348
349/**
350 * @brief Access a Mutex definition.
351 */
352#define osMutex(name) &os_mutex_def_##name
353
354/**
355 * @brief Define a Semaphore.
356 */
357#if defined(osObjectsExternal)
358#define osSemaphoreDef(name) \
359 extern const osSemaphoreDef_t os_semaphore_def_##name
360#else // define the object
361#define osSemaphoreDef(name) \
362 const osSemaphoreDef_t os_semaphore_def_##name = {0}
363#endif
364
365/**
366 * @brief Access a Semaphore definition.
367 */
368#define osSemaphore(name) &os_semaphore_def_##name
369
370/**
371 * @brief Define a Memory Pool.
372 */
373#if defined(osObjectsExternal)
374#define osPoolDef(name, no, type) \
375 extern const osPoolDef_t os_pool_def_##name
376#else
377#define osPoolDef(name, no, type) \
378static const type os_pool_buf_##name[no]; \
379static memory_pool_t os_pool_obj_##name; \
380const osPoolDef_t os_pool_def_##name = { \
381 (no), \
382 sizeof (type), \
383 (void *)&os_pool_obj_##name, \
384 (void *)&os_pool_buf_##name[0] \
385}
386#endif
387
388/**
389 * @brief Access a Memory Pool definition.
390 */
391#define osPool(name) &os_pool_def_##name
392
393/**
394 * @brief Define a Message Queue.
395 */
396#if defined(osObjectsExternal)
397#define osMessageQDef(name, queue_sz, type) \
398 extern const osMessageQDef_t os_messageQ_def_##name
399#else
400#define osMessageQDef(name, queue_sz, type) \
401static const msg_t os_messageQ_buf_##name[queue_sz]; \
402static mailbox_t os_messageQ_obj_##name; \
403const osMessageQDef_t os_messageQ_def_##name = { \
404 (queue_sz), \
405 sizeof (type), \
406 (void *)&os_messageQ_obj_##name, \
407 (void *)&os_messageQ_buf_##name[0] \
408}
409#endif
410
411/**
412 * @brief Access a Message Queue definition.
413 */
414#define osMessageQ(name) &os_messageQ_def_##name
415
416/*===========================================================================*/
417/* External declarations. */
418/*===========================================================================*/
419
420extern int32_t cmsis_os_started;
421
422#ifdef __cplusplus
423extern "C" {
424#endif
425 osStatus osKernelInitialize(void);
426 osStatus osKernelStart(void);
427 osThreadId osThreadCreate(const osThreadDef_t *thread_def, void *argument);
428 osStatus osThreadTerminate(osThreadId thread_id);
429 osStatus osThreadSetPriority(osThreadId thread_id, osPriority newprio);
430 /*osEvent osWait(uint32_t millisec);*/
431 osTimerId osTimerCreate(const osTimerDef_t *timer_def,
432 os_timer_type type,
433 void *argument);
434 osStatus osTimerStart(osTimerId timer_id, uint32_t millisec);
435 osStatus osTimerStop(osTimerId timer_id);
436 osStatus osTimerDelete(osTimerId timer_id);
437 int32_t osSignalSet(osThreadId thread_id, int32_t signals);
438 int32_t osSignalClear(osThreadId thread_id, int32_t signals);
439 osEvent osSignalWait(int32_t signals, uint32_t millisec);
440 osSemaphoreId osSemaphoreCreate(const osSemaphoreDef_t *semaphore_def,
441 int32_t count);
442 int32_t osSemaphoreWait(osSemaphoreId semaphore_id, uint32_t millisec);
443 osStatus osSemaphoreRelease(osSemaphoreId semaphore_id);
444 osStatus osSemaphoreDelete(osSemaphoreId semaphore_id);
445 osMutexId osMutexCreate(const osMutexDef_t *mutex_def);
446 osStatus osMutexWait(osMutexId mutex_id, uint32_t millisec);
447 osStatus osMutexRelease(osMutexId mutex_id);
448 osStatus osMutexDelete(osMutexId mutex_id);
449 osPoolId osPoolCreate(const osPoolDef_t *pool_def);
450 void *osPoolAlloc(osPoolId pool_id);
451 void *osPoolCAlloc(osPoolId pool_id);
452 osStatus osPoolFree(osPoolId pool_id, void *block);
453 osMessageQId osMessageCreate(const osMessageQDef_t *queue_def,
454 osThreadId thread_id);
455 osStatus osMessagePut(osMessageQId queue_id,
456 uint32_t info,
457 uint32_t millisec);
458 osEvent osMessageGet(osMessageQId queue_id,
459 uint32_t millisec);
460#ifdef __cplusplus
461}
462#endif
463
464/*===========================================================================*/
465/* Module inline functions. */
466/*===========================================================================*/
467
468/**
469 * @brief To be or not to be.
470 */
471static inline int32_t osKernelRunning(void) {
472
473 return cmsis_os_started;
474}
475
476/**
477 * @brief System ticks since start.
478 */
479static inline uint32_t osKernelSysTick(void) {
480
481 return (uint32_t)chVTGetSystemTimeX();
482}
483
484/**
485 * @brief Returns the current thread.
486 */
487static inline osThreadId osThreadGetId(void) {
488
489 return (osThreadId)chThdGetSelfX();
490}
491
492/**
493 * @brief Thread time slice yield.
494 */
495static inline osStatus osThreadYield(void) {
496
497 chThdYield();
498
499 return osOK;
500}
501
502/**
503 * @brief Returns priority of a thread.
504 */
505static inline osPriority osThreadGetPriority(osThreadId thread_id) {
506
507 return (osPriority)(NORMALPRIO - thread_id->hdr.pqueue.prio);
508}
509
510/**
511 * @brief Thread delay in milliseconds.
512 */
513static inline osStatus osDelay(uint32_t millisec) {
514
515 chThdSleepMilliseconds(millisec);
516
517 return osOK;
518}
519
520#endif /* CMSIS_OS_H */
521
522/** @} */
diff --git a/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.mk b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.mk
new file mode 100644
index 000000000..343f6df40
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/cmsis_os/cmsis_os.mk
@@ -0,0 +1,8 @@
1# List of the ChibiOS/RT CMSIS RTOS wrapper.
2CMSISRTOSSRC = ${CHIBIOS}/os/common/abstractions/cmsis_os/cmsis_os.c
3
4CMSISRTOSINC = ${CHIBIOS}/os/common/abstractions/cmsis_os
5
6# Shared variables
7ALLCSRC += $(CMSISRTOSSRC)
8ALLINC += $(CMSISRTOSINC)
diff --git a/lib/chibios/os/common/abstractions/nasa_cfe/osal/cfe_osal.mk b/lib/chibios/os/common/abstractions/nasa_cfe/osal/cfe_osal.mk
new file mode 100644
index 000000000..c0add1c26
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/nasa_cfe/osal/cfe_osal.mk
@@ -0,0 +1,8 @@
1# NASA CFE OSAL files.
2CFEOSALSRC = $(CHIBIOS)/os/common/abstractions/nasa_cfe/osal/src/osapi.c
3
4CFEOSALINC = $(CHIBIOS)/os/common/abstractions/nasa_cfe/osal/include
5
6# Shared variables
7ALLCSRC += $(CFEOSALSRC)
8ALLINC += $(CFEOSALINC)
diff --git a/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/common_types.h b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/common_types.h
new file mode 100644
index 000000000..100a9c72e
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/common_types.h
@@ -0,0 +1,267 @@
1/*---------------------------------------------------------------------------
2**
3** Filename:
4** $Id: common_types.h 1.9 2014/01/14 16:28:32GMT-05:00 acudmore Exp $
5**
6** Copyright (c) 2004-2006, United States government as represented by the
7** administrator of the National Aeronautics Space Administration.
8** All rights reserved. This software was created at NASAs Goddard
9** Space Flight Center pursuant to government contracts.
10**
11** This is governed by the NASA Open Source Agreement and may be used,
12** distributed and modified only pursuant to the terms of that agreement.
13**
14** Purpose:
15** Unit specification for common types.
16**
17** Design Notes:
18** Assumes make file has defined processor family
19**
20** References:
21** Flight Software Branch C Coding Standard Version 1.0a
22**
23**
24** Notes:
25**
26**
27** $Date: 2014/01/14 16:28:32GMT-05:00 $
28** $Revision: 1.9 $
29** $Log: common_types.h $
30** Revision 1.9 2014/01/14 16:28:32GMT-05:00 acudmore
31** Fixed typo in macro for x86-64
32** Revision 1.8 2013/08/09 13:58:04GMT-05:00 acudmore
33** Added int64 type, added support for ARM arch, added 64 bit x86 arch, added arch check for GCC arch macros, added check for proper data type sizes
34** Revision 1.7 2013/07/25 10:01:29GMT-05:00 acudmore
35** Added C++ support
36** Revision 1.6 2012/04/11 09:19:03GMT-05:00 acudmore
37** added OS_USED attribute
38** Revision 1.5 2010/02/18 16:43:29EST acudmore
39** Added SPARC processor section
40** Removed special characters from comments that cause problems with some tools.
41** Revision 1.4 2010/02/18 16:41:39EST acudmore
42** Added a block of defines for GCC specific pragmas and extensions.
43** Removed RTEMS boolean related ifdefs
44** moved OS_PACK into the GCC specific block
45** Revision 1.3 2010/02/01 12:31:17EST acudmore
46** Added uint64 type
47** Revision 1.2 2009/07/07 16:30:05EDT acudmore
48** Removed conditinal comp. around boolean for m68k.
49** This will need to be done for all RTEMS targets
50** Revision 1.1 2009/06/02 10:04:58EDT acudmore
51** Initial revision
52** Member added to project c:/MKSDATA/MKS-REPOSITORY/MKS-OSAL-REPOSITORY/src/os/inc/project.pj
53** Revision 1.1 2008/04/20 22:35:58EDT ruperera
54** Initial revision
55** Member added to project c:/MKSDATA/MKS-REPOSITORY/MKS-OSAL-REPOSITORY/src/inc/project.pj
56** Revision 1.1 2007/10/16 16:14:49EDT apcudmore
57** Initial revision
58** Member added to project d:/mksdata/MKS-OSAL-REPOSITORY/src/inc/project.pj
59** Revision 1.2 2006/06/08 14:28:32EDT David Kobe (dlkobe)
60** Added NASA Open Source Legal Statement
61** Revision 1.1 2005/06/09 09:57:51GMT-05:00 rperera
62** Initial revision
63** Member added to project d:/mksdata/MKS-CFE-REPOSITORY/cfe-core/inc/project.pj
64** Revision 1.6 2005/03/24 19:20:52 rmcgraw
65** Wrapped the boolean defintion for all three processors with #ifndef _USING_RTEMS_INCLUDES_
66**
67** Revision 1.5 2005/03/10 16:59:08 acudmore
68** removed boolean prefix to TRUE and FALSE defintion to avoid vxWorks conflict.
69**
70** Revision 1.4 2005/03/07 20:23:34 acudmore
71** removed duplicate boolean definition
72**
73** Revision 1.3 2005/03/07 20:05:17 acudmore
74** updated with __PPC__ macro that gnu compiler uses
75**
76** Revision 1.2 2005/03/04 16:02:44 acudmore
77** added coldfire architecture
78**
79** Revision 1.1 2005/03/04 15:58:45 acudmore
80** Added common_types.h
81**
82**
83**
84**-------------------------------------------------------------------------*/
85
86#ifndef _common_types_
87#define _common_types_
88
89#ifdef __cplusplus
90 extern "C" {
91#endif
92
93/*
94** Includes
95*/
96
97/*
98** Macro Definitions
99*/
100
101/*
102** Condition = TRUE is ok, Condition = FALSE is error
103*/
104#define CompileTimeAssert(Condition, Message) typedef char Message[(Condition) ? 1 : -1]
105
106
107/*
108** Define compiler specific macros
109** The __extension__ compiler pragma is required
110** for the uint64 type using GCC with the ANSI C90 standard.
111** Other macros can go in here as needed, for example alignment
112** pragmas.
113*/
114#if defined (__GNUC__)
115 #define _EXTENSION_ __extension__
116 #define OS_PACK __attribute__ ((packed))
117 #define OS_ALIGN(n) __attribute__((aligned(n)))
118 #define OS_USED __attribute__((used))
119#else
120 #define _EXTENSION_
121 #define OS_PACK
122 #define OS_ALIGN(n)
123 #define OS_USED
124#endif
125
126#if defined(_ix86_) || defined (__i386__)
127/* ----------------------- Intel x86 processor family -------------------------*/
128 /* Little endian */
129 #undef _STRUCT_HIGH_BIT_FIRST_
130 #define _STRUCT_LOW_BIT_FIRST_
131
132 typedef unsigned char boolean;
133 typedef signed char int8;
134 typedef short int int16;
135 typedef long int int32;
136 _EXTENSION_ typedef long long int int64;
137 typedef unsigned char uint8;
138 typedef unsigned short int uint16;
139 typedef unsigned long int uint32;
140 _EXTENSION_ typedef unsigned long long int uint64;
141
142 typedef unsigned long int cpuaddr;
143
144#elif defined (_ix64_) || defined (__x86_64__)
145/* ----------------------- Intel/AMD x64 processor family -------------------------*/
146 /* Little endian */
147 #undef _STRUCT_HIGH_BIT_FIRST_
148 #define _STRUCT_LOW_BIT_FIRST_
149
150 typedef unsigned char boolean;
151 typedef signed char int8;
152 typedef short int int16;
153 typedef int int32;
154 typedef long int int64;
155 typedef unsigned char uint8;
156 typedef unsigned short int uint16;
157 typedef unsigned int uint32;
158 typedef unsigned long int uint64;
159
160 typedef unsigned long int cpuaddr;
161
162#elif defined(__PPC__) || defined (__ppc__)
163 /* ----------------------- Motorola Power PC family ---------------------------*/
164 /* The PPC can be programmed to be big or little endian, we assume native */
165 /* Big endian */
166 #define _STRUCT_HIGH_BIT_FIRST_
167 #undef _STRUCT_LOW_BIT_FIRST_
168
169 typedef unsigned char boolean;
170 typedef signed char int8;
171 typedef short int int16;
172 typedef long int int32;
173 _EXTENSION_ typedef long long int int64;
174 typedef unsigned char uint8;
175 typedef unsigned short int uint16;
176 typedef unsigned long int uint32;
177 _EXTENSION_ typedef unsigned long long int uint64;
178
179 typedef unsigned long int cpuaddr;
180
181#elif defined(_m68k_) || defined(__m68k__)
182 /* ----------------------- Motorola m68k/Coldfire family ---------------------------*/
183 /* Big endian */
184 #define _STRUCT_HIGH_BIT_FIRST_
185 #undef _STRUCT_LOW_BIT_FIRST_
186
187 typedef unsigned char boolean;
188 typedef signed char int8;
189 typedef short int int16;
190 typedef long int int32;
191 _EXTENSION_ typedef long long int int64;
192 typedef unsigned char uint8;
193 typedef unsigned short int uint16;
194 typedef unsigned long int uint32;
195 _EXTENSION_ typedef unsigned long long int uint64;
196
197 typedef unsigned long int cpuaddr;
198
199#elif defined (__ARM__) || defined(__arm__)
200/* ----------------------- ARM processor family -------------------------*/
201 /* Little endian */
202 #undef _STRUCT_HIGH_BIT_FIRST_
203 #define _STRUCT_LOW_BIT_FIRST_
204
205 typedef unsigned char boolean;
206 typedef signed char int8;
207 typedef short int int16;
208 typedef long int int32;
209 _EXTENSION_ typedef long long int int64;
210 typedef unsigned char uint8;
211 typedef unsigned short int uint16;
212 typedef unsigned long int uint32;
213 _EXTENSION_ typedef unsigned long long int uint64;
214
215 typedef unsigned long int cpuaddr;
216
217#elif defined(__SPARC__) || defined (_sparc_)
218 /* ----------------------- SPARC/LEON family ---------------------------*/
219 /* SPARC Big endian */
220 #define _STRUCT_HIGH_BIT_FIRST_
221 #undef _STRUCT_LOW_BIT_FIRST_
222
223 typedef unsigned char boolean;
224 typedef signed char int8;
225 typedef short int int16;
226 typedef long int int32;
227 _EXTENSION_ typedef long long int int64;
228 typedef unsigned char uint8;
229 typedef unsigned short int uint16;
230 typedef unsigned long int uint32;
231 _EXTENSION_ typedef unsigned long long int uint64;
232
233 typedef unsigned long int cpuaddr;
234
235#else /* not any of the above */
236 #error undefined processor
237#endif /* processor types */
238
239#ifndef NULL /* pointer to nothing */
240 #define NULL ((void *) 0)
241#endif
242
243#ifndef TRUE /* Boolean true */
244 #define TRUE (1)
245#endif
246
247#ifndef FALSE /* Boolean false */
248 #define FALSE (0)
249#endif
250
251/*
252** Check Sizes
253*/
254CompileTimeAssert(sizeof(uint8)==1, TypeUint8WrongSize);
255CompileTimeAssert(sizeof(uint16)==2, TypeUint16WrongSize);
256CompileTimeAssert(sizeof(uint32)==4, TypeUint32WrongSize);
257CompileTimeAssert(sizeof(uint64)==8, TypeUint64WrongSize);
258CompileTimeAssert(sizeof(int8)==1, Typeint8WrongSize);
259CompileTimeAssert(sizeof(int16)==2, Typeint16WrongSize);
260CompileTimeAssert(sizeof(int32)==4, Typeint32WrongSize);
261CompileTimeAssert(sizeof(int64)==8, Typeint64WrongSize);
262
263#ifdef __cplusplus
264 }
265#endif
266
267#endif /* _common_types_ */
diff --git a/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-core.h b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-core.h
new file mode 100644
index 000000000..8c9b13a78
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-core.h
@@ -0,0 +1,274 @@
1/*
2** File: osapi-os-core.h
3**
4** Copyright (c) 2004-2006, United States government as represented by the
5** administrator of the National Aeronautics Space Administration.
6** All rights reserved. This software was created at NASAs Goddard
7** Space Flight Center pursuant to government contracts.
8**
9** This is governed by the NASA Open Source Agreement and may be used,
10** distributed and modified only pursuant to the terms of that agreement.
11**
12** Author: Ezra Yeheksli -Code 582/Raytheon
13**
14** Purpose: Contains functions prototype definitions and variables declarations
15** for the OS Abstraction Layer, Core OS module
16**
17** $Revision: 1.8 $
18**
19** $Date: 2013/07/25 10:02:00GMT-05:00 $
20**
21** $Log: osapi-os-core.h $
22** Revision 1.8 2013/07/25 10:02:00GMT-05:00 acudmore
23** removed circular include "osapi.h"
24** Revision 1.7 2012/04/11 09:30:48GMT-05:00 acudmore
25** Added OS_printf_enable and OS_printf_disable
26** Revision 1.6 2010/11/12 12:00:17EST acudmore
27** replaced copyright character with (c) and added open source notice where needed.
28** Revision 1.5 2010/11/10 15:33:14EST acudmore
29** Updated IntAttachHandler prototype
30** Revision 1.4 2010/03/08 12:06:28EST acudmore
31** added function pointer type to get rid of warnings
32** Revision 1.3 2010/02/01 12:37:15EST acudmore
33** added return code to OS API init
34** Revision 1.2 2009/08/04 10:49:09EDT acudmore
35**
36*/
37
38#ifndef _osapi_core_
39#define _osapi_core_
40
41#include <stdarg.h> /* for va_list */
42
43/*difines constants for OS_BinSemCreate for state of semaphore */
44#define OS_SEM_FULL 1
45#define OS_SEM_EMPTY 0
46
47/* #define for enabling floating point operations on a task*/
48#define OS_FP_ENABLED 1
49
50/* tables for the properties of objects */
51
52/*tasks */
53typedef struct
54{
55 char name [OS_MAX_API_NAME];
56 uint32 creator;
57 uint32 stack_size;
58 uint32 priority;
59 uint32 OStask_id;
60}OS_task_prop_t;
61
62/* queues */
63typedef struct
64{
65 char name [OS_MAX_API_NAME];
66 uint32 creator;
67}OS_queue_prop_t;
68
69/* Binary Semaphores */
70typedef struct
71{
72 char name [OS_MAX_API_NAME];
73 uint32 creator;
74 int32 value;
75}OS_bin_sem_prop_t;
76
77/* Counting Semaphores */
78typedef struct
79{
80 char name [OS_MAX_API_NAME];
81 uint32 creator;
82 int32 value;
83}OS_count_sem_prop_t;
84
85/* Mutexes */
86typedef struct
87{
88 char name [OS_MAX_API_NAME];
89 uint32 creator;
90}OS_mut_sem_prop_t;
91
92
93/* struct for OS_GetLocalTime() */
94
95typedef struct
96{
97 uint32 seconds;
98 uint32 microsecs;
99}OS_time_t;
100
101/* heap info */
102typedef struct
103{
104 uint32 free_bytes;
105 uint32 free_blocks;
106 uint32 largest_free_block;
107}OS_heap_prop_t;
108
109
110/* This typedef is for the OS_GetErrorName function, to ensure
111 * everyone is making an array of the same length */
112
113typedef char os_err_name_t[35];
114
115/*
116** These typedefs are for the task entry point
117*/
118typedef void osal_task;
119typedef osal_task ((*osal_task_entry)(void));
120
121/*
122** Exported Functions
123*/
124
125/*
126** Initialization of API
127*/
128int32 OS_API_Init (void);
129
130
131/*
132** Task API
133*/
134
135int32 OS_TaskCreate (uint32 *task_id, const char *task_name,
136 osal_task_entry function_pointer,
137 const uint32 *stack_pointer,
138 uint32 stack_size,
139 uint32 priority, uint32 flags);
140
141int32 OS_TaskDelete (uint32 task_id);
142void OS_TaskExit (void);
143int32 OS_TaskInstallDeleteHandler(void *function_pointer);
144int32 OS_TaskDelay (uint32 millisecond);
145int32 OS_TaskSetPriority (uint32 task_id, uint32 new_priority);
146int32 OS_TaskRegister (void);
147uint32 OS_TaskGetId (void);
148int32 OS_TaskGetIdByName (uint32 *task_id, const char *task_name);
149int32 OS_TaskGetInfo (uint32 task_id, OS_task_prop_t *task_prop);
150
151/*
152** Message Queue API
153*/
154
155/*
156** Queue Create now has the Queue ID returned to the caller.
157*/
158int32 OS_QueueCreate (uint32 *queue_id, const char *queue_name,
159 uint32 queue_depth, uint32 data_size, uint32 flags);
160int32 OS_QueueDelete (uint32 queue_id);
161int32 OS_QueueGet (uint32 queue_id, void *data, uint32 size,
162 uint32 *size_copied, int32 timeout);
163int32 OS_QueuePut (uint32 queue_id, void *data, uint32 size,
164 uint32 flags);
165int32 OS_QueueGetIdByName (uint32 *queue_id, const char *queue_name);
166int32 OS_QueueGetInfo (uint32 queue_id, OS_queue_prop_t *queue_prop);
167
168/*
169** Semaphore API
170*/
171
172int32 OS_BinSemCreate (uint32 *sem_id, const char *sem_name,
173 uint32 sem_initial_value, uint32 options);
174int32 OS_BinSemFlush (uint32 sem_id);
175int32 OS_BinSemGive (uint32 sem_id);
176int32 OS_BinSemTake (uint32 sem_id);
177int32 OS_BinSemTimedWait (uint32 sem_id, uint32 msecs);
178int32 OS_BinSemDelete (uint32 sem_id);
179int32 OS_BinSemGetIdByName (uint32 *sem_id, const char *sem_name);
180int32 OS_BinSemGetInfo (uint32 sem_id, OS_bin_sem_prop_t *bin_prop);
181
182int32 OS_CountSemCreate (uint32 *sem_id, const char *sem_name,
183 uint32 sem_initial_value, uint32 options);
184int32 OS_CountSemGive (uint32 sem_id);
185int32 OS_CountSemTake (uint32 sem_id);
186int32 OS_CountSemTimedWait (uint32 sem_id, uint32 msecs);
187int32 OS_CountSemDelete (uint32 sem_id);
188int32 OS_CountSemGetIdByName (uint32 *sem_id, const char *sem_name);
189int32 OS_CountSemGetInfo (uint32 sem_id, OS_count_sem_prop_t *count_prop);
190
191/*
192** Mutex API
193*/
194
195int32 OS_MutSemCreate (uint32 *sem_id, const char *sem_name, uint32 options);
196int32 OS_MutSemGive (uint32 sem_id);
197int32 OS_MutSemTake (uint32 sem_id);
198int32 OS_MutSemDelete (uint32 sem_id);
199int32 OS_MutSemGetIdByName (uint32 *sem_id, const char *sem_name);
200int32 OS_MutSemGetInfo (uint32 sem_id, OS_mut_sem_prop_t *mut_prop);
201
202/*
203** OS Time/Tick related API
204*/
205
206int32 OS_Milli2Ticks (uint32 milli_seconds);
207int32 OS_Tick2Micros (void);
208int32 OS_GetLocalTime (OS_time_t *time_struct);
209int32 OS_SetLocalTime (OS_time_t *time_struct);
210
211/*
212** Exception API
213*/
214
215int32 OS_ExcAttachHandler (uint32 ExceptionNumber,
216 void (*ExceptionHandler)(uint32, uint32 *,uint32),
217 int32 parameter);
218int32 OS_ExcEnable (int32 ExceptionNumber);
219int32 OS_ExcDisable (int32 ExceptionNumber);
220
221/*
222** Floating Point Unit API
223*/
224
225int32 OS_FPUExcAttachHandler (uint32 ExceptionNumber, void * ExceptionHandler ,
226 int32 parameter);
227int32 OS_FPUExcEnable (int32 ExceptionNumber);
228int32 OS_FPUExcDisable (int32 ExceptionNumber);
229int32 OS_FPUExcSetMask (uint32 mask);
230int32 OS_FPUExcGetMask (uint32 *mask);
231
232/*
233** Interrupt API
234*/
235int32 OS_IntAttachHandler (uint32 InterruptNumber, osal_task_entry InterruptHandler, int32 parameter);
236int32 OS_IntUnlock (int32 IntLevel);
237int32 OS_IntLock (void);
238
239int32 OS_IntEnable (int32 Level);
240int32 OS_IntDisable (int32 Level);
241
242int32 OS_IntSetMask (uint32 mask);
243int32 OS_IntGetMask (uint32 *mask);
244int32 OS_IntAck (int32 InterruptNumber);
245
246/*
247** Shared memory API
248*/
249int32 OS_ShMemInit (void);
250int32 OS_ShMemCreate (uint32 *Id, uint32 NBytes, char* SegName);
251int32 OS_ShMemSemTake (uint32 Id);
252int32 OS_ShMemSemGive (uint32 Id);
253int32 OS_ShMemAttach (uint32 * Address, uint32 Id);
254int32 OS_ShMemGetIdByName (uint32 *ShMemId, const char *SegName );
255
256/*
257** Heap API
258*/
259int32 OS_HeapGetInfo (OS_heap_prop_t *heap_prop);
260
261/*
262** API for useful debugging function
263*/
264int32 OS_GetErrorName (int32 error_num, os_err_name_t* err_name);
265
266
267/*
268** Abstraction for printf statements
269*/
270void OS_printf( const char *string, ...);
271void OS_printf_disable(void);
272void OS_printf_enable(void);
273
274#endif
diff --git a/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-custom.h b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-custom.h
new file mode 100644
index 000000000..15a308848
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-custom.h
@@ -0,0 +1,68 @@
1/*
2 ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15*/
16
17/**
18 * @file osapi-os-custom.h
19 * @brief Custom OSAPI extensions header.
20 *
21 * @addtogroup osapi-custom
22 * @{
23 */
24
25#ifndef OSAPI_CUSTOM_H
26#define OSAPI_CUSTOM_H
27
28/*===========================================================================*/
29/* Module constants. */
30/*===========================================================================*/
31
32/*===========================================================================*/
33/* Module pre-compile time settings. */
34/*===========================================================================*/
35
36/*===========================================================================*/
37/* Derived constants and error checks. */
38/*===========================================================================*/
39
40/*===========================================================================*/
41/* Module data structures and types. */
42/*===========================================================================*/
43
44/*===========================================================================*/
45/* Module macros. */
46/*===========================================================================*/
47
48/*===========================================================================*/
49/* External declarations. */
50/*===========================================================================*/
51
52#ifdef __cplusplus
53extern "C" {
54#endif
55 void OS_set_printf(int (*printf)(const char *fmt, ...));
56 boolean OS_TaskDeleteCheck(void);
57 int32 OS_TaskWait(uint32 task_id);
58#ifdef __cplusplus
59}
60#endif
61
62/*===========================================================================*/
63/* Module inline functions. */
64/*===========================================================================*/
65
66#endif /* OSAPI_CUSTOM_H */
67
68/** @} */
diff --git a/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-filesys.h b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-filesys.h
new file mode 100644
index 000000000..c46800341
--- /dev/null
+++ b/lib/chibios/os/common/abstractions/nasa_cfe/osal/include/osapi-os-filesys.h
@@ -0,0 +1,419 @@
1/*
2** File: osapi-os-filesys.h
3**
4** Copyright (c) 2004-2006, United States government as represented by the
5** administrator of the National Aeronautics Space Administration.
6** All rights reserved. This software was created at NASAs Goddard
7** Space Flight Center pursuant to government contracts.
8**
9** This is governed by the NASA Open Source Agreement and may be used,
10** distributed and modified only pursuant to the terms of that agreement.
11**
12** Author: Alan Cudmore Code 582
13**
14** Purpose: Contains functions prototype definitions and variables declarations
15** for the OS Abstraction Layer, File System module
16**
17** $Revision: 1.11 $
18**
19** $Date: 2013/12/16 12:57:41GMT-05:00 $
20**
21** $Log: osapi-os-filesys.h $
22** Revision 1.11 2013/12/16 12:57:41GMT-05:00 acudmore
23** Added macros for Volume name length and physical device name length
24** Revision 1.10 2013/07/29 12:05:48GMT-05:00 acudmore
25** Added define for device and volume name length
26** Revision 1.9 2013/07/25 14:31:21GMT-05:00 acudmore
27** Added prototype and datatype for OS_GetFsInfo
28** Revision 1.8 2011/12/05 12:04:21GMT-05:00 acudmore
29** Added OS_rewinddir API
30** Revision 1.7 2011/04/05 16:01:12EDT acudmore
31** Added OS_CloseFileByName and OS_CloseAllFiles
32** Revision 1.6 2010/11/15 11:04:38EST acudmore
33** Added OS_FileOpenCheck function.
34** Revision 1.5 2010/11/12 12:00:18EST acudmore
35** replaced copyright character with (c) and added open source notice where needed.
36** Revision 1.4 2010/02/01 12:28:57EST acudmore
37** Added OS_fsBytesFree API
38** Revision 1.3 2010/01/25 14:44:26EST acudmore
39** renamed "new" variable to avoid C++ reserved name conflict.
40** Revision 1.2 2009/07/14 15:16:05EDT acudmore
41** Added OS_TranslatePath to the API
42** Revision 1.1 2008/04/20 22:36:01EDT ruperera
43** Initial revision
44** Member added to project c:/MKSDATA/MKS-REPOSITORY/MKS-OSAL-REPOSITORY/src/os/inc/project.pj
45** Revision 1.1 2007/10/16 16:14:52EDT apcudmore
46** Initial revision
47** Member added to project d:/mksdata/MKS-OSAL-REPOSITORY/src/os/inc/project.pj
48** Revision 1.1 2007/08/24 13:43:24EDT apcudmore
49** Initial revision
50** Member added to project d:/mksdata/MKS-CFE-PROJECT/fsw/cfe-core/os/inc/project.pj
51** Revision 1.17 2007/06/07 09:59:14EDT njyanchik
52** I replaced the second OS_cp definition with OS_mv
53** Revision 1.16 2007/06/05 16:25:33EDT apcudmore
54** Increased Number of volume table entries from 10 to 14.
55** Added 2 extra EEPROM disk mappings to RAD750 Volume table + 2 spares
56** Added 4 spares to every other volume table.
57** Revision 1.15 2007/05/25 09:17:56EDT njyanchik
58** I added the rmfs call to the OSAL and updated the unit test stubs to match
59** Revision 1.14 2007/03/21 10:15:29EST njyanchik
60** I mistakenly put the wrong length in for the path in the OS_FDTableEntry structure, and I added
61** some code that will set and out of range file descriptors .IsValid flag to false in OS_FDGetInfo
62** Revision 1.13 2007/03/06 11:52:46EST njyanchik
63** This change goes with the previous CP, I forgot to include it
64** Revision 1.12 2007/02/28 14:57:45EST njyanchik
65** The updates for supporting copying and moving files are now supported
66** Revision 1.11 2007/02/27 15:22:11EST njyanchik
67** This CP has the initial import of the new file descripor table mechanism
68** Revision 1.10 2006/12/20 10:27:09EST njyanchik
69** This change package incorporates all the changes necessary for the addition
70** of a new API to get the real physical drive undernieth a mount point
71** Revision 1.9 2006/11/14 14:44:28GMT-05:00 njyanchik
72** Checks were added to the OS fs calls that look at the return of a function that
73** changes the name of paths from abstracted to local path names.
74** Revision 1.8 2006/10/30 16:12:19GMT-05:00 apcudmore
75** Updated Compact flash and RAM device names for vxWorks 6.2 changes.
76** Revision 1.7 2006/10/25 11:31:18EDT njyanchik
77** This CP incorporates changes to every bsp_voltab.c file. I increased the number
78** entries in the volume table to 10. I also changed the #define in the os_filesys.h
79** file for the number of entries to match.
80**
81** This update also includes adding the prototype for OS_initfs in os_filesys.h
82** Revision 1.6 2006/09/26 09:03:46GMT-05:00 njyanchik
83** Contains the initial import of the ES Shell commands interface
84** Revision 1.5 2006/07/25 15:37:52EDT njyanchik
85** It turns out the both the FS app and the OSAL were incorrect where file descriptors are
86** concerned. the file descriptors should be int32 across the board.
87** Revision 1.4 2006/01/20 11:56:18EST njyanchik
88** Fixed header file information to match api document
89** Revision 1.26 2005/07/12 17:13:56 nyanchik
90** Moved the Volume table to a bsp table in the arch directories.
91**
92** Revision 1.2 2005/07/11 16:26:57EDT apcudmore
93** OSAPI 2.0 integration
94** Revision 1.25 2005/07/06 16:11:17 nyanchik
95** *** empty log message ***
96**
97** Revision 1.24 2005/07/05 18:34:55 nyanchik
98** fixed issues found in code walkthrogh. Also removed the OS_Info* functions that are going in the BSP
99**
100** Revision 1.23 2005/06/17 19:46:34 nyanchik
101** added new file system style to linux and rtems.
102**
103** Revision 1.22 2005/06/15 16:43:48 nyanchik
104** added extra parenthesis for the .h file # defines
105**
106** Revision 1.21 2005/06/06 14:17:42 nyanchik
107** added headers to osapi-os-core.h and osapi-os-filesys.h
108**
109** Revision 1.20 2005/06/02 18:04:24 nyanchik
110** *** empty log message ***
111**
112** Revision 1.1 2005/03/15 18:26:32 nyanchik
113** *** empty log message ***
114**
115**
116** Date Written:
117**
118**
119*/
120
121#ifndef _osapi_filesys_
122#define _osapi_filesys_
123#include <stdio.h>
124#include <stdlib.h>
125#include <dirent.h>
126#include <sys/stat.h>
127
128#define OS_READ_ONLY 0
129#define OS_WRITE_ONLY 1
130#define OS_READ_WRITE 2
131
132#define OS_SEEK_SET 0
133#define OS_SEEK_CUR 1
134#define OS_SEEK_END 2
135
136#define OS_CHK_ONLY 0
137#define OS_REPAIR 1
138
139#define FS_BASED 0
140#define RAM_DISK 1
141#define EEPROM_DISK 2
142#define ATA_DISK 3
143
144
145/*
146** Number of entries in the internal volume table
147*/
148#define NUM_TABLE_ENTRIES 14
149
150/*
151** Length of a Device and Volume name
152*/
153#define OS_FS_DEV_NAME_LEN 32
154#define OS_FS_PHYS_NAME_LEN 64
155#define OS_FS_VOL_NAME_LEN 32
156
157
158/*
159** Defines for File System Calls
160*/
161#define OS_FS_SUCCESS 0
162#define OS_FS_ERROR (-1)
163#define OS_FS_ERR_INVALID_POINTER (-2)
164#define OS_FS_ERR_PATH_TOO_LONG (-3)
165#define OS_FS_ERR_NAME_TOO_LONG (-4)
166#define OS_FS_UNIMPLEMENTED (-5)
167#define OS_FS_ERR_DRIVE_NOT_CREATED (-6)
168#define OS_FS_ERR_DEVICE_NOT_FREE (-7)
169#define OS_FS_ERR_PATH_INVALID (-8)
170#define OS_FS_ERR_NO_FREE_FDS (-9)
171#define OS_FS_ERR_INVALID_FD (-10)
172
173/* This typedef is for the OS_FS_GetErrorName function, to ensure
174 * everyone is making an array of the same length */
175
176typedef char os_fs_err_name_t[35];
177
178
179/*
180** Internal structure of the OS volume table for
181** mounted file systems and path translation
182*/
183typedef struct
184{
185 char DeviceName [OS_FS_DEV_NAME_LEN];
186 char PhysDevName [OS_FS_PHYS_NAME_LEN];
187 uint32 VolumeType;
188 uint8 VolatileFlag;
189 uint8 FreeFlag;
190 uint8 IsMounted;
191 char VolumeName [OS_FS_VOL_NAME_LEN];
192 char MountPoint [OS_MAX_PATH_LEN];
193 uint32 BlockSize;
194
195}OS_VolumeInfo_t;
196
197typedef struct
198{
199 int32 OSfd; /* The underlying OS's file descriptor */
200 char Path[OS_MAX_PATH_LEN]; /* The path of the file opened */
201 uint32 User; /* The task id of the task who opened the file*/
202 uint8 IsValid; /* Whether or not this entry is valid */
203}OS_FDTableEntry;
204
205typedef struct
206{
207 uint32 MaxFds; /* Total number of file descriptors */
208 uint32 FreeFds; /* Total number that are free */
209 uint32 MaxVolumes; /* Maximum number of volumes */
210 uint32 FreeVolumes; /* Total number of volumes free */
211} os_fsinfo_t;
212
213/* modified to posix calls, since all of the
214 * applicable OSes use the posix calls */
215
216typedef struct stat os_fstat_t;