- Due to an update of U-Boot I need to repartition the flash mem.
Why? You need to "nand erase.part <u-boot-partition>" or "nand erase <offset> <size>" the same U-Boot locations and nand write there new U-boot. Why repartition?
NAND partitioning is done defining U-Boot default mtdparts variable. You may temporarily edit this variable to repartition NAND, but in case U-Boot environment settings are lost, default mtdparts shouldn't lead to disasters on rootfs or othe partitions.
- According to the VybridRM the start partition holds the Firmware Configuration Block (FCB) containing primary/secondary U-Boot addresses.
Which program writes the initial values into flash ?
Toradex U-Boot had writebcb command, which was used to create BCB taking primary and optional secondary U-boot offsets in NAND and write created BCB to start of NAND. Alternatively you may create BCB file on PC, deliver somehow to U-Boot on target and nand write it.
- What is the second partition at the end of the flash used for ? Bad Block Marking Table ?
It is up to you or your SOM vendor. Minimally mtdparts should include 3 partitions, one reserved for BCB, one or two for U-Boot copies, one for UBI (which may include several UBI volumes) or any other kind for partition(s) for rootfs, device tree and kernel.