Hi!

> We can make use of serdev drivers to do simple device drivers for
> TS 27.010 chanels, and we can handle vendor specific protocols on top
> of TS 27.010 with serdev drivers.
> 
> So far this has been tested with Motorola droid4 where there is a custom
> packet numbering protocol on top of TS 27.010 for the MDM6600 modem.
> 
> I initially though about adding the serdev support into a separate file,
> but that will take some refactoring of n_gsm.c. And I'd like to have
> things working first. Then later on we might want to consider splitting
> n_gsm.c into three pieces for core, tty and serdev parts. And then maybe
> the serdev related parts can be just moved to live under something like
> drivers/tty/serdev/protocol/ngsm.c.
> 
> Signed-off-by: Tony Lindgren <t...@atomide.com>

If you fix error path below, you can add:

Reviewed-by: Pavel Machek <pa...@ucw.cz> 

> +static struct gsm_dlci *gsd_dlci_get(struct gsm_serdev *gsd, int line,
> +                                  bool allocate)
> +{
> +     struct gsm_mux *gsm;
> +     struct gsm_dlci *dlci;
> +
> +     if (!gsd || !gsd->gsm)
> +             return ERR_PTR(-ENODEV);
> +
> +     gsm = gsd->gsm;
> +
> +     if (line < 1 || line >= 63)
> +             return ERR_PTR(-EINVAL);
> +
> +     mutex_lock(&gsm->mutex);
...
> +     dlci = gsm_dlci_alloc(gsm, line);
> +     if (!dlci) {
> +             gsm = ERR_PTR(-ENOMEM);
> +             goto unlock;

dlci = , or you get nice crash.

Best regards,
                                                                        Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) 
http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Attachment: signature.asc
Description: PGP signature

Reply via email to