linker.lf 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. [mapping:esp_pm]
  2. archive: libesp_pm.a
  3. entries:
  4. if PM_RTOS_IDLE_OPT = y:
  5. pm_impl:esp_pm_impl_idle_hook (noflash)
  6. pm_impl:esp_pm_impl_waiti (noflash)
  7. if PM_SLP_IRAM_OPT = y:
  8. pm_impl:esp_pm_impl_get_cpu_freq (noflash)
  9. [mapping:esp_hw_support_pm]
  10. archive: libesp_hw_support.a
  11. entries:
  12. if PM_SLP_IRAM_OPT = y:
  13. sleep_modes:esp_light_sleep_start (noflash)
  14. sleep_modes:esp_sleep_enable_timer_wakeup (noflash)
  15. sleep_modes:timer_wakeup_prepare (noflash)
  16. sleep_modes:get_power_down_flags (noflash)
  17. esp_clk:esp_clk_slowclk_cal_set (noflash)
  18. esp_clk:esp_clk_slowclk_cal_get (noflash)
  19. esp_clk:esp_rtc_get_time_us (noflash)
  20. esp_clk:esp_clk_private_lock (noflash)
  21. esp_clk:esp_clk_private_unlock (noflash)
  22. if SOC_RTC_MEM_SUPPORTED = y:
  23. esp_clk:calc_checksum (noflash)
  24. if SOC_SYSTIMER_SUPPORTED = y:
  25. systimer (noflash)
  26. if GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL = y:
  27. sleep_gpio:gpio_sleep_mode_config_apply (noflash)
  28. if SOC_PM_CPU_RETENTION_BY_RTCCNTL = y && (SOC_PM_SUPPORT_CPU_PD = y || SOC_PM_SUPPORT_TAGMEM_PD = y):
  29. sleep_cpu:sleep_enable_cpu_retention (noflash)
  30. if SOC_PM_SUPPORT_CPU_PD = y:
  31. sleep_cpu:cpu_domain_pd_allowed (noflash)
  32. if SOC_PM_SUPPORT_TOP_PD = y:
  33. sleep_clock:clock_domain_pd_allowed (noflash)
  34. sleep_system_peripheral:peripheral_domain_pd_allowed (noflash)
  35. sleep_modem:modem_domain_pd_allowed (noflash)
  36. sleep_modem:periph_inform_out_light_sleep_overhead (noflash)
  37. sar_periph_ctrl:sar_periph_ctrl_power_disable (noflash)
  38. [mapping:esp_system_pm]
  39. archive: libesp_system.a
  40. entries:
  41. if PM_RTOS_IDLE_OPT = y:
  42. freertos_hooks:esp_vApplicationIdleHook (noflash)
  43. if PM_SLP_IRAM_OPT = y:
  44. task_wdt:idle_hook_cb (noflash)
  45. task_wdt:task_wdt_timer_feed (noflash)
  46. task_wdt:find_entry_and_check_all_reset (noflash)
  47. task_wdt:find_entry_from_task_handle_and_check_all_reset (noflash)
  48. task_wdt:esp_task_wdt_reset (noflash)
  49. task_wdt:esp_task_wdt_reset_user (noflash)
  50. if ESP_TASK_WDT_USE_ESP_TIMER = y:
  51. task_wdt_impl_esp_timer:esp_task_wdt_impl_timer_feed (noflash)
  52. else:
  53. task_wdt_impl_timergroup:esp_task_wdt_impl_timer_feed (noflash)
  54. [mapping:esp_timer_pm]
  55. archive: libesp_timer.a
  56. entries:
  57. if PM_SLP_IRAM_OPT = y:
  58. esp_timer_impl_common:esp_timer_impl_lock (noflash)
  59. esp_timer_impl_common:esp_timer_impl_unlock (noflash)
  60. if ESP_TIMER_IMPL_TG0_LAC = y:
  61. esp_timer_impl_lac:esp_timer_impl_advance (noflash)
  62. esp_timer_impl_lac:esp_timer_impl_set (noflash)
  63. elif ESP_TIMER_IMPL_SYSTIMER = y:
  64. esp_timer_impl_systimer:esp_timer_impl_advance (noflash)
  65. esp_timer_impl_systimer:esp_timer_impl_set (noflash)
  66. [mapping:newlib_pm]
  67. archive: libnewlib.a
  68. entries:
  69. if PM_SLP_IRAM_OPT = y:
  70. esp_time_impl:esp_time_impl_set_boot_time (noflash)
  71. esp_time_impl:esp_time_impl_get_boot_time (noflash)
  72. esp_time_impl:esp_set_time_from_rtc (noflash)
  73. [mapping:driver_pm]
  74. archive: libesp_driver_gpio.a
  75. entries:
  76. if GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL = y:
  77. gpio:gpio_sleep_pupd_config_unapply (noflash)
  78. if PM_SLP_IRAM_OPT = y:
  79. gpio:gpio_sleep_pupd_config_apply (noflash)
  80. [mapping:hal_pm]
  81. archive: libhal.a
  82. entries:
  83. if GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL = y:
  84. if PM_SLP_IRAM_OPT = y:
  85. gpio_hal_workaround (noflash)
  86. else:
  87. gpio_hal_workaround:gpio_hal_sleep_pupd_config_unapply (noflash)
  88. gpio_hal_workaround:gpio_hal_sleep_mode_setup_wrapper (noflash)
  89. gpio_hal_workaround:gpio_hal_fun_pupd_restore (noflash)
  90. if SOC_PM_CPU_RETENTION_BY_RTCCNTL = y:
  91. if PM_SLP_IRAM_OPT = y && PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP = y:
  92. rtc_cntl_hal:rtc_cntl_hal_enable_cpu_retention (noflash)
  93. if PM_SLP_IRAM_OPT = y && PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP = y:
  94. rtc_cntl_hal:rtc_cntl_hal_enable_tagmem_retention (noflash)