]> granicus.if.org Git - esp-idf/commitdiff
esp32: Adds support for SW breakpoints in flash
authorAlexey Gerenkov <alexey@espressif.com>
Sun, 18 Mar 2018 09:27:19 +0000 (12:27 +0300)
committerAlexey Gerenkov <alexey@espressif.com>
Thu, 26 Apr 2018 07:17:02 +0000 (10:17 +0300)
Disables app image integrity checks when running under OpenOCD control.
Allows setting breakpoints in flash before application start (just after reset).

components/bootloader_support/src/esp_image_format.c

index c65020595bd7c9ffc88184cffd3a56edae6d8bd4..92acf3b025de522b9a3063cd36ef3e8b9730b516 100644 (file)
@@ -157,11 +157,12 @@ goto err;
 
     data->image_len = end_addr - data->start_addr;
     ESP_LOGV(TAG, "image start 0x%08x end of last section 0x%08x", data->start_addr, end_addr);
-    err = verify_checksum(sha_handle, checksum_word, data);
-    if (err != ESP_OK) {
-        goto err;
+    if (!esp_cpu_in_ocd_debug_mode()) {
+        err = verify_checksum(sha_handle, checksum_word, data);
+        if (err != ESP_OK) {
+            goto err;
+        }
     }
-
     if (data->image_len > part->size) {
         FAIL_LOAD("Image length %d doesn't fit in partition length %d", data->image_len, part->size);
     }
@@ -178,7 +179,7 @@ goto err;
         err = verify_secure_boot_signature(sha_handle, data);
 #else
         // No secure boot, but SHA-256 can be appended for basic corruption detection
-        if (sha_handle != NULL) {
+        if (sha_handle != NULL && !esp_cpu_in_ocd_debug_mode()) {
             err = verify_simple_hash(sha_handle, data);
         }
 #endif // CONFIG_SECURE_BOOT_ENABLED