dev_set_drvdata ,SET_NETDEV_DEV

本文详细介绍了如何将设备相关信息存储到设备结构中,并通过平台设备与网络设备的关联,实现更高效的设备管理和网络设备操作。重点在于理解并应用平台驱动API,如platform_set_drvdata和SET_NETDEV_DEV,来优化设备驱动程序的开发。
AI助手已提取文章相关产品:

dev_set_drvdata(&pdev->dev, dev); // it just like that platform_set_drvdata(); 把设备的相关信息放到设备结构里作为私有数据存起来。

   

SET_NETDEV_DEV(dev, &pdev->dev); //将网络设备的基类dev父设备指向了平台设备的设备基类dev  !!! #define SET_NETDEV_DEV(net, pdev)((net)->dev.parent = (pdev))

您可能感兴趣的与本文相关内容

PING 192.168.0.10 (192.168.0.10): 56 data bytes [ 225.025801] ------------[ cut here ]------------ [ 225.030440] NETDEV WATCHDOG: eth0 (r8169): transmit queue 0 timed out [ 225.036948] WARNING: CPU: 6 PID: 0 at net/sched/sch_generic.c:467 dev_watchdog+0x378/0x380 [ 225.045246] Modules linked in: realtek r8169 hi309a_pcie_api_test(O) hi309a_eth_drv(O) hi309a_mag(O) hi309a_ppe(O) hi309a_poe(O) hi309a_urm(O) hns_mdio hi309a_mii_mac(O) hi309a_watchdog(O) hi309a_djtag(O) ahci_platform libahci_platform libahci libata usb_storage sd_mod scsi_mod xhci_plat_hcd hi309a_usb_hisi(O) xhci_hcd usbcore hi309a_lbc(O) hi309a_tsensor(O) hi309a_log(O) hi309a_sata(O) hi309a_pcie(O) hi309a_serdes(O) hi309a_sfc(O) hi309a_pmbus(O) hi309a_i2c(O) hi309a_spi(O) hi309a_gpio(O) hi309a_pinctrl(O) hi309a_subctrl(O) ksecurec(O) [ 225.093033] CPU: 6 PID: 0 Comm: swapper/6 Tainted: G O 5.10.0 #14 [ 225.100457] Hardware name: Hisilicon PhosphorHi1230 EMU (DT) [ 225.106139] pstate: 60400009 (nZCv daif +PAN -UAO -TCO BTYPE=--) [ 225.112170] pc : dev_watchdog+0x378/0x380 [ 225.116195] lr : dev_watchdog+0x378/0x380 [ 225.120218] sp : ffff800011d6bd50 [ 225.123544] x29: ffff800011d6bd50 x28: 0000000000000000 [ 225.128878] x27: 0000000000000001 x26: 0000000000000004 [ 225.134212] x25: 00000000000001c0 x24: 00000000ffffffff [ 225.139546] x23: 0000000000000006 x22: ffff0004cc378440 [ 225.144880] x21: ffff8000119b6000 x20: ffff0004cc378000 [ 225.150214] x19: 0000000000000000 x18: 0000000000000006 [ 225.155547] x17: 0000000000000000 x16: 0000000000000000 [ 225.160881] x15: ffff800011d6b870 x14: ffff800091d6ba27 [ 225.166215] x13: ffff8000119d01d8 x12: 0000000000001467 [ 225.171549] x11: 00000000000006cd x10: ffff800011a281d8 [ 225.176882] x9 : ffff8000119d01d8 x8 : 00000000ffffefff [ 225.182217] x7 : ffff800011a281d8 x6 : c0000000fffff000 [ 225.187551] x5 : 000000000000bff4 x4 : 0000000000000000 [ 225.192886] x3 : 0000000000000000 x2 : 0000000000000000 [ 225.198219] x1 : 0000000000000000 x0 : ffff0004c0148000 [ 225.203553] Call trace: [ 225.206010] dev_watchdog+0x378/0x380 [ 225.209689] call_timer_fn.constprop.0+0x24/0x80 [ 225.214324] expire_timers+0xf8/0x11c [ 225.218001] run_timer_softirq+0x138/0x370 [ 225.222114] __do_softirq+0x114/0x268 [ 225.225791] irq_exit+0xec/0xf4 [ 225.228945] __handle_domain_irq+0x80/0xe0 [ 225.233057] gic_handle_irq+0xc0/0x140 [ 225.236819] el1_irq+0xac/0x140 [ 225.239974] arch_cpu_idle+0x18/0x30 [ 225.243562] default_idle_call+0x38/0xb0 [ 225.247501] do_idle+0x24c/0x320 [ 225.250741] cpu_startup_entry+0x28/0x60 [ 225.254679] secondary_start_kernel+0x148/0x194 [ 225.259227] ---[ end trace a95279cf704ce9e4 ]--- 请帮我分析日志
09-20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值