Subject: Re: [PATCH 2/4] bas_gigaset: collapse CR/LF at end of AT response

From: Tilman Schmidt <[email-masked]>
Date: Tue, 23 Feb 2010 14:19:19 +0100

Simon Horman schrieb:
> I am confused about what the value of MAX_RESP_SIZE means.
> Is it a hw restriction?

It's an arbitrary limitation in the driver. The hardware specification
says nothing about the possible length of AT responses from the device,
so we had to draw a line somewhere. 512 bytes have so far proved to be
amply sufficient.

In practice, the limit is only hit with the M10x devices (which transmit
commands and data over the same channel) when the state machine gets out
of sync and tries to interpret received payload data as AT responses.

> It seems that up to MAX_RESP_SIZE of string-data is permitted if the line
> is terminated by CR. But only MAX_RESP_SIZE -1  bytes if the line is
> terminated by LF or CR LF.

Note that when storing the CR in cs->respdata[0] for possible collapsing
with a subsequent LF, the cbytes counter is left at 0, so the CR gets
overwritten by the first character of the next response if there's no
intervening LF.

Thanks for reviewing,
Tilman