diff --git a/extra_scripts/ld_response_file.py b/extra_scripts/ld_response_file.py new file mode 100644 index 000000000..0b91cf862 --- /dev/null +++ b/extra_scripts/ld_response_file.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python3 +# force linker response file instead of command line arguments + +Import("env") + + +def wrap_with_tempfile(command_key): + command = env.get(command_key) + if not command or not isinstance(command, str): + return + if "TEMPFILE(" in command: + return + env.Replace(**{command_key: "${TEMPFILE('%s')}" % command}) + + +# Force SCons to spill long commands into response files on this target. +env.Replace(MAXLINELENGTH=8192) + +for key in ("LINKCOM", "CXXLINKCOM", "SHLINKCOM", "SHCXXLINKCOM"): + wrap_with_tempfile(key) diff --git a/src/Power.cpp b/src/Power.cpp index 9677d85a8..b37424b24 100644 --- a/src/Power.cpp +++ b/src/Power.cpp @@ -437,7 +437,7 @@ class AnalogBatteryLevel : public HasBatteryLevel voltage_mv = (int)((raw / max_code) * DEFAULT_VREF); } scaled = voltage_mv * operativeAdcMultiplier; -#else // block for all other platforms +#else // block for all other platforms #ifdef ARCH_NRF52 concurrency::LockGuard saadcGuard(concurrency::nrf52SaadcLock); #endif @@ -735,19 +735,19 @@ bool Power::analogInit() } } - adc_oneshot_chan_cfg_t config = { + adc_oneshot_chan_cfg_t chan_cfg = { .atten = atten, .bitwidth = adc_width, }; - esp_err_t err = adc_oneshot_config_channel(adc_handle, adc_channel, &config); + esp_err_t err = adc_oneshot_config_channel(adc_handle, adc_channel, &chan_cfg); if (err != ESP_OK) { LOG_ERROR("ADC channel config failed: %s", esp_err_to_name(err)); return false; } adc_calibrated = initAdcCalibration(); -#endif // ARCH_ESP32 +#endif // ARCH_ESP32 // NRF52 ADC init moved to powerHAL_init in nrf52 platform diff --git a/variants/esp32p4/esp32p4.ini b/variants/esp32p4/esp32p4.ini index f51ed1975..44094ee04 100644 --- a/variants/esp32p4/esp32p4.ini +++ b/variants/esp32p4/esp32p4.ini @@ -15,6 +15,10 @@ build_flags = build_src_filter = ${esp32_common.build_src_filter} - - - - - - - +extra_scripts = + ${esp32_common.extra_scripts} + extra_scripts/ld_response_file.py + ; Override esp32_common component pruning: keep esp_hosted + esp_wifi_remote for P4 hosted BT custom_component_remove = espressif/esp_modem diff --git a/variants/esp32s3/t5s3_epaper/variant.h b/variants/esp32s3/t5s3_epaper/variant.h index 803b582af..2459af967 100644 --- a/variants/esp32s3/t5s3_epaper/variant.h +++ b/variants/esp32s3/t5s3_epaper/variant.h @@ -1,3 +1,4 @@ +#include "pins_arduino.h" // Display (E-Ink) ED047TC1 - 8bit parallel #define EPD_WIDTH 960