Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp991512imm; Fri, 11 May 2018 09:23:22 -0700 (PDT) X-Google-Smtp-Source: AB8JxZq1cYaNDLhKt9io+mUJu+Ypua081Q5wii1ThfMWjZxFKOOeViyKSNQjmw/n9tVs9vYD97LO X-Received: by 2002:a62:9b57:: with SMTP id r84-v6mr6175105pfd.109.1526055802143; Fri, 11 May 2018 09:23:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526055802; cv=none; d=google.com; s=arc-20160816; b=tnYkIbgskHSKFCBMCpvTJPd9y/5ej8b7DtnPZF9MJNJW6Grfe/7LWALppkAnPN+xUt 7PGCZr++4QHUI2lMBkIyfX32IS1vgZSx+EEmDZuC4sYfidrmr0+qY7e1HbCIfQ/sKZis UMR6tpQfVUvrzOKZglnSoycCZ/CJI8Ugq4xLFsmE4QH4wAjVaq8WlaASYM2cP8IknEjN PJSux1BzWGKY1v2eOkp15GTzyLnYNH2PdxGbHBd3Mhc2WcXE0A5H6QotHeVcSAeLap5h +T9cwuo2NXqJJE4sYCN4vRs40rNq/kFdMP+9aZRiZ/wsNjwz380bfOpsS8tQf/1rC9MM JW1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=U6H8gLXd4/M7uNOaOQPPVCRfFR/uuT26MbY7yCUI7eQ=; b=XiqzJzRY/E7lFH+Uj5BLEk30cTI78t0z9W4Low3wGC08D38oWnORCE3DOsoGdbISSe 2sj0Zs2P8d3pLHt0JbLE8meZ/sEZaG5VTDq/FEF6Izi9cleECFxTwUpeAW+WjcNoSNR5 miaGmA8EtLzXZbvW7B+MkwoS37p3QcRQF2Vllfle60EBkDgPKClmok8z1wnmPgc6akL+ 8yVrkN0MqFE5wfPRKpdk5FU5WJSWtCytCtcc+uiKIoPEEcbbz8qhG4C2lbc8vrvQ1Ps2 lLcPSZrk+mM8mUxSZvCj5+ZI1/toi5qvVJ/6y7aY5cgTdxAPXaKi2+LjqIr5WiS5GOT7 A3MA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20150623.gappssmtp.com header.s=20150623 header.b=pi3YNZJG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u15-v6si2851881pgc.383.2018.05.11.09.23.07; Fri, 11 May 2018 09:23:22 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20150623.gappssmtp.com header.s=20150623 header.b=pi3YNZJG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752207AbeEKQVp (ORCPT + 99 others); Fri, 11 May 2018 12:21:45 -0400 Received: from mail-wm0-f68.google.com ([74.125.82.68]:39195 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752090AbeEKQVm (ORCPT ); Fri, 11 May 2018 12:21:42 -0400 Received: by mail-wm0-f68.google.com with SMTP id f8-v6so4242835wmc.4 for ; Fri, 11 May 2018 09:21:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=U6H8gLXd4/M7uNOaOQPPVCRfFR/uuT26MbY7yCUI7eQ=; b=pi3YNZJGOKoUA1ISorhCR8Jmz+Y+g2fD+CJm3di8Az6hnbnA68hyS63yLco/TPj9e9 78JQcs8pGU9ADJsBowebBlRRrLr74Kt+iLbGUDVO+wrei9yP7GYRzmKTmj/MFHyG011B Da6GGXcHsB4GbeVYShntSShPKw7SJlpO+k4fjGRBvoHAQfFZtgvtBIPrhN6mDoCaF1aJ ddcWXzh1iGwqFDFHgInTJPQ95MOZLYxlQcmdj9c8Yyb3g1gtJwfXemiboTBKX2t3CZEs 4NV++u21eSsAzZ7f67dPK2/9407TULPQCVw+9W2hC/ac2UUP8bsKYdA6hS9NkBsh6xqJ tsRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=U6H8gLXd4/M7uNOaOQPPVCRfFR/uuT26MbY7yCUI7eQ=; b=LNdB6ues1HQ/JCqEy7dzqiNJ83lJnf0HSia0+T85+bA4mCjtCTpfYuowrWOb0l8EBG W86hb52gKI0II9/v8uwIHSueLlE3zC/yV6+Ih+XoRtP3yMEnofvh3EMaI6bKGJ5cMums fKGd4SWfFSTJGSYlSpF6FY2lF2VTo9BiZGmxMh9XPfRacJyh7MaDzXxGAvNttmaZFMYb 2+jE5VFT7vYf9Os4GoizvAlaTUAM/yZnRjsNjxin7fXY8mQ9ME8zh+or1nm5wmMEAf9U 8vddba+vI+mlPf1r/7E4dgTVYgQHgIiA0xBiu3DkJil5OoHxCbUyntRXc84fKdYCwX7W Dtzg== X-Gm-Message-State: ALKqPwehcdCE6Ejzxsci5I4maXygi/Nyc/BIYEV2Gcj7mv8/ca7gI1AA Y8VFBE4cIVXxJzERHxXGJatAEQ== X-Received: by 2002:a1c:9310:: with SMTP id v16-v6mr2408053wmd.60.1526055700840; Fri, 11 May 2018 09:21:40 -0700 (PDT) Received: from brgl-bgdev.baylibre.local ([90.63.244.31]) by smtp.gmail.com with ESMTPSA id q17-v6sm1429523wmf.3.2018.05.11.09.21.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 11 May 2018 09:21:40 -0700 (PDT) From: Bartosz Golaszewski To: Sekhar Nori , Kevin Hilman , David Lechner , Michael Turquette , Stephen Boyd , Arnd Bergmann , Greg Kroah-Hartman , Mark Rutland , Yoshinori Sato , Rich Felker , Andy Shevchenko , Marc Zyngier , "Rafael J . Wysocki" , Peter Rosin , Jiri Slaby , Thomas Gleixner , Daniel Lezcano , Geert Uytterhoeven , Magnus Damm , Johan Hovold , Rob Herring , Frank Rowand Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arch@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 08/12] of/platform: provide a separate routine for device initialization Date: Fri, 11 May 2018 18:20:24 +0200 Message-Id: <20180511162028.20616-9-brgl@bgdev.pl> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180511162028.20616-1-brgl@bgdev.pl> References: <20180511162028.20616-1-brgl@bgdev.pl> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Bartosz Golaszewski The early platform device framework will need to initialize the platform device objects without them being allocated in of_device_alloc(). Provide a routine that allows it. Signed-off-by: Bartosz Golaszewski --- drivers/of/platform.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/drivers/of/platform.c b/drivers/of/platform.c index 24791e558ec5..0e554fe1f325 100644 --- a/drivers/of/platform.c +++ b/drivers/of/platform.c @@ -132,6 +132,19 @@ int of_device_init_resources(struct platform_device *pdev, return 0; } +static void of_device_init(struct platform_device *pdev, struct device_node *np, + const char *bus_id, struct device *parent) +{ + pdev->dev.of_node = of_node_get(np); + pdev->dev.fwnode = &np->fwnode; + pdev->dev.parent = parent ? : &platform_bus; + + if (bus_id) + dev_set_name(&pdev->dev, "%s", bus_id); + else + of_device_make_bus_id(&pdev->dev); +} + /** * of_device_alloc - Allocate and initialize an of_device * @np: device node to assign to device @@ -155,14 +168,7 @@ struct platform_device *of_device_alloc(struct device_node *np, return NULL; } - dev->dev.of_node = of_node_get(np); - dev->dev.fwnode = &np->fwnode; - dev->dev.parent = parent ? : &platform_bus; - - if (bus_id) - dev_set_name(&dev->dev, "%s", bus_id); - else - of_device_make_bus_id(&dev->dev); + of_device_init(dev, np, bus_id, parent); return dev; } -- 2.17.0