From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MSGID_FROM_MTA_HEADER,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5F3D1C636C9 for ; Mon, 19 Jul 2021 07:21:11 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D11566100B for ; Mon, 19 Jul 2021 07:21:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D11566100B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=oss.nxp.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id DD4A782DDA; Mon, 19 Jul 2021 09:16:24 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=oss.nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="V82DfWtD"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 8C80E82D3C; Mon, 19 Jul 2021 09:15:23 +0200 (CEST) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on0607.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0d::607]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 4651F82CDC for ; Mon, 19 Jul 2021 09:15:15 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=oss.nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=peng.fan@oss.nxp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L/DUx7toC++M4YGGPGe1ma5hkY/DjelniBYz9Q9Gofbfkdo1T/sNt2kpAzObjJtxwGHtqse+hPrmqE5BKwgpyJgmWiVAf5tyXF7wBkhcvk+yW8PXI+wtvLn+bFR2XNufvAjw3u48JbAxD4iVUbgAAZadqTv0mMGOtBebqsk9sYmpKe65I0dXFENbh0rh3Gzi4NyIFYMNtqGpo6G+QVqcpSj8Y8e51qzgXnO/1LtK9f65ZFUY8KnBCSFCF7mZOm9DyKnu83Yby9Ge3mOSNllQzHLCTzc6njnPKgs9rq5SvUMONIhgYyZNkk94aX9hwRLIvoJJpFTEiqjfLvFrWby1kA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SziVSJY5bx724XSFSUfL2X99qgm0pkHa4qTrP0NvUwI=; b=DFR0FqCqaDPwHb8ZEn6zYlmi+t677dvmspOrbvdjOM3Hv+puJVW/ZRREmni6DTM7LnfF3k0VS47hILbEvnuOaioKbo3aZmq0ZAiE+Npw6RoXVzFKWzPLiuFcUwUTvqhaKFE4tUVB8gl2QwSJwFDuPulgDWY6IHtExcAKSTHJPVZy4HI6ijwTlGbFrubH5cj35z46jewUmfgcg61hAJfuYzJJfEpNKnjR9r6pPIWjIrSDEc+EwnFji6sq5jm0trpVrZZngFOt2SKAW22EFDCZssK5N3V8MlRutEQvW3g5nJmdFdHSkRaijxU/UNMZhcqQmZUm8qsCB8+dZHcroArWoA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector2-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SziVSJY5bx724XSFSUfL2X99qgm0pkHa4qTrP0NvUwI=; b=V82DfWtD/uEzURGYX0FtzUe9dhLirU4ke+pCvvaq9Lw0yb+f21NcOWA1rj1fnbunLen3p4WpzYgWfMc79QlYJB/S1yMELtxxsrzKpp2Hw/D89xqeTn1T4rjahfIOjXKgdTH/kU2uM7Dg/GzoSCUjI0Ssh2UTZitBU/Q3h34Oabc= Authentication-Results: denx.de; dkim=none (message not signed) header.d=none;denx.de; dmarc=none action=none header.from=oss.nxp.com; Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) by DBAPR04MB7302.eurprd04.prod.outlook.com (2603:10a6:10:1a5::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.25; Mon, 19 Jul 2021 07:15:14 +0000 Received: from DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::c445:d742:eb76:86dd]) by DB6PR0402MB2760.eurprd04.prod.outlook.com ([fe80::c445:d742:eb76:86dd%9]) with mapi id 15.20.4331.032; Mon, 19 Jul 2021 07:15:14 +0000 From: "Peng Fan (OSS)" To: sbabic@denx.de, festevam@gmail.com Cc: uboot-imx@nxp.com, u-boot@lists.denx.de, Ye Li Subject: [Patch V3 39/44] imx8ulp: Add workaround for eMMC boot Date: Mon, 19 Jul 2021 15:47:29 +0800 Message-Id: <20210719074734.29170-40-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210719074734.29170-1-peng.fan@oss.nxp.com> References: <20210719074734.29170-1-peng.fan@oss.nxp.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SGAP274CA0006.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b6::18) To DB6PR0402MB2760.eurprd04.prod.outlook.com (2603:10a6:4:a1::14) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from linux-1xn6.ap.freescale.net (119.31.174.71) by SGAP274CA0006.SGPP274.PROD.OUTLOOK.COM (2603:1096:4:b6::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4331.21 via Frontend Transport; Mon, 19 Jul 2021 07:15:12 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d7777c14-198e-484c-0467-08d94a84f3da X-MS-TrafficTypeDiagnostic: DBAPR04MB7302: X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:8882; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: wJrU24tA1j8EPRTJ6X/Y6Tshz+4PF+acgORYMgEgOxt02ycUni0wp2j4z6DREY74gpe8OQN0yEvqiZXTz6iiiKmO0mrBJa6DcbmwwsslMM51kLhr+4XXdMyNCzQ89TE4G0yLpt2KwJXg0gAY8qtTi5pVHYZwL8RhB0CmMa+oKt10nhRNZjbNxOhGICnUktR5W8qTgpgSd0+q+vAzpPA7np5UuVZ7bgade2zjbaGdpQVn6oaDNjTjpl4fpP4vBAYM2Xqa4/Xl1lf0FX74kjtS+JbdXi3YC0dgGwUyLqMNBlkORV/Eatd4EumIOi2ufbOOAugXk49kPKePwp4/+qrSAf7ONUDJ2kxHfYoL1ctr/rzMebWEiW5PriYgbSz2ogeejonqJrSU0OuWYTX2DgwiiRhU8xOTXjztsQcGJ58veyKN5QCUBTEjjByY6SHpeE+qfpuBhpi74mfFVpvQEANd4TvX/QouARmLahuLEO//QFxYBZVmtt4hu3iom9WSHZVCG6DZTyvy49XIU8YEcrLgkEB5pPJtfY8jwvGss/G2l1xxy6RNAsPwac0EycqdhpedjJ7xMD+aSf4R0DgtKsyVoifa3RcXhBdK6HoxYnHRWO6W7WcN8mF82J3Da7hkdekXgW/9MJ5aYSKTMUyLIdQD1ewgTb2C/Mjxa3ErEZhdYtmfsESZtbPf0UZ3nXmTNqzh4f0+P+mc17pQ/nivJoh3NMykhq+pGE8/EPEUTfEUakI= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB6PR0402MB2760.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(2906002)(1076003)(6506007)(8936002)(52116002)(186003)(26005)(86362001)(316002)(66556008)(5660300002)(2616005)(6666004)(6512007)(508600001)(8676002)(6486002)(66476007)(66946007)(4326008)(956004)(38350700002)(38100700002)(32563001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?9eW9Iit30TwtUL0jYpkv3946C+u8o6XX5Ju3ze8NPfB2+preDUV/NmCOsU3i?= =?us-ascii?Q?Y0l5FzBhRP4pEHHb3M9Qgt8vCdltxFr5R8KkX+cLddCo1JBFlewGmqOSPP2R?= =?us-ascii?Q?5GxPwtMH2ZrfG8svm1OUnazM3CWlC2OweKbN3GB4DXUoEmwH8VskBpT7GYYV?= =?us-ascii?Q?9ALxarH446MHyKkKuCRyyvCdv/z75msBk/gAwm/lkTYs9iwkcvXofhgVISBn?= =?us-ascii?Q?0Aw/e8hbgKcTZ2sWBeUlYqmOeyFbIRAGBL1aZB7Xb7U9r4PtZwRwbQ9tqPX2?= =?us-ascii?Q?JspuIMYdGztKwCmhjh2FAJiQGXIzapcgdrVRNb+OwKMMFgMXqBGMCdqpchI9?= =?us-ascii?Q?42/E2PTUp5cRKzVUKuOKMyhC8hp4JRdCOv/xh0WgFvqa9yfl8joJEx027lX3?= =?us-ascii?Q?cDBoafoXQ57TMBtEbK/MAd/gFtd0gDtTQr2UTLwz4l9s1c/NRQvrRlA+Xqf3?= =?us-ascii?Q?gx3M6nxPpbGE9eE7+0DRfVXTx6Jv97LIDfKJCkBUatJIh6daS1mePmNHQHk9?= =?us-ascii?Q?agbTMWGr9g0ECWZbmS4kBpGWti3DCvCDW0xLKfbQOd5QmkB0fSY6wtUjeWBK?= =?us-ascii?Q?HaLxNRCYz2jPT4jnfhy4PdEA5cZdoALcGM3Pek6E1YeJEaMUqGeUYkTirAha?= =?us-ascii?Q?uiv/zPXTKEkU9M+eT6eGf/D5X8U83K60641daxVCFx1RqQNc6zdzxo2Cgx4g?= =?us-ascii?Q?QRBV6tPp57a1mzxGG1rEdZugEQJhQvEvm77PjsFvIs0C/lznTh7m85SP1njk?= =?us-ascii?Q?wn41AzoPEzO1NSppXOAw2n3lbc64nvN+viUgKKSgYJeQvEDLPhFTA6FvMECq?= =?us-ascii?Q?5vMcEORqxFCYWanPb+Usvg80FxIMjEjGxXKIWYC2rYl/HzhyMF01GqsF/vhq?= =?us-ascii?Q?eHgcIXTl/GFfCXNCxnHfbQ26K804jP85fSazNqNdYDLDt/NlNeO7nYA0YlnQ?= =?us-ascii?Q?3D7AHmR5pM03M7xIzk0j/sC99o05tSq5yA10qG7OJ1AJKe3JAtZadDFndS7V?= =?us-ascii?Q?jvcqQ3BlWhlcmYwWG1jW2OZXuCx02JwvZLL6IY5X9f2eVf90UaSgzfAl3R/N?= =?us-ascii?Q?SlrYeGEmbOlickRq3oI3SCBVZkaPML39jRjk9iJstdfBTwInC4FwX0e7prf9?= =?us-ascii?Q?uDB/NwMpVD0g+s7ZwJdhhYvc21G0n7Tuofv3mmqfApBMtQsbCDIzWMSPs6+b?= =?us-ascii?Q?pPl3W70k0CevlaAEwLCim4fw1PhfWsbdcjArn30OFNy76w61WUx3MfzgdLJM?= =?us-ascii?Q?9rLeWgtDbM8kvp80+HPS6XGqdc3FLcBF8wiYul46TqlKq/8Nw3P4dFJIHcz5?= =?us-ascii?Q?BtMO1EyRy87QVA0Sa7C9tfm/?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: d7777c14-198e-484c-0467-08d94a84f3da X-MS-Exchange-CrossTenant-AuthSource: DB6PR0402MB2760.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jul 2021 07:15:13.8904 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FfKSHlqbtwnpgxPuqo9bjmBC2baxDN+YmNROtzuEUPp/3GtyfzQk2TfwLGivLg7idwgeqNDto0Oi2cmHrCTCAA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR04MB7302 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean From: Ye Li When booting from boot part1/2, the image offset should be 0, but ROM has a bug to return 0x8000. Has to workaround the issue before ROM fix it. Use a ROM function to know boot from emmc boot part or user part So we can set the image offset accordingly. Signed-off-by: Ye Li --- arch/arm/mach-imx/image-container.c | 7 +++++++ arch/arm/mach-imx/imx8ulp/soc.c | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/arch/arm/mach-imx/image-container.c b/arch/arm/mach-imx/image-container.c index c3f62872c6..68b30bcfc5 100644 --- a/arch/arm/mach-imx/image-container.c +++ b/arch/arm/mach-imx/image-container.c @@ -265,10 +265,17 @@ unsigned long spl_nor_get_uboot_base(void) #endif #ifdef CONFIG_SPL_BOOTROM_SUPPORT +u32 __weak spl_arch_boot_image_offset(u32 image_offset, u32 rom_bt_dev) +{ + return image_offset; +} + ulong spl_romapi_get_uboot_base(u32 image_offset, u32 rom_bt_dev) { ulong end; + image_offset = spl_arch_boot_image_offset(image_offset, rom_bt_dev); + end = get_imageset_end((void *)(ulong)image_offset, ROM_API_DEV); end = ROUND(end, SZ_1K); diff --git a/arch/arm/mach-imx/imx8ulp/soc.c b/arch/arm/mach-imx/imx8ulp/soc.c index 709895fa22..ab2af57acd 100644 --- a/arch/arm/mach-imx/imx8ulp/soc.c +++ b/arch/arm/mach-imx/imx8ulp/soc.c @@ -532,3 +532,13 @@ void imx_get_mac_from_fuse(int dev_id, unsigned char *mac) { memset(mac, 0, 6); } + +int (*card_emmc_is_boot_part_en)(void) = (void *)0x67cc; +u32 spl_arch_boot_image_offset(u32 image_offset, u32 rom_bt_dev) +{ + /* Hard code for eMMC image_offset on 8ULP ROM, need fix by ROM, temp workaround */ + if (((rom_bt_dev >> 16) & 0xff) == BT_DEV_TYPE_MMC && card_emmc_is_boot_part_en()) + image_offset = 0; + + return image_offset; +} -- 2.30.0