Hi Forum,
I am past few weeks struggling to get up and running our custom board compatible to Beagle Bone Black using MICREL KSZ8081RNA ether net chip set.
I managed to get kernel loaded successfully but when I try to bring up eth0 and eth1; the eth1 seems be there is not life at all I have following Kernel log:
2.645458] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[ 2.667961] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 100 kHz
[ 2.744374] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[ 2.750844] davinci_mdio 4a101000.mdio: detected phy mask fffffff6
[ 2.773910] libphy: 4a101000.mdio: probed
[ 2.778499] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver Micrel KSZ8081 or KSZ8091
[ 2.788678] davinci_mdio 4a101000.mdio: phy[3]: device 4a101000.mdio:03, driver Micrel KSZ8081 or KSZ8091
[ 2.802276] cpsw 4a100000.ethernet: Detected MACID = 68:c9:0b:7c:e1:a1
[ 2.817915] hctosys: unable to open rtc device (rtc0)
[ 2.823301] sr_init: No PMIC hook to init smartreflex
[ 2.829532] sr_init: platform driver register failed for SR
[ 2.946454] EXT4-fs (mmcblk0p2): mounted filesystem without journal. Opts: (null)
[ 2.955008] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[ 2.982468] devtmpfs: mounted
[ 2.988362] Freeing unused kernel memory: 436K (c084b000 - c08b8000)
[ 3.329863] EXT4-fs (mmcblk0p2): warning: mounting unchecked fs, running e2fsck is recommended
[ 3.352949] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Starting logging: OK
Initializing random number generator... [ 3.999507] random: dd urandom read with 11 bits of entropy available
done.
Starting network...
/etc/init.d/S93-am335x-pm-firmware-load: line 4: can't create /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading: nonexistent y
/etc/init.d/S93-am335x-pm-firmware-load: line 5: can't create /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/data: nonexistent diry
/etc/init.d/S93-am335x-pm-firmware-load: line 6: can't create /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading: nonexistent y
Security Ltd
gwcs1x login: root
# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
# ifconfig eth0 192.168.1.30 up
[ 31.672848] net eth0: initializing cpsw version 1.12 (0)
[ 31.755231] net eth0: phy found : id is : 0x221560
[ 31.760726] libphy: PHY 4a101000.mdio:01 not found
[ 31.766035] net eth0: phy 4a101000.mdio:01 not found on slave 1
# [ 35.755252] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
ping -c3 192.168.1.172
PING 192.168.1.172 (192.168.1.172): 56 data bytes
--- 192.168.1.172 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss
Following is DEVICE TREE snippet
ethernet@4a100000 {
compatible = "ti,cpsw";
ti,hwmods = "cpgmac0";
clocks = <0x35 0x36>;
clock-names = "fck", "cpts";
cpdma_channels = <0x8>;
ale_entries = <0x400>;
bd_ram_size = <0x2000>;
no_bd_ram = <0x0>;
rx_descs = <0x40>;
mac_control = <0x20>;
slaves = <0x2>;
active_slave = <0x0>;
cpts_clock_mult = <0x80000000>;
cpts_clock_shift = <0x1d>;
reg = <0x4a100000 0x800 0x4a101200 0x100>;
#address-cells = <0x1>;
#size-cells = <0x1>;
interrupt-parent = <0x1>;
interrupts = <0x28 0x29 0x2a 0x2b>;
ranges;
syscon = <0x2f>;
status = "okay";
pinctrl-names = "default", "sleep";
pinctrl-0 = <0x37>;
pinctrl-1 = <0x38>;
mdio@4a101000 {
compatible = "ti,davinci_mdio";
#address-cells = <0x1>;
#size-cells = <0x0>;
ti,hwmods = "davinci_mdio";
bus_freq = <0xf4240>;
reg = <0x4a101000 0x100>;
status = "okay";
pinctrl-names = "default", "sleep";
pinctrl-0 = <0x39>;
pinctrl-1 = <0x3a>;
linux,phandle = <0x3b>;
phandle = <0x3b>;
};
mdio@4a101000 {
compatible = "ti,davinci_mdio";
#address-cells = <0x1>;
#size-cells = <0x0>;
ti,hwmods = "davinci_mdio";
bus_freq = <0xf4240>;
reg = <0x4a101000 0x100>;
status = "okay";
pinctrl-names = "default", "sleep";
pinctrl-0 = <0x39>;
pinctrl-1 = <0x3a>;
linux,phandle = <0x3b>;
phandle = <0x3b>;
};
slave@4a100200 {
mac-address = [00 00 00 00 00 00];
phy_id = <0x3b 0x0>; Following changes made manually to introduce clock frequency and Interface
phy-mode = "rmii";
micrel,rmii-reference-clock-select-25mhz;
rmii-clock-ext;
clocks = "rmii-ref";
};
slave@4a100300 {
mac-address = [00 00 00 00 00 00];
phy_id = <0x3b 0x1>; Following changes made manually to introduce clock frequency and Interface
phy-mode = "rmii";
micrel,rmii-reference-clock-select-25mhz;
rmii-clock-ext;
clocks = "rmii-ref";
};
cpsw-phy-sel@44e10650 {
compatible = "ti,am3352-cpsw-phy-sel";
reg = <0x44e10650 0x4>;
reg-names = "gmii-sel";
};
};
I will be greatly appreciate if someone can shed light on this problem.
An ether net port 1 seems to be does not show any sign of life at all and at least ether net port 0 can get assigned ip address but does not transmit or receive packet at all. It has consume quite long time and no break through, perhaps I am missed out some vital settings???
Thank you,