
Hi Prabhakar,
Thanks for your comments!
-----Original Message----- From: Prabhakar Kushwaha Sent: 2016年7月21日 12:28 To: york sun york.sun@nxp.com; Zhiqiang Hou zhiqiang.hou@nxp.com; u- boot@lists.denx.de; albert.u.boot@aribaud.net; wd@denx.de; alison.wang@freescale.com; Mingkai.Hu@freescale.com Cc: yao.yuan@freescale.com; Qianyu.Gong@freescale.com; bmeng.cn@gmail.com; Shengzhou Liu shengzhou.liu@nxp.com Subject: RE: [PATCH 1/5] fsl: serdes: ensure accessing the initialized maps of serdes protocol
Hi Zhiqiang,
Sorry for late queries.
As per description of patch " Up to now, the function is_serdes_configed() doesn't check if the map of serdes protocol is initialized before accessing it. The function is_serdes_configed() will get wrong result when it was called before the serdes protocol maps initialized. As the first eliment of the map isn't used for any device, so use it as the flag to indicate if the map has been initialized."
I am just wondering the use-case/situation where this can happen. Can you please help me with understanding.
fsl_serdes_init is called from arch_early_init_r in board_r.c. As per my understanding all the driver calling is_serdes_configed (SATA, PCIe, SGMII) etc requires DDR. So are we talking about moving any driver in board_f.c.
No, there isn't any driver will be moved to board_f.c. There is a pcie errata that need modify the PCIE's field of CSU according to the current serdes protocol, I just want to reuse the existed serdes protocol parse code, but the workaround function must be called before the arch_early_init_r.
Thanks, Zhiqiang