@ -22,6 +22,24 @@
# include <asm/byteorder.h>
# include <asm/byteorder.h>
# include <asm/io.h>
# include <asm/io.h>
# if defined(CONFIG_FIT)
/**
* get_default_image ( ) - Return default property from / images
*
* Return : Pointer to value of default property ( or NULL )
*/
static const char * get_default_image ( const void * fit )
{
int images_noffset ;
images_noffset = fdt_path_offset ( fit , FIT_IMAGES_PATH ) ;
if ( images_noffset < 0 )
return NULL ;
return fdt_getprop ( fit , images_noffset , FIT_DEFAULT_PROP , NULL ) ;
}
# endif
int
int
source ( ulong addr , const char * fit_uname )
source ( ulong addr , const char * fit_uname )
{
{
@ -87,17 +105,20 @@ source (ulong addr, const char *fit_uname)
# endif
# endif
# if defined(CONFIG_FIT)
# if defined(CONFIG_FIT)
case IMAGE_FORMAT_FIT :
case IMAGE_FORMAT_FIT :
if ( fit_uname = = NULL ) {
puts ( " No FIT subimage unit name \n " ) ;
return 1 ;
}
fit_hdr = buf ;
fit_hdr = buf ;
if ( ! fit_check_format ( fit_hdr ) ) {
if ( ! fit_check_format ( fit_hdr ) ) {
puts ( " Bad FIT image format \n " ) ;
puts ( " Bad FIT image format \n " ) ;
return 1 ;
return 1 ;
}
}
if ( ! fit_uname )
fit_uname = get_default_image ( fit_hdr ) ;
if ( ! fit_uname ) {
puts ( " No FIT subimage unit name \n " ) ;
return 1 ;
}
/* get script component image node offset */
/* get script component image node offset */
noffset = fit_image_get_node ( fit_hdr , fit_uname ) ;
noffset = fit_image_get_node ( fit_hdr , fit_uname ) ;
if ( noffset < 0 ) {
if ( noffset < 0 ) {