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