Lines Matching refs:serdev
10 * Generic serial MIDI driver using the serdev serial bus API for hardware interaction
20 #include <linux/serdev.h>
41 struct serdev_device *serdev;
82 num_bytes = serdev_device_write_buf(drvdata->serdev, buf, num_bytes);
96 static void snd_serial_generic_write_wakeup(struct serdev_device *serdev)
98 struct snd_serial_generic *drvdata = serdev_device_get_drvdata(serdev);
103 static int snd_serial_generic_receive_buf(struct serdev_device *serdev,
107 struct snd_serial_generic *drvdata = serdev_device_get_drvdata(serdev);
131 err = serdev_device_open(drvdata->serdev);
135 actual_baud = serdev_device_set_baudrate(drvdata->serdev,
175 serdev_device_close(drvdata->serdev);
219 serdev_device_close(drvdata->serdev);
245 serdev_device_write_flush(drvdata->serdev);
262 static void snd_serial_generic_parse_dt(struct serdev_device *serdev,
267 err = of_property_read_u32(serdev->dev.of_node, "current-speed",
306 drvdata->serdev->ctrl->nr);
308 drvdata->serdev->ctrl->nr);
319 static int snd_serial_generic_probe(struct serdev_device *serdev)
325 err = snd_devm_card_new(&serdev->dev, SNDRV_DEFAULT_IDX1,
333 sprintf(card->shortname, "SerialMIDI-%d", serdev->ctrl->nr);
334 sprintf(card->longname, "Serial MIDI device at serial%d", serdev->ctrl->nr);
338 drvdata->serdev = serdev;
341 snd_serial_generic_parse_dt(serdev, drvdata);
349 serdev_device_set_client_ops(serdev, &snd_serial_generic_serdev_device_ops);
350 serdev_device_set_drvdata(drvdata->serdev, drvdata);