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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id B8C4AF3D5FE for ; Sun, 29 Mar 2026 11:50:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:In-Reply-To: Content-Transfer-Encoding:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=bCeO7OXl5wic6ehYUVKb1tdFo4bDGlzLm4gOeIFdS58=; b=jMKrI5UT7KScoRfGapRAuPCp4J jH6Q4CWUW+KySFvtAxJ1Si1auFOfM/4ixflF+hgxSBWdvodiUpl3BWEzElTysYShe6cK2sTS+KOeN B5lXbRC7mm+IUkAcDrefIU1BL3vsLpL4t9e64TCAJ+WhlZ3fqXQzEHlFY0k87Oz7am2kp9t62UrE4 xcoXXgFd+maXqrZQWB6ghYf5S08MpNGzd3Xym3XdHieVKGzro2ihlyHcgf6hkFrBAadNa35w8A7da NNbEloPn/12ubyA3ehUGfsRIJFfHL4cSWZ30/c/o3ERKua1wBsT/CeqrgwNXYIs2qL8IF4V1ruGFi CEPyM0Zg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1w6oeh-00000009svI-3l8R; Sun, 29 Mar 2026 11:50:11 +0000 Received: from mgamail.intel.com ([198.175.65.20]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1w6oee-00000009suo-28kI for linux-arm-kernel@lists.infradead.org; Sun, 29 Mar 2026 11:50:09 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1774785008; x=1806321008; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=O7l6ak4xT7cXmqRnv4fc6BGKQgIBxzW99MT7EQs0/sc=; b=Jhge0CRyRFlyiu7eO/Jq37iPpfKOLxf7gZn/ie8ORDopidCeOkR8+MK+ sstGs9iAvUVlgckcnJcKWFqMvRIXqnuaoTbWMth1Y2P4YjAT0G3IF+ZKh UEA8dytavSjwb6Y4Na0qgFgUwV60ahbU/LctVJgOFix797Uq+GSBvdy3v t/nOwia0KG4jqptx3/7gi8vKcznGDvZfn0zFOtLljNZIYmPXB54UePep+ gmqoyrSC8VJsNJpDjgXwZEQ9aSahzOmYkRSCGwz6/857Q/ogSBXsmFXbK pLJXt27E08JEGnCyy4CxWsNl/IGIgdy0+NnqlY0wBKyq1vwyAf7Xq3k46 w==; X-CSE-ConnectionGUID: lc/LCx3LTI+84vR1qX2ywA== X-CSE-MsgGUID: y3bCRngTRr6W4vY5YtjwaA== X-IronPort-AV: E=McAfee;i="6800,10657,11742"; a="75505203" X-IronPort-AV: E=Sophos;i="6.23,148,1770624000"; d="scan'208";a="75505203" Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa112.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Mar 2026 04:50:05 -0700 X-CSE-ConnectionGUID: Eac3bGOiSs+hvqllPRxdgg== X-CSE-MsgGUID: 6JZe9bwLTSGA9q6CN5UDzA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,148,1770624000"; d="scan'208";a="225675186" Received: from klitkey1-mobl1.ger.corp.intel.com (HELO localhost) ([10.245.245.29]) by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Mar 2026 04:50:02 -0700 Date: Sun, 29 Mar 2026 14:49:59 +0300 From: Andy Shevchenko To: Bartosz Golaszewski , Heikki Krogerus Cc: Aaro Koskinen , Janusz Krzysztofik , Arnd Bergmann , Bartosz Golaszewski , Tony Lindgren , Russell King , Dmitry Torokhov , Hans de Goede , Linux-OMAP , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Kevin Hilman Subject: Re: [RFT PATCH v3] ARM: omap1: enable real software node lookup of GPIOs on Nokia 770 Message-ID: References: <20260212112508.73500-1-bartosz.golaszewski@oss.qualcomm.com> <2fb42d16-887a-4564-8e50-c9d6db564c4e@app.fastmail.com> <7h1phxpzml.fsf@baylibre.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260329_045008_598019_4F64203A X-CRM114-Status: GOOD ( 19.23 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org +Cc: Heikki, the author of the code in question. On Fri, Mar 27, 2026 at 06:23:29PM +0100, Bartosz Golaszewski wrote: > On Fri, Mar 27, 2026 at 5:59 PM Aaro Koskinen wrote: > > On Fri, Mar 27, 2026 at 03:22:12PM +0100, Bartosz Golaszewski wrote: > > > Hmm, I'm wondering if there's a race with consumers already requesting > > > the GPIOs after the controller device is registered but before the > > > software node is added. I'll send a version with software nodes being > > > registered first, then passes as firmware nodes to the platform device > > > API before the device is registered. > > > > It crashes early, I was able to get an UART log from OSK (another > > 16xx board): > > > > [ 1.001525] Register r12 information: 2-page vmalloc region starting at 0xc2808000 allocated at kernel_clone+0xa4/0x20c > > [ 1.013092] Process swapper/0 (pid: 1, stack limit = 0x(ptrval)) > > [ 1.019500] Stack: (0xc2809ed0 to 0xc280a000) > > [ 1.024230] 9ec0: c072d000 c0529474 c06b3aa0 c050a3cc > > [ 1.032958] 9ee0: c072d000 c085c000 00000002 c052582c c050a324 c072d000 00000000 c0503160 > > [ 1.041687] 9f00: 00002710 00000000 c04da8f8 c0060900 c2809f64 ffffffff 00010000 946f70b5 > > [ 1.050384] 9f20: 00000062 c0816120 00000002 c052582c c0525848 c072d000 c04da8f8 c0060a18 > > [ 1.059112] 9f40: c2809f64 c2809f64 00000000 946f70b5 00000062 c0816120 00000002 c052582c > > [ 1.067810] 9f60: c052584c c072d000 c04da8f8 c050352c 00000002 00000002 00000000 c0502400 > > [ 1.076507] 9f80: c2809f7c 00000000 c03f86f4 00000000 00000000 00000000 00000000 00000000 > > [ 1.085205] 9fa0: 00000000 c03f8704 00000000 c000850c 00000000 00000000 00000000 00000000 > > [ 1.093902] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > > [ 1.102600] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000 > > [ 1.111206] Call trace: > > [ 1.111328] software_node_to_swnode from device_add_software_node+0x20/0x80 > > [ 1.121704] device_add_software_node from omap16xx_gpio_init+0xa8/0xe4 > > [ 1.128997] omap16xx_gpio_init from do_one_initcall+0x68/0x1f4 > > [ 1.135620] do_one_initcall from kernel_init_freeable+0x1ec/0x240 > > [ 1.142517] kernel_init_freeable from kernel_init+0x10/0x108 > > [ 1.148864] kernel_init from ret_from_fork+0x14/0x28 > > [ 1.154357] Exception stack(0xc2809fb0 to 0xc2809ff8) > > [ 1.159820] 9fa0: 00000000 00000000 00000000 00000000 > > [ 1.168518] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 > > [ 1.177185] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 > > [ 1.184295] Code: e3500000 012fff1e e59f3034 e5932000 (e5923000) > > [ 1.191040] ---[ end trace 0000000000000000 ]--- > > [ 1.196350] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b > > [ 1.204559] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]--- > > Thanks. This makes sense. Both omap16xx_gpio_init() and > software_node_init() run as postcore_initcall() so if the order is not > right, it will fail. > > Cc'ing Andy who's a reviewer for software nodes. Andy: is there any > reason to run software_node_init() as a postcore initcall? It only > allocates the kset, can we move it to core_initcall() by any chance? Good question. I don't know why it's chosen like this. Let ask Heikki, who is the author of the code. -- With Best Regards, Andy Shevchenko