Linux 在支持arm64架构的时候,把以前arm架构里经常使用的调试工具early_printk 废弃了。
那么,如果bootloader boot系统了,什么打印都没有的时候,该如何调试呢。
一个有效的方法,就是去实现arm64的earlycon。
网上有很多讲earlycon支持的帖子里说明了如何在串口的driver里去支持earlycon,这里就不多说了。
如果你手里的代码,串口驱动已经有了earlycon的支持,那么只需要在内核的启动参数(cmdline)里面添加类似的一个early参数就可以了,例如:earlycon=msm_serial_dm,mmio,0x78b3000,115200n8.
这个参数的格式如下:driver-name,memory map type,uart physical base addr, baudrate