All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
@ 2015-04-10 18:18 Nishanth Menon
  2015-04-10 19:40 ` Peter Hurley
  0 siblings, 1 reply; 6+ messages in thread
From: Nishanth Menon @ 2015-04-10 18:18 UTC (permalink / raw)
  To: Sekhar Nori; +Cc: linux-omap, Nishanth Menon

8250 driver should be relatively feature complete. It can co-exist
with omap-serial driver, so just enable 8250 OMAP layer driver and
route all ttyOx references to ttySx through the standard 8250 driver
to ensure no breakage of userspace occurs.

Signed-off-by: Nishanth Menon <nm@ti.com>
---
Current upstream next-20150410 status: (all boards pass without this patch)
Test is a basic boot test (using omap2plus_defconfig ofcourse)..

Ofcourse:
[    0.001035] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
does not help userspace when they are not able to dynamically handle switch.

Just curious if folks feel we are ready for this switch yet...

ttyS-change
 1:                     am335x-evm: BOOT: PASS: http://paste.ubuntu.org.cn/2551733
 2:                      am335x-sk: BOOT: FAIL: http://paste.ubuntu.org.cn/2551734
 3:                     am3517-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551735
 4:                      am37x-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551736
 5:                      am437x-sk: BOOT: FAIL: http://paste.ubuntu.org.cn/2551737
 6:                    am43xx-epos: BOOT: FAIL: http://paste.ubuntu.org.cn/2551738
 7:                   am43xx-gpevm: BOOT: PASS: http://paste.ubuntu.org.cn/2551739
 8:                 BeagleBoard-XM: BOOT: FAIL: http://paste.ubuntu.org.cn/2551740
 9:            beagleboard-vanilla: BOOT: FAIL: http://paste.ubuntu.org.cn/2551741
10:               beaglebone-black: BOOT: PASS: http://paste.ubuntu.org.cn/2551742
11:                     beaglebone: BOOT: FAIL: http://paste.ubuntu.org.cn/2551743
12:                     craneboard: BOOT: FAIL: http://paste.ubuntu.org.cn/2551744
13:                     dra72x-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551745
14:                     dra7xx-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551746
15:         OMAP3430-Labrador(LDP): BOOT: FAIL: http://paste.ubuntu.org.cn/2551747
16:                           n900: BOOT: FAIL: http://paste.ubuntu.org.cn/2551748
17:                      omap5-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551749
18:                  pandaboard-es: BOOT: FAIL: http://paste.ubuntu.org.cn/2551750
19:             pandaboard-vanilla: BOOT: FAIL: http://paste.ubuntu.org.cn/2551751
20:                        sdp2430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551752
21:                        sdp3430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551753
22:                        sdp4430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551754
TOTAL = 22 boards, Booted Boards = 3, No Boot boards = 19

 arc/arm/configs/omap2plus_defconfig |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
index 9ff7b54b2a83..6ef76856ac8e 100644
--- a/arch/arm/configs/omap2plus_defconfig
+++ b/arch/arm/configs/omap2plus_defconfig
@@ -220,6 +220,8 @@ CONFIG_SERIAL_8250_MANY_PORTS=y
 CONFIG_SERIAL_8250_SHARE_IRQ=y
 CONFIG_SERIAL_8250_DETECT_IRQ=y
 CONFIG_SERIAL_8250_RSA=y
+CONFIG_SERIAL_8250_OMAP=y
+CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y
 CONFIG_SERIAL_OF_PLATFORM=y
 CONFIG_SERIAL_OMAP=y
 CONFIG_SERIAL_OMAP_CONSOLE=y
-- 
1.7.9.5


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
  2015-04-10 18:18 [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver Nishanth Menon
@ 2015-04-10 19:40 ` Peter Hurley
  2015-04-11 18:27   ` Nishanth Menon
  0 siblings, 1 reply; 6+ messages in thread
From: Peter Hurley @ 2015-04-10 19:40 UTC (permalink / raw)
  To: Nishanth Menon, Sekhar Nori
  Cc: linux-omap, Sebastian Andrzej Siewior, Tony Lindgren

[ +Sebastian, +Tony ]

On 04/10/2015 02:18 PM, Nishanth Menon wrote:
> 8250 driver should be relatively feature complete. It can co-exist
> with omap-serial driver

Not really; if the omap_8250 is selected then it is probed first
and will be the only driver claiming omap UART ports.

omap-serial would just be dead-weight.

> , so just enable 8250 OMAP layer driver and
> route all ttyOx references to ttySx through the standard 8250 driver
> to ensure no breakage of userspace occurs.

Not quite; the only automatic handling is for console only, not for
userspace. Expect lots of userspace breakage.

Regards,
Peter Hurley

> Signed-off-by: Nishanth Menon <nm@ti.com>
> ---
> Current upstream next-20150410 status: (all boards pass without this patch)
> Test is a basic boot test (using omap2plus_defconfig ofcourse)..
> 
> Ofcourse:
> [    0.001035] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
> does not help userspace when they are not able to dynamically handle switch.
> 
> Just curious if folks feel we are ready for this switch yet...
> 
> ttyS-change
>  1:                     am335x-evm: BOOT: PASS: http://paste.ubuntu.org.cn/2551733
>  2:                      am335x-sk: BOOT: FAIL: http://paste.ubuntu.org.cn/2551734
>  3:                     am3517-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551735
>  4:                      am37x-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551736
>  5:                      am437x-sk: BOOT: FAIL: http://paste.ubuntu.org.cn/2551737
>  6:                    am43xx-epos: BOOT: FAIL: http://paste.ubuntu.org.cn/2551738
>  7:                   am43xx-gpevm: BOOT: PASS: http://paste.ubuntu.org.cn/2551739
>  8:                 BeagleBoard-XM: BOOT: FAIL: http://paste.ubuntu.org.cn/2551740
>  9:            beagleboard-vanilla: BOOT: FAIL: http://paste.ubuntu.org.cn/2551741
> 10:               beaglebone-black: BOOT: PASS: http://paste.ubuntu.org.cn/2551742
> 11:                     beaglebone: BOOT: FAIL: http://paste.ubuntu.org.cn/2551743
> 12:                     craneboard: BOOT: FAIL: http://paste.ubuntu.org.cn/2551744
> 13:                     dra72x-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551745
> 14:                     dra7xx-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551746
> 15:         OMAP3430-Labrador(LDP): BOOT: FAIL: http://paste.ubuntu.org.cn/2551747
> 16:                           n900: BOOT: FAIL: http://paste.ubuntu.org.cn/2551748
> 17:                      omap5-evm: BOOT: FAIL: http://paste.ubuntu.org.cn/2551749
> 18:                  pandaboard-es: BOOT: FAIL: http://paste.ubuntu.org.cn/2551750
> 19:             pandaboard-vanilla: BOOT: FAIL: http://paste.ubuntu.org.cn/2551751
> 20:                        sdp2430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551752
> 21:                        sdp3430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551753
> 22:                        sdp4430: BOOT: FAIL: http://paste.ubuntu.org.cn/2551754
> TOTAL = 22 boards, Booted Boards = 3, No Boot boards = 19
> 
>  arc/arm/configs/omap2plus_defconfig |    2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/arm/configs/omap2plus_defconfig b/arch/arm/configs/omap2plus_defconfig
> index 9ff7b54b2a83..6ef76856ac8e 100644
> --- a/arch/arm/configs/omap2plus_defconfig
> +++ b/arch/arm/configs/omap2plus_defconfig
> @@ -220,6 +220,8 @@ CONFIG_SERIAL_8250_MANY_PORTS=y
>  CONFIG_SERIAL_8250_SHARE_IRQ=y
>  CONFIG_SERIAL_8250_DETECT_IRQ=y
>  CONFIG_SERIAL_8250_RSA=y
> +CONFIG_SERIAL_8250_OMAP=y
> +CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y
>  CONFIG_SERIAL_OF_PLATFORM=y
>  CONFIG_SERIAL_OMAP=y
>  CONFIG_SERIAL_OMAP_CONSOLE=y
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
  2015-04-10 19:40 ` Peter Hurley
@ 2015-04-11 18:27   ` Nishanth Menon
  2015-04-11 19:40     ` Peter Hurley
  0 siblings, 1 reply; 6+ messages in thread
From: Nishanth Menon @ 2015-04-11 18:27 UTC (permalink / raw)
  To: Peter Hurley, Sekhar Nori
  Cc: linux-omap, Sebastian Andrzej Siewior, Tony Lindgren

On 04/10/2015 02:40 PM, Peter Hurley wrote:
> [ +Sebastian, +Tony ]
> 
> On 04/10/2015 02:18 PM, Nishanth Menon wrote:
>> 8250 driver should be relatively feature complete. It can co-exist
>> with omap-serial driver
> 
> Not really; if the omap_8250 is selected then it is probed first
> and will be the only driver claiming omap UART ports.
> 
> omap-serial would just be dead-weight.

true.. my bad..

> 
>> , so just enable 8250 OMAP layer driver and
>> route all ttyOx references to ttySx through the standard 8250 driver
>> to ensure no breakage of userspace occurs.
> 
> Not quite; the only automatic handling is for console only, not for
> userspace. Expect lots of userspace breakage.
> 


Yep - overall, looking through individual logs, in my testing, it seems
to work at least for console for all platforms - even though the
filesystems are mostly going bonkers -> older fs did not have the udev
redirection to take care of this - mostly to do with the getty hooked on
to static consoles.


There are infact two issues:
a) bootloader change for cmdline -> O2 to S2 -> in many cases we are
lesser inclined to change the bootloader, hence the fixup configuration
b) fs changes - these are sometimes more realistic to do, but is a clear
breakage risk.


Overall, keeping two equally functional drivers in the system sounds a
bunch of maintenance burden for all of us and not to mention confusion
for the future.


Btw, I am not exactly proposing this for 4.1 kernel.. instead, we should
probably discuss how to best introduce this in and throw out the older
omap_serial driver - just reuse 8250 and co-exist with the rest of the
good world folks ;)..


-- 
Regards,
Nishanth Menon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
  2015-04-11 18:27   ` Nishanth Menon
@ 2015-04-11 19:40     ` Peter Hurley
  2015-04-12  0:23       ` Nishanth Menon
  0 siblings, 1 reply; 6+ messages in thread
From: Peter Hurley @ 2015-04-11 19:40 UTC (permalink / raw)
  To: Nishanth Menon, Sekhar Nori
  Cc: linux-omap, Sebastian Andrzej Siewior, Tony Lindgren

On 04/11/2015 02:27 PM, Nishanth Menon wrote:
> On 04/10/2015 02:40 PM, Peter Hurley wrote:
>> [ +Sebastian, +Tony ]
>>
>> On 04/10/2015 02:18 PM, Nishanth Menon wrote:
>>> 8250 driver should be relatively feature complete. It can co-exist
>>> with omap-serial driver
>>
>> Not really; if the omap_8250 is selected then it is probed first
>> and will be the only driver claiming omap UART ports.
>>
>> omap-serial would just be dead-weight.
> 
> true.. my bad..
> 
>>
>>> , so just enable 8250 OMAP layer driver and
>>> route all ttyOx references to ttySx through the standard 8250 driver
>>> to ensure no breakage of userspace occurs.
>>
>> Not quite; the only automatic handling is for console only, not for
>> userspace. Expect lots of userspace breakage.
>>
> 
> 
> Yep - overall, looking through individual logs, in my testing, it seems
> to work at least for console for all platforms - even though the
> filesystems are mostly going bonkers -> older fs did not have the udev
> redirection to take care of this - mostly to do with the getty hooked on
> to static consoles.
> 
> 
> There are infact two issues:
> a) bootloader change for cmdline -> O2 to S2 -> in many cases we are
> lesser inclined to change the bootloader, hence the fixup configuration

Just an FYI - support for handling of _any_ console command line
string by _any_ driver was accepted for 4.01; the console can
declare a match() function which will be called at registration time
for every console command line, and can opt to perform console setup
using any criteria.

This provides a migration path for _any_ driver (and also allow any
earlycon-to-console handoff for non-8250 drivers by using a defined
match() function to match the appropriate earlycon= command line; the
particulars are in the univ8250_console_match() kernel-doc header in
-next).


> b) fs changes - these are sometimes more realistic to do, but is a clear
> breakage risk.
>
> Overall, keeping two equally functional drivers in the system sounds a
> bunch of maintenance burden for all of us and not to mention confusion
> for the future.

I think for the moment we should just freeze omap-serial and let
most of userspace catch up first; a lot of the official and
unofficial vender support is still stuck in 3.14. By the time,
3.19+ is de rigueur we'll hopefully have figured out the ttyS
sharing and how to migrate without breaking userspace.

> Btw, I am not exactly proposing this for 4.1 kernel..

:) I knew that.

> instead, we should
> probably discuss how to best introduce this in and throw out the older
> omap_serial driver - just reuse 8250 and co-exist with the rest of the
> good world folks ;)..

I agree -- thanks for bringing the topic up.

Regards,
Peter Hurley


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
  2015-04-11 19:40     ` Peter Hurley
@ 2015-04-12  0:23       ` Nishanth Menon
  2015-04-13  7:43         ` Sebastian Andrzej Siewior
  0 siblings, 1 reply; 6+ messages in thread
From: Nishanth Menon @ 2015-04-12  0:23 UTC (permalink / raw)
  To: Peter Hurley, Sekhar Nori
  Cc: linux-omap, Sebastian Andrzej Siewior, Tony Lindgren

On 04/11/2015 02:40 PM, Peter Hurley wrote:
> On 04/11/2015 02:27 PM, Nishanth Menon wrote:
>> On 04/10/2015 02:40 PM, Peter Hurley wrote:
>>> [ +Sebastian, +Tony ]
>>>
>>> On 04/10/2015 02:18 PM, Nishanth Menon wrote:
>>>> 8250 driver should be relatively feature complete. It can co-exist
>>>> with omap-serial driver
>>>
>>> Not really; if the omap_8250 is selected then it is probed first
>>> and will be the only driver claiming omap UART ports.
>>>
>>> omap-serial would just be dead-weight.
>>
>> true.. my bad..
>>
>>>
>>>> , so just enable 8250 OMAP layer driver and
>>>> route all ttyOx references to ttySx through the standard 8250 driver
>>>> to ensure no breakage of userspace occurs.
>>>
>>> Not quite; the only automatic handling is for console only, not for
>>> userspace. Expect lots of userspace breakage.
>>>
>>
>>
>> Yep - overall, looking through individual logs, in my testing, it seems
>> to work at least for console for all platforms - even though the
>> filesystems are mostly going bonkers -> older fs did not have the udev
>> redirection to take care of this - mostly to do with the getty hooked on
>> to static consoles.
>>
>>
>> There are infact two issues:
>> a) bootloader change for cmdline -> O2 to S2 -> in many cases we are
>> lesser inclined to change the bootloader, hence the fixup configuration
> 
> Just an FYI - support for handling of _any_ console command line
> string by _any_ driver was accepted for 4.01; the console can
> declare a match() function which will be called at registration time
> for every console command line, and can opt to perform console setup
> using any criteria.
> 
> This provides a migration path for _any_ driver (and also allow any
> earlycon-to-console handoff for non-8250 drivers by using a defined
> match() function to match the appropriate earlycon= command line; the
> particulars are in the univ8250_console_match() kernel-doc header in
> -next).

OK.

> 
> 
>> b) fs changes - these are sometimes more realistic to do, but is a clear
>> breakage risk.
>>
>> Overall, keeping two equally functional drivers in the system sounds a
>> bunch of maintenance burden for all of us and not to mention confusion
>> for the future.
> 
> I think for the moment we should just freeze omap-serial and let
> most of userspace catch up first; a lot of the official and
> unofficial vender support is still stuck in 3.14. By the time,
> 3.19+ is de rigueur we'll hopefully have figured out the ttyS
> sharing and how to migrate without breaking userspace.
> 

How about the folks stuck on older distros like Maemo N900?


-- 
Regards,
Nishanth Menon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver
  2015-04-12  0:23       ` Nishanth Menon
@ 2015-04-13  7:43         ` Sebastian Andrzej Siewior
  0 siblings, 0 replies; 6+ messages in thread
From: Sebastian Andrzej Siewior @ 2015-04-13  7:43 UTC (permalink / raw)
  To: Nishanth Menon, Peter Hurley, Sekhar Nori; +Cc: linux-omap, Tony Lindgren

On 04/12/2015 02:23 AM, Nishanth Menon wrote:
>> I think for the moment we should just freeze omap-serial and let
>> most of userspace catch up first; a lot of the official and
>> unofficial vender support is still stuck in 3.14. By the time,
>> 3.19+ is de rigueur we'll hopefully have figured out the ttyS
>> sharing and how to migrate without breaking userspace.
>>
> 
> How about the folks stuck on older distros like Maemo N900?

By the time I was thinking about this, I ended up with this:
a) replace ttyOx with ttySx for the kernel console we it does not end
   up dark and add a warning. This works right now however the warning
   might been longer but then if one does not read it it might not
   matter at all.
b) add symlink udev rule so ttySx nodes becomes ttyOx one, too

a) was mainly for people not aware of the defconfig change who end up
with the new driver without any knowledge.
b) was mainly for people for people using some kind of "pre-created"
image where you are not sure which kernel they have. They still could
use the old driver or they might have switched to the new one. This
udev rule should make sure there at least a getty on serial after the
complete boot.

Sebastian

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-04-13  7:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-10 18:18 [RFC PATCH] ARM: omap2plus_defconfig: Switch over to using 8250 driver Nishanth Menon
2015-04-10 19:40 ` Peter Hurley
2015-04-11 18:27   ` Nishanth Menon
2015-04-11 19:40     ` Peter Hurley
2015-04-12  0:23       ` Nishanth Menon
2015-04-13  7:43         ` Sebastian Andrzej Siewior

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.