Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752537AbcDZHgS (ORCPT ); Tue, 26 Apr 2016 03:36:18 -0400 Received: from mail-am1on0084.outbound.protection.outlook.com ([157.56.112.84]:27088 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752448AbcDZHgO (ORCPT ); Tue, 26 Apr 2016 03:36:14 -0400 Authentication-Results: spf=pass (sender IP is 193.47.165.134) smtp.mailfrom=mellanox.com; synopsys.com; dkim=none (message not signed) header.d=none;synopsys.com; dmarc=pass action=none header.from=mellanox.com; From: Noam Camus To: CC: , , , , Subject: [PATCH 1/3] net: nps_enet: code style Date: Tue, 26 Apr 2016 10:35:24 +0300 Message-ID: <1461656126-22226-2-git-send-email-noamca@mellanox.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1461656126-22226-1-git-send-email-noamca@mellanox.com> References: <1461656126-22226-1-git-send-email-noamca@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-AS-Product-Ver: SMEX-11.0.0.1191-8.000.1202-22284.005 X-TM-AS-Result: No--4.409700-8.000000-31 X-TM-AS-User-Approved-Sender: No X-TM-AS-User-Blocked-Sender: No X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:193.47.165.134;IPV:NLI;CTRY:IL;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(438002)(189002)(199003)(86362001)(49486002)(2906002)(33646002)(107886002)(110136002)(1220700001)(76176999)(1096002)(2950100001)(92566002)(77096005)(50986999)(50466002)(81166005)(47776003)(189998001)(4001430100002)(19580405001)(586003)(101416001)(2351001)(229853001)(48376002)(5003940100001)(87936001)(19580395003)(50226001)(5008740100001)(36756003)(6806005)(106466001)(11100500001)(4326007);DIR:OUT;SFP:1101;SCL:1;SRVR:DB4PR05MB463;H:mtlcas13.mtl.com;FPR:;SPF:Pass;MLV:sfv;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;AM1FFO11FD047;1:q9EFr9gHb7vG5GYnkAvZVnH62OA8zosIVmXoQlepfp68NU0bvb5ABA1DlxouW4Lg8WmJLISL9bEaMDcpE37MYpKo6sm/AfbEYn9KS/CASKiR+fO6+/Kt4WnvCVo3cRRN8SBRQF9iint1BOKXoN1Ls7Mb3j+/BhL9Ikadbdf5lo5AcXm9qzv91f3rNDIqiZL1phYiz6Vz/1PZ/ve2PXwA8YmHyUk5qzSSWwhJpV0bf4nseoaClOqW+hiFEATiW6V2xlqVOctGnvk7QTRKHoj1tsAccFs9aMsEyiD7ArCiOe9QpVfuPEzp+0wgggNSYtT3hyo3dGx2026YfICmDcHN5tur8xbANNETHQ76cgHlh5SMMZXf6FdNn3FZsOr1vDuEWsp4Uchv68CU43eVtmkZRaaaNhyjf8x9S2lbG0aWiGysZQ3cm0hzgzHYtVT/BFsb9QRLZpNl5PUswoYOpKwIhMsqknU2VonJAL+mAkka+PraO/Ua5/aQv93Nm208OS99lNjY585aNng6/+KRXLMYYaFmXJzLvBrwowRGubk2yGM= X-MS-Office365-Filtering-Correlation-Id: c820b0c7-eea3-4d12-9efc-08d36da56fa5 X-Microsoft-Exchange-Diagnostics: 1;DB4PR05MB463;2:v5JzjmdLQOotnOHcCJqlkrRwViTQJIRiBiQkN6P0eRL9gJtbT96PHaunHMtp2MU5PHXR7KDhwUZH6FKNoZwrdQ3HJ54dXYv0sTDwC8G1EYHpZ/musTxM8C8pKwe3dsLCYnkKZJpe94KGQKxg6+a6nEc+VgPN74vCf9qXA2j+Fe0aEhxQ5zzEZbCYAF3J6zDk;3:B/kTgkrcLH2BipSAmM34x4aK0K0VNTGAVoZ8J4FcARjUH/iyi6ZN/OpqmWltJ4GMJEKfXM4KPpVO4E6+h/bOycoDQWLT7huW1r7XOYTkZ20vLyhTIVZv5j2Ngr+D4dqQ8JpoX5YfBuBRTkxy+PMD7Yhhw4mFEh7/4arYu+70ZPkQRBfLTyP828JsyG1jCycl747vioQFtgf6drJDYOvzoSz53zDhHmGh2RuKwA/g2D5d8lOz1T/77gcVzGU8cU9zQ13GKhhweORowEWApVuUIw==;25:bxNxxPX+yVWa1PYu+0n3cDSNp9oE4gBO+ksgm/fdW7dGKiSMzaHPX+9tx8yCMWPxKuVv2HUZFZGLW3z7rqx5bO7vdg5JcDH8HXxbyBqg7ppLT+syb5BFmRZniYqe2VXKC/0hITUAlhg8ZmQSxx0oD6IEhqhQXdKa1m/pJ2cYNAF2uIB0W54RtXHXOd/nfYM041UucFk2ihdgpn7aVFl8WVdz/e6AWK5PGSiM8glgt6uvOx/uiYu5ot8ReESAP9i8IyqGg7FoSoBFbX33sYB6AV3EHewffJRC7Nf9WIDHtprrxbxARn5EyOkKxhGmmWqpadPv2AqdX4j0YFlFlQC/Dw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:DB4PR05MB463; X-Microsoft-Exchange-Diagnostics: 1;DB4PR05MB463;20:VIt8KrxVIlIjNc7KWUNRTuxJOCeP+eS0LvVXFIoTTx/WQi+JlvOnhQCsB15Nxnw/Absbw0X1CyOCYN2+VBEGU18ubq9FLUmMvORx03ee3TD6rdn+oGbXFGaCTvNrgyWyedd1svyxSfYtiuCiZTthwi5LF3tQsPksei7SAEMock6mB3WXNLSW8BQakCV+tga3I7Qqi4SoKreWzcsHubIhOG7FKMm/ph27CEhHeWQ1d7/QRppLvYcDDi8n5z5+wiZz5BRHzhut8uczBJfJQ+hxuArRmHrm6LBEvSpr4DFbZ4pfAElFIHzriEzhwjGbuaT4fygNOSwKMAnzFBweHOwHMa7eVggRXXgcCAe39ZhzmTXudxItO6QEAaMzaJ70wKQVKNJnscTXam7ohml6oG1Amg1XJg2jNwLsgRfK1f5zznuwB2ohUJa8a/8lnnQb3dzNbgjvgyTtrKnXiH6gpfWdF9E8Ilukm54oAqca4VJoRCysrv92IEhU1UORQp4jIoPu X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(9101521072)(601004)(2401047)(8121501046)(13018025)(13023025)(13017025)(5005006)(13024025)(13015025)(3002001)(10201501046)(6055026);SRVR:DB4PR05MB463;BCL:0;PCL:0;RULEID:;SRVR:DB4PR05MB463; X-Microsoft-Exchange-Diagnostics: 1;DB4PR05MB463;4:xlTIFoX6XDdDVt9gspJjcApDjXpjm+qiJRSkCeYdRsHLaBmC3kbOLtQsYTUnqCkhWO8cKITj2TrufdU1HnVU6H2dYKlEKxBQu1Li5EOku7l79zW7yBrKzFqyYSV56ih4sBcUoQ3LNEKcizx6VYC0WxSZVpquw6jKsu9MioNGC18DJGdnPj9wd6ET0rKsyWxlCgP2//Cphf6Bk7b6JlDjvgBWZ+PqmmUo67ZYsWMWmpnv6MjSrOT3+TXE4jVTShXqL4v446bN0jeoiYsyYJa6/ga/uXB3vVXEzcqoGITnIYCoLXVK4tsSYBvDtTSFTL91/LRHhFKq1KkScQPI1+LSWQVaYygJZuVrFM82XRZBK9MIda9iOR0QhAf5MtGxhGNTO6vVjgalY22DqOAwE9wspGf1eQ7ybXnmLROsbL7T/UMljJFUgMRf+nX9aCiidNVTAwh8CsEuEHv/OdfANO9m3N4pH9p8OgkmPGlnnxLZOzcmjHfehK450VG497u2lDwu X-Forefront-PRVS: 0924C6A0D5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DB4PR05MB463;23:3K84jjJ3jGLaqb/Mb0wO8sMVyFq2rx2tw9KS2R1Ipt?= =?us-ascii?Q?fpqR7MZcddLnsfFZkA/mMlGeHTiDoleonswwNaCB9T2/DeDLPBCAvr5LzacI?= =?us-ascii?Q?HYyCxcF1/XrDkMCq99WhaEXUSE0TsVUiOp6LO/TQ0CgVLpFbVZi51svjabTU?= =?us-ascii?Q?ZU6pnvTYry/5Ont0fk1YtmSz7D6iQk6ZlBiGPr+A32WNZLMKFf+ZGkPmTGJl?= =?us-ascii?Q?Uc2vBnKp9ba1GR4OHGRZ7Se3q8SojfAP2euTj3JAWXOJ9Wv2l/Tnp46tQ3FW?= =?us-ascii?Q?BJ8CoGOXz767ihocP9UxepsDXZyEy3d49VlISwSgUsd4OTwZitrFK9nlRxFg?= =?us-ascii?Q?6uEJ3qGfoygNVw3DyCzLl4euPhWSpaq1+zqHP1Q9iy6IRd2rnQw391xDEAeE?= =?us-ascii?Q?B2FhhYsLAZnM+GCHRxo9bq9tdWGj+dt2C9j8VbTz5R7sWl8i64w4eGTldMSS?= =?us-ascii?Q?cDVi8f2taUYkjGTXdiwNZG6Qlmq8893Wy7C9twN5s/34qUNnbhKFMGiBPwp5?= =?us-ascii?Q?Cyl/sUxPhmidH0uzDEtuNYMLL0aheh8P9KQV5b8dLYwTo62C7slcYCOaFbk0?= =?us-ascii?Q?EQAi1EiagebJSks5blZcjiSYuhgCBJ39Rtr3fqpxpQDVrZsW2ocgCfwV9eAQ?= =?us-ascii?Q?LGKRvrZw2/2DfWCWJuBvYoKOF6f2/LPoK/D8hNEKPLC/O3/Yzowbi5bjAcrF?= =?us-ascii?Q?lQMf6l76k5KcvpnHAT4mKulmoHn7ugTcZAUDo4cYBY7OOi+cNk5Wzzn8UL8b?= =?us-ascii?Q?Es9UNvvAdwU2nGurn5d3CCwUtM2CQySTkuzE0BCUg+X6PU38HiFqHNqZPno6?= =?us-ascii?Q?ZeO76cHEnQ5mfLdjyvBVw0Zo7LR9jmtblAe0zp98CBF+ZYgNHQjz8vXb4M5o?= =?us-ascii?Q?00iiUbtfq7KK3L93b7aT+F8pNAC+OkbI+iZv3L+dzUk8w8winfaF3y551EqQ?= =?us-ascii?Q?CFBnMksujPrvksw6U9pmaEXNwFPhDQAJpGm5pgvzvfCtme4EKvf6VZOO9lwg?= =?us-ascii?Q?X+7VhbTSmJBc6J74XCqgp5GFNF0Iz9l+CSwu/zug0w5g=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;DB4PR05MB463;5:w/WvoX9/5I+kX0xOLOp5A7fb/jQQ9kmrN4240JNrS6UYqw2ST0tKtabFGqxaLXHY6kQJ7WKyz5bFTnODZRM1acDc7I3+Jo4pN7QklTdEvUu11Oq5wVjYNw2qVAcC9W+r8xxJNih86YjTMb7Q45USeAbCXVgLjnG6ngBs64WqPQn+yqmOFcHq6/X5HahsBNZr;24:Q4EZcv2VFgXGniedtFzdDTccc8mpHbKUtz55uQZITr4vy0QEdOxeAOTE2G7GhlzlnzowzSKqSnZkLqrcm5KtYAN/H8r1DcjWeHZFzklz1Tk=;7:e0Z6qhQ0cjwQtoZ2KUD1neUNofJEh4Wo8fKm1tiQVBpYPuNccnw54J2bceyWS8HUu1HtuA63GAByfvkdYlMETO+LQTiXPj22w8jNk684GXC941CNY+pHO5JBuObv2CDwVbpfWLvz1xOA4a7bcbseIn4jilXB5PCUynjnbModmsy8nFh4rpgQ0oBpYDcGd6aISd6cM5jOsNVRQV9WxmzP9i0CvmSX875sK/XpyKM6aDM= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Apr 2016 07:36:09.7500 (UTC) X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=a652971c-7d2e-4d9b-a6a4-d149256f461b;Ip=[193.47.165.134];Helo=[mtlcas13.mtl.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR05MB463 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2423 Lines: 63 From: Elad Kanfi Add an inline function that returns true if a packet was sent and requires driver handling, or returns false otherwise. It avoids code duplication in current driver, and will be used also in the next bugs fix. Signed-off-by: Elad Kanfi Acked-by: Noam Camus --- drivers/net/ethernet/ezchip/nps_enet.c | 15 ++++++++++----- 1 files changed, 10 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/ezchip/nps_enet.c b/drivers/net/ethernet/ezchip/nps_enet.c index 1f23845..5ed06a6 100644 --- a/drivers/net/ethernet/ezchip/nps_enet.c +++ b/drivers/net/ethernet/ezchip/nps_enet.c @@ -24,6 +24,14 @@ #define DRV_NAME "nps_mgt_enet" +static inline bool nps_enet_is_tx_pending(struct nps_enet_priv *priv) +{ + u32 tx_ctrl_value = nps_enet_reg_get(priv, NPS_ENET_REG_TX_CTL); + u32 tx_ctrl_ct = (tx_ctrl_value & TX_CTL_CT_MASK) >> TX_CTL_CT_SHIFT; + + return (!tx_ctrl_ct && priv->tx_packet_sent); +} + static void nps_enet_clean_rx_fifo(struct net_device *ndev, u32 frame_len) { struct nps_enet_priv *priv = netdev_priv(ndev); @@ -140,12 +148,11 @@ static void nps_enet_tx_handler(struct net_device *ndev) { struct nps_enet_priv *priv = netdev_priv(ndev); u32 tx_ctrl_value = nps_enet_reg_get(priv, NPS_ENET_REG_TX_CTL); - u32 tx_ctrl_ct = (tx_ctrl_value & TX_CTL_CT_MASK) >> TX_CTL_CT_SHIFT; u32 tx_ctrl_et = (tx_ctrl_value & TX_CTL_ET_MASK) >> TX_CTL_ET_SHIFT; u32 tx_ctrl_nt = (tx_ctrl_value & TX_CTL_NT_MASK) >> TX_CTL_NT_SHIFT; /* Check if we got TX */ - if (!priv->tx_packet_sent || tx_ctrl_ct) + if (!nps_enet_is_tx_pending(priv)) return; /* Ack Tx ctrl register */ @@ -213,11 +220,9 @@ static irqreturn_t nps_enet_irq_handler(s32 irq, void *dev_instance) struct net_device *ndev = dev_instance; struct nps_enet_priv *priv = netdev_priv(ndev); u32 rx_ctrl_value = nps_enet_reg_get(priv, NPS_ENET_REG_RX_CTL); - u32 tx_ctrl_value = nps_enet_reg_get(priv, NPS_ENET_REG_TX_CTL); - u32 tx_ctrl_ct = (tx_ctrl_value & TX_CTL_CT_MASK) >> TX_CTL_CT_SHIFT; u32 rx_ctrl_cr = (rx_ctrl_value & RX_CTL_CR_MASK) >> RX_CTL_CR_SHIFT; - if ((!tx_ctrl_ct && priv->tx_packet_sent) || rx_ctrl_cr) + if (nps_enet_is_tx_pending(priv) || rx_ctrl_cr) if (likely(napi_schedule_prep(&priv->napi))) { nps_enet_reg_set(priv, NPS_ENET_REG_BUF_INT_ENABLE, 0); __napi_schedule(&priv->napi); -- 1.7.1