summaryrefslogtreecommitdiff
path: root/include/clocksource/pxa.h
diff options
context:
space:
mode:
authorDirk Behme <dirk.behme@de.bosch.com>2014-09-03 12:33:53 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-08 16:26:07 -0700
commit26c474128b96d277234f35a7fd870ed12bef96ca (patch)
treecff98901f80c6fc6d7e3e2050156893db04c5535 /include/clocksource/pxa.h
parentc993257bf7571945201205491de86268437ea174 (diff)
downloadlinux-rt-26c474128b96d277234f35a7fd870ed12bef96ca.tar.gz
serial: imx: clean up imx_poll_get_char()
Looking at the get_poll_char() function of the 8250.c serial driver, we learn: * poll_get_char() doesn't have to save/disable/restore the interrupt registers. No interrupt handling is needed in this function at all. Remove it. * Don't block in case there is no data available. So instead blocking in the do {} while loop, just return with NO_POLL_CHAR, immediately . Additionally, while the i.MX6 register URXD[7-0] contain the RX_DATA, the upper bits of this register (URXD[15-10]) might contain some control flags. To ensure that these are not returned with the data read, just mask out URXD[7-0]. These changes fix the 'hang' working with kdb: $ echo ttymxc3 > /sys/module/kgdboc/parameters/kgdboc $ echo g >/proc/sysrq-trigger [0]kdb> help ... <hang> Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com> Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org> Cc: Jiri Slaby <jslaby@suse.cz> Cc: linux-serial@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/clocksource/pxa.h')
0 files changed, 0 insertions, 0 deletions