Tool/software: Linux
Hello.
I am about to try LAN communication with a hub function with a combination of ARM3352 for CPU and ksz9896C for PHY, but it will not go well.
There is no linux driver of ksz9896C anywhere, nor is it mentioned at the manufacturer site,
I am using the driver of ksz9897 experimentally.
The ARM335x and ksz9896C are connected by I2C2, and the register reading and writing of ksz9896C are normally done from the CPU.
However, the ARM3352 can not recognize the existence of the PHY.
It is a log called "no live phy".
[ 0.960916] libphy: Fixed MDIO Bus: probed
[ 1.021449] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[ 1.027582] davinci_mdio 4a101000.mdio: no live phy, scanning all
[ 1.038308] davinci_mdio: probe of 4a101000.mdio failed with error -5
After this, the probe of the i2c group is called, in which the driver of ksz9897 is called
I have acquired the chip id normally.
[ 1.697140] i2c-ksz9897 2-005f: chip id 0x00989600
Initially, thinking whether this order is illegal, modularize cpsw related driver,
We loaded cpsw after probe of i2c-ksz9897, but the result did not change.
root# insmod -f ti_cpsw.ko
[ 46.441493] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[ 46.447637] davinci_mdio 4a101000.mdio: no live phy, scanning all
[ 46.456736] of_mdiobus_register ret(fffffffb)
[ 46.461233] davinci_mdio: probe of 4a101000.mdio failed with error -5
[ 46.492773] cpsw 4a100000.ethernet: No slave[0] phy_id, phy-handle, or fixed-link property
[ 46.501103] cpsw 4a100000.ethernet: Detected MACID = ##:##:##:##:##:##
root# ip link set dev eth0 up
[ 59.884229] net eth0: initializing cpsw version 1.12 (0)
[ 59.889606] net eth0: initialized cpsw ale version 1.4
[ 59.899275] libphy: PHY not found
[ 59.902841] net eth0: phy "" not found on slave 0, err -19
As far as I examine, it is common for PHY to control with SPI,
There is no information that I realized with I2C (and I2C2 which is an auxiliary positioning in ARM).
Is something important to set up?
Have you experienced similar experiences?