* RE: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
[not found] <1289886357-22821-1-git-send-email-r.sricharan@ti.com>
@ 2010-11-16 6:15 ` R, Sricharan
0 siblings, 0 replies; 8+ messages in thread
From: R, Sricharan @ 2010-11-16 6:15 UTC (permalink / raw)
To: linux-omap
Cc: Gadiyar, Anand, Cousson, Benoit, V, Aneesh, Shilimkar, Santosh,
tony, paul
Adding people in CC.
>This series updates the core device drivers to use mux framework
>for OMAP4 SDP and PANDA board. It's generated against the
>linux-omap master branch. It has a dependency on the Benoit's
>omap4 mux data series.
>
> http://www.spinics.net/lists/linux-omap/msg40039.html
>
>sricharan (5):
> OMAP4: hsmmc: Initialise the mmc mux pins
> OMAP4: usb-musb: Initialise the usb mux pins.
> OMAP4: mcbsp: Initialise the mcbsp mux pins
> OMAP4: board-4430sdp: Initialise the mcspi mux pins
> OMAP4: serial: Initialise the uart mux pins
>
> arch/arm/mach-omap2/board-4430sdp.c | 20 ++++++++
> arch/arm/mach-omap2/devices.c | 83
>+++++++++++++++++++++++++++++++++++
> arch/arm/mach-omap2/mcbsp.c | 33 +++++++++++++-
> arch/arm/mach-omap2/serial.c | 38 ++++++++++++++++
> arch/arm/mach-omap2/usb-musb.c | 41 +++++++++++++++++
> 5 files changed, 214 insertions(+), 1 deletions(-)
>
>While doing some internal reviews, there were few debates about existing
>mux framework usage. I am summarising that discussion here and would
>like to hear more on this from the community.
>
>1. PAD configuration for all pins should be done in a central place(board
>file)
>Pros:
> a. All pins configured in a central place. Easy to ensure coverage
> and maintenance. Single place to look for all mux related settings
> b. Drivers, unless they have run time pad configuration requirements
> need not worry about muxing.
>Cons:
> a. Adds a lot of duplicate data in different board files assuming
> most of the pins will be connected the same way across different
> boards.
>
>2. Do PAD configuration independently for each module
>Pros:
> a. Avoids repetition of similar data for different boards.
> b. Gives a knowledge of how pins are configured for a module
> to the respective owners.
> c. Pads are not initialised unless they are really needed.
>Cons:
> a. Can become difficult to maintain if lot of data tend to be
> different across boards.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
@ 2010-11-15 7:38 sricharan
2010-11-15 22:33 ` Cousson, Benoit
2010-11-18 19:06 ` Tony Lindgren
0 siblings, 2 replies; 8+ messages in thread
From: sricharan @ 2010-11-15 7:38 UTC (permalink / raw)
To: linux-omap
This series updates the core device drivers to use mux framework
for OMAP4 SDP and PANDA board. It's generated against the
linux-omap master branch. It has a dependency on the Benoit's
omap4 mux data series.
http://www.spinics.net/lists/linux-omap/msg38995.html
sricharan (5):
OMAP4: hsmmc: Initialise the mmc mux pins
OMAP4: usb-musb: Initialise the usb mux pins.
OMAP4: mcbsp: Initialise the mcbsp mux pins
OMAP4: board-4430sdp: Initialise the mcspi mux pins
OMAP4: serial: Initialise the uart mux pins
arch/arm/mach-omap2/board-4430sdp.c | 20 ++++++++
arch/arm/mach-omap2/devices.c | 83 +++++++++++++++++++++++++++++++++++
arch/arm/mach-omap2/mcbsp.c | 33 +++++++++++++-
arch/arm/mach-omap2/serial.c | 38 ++++++++++++++++
arch/arm/mach-omap2/usb-musb.c | 41 +++++++++++++++++
5 files changed, 214 insertions(+), 1 deletions(-)
While doing some internal reviews, there were few debates about existing
mux framework usage. I am summarising that discussion here and would
like to hear more on this from the community.
1. PAD configuration for all pins should be done in a central place(board file)
Pros:
a. All pins configured in a central place. Easy to ensure coverage
and maintenance. Single place to look for all mux related settings
b. Drivers, unless they have run time pad configuration requirements
need not worry about muxing.
Cons:
a. Adds a lot of duplicate data in different board files assuming
most of the pins will be connected the same way across different
boards.
2. Do PAD configuration independently for each module
Pros:
a. Avoids repetition of similar data for different boards.
b. Gives a knowledge of how pins are configured for a module
to the respective owners.
c. Pads are not initialised unless they are really needed.
Cons:
a. Can become difficult to maintain if lot of data tend to be
different across boards.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-15 7:38 sricharan
@ 2010-11-15 22:33 ` Cousson, Benoit
2010-11-18 19:06 ` Tony Lindgren
1 sibling, 0 replies; 8+ messages in thread
From: Cousson, Benoit @ 2010-11-15 22:33 UTC (permalink / raw)
To: R, Sricharan; +Cc: linux-omap
Hi Sricharan,
On 11/15/2010 8:38 AM, R, Sricharan wrote:
> This series updates the core device drivers to use mux framework
> for OMAP4 SDP and PANDA board. It's generated against the
> linux-omap master branch. It has a dependency on the Benoit's
> omap4 mux data series.
>
> http://www.spinics.net/lists/linux-omap/msg38995.html
I've just realized that this is not the latest one, here it is:
http://www.spinics.net/lists/linux-omap/msg40039.html
Regards,
Benoit
>
> sricharan (5):
> OMAP4: hsmmc: Initialise the mmc mux pins
> OMAP4: usb-musb: Initialise the usb mux pins.
> OMAP4: mcbsp: Initialise the mcbsp mux pins
> OMAP4: board-4430sdp: Initialise the mcspi mux pins
> OMAP4: serial: Initialise the uart mux pins
>
> arch/arm/mach-omap2/board-4430sdp.c | 20 ++++++++
> arch/arm/mach-omap2/devices.c | 83 +++++++++++++++++++++++++++++++++++
> arch/arm/mach-omap2/mcbsp.c | 33 +++++++++++++-
> arch/arm/mach-omap2/serial.c | 38 ++++++++++++++++
> arch/arm/mach-omap2/usb-musb.c | 41 +++++++++++++++++
> 5 files changed, 214 insertions(+), 1 deletions(-)
>
> While doing some internal reviews, there were few debates about existing
> mux framework usage. I am summarising that discussion here and would
> like to hear more on this from the community.
>
> 1. PAD configuration for all pins should be done in a central place(board file)
> Pros:
> a. All pins configured in a central place. Easy to ensure coverage
> and maintenance. Single place to look for all mux related settings
> b. Drivers, unless they have run time pad configuration requirements
> need not worry about muxing.
> Cons:
> a. Adds a lot of duplicate data in different board files assuming
> most of the pins will be connected the same way across different
> boards.
>
> 2. Do PAD configuration independently for each module
> Pros:
> a. Avoids repetition of similar data for different boards.
> b. Gives a knowledge of how pins are configured for a module
> to the respective owners.
> c. Pads are not initialised unless they are really needed.
> Cons:
> a. Can become difficult to maintain if lot of data tend to be
> different across boards.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-15 7:38 sricharan
2010-11-15 22:33 ` Cousson, Benoit
@ 2010-11-18 19:06 ` Tony Lindgren
2010-11-18 21:06 ` Cousson, Benoit
1 sibling, 1 reply; 8+ messages in thread
From: Tony Lindgren @ 2010-11-18 19:06 UTC (permalink / raw)
To: sricharan; +Cc: linux-omap
* sricharan <r.sricharan@ti.com> [101114 23:26]:
> This series updates the core device drivers to use mux framework
> for OMAP4 SDP and PANDA board. It's generated against the
> linux-omap master branch. It has a dependency on the Benoit's
> omap4 mux data series.
<snip>
> 2. Do PAD configuration independently for each module
> Pros:
> a. Avoids repetition of similar data for different boards.
> b. Gives a knowledge of how pins are configured for a module
> to the respective owners.
> c. Pads are not initialised unless they are really needed.
> Cons:
> a. Can become difficult to maintain if lot of data tend to be
> different across boards.
For the common modules, we should have generic platform init code
using hwmod. And that init code is the logical place to do the muxing.
We also need to consider that the pin muxing is board specific.
So in cases where the are alternative signal paths, we need to pass
the signal names from board-*.c file to the platform driver init code.
Regards,
Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-18 19:06 ` Tony Lindgren
@ 2010-11-18 21:06 ` Cousson, Benoit
2010-11-18 21:26 ` Tony Lindgren
0 siblings, 1 reply; 8+ messages in thread
From: Cousson, Benoit @ 2010-11-18 21:06 UTC (permalink / raw)
To: Tony Lindgren; +Cc: R, Sricharan, linux-omap
On 11/18/2010 8:06 PM, Tony Lindgren wrote:
> * sricharan<r.sricharan@ti.com> [101114 23:26]:
>> This series updates the core device drivers to use mux framework
>> for OMAP4 SDP and PANDA board. It's generated against the
>> linux-omap master branch. It has a dependency on the Benoit's
>> omap4 mux data series.
>
> <snip>
>
>> 2. Do PAD configuration independently for each module
>> Pros:
>> a. Avoids repetition of similar data for different boards.
>> b. Gives a knowledge of how pins are configured for a module
>> to the respective owners.
>> c. Pads are not initialised unless they are really needed.
>> Cons:
>> a. Can become difficult to maintain if lot of data tend to be
>> different across boards.
>
> For the common modules, we should have generic platform init code
> using hwmod. And that init code is the logical place to do the muxing.
>
> We also need to consider that the pin muxing is board specific.
> So in cases where the are alternative signal paths, we need to pass
> the signal names from board-*.c file to the platform driver init code.
What about the omap_board_mux array in board file? Do you want to get
rid of it, or is the plan is to use that for pads that does not belong
to any driver or pads that are purely board specific?
Regards,
Benoit
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-18 21:06 ` Cousson, Benoit
@ 2010-11-18 21:26 ` Tony Lindgren
2010-11-19 8:48 ` R, Sricharan
0 siblings, 1 reply; 8+ messages in thread
From: Tony Lindgren @ 2010-11-18 21:26 UTC (permalink / raw)
To: Cousson, Benoit; +Cc: R, Sricharan, linux-omap
* Cousson, Benoit <b-cousson@ti.com> [101118 12:56]:
> On 11/18/2010 8:06 PM, Tony Lindgren wrote:
> >* sricharan<r.sricharan@ti.com> [101114 23:26]:
> >>This series updates the core device drivers to use mux framework
> >>for OMAP4 SDP and PANDA board. It's generated against the
> >>linux-omap master branch. It has a dependency on the Benoit's
> >>omap4 mux data series.
> >
> ><snip>
> >
> >>2. Do PAD configuration independently for each module
> >>Pros:
> >> a. Avoids repetition of similar data for different boards.
> >> b. Gives a knowledge of how pins are configured for a module
> >> to the respective owners.
> >> c. Pads are not initialised unless they are really needed.
> >>Cons:
> >> a. Can become difficult to maintain if lot of data tend to be
> >> different across boards.
> >
> >For the common modules, we should have generic platform init code
> >using hwmod. And that init code is the logical place to do the muxing.
> >
> >We also need to consider that the pin muxing is board specific.
> >So in cases where the are alternative signal paths, we need to pass
> >the signal names from board-*.c file to the platform driver init code.
>
> What about the omap_board_mux array in board file? Do you want to
> get rid of it, or is the plan is to use that for pads that does not
> belong to any driver or pads that are purely board specific?
Well we might as well keep it around for now as that's the way
some people prefer to do the muxing. But yeah, eventually that
could be for only board specific unused pads.
I'll post some sample patches related to the uart (re)muxing
within next few days, then let's see how that will work for
other devices.
Here's the rough plan in case you have some ideas on it:
1. board-*.c code calls omap_serial_init_port with struct omap_device_mux
array that contains the pin names
2. serial.c init code muxes the pins the right way and sets
wake-up events for omap3 & 4. It also populates the runtime
remux values needed for omap2 uart
3. serial.c init code saves the struct omap_device_mux pointer
to the related hwmod entry
4. omap_device_idle/shutdown can then call omap_remux if the
omap_device_mux entry exists
...
This should solve how devices need to initialize the pads.
It should also work for all devices that may require runtime
remuxing, like some USB transceivers and eMMC.
Regards,
Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-18 21:26 ` Tony Lindgren
@ 2010-11-19 8:48 ` R, Sricharan
2010-11-19 16:04 ` Tony Lindgren
0 siblings, 1 reply; 8+ messages in thread
From: R, Sricharan @ 2010-11-19 8:48 UTC (permalink / raw)
To: Tony Lindgren, Cousson, Benoit; +Cc: linux-omap
>-----Original Message-----
>From: Tony Lindgren [mailto:tony@atomide.com]
>Sent: Friday, November 19, 2010 2:56 AM
>To: Cousson, Benoit
>Cc: R, Sricharan; linux-omap@vger.kernel.org
>Subject: Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
>
>* Cousson, Benoit <b-cousson@ti.com> [101118 12:56]:
>> On 11/18/2010 8:06 PM, Tony Lindgren wrote:
>> >* sricharan<r.sricharan@ti.com> [101114 23:26]:
>> >>This series updates the core device drivers to use mux framework
>> >>for OMAP4 SDP and PANDA board. It's generated against the
>> >>linux-omap master branch. It has a dependency on the Benoit's
>> >>omap4 mux data series.
>> >
>> ><snip>
>> >
>> >>2. Do PAD configuration independently for each module
>> >>Pros:
>> >> a. Avoids repetition of similar data for different boards.
>> >> b. Gives a knowledge of how pins are configured for a module
>> >> to the respective owners.
>> >> c. Pads are not initialised unless they are really needed.
>> >>Cons:
>> >> a. Can become difficult to maintain if lot of data tend to be
>> >> different across boards.
>> >
>> >For the common modules, we should have generic platform init code
>> >using hwmod. And that init code is the logical place to do the muxing.
>> >
>> >We also need to consider that the pin muxing is board specific.
>> >So in cases where the are alternative signal paths, we need to pass
>> >the signal names from board-*.c file to the platform driver init code.
>>
>> What about the omap_board_mux array in board file? Do you want to
>> get rid of it, or is the plan is to use that for pads that does not
>> belong to any driver or pads that are purely board specific?
>
>Well we might as well keep it around for now as that's the way
>some people prefer to do the muxing. But yeah, eventually that
>could be for only board specific unused pads.
>
>I'll post some sample patches related to the uart (re)muxing
>within next few days, then let's see how that will work for
>other devices.
>
>Here's the rough plan in case you have some ideas on it:
>
>1. board-*.c code calls omap_serial_init_port with struct omap_device_mux
> array that contains the pin names
>
>2. serial.c init code muxes the pins the right way and sets
> wake-up events for omap3 & 4. It also populates the runtime
> remux values needed for omap2 uart
>
>3. serial.c init code saves the struct omap_device_mux pointer
> to the related hwmod entry
>
>4. omap_device_idle/shutdown can then call omap_remux if the
> omap_device_mux entry exists
> ...
>
>This should solve how devices need to initialize the pads.
>It should also work for all devices that may require runtime
>remuxing, like some USB transceivers and eMMC.
Ok . This means that the pin muxing introduced
would be applicable for omap 2 ,3 and 4 also, with the
board file passing the respective data if they are different ?
>Regards,
>
>Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins.
2010-11-19 8:48 ` R, Sricharan
@ 2010-11-19 16:04 ` Tony Lindgren
0 siblings, 0 replies; 8+ messages in thread
From: Tony Lindgren @ 2010-11-19 16:04 UTC (permalink / raw)
To: R, Sricharan; +Cc: Cousson, Benoit, linux-omap
* R, Sricharan <r.sricharan@ti.com> [101119 00:39]:
>
> Ok . This means that the pin muxing introduced
> would be applicable for omap 2 ,3 and 4 also, with the
> board file passing the respective data if they are different ?
Well the pin configuration stays board specific, but the code
to set the pads is same for all omap2/3/4.
Even if the signal names stay the same, the pad configuration
register value may be different if external pulls are used
instead of the internal ones.
Regards,
Tony
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-11-19 16:04 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <1289886357-22821-1-git-send-email-r.sricharan@ti.com>
2010-11-16 6:15 ` [PATCH 0/5] OMAP4: mux: Initialise OMAP4 mux pins R, Sricharan
2010-11-15 7:38 sricharan
2010-11-15 22:33 ` Cousson, Benoit
2010-11-18 19:06 ` Tony Lindgren
2010-11-18 21:06 ` Cousson, Benoit
2010-11-18 21:26 ` Tony Lindgren
2010-11-19 8:48 ` R, Sricharan
2010-11-19 16:04 ` Tony Lindgren
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.