From patchwork Fri Mar 22 15:27:45 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lee Jones X-Patchwork-Id: 2321431 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork1.kernel.org (Postfix) with ESMTP id 5CC353FD8C for ; Fri, 22 Mar 2013 15:31:57 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1UJ3uJ-0003hb-KB; Fri, 22 Mar 2013 15:29:27 +0000 Received: from mail-we0-x22b.google.com ([2a00:1450:400c:c03::22b]) by merlin.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1UJ3t1-0003JN-7E for linux-arm-kernel@lists.infradead.org; Fri, 22 Mar 2013 15:28:08 +0000 Received: by mail-we0-f171.google.com with SMTP id d46so1500365wer.30 for ; Fri, 22 Mar 2013 08:28:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references:x-gm-message-state; bh=cqsMbHK0OcQoFyil0zhPxoaIMIoWgmhDTI7HEYvXggE=; b=N6BRBmWeZm+eNadA9mVey1mGaGV9HPjQF0LAH6g6XgrQuhvoRdh7SNbtPc3Lbr19Wn 7WwMYX0PR0AIdlrAU8nMkatWU6DS/9Gl7TLqiSQ+qz3u0VXMkyyzurcQiQwWKZINbiNU UXyRU8BLOKCzKioijqc2RnQoO2Ltvgicd5IiaBsoE0QLYC9H82ODNolJWG89ZlzmNja/ 4ZtDDOyFkS5Lal7QV6UF6zzf6Ym8aRXbLIVpZO19Clrct+n95bRhS0D7h3AEp0FYp4qG 93kA/hYzBhiVssx9Pv0roOkRIgITlgAupur6vnI294y9PC0BJ3WaAvkTSiFS9OIaAfOS jXrQ== X-Received: by 10.180.78.168 with SMTP id c8mr3750669wix.27.1363966085000; Fri, 22 Mar 2013 08:28:05 -0700 (PDT) Received: from localhost.localdomain (cpc34-aztw25-2-0-cust250.18-1.cable.virginmedia.com. [86.16.136.251]) by mx.google.com with ESMTPS id r7sm4249093wiz.2.2013.03.22.08.28.03 (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 22 Mar 2013 08:28:04 -0700 (PDT) From: Lee Jones To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 5/5] ARM: ux500: Do not supply DMA platform data when booting u8540 platform Date: Fri, 22 Mar 2013 15:27:45 +0000 Message-Id: <1363966065-2478-5-git-send-email-lee.jones@linaro.org> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1363966065-2478-1-git-send-email-lee.jones@linaro.org> References: <1363966065-2478-1-git-send-email-lee.jones@linaro.org> X-Gm-Message-State: ALoCoQnvlrgxI1RqSsPXd0unESEFt7mIbUtpcIKxzQWMudNZzULdxA7vuHBInX3ozSPhCBi+ScRp X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20130322_112807_403621_82DC1F74 X-CRM114-Status: GOOD ( 13.33 ) X-Spam-Score: -1.9 (-) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-1.9 points) pts rule name description ---- ---------------------- -------------------------------------------------- -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: Lee Jones , linus.walleij@stericsson.com, arnd@arndb.de X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org The u8540 platform DMA settings are not currently supported. In this patch we ensure they are not passed to the serial driver during boot. This allows us to reach a terminal when booting with Device Tree enabled. Signed-off-by: Lee Jones --- arch/arm/mach-ux500/cpu-db8500.c | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c index 19235cf..da425f7 100644 --- a/arch/arm/mach-ux500/cpu-db8500.c +++ b/arch/arm/mach-ux500/cpu-db8500.c @@ -257,9 +257,6 @@ static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = { /* Requires call-back bindings. */ OF_DEV_AUXDATA("arm,cortex-a9-pmu", 0, "arm-pmu", &db8500_pmu_platdata), /* Requires DMA bindings. */ - OF_DEV_AUXDATA("arm,pl011", 0x80120000, "uart0", &uart0_plat), - OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", &uart1_plat), - OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat), OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0", &ssp0_plat), OF_DEV_AUXDATA("arm,pl18x", 0x80126000, "sdi0", &mop500_sdi0_data), OF_DEV_AUXDATA("arm,pl18x", 0x80118000, "sdi1", &mop500_sdi1_data), @@ -297,6 +294,22 @@ static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = { {}, }; +static struct of_dev_auxdata u8500_auxdata_uart_lookup[] __initdata = { + /* Requires DMA bindings. */ + OF_DEV_AUXDATA("arm,pl011", 0x80120000, "uart0", &uart0_plat), + OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", &uart1_plat), + OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", &uart2_plat), + {}, +}; + +static struct of_dev_auxdata u8540_auxdata_uart_lookup[] __initdata = { + /* Requires DMA bindings. */ + OF_DEV_AUXDATA("arm,pl011", 0x80120000, "uart0", NULL), + OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", NULL), + OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", NULL), + {}, +}; + static const struct of_device_id u8500_local_bus_nodes[] = { /* only create devices below soc node */ { .compatible = "stericsson,db8500", }, @@ -324,6 +337,13 @@ static void __init u8500_init_machine(void) /* automatically probe child nodes of db8500 device */ of_platform_populate(NULL, u8500_local_bus_nodes, u8500_auxdata_lookup, parent); + + if (of_machine_is_compatible("st-ericsson,u8540")) + of_platform_populate(NULL, u8500_local_bus_nodes, + u8540_auxdata_uart_lookup, parent); + else + of_platform_populate(NULL, u8500_local_bus_nodes, + u8500_auxdata_uart_lookup, parent); } static const char * stericsson_dt_platform_compat[] = {