Lines Matching refs:chip
50 static void usb6fire_chip_abort(struct sfire_chip *chip) in usb6fire_chip_abort() argument
52 if (chip) { in usb6fire_chip_abort()
53 if (chip->pcm) in usb6fire_chip_abort()
54 usb6fire_pcm_abort(chip); in usb6fire_chip_abort()
55 if (chip->midi) in usb6fire_chip_abort()
56 usb6fire_midi_abort(chip); in usb6fire_chip_abort()
57 if (chip->comm) in usb6fire_chip_abort()
58 usb6fire_comm_abort(chip); in usb6fire_chip_abort()
59 if (chip->control) in usb6fire_chip_abort()
60 usb6fire_control_abort(chip); in usb6fire_chip_abort()
61 if (chip->card) { in usb6fire_chip_abort()
62 snd_card_disconnect(chip->card); in usb6fire_chip_abort()
63 snd_card_free_when_closed(chip->card); in usb6fire_chip_abort()
64 chip->card = NULL; in usb6fire_chip_abort()
69 static void usb6fire_chip_destroy(struct sfire_chip *chip) in usb6fire_chip_destroy() argument
71 if (chip) { in usb6fire_chip_destroy()
72 if (chip->pcm) in usb6fire_chip_destroy()
73 usb6fire_pcm_destroy(chip); in usb6fire_chip_destroy()
74 if (chip->midi) in usb6fire_chip_destroy()
75 usb6fire_midi_destroy(chip); in usb6fire_chip_destroy()
76 if (chip->comm) in usb6fire_chip_destroy()
77 usb6fire_comm_destroy(chip); in usb6fire_chip_destroy()
78 if (chip->control) in usb6fire_chip_destroy()
79 usb6fire_control_destroy(chip); in usb6fire_chip_destroy()
80 if (chip->card) in usb6fire_chip_destroy()
81 snd_card_free(chip->card); in usb6fire_chip_destroy()
90 struct sfire_chip *chip = NULL; in usb6fire_chip_probe() local
138 chip = card->private_data; in usb6fire_chip_probe()
139 chips[regidx] = chip; in usb6fire_chip_probe()
140 chip->dev = device; in usb6fire_chip_probe()
141 chip->regidx = regidx; in usb6fire_chip_probe()
142 chip->intf_count = 1; in usb6fire_chip_probe()
143 chip->card = card; in usb6fire_chip_probe()
145 ret = usb6fire_comm_init(chip); in usb6fire_chip_probe()
147 usb6fire_chip_destroy(chip); in usb6fire_chip_probe()
151 ret = usb6fire_midi_init(chip); in usb6fire_chip_probe()
153 usb6fire_chip_destroy(chip); in usb6fire_chip_probe()
157 ret = usb6fire_pcm_init(chip); in usb6fire_chip_probe()
159 usb6fire_chip_destroy(chip); in usb6fire_chip_probe()
163 ret = usb6fire_control_init(chip); in usb6fire_chip_probe()
165 usb6fire_chip_destroy(chip); in usb6fire_chip_probe()
172 usb6fire_chip_destroy(chip); in usb6fire_chip_probe()
175 usb_set_intfdata(intf, chip); in usb6fire_chip_probe()
181 struct sfire_chip *chip; in usb6fire_chip_disconnect() local
184 chip = usb_get_intfdata(intf); in usb6fire_chip_disconnect()
185 if (chip) { /* if !chip, fw upload has been performed */ in usb6fire_chip_disconnect()
186 card = chip->card; in usb6fire_chip_disconnect()
187 chip->intf_count--; in usb6fire_chip_disconnect()
188 if (!chip->intf_count) { in usb6fire_chip_disconnect()
190 devices[chip->regidx] = NULL; in usb6fire_chip_disconnect()
191 chips[chip->regidx] = NULL; in usb6fire_chip_disconnect()
194 chip->shutdown = true; in usb6fire_chip_disconnect()
195 usb6fire_chip_abort(chip); in usb6fire_chip_disconnect()
196 usb6fire_chip_destroy(chip); in usb6fire_chip_disconnect()