Lines Matching refs:dev

32 	struct snd_device *dev;  in snd_device_new()  local
37 dev = kzalloc(sizeof(*dev), GFP_KERNEL); in snd_device_new()
38 if (!dev) in snd_device_new()
40 INIT_LIST_HEAD(&dev->list); in snd_device_new()
41 dev->card = card; in snd_device_new()
42 dev->type = type; in snd_device_new()
43 dev->state = SNDRV_DEV_BUILD; in snd_device_new()
44 dev->device_data = device_data; in snd_device_new()
45 dev->ops = ops; in snd_device_new()
54 list_add(&dev->list, p); in snd_device_new()
59 static void __snd_device_disconnect(struct snd_device *dev) in __snd_device_disconnect() argument
61 if (dev->state == SNDRV_DEV_REGISTERED) { in __snd_device_disconnect()
62 if (dev->ops->dev_disconnect && in __snd_device_disconnect()
63 dev->ops->dev_disconnect(dev)) in __snd_device_disconnect()
64 dev_err(dev->card->dev, "device disconnect failure\n"); in __snd_device_disconnect()
65 dev->state = SNDRV_DEV_DISCONNECTED; in __snd_device_disconnect()
69 static void __snd_device_free(struct snd_device *dev) in __snd_device_free() argument
72 list_del(&dev->list); in __snd_device_free()
74 __snd_device_disconnect(dev); in __snd_device_free()
75 if (dev->ops->dev_free) { in __snd_device_free()
76 if (dev->ops->dev_free(dev)) in __snd_device_free()
77 dev_err(dev->card->dev, "device free failure\n"); in __snd_device_free()
79 kfree(dev); in __snd_device_free()
84 struct snd_device *dev; in look_for_dev() local
86 list_for_each_entry(dev, &card->devices, list) in look_for_dev()
87 if (dev->device_data == device_data) in look_for_dev()
88 return dev; in look_for_dev()
108 struct snd_device *dev; in snd_device_disconnect() local
112 dev = look_for_dev(card, device_data); in snd_device_disconnect()
113 if (dev) in snd_device_disconnect()
114 __snd_device_disconnect(dev); in snd_device_disconnect()
116 dev_dbg(card->dev, "device disconnect %p (from %pS), not found\n", in snd_device_disconnect()
132 struct snd_device *dev; in snd_device_free() local
136 dev = look_for_dev(card, device_data); in snd_device_free()
137 if (dev) in snd_device_free()
138 __snd_device_free(dev); in snd_device_free()
140 dev_dbg(card->dev, "device free %p (from %pS), not found\n", in snd_device_free()
145 static int __snd_device_register(struct snd_device *dev) in __snd_device_register() argument
147 if (dev->state == SNDRV_DEV_BUILD) { in __snd_device_register()
148 if (dev->ops->dev_register) { in __snd_device_register()
149 int err = dev->ops->dev_register(dev); in __snd_device_register()
153 dev->state = SNDRV_DEV_REGISTERED; in __snd_device_register()
173 struct snd_device *dev; in snd_device_register() local
177 dev = look_for_dev(card, device_data); in snd_device_register()
178 if (dev) in snd_device_register()
179 return __snd_device_register(dev); in snd_device_register()
191 struct snd_device *dev; in snd_device_register_all() local
196 list_for_each_entry(dev, &card->devices, list) { in snd_device_register_all()
197 err = __snd_device_register(dev); in snd_device_register_all()
210 struct snd_device *dev; in snd_device_disconnect_all() local
214 list_for_each_entry_reverse(dev, &card->devices, list) in snd_device_disconnect_all()
215 __snd_device_disconnect(dev); in snd_device_disconnect_all()
224 struct snd_device *dev, *next; in snd_device_free_all() local
228 list_for_each_entry_safe_reverse(dev, next, &card->devices, list) { in snd_device_free_all()
230 if (dev->type == SNDRV_DEV_CONTROL || in snd_device_free_all()
231 dev->type == SNDRV_DEV_LOWLEVEL) in snd_device_free_all()
233 __snd_device_free(dev); in snd_device_free_all()
237 list_for_each_entry_safe_reverse(dev, next, &card->devices, list) in snd_device_free_all()
238 __snd_device_free(dev); in snd_device_free_all()
255 struct snd_device *dev; in snd_device_get_state() local
257 dev = look_for_dev(card, device_data); in snd_device_get_state()
258 if (dev) in snd_device_get_state()
259 return dev->state; in snd_device_get_state()