We have interface ethernet switch KSZ8863RLL to LPC54606. I have been using the driver available in SDK (it works well with LPCExpresso Eval board where LAN8720 is used). Off course, I have changed the pin mapping in pinmux accordingly. I am getting message like 'cannot initialise PHY'.
I understand that NXP is not having any driver for KSZ8863RLL.
Currently I am unable to understand what is going wrong. I am looking for kind of guidance that will help me going forward.
Hi, Sharad,
I suppose that you have to modify the fsl_phy.c and fsl_phy.h. I copy the screenshot here, you can see the two files:
I have checked the schematics of FRDM-K64F board, it use KSZ8081RNACA as PHY, I think you can download the SDK package for FRDM-K64 board and refer to even copy the files:fsl_phy.c and fsl_phy.h in FRDM-K64F SDK package.
This is the schematics of FRDM-K64F.
Hope it can help you
BR
XiangJun rong
Hi XiangJun,
As per your suggestion, I have copied the fsl_phy.c and fsl_phy.h from
FRDM-K64F SDK package. I am getting lot of errors fsl_enet.c and
fsl_enet.h due to structural changes between FRDM-K64F and LPCExpresso
board/SDK.
I have copied the registers related to KSZ8863RLL from fsl_phy.h
(FRDM-K64F SDK).
Unfortunately, I am not getting required value (PHY_CONTROL_ID1=0x22)
from following code..
while ((idReg != PHY_CONTROL_ID1) && (delay != 0))
{
PHY_Read(base, phyAddr, PHY_ID1_REG, &idReg);
delay--;
}
what else I can check or do to make this working?
Your input will help me go further.
Regards,
Sharad Shinde