RE: [PATCH] drivers: staging: GPS protocol driver for wl128x

From: Savoy, Pavan
Date: Wed May 05 2010 - 12:04:24 EST


Alan,


----------------
Thanks & Regards,
Pavan Savoy | x0099669

> -----Original Message-----
> From: Alan Cox [mailto:alan@xxxxxxxxxxxxxxxxxxx]
> Sent: Wednesday, May 05, 2010 6:12 AM
> To: Savoy, Pavan
> Cc: greg; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH] drivers: staging: GPS protocol driver for wl128x
>
> On Tue, 4 May 2010 21:55:43 +0530 (IST)
> Pavan Savoy <pavan_savoy@xxxxxx> wrote:
>
> > Greg, Alan,
> >
> > Just to complete the circle on N_TI_WL, find below the GPS driver which makes use of the shared transport
> line discipline.
> >
> > This driver provides a TTY line character device to application/middle-ware running on host, as if the
> device is directly connected over UART to a GPS chip.
>
> This doesn't appear to be a tty device ?

A typo here, I meant "TTY like" character device, and it not certainly a character device.

>
> > Almost all actions that can be done on a /dev/ttySx can be done on this /dev/tigps device.
>
> Hardly true. A tty driver has a very precisely defined set of behaviours
> and a lot of ioctls and interfaces your driver doesn't. Our gps
> interfaces are only tty drivers because historically they were plugged
> into serial ports so I'm not sure the 'not a tty' bit actually matters.

Yes. I agree, and hence mentioned almost all.

> Codewise its the same as all the rest - only one instance possible and
> poking around in globals with no visible or documented locking.

Yes, and this is the reason, I posted this patch.
BT and GPS had to communicate over a single UART, and this is the reason the N_TI_WL line discipline exists.
With this sort of architecture, how can I accommodate multi-device support? To avoid this single device limits?

Also, what is that you are exactly looking for regarding locking.
Please suggest.

Thanks.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/