diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2018-11-20 23:52:33 +0200 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2018-12-05 06:08:31 -0700 |
commit | d5bb4f862b47ad9112132071ad18f9936494e307 (patch) | |
tree | ba4c615f53874d52b17a25dbf02c10b357c31789 /drivers/serial/sandbox.c | |
parent | ac7f5db9dc690901d99fe0afbcb3d4241c3cab8e (diff) | |
download | u-boot-d5bb4f862b47ad9112132071ad18f9936494e307.tar.gz u-boot-d5bb4f862b47ad9112132071ad18f9936494e307.tar.xz u-boot-d5bb4f862b47ad9112132071ad18f9936494e307.zip |
dm: serial: Introduce ->getinfo() callback
New callback will give a necessary information to fill up ACPI SPCR table,
for example. Maybe used later for other purposes.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Change ADR_SPACE_SYSTEM_IO to SERIAL_ADDRESS_SPACE_IO to fix build error:
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/serial/sandbox.c')
-rw-r--r-- | drivers/serial/sandbox.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/serial/sandbox.c b/drivers/serial/sandbox.c index 76d26d3c59..33102fc872 100644 --- a/drivers/serial/sandbox.c +++ b/drivers/serial/sandbox.c @@ -188,6 +188,26 @@ static int sandbox_serial_setconfig(struct udevice *dev, uint serial_config) return 0; } +static int sandbox_serial_getinfo(struct udevice *dev, + struct serial_device_info *serial_info) +{ + struct serial_device_info info = { + .type = SERIAL_CHIP_UNKNOWN, + .addr_space = SERIAL_ADDRESS_SPACE_IO, + .addr = SERIAL_DEFAULT_ADDRESS, + .reg_width = 1, + .reg_offset = 0, + .reg_shift = 0, + }; + + if (!serial_info) + return -EINVAL; + + *serial_info = info; + + return 0; +} + #if CONFIG_IS_ENABLED(OF_CONTROL) static const char * const ansi_colour[] = { "black", "red", "green", "yellow", "blue", "megenta", "cyan", @@ -221,6 +241,7 @@ static const struct dm_serial_ops sandbox_serial_ops = { .getc = sandbox_serial_getc, .getconfig = sandbox_serial_getconfig, .setconfig = sandbox_serial_setconfig, + .getinfo = sandbox_serial_getinfo, }; static const struct udevice_id sandbox_serial_ids[] = { |