[PATCH v2 0/5] Linux's serdev framwork port
Andrey Smirnov
andrew.smirnov at gmail.com
Thu Apr 12 14:33:12 PDT 2018
Hi everyone:
In an effort to bring this kernel driver
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/mfd/rave-sp.c?h=v4.16-rc7
to Barebox, I ended up creating a miniature and extremely simplified
version of 'serdev' subsystem which is presented in this patchset.
Changes since [v1]:
- Blocking read function was added as example of API usage
- "serial: Check result of console_unregister()" was converted
to become "serial: Drop .remove functions from all drivers"
- Minor spelling fixes
- Original serdev framework patch modified to allow devices
that do not require polling (I don't have such a usecase,
but for the sake of being generic I added one line needed
for that)
- SERIAL_DEV_BUS Kconfig symbol moved into
drivers/serial/Kconfig (where it, IMHO, fits much better)
- Added a patch to dynamically adjust serdev's polling
interval via device paramter. This was warranted by the
problems that arose from real-life usage.
Feedback is wellcome!
Thanks,
Andrey Smirnov
[v1] https://www.spinics.net/lists/u-boot-v2/msg32322.html
Andrey Smirnov (5):
console: Introduce console_drain()
console: Add simplified 'serdev' framework from Linux kernel
serdev: Add trivial blocking read function
serial: Drop .remove functions from all drivers
serdev: Allow polling interval to be adjusted at runtime
common/Makefile | 1 +
common/console.c | 24 ++++-
common/serdev.c | 208 +++++++++++++++++++++++++++++++++++++++
drivers/serial/Kconfig | 6 ++
drivers/serial/serial_auart.c | 11 ---
drivers/serial/serial_cadence.c | 9 --
drivers/serial/serial_clps711x.c | 10 --
drivers/serial/serial_imx.c | 10 --
drivers/serial/serial_lpuart.c | 13 ---
drivers/serial/serial_pxa.c | 9 --
drivers/serial/serial_s3c.c | 10 --
drivers/serial/stm-serial.c | 10 --
include/console.h | 110 +++++++++++++++++++++
include/serdev.h | 44 +++++++++
lib/xymodem.c | 30 +-----
15 files changed, 395 insertions(+), 110 deletions(-)
create mode 100644 common/serdev.c
create mode 100644 include/serdev.h
--
2.14.3
More information about the barebox
mailing list