From patchwork Mon Sep 12 17:55:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nate Drude X-Patchwork-Id: 1677016 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=variscite.com header.i=@variscite.com header.a=rsa-sha256 header.s=selector2 header.b=apw8ukIW; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4MRDm84jXKz1ynm for ; Tue, 13 Sep 2022 03:55:49 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id A043084A73; Mon, 12 Sep 2022 19:55:36 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=variscite.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=variscite.com header.i=@variscite.com header.b="apw8ukIW"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id BC00C8437C; Mon, 12 Sep 2022 19:55:34 +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=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2 Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80044.outbound.protection.outlook.com [40.107.8.44]) (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 6D4478437C for ; Mon, 12 Sep 2022 19:55:32 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=quarantine dis=none) header.from=variscite.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=Nate.D@variscite.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YKoxYj82xOcQWJzp2NB+N7jybAgTLbRnuH+DVtgZumR29lIlVpb8TjwSXNJ9NSxflFLeMbkEu8682kdGAKoZl+oFC2N0VS2j9lbRDrFOZ9laOQDjlZjPDxButPsV+4YiSpNUNCPYTD9JJPRupIbvJ9L+yKJxwI5f1lK0lHlD9tRCm4zYo5WRtWb70W80gs5DlasPHnFPjgiohosR+Yc213bsl6RQ6Tim2NfMDMNOukEpyP/7tZcUH+xIPFtjdu4Erualb6Qtb1Ww9kAlAmcap3GYn3pdeofLlI2agwTwXiLDQ1MkK3oS4xPBzF0jPYWmMAbSgqyoCPHGKnjLTLOYAA== 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=8k+jeYgCECGj1GZLDRyF8qJgDQLN1mQ//iH9/4Xsozc=; b=HmkwG332E9Hfc7Syg5fhlMcjp1VoNCXEBGwZ4fKQY4ZSXgRzxfdmi7OM7y9Xmg2t1ccJ2h4wFuv8luMEJAELH5aIE7haLLzRlGIL402x3+r+aGcb+9Q8hVOXsrgsuQWY7sGIn+XL3cFi+YocHeEBv/iw/MP0zPfrkYc/gcwbvTwpsoQ8SJCkv+GLLYZuO9VJfUDi/FkIrbUDsdnQYviHCmRv4ieed4mLKNHeln2UGN78hqn5pvfE/sP6cXSoqeD+IvKNhVswBip8odzFN5rIDd8z+O/1d3AWD8QX0lCSGr7tbft5z8+04GPsP7T/qKLvzbAxRGwYnaXfigSqxH1yoQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=variscite.com; dmarc=pass action=none header.from=variscite.com; dkim=pass header.d=variscite.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=variscite.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8k+jeYgCECGj1GZLDRyF8qJgDQLN1mQ//iH9/4Xsozc=; b=apw8ukIW6EsGSEoh3VPbZPfM1oWR8Sj77V7YPB/obrFbw0f/Xu1GqTiytRdJneqJZ5RyKJHq9ctcTO0ENV23PuUbJIZIlCSStfuVSIA6NJ3f3g0dZFCIvsRLhjkivGuimquU5mFQgX/tZ1+AoB5lVmVtGU2fERxM4m4ZyiBtpgbKqN5NT4RYfahA9XNtfiez3zF9+AzOkViU1kla41zzbgtoowYCYigYywuovw7vmeLQN5/qPns42uM0Gdc+zHzds08xwZgbSRzhD8cEisjvyyBBcaq7+w+2MsDdNEJ7nePzxC6Kx3VN5zEf/oDJWR5+YUxm5oxxorMHMZTaCba51w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=variscite.com; Received: from DB9PR08MB6825.eurprd08.prod.outlook.com (2603:10a6:10:2af::9) by AS4PR08MB7685.eurprd08.prod.outlook.com (2603:10a6:20b:504::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5612.22; Mon, 12 Sep 2022 17:55:30 +0000 Received: from DB9PR08MB6825.eurprd08.prod.outlook.com ([fe80::a88a:b945:e903:42a8]) by DB9PR08MB6825.eurprd08.prod.outlook.com ([fe80::a88a:b945:e903:42a8%9]) with mapi id 15.20.5612.022; Mon, 12 Sep 2022 17:55:30 +0000 From: Nate Drude To: Simon Glass , Samuel Holland , Heinrich Schuchardt , Andrew Jeffery , Eddie James , u-boot@lists.denx.de Cc: eran.m@variscite.com, Nate Drude Subject: [PATCH] gpio: uclass: Introduce gpio-hog-optional property Date: Mon, 12 Sep 2022 12:55:13 -0500 Message-Id: <20220912175513.4178793-1-nate.d@variscite.com> X-Mailer: git-send-email 2.37.3 X-ClientProxiedBy: CH2PR05CA0040.namprd05.prod.outlook.com (2603:10b6:610:38::17) To DB9PR08MB6825.eurprd08.prod.outlook.com (2603:10a6:10:2af::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB9PR08MB6825:EE_|AS4PR08MB7685:EE_ X-MS-Office365-Filtering-Correlation-Id: 1d2cfce3-6abc-4674-40bb-08da94e7fb5d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a4azvDuZpwXat9SeHKbzidbew9rf86Pqsm0r9OyUHDbHkhpngMeDV/B+Xxb9qKJrJe1Iq4o61TjCS57C41cUJFxJB2B4DdAbM2q5iA0Gd7C1HOrEZuBwVe8wA3H+D35WA0cQpbIQ+bIpwyQjqexMmeKa3ZAevrnyq0CcNwpe7l47YB6E4uACSR+Ddzk0i6iN+17mXFZAJZ4brNgIm4B82gz1XeBcBhIOP/66j43kMlNdE6sISeI0xwlwl11oU1mQqlbPpKXWbz4IQmhc7Wi1dAKIww3VIigHEYzafUWcmgTL/dDzc3zXSLSWTLUXg/fhy0rA/8SgoQuCIF8T67gnfU9CH3OJy5FNEhNmY7NZbJFZ5YfzMj4HTHnkUUVKyQKOIvKFGIexTZmHLrKpUqC+Kps0AGaKJ8gTfA3w6zwEhXeU1HQrJkA6uMrieryAtHFOO2D0CvkvY8LAy9l/eMZszChBheo3cdpzfZ1UCypCMGvvNJxbTWWiY99Yv800XCo3g/MIQZqNsx5LbtO4jAhWfZYFvufGMZWjIxEL57FM03gK1TpB+wMszVM5PvjliJ0uOymh0aemKJFPLzC1DNSvWWm0tb9HCijnL7I9L8yrRBzCs+CjeXLiZ9sb1104fwlP6WeQe7saziGglV2QBs492De6AOJGrUP4zJmzFEOfKh9GaIaq9BKI7a0LFfdYeJLL3L5gztrMlX5vuEDh4JbthNTkgiQookvp5UXGkWS9FYHVe55PqslvqBWVspIwnUt81eAYyEGVwsFimPUJG6d9cg== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB9PR08MB6825.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(39850400004)(136003)(376002)(396003)(366004)(346002)(451199015)(6512007)(38100700002)(8936002)(316002)(107886003)(52116002)(38350700002)(110136005)(26005)(6506007)(83380400001)(66476007)(4326008)(8676002)(66946007)(66556008)(186003)(36756003)(2616005)(6666004)(86362001)(5660300002)(6486002)(1076003)(478600001)(41300700001)(2906002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: jtM71KPGbbvkFb3Wo6+rEJE3cKGWGbMFBEClyyb2gzLJ6nk2R3km3R1Pive3R7kyKkrpFJIU2y5DPEz48/JCKYEfhLzsEkmAuJSFBdNGyTNB0YGxfCZZjzrlqrwZkNGpGKZOIHX982HdImTAEM+AzJ52zVZdMqltCooJ0ajKYoIX3V/5etDclgV1+mwU2oP9j2oIilgQU54w8VHSCsGMEJc7OrBRriRqreBbeEN7zmhPoVRf1STcNDQ2R+IO3+fx7IAxqBe3JMleybctYHJiPAEKxWhmZI1VOaI/xUL60p26/TI/9oaT43vscitSZKy+44YSBRLFuqTK3gpx6zsksU5CBXrjz4jo5T3PmSihjAJUag7MIeWuR+j8dOdIU8B4V/kHzbGmqy8qHI1/Uht3ONqhbWqwKntix6KMAB/Bx3xfz0HRbhUelq9qk+gXNvO5/AJTz23RJQauODcL+cdCZDgRubGEaaTFaYNKbYuHnf+qVoOWBRM26pDaOvPnTyqt2H/ibnXYdrMMb023up/2RX7MItff2HrzY3aJ2vJNHm9tpcpbERc6fY+O0wYPqmfXSm7aPgSFX27lpbmo3TQKuPNKVoRTWBXYokaRsnA6tHtUAoY7C1CCcv1yGDlPflZaD0+KRzaWFg29kMh9qQPHOu20pz62GVWEW38nx44JctwrNoJlNwaKaausYNSQlcP3qst3Kv4d/5eddEIucY/epG8mbxQPH4UUPn4+OyTNu1GB6+RX4baQVgKoOWhr+Brbzv6v/dSUCxxFxpKTYC/TyuwATwixKrRCRWbv/wlD8hmD2MDnB6eows/RBph1FP/zOkWGV8ODmmELo+JayMUaiExB2Ws/IDAPQaAEJO0ezk2/t8uPsnYseCUBaStkYedI/M8En2V08bQk88GENNQJLBtgM8EQLqzqAWs9zhJeY/7Et6dTe0lLKEYpGbHX3zP1/aCu9nHa32F7cA7tytmGDhzqyBQVXC8gyecz3OoXFbIzAyRG5og73lpfeFwgBy/VSLRb4n5vLVmlq8AQx0imiONekOeLIdGsNnHdOQV0al0sWnBP3nWtgxzcKtMfL+JovlmMKsH5HT6DPjRrXnEvQrGYM5BnPwhUqe1WUQR5OAgebRYaiiTzX241wSrehMQKAKI5H8U4kETX5z4fnGtb1Yus/IjUA2iL1LMyRdFaKN1F9EvPC7bO38E15AKxTyR2L0UbD2nrc2D99pGEmEiQrjtEkxseXUMob4g16+A08nt4vgHR/VwUK3eqHu3k7MJWegOj4a/dE5L99yLuJOTmnvU9DgKCGaMlPmE4WueoQCCF/b4jq04VBkEQN+Q+bwJ69qJoFvWjJiX2/5y+FtpbpdzOF3VaBCGiUenSrF8zL08n5wBv0lxzr0drV00jc+GYBemJbODHAkSFFwLaOSopsCnKyaI/mmA7X60dYRYAvIRUbJ5G4zCsg4FpB8hgp1TiPEfmkZdiMEVTrTgcjgQj7et2uZz+gcYN86GHD1aB56S5DvQfehtMhDmmxLpkCVFeRBQFxphqDcKJB8HrcBnkKyX+zXwJTulI81hkAtCGeAOugCpAaxqEwi+IPJMOmPq3 X-OriginatorOrg: variscite.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d2cfce3-6abc-4674-40bb-08da94e7fb5d X-MS-Exchange-CrossTenant-AuthSource: DB9PR08MB6825.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Sep 2022 17:55:30.2988 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 399ae6ac-38f4-4ef0-94a8-440b0ad581de X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ElCIFSyu2Q8Mu3bZWkY5tbDKl3dCjxrzhhNiLc2ipYPtx/LYcm7RkR2QHkOquvYE3lQh4a8asasIrREcXt0yHQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7685 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 gpio_hog_probe_all is invoked by init_sequence_r in board_r.c. If device_probe fails for any gpio-hog, boot hangs with the following error: > initcall sequence 00000000fffc8e18 failed at call 000000004023b320 (err=-121) > ### ERROR ### Please RESET the board ### gpio-hog-optional allows the boot sequence to continue if device_probe fails for optional gpio-hog(s). Signed-off-by: Nate Drude Reviewed-by: Simon Glass --- doc/device-tree-bindings/gpio/gpio.txt | 1 + drivers/gpio/gpio-uclass.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/doc/device-tree-bindings/gpio/gpio.txt b/doc/device-tree-bindings/gpio/gpio.txt index 1481ed607d..02d296316b 100644 --- a/doc/device-tree-bindings/gpio/gpio.txt +++ b/doc/device-tree-bindings/gpio/gpio.txt @@ -189,6 +189,7 @@ gpio-controller's driver probe function. Each GPIO hog definition is represented as a child node of the GPIO controller. Required properties: - gpio-hog: A property specifying that this child node represents a GPIO hog. +- gpio-hog-optional: A property specifying to continue boot when device_probe fails in gpio_hog_probe_all - gpios: Store the GPIO information (id, flags, ...) for each GPIO to affect. Shall contain an integer multiple of the number of cells specified in its parent node (GPIO controller node). diff --git a/drivers/gpio/gpio-uclass.c b/drivers/gpio/gpio-uclass.c index 0ed32b7217..7ef9f4abc8 100644 --- a/drivers/gpio/gpio-uclass.c +++ b/drivers/gpio/gpio-uclass.c @@ -329,7 +329,9 @@ int gpio_hog_probe_all(void) if (ret) { printf("Failed to probe device %s err: %d\n", dev->name, ret); - retval = ret; + if (!dev_read_bool(dev, "gpio-hog-optional")) { + retval = ret; + } } } }