From patchwork Tue Jun 29 02:32:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan (OSS)" X-Patchwork-Id: 1498191 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.a=rsa-sha256 header.s=selector2-NXP1-onmicrosoft-com header.b=JHgieeF8; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4GDSXK2lWNz9s24 for ; Tue, 29 Jun 2021 12:06:57 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 9887A8318E; Tue, 29 Jun 2021 04:01:45 +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="JHgieeF8"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 692BB83123; Tue, 29 Jun 2021 04:01:00 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FORGED_SPF_HELO,MSGID_FROM_MTA_HEADER,SPF_HELO_PASS autolearn=no autolearn_force=no version=3.4.2 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2061f.outbound.protection.outlook.com [IPv6:2a01:111:f400:7d00::61f]) (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 0483A83129 for ; Tue, 29 Jun 2021 04:00:53 +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=C56936tTgOJQYIvoEAgnXl5h14L1q5URDWLLgPYFHgil1Tf753pKqUNh/Jq91F20vNga+qH82V3VoAx1NvsuA1YLzAM7qI6mPotYSgATTQHTr4ap64Poobsw0wQKgLp1cY/fK5hQ+6kXhO2a7QC9GEMZM/6fGL87FBo8BEXSLYN49CAxYqrDcWhpihGd5TKlDB9h6dWceiK/1h7rvBXdU8rU3dhlYYhP4jNVzwduX6pMQZeWBQnDIW+kP+mTdKsBSxKUXCqRt4kJgCpuDe6PZAPzcfRnhadDtgHkPv4j4zLESVTFoYMYIbDw4n8lhHDzfSaPPidMX1UKNJoaRs8oVQ== 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=RIp0GA6rcxbRtLizWtfNdwJv1hjAflsU0GgsVS/UgBaz60vCSkC07WPD3R7aB/PbtfUWbwFmWw7YR61Wcr8NSTSKx+6Gi05/KASEMAmS8S0ki5gGRZQRL+VqNa1/XPrbReiUazvJxIbQ5JPfMzN2nZa43JziLED8Rsn6RvjV2re3M1Cbq0APnybaeV4tmUIzvLFiFEPQ1J08+MWzUVMU6zMy+vtukiFcWIbhVa0CACcIToc0qhjqQ++bWkeYV2UaOUg82jhGLOooh9uUrFrht83AE+MgsUQvm6dJyS6+tmxcdBJZNpiLQgJh5tNba+eIBoyX2qJV6xDkoTiJuibCCw== 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=JHgieeF8sqos9cnI26NE8biNcSQzngH2iwWntCqNhD0A998hw9LL5eWTppF1RAxmTwIpZoAz8QR5WmOiechXt7n5ROxxh9ITM4QOlf67ePrGPLhOKriXS2GNpiXwOz7PNgjOVe1uAzhSf9R1JbHvhw9GYXMoSpz7G8uiOxl/XdY= 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 DB3PR0402MB3657.eurprd04.prod.outlook.com (2603:10a6:8:b::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.20; Tue, 29 Jun 2021 02:00:50 +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.4264.026; Tue, 29 Jun 2021 02:00:50 +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 V2 39/46] imx8ulp: Add workaround for eMMC boot Date: Tue, 29 Jun 2021 10:32:33 +0800 Message-Id: <20210629023240.22394-40-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210629023240.22394-1-peng.fan@oss.nxp.com> References: <20210629023240.22394-1-peng.fan@oss.nxp.com> X-Originating-IP: [119.31.174.71] X-ClientProxiedBy: SG2PR06CA0088.apcprd06.prod.outlook.com (2603:1096:3:14::14) 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 SG2PR06CA0088.apcprd06.prod.outlook.com (2603:1096:3:14::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.19 via Frontend Transport; Tue, 29 Jun 2021 02:00:48 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: bcefaa4e-2b77-4a6b-5d28-08d93aa1b7f7 X-MS-TrafficTypeDiagnostic: DB3PR0402MB3657: 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-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6ubVUO0UccUgIKqaRVHmwiP7MkFNDbcaw5nw+YJjPa8HifWOvmDyOGSxie7I5ED89VtdZun0WKyBMQjcoqMXzoXXakJDuJMEYW0rTls/ZL9SngkN71rXMsZbF5sCNBeG9LLHj8/EB3gl9f9T7sYE6NKp0VX9Vrf0VFLTp5dioHVt+GeK+gqXTrTJq+6JN86VG8SBbDliLszQlALJgLXjhydvvylhdztV1dvJzRPmyFA5Hl6Ivh9Px12FW/813trvpSsw0vv8RdwuVP0DcMgtQBf2o7na4YKEjtnsiE14Jc/zKZCQCGyIVLXhdS0cjvB11Ams7FRZShQwRrjTvOlDas5VL7bPy2Pgi9boPqt6pM4XEuDwKNBVTXa7AefRaFIvSSaJK3VmD+DaM7fRj7cgldt1qj3a3L8UK/Htf5Q+HpEoM4jIdPEJGDPwAbr1CgeRRa3UqEUEsG8p31P68xze8FiBnrrtg7bGsPFg/xzpnGsQfEc0t5s8Mtyd7wWV0DKwkmGd2mPM1Ak6RAK/lsNHD8Vf88/iQ92gcBobRHsAWrIkre7jyoJ9+7Zz6qWBs8tJhHQtCgMmGnq5461LAjCUkm0NdB0NvHpw+RlaZ7RqvIH8dNS/j+bJYnOp37MvaUAEhKzEc0QTN/UdwF0biLHkq8gtg2hDGiCywv0Cv29lgk/L5oWYK9YXF3eHqby4uyEoUDHbJ/2lgXGgXX+Kak+1N+IR65f3WWLG6l6RpYaJKtk= 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)(39860400002)(136003)(396003)(346002)(376002)(478600001)(26005)(6506007)(38350700002)(66946007)(5660300002)(66476007)(66556008)(38100700002)(6486002)(2906002)(16526019)(8676002)(52116002)(6512007)(4326008)(6666004)(956004)(186003)(8936002)(86362001)(316002)(2616005)(1076003)(32563001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: XtMR6mCczo5HZLWs+GQugS+qnCBjKTuSYVKdHzVjekfVyEm8rebSrH3f1ApKayOSHubwfDWbpvokKlBYoIEM0BNZlmlCqDY7JSVMZ/Kdd4i7CAVtibPfEy+24p6te6EncKDOTAzdE33YnjK4bYZlcC3ruF5vL8/5JMeaUS1ZgBxOednyDxMJ4xsEiQRHr6C9nvSwSCg6JeIqcaRB369oLKwBaQ4NGIq4pT1F2acE0skHQ0uRRJo0bBxcd+vHDCd7OJqEmllYscYwWa7nM9ym19y6lLrby/SSh2rXtO9wDp9QEKVbN3UtN5zwSRbbvQRhsyAT5mDf3tmxQNZUgNbblTwUthLy7sX9MQ7nFZyqRYmT1XPH959kaLeYI6JnU6r5fCa+0/lX6Tl7Z8gtUUmqCN2nOEwyQ2mU7z9/jmWwI49jJHG6fZuIYKCQjrdM4Y//PMX1e7+XPtzsn9ulK0rU6QBb16l7IesJt/vhp2+IKDuFgzVjsIJ3OBn2lduxj2ECQuGoKFUBzCSdNqQycMd9TQ+4Z7tb2YuMx0l5fy7yCItTtL+soX7yA8RuA/bB5hZpNPZUM+ZihlJfZ13YWiH3b9qFMb2GlkXZ2BxteJlpzZSRt1zP5rVvYwIxjmQgaO3OeCEieY8Pf2bB+9x5lGKuM4wpw8jtmQYyaWPYCwplHn0hbzf5c/s1RSoAXBBJR03HDQB4sSk/75CUXlBuVVt16eUN+CdaDFHHAX4J3FlaiETemS4JMozl536Y8mxx2qs08eshyldDAU1B4BLwMiFu/uuft3J6V7n48nuSr+LPcb2WH1dhUYTTGFDU9289nnucxWWV0sNjZrAxO/wnSFGpep1W5rtSksmJLSLkzguHynkw53lz0wwan2gd6RiiglLmTIEb33Pe2vn0L31ugHM9VVOWajJhL6zDKyFcLArtWNqNbLVipExEyoXQnf/UNHvj35BGgT2nzc7xi30OR6LQU+AKU3XrSU9SvsrhvFMNEuAAr6987XplQd9plzNLkPEXL8a7TKjUE96fxVVOnRyrlUu08yY0e9zJ/R0gEbsFFnI57xWQ1ZlrAr125byXSu55W6DXh6BrczMEmknXEl/fj7LCEqOfF1XNOOEz4QBy5SHN1ggZzbdfx5TbAC0gnqusuYae38JZawZcegoCCE+wazlgwYqZliZ1PLD9ikMsXXQuqQWP636w7pmCB0S9V4h36Q5sIkJzwYBf72QIaBt/yuR7eVoSl/sLmsuRT9MA3mdAONHx/67cr8vbS5F+9p8YUD+vfdYVL7ggizDQ048xOBCLI5yCtC/tPWxxZtHfI1lSnRjhBdKm2wQNQVI9CSoA X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: bcefaa4e-2b77-4a6b-5d28-08d93aa1b7f7 X-MS-Exchange-CrossTenant-AuthSource: DB6PR0402MB2760.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Jun 2021 02:00:50.2302 (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: 20nIjzzVHfTWmzS5VmtDJlwSR42zMlpqVpggzNwV7N02SE7DgI6CLL2RqM/s9O4ZpNbYwzvTrDuKcYT/1mUYNg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB3PR0402MB3657 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; +}