.. | .. |
---|
12 | 12 | * Serial driver for TX3927/TX4927/TX4925/TX4938 internal SIO controller |
---|
13 | 13 | */ |
---|
14 | 14 | |
---|
15 | | -#if defined(CONFIG_SERIAL_TXX9_CONSOLE) && defined(CONFIG_MAGIC_SYSRQ) |
---|
16 | | -#define SUPPORT_SYSRQ |
---|
17 | | -#endif |
---|
18 | | - |
---|
19 | 15 | #include <linux/module.h> |
---|
20 | 16 | #include <linux/ioport.h> |
---|
21 | 17 | #include <linux/init.h> |
---|
.. | .. |
---|
248 | 244 | sio_out(up, TXX9_SIFCR, TXX9_SIFCR_SWRST); |
---|
249 | 245 | /* TX4925 BUG WORKAROUND. Accessing SIOC register |
---|
250 | 246 | * immediately after soft reset causes bus error. */ |
---|
251 | | - mmiowb(); |
---|
252 | 247 | udelay(1); |
---|
253 | 248 | while ((sio_in(up, TXX9_SIFCR) & TXX9_SIFCR_SWRST) && --tmout) |
---|
254 | 249 | udelay(1); |
---|
.. | .. |
---|
649 | 644 | case CS6: /* not supported */ |
---|
650 | 645 | case CS8: |
---|
651 | 646 | cval |= TXX9_SILCR_UMODE_8BIT; |
---|
| 647 | + termios->c_cflag &= ~CSIZE; |
---|
| 648 | + termios->c_cflag |= CS8; |
---|
652 | 649 | break; |
---|
653 | 650 | } |
---|
654 | 651 | |
---|
.. | .. |
---|
1096 | 1093 | port.flags = p->flags; |
---|
1097 | 1094 | port.mapbase = p->mapbase; |
---|
1098 | 1095 | port.dev = &dev->dev; |
---|
| 1096 | + port.has_sysrq = IS_ENABLED(CONFIG_SERIAL_TXX9_CONSOLE); |
---|
1099 | 1097 | ret = serial_txx9_register_port(&port); |
---|
1100 | 1098 | if (ret < 0) { |
---|
1101 | 1099 | dev_err(&dev->dev, "unable to register port at index %d " |
---|