ARM: iMX: lockup with irqs disabled in drivers/tty/imx.c
Michael McTernan
Michael.McTernan.2001 at cs.bris.ac.uk
Fri Jun 15 04:36:14 EDT 2012
On 06/12/2012 07:53 PM, Fabio Estevam wrote:
>> I can then trigger the lockup by simply booting the unit and issuing "echo>
>> /dev/ttymxc1". The same can be done on the other ports too. Once locked,
>> magic sys-req appears not to work, pinging the target is dead etc...
>
> I did a 'echo "hello"> /dev/ttymxc1' and I am not able to see the
> lockup on a mx31pdk running 3.5-rc1.
Depending on the setup and board, you may find that the RTS pin is
asserted so you don't hit the lockup, or more likely, that the Rx pin is
being driven by a RS232 level shifter so you don't get the early break
character which triggers the problem.
On my board the RTS will never be set and the Rx pin is pulled low so
generates a break condition and lockup reliably (prior to patching).
I don't have a i.MX31 reference manual or PDK schematic, but you may be
able to change the IO mux config to move the serial port Rx and RTS to
free pins with pull downs in order to reproduce the bug.
This bug is very much a corner case, and arguably the hardware
setup/board config isn't right, but for the sake of a few lines of code
it would seem better to avoid such as nasty lockup which isn't
straightforward to debug.
Regards,
Mike
More information about the linux-arm-kernel
mailing list