From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pidgin.makrotopia.org (pidgin.makrotopia.org [185.142.180.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ED1395BAF0; Sat, 16 Aug 2025 19:52:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.142.180.65 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755373964; cv=none; b=iRpCR5gO+czCHZh4OSetpp/G2hxBoZTPQar9Q7K5oatio6TOEDEEs8hnE+yaAuV1PJ8G1TSN0xoKf29xtu+9jtXyNjsCvHTmAKcW+NkXFdKgQ1A8xbBAeuiIfgoiL4kQvDRYOTy+/Yx0xOiuJ7bO4XzEvYQxHzm7BLun1msp5Js= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755373964; c=relaxed/simple; bh=bXsn+pmUzY2vpqOVcdxEgxEgCsqCA8jPJGApuiEhCVA=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=eAn9hBCABvwJeFIZ07068ggKeWpjVwp+LC77is6C8dSwKEnmT6VIPjSrBCcCEClu/SHyN2E97SejPt6MhmvHGO/vgEvhgYA/yxW4Ey+vhinvrepWyiHlu4rr3NUrBiidfOgJBN0wzMVPT3tRzmC+wHYBGmTKiVLjGxoiKYJFmU8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=makrotopia.org; spf=pass smtp.mailfrom=makrotopia.org; arc=none smtp.client-ip=185.142.180.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=makrotopia.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=makrotopia.org Received: from local by pidgin.makrotopia.org with esmtpsa (TLS1.3:TLS_AES_256_GCM_SHA384:256) (Exim 4.98.2) (envelope-from ) id 1unMx7-000000006zG-3Px6; Sat, 16 Aug 2025 19:52:33 +0000 Date: Sat, 16 Aug 2025 20:52:30 +0100 From: Daniel Golle To: Andrew Lunn , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Hauke Mehrtens , Simon Horman , Russell King , Florian Fainelli , Arkadi Sharshevsky , linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Andreas Schirm , Lukas Stockmann , Alexander Sverdlin , Peter Christen , Avinash Jayaraman , Bing tao Xu , Liang Xu , Juraj Povazanec , "Fanni (Fang-Yi) Chan" , "Benny (Ying-Tsan) Weng" , "Livia M. Rosu" , John Crispin Subject: [PATCH RFC net-next 08/23] net: dsa: lantiq_gswip: store switch API version in priv Message-ID: Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Store the switch API version in struct gswip_priv to prepare supporting newer features such as 4096 VLANs and per-port configurable learning. Signed-off-by: Daniel Golle --- drivers/net/dsa/lantiq_gswip.c | 13 ++++++------- drivers/net/dsa/lantiq_gswip.h | 1 + 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/net/dsa/lantiq_gswip.c b/drivers/net/dsa/lantiq_gswip.c index a66466bac1a8..16b92af9ff23 100644 --- a/drivers/net/dsa/lantiq_gswip.c +++ b/drivers/net/dsa/lantiq_gswip.c @@ -1882,7 +1882,6 @@ static int gswip_probe(struct platform_device *pdev) struct gswip_priv *priv; int err; int i; - u32 version; priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); if (!priv) @@ -1915,10 +1914,10 @@ static int gswip_probe(struct platform_device *pdev) priv->ds->phylink_mac_ops = &gswip_phylink_mac_ops; priv->dev = dev; mutex_init(&priv->pce_table_lock); - version = gswip_switch_r(priv, GSWIP_VERSION); + priv->version = gswip_switch_r(priv, GSWIP_VERSION); np = dev->of_node; - switch (version) { + switch (priv->version) { case GSWIP_VERSION_2_0: case GSWIP_VERSION_2_1: if (!of_device_is_compatible(np, "lantiq,xrx200-gswip")) @@ -1932,13 +1931,13 @@ static int gswip_probe(struct platform_device *pdev) break; default: return dev_err_probe(dev, -ENOENT, - "unknown GSWIP version: 0x%x\n", version); + "unknown GSWIP version: 0x%x\n", priv->version); } /* bring up the mdio bus */ gphy_fw_np = of_get_compatible_child(dev->of_node, "lantiq,gphy-fw"); if (gphy_fw_np) { - err = gswip_gphy_fw_list(priv, gphy_fw_np, version); + err = gswip_gphy_fw_list(priv, gphy_fw_np, priv->version); of_node_put(gphy_fw_np); if (err) return dev_err_probe(dev, err, @@ -1965,8 +1964,8 @@ static int gswip_probe(struct platform_device *pdev) platform_set_drvdata(pdev, priv); dev_info(dev, "probed GSWIP version %lx mod %lx\n", - (version & GSWIP_VERSION_REV_MASK) >> GSWIP_VERSION_REV_SHIFT, - (version & GSWIP_VERSION_MOD_MASK) >> GSWIP_VERSION_MOD_SHIFT); + (priv->version & GSWIP_VERSION_REV_MASK) >> GSWIP_VERSION_REV_SHIFT, + (priv->version & GSWIP_VERSION_MOD_MASK) >> GSWIP_VERSION_MOD_SHIFT); return 0; disable_switch: diff --git a/drivers/net/dsa/lantiq_gswip.h b/drivers/net/dsa/lantiq_gswip.h index c68848fb1c2d..433b65b047dd 100644 --- a/drivers/net/dsa/lantiq_gswip.h +++ b/drivers/net/dsa/lantiq_gswip.h @@ -260,6 +260,7 @@ struct gswip_priv { int num_gphy_fw; struct gswip_gphy_fw *gphy_fw; u32 port_vlan_filter; + u32 version; struct mutex pce_table_lock; }; -- 2.50.1