[U-Boot] [Patch v2 07/16] net/fm: fix MDIO controller base on FMAN2

Scott Wood scottwood at freescale.com
Fri Sep 18 07:13:10 CEST 2015


On Thu, 2015-09-17 at 22:49 -0500, Xie Shaohui-B21989 wrote:
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Friday, September 18, 2015 2:05 AM
> > To: Gong Qianyu-B52263
> > Cc: u-boot at lists.denx.de; Hu Mingkai-B21284; Sun York-R58495; Hou
> > Zhiqiang-B48286; Song Wenbin-B53747; Xie Shaohui-B21989; Wood Scott-
> > B07421
> > Subject: Re: [Patch v2 07/16] net/fm: fix MDIO controller base on FMAN2
> > 
> > On Thu, 2015-09-17 at 15:06 +0800, Gong Qianyu wrote:
> > > From: Shaohui Xie <Shaohui.Xie at freescale.com>
> > > 
> > > MDIO controller base on FMAN2 was defined as CONFIG_SYS_FSL_FM2_ADDR
> > > plus offset, but CONFIG_SYS_FSL_FM2_ADDR only defined when there are
> > > two FMANs, so we should only define MDIO controller base on FMAN2 when
> > > there is FMAN2.
> > > 
> > > Signed-off-by: Shaohui Xie <Shaohui.Xie at freescale.com>
> > > Signed-off-by: Mingkai Hu <Mingkai.Hu at freescale.com>
> > > Signed-off-by: Gong Qianyu <Qianyu.Gong at freescale.com>
> > > ---
> > >  include/fm_eth.h | 17 +++++++++++++++++
> > >  1 file changed, 17 insertions(+)
> > > 
> > > diff --git a/include/fm_eth.h b/include/fm_eth.h index
> > > 3e1b9f4..d43f801 100644
> > > --- a/include/fm_eth.h
> > > +++ b/include/fm_eth.h
> > > @@ -45,8 +45,10 @@ enum fm_eth_type {
> > >  #ifdef CONFIG_SYS_FMAN_V3
> > >  #define CONFIG_SYS_FM1_DTSEC_MDIO_ADDR       (CONFIG_SYS_FSL_FM1_ADDR
> > + 0xfc000)
> > >  #define CONFIG_SYS_FM1_TGEC_MDIO_ADDR        (CONFIG_SYS_FSL_FM1_ADDR
> > + 0xfd000)
> > > +#if (CONFIG_SYS_NUM_FMAN == 2)
> > >  #define CONFIG_SYS_FM2_DTSEC_MDIO_ADDR       (CONFIG_SYS_FSL_FM2_ADDR
> > + 0xfc000)
> > >  #define CONFIG_SYS_FM2_TGEC_MDIO_ADDR        (CONFIG_SYS_FSL_FM2_ADDR
> > + 0xfd000)
> > > +#endif
> > >  #else
> > >  #define CONFIG_SYS_FM1_DTSEC1_MDIO_ADDR      (CONFIG_SYS_FSL_FM1_ADDR
> > + 0xe1120)
> > >  #define CONFIG_SYS_FM1_TGEC_MDIO_ADDR        (CONFIG_SYS_FSL_FM1_ADDR
> > + 0xf1000)
> > > @@ -89,6 +91,7 @@ enum fm_eth_type {
> > >                                offsetof(struct ccsr_fman,
> > > memac[n-1]),\  }  #else
> > > +#if (CONFIG_SYS_NUM_FMAN == 2)
> > > #define FM_TGEC_INFO_INITIALIZER(idx, n) \
> > >  {                                                                    \
> > >       FM_ETH_INFO_INITIALIZER(idx, CONFIG_SYS_FM2_TGEC_MDIO_ADDR)     \
> > > @@ -101,6 +104,20 @@ enum fm_eth_type {
> > >       .compat_offset  = CONFIG_SYS_FSL_FM##idx##_OFFSET +             \
> > >                               offsetof(struct ccsr_fman,
> > > memac[n-1+8]),\  }
> > > +#else
> > > +#define FM_TGEC_INFO_INITIALIZER(idx, n) \
> > > +{                                                                    \
> > > +     FM_ETH_INFO_INITIALIZER(idx, CONFIG_SYS_FM1_TGEC_MDIO_ADDR)     \
> > > +     .index          = idx,                                          \
> > > +     .num            = n - 1,                                        \
> > > +     .type           = FM_ETH_10G_E,                                 \
> > > +     .port           = FM##idx##_10GEC##n,                           \
> > > +     .rx_port_id     = RX_PORT_10G_BASE + n - 1,                     \
> > > +     .tx_port_id     = TX_PORT_10G_BASE + n - 1,                     \
> > > +     .compat_offset  = CONFIG_SYS_FSL_FM##idx##_OFFSET +             \
> > > +                             offsetof(struct ccsr_fman,
> > > +memac[n-1+8]),\ } #endif
> > >  #endif
> > 
> > doc/README.fsl-dpaa says that CONFIG_FSL_FM_10GEC_REGULAR_NOTATION is for
> > newer SoCs.  Presumably this patch is for ls1043a -- is that not
> > considered a newer SoC?  Or does the README need to be fixed?
> [S.H] Yes, this is for LS1043A. LS1043A has one FMAN same as T2080. 
> A new SoC but has an old DPAA.

So maybe the README should be changed to more accurately talk about FMan 
versions?

-Scott




More information about the U-Boot mailing list