Re: [PATCH 1/2] serial: support register interface with 16-bit stride for console

From: Masahiro Yamada
Date: Mon Oct 19 2015 - 23:37:49 EST


Hi Peter,

2015-10-20 4:50 GMT+09:00 Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>:
> On 10/19/2015 01:40 AM, Masahiro Yamada wrote:
>> Currently, 8-bit (MMIO) and 32-bit (MMIO32) strides are supported for
>> the 8250 console, but 16-bit (MMIO16) stride is not. The 8250 UART
>> device on my board has 16-bit stride (reg-shift = <1>) and I am eager
>> to use earlycon with it.
>>
>> Refer to arch/arm/boot/dts/uniphier-support-card.dtsi:
>>
>> serialsc: uart@000b0000 {
>> compatible = "ns16550a";
>> reg = <0x000b0000 0x20>;
>> clock-frequency = <12288000>;
>> reg-shift = <1>;
>> };
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
>> ---
>>
>> Documentation/kernel-parameters.txt | 9 +++++----
>> drivers/tty/serial/8250/8250_early.c | 5 +++++
>> drivers/tty/serial/8250/8250_port.c | 20 ++++++++++++++++++++
>> drivers/tty/serial/earlycon.c | 15 +++++++++++----
>> drivers/tty/serial/serial_core.c | 9 +++++++--
>> include/linux/serial_core.h | 1 +
>> include/uapi/linux/serial.h | 9 +++++----
>> 7 files changed, 54 insertions(+), 14 deletions(-)
>>
>
> [...]
>
>> diff --git a/include/uapi/linux/serial.h b/include/uapi/linux/serial.h
>> index 25331f9..1d20d9c 100644
>> --- a/include/uapi/linux/serial.h
>> +++ b/include/uapi/linux/serial.h
>> @@ -65,10 +65,11 @@ struct serial_struct {
>> #define SERIAL_IO_PORT 0
>> #define SERIAL_IO_HUB6 1
>> #define SERIAL_IO_MEM 2
>> -#define SERIAL_IO_MEM32 3
>> -#define SERIAL_IO_AU 4
>> -#define SERIAL_IO_TSI 5
>> -#define SERIAL_IO_MEM32BE 6
>> +#define SERIAL_IO_MEM16 3
>> +#define SERIAL_IO_MEM32 4
>> +#define SERIAL_IO_AU 5
>> +#define SERIAL_IO_TSI 6
>> +#define SERIAL_IO_MEM32BE 7
>
> The existing values cannot be re-defined since they're userspace visible.

Thanks, I've sent v2.


--
Best Regards
Masahiro Yamada
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/