1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (c) 2015 National Instruments
4  */
5 
6 #include <dm.h>
7 #include <serial.h>
8 
nulldev_serial_setbrg(struct udevice * dev,int baudrate)9 static int nulldev_serial_setbrg(struct udevice *dev, int baudrate)
10 {
11 	return 0;
12 }
13 
nulldev_serial_getc(struct udevice * dev)14 static int nulldev_serial_getc(struct udevice *dev)
15 {
16 	return -EAGAIN;
17 }
18 
nulldev_serial_pending(struct udevice * dev,bool input)19 static int nulldev_serial_pending(struct udevice *dev, bool input)
20 {
21 	return 0;
22 }
23 
nulldev_serial_putc(struct udevice * dev,const char ch)24 static int nulldev_serial_putc(struct udevice *dev, const char ch)
25 {
26 	return 0;
27 }
28 
29 static const struct udevice_id nulldev_serial_ids[] = {
30 	{ .compatible = "nulldev-serial" },
31 	{ }
32 };
33 
34 const struct dm_serial_ops nulldev_serial_ops = {
35 	.putc = nulldev_serial_putc,
36 	.pending = nulldev_serial_pending,
37 	.getc = nulldev_serial_getc,
38 	.setbrg = nulldev_serial_setbrg,
39 };
40 
41 U_BOOT_DRIVER(serial_nulldev) = {
42 	.name	= "serial_nulldev",
43 	.id	= UCLASS_SERIAL,
44 	.of_match = nulldev_serial_ids,
45 	.ops	= &nulldev_serial_ops,
46 };
47