*参照元 [#od613f4d] #backlinks *説明 [#se71a915] -パス: [[linux-2.6.33/drivers/base/platform.c]] -FIXME: これは何? -FIXME: プラットフォームバスから指定したデバイスを削除する。 --説明 --platform_add_device() で追加したときは、この関数で削除? -platform_device_alloc(), platform_device_add() とペアで使用する?? --ちなみに platform_device_alloc に対応する platform_device_release() はない。 --platform_device_del() が platform_release 関数が呼ばれる。 --[[linux-2.6.33/platform_device_add()]] **引数 [#cc22e3f1] -struct platform_device *pdev -- --[[linux-2.6.33/platform_device]] **返り値 [#cf07cf95] -なし **参考 [#qde8c34d] *実装 [#b096dcbc] /** * platform_device_del - remove a platform-level device * @pdev: platform device we're removing * * Note that this function will also release all memory- and port-based * resources owned by the device (@dev->resource). This function must * _only_ be externally called in error cases. All other usage is a bug. */ void platform_device_del(struct platform_device *pdev) { int i; if (pdev) { device_del(&pdev->dev); - --[[linux-2.6.33/device_del()]] for (i = 0; i < pdev->num_resources; i++) { struct resource *r = &pdev->resource[i]; unsigned long type = resource_type(r); - --[[linux-2.6.33/resource]] - --[[linux-2.6.33/resource_type()]] if (type == IORESOURCE_MEM || type == IORESOURCE_IO) release_resource(r); - --[[linux-2.6.33/IORESOURCE_MEM]] - --[[linux-2.6.33/IORESOURCE_IO]] - --[[linux-2.6.33/release_resource()]] } } } EXPORT_SYMBOL_GPL(platform_device_del); -GPL のモジュールにのみシンボルを公開する。 --[[linux-2.6.33/EXPORT_SYMBOL_GPL()]] *コメント [#g902f805]