From patchwork Fri Jan 13 18:02:26 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bhumika Goyal X-Patchwork-Id: 9516151 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.web.codeaurora.org (Postfix) with ESMTP id 79510601E5 for ; Fri, 13 Jan 2017 18:06:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6F5FC286DE for ; Fri, 13 Jan 2017 18:06:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6472F28762; Fri, 13 Jan 2017 18:06:30 +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=-6.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM autolearn=unavailable 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 F0CDF286DE for ; Fri, 13 Jan 2017 18:06:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750760AbdAMSFd (ORCPT ); Fri, 13 Jan 2017 13:05:33 -0500 Received: from mail-pf0-f194.google.com ([209.85.192.194]:35712 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750823AbdAMSFb (ORCPT ); Fri, 13 Jan 2017 13:05:31 -0500 Received: by mail-pf0-f194.google.com with SMTP id f144so9315711pfa.2; Fri, 13 Jan 2017 10:04:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=cwInGYohw1ROuUqJuk+rB9PkNr+i1jMNEt4/ai7q9SI=; b=CPMbExrjocnelmwrLbCePAGt6dbhH1/gVx5VLemwOmEZ6K9nKlriMBS2EMLmzozCb2 VH2fHdHQa4CLxBkUKrCI1pFkwX6k8dX1dc81Hdh9IiYuu/VQgoG41TeAKfiyf1dlLrH+ OLGdExl7ESiJr5iJIu/sM6OKTpXYNtfFMOk35i/6GaNs9lscZqqGmCYs/Fqsbs8+wNy9 kvntcRQBdK658ewXdfKcD1fRPADwfgTYbjAnaaC/OdJmJBOlFUahnuuQYmtyydgQlbXz sLp3TJtMusX0tQKEnSiBzV5qqOFM1wbVNETuczkTC46Gs0eCYQmY5+45cCyxAumiUMzc W6og== 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; bh=cwInGYohw1ROuUqJuk+rB9PkNr+i1jMNEt4/ai7q9SI=; b=p7thTVXcsI/RGhimiIIKuOhjcfqfvCl972PXMyrZ1HUAV9VrgYtMmy1FLbkj5RaMCZ GbRSDndAqkEMxTxThpikVnDFQPbOZKAbsUO0cbWkOFz0Ssfi5mkw3R2OU0T/PhFOey3I OR5c/bx6zc5rUEPGYsdOQUUoNbgnvjqRYvM7QPUavJok902cOmOTv4kPspsYSChXXpIb Ik9cBSSHwU163n1FTMKpYmjRPoWWjSD+24ToG+xBdNTlttcBkp43IzOIcLWrum1RixkK xmjjoforoI3SdUCXFmtUk77n2mE1teIEkZhUXbwX1NT+K52KhEjtZp1UOfnTpk1W9yJQ XnCA== X-Gm-Message-State: AIkVDXLGGHBgJjwFyyWFAw3pZmRdZwo7xHOvRf3zr407dnaG8EsjOqp1mgucm3ItMUZP/g== X-Received: by 10.84.148.203 with SMTP id y11mr31557969plg.29.1484330691488; Fri, 13 Jan 2017 10:04:51 -0800 (PST) Received: from gmail.com ([157.49.93.230]) by smtp.gmail.com with ESMTPSA id t14sm4924091pfk.85.2017.01.13.10.04.45 (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 13 Jan 2017 10:04:49 -0800 (PST) Received: by gmail.com (sSMTP sendmail emulation); Fri, 13 Jan 2017 23:32:35 +0530 From: Bhumika Goyal To: julia.lawall@lip6.fr, pantelis.antoniou@gmail.com, vbordug@ru.mvista.com, sergei.shtylyov@cogentembedded.com, f.fainelli@gmail.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-renesas-soc@vger.kernel.org Cc: Bhumika Goyal Subject: [PATCH] net: constify mdiobb_ops structures Date: Fri, 13 Jan 2017 23:32:26 +0530 Message-Id: <1484330546-16569-1-git-send-email-bhumirks@gmail.com> X-Mailer: git-send-email 1.9.1 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 Declare mdiobb_ops structures as const as they are only stored in the ops field of mdiobb_ctrl structures. This field is of type const, so mdiobb_ops structures having this property can be declared const too. Done using Coccinelle: @r disable optional_qualifier@ identifier x; position p; @@ static struct mdiobb_ops x@p={...}; @ok@ struct bb_info bitbang; struct ravb_private priv; struct ax_device ax; struct mdio_gpio_info bb; identifier r.x; position p; @@ ( bitbang.ctrl.ops=&x@p | priv.mdiobb.ops=&x@p | ax.bb_ctrl.ops=&x@p | bb.ctrl.ops=&x@p ) @bad@ position p != {r.p,ok.p}; identifier r.x; @@ x@p @depends on !bad disable optional_qualifier@ identifier r.x; @@ +const struct mdiobb_ops x; Before and after size details: File size before: text data bss dec hex filename 13293 1203 16 14512 38b0 net/ethernet/8390/ax88796.o File size after: text data bss dec hex filename 13357 1139 16 14512 38b0 net/ethernet/8390/ax88796.o File size before: text data bss dec hex filename 1440 100 0 1540 604 freescale/fs_enet/mii-bitbang.o File size after: Remains the same File size before: text data bss dec hex filename 19000 192 16 19208 4b08 net/ethernet/renesas/ravb_main.o File size after: Remains the same File size before: text data bss dec hex filename 28501 1568 8 30077 757d net/ethernet/renesas/sh_eth.o File size after: text data bss dec hex filename 28565 1504 8 30077 757d net/ethernet/renesas/sh_eth.o File size before: text data bss dec hex filename 1859 248 0 2107 83b drivers/net/phy/mdio-gpio.o File size after: text data bss dec hex filename 1915 192 0 2107 83b drivers/net/phy/mdio-gpio.o Signed-off-by: Bhumika Goyal Acked-by: Sergei Shtylyov --- drivers/net/ethernet/8390/ax88796.c | 2 +- drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c | 2 +- drivers/net/ethernet/renesas/ravb_main.c | 2 +- drivers/net/ethernet/renesas/sh_eth.c | 2 +- drivers/net/phy/mdio-gpio.c | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/8390/ax88796.c b/drivers/net/ethernet/8390/ax88796.c index b0a3b85..e977671 100644 --- a/drivers/net/ethernet/8390/ax88796.c +++ b/drivers/net/ethernet/8390/ax88796.c @@ -585,7 +585,7 @@ static int ax_bb_get_data(struct mdiobb_ctrl *ctrl) return reg_memr & AX_MEMR_MDI ? 1 : 0; } -static struct mdiobb_ops bb_ops = { +static const struct mdiobb_ops bb_ops = { .owner = THIS_MODULE, .set_mdc = ax_bb_mdc, .set_mdio_dir = ax_bb_dir, diff --git a/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c b/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c index 1f015ed..c8e5d88 100644 --- a/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c +++ b/drivers/net/ethernet/freescale/fs_enet/mii-bitbang.c @@ -100,7 +100,7 @@ static inline void mdc(struct mdiobb_ctrl *ctrl, int what) in_be32(bitbang->dat); } -static struct mdiobb_ops bb_ops = { +static const struct mdiobb_ops bb_ops = { .owner = THIS_MODULE, .set_mdc = mdc, .set_mdio_dir = mdio_dir, diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c index 92d7692..1b0acd1 100644 --- a/drivers/net/ethernet/renesas/ravb_main.c +++ b/drivers/net/ethernet/renesas/ravb_main.c @@ -171,7 +171,7 @@ static int ravb_get_mdio_data(struct mdiobb_ctrl *ctrl) } /* MDIO bus control struct */ -static struct mdiobb_ops bb_ops = { +static const struct mdiobb_ops bb_ops = { .owner = THIS_MODULE, .set_mdc = ravb_set_mdc, .set_mdio_dir = ravb_set_mdio_dir, diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c index 00fafab..6ef5dd8 100644 --- a/drivers/net/ethernet/renesas/sh_eth.c +++ b/drivers/net/ethernet/renesas/sh_eth.c @@ -1052,7 +1052,7 @@ static void sh_mdc_ctrl(struct mdiobb_ctrl *ctrl, int bit) } /* mdio bus control struct */ -static struct mdiobb_ops bb_ops = { +static const struct mdiobb_ops bb_ops = { .owner = THIS_MODULE, .set_mdc = sh_mdc_ctrl, .set_mdio_dir = sh_mmd_ctrl, diff --git a/drivers/net/phy/mdio-gpio.c b/drivers/net/phy/mdio-gpio.c index 27ab630..97333d5 100644 --- a/drivers/net/phy/mdio-gpio.c +++ b/drivers/net/phy/mdio-gpio.c @@ -122,7 +122,7 @@ static void mdc_set(struct mdiobb_ctrl *ctrl, int what) gpio_set_value_cansleep(bitbang->mdc, what ^ bitbang->mdc_active_low); } -static struct mdiobb_ops mdio_gpio_ops = { +static const struct mdiobb_ops mdio_gpio_ops = { .owner = THIS_MODULE, .set_mdc = mdc_set, .set_mdio_dir = mdio_dir,