*参照元 [#ge4a11a4] #backlinks *説明 [#i6dfaf1d] -パス: [[linux-4.4.1/drivers/base/devres.c]] -FIXME: これは何? --説明 **引数 [#dbca7509] -struct device *dev -- --[[linux-4.4.1/device]] -dr_release_t release -- --[[linux-4.4.1/dr_release_t]] -dr_match_t match -- --[[linux-4.4.1/dr_match_t]] -void *match_data -- **返り値 [#a48f3493] - -- **参考 [#qf9609eb] *実装 [#s874112f] /** * devres_find - Find device resource * @dev: Device to lookup resource from * @release: Look for resources associated with this release function * @match: Match function (optional) * @match_data: Data for the match function * * Find the latest devres of @dev which is associated with @release * and for which @match returns 1. If @match is NULL, it's considered * to match all. * * RETURNS: * Pointer to found devres, NULL if not found. */ void * devres_find(struct device *dev, dr_release_t release, dr_match_t match, void *match_data) { struct devres *dr; unsigned long flags; - --[[linux-4.4.1/devres]] spin_lock_irqsave(&dev->devres_lock, flags); dr = find_dr(dev, release, match, match_data); spin_unlock_irqrestore(&dev->devres_lock, flags); - --[[linux-4.4.1/spin_lock_irqsave()]] --[[linux-4.4.1/find_dr()]] --[[linux-4.4.1/spin_unlock_irqrestore()]] if (dr) return dr->data; return NULL; } EXPORT_SYMBOL_GPL(devres_find); - --[[linux-4.4.1/EXPORT_SYMBOL_GPL()]] *コメント [#h845faaa]