I Yixun,

On 20/10/2017 10:32, Yixun Lan wrote:
> Hi Greg-KH
> 
> I think you've already accepted this patch (and merged into your git repo)
> 
> so, is it possible for you to amend the commit message? or do you want me
> to send a PATCH v3 then?

I was not aware greg applied it, no need to amen anything, ignore my tag.

Neil

> 
> On 10:10 Fri 20 Oct     , Neil Armstrong wrote:
>> Hi Yixun,
>>
>> On 06/09/2017 15:52, Yixun Lan wrote:
>>> This dirver try to implement the Magic SysRq support[1] for
>>> Amlogic Inc's meson platfo
>>
>> Please fix these typos.
>>
> oops, not sure why this line is broken..
> 
> s/platfo/platform./
> and should squash next line .
> 
>>> From the hardware perspective, the UART IP can't detect the 'BREAK' command
>>> clearly via the status register. Instead, we rely on the combination of
>>> 'FRAME_ERR bit && ch == 0', and it works fine.
>>>
>>> [1] Documentation/admin-guide/sysrq.rst
>>>
>>> Signed-off-by: Yixun Lan <[email protected]>
>>>
>>> ---
>>> Changes since v1 at [0]:
>>> - add changelog & a few more comments
>>>
>>> [0] https://patchwork.kernel.org/patch/9728475/
>>> ---
>>>  drivers/tty/serial/meson_uart.c | 18 ++++++++++++++++--
>>>  1 file changed, 16 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/tty/serial/meson_uart.c 
>>> b/drivers/tty/serial/meson_uart.c
>>> index 42e4a4c7597f..3fea24bafd80 100644
>>> --- a/drivers/tty/serial/meson_uart.c
>>> +++ b/drivers/tty/serial/meson_uart.c
>>> @@ -14,6 +14,10 @@
>>>   *
>>>   */
>>>  
>>> +#if defined(CONFIG_SERIAL_MESON_CONSOLE) && defined(CONFIG_MAGIC_SYSRQ)
>>> +#define SUPPORT_SYSRQ
>>> +#endif
>>> +
>>>  #include <linux/clk.h>
>>>  #include <linux/console.h>
>>>  #include <linux/delay.h>
>>> @@ -183,12 +187,12 @@ static void meson_receive_chars(struct uart_port 
>>> *port)
>>>  {
>>>     struct tty_port *tport = &port->state->port;
>>>     char flag;
>>> -   u32 status, ch, mode;
>>> +   u32 ostatus, status, ch, mode;
>>>  
>>>     do {
>>>             flag = TTY_NORMAL;
>>>             port->icount.rx++;
>>> -           status = readl(port->membase + AML_UART_STATUS);
>>> +           ostatus = status = readl(port->membase + AML_UART_STATUS);
>>>  
>>>             if (status & AML_UART_ERR) {
>>>                     if (status & AML_UART_TX_FIFO_WERR)
>>> @@ -216,6 +220,16 @@ static void meson_receive_chars(struct uart_port *port)
>>>             ch = readl(port->membase + AML_UART_RFIFO);
>>>             ch &= 0xff;
>>>  
>>> +           if ((ostatus & AML_UART_FRAME_ERR) && (ch == 0)) {
>>> +                   port->icount.brk++;
>>> +                   flag = TTY_BREAK;
>>> +                   if (uart_handle_break(port))
>>> +                           continue;
>>> +           }
>>> +
>>> +           if (uart_handle_sysrq_char(port, ch))
>>> +                   continue;
>>> +
>>>             if ((status & port->ignore_status_mask) == 0)
>>>                     tty_insert_flip_char(tport, ch, flag);
>>>  
>>>
>>
>> Reviewed-by: Neil Armstrong <[email protected]>
>>
>> _______________________________________________
>> linux-amlogic mailing list
>> [email protected]
>> http://lists.infradead.org/mailman/listinfo/linux-amlogic
> 


Reply via email to