Commit 216f2a71 authored by Andy Fleming's avatar Andy Fleming Committed by Ben Warren

Add SGMII support for the 8544 DS

The 8544 DS has an optional SGMII Riser card, which uses different PHY
addresses.  Check if we are in SGMII mode, and invoke the SGMII Riser
setup code if so.
Signed-off-by: default avatarAndy Fleming <afleming@freescale.com>
Signed-off-by: default avatarBen Warren <biggerbadderben@gmail.com>
parent 652f7c2e
......@@ -32,8 +32,10 @@
#include <miiphy.h>
#include <libfdt.h>
#include <fdt_support.h>
#include <tsec.h>
#include "../common/pixis.h"
#include "../common/sgmii_riser.h"
#if defined(CONFIG_DDR_ECC) && !defined(CONFIG_ECC_INIT_VIA_DDRCONTROLLER)
extern void ddr_enable_ecc(unsigned int dram_size);
......@@ -463,6 +465,43 @@ get_board_sys_clk(ulong dummy)
return val;
}
#ifdef CONFIG_TSEC_ENET
int board_eth_init(bd_t *bis)
{
struct tsec_info_struct tsec_info[2];
volatile ccsr_gur_t *gur = (void *)(CFG_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))
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))
tsec_info[num].flags |= TSEC_SGMII;
num++;
#endif
if (!num) {
printf("No TSECs initialized\n");
return 0;
}
if (io_sel & 1)
fsl_sgmii_riser_init(tsec_info, num);
tsec_eth_init(bis, tsec_info, num);
return 0;
}
#endif
#if defined(CONFIG_OF_BOARD_SETUP)
void
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment