五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

of_match_device函數(shù)是什么?

2023-02-16 16:40 作者:朗朗上口又上頭  | 我要投稿

of_match_device函數(shù)一般用于設(shè)備樹驅(qū)動程序中,用來獲取與設(shè)備節(jié)點(diǎn)相關(guān)聯(lián)的設(shè)備驅(qū)動程序。

of_match_device函數(shù)是Linux內(nèi)核中的一個函數(shù),用于設(shè)備樹中設(shè)備節(jié)點(diǎn)和設(shè)備驅(qū)動程序之間的匹配。這個函數(shù)的作用是通過指定的設(shè)備樹節(jié)點(diǎn)和設(shè)備驅(qū)動程序的匹配信息進(jìn)行匹配,如果匹配成功,就返回相應(yīng)的設(shè)備驅(qū)動程序。

of_match_device函數(shù)的原型定義如下:

```

const struct of_device_id *of_match_device(const struct of_device_id *matches,

const struct device *dev);

```

其中:

matches參數(shù)是一個of_device_id類型的數(shù)組,用來存儲 設(shè)備驅(qū)動程序和設(shè)備節(jié)點(diǎn)之間的匹配信息。

dev參數(shù)是設(shè)備樹中的一個設(shè)備節(jié)點(diǎn),用于匹配 設(shè)備節(jié)點(diǎn)和設(shè)備驅(qū)動程序之間的匹配信息。

of_match_device函數(shù)會遍歷matches數(shù)組中的每一項,將其與dev參數(shù)進(jìn)行匹配,如果匹配成功,就返回該設(shè)備驅(qū)動程序?qū)?yīng)的of_device_id結(jié)構(gòu)體,否則返回NULL。

在設(shè)備樹驅(qū)動程序中,一般會定義一個static const struct of_device_id類型的數(shù)組,用來存儲設(shè)備驅(qū)動程序和設(shè)備節(jié)點(diǎn)之間的匹配信息。然后通過調(diào)用of_match_device函數(shù),將設(shè)備節(jié)點(diǎn)和設(shè)備驅(qū)動程序進(jìn)行匹配,獲取匹配成功的設(shè)備驅(qū)動程序。

比如:

static const struct mtk_soc_data mt7621_data = {

.caps = MT7621_CAPS,

.required_clks = MT7621_CLKS_BITMAP,

.required_pctl = false,

.irq_num = 1,

};

const struct of_device_id of_mtk_match[] = {

{ .compatible = "mediatek,mt2701-eth", .data = &mt2701_data},

{ .compatible = "mediatek,mt7622-eth", .data = &mt7622_data},

{ .compatible = "mediatek,mt7623-eth", .data = &mt7623_data},

{ .compatible = "mediatek,mt7629-eth", .data = &leopard_data},

{ .compatible = "mediatek,mt7621-eth", .data = &mt7621_data},

{},

};

MODULE_DEVICE_TABLE(of, of_mtk_match);

static int mtk_probe(struct platform_device *pdev)

{

struct resource *res = platform_get_resource(pdev, IORESOURCE_MEM, 0);

struct device_node *mac_np;

const struct of_device_id *match;

struct mtk_eth *eth;

int err;

int i;

eth = devm_kzalloc(&pdev->dev, sizeof(*eth), GFP_KERNEL);

if (!eth)

return -ENOMEM;

match = of_match_device(of_mtk_match, &pdev->dev);

eth->soc = (struct mtk_soc_data *)match->data;

of_match_device函數(shù)是什么?的評論 (共 條)

分享到微博請遵守國家法律
涞水县| 通城县| 临颍县| 平顺县| 基隆市| 陈巴尔虎旗| 普兰县| 邹城市| 延川县| 会昌县| 渭南市| 乌兰察布市| 三江| 延边| 营口市| 通河县| 西宁市| 平阴县| 黔西县| 左贡县| 合阳县| 赤壁市| 恩施市| 阿城市| 元朗区| 奇台县| 文山县| 青田县| 石渠县| 盘锦市| 光泽县| 屯门区| 花莲县| 精河县| 定边县| 磴口县| 玉山县| 肇庆市| 甘肃省| 沧源| 江阴市|