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 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 smtp.lore.kernel.org (Postfix) with ESMTPS id 2C3A5C433EF for ; Mon, 20 Jun 2022 06:00:51 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 3A74084417; Mon, 20 Jun 2022 08:00:49 +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="WMekTPFv"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 4AA798440C; Mon, 20 Jun 2022 08:00:47 +0200 (CEST) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20610.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1b::610]) (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 2C3528442F for ; Mon, 20 Jun 2022 08:00: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=peng.fan@oss.nxp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n1ezFG0u1Dnbh/f1UrwvesLJk/URDjPnU8vnkU6tpeNLp9aVVvlUiWCDFKfjhnYIgHitz1JouqCGWgxM1OZZvYUlVbArRRjCN+CaVy9fjq7zm5C5hvIt335VzoN66tryCQf04Y/52PYOlIULNQtv7XrK0HyAPtcp/hQMhfl/DRSQ4kgRGVhrRCvUmXywmqx4Nd8tRzfBe3sXLNTv6JS2I5ElXxapgjsTJOqSEBi0J0gCZ//o9voNp89CUPnFKbZClIlWMZlUzn9CPx1u2wrp3s7+jffCVnG+5ESPMgESWnkSS2zeM0+MiESgwfmI9tim9lCYsXg9y9PuTAs/7h/tlQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Hd/XjqvP8TyRLEz7NmsVkdZbP90C2unSckrkS+YLbWU=; b=XoHFx57a4sw7Co9/3g3nlgr7Fm30A1uCDjpfKDaJueLQPohRPCknzxWI3DLrhkNPMDdvPSB0bIdo3k2ytbzjHTo/Z5JF9qKienCsIazeEGrqmSQ8yoWPbtUDH409PqBVRAUbNxRq58unMqUamNdliFHbojEzfCNXGqbDhNuFLbxwdHcJu6YnEdgZtLUSZ1/ANNo1SEo672zb8/PpLBlXLHQd37axBseTkF4kat959QtckawDxSGzpqB4QlvrLBGzuq56X7xNL+bWlZ8y0TBUfoUu7sp6fbDaYyJlFhow/V7kkhBXaQxnQ+CqTxomZIECsmW2FNfvJXtV2CCORPEZPA== 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=Hd/XjqvP8TyRLEz7NmsVkdZbP90C2unSckrkS+YLbWU=; b=WMekTPFv9ZFVTlxbTj4woyZ0BJp+lRfLD9GllI40UB1Bg4MgOWLmifBcXK2snM9MeN7mM1jovYR0xmHYfgH8Go4QKSbnSoMKB6H8ezz/HF4n6ZCRS6KZVGW48t8Ex5zw/I59NPXlyKr44qxW1rvflD4SO17EyXdmDWtKeIjvY/c= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) by AM6PR04MB6456.eurprd04.prod.outlook.com (2603:10a6:20b:fc::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5353.21; Mon, 20 Jun 2022 06:00:37 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%9]) with mapi id 15.20.5353.016; Mon, 20 Jun 2022 06:00:37 +0000 Message-ID: <129747c1-2218-f319-9e30-528fb9adbb31@oss.nxp.com> Date: Mon, 20 Jun 2022 14:00:27 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Subject: Re: [PATCH 1/3] mmc: fsl_esdhc_spl: Add support for loading proper U-Boot from unaligned location To: =?UTF-8?Q?Pali_Roh=c3=a1r?= , Peng Fan , Jaehoon Chung , Priyanka Jain , Sinan Akman Cc: "u-boot@lists.denx.de" References: <20220511183332.1362-1-pali@kernel.org> From: "Peng Fan (OSS)" In-Reply-To: <20220511183332.1362-1-pali@kernel.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SI2PR04CA0013.apcprd04.prod.outlook.com (2603:1096:4:197::6) To DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cff55cd9-c90d-44d0-4c48-08da52823228 X-MS-TrafficTypeDiagnostic: AM6PR04MB6456:EE_ X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6Iuw3S4lkaAQlg11r64phYxRtmGj7/oZST70Acbp6YIejLmkRPebG3p2qjuZ0Op8ixwy/miohqXXdGJSdQZ6pQS0bmTU/zaZ/5ZAO96j421gOzhsNYUaxhevrKTmVyvzH8PEsWnMsl/cKUDarceTtY+IZwJvl0AhuGlbW0Ve00tb2KbbkHUpnZQTbal7q0KYWflH699dibftnUAM8u6lT/gC2NjkrIOsh/LQw2fOoiyt7UOwLxsEbP8N7sGBAwj+o5dJxoWIx4WI7DvMrZOJYzvqQf9wCri38FUQNSpkHigq5qjay05tQ6qz6eBz9RaCEqV745/+3nj9KZzQgWzB5fDIn629Eg3caRpO5XOdYp6NvI3MKoSk051pA0i3EFV0SuiFwu515vXOKCwtxPALZDTtjWxUd87v+OlZVVym4qBoX2tAFp5skT/cTh0BthA5niwDFW03xSdTtGfYF5MbFOE6KO5aobmuhmmPremXZNBKt9B8lrazQrHnju7HgRU/NxwMfjTTfPc2csDd1d/0uHw3qh3zx2P/znzUfM9BweM7s2zQz/6ouZMAtOKsRvskmBeCdOlYngxfTK4dfY/JAxLoqEkjDb0RNVTNyawr/m+2JOb+qHgWwzkTyw//PMykg5co7UrfGAYcymbmg1B1E4jmZhSK8BuNL587bF3aLK6XckydgJfImTEWTCcjm2ZBlu9q73Fr/R2efH3QLn/RB8SWHq/QO3mITEW9tai0ssOg+UfFA3vJCsnonXJrZ2MjaRhCxC6rnaeymGtml4c39A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR04MB9417.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(366004)(6486002)(8676002)(66476007)(66556008)(4326008)(86362001)(66946007)(110136005)(498600001)(31696002)(66574015)(316002)(38350700002)(38100700002)(6512007)(2616005)(52116002)(6506007)(186003)(26005)(6666004)(83380400001)(2906002)(5660300002)(8936002)(31686004)(45980500001)(43740500002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UWgxeGpoR012WmV2VTZ3YXo3bmlyYUV5Y1U2VU9YVk00QWdTRkpPallqT1Mw?= =?utf-8?B?ZmpOdDlWMVFVVlJPMU9mcjBSVzN1MWtGVzRxa0Rpdlc0U2ZNUkgzZkY3ejl2?= =?utf-8?B?S0Y0djJoT1pUdHR5VGoveXZVWmlUWVdrbTVSK3h2cW0zQUJNODhXUVVxTEpa?= =?utf-8?B?cmwwcmplT1Yzbmo3TEp3Q1AzYlJEMjVUMmsyNlJTaHRWU0cwc1NMdUR4OC9q?= =?utf-8?B?V1h1WlVub05ybk5ZR0xNZTcydlpuT2VoU2xtek5CV0tISExja2d1VE5OaEJU?= =?utf-8?B?bnQrTW5CdXRaZGVHWDZONFVlaEdvTit1UmNRRXBHdXlWTUlMc0UzMXdHMWpU?= =?utf-8?B?N0lkd0dzMnl5dGtuZ015NVYxV2FZTU9uVS9TdS9yNkYrTnhsZ0VuSkN5VXFT?= =?utf-8?B?VkRCdlVEYldIYmlIcFh0NTJXTXVwalNmcHNPQmQ1a1VKbWNzOURmcUI3SkQ5?= =?utf-8?B?R04zTHVuR0EzeEUzeHpLYm1OYmJzclljS0dBMUc2YUxSYWZOd256YnBQYWJs?= =?utf-8?B?bTdPUnFva3VSdjlCQTNKdEdsZ2RWWTErSjNrN1NHQVl1eDAzdWdENU91eUM0?= =?utf-8?B?bGRpRmVxaStTanM1STZHaFRnU1c5cjYxMWsvSHNuRmRHZFNBVWE3V1E3NGNZ?= =?utf-8?B?NktaR0t1eVNUMFltNlpEczk3VGl5aGYxL1ZPQTZWSUhNSDNpUUNFMVVzTytk?= =?utf-8?B?RGJ1dXhiOEkySnY4dWtjend5UWlkam02UjZDZ3JGZnhLUzVjVlo1Mjh2dGIr?= =?utf-8?B?eS85U0liMlJ6cHZFUG1zb2RXMG9mT3I0Z0podEpJV2pJTmNUQ0U5QlB5OE1M?= =?utf-8?B?Yk1BZW9yRzZ4YVlweDR6RUpWei9RS1lpN0ZKV2p0L1p4aEdITGFocXhzckpJ?= =?utf-8?B?bWthRnlLM2M0bDl4czRYaEpPK0poNTdSTW5TUW43REV5MFVKeEVYL2hUcHlW?= =?utf-8?B?R2lOMUZKN2dVd1JVdFlPQkRndnozK1pTWU5zQVVtdHZ2eXpZcXI0WTJLMW5m?= =?utf-8?B?ZGtFRG5PZnpIdFI4QzhEb2I3c0szNFYyamx2T0ZSUmwyZGZtR3B6QjVIbzZ2?= =?utf-8?B?TDJUMjRvMVluV3hDTm1SOUIvNlBKNlhrMVZaUWRIdVNmdGZ0eVRwMVFTaG1X?= =?utf-8?B?cTIvZ3grR3hLRlUyU0RIdWhMMFBNUjlYcU10U2wwS2poZWJkQUxxYWRkdEZn?= =?utf-8?B?NzBtMzI3Y0dEelVzSWk2czFNakhsaTg4OGg4UStJbHY1Y2duTFVpK0FkRUc4?= =?utf-8?B?NlAxMmhmaUQ1RXpNeGxQNGs2TFNhSVZGWjd2dVAralVMRytkcGpXSStFRm9L?= =?utf-8?B?M3lIVk5tMEl5Y2R0a1RudCtpSHdIdDRqdnd6dG9qWVhVUENzRTlReTNicCtL?= =?utf-8?B?N2JCSXRkWHA2aVVZN2hJNmM3R0VYNnBvaTVUbFdMVnZ6NTFZTUJaL3hodEdL?= =?utf-8?B?Tm5KdDVUUXB4NVpZS3BhNitiY3JxNTlsa1V5Mm9JaGcwVDdSZ2pIUm1LU3FU?= =?utf-8?B?WGtlR0FVQ0w1R1diYVZLdEdIV3VjbmswL052ZXdiUEFrL0VvcE5aVjJWdHVY?= =?utf-8?B?bXVxSEZjSkdvSmlNdEM2RVh3NWpReGY1RGJ6ZlpFVk9yU0hyWVpNY3hncndk?= =?utf-8?B?S0N0ZXlPUlAzMmYrR3lVeVEya2t0WVh0WGhLYzJYMUlpcTVKT0c5bVpnc3Az?= =?utf-8?B?UnVPYm01Y1hCTUN3S3BqRmpQeEdxU3VmSFFwQ1E4RXBkZk1EL3BCb0w4TUh4?= =?utf-8?B?NGVKZXhKaWQ4czBadkViZlllVHJHNkIwMlpHN0hENTQ5b25YTmV1QXNiOG5L?= =?utf-8?B?YUJjalpZczdvU3FXUmI3VE4wOUlXZDlSM0VMMmNLdXJjUHFPTUYvczFiR3hp?= =?utf-8?B?QjVSbW5ZQTl2Z2pibG4xd2k5QXRxUTR5MGwwelNWM3ZpZ1gvd2p3M00vd1Bj?= =?utf-8?B?N3hQMWR3Skk0MFF1U0E3K2k5b0JBT3NLWiswRlJoRFZKam4zbWtaWFdoRktC?= =?utf-8?B?a0hrWDl0SFBDNkpaa2xyeXIwNStkcy9ML2NFZHMwVjludGp0MDlpNkxwL21v?= =?utf-8?B?ZDJsbTRzUWVLYzBzcGNjVUdMWkozaHlQUWdjeVFpYnBQOExNcHBGUmlucXZD?= =?utf-8?B?SG9xY2ZMMjVPOGdSY3BYMTU4YS9mT2xCOW9lbmdvQmtXdVBBUTBvbjBrZ3lN?= =?utf-8?B?YXlDaU9HeXdNTFJFa2kyc3Jyb3p5OUJXVEl5WVZiY1NmYXVkQ2Vwa0pyRE5z?= =?utf-8?B?bGI0QlVyc3dVNG5NUVBHUEp5Vnd1b0hNUm9RSnpLbTk0NXp6QVExL3RxY3JL?= =?utf-8?B?T0UrZEpBck12RmtWZzJsZ0lrZkdvcWx5djQ3MWRyeGppVTlwRk1jdz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: cff55cd9-c90d-44d0-4c48-08da52823228 X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2022 06:00:37.1773 (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: tomoEb9ZGBapNCNQm3mHXghiPGbeeVTqMQyVaY6cpwbeDIZUt45Qmvn3BHo248MS7KHVcRkZRIEBTxNVgebpYg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR04MB6456 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 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.5 at phobos.denx.de X-Virus-Status: Clean 在 2022/5/12 2:33, Pali Rohár 写道: > This allows to concatenate SPL and proper U-Boot without extra alignment. > > Signed-off-by: Pali Rohár > --- > drivers/mmc/fsl_esdhc_spl.c | 25 ++++++++++++++++++++++--- > 1 file changed, 22 insertions(+), 3 deletions(-) > > diff --git a/drivers/mmc/fsl_esdhc_spl.c b/drivers/mmc/fsl_esdhc_spl.c > index 760f13d24018..e3175de16bab 100644 > --- a/drivers/mmc/fsl_esdhc_spl.c > +++ b/drivers/mmc/fsl_esdhc_spl.c > @@ -155,10 +155,21 @@ again: > * Load U-Boot image from mmc into RAM > */ > code_len = CONFIG_SYS_MMC_U_BOOT_SIZE; > - blk_start = ALIGN(offset, mmc->read_bl_len) / mmc->read_bl_len; > - blk_cnt = ALIGN(code_len, mmc->read_bl_len) / mmc->read_bl_len; > + blk_start = offset / mmc->read_bl_len; > + blk_off = offset % mmc->read_bl_len; Build fail because of blk_off not defined. Regards, Peng. > + blk_cnt = ALIGN(code_len, mmc->read_bl_len) / mmc->read_bl_len + 1; > + if (blk_off) { > + err = mmc->block_dev.block_read(&mmc->block_dev, > + blk_start, 1, tmp_buf); > + if (err != 1) { > + puts("spl: mmc read failed!!\n"); > + hang(); > + } > + blk_start++; > + } > err = mmc->block_dev.block_read(&mmc->block_dev, blk_start, blk_cnt, > - (uchar *)CONFIG_SYS_MMC_U_BOOT_DST); > + (uchar *)CONFIG_SYS_MMC_U_BOOT_DST + > + (blk_off ? (mmc->read_bl_len - blk_off) : 0)); > if (err != blk_cnt) { > puts("spl: mmc read failed!!\n"); > #ifndef CONFIG_FSL_CORENET > @@ -166,6 +177,14 @@ again: > #endif > hang(); > } > + /* > + * SDHC DMA may erase bytes at dst + bl_len - blk_off - 8 > + * due to unaligned access. So copy leading bytes from tmp_buf > + * after SDHC DMA transfer. > + */ > + if (blk_off) > + memcpy((uchar *)CONFIG_SYS_MMC_U_BOOT_DST, > + tmp_buf + blk_off, mmc->read_bl_len - blk_off); > > /* > * Clean d-cache and invalidate i-cache, to