
Hi Lukasz,
Sent: jeudi 10 octobre 2019 12:11 To: Patrick DELAUNAY patrick.delaunay@st.com
Hi Patrick,
Copy the partition support from NAND backend to SF, support part and partubi option. In case of ubi partition, erase the rest of the partition as it is mandatory for UBI.
for example:
U-Boot> env set dfu_alt_info "spl part 0 1;\ u-boot part 0 2;u-boot-env part 0 3;UBI partubi 0 4" U-Boot> dfu 0 sf 0:0:10000000:0
Acked-by: Lukasz Majewski lukma@denx.de Signed-off-by: Patrick Delaunay patrick.delaunay@st.com
Changes in v2:
- Update dfu documentation for callbacks
<snip>
This patch causes a build break on e.g. mx6sabreauto
drivers/built-in.o: In function `dfu_fill_entity_sf': build/../drivers/dfu/dfu_sf.c:176: undefined reference to `mtdparts_init' build/../drivers/dfu/dfu_sf.c:178: undefined reference to `find_dev_and_part'
To reproduce: ./tools/buildman/buildman.py --branch=HEAD mx6sabreauto --show_errors -- force-build --count=22 --output-dir=../BUILD/
Branch: github-lmajewski-dfu/testing https://github.com/lmajewski/u-boot-dfu/commits/testing
Corresponding output from travis-ci: https://travis-ci.org/lmajewski/u-boot-dfu/builds/595994620
(Please inspect all failed builds and resend v3)
I am working to solve it, v3 will occur sooen.
if (ret != 0) {
printf("Could not locate '%s'\n", mtd_id);
return -1;
}
dfu->data.sf.start = pi->offset;
dfu->data.sf.size = pi->size;
if (!strcmp(st, "partubi"))
} else { printf("%s: Memory layout (%s) not supported!\n", __func__, st);dfu->data.sf.ubi = 1;
spi_flash_free(dfu->data.sf.dev); diff --git a/include/dfu.h b/include/dfu.h index 145a1576a3..bf51ab74a5 100644 --- a/include/dfu.h +++ b/include/dfu.h @@ -77,6 +77,8 @@ struct sf_internal_data { /* RAW programming */ u64 start; u64 size;
- /* for sf/ubi use */
- unsigned int ubi;
};
#define DFU_NAME_SIZE 32
Best regards,
Lukasz Majewski
--
Regard
Patrick