From patchwork Mon Jul 23 18:10:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10540715 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 2A1BB184F for ; Mon, 23 Jul 2018 18:10:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 14931277D9 for ; Mon, 23 Jul 2018 18:10:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 087C92793A; Mon, 23 Jul 2018 18:10:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 573FF277D9 for ; Mon, 23 Jul 2018 18:10:10 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388279AbeGWTMc (ORCPT ); Mon, 23 Jul 2018 15:12:32 -0400 Received: from mail-lj1-f193.google.com ([209.85.208.193]:41179 "EHLO mail-lj1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388276AbeGWTMb (ORCPT ); Mon, 23 Jul 2018 15:12:31 -0400 Received: by mail-lj1-f193.google.com with SMTP id y17-v6so1321860ljy.8 for ; Mon, 23 Jul 2018 11:10:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=a3HKGlfSdbcgJ8glrEXAAf97LvYOZdIV4x/dh8e1eiY=; b=w91o0RSl05kkA4mMJ3UHX7di8GBcTBI/qJ9mQnZzN0SF0agyWLUIvSUX/sJUfU9AQe GvLwD69Zl7bodYS2ZQjyB94s1Nf7gHaWekeUd1E09sxETd7HFS4wzpsVjQW39qvBIy/d /Vxd2hfbl8VaZS6pUdNnQzE0oCi7iFhXpfQbURH8Nsk21+LsJir8LugwQkecvQmgHxJq fwbsnnxpBtb4CXDT6+dv5iSR0qz/uRh3iIwNzwZOl0j93jAy4ija2E0xkrPYpOS1dcZg Ld/2d19AcTIkwHIumQ42NgU/DVq+DcjnQG8c9rjsrt02sMarCixCB7RtXUBQGK82GJAT 0DsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=a3HKGlfSdbcgJ8glrEXAAf97LvYOZdIV4x/dh8e1eiY=; b=mJ3fNyFeTeY2Cy5BIYWUmLn+xx0nNXxF2aHKf27Q18GsdXjXkprNgECI2LhIWc7GyA LxpD1AZ4UnNv2nVmuQSL7nWQTpzz445jOi89GBrkTR/uQS+jcQRZvse45T4DIFQ4DSho Nr92pumziKgkXsWU84V78ip0eF6N8FXK5UnBJrIAcFrYFCosL0gj8ZUk/BBVhqt0FuUW e4KNj7QcRzPbPa0SDe6eYp7NdiM93TwLyocJnYhq+zy8uOc+Bqtn6PzcXVYC2YB3zyqs TYL+w1UFNQ9+0TxkDZUdsHg7FNI6dybn9502gKRkTZ9tcfWKbPmaoFGmDlIVO19PtHot SkdQ== X-Gm-Message-State: AOUpUlFaQEEFSxdk2pRsV3zhPa9OsWqGwNxtzSkDSV/UBD4m2RivrzN9 haFdQ4QvEYNECSfq1XwXcbMfaQaumnY= X-Google-Smtp-Source: AAOMgpePfu/P7RqYokl1Oc8Fn9ivRa3ph9VH40qCWCt8icnmB+Jig+GCjV2YyyaLvULQD6fG3ArzPg== X-Received: by 2002:a2e:9742:: with SMTP id f2-v6mr10254646ljj.5.1532369405273; Mon, 23 Jul 2018 11:10:05 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.85.93]) by smtp.gmail.com with ESMTPSA id d12-v6sm1505261lfg.15.2018.07.23.11.10.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Jul 2018 11:10:04 -0700 (PDT) Subject: [PATCH 1/5] sh_eth: uninline sh_eth_tsu_get_offset() From: Sergei Shtylyov To: netdev@vger.kernel.org, "David S. Miller" Cc: linux-renesas-soc@vger.kernel.org References: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Organization: Cogent Embedded Message-ID: <837a23c9-38d6-90af-ed0c-3ee2aaaa20f0@cogentembedded.com> Date: Mon, 23 Jul 2018 21:10:02 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP sh_eth_tsu_get_offset() is called several times by the driver, remove *inline* and move that function from the header to the driver itself to let gcc decide whether to expand it inline or not... Signed-off-by: Sergei Shtylyov Reviewed-by: Geert Uytterhoeven --- drivers/net/ethernet/renesas/sh_eth.c | 5 +++++ drivers/net/ethernet/renesas/sh_eth.h | 6 ------ 2 files changed, 5 insertions(+), 6 deletions(-) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -439,6 +439,11 @@ static void sh_eth_modify(struct net_dev enum_index); } +static void *sh_eth_tsu_get_offset(struct sh_eth_private *mdp, int enum_index) +{ + return mdp->tsu_addr + mdp->reg_offset[enum_index]; +} + static void sh_eth_tsu_write(struct sh_eth_private *mdp, u32 data, int enum_index) { Index: net-next/drivers/net/ethernet/renesas/sh_eth.h =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.h +++ net-next/drivers/net/ethernet/renesas/sh_eth.h @@ -558,10 +558,4 @@ struct sh_eth_private { unsigned wol_enabled:1; }; -static inline void *sh_eth_tsu_get_offset(struct sh_eth_private *mdp, - int enum_index) -{ - return mdp->tsu_addr + mdp->reg_offset[enum_index]; -} - #endif /* #ifndef __SH_ETH_H__ */ From patchwork Mon Jul 23 18:11:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10540717 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 95F9D184F for ; Mon, 23 Jul 2018 18:11:25 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7FBA6277D9 for ; Mon, 23 Jul 2018 18:11:25 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 733932793A; Mon, 23 Jul 2018 18:11:25 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0A8BB277D9 for ; Mon, 23 Jul 2018 18:11:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387861AbeGWTNs (ORCPT ); Mon, 23 Jul 2018 15:13:48 -0400 Received: from mail-lf1-f68.google.com ([209.85.167.68]:37544 "EHLO mail-lf1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387907AbeGWTNs (ORCPT ); Mon, 23 Jul 2018 15:13:48 -0400 Received: by mail-lf1-f68.google.com with SMTP id j8-v6so1138136lfb.4 for ; Mon, 23 Jul 2018 11:11:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=5Whq+GwdHio2GJkAHlCX0SajMZuKoErCVSZtcVpjxAs=; b=YSFtgi3MHuni6SVKSahdRbAJ36AksvvZiXSGtBbnI6/mkbff8dNomJXMpezltaZHkd YukONc80/RjDi0R7s+HncF51huL166SVoENyGnlWWwAs7Owy7RCdeJWryeOrnSxQz3No cOSSpNwCIF9BF1QXYLJDTM66z5sl+Ui8E/PwVzTbTYIQ3OkXjCC+B4muEGIYkel5D99F ATNT9mktFCO0L1S50bU/vaLZUQjPFNRJ7w+yRgCmPURbFnfnmxBS0lyG/gM38t+Fvcch G0GhQ3IYFjqLgNMiRIrXHxT1S1Bf9O3QaMVhfZbfI6FOfB4VMdf+8E/OYTZUwqHOfBLQ gPog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=5Whq+GwdHio2GJkAHlCX0SajMZuKoErCVSZtcVpjxAs=; b=CAaouyoflQRoS+3Qc4urnCYJTDC6BbKiEWTK3AVt0KVXdR4cG7TE8GqKEbGXiH1RPl XtFyJdpd5JVnSbJJYbfMDh6c1KBxxbqb++XH7SKsTQv7P1zIDn3dQXmusMrGX7dKf2HA MLusj/Zakn+/hztN1zUamYaQYf2Xg/ehIVRNc98fJW6hotS/KT+rXveITNjQYqQOP4iF DvcC/5zbV2CalKG/gV8tLe9ffPojahFzdaUZrO7nIIz4zLDFl5dqTqkgwJpIXUGUBmDh F0ILiae00T4g71xOkWjrgoOUN5yalSdY/SOOjWQUbIn2yGZ9GJpInYnpx9Xf9/EcEmx7 dD5w== X-Gm-Message-State: AOUpUlFQbcR/57GicWDQ20X6fNwrd/1ngVw5KIfhTF1i6Je82tkqYIvL i1iEra9MllVFhPSSXSSZUBMrSAbPSUU= X-Google-Smtp-Source: AAOMgpcPoODP9LYlvk8kWjkLNfqkGN/dZm0+9iqVGX0D+g8ZrjXDQb1LdVFzkaLEzO7u5vfurSS/qw== X-Received: by 2002:a19:5309:: with SMTP id h9-v6mr8363499lfb.86.1532369480667; Mon, 23 Jul 2018 11:11:20 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.85.93]) by smtp.gmail.com with ESMTPSA id j26-v6sm1931928ljc.54.2018.07.23.11.11.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Jul 2018 11:11:19 -0700 (PDT) Subject: [PATCH 2/5] sh_eth: make sh_eth_tsu_get_offset() match its name From: Sergei Shtylyov To: netdev@vger.kernel.org, "David S. Miller" Cc: linux-renesas-soc@vger.kernel.org References: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Organization: Cogent Embedded Message-ID: Date: Mon, 23 Jul 2018 21:11:19 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP sh_eth_tsu_get_offset(), despite its name, returns a TSU register's address, not its offset. Make this function match its name and return a register's offset from the TSU registers base address instead. Signed-off-by: Sergei Shtylyov Reviewed-by: Geert Uytterhoeven --- drivers/net/ethernet/renesas/sh_eth.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -439,9 +439,9 @@ static void sh_eth_modify(struct net_dev enum_index); } -static void *sh_eth_tsu_get_offset(struct sh_eth_private *mdp, int enum_index) +static u16 sh_eth_tsu_get_offset(struct sh_eth_private *mdp, int enum_index) { - return mdp->tsu_addr + mdp->reg_offset[enum_index]; + return mdp->reg_offset[enum_index]; } static void sh_eth_tsu_write(struct sh_eth_private *mdp, u32 data, @@ -2712,12 +2712,12 @@ static void sh_eth_tsu_read_entry(void * static int sh_eth_tsu_find_entry(struct net_device *ndev, const u8 *addr) { struct sh_eth_private *mdp = netdev_priv(ndev); - void *reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); + u16 reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); int i; u8 c_addr[ETH_ALEN]; for (i = 0; i < SH_ETH_TSU_CAM_ENTRIES; i++, reg_offset += 8) { - sh_eth_tsu_read_entry(reg_offset, c_addr); + sh_eth_tsu_read_entry(mdp->tsu_addr + reg_offset, c_addr); if (ether_addr_equal(addr, c_addr)) return i; } @@ -2739,7 +2739,7 @@ static int sh_eth_tsu_disable_cam_entry_ int entry) { struct sh_eth_private *mdp = netdev_priv(ndev); - void *reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); + u16 reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); int ret; u8 blank[ETH_ALEN]; @@ -2747,7 +2747,9 @@ static int sh_eth_tsu_disable_cam_entry_ ~(1 << (31 - entry)), TSU_TEN); memset(blank, 0, sizeof(blank)); - ret = sh_eth_tsu_write_entry(ndev, reg_offset + entry * 8, blank); + ret = sh_eth_tsu_write_entry(ndev, + mdp->tsu_addr + reg_offset + entry * 8, + blank); if (ret < 0) return ret; return 0; @@ -2756,7 +2758,7 @@ static int sh_eth_tsu_disable_cam_entry_ static int sh_eth_tsu_add_entry(struct net_device *ndev, const u8 *addr) { struct sh_eth_private *mdp = netdev_priv(ndev); - void *reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); + u16 reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); int i, ret; if (!mdp->cd->tsu) @@ -2768,7 +2770,9 @@ static int sh_eth_tsu_add_entry(struct n i = sh_eth_tsu_find_empty(ndev); if (i < 0) return -ENOMEM; - ret = sh_eth_tsu_write_entry(ndev, reg_offset + i * 8, addr); + ret = sh_eth_tsu_write_entry(ndev, + mdp->tsu_addr + reg_offset + i * 8, + addr); if (ret < 0) return ret; @@ -2830,15 +2834,15 @@ static int sh_eth_tsu_purge_all(struct n static void sh_eth_tsu_purge_mcast(struct net_device *ndev) { struct sh_eth_private *mdp = netdev_priv(ndev); + u16 reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); u8 addr[ETH_ALEN]; - void *reg_offset = sh_eth_tsu_get_offset(mdp, TSU_ADRH0); int i; if (!mdp->cd->tsu) return; for (i = 0; i < SH_ETH_TSU_CAM_ENTRIES; i++, reg_offset += 8) { - sh_eth_tsu_read_entry(reg_offset, addr); + sh_eth_tsu_read_entry(mdp->tsu_addr + reg_offset, addr); if (is_multicast_ether_addr(addr)) sh_eth_tsu_del_entry(ndev, addr); } From patchwork Mon Jul 23 18:12:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10540719 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D6E7C184F for ; Mon, 23 Jul 2018 18:12:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C158D26255 for ; Mon, 23 Jul 2018 18:12:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B4B79277D9; Mon, 23 Jul 2018 18:12:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5976B26255 for ; Mon, 23 Jul 2018 18:12:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387873AbeGWTPI (ORCPT ); Mon, 23 Jul 2018 15:15:08 -0400 Received: from mail-lj1-f193.google.com ([209.85.208.193]:37208 "EHLO mail-lj1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388062AbeGWTPG (ORCPT ); Mon, 23 Jul 2018 15:15:06 -0400 Received: by mail-lj1-f193.google.com with SMTP id v9-v6so1333354ljk.4 for ; Mon, 23 Jul 2018 11:12:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=fqWKsueuncN5cj0HEwaF/wfJxjU+K7vKaM1cireuc+A=; b=zwyjSdIbUWGH6gGMzADjD/q2A2ETXOHDrP5EcRWiMxTeqoD99Te9Sl1f20Krkl2L3l t2M4SIAGql8WYMBVB/J2MGMl99N6ADPTgPr3+NL7MI7H63Rqahk1xX5NZ/UHUS3bynMc v1xN9Z0rsjHp+sPoZ9z25NjSS39+D6/gOfMTS71mvz8XAX5ZpO4ChmfwOWujRJP0bMG8 p8oNazOrtYd5xpWeVCiKHUO7MGpXI4qIX6LtZibBQ80HWd7RoL6IdY9EZQy8foWATnob 4+zmtQ6oAfg5HhaTec03CltIPCg7oEAE9uKqzM802wbdSASma2xF++3/U2ghKMko+SLs cEhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=fqWKsueuncN5cj0HEwaF/wfJxjU+K7vKaM1cireuc+A=; b=RBCXprOL7IWXih3xaOE34eDIyt9oLw7DOYxpJqL/fbNbxnezGpQTtGVtQuCpvKOfO6 aDnNwNTKWscPi5gm6VZI7c5JDGHOuJL1w5QwDvzLraGgJrMTbnKlyNu3T81Hflkfckxm kypEWQiFLiXZGzOmYTS3KnZ3r5KtEUzDRp5DSBRgLnrNPnSii83+ypZeX8ZwE9ohQtAD Tfk+FlUtmSl+E3NpqCLVAX1BKCKh/MKbyJV8Lb7GTjUPHaGsuq3YRdQ4ykYu0anblvPF y7vGn6/D9DUKWUeL6ZiH5K5MCkU4LOxULRNceoA+jB9O+4H8PAdtYA0qw8WrpeEjSwBv h53Q== X-Gm-Message-State: AOUpUlGH86JP6llsOJgQFJq/5z/gVDY/GaeicfflGWTIiM/vHkL8e2Ty c47kXMNSnYnaRee9TVzIx9g67hZW2E4= X-Google-Smtp-Source: AAOMgpcXeDduovTnsoVyz6KXbIniA3WqT6eVGDK3wyiBQiDMiODbATZN3vC224a/YoCGm71Ti6Jo0g== X-Received: by 2002:a2e:4951:: with SMTP id b17-v6mr9636206ljd.67.1532369559769; Mon, 23 Jul 2018 11:12:39 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.85.93]) by smtp.gmail.com with ESMTPSA id w12-v6sm1944937lji.63.2018.07.23.11.12.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Jul 2018 11:12:38 -0700 (PDT) Subject: [PATCH 3/5] sh_eth: call sh_eth_tsu_get_offset() from TSU register accessors From: Sergei Shtylyov To: netdev@vger.kernel.org, "David S. Miller" Cc: linux-renesas-soc@vger.kernel.org References: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Organization: Cogent Embedded Message-ID: <6a15eddc-a30d-a4e8-aa0d-05ee2091e32a@cogentembedded.com> Date: Mon, 23 Jul 2018 21:12:38 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP With sh_eth_tsu_get_offset() now actually returning TSU register's offset, we can at last use it in sh_eth_tsu_{read|write}(). Somehow this saves 248 bytes of object code with AArch64 gcc 4.8.5... :-) Signed-off-by: Sergei Shtylyov Reviewed-by: Geert Uytterhoeven --- drivers/net/ethernet/renesas/sh_eth.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -447,7 +447,7 @@ static u16 sh_eth_tsu_get_offset(struct static void sh_eth_tsu_write(struct sh_eth_private *mdp, u32 data, int enum_index) { - u16 offset = mdp->reg_offset[enum_index]; + u16 offset = sh_eth_tsu_get_offset(mdp, enum_index); if (WARN_ON(offset == SH_ETH_OFFSET_INVALID)) return; @@ -457,7 +457,7 @@ static void sh_eth_tsu_write(struct sh_e static u32 sh_eth_tsu_read(struct sh_eth_private *mdp, int enum_index) { - u16 offset = mdp->reg_offset[enum_index]; + u16 offset = sh_eth_tsu_get_offset(mdp, enum_index); if (WARN_ON(offset == SH_ETH_OFFSET_INVALID)) return ~0U; From patchwork Mon Jul 23 18:14:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10540721 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B0136184F for ; Mon, 23 Jul 2018 18:14:44 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9D1D427B2F for ; Mon, 23 Jul 2018 18:14:44 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 90EFA280CF; Mon, 23 Jul 2018 18:14:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7FD7B27CEE for ; Mon, 23 Jul 2018 18:14:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387873AbeGWTRH (ORCPT ); Mon, 23 Jul 2018 15:17:07 -0400 Received: from mail-lj1-f193.google.com ([209.85.208.193]:46240 "EHLO mail-lj1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388279AbeGWTRH (ORCPT ); Mon, 23 Jul 2018 15:17:07 -0400 Received: by mail-lj1-f193.google.com with SMTP id 203-v6so1319422ljj.13 for ; Mon, 23 Jul 2018 11:14:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=hY0T6x6MI7R+yeTEPrztF4rOloLC9FvaR09oqcyDPUU=; b=l2LIqp+QcHvpoLiqSVsBA48AjbC9BFG5TESyOwKzbAzQO8cUbpzK/OctD9A9f2AcqP nKfc5vX62vwluxeGulF3xuDUO6mw3AXJqIeEBhk2JCBGDgtQ3ohsTn/jOfK86FJSIzat NTXEldS1HcLR+UNMu0jGCk3LeTMolXLKeG4nSyJnOEM3sjz2eZrgTZC5i6nuqxijnhlj UwDm3gZCLwdYDyuhQ6QBrQvO4YbDDH1emLtHhSGwm9w/EIIedHeyWmaBQDTqWjRHRSFX nHWa6Z9aWp7gfm8msT2R5hiH9+ge0vlUL9eqt9VOOx5MtAuOEH3MFvqrwxDcXEG+zrLq gsYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=hY0T6x6MI7R+yeTEPrztF4rOloLC9FvaR09oqcyDPUU=; b=WmFXRkaRlGFemUgS9eMgChcCFK1Ts9NuloTaymC3HM7hfya7N5CPDGiBmdrCVVBfC6 Co0ODbN4EbMA22hSXHA2CKaQhJymC2C5QllVGOUfjUhkKmfhekYmwT1V8hdeix/HjYRe DZ4qzz6OCb87dDC89sON2qpUzE5J5h3v+VjiLh7q2WVVGcVQOJrnOFYNZ1SrLOKIo+Py nVewxMyimoFte76jAAuhC0Lv7J0QQ/4SeLdKkR9GvZ+w5SgxFoPKwB3elmzekEUUhtN8 LAUFTipqYGWsvxvCh9xL2Of/VCzAxx4uR3cxlUrz3BsQRlGvHskdi06/D03A/Bo5HXID JVOQ== X-Gm-Message-State: AOUpUlEOZf5TNJ+j9ACHfDtzFTTiymWaMYZU8ulG8sSjfucO6p+OqPse ml/zjzv3/FdWhE2S5C6/fjMKZqeDylU= X-Google-Smtp-Source: AAOMgpczYQa8RF9tq7xrmwoHqHPnkzq9YIAc9NPRFYX5cU+YGSjUo0v5inr5kWxYIJev4IbG1WDmBw== X-Received: by 2002:a2e:7c12:: with SMTP id x18-v6mr9385729ljc.71.1532369680337; Mon, 23 Jul 2018 11:14:40 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.85.93]) by smtp.gmail.com with ESMTPSA id i75-v6sm1506415lfh.29.2018.07.23.11.14.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Jul 2018 11:14:39 -0700 (PDT) Subject: [PATCH 4/5] sh_eth: make sh_eth_tsu_write_entry() take 'offset' parameter From: Sergei Shtylyov To: netdev@vger.kernel.org, "David S. Miller" Cc: linux-renesas-soc@vger.kernel.org References: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Organization: Cogent Embedded Message-ID: <1b60d8c8-e06f-6bff-df06-9b1cbe953340@cogentembedded.com> Date: Mon, 23 Jul 2018 21:14:38 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP We can add the TSU register base address to a TSU register offset right in sh_eth_tsu_write_entry(), no need to do it in its callers... Signed-off-by: Sergei Shtylyov Reviewed-by: Geert Uytterhoeven --- drivers/net/ethernet/renesas/sh_eth.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -2676,18 +2676,19 @@ static int sh_eth_tsu_busy(struct net_de return 0; } -static int sh_eth_tsu_write_entry(struct net_device *ndev, void *reg, +static int sh_eth_tsu_write_entry(struct net_device *ndev, u16 offset, const u8 *addr) { + struct sh_eth_private *mdp = netdev_priv(ndev); u32 val; val = addr[0] << 24 | addr[1] << 16 | addr[2] << 8 | addr[3]; - iowrite32(val, reg); + iowrite32(val, mdp->tsu_addr + offset); if (sh_eth_tsu_busy(ndev) < 0) return -EBUSY; val = addr[4] << 8 | addr[5]; - iowrite32(val, reg + 4); + iowrite32(val, mdp->tsu_addr + offset + 4); if (sh_eth_tsu_busy(ndev) < 0) return -EBUSY; @@ -2747,9 +2748,7 @@ static int sh_eth_tsu_disable_cam_entry_ ~(1 << (31 - entry)), TSU_TEN); memset(blank, 0, sizeof(blank)); - ret = sh_eth_tsu_write_entry(ndev, - mdp->tsu_addr + reg_offset + entry * 8, - blank); + ret = sh_eth_tsu_write_entry(ndev, reg_offset + entry * 8, blank); if (ret < 0) return ret; return 0; @@ -2770,9 +2769,7 @@ static int sh_eth_tsu_add_entry(struct n i = sh_eth_tsu_find_empty(ndev); if (i < 0) return -ENOMEM; - ret = sh_eth_tsu_write_entry(ndev, - mdp->tsu_addr + reg_offset + i * 8, - addr); + ret = sh_eth_tsu_write_entry(ndev, reg_offset + i * 8, addr); if (ret < 0) return ret; From patchwork Mon Jul 23 18:15:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sergei Shtylyov X-Patchwork-Id: 10540723 X-Patchwork-Delegate: geert@linux-m68k.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 4D0D417FD for ; Mon, 23 Jul 2018 18:15:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 39A0C2832D for ; Mon, 23 Jul 2018 18:15:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 3761A2837E; Mon, 23 Jul 2018 18:15:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CC33328387 for ; Mon, 23 Jul 2018 18:15:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387873AbeGWTSR (ORCPT ); Mon, 23 Jul 2018 15:18:17 -0400 Received: from mail-lj1-f195.google.com ([209.85.208.195]:44438 "EHLO mail-lj1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388222AbeGWTSQ (ORCPT ); Mon, 23 Jul 2018 15:18:16 -0400 Received: by mail-lj1-f195.google.com with SMTP id q127-v6so1326866ljq.11 for ; Mon, 23 Jul 2018 11:15:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:from:to:cc:references:organization:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=A7/by9D57iv+IDd6hfD30wyQr9uWOQORPG9j8HUs/hU=; b=whCeSL2GbI7qLu3tbZ9TyFqRymihrta5ODi+UZI4/wn5NumnbyQFIYcW1vS5MhUtUy v2h80cXMVw++r5ffwGs8p2TtgB/SD2WC/tYpsAQZ+i9AggS2mNN2jFbemrKyAnz1sUHV FKaJG3WFmEEjk8VGC+dLFhXjoqOMxjnl2JBf3eS9rY7130FgE92Wxc/N/XmrJvpSxVV+ DPXt8PKUl2eeSHQwroZTy2EmxJPE0LYC7knJGnJbFMrKRZyz27AVJ/aUwuDLv31VlP2X l2BfWGnTkIDCx9KRBN4jE+7x9YpYQXXi2V2eYxl/uqyjhSFlPsbSkPHHqCTQiAz4zxg8 SLlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:from:to:cc:references:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=A7/by9D57iv+IDd6hfD30wyQr9uWOQORPG9j8HUs/hU=; b=egE2+ZeVe8kDXiqIlmUm+vGoEBJUy64PSCdc/Q8sXXOkJl69262PVPu0tjdKV/QoJD poxLUyWTU6uqgnEb75ppef07H+LbIEC9kuUepnSV2c+Wj9T83eZKRpHuCQIfD8auNelM tWAXaLlFidApo8qD9zT/ZllyjN6KRV30ejV+z4dqKYNLXaUr/9vIA5YPKTBpX8mrsYAx 6HhyHadPIcFINBzCPrnuvH2iaKVW2svo1PCBdJlUP/C3cwgssLyEepiq3apcs5vKeX9i hBePq3Il8ORxOCYPMI3qFZh5prVKDOZlwm8IhdzyZ0sEkwG06buX4xQ7cc2ytHcSdESH DPGw== X-Gm-Message-State: AOUpUlFGssFI9PO2io3iVkGY6RI3IWtLUGeyhEaCYrrFcoWS6EWvrCGz oFrKnXoL1wztP+NvsGou+RENlQM9xTw= X-Google-Smtp-Source: AAOMgpclh1RvWSzlp5jThvxYyDGigPkAr0thevEl9/6oK0a/DLD7br5Gorw0mT6FHcgdYyTdkcQjJg== X-Received: by 2002:a2e:96d8:: with SMTP id d24-v6mr10544674ljj.50.1532369748930; Mon, 23 Jul 2018 11:15:48 -0700 (PDT) Received: from wasted.cogentembedded.com ([31.173.85.93]) by smtp.gmail.com with ESMTPSA id 20-v6sm1915592ljs.32.2018.07.23.11.15.47 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 23 Jul 2018 11:15:48 -0700 (PDT) Subject: [PATCH 5/5] sh_eth: make sh_eth_tsu_{read|write}_entry() prototypes symmetric From: Sergei Shtylyov To: netdev@vger.kernel.org, "David S. Miller" Cc: linux-renesas-soc@vger.kernel.org References: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Organization: Cogent Embedded Message-ID: <93618d2e-86b6-e467-b577-632a25cb2c4c@cogentembedded.com> Date: Mon, 23 Jul 2018 21:15:47 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <24093fd0-1b9b-a211-f988-0272483185d6@cogentembedded.com> Content-Language: en-MW Sender: linux-renesas-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-renesas-soc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP sh_eth_tsu_read_entry() is still asymmetric with sh_eth_tsu_write_entry() WRT their prototypes -- make them symmetric by passing to the former a TSU register offset instead of its address and also adding the (now necessary) 'ndev' parameter... Signed-off-by: Sergei Shtylyov Reviewed-by: Geert Uytterhoeven --- drivers/net/ethernet/renesas/sh_eth.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) Index: net-next/drivers/net/ethernet/renesas/sh_eth.c =================================================================== --- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c +++ net-next/drivers/net/ethernet/renesas/sh_eth.c @@ -2695,16 +2695,17 @@ static int sh_eth_tsu_write_entry(struct return 0; } -static void sh_eth_tsu_read_entry(void *reg, u8 *addr) +static void sh_eth_tsu_read_entry(struct net_device *ndev, u16 offset, u8 *addr) { + struct sh_eth_private *mdp = netdev_priv(ndev); u32 val; - val = ioread32(reg); + val = ioread32(mdp->tsu_addr + offset); addr[0] = (val >> 24) & 0xff; addr[1] = (val >> 16) & 0xff; addr[2] = (val >> 8) & 0xff; addr[3] = val & 0xff; - val = ioread32(reg + 4); + val = ioread32(mdp->tsu_addr + offset + 4); addr[4] = (val >> 8) & 0xff; addr[5] = val & 0xff; } @@ -2718,7 +2719,7 @@ static int sh_eth_tsu_find_entry(struct u8 c_addr[ETH_ALEN]; for (i = 0; i < SH_ETH_TSU_CAM_ENTRIES; i++, reg_offset += 8) { - sh_eth_tsu_read_entry(mdp->tsu_addr + reg_offset, c_addr); + sh_eth_tsu_read_entry(ndev, reg_offset, c_addr); if (ether_addr_equal(addr, c_addr)) return i; } @@ -2839,7 +2840,7 @@ static void sh_eth_tsu_purge_mcast(struc return; for (i = 0; i < SH_ETH_TSU_CAM_ENTRIES; i++, reg_offset += 8) { - sh_eth_tsu_read_entry(mdp->tsu_addr + reg_offset, addr); + sh_eth_tsu_read_entry(ndev, reg_offset, addr); if (is_multicast_ether_addr(addr)) sh_eth_tsu_del_entry(ndev, addr); }