Brighton's Blog
โ† All Series

AR8035

14 - MR18 Deep Dive: Bare-Metal C

MerakiMR18CMIPSAssemblyAR8035PHYdeep-dive

Writing a PHY driver without libc

I don’t need a feature, I just need a fix / raw register writes and a couple syscall tricks

Post 6 mentioned a standalone C program that pokes two MDIO registers to fix the AR8035 PHY’s broken RGMII RX clock delay. This deep dive rips open the actual source—ar8035_start.S, ar8035.c, and the Makefile—and walks through every layer from the assembly entry point down to the register writes that make Ethernet work. If you’ve ever wondered what bare-metal Linux userspace programming looks like on MIPS with zero library dependencies, this is it.

Read more โ†’