From patchwork Sun Mar 24 03:23:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Oltean X-Patchwork-Id: 1062811 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="auyna+tq"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44RjSs5yRtz9sSZ for ; Sun, 24 Mar 2019 14:25:17 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728132AbfCXDZM (ORCPT ); Sat, 23 Mar 2019 23:25:12 -0400 Received: from mail-wm1-f66.google.com ([209.85.128.66]:38963 "EHLO mail-wm1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727706AbfCXDZL (ORCPT ); Sat, 23 Mar 2019 23:25:11 -0400 Received: by mail-wm1-f66.google.com with SMTP id t124so5636969wma.4 for ; Sat, 23 Mar 2019 20:25:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=FAFavqV68pRcC/O1M0xqUFuwGhOipPILv3L8R2UDlak=; b=auyna+tq00xdoz11GD9WlnhiBMax5Hmak6op2QXXBkYEZmcTAExtv0Etd2ooS5NEiP AebnjlurTUUiorCLWcuQU6ZtZSTw1d/orJUwZg7JkxMpx7W5CR6mt17tMOOkX17RKr4H 1J7BRfcCE70MDWo9MjcqKEY7NrtGdf3DyTovyDfUaXWIC+HYg6YeqodC4smNsOf0aZ2Z 2djdL0G4A6M7KdqzdfrnivaF/p92kS1UmjU+dgN3Busd4qXSLfScOPMvw5kVPrrsjEo5 9LbMKCLLsWLa8yU7pG//XKrHB1krbMKAjiAw9ssihXvrOHZdQnpsZWtq+zI4cpmiuUsw YCaQ== 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=FAFavqV68pRcC/O1M0xqUFuwGhOipPILv3L8R2UDlak=; b=ihnOEzDyNju3PvvdG/xOKe438Mhznt+rCQqIF594/WJUd8dDMvd63tDpGI2J35bfX9 KsoSV21VkVsWdnoFqvB4yX08ZxnuXXSnYzrBP6fAp53fVtAXBaKs12UtINNBjbRYgMiy vx5NNCuDJOLmKGyvbXde50HwwixcUNjqCq2iZgDUGchS4HtwszbUzqp6TDU+Tuhvw1Cj +20SudIzPPDUqTlx4Y+JA8yit4/ZlNIMdicB6YshPTv27njhxp/NG8jgQWqp6wULoV7P 7toUVAoldLohUutJSDcR6zISztSnWPtgZg4T3ATyx5G7gIAXNV7qs3M3ten9zYMqIhOH vzFw== X-Gm-Message-State: APjAAAVlk99gDgAtsgv+vqz/9OrAHa17ih5AyQ3YbtUQ3SCUesPCNBk7 CEg0g48kRBrfT17S0n0muSI= X-Google-Smtp-Source: APXvYqwPmq/16FP4Y3TWMhOUJaK/UsgwjBmppJtRUrcoSvkd9AJtsPBCzHU1w1YV+rJImVxedFcQCQ== X-Received: by 2002:a1c:4844:: with SMTP id v65mr219872wma.139.1553397909932; Sat, 23 Mar 2019 20:25:09 -0700 (PDT) Received: from localhost.localdomain ([188.26.228.227]) by smtp.gmail.com with ESMTPSA id c20sm12243049wre.28.2019.03.23.20.25.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 23 Mar 2019 20:25:09 -0700 (PDT) From: Vladimir Oltean To: davem@davemloft.net, netdev@vger.kernel.org Cc: f.fainelli@gmail.com, andrew@lunn.ch, vivien.didelot@gmail.com, linus.walleij@linaro.org, Vladimir Oltean Subject: [RFC PATCH net-next 04/13] net: dsa: Call driver's setup callback after setting up its switchdev notifier Date: Sun, 24 Mar 2019 05:23:37 +0200 Message-Id: <20190324032346.32394-5-olteanv@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190324032346.32394-1-olteanv@gmail.com> References: <20190324032346.32394-1-olteanv@gmail.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This allows the driver to perform some manipulations of its own during setup, using generic code. One current usage scenario is for the driver to request DSA to set up 802.1Q based switch tagging for its ports. Signed-off-by: Vladimir Oltean Reviewed-by: Florian Fainelli --- net/dsa/dsa2.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c index c00ee464afc7..5beceb18b7e2 100644 --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c @@ -360,14 +360,14 @@ static int dsa_switch_setup(struct dsa_switch *ds) if (err) return err; - err = ds->ops->setup(ds); - if (err < 0) - return err; - err = dsa_switch_register_notifier(ds); if (err) return err; + err = ds->ops->setup(ds); + if (err < 0) + return err; + if (!ds->slave_mii_bus && ds->ops->phy_read) { ds->slave_mii_bus = devm_mdiobus_alloc(ds->dev); if (!ds->slave_mii_bus)