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 11D73C7EE22 for ; Fri, 5 May 2023 08:21:47 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 7461B84730; Fri, 5 May 2023 10:21:22 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=solid-run.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=solidrn.onmicrosoft.com header.i=@solidrn.onmicrosoft.com header.b="nTo2WqEF"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id E1C6F8475F; Fri, 5 May 2023 10:21:20 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-vi1eur04on0614.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0e::614]) (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 441E18475D for ; Fri, 5 May 2023 10:21:16 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=solid-run.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=josua@solid-run.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mOmWvYSwubfgvS1lbjPiBujJf3IDwOxvsrLlkn+lHLgKwe4ikMrud5Yrfd5kQOZxl426M4piwmD0GAbO+rkAVbWP9WtAPdHO1uURha2alCTynPQzY6Jj3sCZeR5Hj8Eeej0OZuYHA6gJ9czMiIJlldC9fmMFgB234C9/Snr6PIcvaEJ8pTaKfNY3CojRXJ0zobrIRcJrgHjSIArOY7YFAdAv+Tm48nV0YXK8VqmfAd4cZuXXU5I0kLlF/tPik33v/e9oqE+LbPmNDHIE+cUlBzgz9jsu3aMZF5Q+q6zPXPSSJrvPDt1FbozlUXGtRJuT6GSkH5knXaHujx0KrVG/ww== 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=LA1j/phOCo4HMskjCAi0yrETUYU11JyZ8zkUTl+Ygao=; b=CwG8QvjLdg7AOrC2SySXK5a3L6ubXiaJXLzURDlCAYpSINb3HWKgqTwy70Tb2gtgW3L4iu8BN0oWhQmXtQmFZ5L/AFZEEIUGYZgoKoACj5cL+QdrYuoGUaG0eEYRUsdfHJ49CaVx7v2uY35muPjebuHIXG96BKhNnS3pthkd6qRapRFAGkK+dBwh5xG1ZqxfbsAUB6L0gKac5iNTobdA76CgEWXy0rCQjts7ba2i1x0pdTgLZjHpHwZShyQVdsLxSI9qssaWiQrdN5rToTUW41lNYwsstyhCDJ2Hn2CRETY9G21fln69TD+EnfBp/dmG951uUgJYp98CQW2tAQY5zw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=solid-run.com; dmarc=pass action=none header.from=solid-run.com; dkim=pass header.d=solid-run.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=solidrn.onmicrosoft.com; s=selector1-solidrn-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LA1j/phOCo4HMskjCAi0yrETUYU11JyZ8zkUTl+Ygao=; b=nTo2WqEFNSsMnO+bePR+ZH/kBs/mcmcokpe/i8vNGK1LUdeKv9LO5yQOTKszNJjsrrai3SgrWi6NMKKq4V0kycJVY7jXAAcCCgNTpfLUGeITjgQWBa3zSBbTQ5mt4kV++8gQqqCsci0XXtx8WwoGCB4eDOEKuLXXoPdyxynESUI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=solid-run.com; Received: from AS8PR04MB8963.eurprd04.prod.outlook.com (2603:10a6:20b:42e::18) by AS8PR04MB7926.eurprd04.prod.outlook.com (2603:10a6:20b:2ab::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6363.27; Fri, 5 May 2023 08:21:15 +0000 Received: from AS8PR04MB8963.eurprd04.prod.outlook.com ([fe80::9e27:8c41:a8d:938e]) by AS8PR04MB8963.eurprd04.prod.outlook.com ([fe80::9e27:8c41:a8d:938e%3]) with mapi id 15.20.6363.027; Fri, 5 May 2023 08:21:15 +0000 From: Josua Mayer To: u-boot@lists.denx.de Cc: Josua Mayer , Stefan Roese , Baruch Siach , Heinrich Schuchardt Subject: [[PATCH v2] 3/4] cmd: tlv_eeprom: handle -ENODEV error from read_eeprom function Date: Fri, 5 May 2023 11:20:48 +0300 Message-Id: <20230505082049.9768-4-josua@solid-run.com> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230505082049.9768-1-josua@solid-run.com> References: <20230505082049.9768-1-josua@solid-run.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: VI1PR0401CA0013.eurprd04.prod.outlook.com (2603:10a6:800:4a::23) To AS8PR04MB8963.eurprd04.prod.outlook.com (2603:10a6:20b:42e::18) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB8963:EE_|AS8PR04MB7926:EE_ X-MS-Office365-Filtering-Correlation-Id: ff32eef5-3481-409e-0a50-08db4d41b18e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: PZQPWlq0bYNNdZ2YgLaUQrDC5+xd3wlMYYg8QeF7yEMOLC//2iXtyhFu5qLmugKVbLUmuOI7R4NemX6/jwn38ARkJvPEkkZDq1tBbdk8owmkGLTHbCBjADqPjWmY5OPTh3hgjW0+w0bHHbUdvUr8K+wuwgIgfohxAljXV3PaoGvJDeKOf0NibYKVUehw4oMa+0mjXDX8tzhAz5fCvxA3WDep2Ezhl6J1IKeevEjs58pNCpqmt0NQnoRIyiv/GYMtwnF44fiqhyh+qAQjfkSnD47hV9+Ko4QhAWVD61UBVXsXjssXPE+yDYWXnBIQ2NY0NmcOjiEgjPojMyAlqp0bMygvLcFQ6kZGbwRY11G1J3EUmYu3geX7idAU0+6L/ZBntcyG1JMpVCJAhLAOkznjakmdqfHOLGTM5NynpVnlisG6sW3ZyzW/pATW4OZKFiqDQa9JG9Pn4q3vHgL2xhLar5azZX+xXNyWcGkXPGvMJ/OcbYFKkEZnqd9RLAp1GbKlTrpJWQJpRheXFtaShGwidvFtAWZdpnrkF9rCXK1oSW0d2u9KYIjT5mNfjJUWfi8t X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR04MB8963.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(39840400004)(366004)(136003)(396003)(346002)(376002)(451199021)(52116002)(478600001)(6916009)(4326008)(66946007)(66556008)(66476007)(6486002)(316002)(54906003)(6666004)(86362001)(36756003)(83380400001)(2616005)(6506007)(1076003)(6512007)(8936002)(5660300002)(8676002)(41300700001)(2906002)(186003)(38100700002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?2NteJBR99yjKhQ4NnBxxskBDRw0CMrwx2zBmwjp9UJ44I+cASDKH0Iz9bCW4?= =?us-ascii?Q?uoKjkhpZlABKdsOxlTZrIkNvdG39blP8liYH5J9W6dO7bHX91IpRWt9O0OJh?= =?us-ascii?Q?AiC2HhH4CIg3yPLbXlJTmLHzVT94u0xwSU1EOZ4MHD264s+JrhcE61HdUYLF?= =?us-ascii?Q?uvmtn2XWOP0fs71mzLj/ZhrdSnns4LIjnclbuPzvCMrz7XgWHPMvX4aAV02X?= =?us-ascii?Q?qwVChge7BPj9jmhhGtKynJSq3uZncEDerBOL24qQrIxB1Bed3RI/EVpmx8ad?= =?us-ascii?Q?rFB1dvpwenCH6+Lm7bHT7Cl2+fy84KxyKoBSbQOU6xwOJjPSrYnabk5rTHv0?= =?us-ascii?Q?BxnVT39vgdg8AO97GLGE6tmkak6VQPhTockNUUxr9MS7aFI4Zp+vyINKYd2D?= =?us-ascii?Q?v8ZbC1rm10vJOjq05MBpS372rpXe/UUpphPc1skZRsDlz1PGpDcG/yz6Cm6O?= =?us-ascii?Q?4kQX5QK1ftWs/tBKOS5nQo3KLAGJTlab0TRDzqRxcBz6f1PxBSKJJqZ6zcba?= =?us-ascii?Q?gSin8naKvAWQ+77UamNyJl0Bc0TRbOYYjvhogWOzKRoNnWkYHLBfaL3olObv?= =?us-ascii?Q?YnehpzNkWo+2ZH0axpibq3sRdpFqqWHxxmUbyFKQtNRt8Dx9ufzC4B6CbZxn?= =?us-ascii?Q?jB0nAiZWiMFEx2Mrp3gPXSKU1O7LryYM3agdSnlvaGh5ajKrKEGQj9ekiBjB?= =?us-ascii?Q?HXdhcnPnwYCAt/dGxjr7b2CYoxv1MyInZiPkkka3sZz/JfTGSRieLtmuJZWN?= =?us-ascii?Q?UKuPtBYT23i/5sTFKKpRDWc34NONTw/aR6slJs+9VP6+zEjQYbdJdGvFwdbH?= =?us-ascii?Q?9lE/O4HfRUiRbUo8S+VcdRoT8exWz2bvmrOYRrVv1F6B75QG5fjFO78ZjHuj?= =?us-ascii?Q?YoMdTbXeya/nZAgrJP1jBjuvQD7T6bigycrf52xwfKPlT0wUYzU2m8wxpaU4?= =?us-ascii?Q?Lfs77LIa0C7gJhEPCRYClkJ4Blvwf0lX34u1H3EJus3VO4hFogc86rgwCeYm?= =?us-ascii?Q?KxwpQmePQ8Odu9jbfbUYqHmr67nzyzrQhHqmoiViRBBXlMZsk/4vnX5bD8tu?= =?us-ascii?Q?MS1sayikv1z+WU2a/D2aAlYdeaLT3yU0hreW+mqZEyMlDjYPhTgfWs2aN6uz?= =?us-ascii?Q?F7J9dHaIZmDQ+yT9UtF0VUIF9O3tTGOpj2trGeaipTFoREf4xJL6Q5J5wA7T?= =?us-ascii?Q?cbpLahBbSAt8Ecwu8NQZrtWvPryKmNRLbwntscrOb/g6b8QLisn4DI0GGlIQ?= =?us-ascii?Q?gEqOLluOpfvC68T4XqbHY6i8m8ZrGb7ORWITMJ/0V0MEQ8fyYLeE4HipoBtI?= =?us-ascii?Q?TWvQghtGhs6p5pPIu00uAypYJRXHiH9vh64RvITX1QfOsBVztrhr5Ajd17Pg?= =?us-ascii?Q?ZjbLauRHapAoVWfqPOFuJZujNtW4xvpab6OgkPASdaCZPU8Q16YKrRe0TGSd?= =?us-ascii?Q?qxG4seFS60BDu1b3jk4JN0vZ+9sYGP8mFDP0xCQsu1e9HaL2dSuChStALJZ/?= =?us-ascii?Q?9It2mvawMRGEfla+0XYKaJxO/gKaaAnMrgvKSs9MhI2tV6ynsxgpyDCqBgBh?= =?us-ascii?Q?9LVPnTBvDszEuUB4uFoagz1UfjQZnVj6mz+ULSwjeMeHab2lPMCqTW+1f/7L?= =?us-ascii?Q?NtHlLu7gcrZutZtuOsYPHz0=3D?= X-OriginatorOrg: solid-run.com X-MS-Exchange-CrossTenant-Network-Message-Id: ff32eef5-3481-409e-0a50-08db4d41b18e X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8963.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 May 2023 08:21:15.1803 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a4a8aaf3-fd27-4e27-add2-604707ce5b82 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8zKTOMYSb9REfT/09HStVHgyThdYl3ACvZ6sHg2wjvCimV1iC/JrlBfu+O29+TngzLj6rSRYQMTsOVJQpan4OA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB7926 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.8 at phobos.denx.de X-Virus-Status: Clean When tlv eeprom does not exist, return error code instead of quietly making up tlv structure in memory. Signed-off-by: Josua Mayer Reviewed-by: Stefan Roese Cc: Stefan Roese Cc: Baruch Siach Cc: Heinrich Schuchardt --- cmd/tlv_eeprom.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/cmd/tlv_eeprom.c b/cmd/tlv_eeprom.c index d36401e9138..636c1fe32ef 100644 --- a/cmd/tlv_eeprom.c +++ b/cmd/tlv_eeprom.c @@ -134,6 +134,8 @@ static int read_eeprom(int devnum, u8 *eeprom) if (ret == 0 && is_valid_tlvinfo_header(eeprom_hdr)) ret = read_tlv_eeprom((void *)eeprom_tlv, HDR_SIZE, be16_to_cpu(eeprom_hdr->totallen), devnum); + else if (ret == -ENODEV) + return ret; // If the contents are invalid, start over with default contents if (!is_valid_tlvinfo_header(eeprom_hdr) || @@ -432,8 +434,13 @@ int do_tlv_eeprom(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) // If no arguments, read the EERPOM and display its contents if (argc == 1) { if (!has_been_read) { - if (read_eeprom(current_dev, eeprom) == 0) - has_been_read = 1; + ret = read_eeprom(current_dev, eeprom); + if (ret) { + printf("Failed to read EEPROM data from device.\n"); + return 0; + } + + has_been_read = 1; } show_eeprom(current_dev, eeprom); return 0; @@ -446,11 +453,14 @@ int do_tlv_eeprom(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) // Read the EEPROM contents if (cmd == 'r') { has_been_read = 0; - if (read_eeprom(current_dev, eeprom) == 0) { - printf("EEPROM data loaded from device to memory.\n"); - has_been_read = 1; + ret = read_eeprom(current_dev, eeprom); + if (ret) { + printf("Failed to read EEPROM data from device.\n"); + return 0; } - return 0; + + printf("EEPROM data loaded from device to memory.\n"); + has_been_read = 1; } // Subsequent commands require that the EEPROM has already been read. -- 2.35.3