Странное дело. Сделали новую плату со всеми модификациями упомянутыми здесь. KSZ8863MLL как свич работает отлично. Но в связке с процессором соединение очень не стабильное. Wireshark при TCP/IP соединение показывает TCP Out-Of-Order, TCP Dup ACK, TCP Fast Retransmission, TCP ACKed unseen segment, ... Соединение 100M full duplex. Если с помощью netcat отправляю через UDP/IP файл с устройства на PC, файл приходит замечательно. В другую сторону, с PC на устройство теряются некоторые пакеты (принятый файл меньшего размера). Но что странно, если я на устройстве запускаю tcpdump, и из него извлекаю payload в файл, то у полученного файла контрольная сумма сходится! Ничего подозрительного wireshark в этом дампе не показывает. В /sys/class/net/eth0/statistics/* тоже нет никаких ошибок. Уже неделю бьюсь, безрезультатно. Может быть у кого-нибудь есть идеи касательно причин, или куда смотреть?
Процессор i.MX6DL. На MRXER процессора забыли установить pull-down (как сказано в документации к KSZ8863MLL: "Since the switch filters error frames, these MII error signals are not used by the KSZ8863MLL/FLL. So, for PHY mode operation, if the device interfacing with the KSZ8863MLL/FLL has an MRXER input pin, it needs to be tied low."), но я активировал внутренний pull-down на 100к. Ошибки в /sys/class/net/eth0/statistics/rx_errors исчезли, но лучше не стало. То же самое ядро на wandboard, правда подключенного через rgmii, работает на ура.