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 8FA99C433F5 for ; Mon, 3 Oct 2022 12:05:32 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 1903384DEA; Mon, 3 Oct 2022 14:05:30 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.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=sancloud.onmicrosoft.com header.i=@sancloud.onmicrosoft.com header.b="kBRnhyPE"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 8057A84DEE; Mon, 3 Oct 2022 14:05:28 +0200 (CEST) Received: from GBR01-LO2-obe.outbound.protection.outlook.com (mail-lo2gbr01on2104.outbound.protection.outlook.com [40.107.10.104]) (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 C45F984DE5 for ; Mon, 3 Oct 2022 14:05:25 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=paul.barker@sancloud.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AhO5BvNZhMLidRvrLpPaFLuzscsnW042X5Gk1y4w/4FQz06jYy+nMLfJTjKJ4fdYMzkk2iZ73WEHSSDP7IvSxiT3j0QdNt8m+moFHLc4w6FcLc7Y1yQ7/qwBGLC9OlFDZAaaUBi4fql1k6BGzhD6mn0keGGrXAUR57Gqy5CY/7KORXG+oKr9QIXK5HR9R15n69C5KMDIfpwdho/a5mu8tnpm53u6HLleshEcydHsavawNFn5jP2QljQsSGzdW6SSMyx1oJPV6WGt7A8Xe+aeNq8BNMGC1RmKZryy7OavONHIZPd47rf2sUGmJ5zPhGvJAY75oDy0RuO+XUe/AGrt5Q== 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=jWG//sfH1uVUMARL/7X5mzlqZJGsVZ19tpGtkNt2IGw=; b=ANG6yQ8J0LVj9EcDRWkZyxbcm0eeFv0PMoUr2Q+zlUpl+qxsnJJUJQ1lcah6o/4x68mSyfoe3ntJM+M/wnFfkyjiY4zS+b+6t0Fsgz2UizcXGQHZA65P0B8/7d+RqWT6FClDCPLAhlBAW9Rv/qRt53IV/CaNiengZxwkuF66y15UVHBcJQnQPVP24W70pBpz2W0z6kIgMprjKAu8rtWDAtSg2dkNcrLCFCVc3gZsz2W+vf9JM+Cre6VG/oae4KYbWkhNajF1T4j/jTqstA9/aA3pzx/cUf13BiJYDZCcF9by1NhRfvQNleQ03mw4r5r9r9xo9SErg82sbsj2AJIp9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sancloud.com; dmarc=pass action=none header.from=sancloud.com; dkim=pass header.d=sancloud.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sancloud.onmicrosoft.com; s=selector2-sancloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jWG//sfH1uVUMARL/7X5mzlqZJGsVZ19tpGtkNt2IGw=; b=kBRnhyPErXQkCLH3AHMX4ewz6HG7RIQbarvbP2kfChR22HnGXZdys01DGEcPhrfGUTDuPzp6sGkkUkhe7kYfk0fu5Jr+aZsVbCDrzjsmlINDz/++tEjxxjE72N4Jc00IemhDRovQwWxr8zjS0loxVsS6M/3HH7pYX2CSdNbHoHU= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=sancloud.com; Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) by LO4P123MB6515.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:27a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.28; Mon, 3 Oct 2022 12:05:24 +0000 Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::11d5:40af:9060:6b08]) by CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::11d5:40af:9060:6b08%6]) with mapi id 15.20.5676.028; Mon, 3 Oct 2022 12:05:24 +0000 Message-ID: <783bca04-443f-e25e-d76b-064665e80b9c@sancloud.com> Date: Mon, 3 Oct 2022 13:05:23 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.1 Subject: Re: [PATCH v3 1/3] efi_loader: Add SPI I/O protocol support To: Heinrich Schuchardt Cc: u-boot@lists.denx.de, Tom Rini , Ilias Apalodimas References: <20220921160628.4166966-1-paul.barker@sancloud.com> <20220921160628.4166966-2-paul.barker@sancloud.com> <8f5bcacf-65b1-42aa-ff7f-d770b93e3cec@gmx.de> From: Paul Barker In-Reply-To: <8f5bcacf-65b1-42aa-ff7f-d770b93e3cec@gmx.de> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------crobtF5aRTIkXNuqr1d0YIjv" X-ClientProxiedBy: LO4P123CA0026.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:151::13) To CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CWLP123MB2241:EE_|LO4P123MB6515:EE_ X-MS-Office365-Filtering-Correlation-Id: 4bc9833c-4048-424e-7965-08daa5378d7d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: +FE7K0vMEka1ozX0V8fbbLsa8bjvz34cJ9kzPzr2enZYcHY7H87Lrok/uXNJ2sDnDVTTDfPK7lIPZ5xUPq1CL7wBIPU9BcG+/Zo/vz1p+391z8OmJd7EQD7HmPUmF4+pancb5J30CFjJWGRQzLKvEJVOnAmXAVK7n1UePvQSbiGsBVnPSHzj/ry0BTU53WqOtg9WS2d57IPmePQ3LVNLyUOZxUCg+lUeNgWXzWCKMOL5sf1sFfQQ5oUCFaBDqagLHLWdhaf4jgGA0j/Rtyo62Vwd3P1Q4Y85yUphEjuXU9doskhbCDZDW2DmuqUoqyzhTl7c+3zQQIkjvQGn/0i4nmEj5xtyhZkSKFDuU/WKTqYHmDQvF3bxx3exk2WQDm2Zw8ahrw9ECzHW6aN8Cu7QDcnvo71RkfeObSUgj5VWLAdKblh2RhQxCZBlaguYD2GhHLzMtGmtRpERDXb056BPb1TP/DZ8fzMoiZvEp46r0RlvHH5hOJid6dPxcsRfOsT7/dWibukx3VF+IJgsSCz7tJ7PhB5rJ9VqgvJ+NwRi2kuaFVPhYZ0uoKNVhD3rrIrTYWYyG+ARJfnUR/Ip8TPfGOr9Bf1MokAUkbs6n1XV1hh4J0k3o82y4GhF8KCOW3sWC4/ofdksgMTlE2asfnTvS9qnjWdSioHLTJVSF3JY2nj/NcHJxyuNgpFLZ0yL2ajkGRSa+v1oci3OUG8iYmAVz9PTlfwoB0C+rHmtBzlgCXgvroGagAg1gurQtIH332wX+t239dbY+HRa0t/+RcjF5OxhG895q92qO0T6RMvaLTvZ9VoKV+HO+nveP2Y2GLkdMnxKp7Dvti0HmTp5O+RPkXitd0pbNCAO6+eysTHsxII= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230022)(136003)(376002)(346002)(396003)(39830400003)(366004)(451199015)(31686004)(186003)(2616005)(21480400003)(41300700001)(86362001)(31696002)(53546011)(6506007)(6512007)(52116002)(8676002)(33964004)(5660300002)(235185007)(26005)(4326008)(38100700002)(38350700002)(36756003)(83380400001)(2906002)(6486002)(966005)(6916009)(44832011)(316002)(8936002)(54906003)(478600001)(66556008)(66476007)(66946007)(45980500001)(43740500002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VzFXVmhjWWEyTFdHRlU0dVFMbVhQUk5aVllvUXEzek90dTNMY3dDWnFRa0FN?= =?utf-8?B?LzVkYTRWVTk5MWZERm5KeUlIYWtKbWVKTlhVWDhvYkdWdUdsY0kzYmVPSVEw?= =?utf-8?B?Nm95MUk0bDAydjg5ZDZ5RnYyeURFRFA1aUY4aTBvNXVDcHFGNnVyUW5tcVVE?= =?utf-8?B?MWJKZGtZU0JYb3ZZeEZLYnlZejVsNFNBZjVOa2xNUjFlT3d5S3MwWFZjVTlj?= =?utf-8?B?Z21raUtoTEdtQklvRjZKQmliZ0JYcnBUcGtCR3MrWjhld3NuemNVNjF6VTFw?= =?utf-8?B?dmpsaHN3Y3lvVUw0dmg2cldUVUdhaTJCQkZLTCthUnR6NlRSUFVKeCtyMkNw?= =?utf-8?B?VEpkKzlKSVBmdm5lU1ZCbkFnYTFsamI4YlBIdkJBS0JSN3BMVjVNVkdUU2ZW?= =?utf-8?B?ZERzVFB1L2RGVDlOcXp2bStWMjZrM2VTN2tETnVRNUdZbGk1TEZXaWE5VlAw?= =?utf-8?B?NTBiVVZmTkc5cXNoM3diTW8rTjJPeXBJSStFUTY1eG1rSk4yQnptUXFWRVdu?= =?utf-8?B?TGlSbHFyM0tQQVo5eW1OblJ4ZFNzZTNoeHY0bUZFWjJEWVYxWFZ0MXppREdq?= =?utf-8?B?UHl1OHFTMXljcTVKbUZWRmd5d3hFenV4Y1lpWUgrellQUWJCMmNORXFEMjFJ?= =?utf-8?B?TzJqL04vNFhlTG1kOHNOZUZsa2V1S2ZiMFFiblU0Y0hXMnZvWGhaZUZrQWVT?= =?utf-8?B?VVpxcFcrOTVBTlJjOWN6RmpIM1NOVUVjd0lia0o0aFRUaFZjQWNhV1NFelZw?= =?utf-8?B?ajZ5RnBXbFFqUVh1T0luMUREcGg1djVFMGdmTnBwMndiM0hUY09HT2wwZTRr?= =?utf-8?B?ekFYb0RJdzNsQU9VOWFuMk13RDVwWncvaFFkbFhUQVQ3MnZVZ1lkbEZybU0v?= =?utf-8?B?VzIxYjNSb3BFSmE0eXk5SUxZQmo4UlFCRW1uWFhjUThvT1ZMWDZrVGVZblRo?= =?utf-8?B?VjVSMERINnk5MVh1TnlpNWoydnQ2b28wWTBYQjc1dDQwV2FaV0V0VElJWGNQ?= =?utf-8?B?S2dzQ3JwMk5ueGpkU3hvZERrbHJMMGh3TU03M0xLTjAwOEp1ZzdZVW5rdTdS?= =?utf-8?B?eDBtQzFRWDRyVk5KK3c2M0tPTUYrWDNHczE4d01GaUVzT05LVnZvbVphYmU0?= =?utf-8?B?TTZzM1hRZGdFZ1Biemd4eVR5OFVmcUlJcm4rK3dzRVRDblBPanl2MU5FeUQv?= =?utf-8?B?d0szY3JqTFRIVyt0R2NkQ1VUV0ZwSytnRnVSOFJTRzhSdTF0cmgvbHllQVk2?= =?utf-8?B?QllQMkl4ZmlNWDJQd0RyRUpoWFdJVWRvWkNURkltU25UcUg0T1p0R09yeVFp?= =?utf-8?B?SXZHNVdPMk9neVkraFpGSTBEK3hGNWZFcFk3WWhYS1R3WFkyRndvclJZMWd4?= =?utf-8?B?Tjk2b0Jzdm1aUzNQdXRBWUFpMTBvQ2RKUThNbnY2NWsvanpzdS9Sa05TTjJU?= =?utf-8?B?dHEzdmZXdGRkZFJielBWcUpTUUx5d3VLUzFVbXdsNGhtRkxiK0V0SEgyUDJ2?= =?utf-8?B?bGRQUU54c3UySEVtazZxQmRvQ01ZQmlnbUphV3A4WXhYR2dBRDMzQW04WGtv?= =?utf-8?B?SkU2SVIyQVQ2NnVLR2pPOWJTV0Fib05DSlZSK013b2UyUEIyU0hzdFY3ODV5?= =?utf-8?B?ZXVIY3FKU0Fsa0pENFFwcmc3NmlaU2ttbGpCeW9BUDZxcG8rYVZGSFVMRUhD?= =?utf-8?B?V0lCZUkwSzdHcXhlWVM0ZCt0SFZUK2VNM2NzNXBzczVhTGlEdjFIYjhsNkJa?= =?utf-8?B?bDBZenFkSVhiZkEyTndQU1BRMFFPN3lIVnV2R3hTY1hGVWFzRHQyWWRFeUV2?= =?utf-8?B?QmtJUzNDV1AxWVlQU0l3TGkyZlpRYnNHOWQySlZ2OGVCRzBJVUp2QVJJN0JK?= =?utf-8?B?d25YZzBkcjloaG83Q1NtZ2lXTUFqQUJBZ2c0Z0ZFK01pRTlWODExWVVEcFMr?= =?utf-8?B?TXEwSno4eWVYOFBwS3ZTWU5NYVlMNTMyQWZoYXNKeHJrOWpQRDJXSDkvQnJL?= =?utf-8?B?VkxCZkM2dmtyM0NGL3VSNE1FK21SUlNEMXRDZ3lmYWNVVm9xSVVmdTBLQWlY?= =?utf-8?B?dWpTVk1BR1c0TlNTNjVHQnlUbEExZEZSdUdXVFhyK1R3N2JUS2JjZTRRN1VX?= =?utf-8?B?TVZDQXU1ZjJocklRdVhEM3ovTEJ3eDMwcnlxbUFyQlVtd3NkaVZGWWp1RHRs?= =?utf-8?B?eGc9PQ==?= X-OriginatorOrg: sancloud.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4bc9833c-4048-424e-7965-08daa5378d7d X-MS-Exchange-CrossTenant-AuthSource: CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2022 12:05:24.3659 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 840be37c-244a-450e-9bcc-2064862de1f4 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5en/3O+JRKiU9zXCgZQgd7uQ4UVlNOLqHewx2DV9tYga8UTc9eZdHOTwFinlivhsJnbSAQh/K0zVMNhnWMI7BV3V/08WY/A7DM8rYNr+fpw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LO4P123MB6515 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.6 at phobos.denx.de X-Virus-Status: Clean --------------crobtF5aRTIkXNuqr1d0YIjv Content-Type: multipart/mixed; boundary="------------y2V5Q04fzhUqOMjmFYNdHrSb"; protected-headers="v1" From: Paul Barker To: Heinrich Schuchardt Cc: u-boot@lists.denx.de, Tom Rini , Ilias Apalodimas Message-ID: <783bca04-443f-e25e-d76b-064665e80b9c@sancloud.com> Subject: Re: [PATCH v3 1/3] efi_loader: Add SPI I/O protocol support References: <20220921160628.4166966-1-paul.barker@sancloud.com> <20220921160628.4166966-2-paul.barker@sancloud.com> <8f5bcacf-65b1-42aa-ff7f-d770b93e3cec@gmx.de> In-Reply-To: <8f5bcacf-65b1-42aa-ff7f-d770b93e3cec@gmx.de> --------------y2V5Q04fzhUqOMjmFYNdHrSb Content-Type: multipart/mixed; boundary="------------gaI4CErA0u7f8dwf9jTJqOlM" --------------gaI4CErA0u7f8dwf9jTJqOlM Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Addressing only the comments which I've not covered in my reply to Ilias'= email: On 26/09/2022 14:13, Heinrich Schuchardt wrote: > On 9/26/22 14:43, Ilias Apalodimas wrote: >> On Wed, Sep 21, 2022 at 05:06:26PM +0100, Paul Barker wrote: >>> +static efi_string_t convert_efi_string(const char *str) >>> +{ >>> +=C2=A0=C2=A0=C2=A0 efi_string_t str_16, tmp; >>> +=C2=A0=C2=A0=C2=A0 size_t sz_8, sz_16; >>> + >>> +=C2=A0=C2=A0=C2=A0 sz_8 =3D strlen(str); >=20 > sz_8 seems to be unused. I'll drop this in v4. Thanks, --=20 Paul Barker Principal Software Engineer SanCloud Ltd e: paul.barker@sancloud.com w: https://sancloud.com/ --------------gaI4CErA0u7f8dwf9jTJqOlM Content-Type: application/pgp-keys; name="OpenPGP_0xA67255DFCCE62ECD.asc" Content-Disposition: attachment; filename="OpenPGP_0xA67255DFCCE62ECD.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- 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 =3DsH2a -----END PGP PUBLIC KEY BLOCK----- --------------gaI4CErA0u7f8dwf9jTJqOlM-- --------------y2V5Q04fzhUqOMjmFYNdHrSb-- --------------crobtF5aRTIkXNuqr1d0YIjv Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wnsEABYIACMWIQS7m7rT1+CktY3YG1PYN3IfEvob6gUCYzrQAwUDAAAAAAAKCRDYN3IfEvob6scW AP9nzrgSylny3OuCivjm8l67toxkj/ZHSD7vQzOsmWPVfwD/cMUGcsRJB94yztORNkddedJ0OHbe dKP55A560OeMWAA= =MZMK -----END PGP SIGNATURE----- --------------crobtF5aRTIkXNuqr1d0YIjv--