diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-27 12:39:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-27 12:39:09 -0400 |
commit | 249f1efd8e3d58f86469fc305b0eda39db18d7ce (patch) | |
tree | 5dd080350c52a63880e66cf8072f9f7a7bf823f7 /drivers/tty/serdev/core.c | |
parent | 6f68a6ae1f0ea2fd87e26dc345866e928b5850a8 (diff) | |
parent | 59fe2cc8b1c32dd139da80fc8222b5b3290b7a09 (diff) |
Merge tag 'tty-4.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Pull tty/serial fixes from Greg KH:
"Here are some serial and tty fixes for 4.12-rc3. They are a bit bigger
than normal, which is why I had them bake in linux-next for a few
weeks and didn't send them to you for -rc2.
They revert a few of the serdev patches from 4.12-rc1, and bring
things back to how they were in 4.11, to try to make things a bit more
stable there. Rob and Johan both agree that this is the way forward,
so this isn't people squabbling over semantics. Other than that, just
a few minor serial driver fixes that people have had problems with.
All of these have been in linux-next for a few weeks with no reported
issues"
* tag 'tty-4.12-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
serial: altera_uart: call iounmap() at driver remove
serial: imx: ensure UCR3 and UFCR are setup correctly
MAINTAINERS/serial: Change maintainer of jsm driver
serial: enable serdev support
tty/serdev: add serdev registration interface
serdev: Restore serdev_device_write_buf for atomic context
serial: core: fix crash in uart_suspend_port
tty: fix port buffer locking
tty: ehv_bytechan: clean up init error handling
serial: ifx6x60: fix use-after-free on module unload
serial: altera_jtaguart: adding iounmap()
serial: exar: Fix stuck MSIs
serial: efm32: Fix parity management in 'efm32_uart_console_get_options()'
serdev: fix tty-port client deregistration
Revert "tty_port: register tty ports with serdev bus"
drivers/tty: 8250: only call fintek_8250_probe when doing port I/O
Diffstat (limited to 'drivers/tty/serdev/core.c')
-rw-r--r-- | drivers/tty/serdev/core.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c index 433de5ea9b02..f71b47334149 100644 --- a/drivers/tty/serdev/core.c +++ b/drivers/tty/serdev/core.c | |||
@@ -122,6 +122,18 @@ void serdev_device_write_wakeup(struct serdev_device *serdev) | |||
122 | } | 122 | } |
123 | EXPORT_SYMBOL_GPL(serdev_device_write_wakeup); | 123 | EXPORT_SYMBOL_GPL(serdev_device_write_wakeup); |
124 | 124 | ||
125 | int serdev_device_write_buf(struct serdev_device *serdev, | ||
126 | const unsigned char *buf, size_t count) | ||
127 | { | ||
128 | struct serdev_controller *ctrl = serdev->ctrl; | ||
129 | |||
130 | if (!ctrl || !ctrl->ops->write_buf) | ||
131 | return -EINVAL; | ||
132 | |||
133 | return ctrl->ops->write_buf(ctrl, buf, count); | ||
134 | } | ||
135 | EXPORT_SYMBOL_GPL(serdev_device_write_buf); | ||
136 | |||
125 | int serdev_device_write(struct serdev_device *serdev, | 137 | int serdev_device_write(struct serdev_device *serdev, |
126 | const unsigned char *buf, size_t count, | 138 | const unsigned char *buf, size_t count, |
127 | unsigned long timeout) | 139 | unsigned long timeout) |