1. 程式人生 > >一次PHY驅動的除錯有感

一次PHY驅動的除錯有感

做為一個驅動開發工程師, 經常會碰到十分坑爹的問題. 如果很快解決了還好, 若是運氣不好一直找不到思路, 那時候真是處理崩潰邊緣. 有時候辛辛苦苦除錯了幾個月, 最後知道是硬體問題, 那時候真的是想罵娘.

最近除錯bcm54285這個千兆phy驅動的時候, 就悲催的碰到了這種狀況. 通過mdio訪問phy晶片暫存器的時候, 一直能讀到值, 但是讀出來的確是2280, f392這樣錯誤的值. 百思不得姐的時候, 哥突然想想來, phy的第一個標準暫存器的預設值不是應該是1140嗎, 這個1140和2280之間好像有什麼特別的對應關係. 沒錯, 1140*2也就是左移一個bit就變成2280了, 於是拿示波器出來測試了一下, 發現波形確實存在一些偏差. 於是找來硬體工程師, 去掉線路上的buffer, 問題解決.
真的覺得驅動工程師是一個非常苦逼的工作, 經常不知道是驅動問題還是硬體問題, 工作中也很容易引起雙方推脫責任. 真正的軟體工程師還是應該往上走, 做應用做業務去, 至於底層, 就讓專業的晶片公司來搞定吧~