[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a582c754-8803-0fc9-7ab3-0b79837a74ac@xilinx.com>
Date: Fri, 3 Apr 2020 17:56:48 +0200
From: Michal Simek <michal.simek@...inx.com>
To: Maarten Brock <m.brock@...mierlo.com>,
Michal Simek <michal.simek@...inx.com>
Cc: Greg KH <gregkh@...uxfoundation.org>, johan@...nel.org,
linux-kernel@...r.kernel.org, monstr@...str.eu, git@...inx.com,
Jiri Slaby <jslaby@...e.com>,
linux-arm-kernel@...ts.infradead.org, linux-serial@...r.kernel.org,
linux-serial-owner@...r.kernel.org
Subject: Re: [PATCH 0/7] serial: uartps: Revert dynamic port allocation
On 03. 04. 20 17:48, Maarten Brock wrote:
> On 2020-04-03 11:51, Michal Simek wrote:
>>
>> Thanks. I am definitely interested to hear more how this could be done
>> differently because that hardcoded limits are painful.
>> On FPGAs you can have a lot of uarts for whatever reason and users are
>> using DT aliases to have consistent naming.
>> Specifically on Xilinx devices we are using uartps which is ttyPS,
>> uartlite which is ttyUL, ns16500 which is ttyS and also pl011 which is
>> ttyAMA.
>> Only ttyAMA or ttyPS on one chip are possible.
>>
>> And right now you can't have serial0 alias pointed ttyPS0 and another
>> serial0 pointed to ttyUL0 or ttyS0. That's why others are shifted and we
>> can reach that hardcoded NR_UART limit easily.
>> And this was the reason why I have done these patches in past to remove
>> any limit from these drivers and if user asks for serial100 alias you
>> simply get ttyPS100 node.
>
> I would argue that the trouble originates from every uart driver using
> its own naming scheme and thereby creating separate namespaces. If all
> uarts would register as /dev/ttySnn then the serialN alias method would
> work. These non-overlapping namespaces is something the linux kernel
> driver community has allowed to happen.
>
> If the namespaces are not abandoned and disallowed, then the serialN
> alias method must no longer be used for any driver that does not create
> /dev/ttySnn devices. Every namespace will require its own alias base.
> Or forget about deriving the number from an alias and set the number in
> a property in the device tree node itself. The latter has my preference.
Uartlite and as I see ucc_uart are only two driver which are using
port-number property for this purpose.
And IIRC this property was the part of any spec long time ago.
Thanks,
Michal
Powered by blists - more mailing lists