Thread (79 messages) read the whole thread 79 messages, 11 authors, 2015-06-06

Re: [Gta04-owner] [PATCH 0/3] tty slave device support - version 3.

From: Dr. H. Nikolaus Schaller <hidden>
Date: 2015-03-20 07:54:56
Also in: lkml

Hi Neil,

Am 18.03.2015 um 06:58 schrieb NeilBrown [off-list ref]:
Hi again,
here is version 3 of support for tty-slaves.

This version introduces a new bus-type for tty-slaves,
Hm. I am still not convinced that a tty is a „bus“ and 
that this is a solution for a wide-spread problem.
and causes
a tty-slave device to appear in /sys/devices between the uart and the
tty.
It effectively intercepts and calls from the tty to the uart (i.e. any
tty_operations) and applies extra functionality at that point.
Currently the only driver intercepts open and close.
It powers on the device on open, and powers off at last-close.
That is what the missing piece in Linux is to make the w2sg0004
chip work.
Power can be controlled by a regulator or by toggling a GPIO.
I think such a GPIO logic has nothing to do with serial and
should be left over to the regulator logic, i.e. we need a special
regulator-w2sg0004 driver.

So I suggest to remove the GPIO logic from your 

drivers/tty/slave/serial-power-manager.c

And then you can even get rid of adding a chip specific „compatible“
entry for the subnodes.
I think I've incorporated most of the feed back I received from
previous versions, but if I missed something - I apologize.  If
this approach is structurally acceptable then I can fix up all the
smaller issues.
As said I would prefer that the w2sg0004 driver is just a separate
„regulator“ driver as we had proposed before.

Nikolaus


Thanks for your review,
NeilBrown


---

NeilBrown (3):
     TTY: use class_find_device to find port in uart_suspend/resume.
     TTY: add support for tty_slave devices.
     tty/slaves: add a driver to power on/off UART attached devices.


.../bindings/tty_slave/wi2wi,w2cbw003.txt          |   19 +
.../bindings/tty_slave/wi2wi,w2sg0004.txt          |   37 +
.../devicetree/bindings/vendor-prefixes.txt        |    1 
drivers/tty/Kconfig                                |    1 
drivers/tty/Makefile                               |    1 
drivers/tty/serial/serial_core.c                   |   21 -
drivers/tty/slave/Kconfig                          |   21 +
drivers/tty/slave/Makefile                         |    4 
drivers/tty/slave/serial-power-manager.c           |  510 ++++++++++++++++++++
drivers/tty/slave/tty_slave_core.c                 |  136 +++++
drivers/tty/tty_io.c                               |   60 ++
include/linux/tty.h                                |    2 
include/linux/tty_slave.h                          |   26 +
13 files changed, 813 insertions(+), 26 deletions(-)
create mode 100644 Documentation/devicetree/bindings/tty_slave/wi2wi,w2cbw003.txt
create mode 100644 Documentation/devicetree/bindings/tty_slave/wi2wi,w2sg0004.txt
create mode 100644 drivers/tty/slave/Kconfig
create mode 100644 drivers/tty/slave/Makefile
create mode 100644 drivers/tty/slave/serial-power-manager.c
create mode 100644 drivers/tty/slave/tty_slave_core.c
create mode 100644 include/linux/tty_slave.h

--
Signature

_______________________________________________
Gta04-owner mailing list
Gta04-owner@goldelico.com
http://lists.goldelico.com/mailman/listinfo.cgi/gta04-owner
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help