esp_task.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /*
  2. * SPDX-FileCopyrightText: 2019-2022 Espressif Systems (Shanghai) CO LTD
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. /* Notes:
  7. * 1. Put all task priority and stack size definition in this file
  8. * 2. If the task priority is less than 10, use ESP_TASK_PRIO_MIN + X style,
  9. * otherwise use ESP_TASK_PRIO_MAX - X style
  10. * 3. If this is a daemon task, the macro prefix is ESP_TASKD_, otherwise
  11. * it's ESP_TASK_
  12. * 4. If the configMAX_PRIORITIES is modified, please make all priority are
  13. * greater than 0
  14. * 5. Make sure esp_task.h is consistent between wifi lib and idf
  15. * 6. If changing system task priorities, please check the values documented in /api-guides/performance/speed.rst
  16. * are up to date
  17. */
  18. #ifndef _ESP_TASK_H_
  19. #define _ESP_TASK_H_
  20. #include "sdkconfig.h"
  21. #define ESP_TASK_PRIO_MAX (configMAX_PRIORITIES)
  22. #define ESP_TASK_PRIO_MIN (0)
  23. /* Temporary define until system is properly buildable on Linux */
  24. #define CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE 10
  25. /* Bt contoller Task */
  26. /* controller */
  27. #define ESP_TASK_BT_CONTROLLER_PRIO (ESP_TASK_PRIO_MAX - 2)
  28. #ifdef CONFIG_NEWLIB_NANO_FORMAT
  29. #define TASK_EXTRA_STACK_SIZE (0)
  30. #else
  31. #define TASK_EXTRA_STACK_SIZE (512)
  32. #endif
  33. #define BT_TASK_EXTRA_STACK_SIZE TASK_EXTRA_STACK_SIZE
  34. #define ESP_TASK_BT_CONTROLLER_STACK (3584 + TASK_EXTRA_STACK_SIZE)
  35. /* Ping Task */
  36. #define ESP_TASK_PING_STACK (2048 + TASK_EXTRA_STACK_SIZE)
  37. /* idf task */
  38. #define ESP_TASKD_EVENT_PRIO (ESP_TASK_PRIO_MAX - 5)
  39. #define ESP_TASKD_EVENT_STACK (2048)
  40. #endif