aboutsummaryrefslogtreecommitdiff
path: root/pw_system/freertos_backends.gni
blob: 2c5b85a5d4dca71a111cd397e6c85d5c05295b36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Copyright 2021 The Pigweed Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.

import("//build_overrides/pigweed.gni")

PW_SYSTEM_FREERTOS_BACKENDS = {
  pw_chrono_SYSTEM_CLOCK_BACKEND = "$dir_pw_chrono_freertos:system_clock"
  pw_chrono_SYSTEM_TIMER_BACKEND = "$dir_pw_chrono_freertos:system_timer"
  pw_sync_BINARY_SEMAPHORE_BACKEND = "$dir_pw_sync_freertos:binary_semaphore"
  pw_sync_THREAD_NOTIFICATION_BACKEND =
      "$dir_pw_sync_freertos:thread_notification"
  pw_sync_TIMED_THREAD_NOTIFICATION_BACKEND =
      "$dir_pw_sync_freertos:timed_thread_notification"
  pw_sync_MUTEX_BACKEND = "$dir_pw_sync_freertos:mutex"
  pw_sync_TIMED_MUTEX_BACKEND = "$dir_pw_sync_freertos:timed_mutex"
  pw_sync_INTERRUPT_SPIN_LOCK_BACKEND =
      "$dir_pw_sync_freertos:interrupt_spin_lock"
  pw_thread_ID_BACKEND = "$dir_pw_thread_freertos:id"
  pw_thread_SLEEP_BACKEND = "$dir_pw_thread_freertos:sleep"
  pw_thread_THREAD_BACKEND = "$dir_pw_thread_freertos:thread"
  pw_thread_THREAD_ITERATION_BACKEND =
      "$dir_pw_thread_freertos:thread_iteration"
  pw_thread_YIELD_BACKEND = "$dir_pw_thread_freertos:yield"
  pw_system_TARGET_HOOKS_BACKEND = "$dir_pw_system:freertos_target_hooks"
  pw_trace_tokenizer_time = "$dir_pw_trace_tokenized:fake_trace_time"

  # Enable pw_third_party_freertos_DISABLE_TASKS_STATICS so thread iteration
  # works out-of-the-box.
  pw_third_party_freertos_DISABLE_TASKS_STATICS = true
}