From patchwork Fri Dec 2 16:35:18 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Gary Bisson X-Patchwork-Id: 702034 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3tVfsJ5Zt9z9t1P for ; Sat, 3 Dec 2016 03:35:32 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=boundarydevices-com.20150623.gappssmtp.com header.i=@boundarydevices-com.20150623.gappssmtp.com header.b="GSbva9+m"; dkim-atps=neutral Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753032AbcLBQfb (ORCPT ); Fri, 2 Dec 2016 11:35:31 -0500 Received: from mail-wj0-f175.google.com ([209.85.210.175]:36066 "EHLO mail-wj0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752854AbcLBQfa (ORCPT ); Fri, 2 Dec 2016 11:35:30 -0500 Received: by mail-wj0-f175.google.com with SMTP id qp4so236728916wjc.3 for ; Fri, 02 Dec 2016 08:35:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=boundarydevices-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=fEXxxjrSuiwCRicKZ/x6zYUAugw1HvIxoh/XEiHDkGg=; b=GSbva9+mohSsA1k3niCxcxmDasNrqfaIZ8LNgQP0TOaz2ae7yvYhlh/dJapV+K/ltr +7kiTCATnKS9CvcCwaQjKr8zLYHSfq+y3AFh+s1ni0bNyoMtJhoLCiHNgGUM52+XbHcA BU/SvxA7z31cxeVBfyYIOPsSKJDYFRexfdJp6Uply9vI2Gd+AJGzh1vNA0Ya45Pl4GmK gnat0jIaVgYSORydpAUhvikgAy9ENNUk9GWY2yND38fbLRZ4gWyxKlJrp4QO6ankkyQj f1iEpLUcxaznfQ9mnlUEp2HvlSP8uUOtCyoG5FL5Een7B9cLvyWpCC1bhMhABulnnbC/ IHbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=fEXxxjrSuiwCRicKZ/x6zYUAugw1HvIxoh/XEiHDkGg=; b=S0D7+Emh2B6xXBzGnqtClXRAuSSBw3fAwXQqt26CxF+6GRBblHai6sPFH9kVpXRBtN z4f8QJtl00jdg28hKJrkrCBbc9aaoS+hIu0iqxB5UxH12NbimSQafKYiVjgIfTAn+E3p FQrARGRBnXKr0/BEEX3RsFK+YztSWs6CZZkdSZYJNvTIXFRjbm5Kh4R5gLHt+e3UE8AX Rr+wGPmIKY1/aD7GpvpA4cmMzecIM+AminyIzKPcvAmTsBCFRD8RA0vzFg6Ni3kXh2xJ 4Z4tUzaYsxZVKTBP8wvunbYNHuXzfFZau7lHZhn1Q5M4fcJIIkqRVkxeMUKWNkH75TtZ Cl8g== X-Gm-Message-State: AKaTC01My87RMWr2cF4h4tKk7Y1wKb+kukVhlEia3Ip385KH2X5wzqy9bFkGpgHRhXfwfQ== X-Received: by 10.194.145.197 with SMTP id sw5mr39498170wjb.156.1480696528169; Fri, 02 Dec 2016 08:35:28 -0800 (PST) Received: from t450s.lan (89-92-98-28.hfc.dyn.abo.bbox.fr. [89.92.98.28]) by smtp.googlemail.com with ESMTPSA id pd2sm6347649wjb.31.2016.12.02.08.35.27 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 02 Dec 2016 08:35:27 -0800 (PST) From: Gary Bisson To: linus.walleij@linaro.org, fabio.estevam@nxp.com Cc: shawnguo@kernel.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, pantelis.antoniou@konsulko.com, vladimir_zapolskiy@mentor.com, Gary Bisson Subject: [RFC v2 1/3] pinctrl: imx: remove const qualifier of imx_pinctrl_soc_info Date: Fri, 2 Dec 2016 17:35:18 +0100 Message-Id: <20161202163520.22927-2-gary.bisson@boundarydevices.com> X-Mailer: git-send-email 2.9.3 In-Reply-To: <20161202163520.22927-1-gary.bisson@boundarydevices.com> References: <20161124233824.17424-1-gary.bisson@boundarydevices.com> <20161202163520.22927-1-gary.bisson@boundarydevices.com> MIME-Version: 1.0 Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org Otherwise can't dynamically update fields such as ngroups which can change over time (with a dt-overlay for instance). Signed-off-by: Gary Bisson Reviewed-by: Fabio Estevam --- Hi all, If this patch isn't applied the compiler gives errors like: error: increment of member ‘nfunctions’ in read-only object Regards, Gary --- drivers/pinctrl/freescale/pinctrl-imx.c | 34 ++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/drivers/pinctrl/freescale/pinctrl-imx.c b/drivers/pinctrl/freescale/pinctrl-imx.c index 5ef7e87..8697c1b 100644 --- a/drivers/pinctrl/freescale/pinctrl-imx.c +++ b/drivers/pinctrl/freescale/pinctrl-imx.c @@ -42,11 +42,11 @@ struct imx_pinctrl { struct pinctrl_dev *pctl; void __iomem *base; void __iomem *input_sel_base; - const struct imx_pinctrl_soc_info *info; + struct imx_pinctrl_soc_info *info; }; static inline const struct imx_pin_group *imx_pinctrl_find_group_by_name( - const struct imx_pinctrl_soc_info *info, + struct imx_pinctrl_soc_info *info, const char *name) { const struct imx_pin_group *grp = NULL; @@ -65,7 +65,7 @@ static inline const struct imx_pin_group *imx_pinctrl_find_group_by_name( static int imx_get_groups_count(struct pinctrl_dev *pctldev) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; return info->ngroups; } @@ -74,7 +74,7 @@ static const char *imx_get_group_name(struct pinctrl_dev *pctldev, unsigned selector) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; return info->groups[selector].name; } @@ -84,7 +84,7 @@ static int imx_get_group_pins(struct pinctrl_dev *pctldev, unsigned selector, unsigned *npins) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; if (selector >= info->ngroups) return -EINVAL; @@ -106,7 +106,7 @@ static int imx_dt_node_to_map(struct pinctrl_dev *pctldev, struct pinctrl_map **map, unsigned *num_maps) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_group *grp; struct pinctrl_map *new_map; struct device_node *parent; @@ -186,7 +186,7 @@ static int imx_pmx_set(struct pinctrl_dev *pctldev, unsigned selector, unsigned group) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg; unsigned int npins, pin_id; int i; @@ -275,7 +275,7 @@ static int imx_pmx_set(struct pinctrl_dev *pctldev, unsigned selector, static int imx_pmx_get_funcs_count(struct pinctrl_dev *pctldev) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; return info->nfunctions; } @@ -284,7 +284,7 @@ static const char *imx_pmx_get_func_name(struct pinctrl_dev *pctldev, unsigned selector) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; return info->functions[selector].name; } @@ -294,7 +294,7 @@ static int imx_pmx_get_groups(struct pinctrl_dev *pctldev, unsigned selector, unsigned * const num_groups) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; *groups = info->functions[selector].groups; *num_groups = info->functions[selector].num_groups; @@ -306,7 +306,7 @@ static int imx_pmx_gpio_request_enable(struct pinctrl_dev *pctldev, struct pinctrl_gpio_range *range, unsigned offset) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg; struct imx_pin_group *grp; struct imx_pin *imx_pin; @@ -346,7 +346,7 @@ static void imx_pmx_gpio_disable_free(struct pinctrl_dev *pctldev, struct pinctrl_gpio_range *range, unsigned offset) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg; u32 reg; @@ -371,7 +371,7 @@ static int imx_pmx_gpio_set_direction(struct pinctrl_dev *pctldev, struct pinctrl_gpio_range *range, unsigned offset, bool input) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg; u32 reg; @@ -411,7 +411,7 @@ static int imx_pinconf_get(struct pinctrl_dev *pctldev, unsigned pin_id, unsigned long *config) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; if (pin_reg->conf_reg == -1) { @@ -433,7 +433,7 @@ static int imx_pinconf_set(struct pinctrl_dev *pctldev, unsigned num_configs) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; int i; @@ -467,7 +467,7 @@ static void imx_pinconf_dbg_show(struct pinctrl_dev *pctldev, struct seq_file *s, unsigned pin_id) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; const struct imx_pin_reg *pin_reg = &info->pin_regs[pin_id]; unsigned long config; @@ -484,7 +484,7 @@ static void imx_pinconf_group_dbg_show(struct pinctrl_dev *pctldev, struct seq_file *s, unsigned group) { struct imx_pinctrl *ipctl = pinctrl_dev_get_drvdata(pctldev); - const struct imx_pinctrl_soc_info *info = ipctl->info; + struct imx_pinctrl_soc_info *info = ipctl->info; struct imx_pin_group *grp; unsigned long config; const char *name;