diff options
| -rw-r--r-- | board/freescale/mpc8536ds/mpc8536ds.c | 27 | ||||
| -rw-r--r-- | board/freescale/mpc8544ds/mpc8544ds.c | 20 | ||||
| -rw-r--r-- | board/freescale/mpc8572ds/mpc8572ds.c | 26 | ||||
| -rw-r--r-- | board/freescale/p1_p2_rdb/p1_p2_rdb.c | 8 | ||||
| -rw-r--r-- | board/freescale/p1_p2_rdb/pci.c | 3 | ||||
| -rw-r--r-- | board/freescale/p2020ds/p2020ds.c | 14 | 
6 files changed, 40 insertions, 58 deletions
| diff --git a/board/freescale/mpc8536ds/mpc8536ds.c b/board/freescale/mpc8536ds/mpc8536ds.c index cf92ba121..bd80cb776 100644 --- a/board/freescale/mpc8536ds/mpc8536ds.c +++ b/board/freescale/mpc8536ds/mpc8536ds.c @@ -194,7 +194,7 @@ void pci_init_board(void)  {  	ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);  	struct fsl_pci_info pci_info[4]; -	u32 devdisr, pordevsr, io_sel, sdrs2_io_sel; +	u32 devdisr, pordevsr, io_sel;  	u32 porpllsr, pci_agent, pci_speed, pci_32, pci_arb, pci_clk_sel;  	int first_free_busno = 0;  	int num = 0; @@ -205,18 +205,8 @@ void pci_init_board(void)  	pordevsr = in_be32(&gur->pordevsr);  	porpllsr = in_be32(&gur->porpllsr);  	io_sel = (pordevsr & MPC85xx_PORDEVSR_IO_SEL) >> 19; -	sdrs2_io_sel = (pordevsr & MPC85xx_PORDEVSR_SRDS2_IO_SEL) >> 27; -	debug("   pci_init_board: devdisr=%x, sdrs2_io_sel=%x, io_sel=%x\n", -		devdisr, sdrs2_io_sel, io_sel); - -	if (sdrs2_io_sel == 7) -		printf("Serdes2 disalbed\n"); -	else if (sdrs2_io_sel == 4) { -		printf("eTSEC1 is in sgmii mode.\n"); -		printf("eTSEC3 is in sgmii mode.\n"); -	} else if (sdrs2_io_sel == 6) -		printf("eTSEC1 is in sgmii mode.\n"); +	debug("   pci_init_board: devdisr=%x, io_sel=%x\n", devdisr, io_sel);  	puts("\n");  #ifdef CONFIG_PCIE3 @@ -354,14 +344,12 @@ int board_eth_init(bd_t *bis)  {  #ifdef CONFIG_TSEC_ENET  	struct tsec_info_struct tsec_info[2]; -	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);  	int num = 0; -	uint sdrs2_io_sel = -		(gur->pordevsr & MPC85xx_PORDEVSR_SRDS2_IO_SEL) >> 27;  #ifdef CONFIG_TSEC1  	SET_STD_TSEC_INFO(tsec_info[num], 1); -	if ((sdrs2_io_sel == 4) || (sdrs2_io_sel == 6)) { +	if (is_serdes_configured(SGMII_TSEC1)) { +		puts("eTSEC1 is in sgmii mode.\n");  		tsec_info[num].phyaddr = 0;  		tsec_info[num].flags |= TSEC_SGMII;  	} @@ -369,7 +357,8 @@ int board_eth_init(bd_t *bis)  #endif  #ifdef CONFIG_TSEC3  	SET_STD_TSEC_INFO(tsec_info[num], 3); -	if (sdrs2_io_sel == 4) { +	if (is_serdes_configured(SGMII_TSEC3)) { +		puts("eTSEC3 is in sgmii mode.\n");  		tsec_info[num].phyaddr = 1;  		tsec_info[num].flags |= TSEC_SGMII;  	} @@ -382,8 +371,10 @@ int board_eth_init(bd_t *bis)  	}  #ifdef CONFIG_FSL_SGMII_RISER -	if ((sdrs2_io_sel == 4) || (sdrs2_io_sel == 6)) +	if (is_serdes_configured(SGMII_TSEC1) || +	    is_serdes_configured(SGMII_TSEC3)) {  		fsl_sgmii_riser_init(tsec_info, num); +	}  #endif  	tsec_eth_init(bis, tsec_info, num); diff --git a/board/freescale/mpc8544ds/mpc8544ds.c b/board/freescale/mpc8544ds/mpc8544ds.c index 3285ceaa1..2b6900c08 100644 --- a/board/freescale/mpc8544ds/mpc8544ds.c +++ b/board/freescale/mpc8544ds/mpc8544ds.c @@ -119,12 +119,6 @@ void pci_init_board(void)  	debug ("   pci_init_board: devdisr=%x, io_sel=%x\n", devdisr, io_sel); -	if (io_sel & 1) { -		if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII1_DIS)) -			printf("eTSEC1 is in sgmii mode.\n"); -		if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) -			printf("eTSEC3 is in sgmii mode.\n"); -	}  	puts("\n");  #ifdef CONFIG_PCIE3 @@ -324,20 +318,22 @@ int board_eth_init(bd_t *bis)  {  #ifdef CONFIG_TSEC_ENET  	struct tsec_info_struct tsec_info[2]; -	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR); -	uint io_sel = (gur->pordevsr & MPC85xx_PORDEVSR_IO_SEL) >> 19;  	int num = 0;  #ifdef CONFIG_TSEC1  	SET_STD_TSEC_INFO(tsec_info[num], 1); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII1_DIS)) +	if (is_serdes_configured(SGMII_TSEC1)) { +		puts("eTSEC1 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  #ifdef CONFIG_TSEC3  	SET_STD_TSEC_INFO(tsec_info[num], 3); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) +	if (is_serdes_configured(SGMII_TSEC3)) { +		puts("eTSEC3 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif @@ -347,8 +343,10 @@ int board_eth_init(bd_t *bis)  		return 0;  	} -	if (io_sel & 1) +	if (is_serdes_configured(SGMII_TSEC1) || +	    is_serdes_configured(SGMII_TSEC3)) {  		fsl_sgmii_riser_init(tsec_info, num); +	}  	tsec_eth_init(bis, tsec_info, num); diff --git a/board/freescale/mpc8572ds/mpc8572ds.c b/board/freescale/mpc8572ds/mpc8572ds.c index 15a4d316c..c217c278e 100644 --- a/board/freescale/mpc8572ds/mpc8572ds.c +++ b/board/freescale/mpc8572ds/mpc8572ds.c @@ -177,15 +177,6 @@ void pci_init_board(void)  	debug ("   pci_init_board: devdisr=%x, io_sel=%x\n", devdisr, io_sel); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII1_DIS)) -		printf("eTSEC1 is in sgmii mode.\n"); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII2_DIS)) -		printf("eTSEC2 is in sgmii mode.\n"); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) -		printf("eTSEC3 is in sgmii mode.\n"); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII4_DIS)) -		printf("eTSEC4 is in sgmii mode.\n"); -  	puts("\n");  #ifdef CONFIG_PCIE3  	pcie_configured = is_serdes_configured(PCIE3); @@ -289,31 +280,38 @@ int board_early_init_r(void)  int board_eth_init(bd_t *bis)  {  	struct tsec_info_struct tsec_info[4]; -	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);  	int num = 0;  #ifdef CONFIG_TSEC1  	SET_STD_TSEC_INFO(tsec_info[num], 1); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII1_DIS)) +	if (is_serdes_configured(SGMII_TSEC1)) { +		puts("eTSEC1 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  #ifdef CONFIG_TSEC2  	SET_STD_TSEC_INFO(tsec_info[num], 2); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII2_DIS)) +	if (is_serdes_configured(SGMII_TSEC2)) { +		puts("eTSEC2 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  #ifdef CONFIG_TSEC3  	SET_STD_TSEC_INFO(tsec_info[num], 3); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) +	if (is_serdes_configured(SGMII_TSEC3)) { +		puts("eTSEC3 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  #ifdef CONFIG_TSEC4  	SET_STD_TSEC_INFO(tsec_info[num], 4); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII4_DIS)) +	if (is_serdes_configured(SGMII_TSEC4)) { +		puts("eTSEC4 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif diff --git a/board/freescale/p1_p2_rdb/p1_p2_rdb.c b/board/freescale/p1_p2_rdb/p1_p2_rdb.c index 1c4c0200e..440fcb924 100644 --- a/board/freescale/p1_p2_rdb/p1_p2_rdb.c +++ b/board/freescale/p1_p2_rdb/p1_p2_rdb.c @@ -26,6 +26,7 @@  #include <asm/mmu.h>  #include <asm/cache.h>  #include <asm/immap_85xx.h> +#include <asm/fsl_serdes.h>  #include <asm/io.h>  #include <miiphy.h>  #include <libfdt.h> @@ -166,10 +167,8 @@ int board_early_init_r(void)  int board_eth_init(bd_t *bis)  {  	struct tsec_info_struct tsec_info[4]; -	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);  	int num = 0;  	char *tmp; -	u32 pordevsr;  	unsigned int vscfw_addr;  #ifdef CONFIG_TSEC1 @@ -182,9 +181,10 @@ int board_eth_init(bd_t *bis)  #endif  #ifdef CONFIG_TSEC3  	SET_STD_TSEC_INFO(tsec_info[num], 3); -	pordevsr = in_be32(&gur->pordevsr); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) +	if (is_serdes_configured(SGMII_TSEC3)) { +		puts("eTSEC3 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  	if (!num) { diff --git a/board/freescale/p1_p2_rdb/pci.c b/board/freescale/p1_p2_rdb/pci.c index e95431b7a..2034459b6 100644 --- a/board/freescale/p1_p2_rdb/pci.c +++ b/board/freescale/p1_p2_rdb/pci.c @@ -53,9 +53,6 @@ void pci_init_board(void)  	devdisr = in_be32(&gur->devdisr);  	pordevsr = in_be32(&gur->pordevsr); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII2_DIS)) -		printf("eTSEC2 is in sgmii mode.\n"); -  	puts("\n");  #ifdef CONFIG_PCIE2  	pcie_configured = is_serdes_configured(PCIE2); diff --git a/board/freescale/p2020ds/p2020ds.c b/board/freescale/p2020ds/p2020ds.c index a40be1390..07b08014d 100644 --- a/board/freescale/p2020ds/p2020ds.c +++ b/board/freescale/p2020ds/p2020ds.c @@ -204,11 +204,6 @@ void pci_init_board(void)  	debug ("   pci_init_board: devdisr=%x, io_sel=%x\n", devdisr, io_sel); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII2_DIS)) -		printf("eTSEC2 is in sgmii mode.\n"); -	if (!(pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) -		printf("eTSEC3 is in sgmii mode.\n"); -  	puts("\n");  #ifdef CONFIG_PCIE2  	pcie_configured = is_serdes_configured(PCIE2); @@ -318,7 +313,6 @@ int board_early_init_r(void)  int board_eth_init(bd_t *bis)  {  	struct tsec_info_struct tsec_info[4]; -	volatile ccsr_gur_t *gur = (void *)(CONFIG_SYS_MPC85xx_GUTS_ADDR);  	int num = 0;  #ifdef CONFIG_TSEC1 @@ -327,14 +321,18 @@ int board_eth_init(bd_t *bis)  #endif  #ifdef CONFIG_TSEC2  	SET_STD_TSEC_INFO(tsec_info[num], 2); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII2_DIS)) +	if (is_serdes_configured(SGMII_TSEC2)) { +		puts("eTSEC2 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +	}  	num++;  #endif  #ifdef CONFIG_TSEC3  	SET_STD_TSEC_INFO(tsec_info[num], 3); -	if (!(gur->pordevsr & MPC85xx_PORDEVSR_SGMII3_DIS)) +	if (is_serdes_configured(SGMII_TSEC3)) { +		puts("eTSEC3 is in sgmii mode.\n");  		tsec_info[num].flags |= TSEC_SGMII; +}  	num++;  #endif |