@ -10,6 +10,8 @@
# include <asm/io.h>
# ifdef CONFIG_LS1043A
# include <asm/arch/immap_lsch2.h>
# elif defined(CONFIG_FSL_LSCH3)
# include <asm/arch/immap_lsch3.h>
# else
# include <asm/immap_85xx.h>
# endif
@ -285,7 +287,7 @@ static int set_voltage(int i2caddress, int vdd)
int adjust_vdd ( ulong vdd_override )
{
int re_enable = disable_interrupts ( ) ;
# ifdef CONFIG_LS1043A
# if defined(CONFIG_LS1043A) || defined(CONFIG_FSL_LSCH3)
struct ccsr_gur * gur = ( void * ) ( CONFIG_SYS_FSL_GUTS_ADDR ) ;
# else
ccsr_gur_t __iomem * gur =
@ -362,7 +364,11 @@ int adjust_vdd(ulong vdd_override)
}
/* get the voltage ID from fuse status register */
# ifdef CONFIG_FSL_LSCH3
fusesr = in_le32 ( & gur - > dcfg_fusesr ) ;
# else
fusesr = in_be32 ( & gur - > dcfg_fusesr ) ;
# endif
/*
* VID is used according to the table below
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -387,6 +393,13 @@ int adjust_vdd(ulong vdd_override)
vid = ( fusesr > > FSL_CHASSIS2_DCFG_FUSESR_VID_SHIFT ) &
FSL_CHASSIS2_DCFG_FUSESR_VID_MASK ;
}
# elif defined(CONFIG_FSL_LSCH3)
vid = ( fusesr > > FSL_CHASSIS3_DCFG_FUSESR_ALTVID_SHIFT ) &
FSL_CHASSIS3_DCFG_FUSESR_ALTVID_MASK ;
if ( ( vid = = 0 ) | | ( vid = = FSL_CHASSIS3_DCFG_FUSESR_ALTVID_MASK ) ) {
vid = ( fusesr > > FSL_CHASSIS3_DCFG_FUSESR_VID_SHIFT ) &
FSL_CHASSIS3_DCFG_FUSESR_VID_MASK ;
}
# else
vid = ( fusesr > > FSL_CORENET_DCFG_FUSESR_ALTVID_SHIFT ) &
FSL_CORENET_DCFG_FUSESR_ALTVID_MASK ;