On Tue, Jan 5, 2016 at 2:50 PM, Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> wrote: > On 01/05/2016 02:05 PM, Yegor Yefremov wrote: >>>>>> What about unsigned images? >>>>> >>>>> That's not our use case. We use plain zImages instead. >>>> >>>> The solution would be to introduce an option like in U-Boot? >>>> >>>> CONFIG_FIT_SIGNATURE: >>>> >>>> This option enables signature verification of FIT uImages, >>>> using a hash signed and verified using RSA. If >>>> CONFIG_SHA_PROG_HW_ACCEL is defined, i.e support for progressive >>>> hashing is available using hardware, RSA library will use it. >>>> See doc/uImage.FIT/signature.txt for more details. >>> >>> Technically possible, but I'm not sure what are the benefits of using >>> fit images, if you don't need signatures. barebox implements >>> freedesktop.org's bootspec and this is IMHO the way to go. >> >> For me FIT is just a way to have a kernel and a bunch of device tree >> blobs in one file. Signed or not signed is an option for me. Just like >> U-Boot implements it. This is user responsibility. > > Send patches. :D I'll prepare one on top of yours. So far I can boot into Linux on my am335x based board, so Tested-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> >> In my use case I just read device ID from EEPROM, load my >> kernel-fit.itb and select needed DTB via this ID. This way I have only >> one SD card image, that can be run on more, than 10 different devices >> using the same core module. > >>>>>> I also get: unsupported algo crc32 >>>>>> Is it intended to be supported? >>>>> >>>>> Not for our usecase - feel free to add crc32 support. >>>> >>>> OK. >>>> >>>> But what about FIT configuration selection syntax? >>> >>> What's this? >> >> Have you seen my comments to this patch regarding >> fit_open_configuration() routine? > > sorry - I've missed that. Too many quoted lines. :D > >>> > +static int fit_open_configuration(struct fit_handle *handle, int num) >>> > +{ >>> > + struct device_node *conf_node = NULL, *sig_node; >>> > + char unit_name[10]; >>> > + const char *unit, *desc; >>> > + int ret, level; >>> > + >>> > + conf_node = of_get_child_by_name(handle->root, "configurations"); >>> > + if (!conf_node) >>> > + return -ENOENT; >>> > + >>> > + if (num) { >>> > + snprintf(unit_name, sizeof(unit_name), "conf@%d", num); >> >> This is not working for my *.its file: >> https://github.com/visionsystemsgmbh/onrisc_br_bsp/blob/master/board/vscom/baltos/kernel-fit.its >> U-Boot is working with bootm ${loadaddr}#conf${board_name} >> >> For Barebox I've changed this line to >> >> snprintf(unit_name, sizeof(unit_name), "conf%d@1", num) >> >> This is how I start Linux: bootm /boot/kernel-fit.itb@$global.board.id >> >> What is the standard for providing FIT configuration? > > Don't know. Is there a spec in the u-boot sources, otherwise use the code. Will look closer at U-Boot code and send a patch. _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox