From patchwork Tue Dec 17 01:03:40 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergey Yanovich X-Patchwork-Id: 301948 X-Patchwork-Delegate: marek.vasut@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id C2D732C007E for ; Tue, 17 Dec 2013 12:05:18 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id CC7734AC55; Tue, 17 Dec 2013 02:05:16 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qWDT8equX5pC; Tue, 17 Dec 2013 02:05:16 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 634D44AC57; Tue, 17 Dec 2013 02:04:54 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 95D5F4AC73 for ; Tue, 17 Dec 2013 02:04:44 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id A2GFvk-L3YEN for ; Tue, 17 Dec 2013 02:04:40 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mail-la0-f54.google.com (mail-la0-f54.google.com [209.85.215.54]) by theia.denx.de (Postfix) with ESMTPS id 845074AC4E for ; Tue, 17 Dec 2013 02:04:07 +0100 (CET) Received: by mail-la0-f54.google.com with SMTP id b8so2941410lan.41 for ; Mon, 16 Dec 2013 17:04:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=4UqTZSpSkGzKqlHEkDoktyIu4nQNX8kDYVliiJzSQSg=; b=nn/TzLv8K70xg6BMv9GIUM2T9t9sFFuV8SCF191n8Td3H4zSEybZ3T/nAUWqjateUH 9RaNH/LNXVmmzr/ZtQFNe7RxtrVr1GkZNG4U7ergpN4mWadd/uXBe/yPfi6rVK1HqRHm 3ABzDVyEbgWf3QVA/fiZGstRrkKn7d8MDtyGak8GpsUAuahBPJLk591u6IPLi011Lx5Z z+Va7MwMAXnUQyUIwKy8jA3QyKml9FOzFHMLA60FzM4igi0YvGl6QN1hJvOAH2Zs5gh1 mOkfVBLcD4SJOt+AfSAd5A5JvWabKFj7V403J0KJwFhq3pTjkNN2EoppH3vmuC+eqSdM uh7w== X-Received: by 10.152.203.129 with SMTP id kq1mr369274lac.77.1387242246535; Mon, 16 Dec 2013 17:04:06 -0800 (PST) Received: from host5.omatika.ru (0893675324.static.corbina.ru. [95.31.1.192]) by mx.google.com with ESMTPSA id y11sm290262lbm.13.2013.12.16.17.04.05 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 16 Dec 2013 17:04:05 -0800 (PST) From: Sergei Ianovich To: u-boot@lists.denx.de Date: Tue, 17 Dec 2013 05:03:40 +0400 Message-Id: <1387242224-22495-2-git-send-email-ynvich@gmail.com> X-Mailer: git-send-email 1.8.5.1 In-Reply-To: <1387242224-22495-1-git-send-email-ynvich@gmail.com> References: <1386999720-23460-1-git-send-email-ynvich@gmail.com> <1387242224-22495-1-git-send-email-ynvich@gmail.com> Cc: Marek Vasut Subject: [U-Boot] [PATCH v2 1/5] ARM: pxa: prevent PXA270 occasional reboot freezes X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de Erratum 71 of PXA270M Processor Family Specification Update (April 19, 2010) explains that watchdog reset time is just 8us insead of 10ms in EMTS. If SDRAM is not reset, it causes memory bus congestion and the device hangs. We put SDRAM in selfresh mode before watchdog reset, removing potential freezes. Signed-off-by: Sergei Ianovich CC: Marek Vasut --- Changes v1..v2 * write to MDREFR once instead of in a cycle as suggested by Marek Vasut arch/arm/cpu/pxa/pxa2xx.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm/cpu/pxa/pxa2xx.c b/arch/arm/cpu/pxa/pxa2xx.c index c9a7d45..7e861e2 100644 --- a/arch/arm/cpu/pxa/pxa2xx.c +++ b/arch/arm/cpu/pxa/pxa2xx.c @@ -279,6 +279,7 @@ void reset_cpu(ulong ignored) tmp = readl(OSCR); tmp += 0x1000; writel(tmp, OSMR3); + writel(MDREFR_SLFRSH, MDREFR); for (;;) ;