83xx/85xx/86xx: LBC register cleanup
Currently, 83xx, 86xx, and 85xx have a lot of duplicated code dedicated to defining and manipulating the LBC registers. Merge this into a single spot. To do this, we have to decide on a common name for the data structure that holds the lbc registers - it will now be known as fsl_lbc_t, and we adopt a common name for the immap layouts that include the lbc - this was previously known as either im_lbc or lbus; use the former. In addition, create accessors for the BR/OR regs that use in/out_be32 and use those instead of the mismash of access methods currently in play. I have done a successful ppc build all and tested a board or two from each processor family. Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org> Acked-by: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
This commit is contained in:
@@ -56,8 +56,6 @@ int checkboard(void)
|
||||
*/
|
||||
static void flash_cs_fixup(void)
|
||||
{
|
||||
immap_t *immap = (immap_t *)CONFIG_SYS_IMMR;
|
||||
ccsr_lbc_t *lbc = &immap->im_lbc;
|
||||
int flash_sel;
|
||||
|
||||
/*
|
||||
@@ -70,11 +68,11 @@ static void flash_cs_fixup(void)
|
||||
printf("FLASH: Executed from FLASH%d\n", flash_sel ? 2 : 1);
|
||||
|
||||
if (flash_sel) {
|
||||
out_be32(&lbc->br0, CONFIG_SYS_BR1_PRELIM);
|
||||
out_be32(&lbc->or0, CONFIG_SYS_OR1_PRELIM);
|
||||
set_lbc_br(0, CONFIG_SYS_BR1_PRELIM);
|
||||
set_lbc_or(0, CONFIG_SYS_OR1_PRELIM);
|
||||
|
||||
out_be32(&lbc->br1, CONFIG_SYS_BR0_PRELIM);
|
||||
out_be32(&lbc->or1, CONFIG_SYS_OR0_PRELIM);
|
||||
set_lbc_br(1, CONFIG_SYS_BR0_PRELIM);
|
||||
set_lbc_or(1, CONFIG_SYS_OR0_PRELIM);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ extern void ft_board_pci_setup(void *blob, bd_t *bd);
|
||||
|
||||
int checkboard(void)
|
||||
{
|
||||
volatile ccsr_lbc_t *lbc = (void *)(CONFIG_SYS_MPC85xx_LBC_ADDR);
|
||||
volatile fsl_lbc_t *lbc = LBC_BASE_ADDR;
|
||||
volatile ccsr_local_ecm_t *ecm = (void *)(CONFIG_SYS_MPC85xx_ECM_ADDR);
|
||||
char *s;
|
||||
|
||||
@@ -65,7 +65,6 @@ int checkboard(void)
|
||||
|
||||
static void flash_cs_fixup(void)
|
||||
{
|
||||
volatile ccsr_lbc_t *lbc = (void *)(CONFIG_SYS_MPC85xx_LBC_ADDR);
|
||||
int flash_sel;
|
||||
|
||||
/*
|
||||
@@ -78,11 +77,11 @@ static void flash_cs_fixup(void)
|
||||
printf("FLASH: Executed from FLASH%d\n", flash_sel ? 2 : 1);
|
||||
|
||||
if (flash_sel) {
|
||||
out_be32(&lbc->br0, CONFIG_SYS_BR1_PRELIM);
|
||||
out_be32(&lbc->or0, CONFIG_SYS_OR1_PRELIM);
|
||||
set_lbc_br(0, CONFIG_SYS_BR1_PRELIM);
|
||||
set_lbc_or(0, CONFIG_SYS_OR1_PRELIM);
|
||||
|
||||
out_be32(&lbc->br1, CONFIG_SYS_BR0_PRELIM);
|
||||
out_be32(&lbc->or1, CONFIG_SYS_OR0_PRELIM);
|
||||
set_lbc_br(1, CONFIG_SYS_BR0_PRELIM);
|
||||
set_lbc_or(1, CONFIG_SYS_OR0_PRELIM);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -58,7 +58,6 @@ int checkboard(void)
|
||||
|
||||
static void flash_cs_fixup(void)
|
||||
{
|
||||
volatile ccsr_lbc_t *lbc = (void *)(CONFIG_SYS_MPC85xx_LBC_ADDR);
|
||||
int flash_sel;
|
||||
|
||||
/*
|
||||
@@ -71,11 +70,11 @@ static void flash_cs_fixup(void)
|
||||
printf("FLASH: Executed from FLASH%d\n", flash_sel ? 2 : 1);
|
||||
|
||||
if (flash_sel) {
|
||||
out_be32(&lbc->br0, CONFIG_SYS_BR1_PRELIM);
|
||||
out_be32(&lbc->or0, CONFIG_SYS_OR1_PRELIM);
|
||||
set_lbc_br(0, CONFIG_SYS_BR1_PRELIM);
|
||||
set_lbc_or(0, CONFIG_SYS_OR1_PRELIM);
|
||||
|
||||
out_be32(&lbc->br1, CONFIG_SYS_BR0_PRELIM);
|
||||
out_be32(&lbc->or1, CONFIG_SYS_OR0_PRELIM);
|
||||
set_lbc_br(1, CONFIG_SYS_BR0_PRELIM);
|
||||
set_lbc_or(1, CONFIG_SYS_OR0_PRELIM);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user