mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-04 13:14:32 +02:00
esp_partition: add test, docs for ESP_PARTITION_TYPE_ANY
This commit is contained in:
@@ -28,6 +28,15 @@ TEST_CASE("Can read partition table", "[partition]")
|
|||||||
}
|
}
|
||||||
esp_partition_iterator_release(it);
|
esp_partition_iterator_release(it);
|
||||||
TEST_ASSERT_EQUAL(5, count);
|
TEST_ASSERT_EQUAL(5, count);
|
||||||
|
|
||||||
|
it = esp_partition_find(ESP_PARTITION_TYPE_ANY, ESP_PARTITION_SUBTYPE_ANY, NULL);
|
||||||
|
TEST_ASSERT_NOT_NULL(it);
|
||||||
|
count = 0;
|
||||||
|
for (; it != NULL; it = esp_partition_next(it)) {
|
||||||
|
++count;
|
||||||
|
}
|
||||||
|
esp_partition_iterator_release(it);
|
||||||
|
TEST_ASSERT_EQUAL(8, count);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_CASE("Can write, read, mmap partition", "[partition][ignore]")
|
TEST_CASE("Can write, read, mmap partition", "[partition][ignore]")
|
||||||
|
@@ -125,7 +125,9 @@ typedef struct {
|
|||||||
/**
|
/**
|
||||||
* @brief Find partition based on one or more parameters
|
* @brief Find partition based on one or more parameters
|
||||||
*
|
*
|
||||||
* @param type Partition type, one of esp_partition_type_t values or an 8-bit unsigned integer
|
* @param type Partition type, one of esp_partition_type_t values or an 8-bit unsigned integer.
|
||||||
|
* To find all partitions, no matter the type, use ESP_PARTITION_TYPE_ANY, and set
|
||||||
|
* subtype argument to ESP_PARTITION_SUBTYPE_ANY.
|
||||||
* @param subtype Partition subtype, one of esp_partition_subtype_t values or an 8-bit unsigned integer.
|
* @param subtype Partition subtype, one of esp_partition_subtype_t values or an 8-bit unsigned integer.
|
||||||
* To find all partitions of given type, use ESP_PARTITION_SUBTYPE_ANY.
|
* To find all partitions of given type, use ESP_PARTITION_SUBTYPE_ANY.
|
||||||
* @param label (optional) Partition label. Set this value if looking
|
* @param label (optional) Partition label. Set this value if looking
|
||||||
@@ -141,7 +143,9 @@ esp_partition_iterator_t esp_partition_find(esp_partition_type_t type, esp_parti
|
|||||||
/**
|
/**
|
||||||
* @brief Find first partition based on one or more parameters
|
* @brief Find first partition based on one or more parameters
|
||||||
*
|
*
|
||||||
* @param type Partition type, one of esp_partition_type_t values or an 8-bit unsigned integer
|
* @param type Partition type, one of esp_partition_type_t values or an 8-bit unsigned integer.
|
||||||
|
* To find all partitions, no matter the type, use ESP_PARTITION_TYPE_ANY, and set
|
||||||
|
* subtype argument to ESP_PARTITION_SUBTYPE_ANY.
|
||||||
* @param subtype Partition subtype, one of esp_partition_subtype_t values or an 8-bit unsigned integer
|
* @param subtype Partition subtype, one of esp_partition_subtype_t values or an 8-bit unsigned integer
|
||||||
* To find all partitions of given type, use ESP_PARTITION_SUBTYPE_ANY.
|
* To find all partitions of given type, use ESP_PARTITION_SUBTYPE_ANY.
|
||||||
* @param label (optional) Partition label. Set this value if looking
|
* @param label (optional) Partition label. Set this value if looking
|
||||||
|
@@ -88,6 +88,11 @@ esp_partition_iterator_t esp_partition_find(esp_partition_type_t type,
|
|||||||
if (ensure_partitions_loaded() != ESP_OK) {
|
if (ensure_partitions_loaded() != ESP_OK) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
// Searching for a specific subtype without specifying the type doesn't make
|
||||||
|
// sense, and is likely a usage error.
|
||||||
|
if (type == ESP_PARTITION_TYPE_ANY && subtype != ESP_PARTITION_SUBTYPE_ANY) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
// create an iterator pointing to the start of the list
|
// create an iterator pointing to the start of the list
|
||||||
// (next item will be the first one)
|
// (next item will be the first one)
|
||||||
esp_partition_iterator_t it = iterator_create(type, subtype, label);
|
esp_partition_iterator_t it = iterator_create(type, subtype, label);
|
||||||
|
Reference in New Issue
Block a user