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 640DFC6FA82 for ; Mon, 12 Sep 2022 17:55:39 +0000 (UTC) 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) 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 Content-Transfer-Encoding: 8bit Content-Type: text/plain 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: =?us-ascii?Q?jtM71KPGbbvkFb3Wo6+rEJE3cKGWGbMFBEClyyb2gzLJ6nk2R3km3R1Pive3?= =?us-ascii?Q?R7kyKkrpFJIU2y5DPEz48/JCKYEfhLzsEkmAuJSFBdNGyTNB0YGxfCZZjzrl?= =?us-ascii?Q?qrwZkNGpGKZOIHX982HdImTAEM+AzJ52zVZdMqltCooJ0ajKYoIX3V/5etDc?= =?us-ascii?Q?lgV1+mwU2oP9j2oIilgQU54w8VHSCsGMEJc7OrBRriRqreBbeEN7zmhPoVRf?= =?us-ascii?Q?1STcNDQ2R+IO3+fx7IAxqBe3JMleybctYHJiPAEKxWhmZI1VOaI/xUL60p26?= =?us-ascii?Q?/TI/9oaT43vscitSZKy+44YSBRLFuqTK3gpx6zsksU5CBXrjz4jo5T3PmSih?= =?us-ascii?Q?jAJUag7MIeWuR+j8dOdIU8B4V/kHzbGmqy8qHI1/Uht3ONqhbWqwKntix6KM?= =?us-ascii?Q?AB/Bx3xfz0HRbhUelq9qk+gXNvO5/AJTz23RJQauODcL+cdCZDgRubGEaaTF?= =?us-ascii?Q?aYNKbYuHnf+qVoOWBRM26pDaOvPnTyqt2H/ibnXYdrMMb023up/2RX7MItff?= =?us-ascii?Q?2HrzY3aJ2vJNHm9tpcpbERc6fY+O0wYPqmfXSm7aPgSFX27lpbmo3TQKuPNK?= =?us-ascii?Q?VoRTWBXYokaRsnA6tHtUAoY7C1CCcv1yGDlPflZaD0+KRzaWFg29kMh9qQPH?= =?us-ascii?Q?Ou20pz62GVWEW38nx44JctwrNoJlNwaKaausYNSQlcP3qst3Kv4d/5eddEIu?= =?us-ascii?Q?cY/epG8mbxQPH4UUPn4+OyTNu1GB6+RX4baQVgKoOWhr+Brbzv6v/dSUCxxF?= =?us-ascii?Q?xpKTYC/TyuwATwixKrRCRWbv/wlD8hmD2MDnB6eows/RBph1FP/zOkWGV8OD?= =?us-ascii?Q?mmELo+JayMUaiExB2Ws/IDAPQaAEJO0ezk2/t8uPsnYseCUBaStkYedI/M8E?= =?us-ascii?Q?n2V08bQk88GENNQJLBtgM8EQLqzqAWs9zhJeY/7Et6dTe0lLKEYpGbHX3zP1?= =?us-ascii?Q?/aCu9nHa32F7cA7tytmGDhzqyBQVXC8gyecz3OoXFbIzAyRG5og73lpfeFwg?= =?us-ascii?Q?By/VSLRb4n5vLVmlq8AQx0imiONekOeLIdGsNnHdOQV0al0sWnBP3nWtgxzc?= =?us-ascii?Q?KtMfL+JovlmMKsH5HT6DPjRrXnEvQrGYM5BnPwhUqe1WUQR5OAgebRYaiiTz?= =?us-ascii?Q?X241wSrehMQKAKI5H8U4kETX5z4fnGtb1Yus/IjUA2iL1LMyRdFaKN1F9EvP?= =?us-ascii?Q?C7bO38E15AKxTyR2L0UbD2nrc2D99pGEmEiQrjtEkxseXUMob4g16+A08nt4?= =?us-ascii?Q?vgHR/VwUK3eqHu3k7MJWegOj4a/dE5L99yLuJOTmnvU9DgKCGaMlPmE4Wueo?= =?us-ascii?Q?QCCF/b4jq04VBkEQN+Q+bwJ69qJoFvWjJiX2/5y+FtpbpdzOF3VaBCGiUenS?= =?us-ascii?Q?rF8zL08n5wBv0lxzr0drV00jc+GYBemJbODHAkSFFwLaOSopsCnKyaI/mmA7?= =?us-ascii?Q?X60dYRYAvIRUbJ5G4zCsg4FpB8hgp1TiPEfmkZdiMEVTrTgcjgQj7et2uZz+?= =?us-ascii?Q?gcYN86GHD1aB56S5DvQfehtMhDmmxLpkCVFeRBQFxphqDcKJB8HrcBnkKyX+?= =?us-ascii?Q?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 --- 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; + } } } } -- 2.37.3