Lines Matching refs:sr
279 struct wf_sensor *sr = container_of(kref, struct wf_sensor, ref);
281 DBG("wf: Deleting sensor %s\n", sr->name);
283 if (sr->ops && sr->ops->release)
284 sr->ops->release(sr);
286 kfree(sr);
304 struct wf_sensor *sr;
307 list_for_each_entry(sr, &wf_sensors, link) {
308 if (!strcmp(sr->name, new_sr->name)) {
310 " duplicate sensor %s\n", sr->name);
337 void wf_unregister_sensor(struct wf_sensor *sr)
340 list_del(&sr->link);
343 DBG("wf: Unregistered sensor %s\n", sr->name);
345 wf_put_sensor(sr);
349 int wf_get_sensor(struct wf_sensor *sr)
351 if (!try_module_get(sr->ops->owner))
353 kref_get(&sr->ref);
358 void wf_put_sensor(struct wf_sensor *sr)
360 struct module *mod = sr->ops->owner;
361 kref_put(&sr->ref, wf_sensor_release);
375 struct wf_sensor *sr;
384 list_for_each_entry(sr, &wf_sensors, link)
385 wf_notify(WF_EVENT_NEW_SENSOR, sr);