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