Received: by 2002:a05:6358:45e:b0:b5:b6eb:e1f9 with SMTP id 30csp1767140rwe; Fri, 2 Sep 2022 03:35:25 -0700 (PDT) X-Google-Smtp-Source: AA6agR6l2uaSYSj+IeyHBx+NAs9nQPcMxagF/1Xr3UOujo68J6P81CUNmk2FILVuZ0Icn+85KQZk X-Received: by 2002:a05:6402:51d1:b0:448:bed1:269c with SMTP id r17-20020a05640251d100b00448bed1269cmr14889151edd.205.1662114925117; Fri, 02 Sep 2022 03:35:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662114925; cv=none; d=google.com; s=arc-20160816; b=tc7aeVx92DbhWHBv7diWuE5HvDNTWvReKs9vE/ZOG3Hny94fTyl9Z2WIRTIPkpfx1X o5Cvy9yZTrYd9TIpF4Qsk2avjaxz8GltxcW92jjt5fj9wLnnOZFTAaz4G6ajTYnzVJYx iSsU93NyzqbqS/xQL1DQ6EIDirKdbwRk2wfnqJ1InVz7dQybvrDBSkgamAYZRsloSPvU LxRmKG9ioDPhE0hcU1+PZ0tKagZrxS3/iRrWMInYrc6T0xGTK1sztYinkXwBzb47yoGT qzRXtTR7ebdnKBbPy4re3N4fHkzJwnXOYxl+BgpS1JoiwlEcFpBiYeXKIEQQu/Y+Srzr hwLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=uBSSE8rPKc4ldP7WJB4xnw21lCdx3iBHn861i7GCVnQ=; b=cNCa5D8Xiu0O5EG6z7F6NUl/BS2E6RErNLjZH4vhiiZIjYI9wLZzOLib/YZIUGYG+n lleTdS/c5ogmU0dQwidFbC1c4FoGsJn245Jm/bec68qpm/RPGGn7Y0EIkI7QAZhfitQ6 /aZZBdyFo+Fed7eBxOq0O6mIaekPEOGJT3o8Jq7RH8eLM0lw8HSm+bo5Eh+wMi2SNUck OWIqvTTnUjRgZWTkoZo7jN2QrZDlL1jgEGG+Rm6R7GCtyLHVTNQpJYbxphNjP+EN5D9U NJ6T8kEJdyhiz2+KSU7cV28tYreh1wL0hzyfli/HgRkwRctXE1uGGfHu/g7X14xq5Rm7 3Dgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=IUm4vx3B; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id ho41-20020a1709070ea900b00732f74ed931si1607732ejc.793.2022.09.02.03.34.59; Fri, 02 Sep 2022 03:35:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@microchip.com header.s=mchp header.b=IUm4vx3B; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235447AbiIBKcm (ORCPT + 99 others); Fri, 2 Sep 2022 06:32:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48474 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235787AbiIBKce (ORCPT ); Fri, 2 Sep 2022 06:32:34 -0400 Received: from esa.microchip.iphmx.com (esa.microchip.iphmx.com [68.232.153.233]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DA84EB07D1; Fri, 2 Sep 2022 03:32:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1662114751; x=1693650751; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QTCs0BKJ8AZF5dsnIBAu9d9AC7NCckejdUsulm1LMWE=; b=IUm4vx3Bx+DivTCaF9Zh72gLPkesJj+Vz9+DGqZFgPuNd/l1tjCM6xjH OorDN+zcwodb9t4sUDChnjqnUkVuB0e37uP4daDdZL5cMSifez+JEbIeo 3wAq1zk5/wvJPGxb3Gs/ciWZT58+iQXl7qyA5I5R1FsyZX0QMztZjipMp YXFsX3MnnNFp8Duqg9rOYR0V8Vc3qdK/Z3cKuS93g6dyfkCvQUT0AoSl1 gQvEcWArSOT2ICkBFyYXbwRAwqnzjQFf5Velje9V1QvQQ2SKGl0faoLBm CR8NYHts+vGEAbMxCDNnUc7AWMQdsVh45LzbV4AQZf0c/tcQc5jWTe4IT g==; X-IronPort-AV: E=Sophos;i="5.93,283,1654585200"; d="scan'208";a="178772910" Received: from unknown (HELO email.microchip.com) ([170.129.1.10]) by esa5.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 02 Sep 2022 03:32:30 -0700 Received: from chn-vm-ex03.mchp-main.com (10.10.85.151) by chn-vm-ex02.mchp-main.com (10.10.85.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.12; Fri, 2 Sep 2022 03:32:29 -0700 Received: from CHE-LT-I17769U.microchip.com (10.10.115.15) by chn-vm-ex03.mchp-main.com (10.10.85.151) with Microsoft SMTP Server id 15.1.2507.12 via Frontend Transport; Fri, 2 Sep 2022 03:32:24 -0700 From: Arun Ramadoss To: , CC: Woojung Huh , , Andrew Lunn , Vivien Didelot , Florian Fainelli , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , "Russell King" , Tristram Ha Subject: [Patch net-next 1/3] net: dsa: microchip: add reference to ksz_device inside the ksz_port Date: Fri, 2 Sep 2022 16:02:08 +0530 Message-ID: <20220902103210.10743-2-arun.ramadoss@microchip.com> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220902103210.10743-1-arun.ramadoss@microchip.com> References: <20220902103210.10743-1-arun.ramadoss@microchip.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org struct ksz_port doesn't have reference to ksz_device as of now. In order to find out from which port interrupt has triggered, we need to pass the struct ksz_port as a host data. When the interrupt is triggered, we can get the port from which interrupt triggered, but to identify it is phy interrupt we have to read status register. The regmap structure for accessing the device register is present in the ksz_device struct. To access the ksz_device from the ksz_port, the reference is added to it with port number as well. Signed-off-by: Arun Ramadoss Reviewed-by: Andrew Lunn --- drivers/net/dsa/microchip/ksz_common.c | 3 +++ drivers/net/dsa/microchip/ksz_common.h | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c index 37fb5ba2cd7a..63b9faa89393 100644 --- a/drivers/net/dsa/microchip/ksz_common.c +++ b/drivers/net/dsa/microchip/ksz_common.c @@ -2357,6 +2357,9 @@ int ksz_switch_register(struct ksz_device *dev) GFP_KERNEL); if (!dev->ports[i].mib.counters) return -ENOMEM; + + dev->ports[i].ksz_dev = dev; + dev->ports[i].num = i; } /* set the real number of ports */ diff --git a/drivers/net/dsa/microchip/ksz_common.h b/drivers/net/dsa/microchip/ksz_common.h index c01989c04d4e..3fa3e4731d58 100644 --- a/drivers/net/dsa/microchip/ksz_common.h +++ b/drivers/net/dsa/microchip/ksz_common.h @@ -16,6 +16,8 @@ #define KSZ_MAX_NUM_PORTS 8 +struct ksz_device; + struct vlan_table { u32 table[3]; }; @@ -83,6 +85,8 @@ struct ksz_port { u16 max_frame; u32 rgmii_tx_val; u32 rgmii_rx_val; + struct ksz_device *ksz_dev; + u8 num; }; struct ksz_device { -- 2.36.1