Lines Matching refs:cxsc
61 static void snd_cx18_card_free(struct snd_cx18_card *cxsc)
63 if (cxsc == NULL)
66 if (cxsc->v4l2_dev != NULL)
67 to_cx18(cxsc->v4l2_dev)->alsa = NULL;
71 kfree(cxsc);
85 struct snd_cx18_card **cxsc)
87 *cxsc = kzalloc(sizeof(struct snd_cx18_card), GFP_KERNEL);
88 if (*cxsc == NULL)
91 (*cxsc)->v4l2_dev = v4l2_dev;
92 (*cxsc)->sc = sc;
94 sc->private_data = *cxsc;
100 static int snd_cx18_card_set_names(struct snd_cx18_card *cxsc)
102 struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
103 struct snd_card *sc = cxsc->sc;
124 struct snd_cx18_card *cxsc;
144 ret = snd_cx18_card_create(v4l2_dev, sc, &cxsc);
152 snd_cx18_card_set_names(cxsc);
155 ret = snd_cx18_pcm_create(cxsc);
165 cx->alsa = cxsc;
181 kfree(cxsc);
233 static void __exit snd_cx18_exit(struct snd_cx18_card *cxsc)
235 struct cx18 *cx = to_cx18(cxsc->v4l2_dev);
237 /* FIXME - pointer checks & shutdown cxsc */
239 snd_card_free(cxsc->sc);
246 struct snd_cx18_card *cxsc;
254 cxsc = to_snd_cx18_card(v4l2_dev);
255 if (cxsc == NULL) {
261 snd_cx18_exit(cxsc);