Lines Matching refs:dev

47 	struct snd_device *dev;  in snd_device_new()  local
52 dev = kzalloc(sizeof(*dev), GFP_KERNEL); in snd_device_new()
53 if (!dev) in snd_device_new()
55 INIT_LIST_HEAD(&dev->list); in snd_device_new()
56 dev->card = card; in snd_device_new()
57 dev->type = type; in snd_device_new()
58 dev->state = SNDRV_DEV_BUILD; in snd_device_new()
59 dev->device_data = device_data; in snd_device_new()
60 dev->ops = ops; in snd_device_new()
69 list_add(&dev->list, p); in snd_device_new()
74 static void __snd_device_disconnect(struct snd_device *dev) in __snd_device_disconnect() argument
76 if (dev->state == SNDRV_DEV_REGISTERED) { in __snd_device_disconnect()
77 if (dev->ops->dev_disconnect && in __snd_device_disconnect()
78 dev->ops->dev_disconnect(dev)) in __snd_device_disconnect()
79 dev_err(dev->card->dev, "device disconnect failure\n"); in __snd_device_disconnect()
80 dev->state = SNDRV_DEV_DISCONNECTED; in __snd_device_disconnect()
84 static void __snd_device_free(struct snd_device *dev) in __snd_device_free() argument
87 list_del(&dev->list); in __snd_device_free()
89 __snd_device_disconnect(dev); in __snd_device_free()
90 if (dev->ops->dev_free) { in __snd_device_free()
91 if (dev->ops->dev_free(dev)) in __snd_device_free()
92 dev_err(dev->card->dev, "device free failure\n"); in __snd_device_free()
94 kfree(dev); in __snd_device_free()
99 struct snd_device *dev; in look_for_dev() local
101 list_for_each_entry(dev, &card->devices, list) in look_for_dev()
102 if (dev->device_data == device_data) in look_for_dev()
103 return dev; in look_for_dev()
123 struct snd_device *dev; in snd_device_disconnect() local
127 dev = look_for_dev(card, device_data); in snd_device_disconnect()
128 if (dev) in snd_device_disconnect()
129 __snd_device_disconnect(dev); in snd_device_disconnect()
131 dev_dbg(card->dev, "device disconnect %p (from %pF), not found\n", in snd_device_disconnect()
147 struct snd_device *dev; in snd_device_free() local
151 dev = look_for_dev(card, device_data); in snd_device_free()
152 if (dev) in snd_device_free()
153 __snd_device_free(dev); in snd_device_free()
155 dev_dbg(card->dev, "device free %p (from %pF), not found\n", in snd_device_free()
160 static int __snd_device_register(struct snd_device *dev) in __snd_device_register() argument
162 if (dev->state == SNDRV_DEV_BUILD) { in __snd_device_register()
163 if (dev->ops->dev_register) { in __snd_device_register()
164 int err = dev->ops->dev_register(dev); in __snd_device_register()
168 dev->state = SNDRV_DEV_REGISTERED; in __snd_device_register()
188 struct snd_device *dev; in snd_device_register() local
192 dev = look_for_dev(card, device_data); in snd_device_register()
193 if (dev) in snd_device_register()
194 return __snd_device_register(dev); in snd_device_register()
206 struct snd_device *dev; in snd_device_register_all() local
211 list_for_each_entry(dev, &card->devices, list) { in snd_device_register_all()
212 err = __snd_device_register(dev); in snd_device_register_all()
225 struct snd_device *dev; in snd_device_disconnect_all() local
229 list_for_each_entry_reverse(dev, &card->devices, list) in snd_device_disconnect_all()
230 __snd_device_disconnect(dev); in snd_device_disconnect_all()
239 struct snd_device *dev, *next; in snd_device_free_all() local
243 list_for_each_entry_safe_reverse(dev, next, &card->devices, list) in snd_device_free_all()
244 __snd_device_free(dev); in snd_device_free_all()