January 9, 2023

Kyu networking -- MDIO

My network driver for the Allwinner H3 always runs at 10 Mbit!

This was discovered by timing TCP transfers (they run 10 times faster on the BBB which does run at 100 Mbit). The game now is to make my Orange Pi boards run at 100 Mbit also.

This involved getting the PHY to work right. But even then the transfers were running much too slow. This led to a second discovery. Copy time in memcpy is what is slowing down the transfers! I am certain this is because the cache is not properly enabled. This led me into a deep rabbit hole with NetBSD. The original idea with NetBSD was to study the setup code for ARM, but we got distracted ...

From here, I start a new "saga" digging into details of the cache on the Allwinner H3 (with a Cortex-A7 MPCore).


Have any comments? Questions? Drop me a line!

Kyu / tom@mmto.org