MDIO匯流排相關 1

2021-07-29 17:11:44 字數 1123 閱讀 3429

##這裡主要是driver端

在drivers/net/phy裡面針對某一品牌的網路交換裝置有乙個檔案 例如 smsc ,有乙個smsc.c

該品牌有多個裝置.每個裝置對應乙個結構體,因此組成了乙個結構體陣列

陣列元素型別 : struct phy_driver

陣列元素舉例

}

針對陣列中的每個元素都會註冊一次

每個裝置的註冊流程

1/填充陣列元素中的driver結構體(型別struct device_driver)

new_driver->driver.name = new_driver->name;

new_driver->driver.bus =

&mdio_bus_type;

new_driver->driver.probe = phy_probe;

new_driver->driver.remove = phy_remove;

引數說明

1/

new_driver->name =

"smsc lan911x internal phy"

;

2/

struct bus_type mdio_bus_type =

;

3/

phy_probe 一品牌的裝置共用乙個

4/phy_remove 一品牌的裝置公用乙個

2/註冊

driver_register(&new_driver->driver);

配置核心

device drivers  --

->[*

] network device support --

->

<

*> phy device support and infrastructure --

->

<

> drivers for smsc phys

注意,最後匹配的並不是 phy_driver 和 phy_device

而是phy_driver中的driver和phy_device匹配

MDIO匯流排相關 3

這裡主要是匹配 匯流排匹配 struct bus type mdio bus type 從上面的結構體可以看出,linux中有多種匯流排型別.估計是從來匹配的.例如platform的 struct bus type platform bus type 可以看出和猜想一致 接下來看一下我們關心的匹配的...

MDIO匯流排相關 4

mdio 在drivers net ethernet hieth gmac 下面有乙個檔案higmac.c 裡面實現了乙個platform框架,並且建立了乙個雜項裝置.ret platform device register higmac platform device if ret ret pla...

CAN匯流排學習 1

最近開始學習can,希望每天能夠做些筆記,有所積累。本文基於weixin 40528417博主的內容。1 位定時1.1 位速率 位速率 又叫做位元率 bit rata 資訊傳輸率,表示的是單位時間內,匯流排上傳輸的資訊量,即每秒能夠傳輸的二進位制位的數量,單位是bit per second。1.2 ...