On Sat, Aug 13, 2016 at 10:31:24PM +0200, Sebastian Reichel wrote: > Hi, > > On Sat, Aug 13, 2016 at 12:03:45PM +0200, Greg Kroah-Hartman wrote: > > On Sat, Aug 13, 2016 at 05:14:33AM +0200, Sebastian Reichel wrote: > > > From: NeilBrown <neilb@xxxxxxx> > > > > > > A "tty slave" is a device connected via UART. It may need a driver to, > > > for example, power the device on when the tty is opened, and power it > > > off when the tty is released. > > > > > > Signed-off-by: NeilBrown <neilb@xxxxxxx> > > > Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx> > > > --- > > > Documentation/devicetree/bindings/serial/8250.txt | 4 ++++ > > > drivers/tty/tty_io.c | 6 ++++++ > > > 2 files changed, 10 insertions(+) > > > > > > diff --git a/Documentation/devicetree/bindings/serial/8250.txt b/Documentation/devicetree/bindings/serial/8250.txt > > > index f5561ac7e17e..ecb74730f71b 100644 > > > --- a/Documentation/devicetree/bindings/serial/8250.txt > > > +++ b/Documentation/devicetree/bindings/serial/8250.txt > > > @@ -46,6 +46,10 @@ Optional properties: > > > line respectively. It will use specified GPIO instead of the peripheral > > > function pin for the UART feature. If unsure, don't specify this property. > > > > > > +Optional child node: > > > +- a device connected to the uart can be specified as child node with > > > + compatible value. > > > + > > > Note: > > > * fsl,ns16550: > > > ------------ > > > diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c > > > index 734a635e7363..39ff5dcdfd50 100644 > > > --- a/drivers/tty/tty_io.c > > > +++ b/drivers/tty/tty_io.c > > > @@ -95,6 +95,7 @@ > > > #include <linux/seq_file.h> > > > #include <linux/serial.h> > > > #include <linux/ratelimit.h> > > > +#include <linux/of_platform.h> > > > > > > #include <linux/uaccess.h> > > > > > > @@ -3317,6 +3318,11 @@ struct device *tty_register_device_attr(struct tty_driver *driver, > > > retval = device_register(dev); > > > if (retval) > > > goto error; > > > + if (device && device->of_node) > > > + /* Children are platform devices and will be > > > + * runtime_pm managed by this tty. > > > + */ > > > + of_platform_populate(device->of_node, NULL, NULL, dev); > > > > Why are these platform devices? > > And why only OF? > > I just took this patch over from Neil to get bluetooth working > on N900/N950. Both of them are DT only (well N900 still has > boardcode, but that will be removed shortly), so it was enough > for me. > > I guess you have something in mind, that's similar to e.g. i2c > and spi with a serial_client device and support to instanciate > it from DT, ACPI and boardcode? I'm not going to accept a OF-only patch to the tty layer like this, especially one that abuses platform drivers. See my response to Pavel for what this "should" look like. thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html