Closes https://github.com/espressif/esp-idf/issues/11049
Closes https://github.com/espressif/esp-idf/pull/11057
Signed-off-by: KonstantinKondrashov <konstantin@espressif.com>
Result from an example in 11057:
When this option is not enabled:
1000 iterations took 10914 microseconds (10.9 microseconds per invocation)
1000 iterations took 10909 microseconds (10.9 microseconds per invocation)
When this option is enabled:
1000 iterations took 10960 microseconds (10.9 microseconds per invocation)
1000 iterations took 107 microseconds (0.1 microseconds per invocation)
Main change is possibility the log cache locking functions will
be called before the scheduler has started.
This change doesn't change the behaviour of ESP_EARLY_LOGx, this is
done in the following commit.
Closes https://github.com/espressif/esp-idf/issues/5542
This also removes logging implementation from bootloader and replaces it
with the one provided by the log component. Some occurrences of printf
and ets_printf have been changed to ESP_LOGx APIs.