From: Rohit Vaswani <rvaswani@codeaurora.org>
To: Dima Zavin <dima@android.com>
Cc: David Brown <davidb@codeaurora.org>,
Daniel Walker <dwalker@codeaurora.org>,
Bryan Huntsman <bryanh@codeaurora.org>,
Russell King <linux@arm.linux.org.uk>,
linux-arm-msm@vger.kernel.org,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH] msm: Remove arch-specific gpiomux tables
Date: Wed, 09 Feb 2011 13:57:45 -0800 [thread overview]
Message-ID: <4D530DD9.1060409@codeaurora.org> (raw)
In-Reply-To: <AANLkTimOAOirgH7haDJjf265zdbvoei=f=GGxQEh+5dh@mail.gmail.com>
Hi Dima,
Thanks for your feedback. What you mention is absolutely right, and
accommodating that requires an architectural change which we have ready
and I will be pushing that out anytime.
This patch addresses your comments for removing the separate gpiomux
config file. My next patch series should provide you a complete picture.
Thanks,
Rohit
On 2/9/2011 12:59 PM, Dima Zavin wrote:
> I don't like this solution of putting the magicly named array into the
> board file. What if I want multiple boards to be built into the same
> kernel? What if I want multiple tables in case I have different
> revisions of the board?
>
> The more correct way would be to add a function to gpiomux.c to be
> able to apply a list of gpiomux configs, something like:
>
> int msm_gpiomux_config_table(struct msm_gpiomux_cfg *table, int num);
>
> --Dima
>
> On Fri, Feb 4, 2011 at 5:44 PM, Rohit Vaswani<rvaswani@codeaurora.org> wrote:
>> The gpiomux configs are board-specific and thus should be
>> a part of the board file.
>>
>> Signed-off-by: Rohit Vaswani<rvaswani@codeaurora.org>
>> ---
>> arch/arm/mach-msm/Makefile | 4 +-
>> arch/arm/mach-msm/board-msm8x60.c | 3 ++
>> arch/arm/mach-msm/board-qsd8x50.c | 12 ++++++++
>> arch/arm/mach-msm/gpiomux-8x50.c | 51
>> -------------------------------------
>> arch/arm/mach-msm/gpiomux-8x60.c | 19 -------------
>> 5 files changed, 17 insertions(+), 72 deletions(-)
>> delete mode 100644 arch/arm/mach-msm/gpiomux-8x50.c
>> delete mode 100644 arch/arm/mach-msm/gpiomux-8x60.c
>>
>> diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
>> index ea8c74f..b6c6ec8 100644
>> --- a/arch/arm/mach-msm/Makefile
>> +++ b/arch/arm/mach-msm/Makefile
>> @@ -30,8 +30,8 @@ obj-$(CONFIG_ARCH_MSM8X60) += board-msm8x60.o
>> obj-$(CONFIG_ARCH_MSM8960) += board-msm8960.o devices-msm8960.o
>>
>> obj-$(CONFIG_ARCH_MSM7X30) += gpiomux-v1.o gpiomux.o
>> -obj-$(CONFIG_ARCH_QSD8X50) += gpiomux-8x50.o gpiomux-v1.o gpiomux.o
>> -obj-$(CONFIG_ARCH_MSM8X60) += gpiomux-8x60.o gpiomux-v2.o gpiomux.o
>> +obj-$(CONFIG_ARCH_QSD8X50) += gpiomux-v1.o gpiomux.o
>> +obj-$(CONFIG_ARCH_MSM8X60) += gpiomux-v2.o gpiomux.o
>> ifdef CONFIG_MSM_V2_TLMM
>> ifndef CONFIG_ARCH_MSM8960
>> # TODO: TLMM Mapping issues need to be resolved
>> diff --git a/arch/arm/mach-msm/board-msm8x60.c
>> b/arch/arm/mach-msm/board-msm8x60.c
>> index b3c55f1..6c0b868 100644
>> --- a/arch/arm/mach-msm/board-msm8x60.c
>> +++ b/arch/arm/mach-msm/board-msm8x60.c
>> @@ -27,6 +27,9 @@
>>
>> #include<mach/board.h>
>> #include<mach/msm_iomap.h>
>> +#include "gpiomux.h"
>> +
>> +struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {};
>>
>>
>> static void __init msm8x60_map_io(void)
>> diff --git a/arch/arm/mach-msm/board-qsd8x50.c
>> b/arch/arm/mach-msm/board-qsd8x50.c
>> index b464d48..b63b7c4 100644
>> --- a/arch/arm/mach-msm/board-qsd8x50.c
>> +++ b/arch/arm/mach-msm/board-qsd8x50.c
>> @@ -36,9 +36,21 @@
>> #include<mach/mmc.h>
>>
>> #include "devices.h"
>> +#include "gpiomux.h"
>>
>> extern struct sys_timer msm_timer;
>>
>> +struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {
>> + [86] = { /* UART3 RX */
>> + .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> + GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> + },
>> + [87] = { /* UART3 TX */
>> + .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> + GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> + },
>> +};
>> +
>> static const resource_size_t qsd8x50_surf_smc91x_base __initdata =
>> 0x70000300;
>> static const unsigned qsd8x50_surf_smc91x_gpio __initdata = 156;
>>
>> diff --git a/arch/arm/mach-msm/gpiomux-8x50.c
>> b/arch/arm/mach-msm/gpiomux-8x50.c
>> deleted file mode 100644
>> index f7a4ea5..0000000
>> --- a/arch/arm/mach-msm/gpiomux-8x50.c
>> +++ /dev/null
>> @@ -1,51 +0,0 @@
>> -/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> - *
>> - * This program is free software; you can redistribute it and/or modify
>> - * it under the terms of the GNU General Public License version 2 and
>> - * only version 2 as published by the Free Software Foundation.
>> - *
>> - * This program is distributed in the hope that it will be useful,
>> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> - * GNU General Public License for more details.
>> - *
>> - * You should have received a copy of the GNU General Public License
>> - * along with this program; if not, write to the Free Software
>> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> - * 02110-1301, USA.
>> - */
>> -#include "gpiomux.h"
>> -
>> -#if defined(CONFIG_MMC_MSM) || defined(CONFIG_MMC_MSM_MODULE)
>> - #define SDCC_DAT_0_3_CMD_ACTV_CFG (GPIOMUX_VALID | GPIOMUX_PULL_UP\
>> - | GPIOMUX_FUNC_1 | GPIOMUX_DRV_8MA)
>> - #define SDCC_CLK_ACTV_CFG (GPIOMUX_VALID | GPIOMUX_PULL_NONE\
>> - | GPIOMUX_FUNC_1 | GPIOMUX_DRV_8MA)
>> -#else
>> - #define SDCC_DAT_0_3_CMD_ACTV_CFG 0
>> - #define SDCC_CLK_ACTV_CFG 0
>> -#endif
>> -
>> -#define SDC1_SUSPEND_CONFIG (GPIOMUX_VALID | GPIOMUX_PULL_DOWN\
>> - | GPIOMUX_FUNC_GPIO | GPIOMUX_DRV_2MA)
>> -
>> -struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {
>> - [86] = { /* UART3 RX */
>> - .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> - GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> - },
>> - [87] = { /* UART3 TX */
>> - .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> - GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> - },
>> - /* SDC1 data[3:0]& CMD */
>> - [51 ... 55] = {
>> - .active = SDCC_DAT_0_3_CMD_ACTV_CFG,
>> - .suspended = SDC1_SUSPEND_CONFIG
>> - },
>> - /* SDC1 CLK */
>> - [56] = {
>> - .active = SDCC_CLK_ACTV_CFG,
>> - .suspended = SDC1_SUSPEND_CONFIG
>> - },
>> -};
>> diff --git a/arch/arm/mach-msm/gpiomux-8x60.c
>> b/arch/arm/mach-msm/gpiomux-8x60.c
>> deleted file mode 100644
>> index 7b380b3..0000000
>> --- a/arch/arm/mach-msm/gpiomux-8x60.c
>> +++ /dev/null
>> @@ -1,19 +0,0 @@
>> -/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> - *
>> - * This program is free software; you can redistribute it and/or modify
>> - * it under the terms of the GNU General Public License version 2 and
>> - * only version 2 as published by the Free Software Foundation.
>> - *
>> - * This program is distributed in the hope that it will be useful,
>> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> - * GNU General Public License for more details.
>> - *
>> - * You should have received a copy of the GNU General Public License
>> - * along with this program; if not, write to the Free Software
>> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> - * 02110-1301, USA.
>> - */
>> -#include "gpiomux.h"
>> -
>> -struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {};
>> --
>> 1.7.3.3
>>
>> Thanks,
>> Rohit Vaswani
>>
>> --
>> Sent by an employee of the Qualcomm Innovation Center, Inc.
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
>>
>>
Thanks,
Rohit Vaswani
--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
WARNING: multiple messages have this Message-ID (diff)
From: rvaswani@codeaurora.org (Rohit Vaswani)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] msm: Remove arch-specific gpiomux tables
Date: Wed, 09 Feb 2011 13:57:45 -0800 [thread overview]
Message-ID: <4D530DD9.1060409@codeaurora.org> (raw)
In-Reply-To: <AANLkTimOAOirgH7haDJjf265zdbvoei=f=GGxQEh+5dh@mail.gmail.com>
Hi Dima,
Thanks for your feedback. What you mention is absolutely right, and
accommodating that requires an architectural change which we have ready
and I will be pushing that out anytime.
This patch addresses your comments for removing the separate gpiomux
config file. My next patch series should provide you a complete picture.
Thanks,
Rohit
On 2/9/2011 12:59 PM, Dima Zavin wrote:
> I don't like this solution of putting the magicly named array into the
> board file. What if I want multiple boards to be built into the same
> kernel? What if I want multiple tables in case I have different
> revisions of the board?
>
> The more correct way would be to add a function to gpiomux.c to be
> able to apply a list of gpiomux configs, something like:
>
> int msm_gpiomux_config_table(struct msm_gpiomux_cfg *table, int num);
>
> --Dima
>
> On Fri, Feb 4, 2011 at 5:44 PM, Rohit Vaswani<rvaswani@codeaurora.org> wrote:
>> The gpiomux configs are board-specific and thus should be
>> a part of the board file.
>>
>> Signed-off-by: Rohit Vaswani<rvaswani@codeaurora.org>
>> ---
>> arch/arm/mach-msm/Makefile | 4 +-
>> arch/arm/mach-msm/board-msm8x60.c | 3 ++
>> arch/arm/mach-msm/board-qsd8x50.c | 12 ++++++++
>> arch/arm/mach-msm/gpiomux-8x50.c | 51
>> -------------------------------------
>> arch/arm/mach-msm/gpiomux-8x60.c | 19 -------------
>> 5 files changed, 17 insertions(+), 72 deletions(-)
>> delete mode 100644 arch/arm/mach-msm/gpiomux-8x50.c
>> delete mode 100644 arch/arm/mach-msm/gpiomux-8x60.c
>>
>> diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
>> index ea8c74f..b6c6ec8 100644
>> --- a/arch/arm/mach-msm/Makefile
>> +++ b/arch/arm/mach-msm/Makefile
>> @@ -30,8 +30,8 @@ obj-$(CONFIG_ARCH_MSM8X60) += board-msm8x60.o
>> obj-$(CONFIG_ARCH_MSM8960) += board-msm8960.o devices-msm8960.o
>>
>> obj-$(CONFIG_ARCH_MSM7X30) += gpiomux-v1.o gpiomux.o
>> -obj-$(CONFIG_ARCH_QSD8X50) += gpiomux-8x50.o gpiomux-v1.o gpiomux.o
>> -obj-$(CONFIG_ARCH_MSM8X60) += gpiomux-8x60.o gpiomux-v2.o gpiomux.o
>> +obj-$(CONFIG_ARCH_QSD8X50) += gpiomux-v1.o gpiomux.o
>> +obj-$(CONFIG_ARCH_MSM8X60) += gpiomux-v2.o gpiomux.o
>> ifdef CONFIG_MSM_V2_TLMM
>> ifndef CONFIG_ARCH_MSM8960
>> # TODO: TLMM Mapping issues need to be resolved
>> diff --git a/arch/arm/mach-msm/board-msm8x60.c
>> b/arch/arm/mach-msm/board-msm8x60.c
>> index b3c55f1..6c0b868 100644
>> --- a/arch/arm/mach-msm/board-msm8x60.c
>> +++ b/arch/arm/mach-msm/board-msm8x60.c
>> @@ -27,6 +27,9 @@
>>
>> #include<mach/board.h>
>> #include<mach/msm_iomap.h>
>> +#include "gpiomux.h"
>> +
>> +struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {};
>>
>>
>> static void __init msm8x60_map_io(void)
>> diff --git a/arch/arm/mach-msm/board-qsd8x50.c
>> b/arch/arm/mach-msm/board-qsd8x50.c
>> index b464d48..b63b7c4 100644
>> --- a/arch/arm/mach-msm/board-qsd8x50.c
>> +++ b/arch/arm/mach-msm/board-qsd8x50.c
>> @@ -36,9 +36,21 @@
>> #include<mach/mmc.h>
>>
>> #include "devices.h"
>> +#include "gpiomux.h"
>>
>> extern struct sys_timer msm_timer;
>>
>> +struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {
>> + [86] = { /* UART3 RX */
>> + .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> + GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> + },
>> + [87] = { /* UART3 TX */
>> + .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> + GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> + },
>> +};
>> +
>> static const resource_size_t qsd8x50_surf_smc91x_base __initdata =
>> 0x70000300;
>> static const unsigned qsd8x50_surf_smc91x_gpio __initdata = 156;
>>
>> diff --git a/arch/arm/mach-msm/gpiomux-8x50.c
>> b/arch/arm/mach-msm/gpiomux-8x50.c
>> deleted file mode 100644
>> index f7a4ea5..0000000
>> --- a/arch/arm/mach-msm/gpiomux-8x50.c
>> +++ /dev/null
>> @@ -1,51 +0,0 @@
>> -/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> - *
>> - * This program is free software; you can redistribute it and/or modify
>> - * it under the terms of the GNU General Public License version 2 and
>> - * only version 2 as published by the Free Software Foundation.
>> - *
>> - * This program is distributed in the hope that it will be useful,
>> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> - * GNU General Public License for more details.
>> - *
>> - * You should have received a copy of the GNU General Public License
>> - * along with this program; if not, write to the Free Software
>> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> - * 02110-1301, USA.
>> - */
>> -#include "gpiomux.h"
>> -
>> -#if defined(CONFIG_MMC_MSM) || defined(CONFIG_MMC_MSM_MODULE)
>> - #define SDCC_DAT_0_3_CMD_ACTV_CFG (GPIOMUX_VALID | GPIOMUX_PULL_UP\
>> - | GPIOMUX_FUNC_1 | GPIOMUX_DRV_8MA)
>> - #define SDCC_CLK_ACTV_CFG (GPIOMUX_VALID | GPIOMUX_PULL_NONE\
>> - | GPIOMUX_FUNC_1 | GPIOMUX_DRV_8MA)
>> -#else
>> - #define SDCC_DAT_0_3_CMD_ACTV_CFG 0
>> - #define SDCC_CLK_ACTV_CFG 0
>> -#endif
>> -
>> -#define SDC1_SUSPEND_CONFIG (GPIOMUX_VALID | GPIOMUX_PULL_DOWN\
>> - | GPIOMUX_FUNC_GPIO | GPIOMUX_DRV_2MA)
>> -
>> -struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {
>> - [86] = { /* UART3 RX */
>> - .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> - GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> - },
>> - [87] = { /* UART3 TX */
>> - .suspended = GPIOMUX_DRV_2MA | GPIOMUX_PULL_DOWN |
>> - GPIOMUX_FUNC_1 | GPIOMUX_VALID,
>> - },
>> - /* SDC1 data[3:0]& CMD */
>> - [51 ... 55] = {
>> - .active = SDCC_DAT_0_3_CMD_ACTV_CFG,
>> - .suspended = SDC1_SUSPEND_CONFIG
>> - },
>> - /* SDC1 CLK */
>> - [56] = {
>> - .active = SDCC_CLK_ACTV_CFG,
>> - .suspended = SDC1_SUSPEND_CONFIG
>> - },
>> -};
>> diff --git a/arch/arm/mach-msm/gpiomux-8x60.c
>> b/arch/arm/mach-msm/gpiomux-8x60.c
>> deleted file mode 100644
>> index 7b380b3..0000000
>> --- a/arch/arm/mach-msm/gpiomux-8x60.c
>> +++ /dev/null
>> @@ -1,19 +0,0 @@
>> -/* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
>> - *
>> - * This program is free software; you can redistribute it and/or modify
>> - * it under the terms of the GNU General Public License version 2 and
>> - * only version 2 as published by the Free Software Foundation.
>> - *
>> - * This program is distributed in the hope that it will be useful,
>> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> - * GNU General Public License for more details.
>> - *
>> - * You should have received a copy of the GNU General Public License
>> - * along with this program; if not, write to the Free Software
>> - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
>> - * 02110-1301, USA.
>> - */
>> -#include "gpiomux.h"
>> -
>> -struct msm_gpiomux_config msm_gpiomux_configs[GPIOMUX_NGPIOS] = {};
>> --
>> 1.7.3.3
>>
>> Thanks,
>> Rohit Vaswani
>>
>> --
>> Sent by an employee of the Qualcomm Innovation Center, Inc.
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
>>
>>
Thanks,
Rohit Vaswani
--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
next prev parent reply other threads:[~2011-02-09 21:57 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-05 1:44 [PATCH] msm: Remove arch-specific gpiomux tables Rohit Vaswani
2011-02-05 1:44 ` Rohit Vaswani
2011-02-09 20:59 ` Dima Zavin
2011-02-09 20:59 ` Dima Zavin
2011-02-09 21:54 ` David Brown
2011-02-09 21:54 ` David Brown
2011-02-09 21:57 ` Rohit Vaswani [this message]
2011-02-09 21:57 ` Rohit Vaswani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D530DD9.1060409@codeaurora.org \
--to=rvaswani@codeaurora.org \
--cc=bryanh@codeaurora.org \
--cc=davidb@codeaurora.org \
--cc=dima@android.com \
--cc=dwalker@codeaurora.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.