From patchwork Fri Mar 29 14:09:10 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kever Yang X-Patchwork-Id: 1069730 X-Patchwork-Delegate: philipp.tomsich@theobroma-systems.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=rock-chips.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="u05M/HKS"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44W3Ws12YGz9sQs for ; Sat, 30 Mar 2019 01:09:29 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id C4CFAC21E73; Fri, 29 Mar 2019 14:09:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 07648C21DB3; Fri, 29 Mar 2019 14:09:23 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id CE7CEC21DB3; Fri, 29 Mar 2019 14:09:20 +0000 (UTC) Received: from mail-pg1-f194.google.com (mail-pg1-f194.google.com [209.85.215.194]) by lists.denx.de (Postfix) with ESMTPS id 6ED67C21C3F for ; Fri, 29 Mar 2019 14:09:19 +0000 (UTC) Received: by mail-pg1-f194.google.com with SMTP id f6so1279933pgs.8 for ; Fri, 29 Mar 2019 07:09:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=3DvNfRu+AXOvhntbwXvQcz5R/iV69v5f4n4lGao1frc=; b=u05M/HKSvLSB8FCT2rXBoY12MAm/l4tOYxlbgzmdzg+azZxH81oLyv4o24bNKJHVQL YrDY+1Oy/S5UyN/YaWDeHd407NxmHYO2lq2IxtZh+mL3PB3hYFS2f6XRNzWLkBrDJS+w EI1La1qMYgmeOWM7s0g6PN6j7Fm2y5GsNt+siRONks2ELFbFk5HmuJO+m2nUUGSOnOUe D04bI/hQ5r3VnhjFiQxNQosxrt5KmwY6K2uXRrsfYjsaqsFX7mH4E9EQ2Id+ifdD+Dxj 2FzZBlvhgip6uQI/hzpeGQWVsCVpqHZV49bSkbb5T/s7LlEmDLxax4Y6hXjiDzB6BhI9 5unQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; bh=3DvNfRu+AXOvhntbwXvQcz5R/iV69v5f4n4lGao1frc=; b=ojVPeMS+DQUfxgU39TPTfL94ztbSnTKSnOkHRR/B8QC7Rfu+WZCS+syV6W82Q0wwI6 MUdjn9PB2UTwpbS7oXuk+mY8vkn2jIO4LFaxq/36Nqbb7TW2CwUho/awoPNaq9t0JwS5 lGjPyhdhmXLtAKRQdlbAcPcRsMSfhZb67k83QyFz9GMhU4HFU3EiGZTQ+ZDV3TOm1sqv W9Jreok7CxU8jK2wTVMmB4YmLVhSsgPFNKlB8xJxN+PblzBqfFJkNG6MJkM8NiJMskOC bFzTM57+Q2GKGu/zb4Igfhtw+ThRpzPuC7w0OgEMWs72l9JvkUt/H4zfzg65ppAMnNJT vqgQ== X-Gm-Message-State: APjAAAUfxC/T7ZtqHq2thejnqYJGYeOnI/B64iO989ohq7KBvaGQxlwK l6aRdCsePXPmeHwJ0CcYIJ0SetOx X-Google-Smtp-Source: APXvYqySrPKAyt8qvssw93mLRvkdvIROTFlo0O0Di6BhfNdjscO7n9hP+FDARS/O0xfw6Xb4aPTQpQ== X-Received: by 2002:a62:bd09:: with SMTP id a9mr46843917pff.61.1553868557519; Fri, 29 Mar 2019 07:09:17 -0700 (PDT) Received: from localhost.localdomain ([103.29.142.67]) by smtp.gmail.com with ESMTPSA id a13sm2647717pgw.91.2019.03.29.07.09.14 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 29 Mar 2019 07:09:16 -0700 (PDT) From: Kever Yang To: u-boot@lists.denx.de Date: Fri, 29 Mar 2019 22:09:10 +0800 Message-Id: <20190329140910.29503-1-kever.yang@rock-chips.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Cc: Marek Vasut , Michal Simek Subject: [U-Boot] [PATCH] spl: fit: handle mmc read to sram case in rockchip SoCs X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Rockchip fit image with atf may have firmware for sram, so the fit driver need to read data from mmc to sram, but Rockchip mmc controller does not support this data path, we have to read into ddr first and then copy it to sram. Signed-off-by: Kever Yang --- common/spl/spl_fit.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c index c9bfe0cc8a..5c5b58f69d 100644 --- a/common/spl/spl_fit.c +++ b/common/spl/spl_fit.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #ifndef CONFIG_SYS_BOOTM_LEN @@ -215,6 +216,15 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector, return -ENOENT; load_ptr = (load_addr + align_len) & ~align_len; +#if defined(CONFIG_ROCKCHIP_RK3399) || defined(CONFIG_ROCKCHIP_RK3368) + /* + * Rockchip SOC's mmc controller does not support read data + * from mmc to sram, we have to read to sdram first, and then + * copy to sram. + */ + if ((load_ptr & 0xffff0000) != CONFIG_SYS_SDRAM_BASE) + load_ptr = (ulong)memalign(ARCH_DMA_MINALIGN, len); +#endif length = len; overhead = get_aligned_image_overhead(info, offset);