Skip to content

OMAP2+: Fix boot hang with earlycon enabled

Mark Jackson linux-arm-kernel linux-omap linux-serial 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest0 of 4 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 4 patches the cover letter announces are in this archive.

Reviews trailers per patch

PatchMark Jackson
SeriesT-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 0/4] OMAP2+: Fix boot hang with earlycon enabled
Quoted 28 lines · Rajendra Nayak

Boot on all OMAP2+ devices is broken with earlycon enabled as discussed here [1]

There were 2 issues which were rootcaused
1. Issue caused due to hwmod doing a reset of console uart while earlycon was using it (seen only on am335x devices)

2. omap serial causing a NULL context restore with context loss count missing.

This patch set attempts to fix both the issues and is one of the different approaches discussed [1] on how to fix these issues.

Boot tested on omap4 panda es with and without earlycon (DT boot) Boot tested on am335x bone black with and without earlycon (DT boot) Boot tested on OMAP3 beagle XM with and without earlycon (non-DT boot)

[1] http://www.mail-archive.com/linux-omap at vger.kernel.org/msg91662.html

Grygorii Strashko (1):
serial: omap: enable PM runtime only when its fully configured

Rajendra Nayak (3):
ARM: OMAP2+: hwmod: Fix a crash in _setup_reset() with DEBUG_LL
ARM: OMAP2+: Avoid idling memory controllers with no drivers
ARM: OMAP2+: Sync hwmod state with the pm_runtime and omap_device
state

Quoted 10 lines
 arch/arm/mach-omap2/omap_device.c                  |   18 ++++++++
 arch/arm/mach-omap2/omap_hwmod.h                   |   48 ++++++++++++++++++++
 arch/arm/mach-omap2/omap_hwmod_2xxx_ipblock_data.c |    6 +--
 arch/arm/mach-omap2/omap_hwmod_33xx_data.c         |    2 +-
 arch/arm/mach-omap2/omap_hwmod_3xxx_data.c         |    9 ++--
 arch/arm/mach-omap2/omap_hwmod_44xx_data.c         |    5 +-
 arch/arm/mach-omap2/omap_hwmod_54xx_data.c         |    3 +-
 arch/arm/mach-omap2/serial.c                       |   11 -----
 drivers/tty/serial/omap-serial.c                   |    3 +-
 9 files changed, 81 insertions(+), 24 deletions(-)

This now fixes the boot hang for me so ...