@ -14,6 +14,8 @@
# include "asm/immap_qe.h"
# include "asm/immap_qe.h"
# include "qe.h"
# include "qe.h"
# define MPC85xx_DEVDISR_QE_DISABLE 0x1
qe_map_t * qe_immr = NULL ;
qe_map_t * qe_immr = NULL ;
static qe_snum_t snums [ QE_NUM_OF_SNUM ] ;
static qe_snum_t snums [ QE_NUM_OF_SNUM ] ;
@ -317,7 +319,9 @@ int qe_upload_firmware(const struct qe_firmware *firmware)
size_t calc_size = sizeof ( struct qe_firmware ) ;
size_t calc_size = sizeof ( struct qe_firmware ) ;
size_t length ;
size_t length ;
const struct qe_header * hdr ;
const struct qe_header * hdr ;
# ifdef CONFIG_DEEP_SLEEP
ccsr_gur_t * gur = ( void * ) ( CONFIG_SYS_MPC85xx_GUTS_ADDR ) ;
# endif
if ( ! firmware ) {
if ( ! firmware ) {
printf ( " Invalid address \n " ) ;
printf ( " Invalid address \n " ) ;
return - EINVAL ;
return - EINVAL ;
@ -330,6 +334,9 @@ int qe_upload_firmware(const struct qe_firmware *firmware)
if ( ( hdr - > magic [ 0 ] ! = ' Q ' ) | | ( hdr - > magic [ 1 ] ! = ' E ' ) | |
if ( ( hdr - > magic [ 0 ] ! = ' Q ' ) | | ( hdr - > magic [ 1 ] ! = ' E ' ) | |
( hdr - > magic [ 2 ] ! = ' F ' ) ) {
( hdr - > magic [ 2 ] ! = ' F ' ) ) {
printf ( " Not a microcode \n " ) ;
printf ( " Not a microcode \n " ) ;
# ifdef CONFIG_DEEP_SLEEP
setbits_be32 ( & gur - > devdisr , MPC85xx_DEVDISR_QE_DISABLE ) ;
# endif
return - EPERM ;
return - EPERM ;
}
}