From patchwork Mon Dec 20 03:14:22 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ricardo Salveti X-Patchwork-Id: 76162 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from chlorine.canonical.com (chlorine.canonical.com [91.189.94.204]) by ozlabs.org (Postfix) with ESMTP id 4AE78B6F10 for ; Mon, 20 Dec 2010 14:14:41 +1100 (EST) Received: from localhost ([127.0.0.1] helo=chlorine.canonical.com) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1PUWCf-0003a6-VT; Mon, 20 Dec 2010 03:14:26 +0000 Received: from mail-wy0-f177.google.com ([74.125.82.177]) by chlorine.canonical.com with esmtp (Exim 4.69) (envelope-from ) id 1PUWCd-0003Zk-IK for kernel-team@lists.ubuntu.com; Mon, 20 Dec 2010 03:14:23 +0000 Received: by wyf22 with SMTP id 22so2305995wyf.8 for ; Sun, 19 Dec 2010 19:14:23 -0800 (PST) MIME-Version: 1.0 Received: by 10.216.2.68 with SMTP id 46mr4017057wee.71.1292814862859; Sun, 19 Dec 2010 19:14:22 -0800 (PST) Received: by 10.216.51.71 with HTTP; Sun, 19 Dec 2010 19:14:22 -0800 (PST) Date: Mon, 20 Dec 2010 01:14:22 -0200 Message-ID: Subject: [Maverick][master][SRU][pull-request] Properly initialize UART 4 at Beagleboard-xM From: Ricardo Salveti To: kernel-team@lists.ubuntu.com X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.9 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kernel-team-bounces@lists.ubuntu.com Errors-To: kernel-team-bounces@lists.ubuntu.com SRU Justification: Impact: Current omap 3 kernel doesn't handle all the available uarts when running on a Beagleboard-xM, failining and to initialize uart4 and leading to a trace warning while booting the kernel. Fix: The fix is already upstream and the proposed fix is just a backport of the needed changes. It basically defines the uart 4, set up it's ick/fck and change the code to correctly use it on a omap 3640. Testcase: When booting on a Beagleboard-xM the following warning trace appers: [ 0.000000] ------------[ cut here ]------------ [ 0.000000] WARNING: at /build/buildd/linux-2.6.35/arch/arm/mach-omap2/serial.c:727 omap_serial_init_port+0x88/0x1f8() [ 0.000000] (null): can't init uart3, no clocks available [ 0.000000] Modules linked in: [ 0.000000] [] (unwind_backtrace+0x0/0x100) from [] (dump_stack+0x18/0x1c) [ 0.000000] [] (omap_serial_init+0x30/0x3c) from [] (omap3_beagle_init+0x6c/0xfc) [ 0.000000] [] (omap3_beagle_init+0x6c/0xfc) from [] (customize_machine+0x24/0x2c) [ 0.000000] [] (customize_machine+0x24/0x2c) from [] (do_one_initcall+0x3c/0x1dc) [ 0.000000] [] (do_one_initcall+0x3c/0x1dc) from [] (do_basic_setup+0x64/0x74) [ 0.000000] [] (do_basic_setup+0x64/0x74) from [] (kernel_init+0x90/0x120) [ 0.000000] [] (kernel_init+0x90/0x120) from [] (kernel_thread_exit+0x0/0x8) [ 0.000000] ---[ end trace da227214a82491b7 ]--- After applying these patches this warninig is gone. Same patches can also be found at the Linaro's 2.6.35 kernel tree. BugLink: https://bugs.launchpad.net/bugs/688765 The following changes since commit e884768247eb057c5b2111e6c24a7e6e8fc37407: UBUNTU: Ubuntu-2.6.35-24.42 (2010-11-30 15:28:39 -0800) are available in the git repository at: git://kernel.ubuntu.com/rsalveti/ubuntu-maverick.git fix-uart3-init Govindraj.R (3): OMAP3: PRCM: Consider UART4 for 3630 chip in prcm_setup_regs OMAP clock: Add uart4_ick/fck definitions for 3630 OMAP3: serial: Fix uart4 handling for 3630 Nicolas Pitre (1): OMAP: some definitions extracted from commit 046465b76a Santosh Shilimkar (1): omap: serial: Fix the boot-up crash/reboot without CONFIG_PM Sergio Aguirre (1): omap3: Unify omap2_set_globals_3[43,6x]x functions arch/arm/mach-omap2/board-3430sdp.c | 2 +- arch/arm/mach-omap2/board-3630sdp.c | 2 +- arch/arm/mach-omap2/board-am3517evm.c | 2 +- arch/arm/mach-omap2/board-cm-t35.c | 2 +- arch/arm/mach-omap2/board-devkit8000.c | 2 +- arch/arm/mach-omap2/board-igep0020.c | 2 +- arch/arm/mach-omap2/board-ldp.c | 2 +- arch/arm/mach-omap2/board-omap3beagle.c | 2 +- arch/arm/mach-omap2/board-omap3evm.c | 2 +- arch/arm/mach-omap2/board-omap3pandora.c | 2 +- arch/arm/mach-omap2/board-omap3stalker.c | 2 +- arch/arm/mach-omap2/board-omap3touchbook.c | 2 +- arch/arm/mach-omap2/board-overo.c | 2 +- arch/arm/mach-omap2/board-rx51.c | 2 +- arch/arm/mach-omap2/board-zoom2.c | 2 +- arch/arm/mach-omap2/board-zoom3.c | 2 +- arch/arm/mach-omap2/clock3xxx_data.c | 22 ++++++++++++++++++++++ arch/arm/mach-omap2/cm-regbits-34xx.h | 2 ++ arch/arm/mach-omap2/pm34xx.c | 15 +++++++++++++-- arch/arm/mach-omap2/prcm-common.h | 5 +++++ arch/arm/mach-omap2/prm-regbits-34xx.h | 1 + arch/arm/mach-omap2/serial.c | 11 ++++++++++- arch/arm/plat-omap/common.c | 10 ++-------- arch/arm/plat-omap/include/plat/common.h | 3 +-- arch/arm/plat-omap/include/plat/dma.h | 2 ++ arch/arm/plat-omap/include/plat/irqs.h | 2 ++ 26 files changed, 76 insertions(+), 29 deletions(-) Acked-by: Tim Gardner Acked-by: Stefan Bader