void platform_set_drvdata(struct platform_device *pdev, void *data); ``` 该函数有两个参数: - `pdev`:指向要设置私有数据的平台设备的指针。 - `data`:指向要与该平台设备关联的私有数据的指针。 调用该函数后,可以使用 `platform_get_drvdata` 函数来获取与平台设备相关联的私有数据。 例如,以下代码...
static__devinitintwm831x_boostp_probe(struct platform_device *pdev){structwm831x*wm831x=dev_get_drvdata(pdev->dev.parent);structwm831x_pdata*pdata=wm831x->dev->platform_data;intid = pdev->id % ARRAY_SIZE(pdata->dcdc);structwm831x_dcdc*dcdc;structresource*res;intret, irq; dev_...
platform_get_drvdata(const struct platform_device *pdev): 驱动中常用到platform_set_drvdata 和 platform_get_drvdata这两个函数,用于保存局部变量: include/linux/platform_device.h中: static inline void *platform_get_drvdata(const struct platform_device *pdev) { return dev_get_drvdata(&pdev->dev...
probe函数中定义的局部变量,如果我想在其他地方使用它怎么办呢?这就需要把它保存起来。 内核提供了这个方法,使用函数可以将保存成平台总线设备的私有数据。以后再要使用它时只需调用就可以了。 #defineplatform_set_drvdata(_dev,data)dev_set_drvdata(&(_dev)->dev,(data)) ...
在用到Linux设备驱动的platform框架时,常常会遇到两个函数platform_get_drvdata和 platform_set_drvdata。通常,会在驱动的probe函数中获取device的相关信息,然后使用 platform_set_drvdata进行保存。在其他函数中要用到时(比如remove),通过platform_get_drvdata来获取。
在用到Linux设备驱动的platform框架时,常常会遇到两个函数platform_get_drvdata和 platform_set_drvdata。通常,会在驱动的probe函数中获取device的相关信息,然后使用 platform_set_drvdata进行保存。在其他函数中要用到时(比如remove),通过platform_get_drvdata来获取。
使用函数platform_set_drvdata()可以将radio保存成平台总线设备的私有数据。以后再要使用它时只需调用platform_get_drvdata()就可以了 struct marimba_fm_platform_data *tavarua_pdata; struct tavarua_device *radio; int retval; int i; FMDBG("%s: probe called\n", __func__); ...
- platform_set_drvdata(pdev, NULL); - return 0; } -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majord...@vger.kernel.org More majordomo info athttp://vger.kernel.org/majordomo-info.html...
platform_set_drvdata 和 platform_get_drvdata 2017-05-17 19:45 −... 瘋耔 0 642 Unity Platform Differernces 2019-12-12 17:24 −https://docs.unity3d.com/560/Documentation/Manual/SL-PlatformDifferences.html... minggoddess 0 310
- platform_set_drvdata(pdev, NULL); kfree(ts); return error; @@ -366,7 +365,6 @@ static int tsc_remove(struct platform_device *pdev) clk_put(ts->clk); iounmap(ts->regs); release_mem_region(ts->res->start, resource_size(ts->res)); ...