[U-Boot] [Uboot-stm32] [PATCH v2 03/16] dfu: sf: add partition support for nor backend

Patrick DELAUNAY
2019-10-11T08:05:55Z

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"))
> > + dfu->data.sf.ubi = 1;
> > } else {
> > printf("%s: Memory layout (%s) not supported!\n", __func__, st);
> > 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