summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/mux.h
Commit message (Collapse)AuthorAgeFilesLines
* ARM: omap4: Pass core and wakeup mux tables to omap4_mux_initColin Cross2011-06-011-2/+4
| | | | | | | | | OMAP4 contains two separate instances of the padconf registers, one in the core system config and one in the wakeup system config. Pass in two tables to apply the correct values to each instance. Signed-off-by: Colin Cross <ccross@android.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: mux: Add macro for configuring static with omap_hwmod_mux_initTony Lindgren2011-03-111-0/+6
| | | | | | | | | | Add macro for defining static pins in the board file. We can now start implementing pin multiplexing in the platform init code for devices that call omap_hwmod_mux_init. Currently that is only implemented for serial.c. Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: mux: Remove the use of IDLE flagR Sricharan2011-03-111-1/+0
| | | | | | | | | | | Currently OMAP_DEVICE_PAD_IDLE flag is used to mux pins dynamically. This can be simplified by using the enabled state variable of each pad. This also fixes the issue of the static pads not getting muxed after idling and disable/enable state transitions. Signed-off-by: sricharan <r.sricharan@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: Add separate list for dynamic pads to muxTony Lindgren2011-03-111-1/+1
| | | | | | | | | | This avoids going through the list unnecessarily when idling devices for runtime PM. Based on an earlier patch by sricharan <r.sricharan@ti.com>. Signed-off-by: sricharan <r.sricharan@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: Add struct omap_board_data and use it for platform level serial initTony Lindgren2010-12-221-0/+14
| | | | | | | This is needed to pass board specific data such as pads used to the platform level driver init code. Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: Allow hwmod state changes to mux pads based on the state changesTony Lindgren2010-12-221-0/+15
| | | | | | | | | | | | | | Allow hwmod state changes to mux pads based on the state changes. By default, only enable and disable the pads. In some rare cases dynamic remuxing for the idles states is needed, this can be done by passing the enable, idle, and off pads from board-*.c file along with OMAP_DEVICE_PAD_REMUX flag. Thanks to Paul Walmsley <paul@booyaka.com> for the comments on the hwmod related changes. Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap2+: Add support for hwmod specific muxing of devicesTony Lindgren2010-12-221-0/+40
| | | | | | | | | | | This allows adding hwmod specific pads dynamically during the platform device init. Note that we don't currently have the hwmod specific signals listed in the hwmod data, but struct omap_hwmod_mux_info will make that possible if necessary. Signed-off-by: Tony Lindgren <tony@atomide.com>
* arm: mach-omap2: remove NULL board_mux from board filesAaro Koskinen2010-12-021-0/+2
| | | | | | | | | If CONFIG_OMAP_MUX is not enabled, we can define board_mux in the header file instead of forcing every single board to define it. Signed-off-by: Aaro Koskinen <aaro.koskinen@nokia.com> [tony@atomide.com: updated for combined board-zoom files] Signed-off-by: Tony Lindgren <tony@atomide.com>
* OMAP4: mux: Add CBS package data for OMAP4430 ES2Benoit Cousson2010-11-171-0/+1
| | | | | | | | | | | | | | Please note that the full muxmodes are re-defined for ES2 instead of using the subset. There are 81 differences among 204 pins. The subset fixup will have to iterate over the whole list for each subset entry, which can lead to an important number of iteration. On the other hand, it will take much more memory at boot time. Signed-off-by: Benoit Cousson <b-cousson@ti.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Anand Gadiyar <gadiyar@ti.com>
* OMAP4: mux: Add CBL package data for OMAP4430 ES1Benoit Cousson2010-11-171-0/+12
| | | | | | | | | | Add data for OMAP4430 generated from HW pinout & register database. The data set is split in two partitions for both core and wkup. Signed-off-by: Benoit Cousson <b-cousson@ti.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Kevin Hilman <khilman@deeprootsystems.com>
* OMAP: mux: Add support for control module split in several partitionsBenoit Cousson2010-11-171-12/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting on OMAP4, the pin mux configuration is located in two different partitions of the control module (CODE_PAD and WKUP_PAD). The first one is inside the core power domain whereas the second one is inside the wakeup. - Add the capability to add any number of partition during board init time depending of Soc partitioning. - Add some init flags as well in order to avoid explicit Soc version check inside the mux core code. - Add a comment with mux0 mode on top of omap_mux/board/<partition> if the current mux mode is not the default one. Thanks to Tony Lindgren <tony@atomide.com> for the following improvements: - Add omap_mux_get for getting the partition data so platform level device code can use it. - Fix the rx51 board code to use the new API. - Do not store the partition for each mux entry. Look up the partition for debugfs instead. Thanks to Dan Murphy <dmurphy@ti.com> for testing on OMAP4 and reporting a couple of bugs. Thanks to Anand Gadiyar <gadiyar@ti.com> for testing on OMAP3 zoom and bug report. Signed-off-by: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com> Tested-by: Murphy Dan <dmurphy@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Anand Gadiyar <gadiyar@ti.com>
* omap: Fix omap_mux_init_signal not to trash muxnameTony Lindgren2010-10-011-1/+1
| | | | | | | | | Otherwise the muxname passed to the function will get truncated. Based on an earlier patch by rockefeller.lin@innocomm.com. Reported-by: rockefeller.lin@innocomm.com Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Add data for 2430Tony Lindgren2010-07-051-0/+8
| | | | | | | | | Add data for 2430. Big thanks to Paul Walmsley <paul@pwsan.com> for generating usable mux data out of TRMs. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Add data for 2420Tony Lindgren2010-07-051-0/+8
| | | | | | | | | Add data for 2420. Big thanks to Paul Walmsley <paul@pwsan.com> for generating usable mux data out of TRMs. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Allow compiling in new mux code on all mach-omap2 systemsTony Lindgren2010-07-051-1/+1
| | | | | | Allow compiling in new mux code on all mach-omap2 systems Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Renumber package defines to make room for older 24xx packagesTony Lindgren2010-07-051-4/+6
| | | | | | | Only POP and SIP are known to exist for 2420, 2430 seems to only have SIP package available. Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap3: Replace ARCH_OMAP34XX with ARCH_OMAP3Tony Lindgren2010-02-151-1/+1
| | | | | | Replace ARCH_OMAP34XX with ARCH_OMAP3 Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: Fix functions for dynamic remuxing of pinsTony Lindgren2010-01-191-0/+24
| | | | | | | | | | | | | | Make the omap_mux_read and write available for board code, and rename omap_mux_set_board_signals into omap_mux_write_array. Also add the related prototypes and comments into mux.h. In some cases we want to change the signals dynamically, mostly for power management. Note that we cannot use the signal names as they are set __init to save memory. Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Add 36xx CBP package supportTony Lindgren2009-12-111-0/+1
| | | | | | | | Add 36xx CBP package support Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Add new style pin multiplexing data for 34xxTony Lindgren2009-12-111-0/+2
| | | | | | | | | | | | | | | | | | Add new style mux data for 34xx. This should also work with 3630 easily by adding the processor subset and ball data. Note that this data is __initdata, and gets optimized out except for the GPIO pins if CONFIG_OMAP_MUX is not set. Also note that this data uses omap3630 naming for the SDMMC registers instead of 34xx naming with just MMC. Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
* omap: mux: Add new style pin multiplexing code for omap3Tony Lindgren2009-12-111-0/+160
Initially only for 34xx. This code allows us to: - Make the code more generic as the omap internal signal names can stay the same across omap generations for some devices - Map mux registers to GPIO registers that is needed for dynamic muxing of pins during off-idle - Override bootloader mux values via kernel cmdline using omap_mux=some.signa1=0x1234,some.signal2=0x1234 - View and set the mux registers via debugfs if CONFIG_DEBUG_FS is enabled Cc: Mike Rapoport <mike@compulab.co.il> Cc: Benoit Cousson <b-cousson@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
OpenPOWER on IntegriCloud