Re: [PATCH 1/6] tty: n_gsm: Add support for serdev drivers

Ivaylo Dimitrov
2024-12-19T07:46:01Z

Hi,

...

On 29.11.20 г. 22:51 ч., Pavel Machek wrote:
>>
>> It looks like you may also have a problem with tty hangups, which serdev
>> does not support currently. There are multiple paths in n_gsm which can
>> trigger a hangup (e.g. based on remote input) and would likely lead to a
>> crash
>
> I don't believe we need to support hangups for the Droid 4, but
> obviously it would be good not to crash. But I don't know where to
> start looking, do you have any hints?
>

I changed the patch so it calls tty_port_register_device_serdev, ported
gnss driver to use serdev_device, got it working:

root@devuan-droid4:~# cat /dev/gnss0
$GPGGA,,,,,,0,,,,,,,,*66
$GNGNS,,,,,,NN,,,,,,*53
$GNGNS,,,,,,NN,,,,,,*53
$GNGNS,,,,,,NN,,,,,,*53
$GPVTG,,T,,M,,N,,K,N*2C
$GPRMC,,V,,,,,,,,,,N*53
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GLGSV,1,1,01,255,,,37*52
$GPGGA,,,,,,0,,,,,,,,*66
$GNGNS,,,,,,NN,,,,,,*53
$GNGNS,,,,,,NN,,,,,,*53
$GNGNS,,,,,,NN,,,,,,*53

However, I get:

gsmtty gsmtty4: tty_hangup: tty->count(1) != (#fd's(0) + #kopen's(0))

when closing /dev/gnss0

Any hint what shall be implemented in serdev to properly handle hangups?
Or, shall I ignore that warning?

Regards,
Ivo