summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2
AgeCommit message (Collapse)Author
2011-07-09omap_hwmod: share identical omap_hwmod_addr_space arraysPaul Walmsley
To reduce kernel source file data duplication, share struct omap_hwmod_addr_space arrays across OMAP2xxx and 3xxx hwmod data files. Signed-off-by: Paul Walmsley <paul@pwsan.com>
2011-07-09omap_hwmod: use a null structure record to terminate omap_hwmod_addr_space ↵Paul Walmsley
arrays Previously, struct omap_hwmod_addr_space arrays were unterminated; and users of these arrays used the ARRAY_SIZE() macro to determine the length of the array. However, ARRAY_SIZE() only works when the array is in the same scope as the macro user. So far this hasn't been a problem. However, to reduce duplicated data, a subsequent patch will move common data to a separate, shared file. When this is done, ARRAY_SIZE() will no longer be usable. This patch removes ARRAY_SIZE() usage for struct omap_hwmod_addr_space arrays and uses a null structure member as the array terminator instead. Signed-off-by: Paul Walmsley <paul@pwsan.com>
2011-07-08Merge branch 'cleanup-part-2' of ↵Arnd Bergmann
git+ssh://master.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into omap/cleanup
2011-07-04OMAP3: Move common regulator configuration to twl-commonPeter Ujfalusi
Some regulator config can be moved out from board files, since they are close to identical. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2011-07-04OMAP3: Move common twl configuration to twl-commonPeter Ujfalusi
Reduce the amount of duplicated code by moving the common configuration for twl4030/5030/tpsxx to the twl-common file. Use the omap3_pmic_get_config function from board files to properly configure the PMIC with the common fields. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2011-07-04OMAP4: Move common twl6030 configuration to twl-commonPeter Ujfalusi
Reduce the amount of duplicated code by moving the common configuration for TWL6030 (on OMAP4 platform) to the twl-common file. Use the omap4_pmic_get_config function from board files to properly configure the PMIC with the common fields. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2011-07-04OMAP: New twl-common for common TWL configurationPeter Ujfalusi
Introduce a new file, which will be used to configure common pmic (TWL) devices, regulators, and TWL audio. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2011-06-30omap2+: fix build regressionArnd Bergmann
board-generic.c now contains a reference to omap3_timer, but depends only on ARCH_OMAP2, not on ARCH_OMAP3, which controls that symbol. omap2_timer seems to be more appropriate anyway, so use that instead. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Tony Lindgren <tony@atomide.com>
2011-06-29Merge branch 'for_3.1/pm-misc' of ↵Tony Lindgren
git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into devel-cleanup Conflicts: arch/arm/mach-omap2/pm-debug.c arch/arm/mach-omap2/pm.h
2011-06-29Merge branch 'devel-timer' into devel-cleanupTony Lindgren
2011-06-29omap: board-omap3evm: Fix compilation errorPeter Ujfalusi
Fix compilation error introduced with 786b01a8c1db0c0decca55d660a2a3ebd7cfb26b (cleanup regulator supply definitions in mach-omap2). Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-29omap: cleanup NAND platform dataGrazvydas Ignotas
omap_nand_platform_data fields 'options', 'gpio_irq', 'nand_setup' and 'dma_channel' are never referenced by the NAND driver, yet various board files are initializing those fields. This is both incorrect and confusing, so remove them. This allows to get rid of a global variable in gpmc-nand.c. This also corrects an issue where some boards are trying to pass NAND 16bit flag through .options, but the driver is using .devsize instead and ignoring .options. Finally, .dev_ready is treated as a flag by the driver, so make it bool instead of a function pointer. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-27omap2+: Rename timer-gp.c into timer.c to combine timer init functionsTony Lindgren
We can keep everything sys_timer and gptimer.c related code in timer.c as the code will be very minimal. Later on we can also remove timer-mpu.c, as it can be called from omap4_timer_init function. This allows us to get rid of confusing existing files. We currently have timer-gp.c, timer-mpu.c, and patches have been posted to add dmtimer.c. There's no need to have these multiple files, we can put everything into timer.c. Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-27omap2+: Remove omap2_gp_clockevent_set_gptimerTony Lindgren
This is no longer needed as we now just set the desired .timer in MACHINE_START. We can now also remove timer-gp.h. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-27omap2+: Use dmtimer macros for clocksourceTony Lindgren
Use dmtimer macros for clocksource. As with the clockevent, this allows us to initialize the rest of dmtimer code later on. Note that eventually we will be initializing the timesource from init_early so sched_clock will work properly for CONFIG_PRINTK_TIME. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-27omap2+: Reserve clocksource and timesource and initialize dmtimer laterTony Lindgren
There's no need to initialize the dmtimer framework early. Just mark the clocksource and timesource as reserved, and initialize dmtimer with an arch_initcall. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-27OMAP2+: PM: fix section mismatch in pm_dbg_init()Sanjeev Premi
Fix the section mismatch warning: WARNING: vmlinux.o(.text+0x21118): Section mismatch in reference from the function pm_dbg_init() to the function .init.text:pwrdms_setup() The function pm_dbg_init() references the function __init pwrdms_setup(). This is often because pm_dbg_init lacks a __init annotation or the annotation of pwrdms_setup is wrong. Signed-off-by: Sanjeev Premi <premi@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-27OMAP3: PM debug: remove register dumpingKevin Hilman
Remove OMAP3-specific register dumping feature from PM debug layer. This is removed because: - it's ugly - it's OMAP3-specific, and will obviously not scale to OMAP4+ - userspace /dev/mem-based tools (like omapconf) can do this much better Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Jean Pihet <j-pihet@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP2: PM debug: remove register dumpingKevin Hilman
Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP3: PM debug: remove sleep_while_idle featureKevin Hilman
Remove the OMAP-specific PM debug 'sleep_while_idle' feature which is currently available as an OMAP-specific debugfs entry. This duplicates existing ARM-generic functionality available as a boot-time option using the boot cmdline option 'hohlt'. If runtime configuration of this is needed, then adding a debugfs entry for the ARM-generic hlt/nohlt interface should be added. Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Jean Pihet <j-pihet@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP3+: SR: fix cosmetic indentationNishanth Menon
Error label case seems to have a 2 tab indentation when just 1 is necessary. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP3+: SR: enable/disable SR only on needNishanth Menon
Since we already know the state of the autocomp enablement, we can see if the requested state is different from the current state and enable/disable SR only on the need basis. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP3+: SR: disable interrupt by defaultNishanth Menon
We will enable and disable interrupt on a need basis in the class driver. We need to keep the IRQ disabled by default else the forceupdate or vcbypass events could trigger events that we don't need/expect to handle. This is a preparation for SmartReflex AVS class drivers such as class 2 and class 1.5 which would need to use interrupts. Existing SmartReflex AVS class 3 driver does not require to use interrupts and is not impacted by this change. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20OMAP3+: SR: make notify independent of classNishanth Menon
Interrupt notification mechanism of SmartReflex can be used by the choice of implementation of the class driver. For example, Class 2 and Class 1.5 of SmartReflex can both use the interrupt notification to identify the transition of voltage or other events. Hence, the actual class does not matter for notifier. Let the class driver's handling decide how it should be used. SmartReflex driver should provide just the primitives. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-20omap2+: Remove gptimer_wakeup for nowTony Lindgren
This removes the support for setting the wake-up timer for debugging. Later on we can reserve gptimer1 for PM code only and have similar functionality. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-20omap2+: Use dmtimer macros for clockeventTony Lindgren
This patch makes timer-gp.c to use only a subset of dmtimer functions without the need to initialize dmtimer code early. Also note that now with the inline functions, timer_set_next_event becomes more efficient in the lines of assembly code. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-20omap: Set separate timer init functions to avoid cpu_is_omap testsTony Lindgren
This is needed for the following patches so we can initialize the rest of the hardware timers later on. As with the init_irq calls, there's no need to do cpu_is_omap calls during the timer init as we only care about the major omap generation. This means that we can initialize the sys_timer with the .timer entries alone. Note that for now we just set stubs for the various sys_timer entries that will get populated in a later patch. The following patches will also remove the omap_dm_timer_init calls and change the init for the rest of the hardware timers to happen with an arch_initcall. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-16omap: Use separate init_irq functions to avoid cpu_is_omap tests earlyTony Lindgren
This allows us to remove cpu_is_omap calls from init_irq functions. There should not be any need for cpu_is_omap calls as at this point. During the timer init we only care about SoC generation, and not about subrevisions. The main reason for the patch is that we want to initialize only minimal omap specific code from the init_early call. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
2011-06-14Merge branch 'fixes-v3.0-rc3' into devel-fixesTony Lindgren
2011-06-14Remove old-style supply.dev assignments common in hsmmc initOleg Drokin
CC: Mark Brown <broonie@opensource.wolfsonmicro.com> CC: Mike Rapoport <mike@compulab.co.il> CC: Nishant Kamat <nskamat@ti.com> CC: Steve Sakoman <steve@sakoman.com> CC: Felipe Balbi <balbi@ti.com> Signed-off-by: Oleg Drokin <green@linuxhacker.ru> Acked-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-14cleanup regulator supply definitions in mach-omap2Oleg Drokin
to use REGULATOR_SUPPLY arrays. CC: Mark Brown <broonie@opensource.wolfsonmicro.com> CC: Mike Rapoport <mike@compulab.co.il> CC: Nishant Kamat <nskamat@ti.com> CC: Steve Sakoman <steve@sakoman.com> CC: Felipe Balbi <balbi@ti.com> CC: Santosh Shilimkar <santosh.shilimkar@ti.com> CC: peter.barada@logicpd.com Signed-off-by: Oleg Drokin <green@linuxhacker.ru> Acked-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-13Merge branch 'for_3.0/pm-fixes' of ↵Tony Lindgren
ssh://master.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into fixes
2011-06-13omap: pandora: fix NAND supportGrazvydas Ignotas
Commit d5ce2b65 "omap3630: nand: fix device size to work in polled mode" changed values for .devsize in nand platform data, now we have to pass NAND_BUSWIDTH_16 instead of '1' to select 16bit NAND. Update pandora's platform data accordingly, also specify appropriate transfer type. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-06OMAP: PM debug: fix section mismatch warningsRussell King
WARNING: arch/arm/mach-omap2/built-in.o(.text+0x423c): Section mismatch in reference from the function pm_dbg_regset_init() to the function .init.text:pm_dbg_init() The function pm_dbg_regset_init() references the function __init pm_dbg_init(). This is often because pm_dbg_regset_init lacks a __init annotation or the annotation of pm_dbg_init is wrong. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Kevin Hilman <khilman@ti.com>
2011-06-01ARM: OMAP4: MMC: increase delay for pbiasBalaji T K
4 micro seconds is not enough for PBIAS if MMC regulator is enabled from MMC regulator OFF. Increase the delay for PBIAS to stabilize. Wait for PBIAS and timeout if not. Resolves MMC/SD failure on OMAP4 "Pbias Voltage is not same as LDO" Signed-off-by: Balaji T K <balajitk@ti.com> Acked-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01arm: omap2plus: move NAND_BLOCK_SIZE out of boardsIgor Grinberg
Several boards defining mtd partitions also defined NAND_BLOCK_SIZE as SZ_128K. Move the define to common-board-devices.h This removes multiple defines of NAND_BLOCK_SIZE. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01omap4: hwmod: Enable the keypadShubhrajyoti D
Commit 407a6888f7362cb3dabe69ea6d9dcf3c750dc56a (OMAP4: hwmod data: Add AESS, McPDM, bandgap, counter_32k, MMC, KBD, ISS & IPU) added the entry for keypad, but did not enable it. Enable the keypad in the hwmod database so it works. Signed-off-by: Shubhrajyoti D<shubhrajyoti@ti.com> Acked-by: Benoit Cousson<b-cousson@ti.com> [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01omap3: Free Beagle rev gpios when they are read, so others can read them laterTasslehoff Kjappfot
Free Beagle rev gpios when they are read, so others can read them later Signed-off-by: Tasslehoff Kjappfot <tasskjapp@gmail.com> [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01arm: omap3: beagle: Ensure msecure is mux'd to be able to set the RTCAlexander Holler
Without msecure beeing high it isn't possible to set (or start) the RTC. Tested with a BeagleBoard C4. Signed-off-by: Alexander Holler <holler@ahsoftware.de> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01omap: rx51: Don't power up speaker amplifier at bootupJarkko Nikula
Speaker amplifier is accidentally powered up in early TWL gpio setup. This causes a few mA of needless battery current consumption. Without this patch the amplifier can be shutdown only by having one active audio playback and shutdown cycle to speaker output. Thanks to Kalle Jokiniemi <kalle.jokiniemi@nokia.com> for noticing the issue. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Cc: Kalle Jokiniemi <kalle.jokiniemi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01omap: rx51: Set regulator V28_A always onJarkko Nikula
The V28_A domain in Nokia N900 that supplies VDD voltages to TLV320AIC34 and TPA6130A2 should not be shutdown. This is because otherwise there will be leak from VIO to VDD in TLV320AIC34 and this leak consumes more battery current that is saved from keeping V28_A off. With this patch the battery current consumption is approximately 1.5 mA lower. Thanks to Kalle Jokiniemi <kalle.jokiniemi@nokia.com> for noticing the issue. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Cc: Kalle Jokiniemi <kalle.jokiniemi@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01ARM: OMAP4: MMC: no regulator off during probe for eMMCBalaji T K
eMMC does not handle power off when not in sleep state, Skip regulator disable during probe when eMMC is not in known state - state left by bootloader. Resolves eMMC failure on OMAP4 mmc0: error -110 whilst initialising MMC card Signed-off-by: Balaji T K <balajitk@ti.com> Tested-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Acked-by: Kishore Kadiyala <kishore.kadiyala@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01arm: omap2plus: fix ads7846 pendown gpio requestIgor Grinberg
introduced by: 96974a24 (omap: consolidate touch screen initialization among different boards) ads7846 driver can use either gpio_pendown or get_pendown_state() callback. In case of gpio_pendown, it requests the provided gpio_pendown thus resulting in double requesting that gpio: ads7846 spi1.0: failed to request pendown GPIO57 ads7846: probe of spi1.0 failed with error -16 Fix this by restricting the gpio request to the case of get_pendown_state() callback is used. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Tested-by: Thomas Weber <weber@corscience.de> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01ARM: OMAP2: Add missing iounmap in omap4430_phy_initTodd Poynor
!dev case needs iounmap before return. Signed-off-by: Todd Poynor <toddpoynor@google.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01ARM: omap4: Pass core and wakeup mux tables to omap4_mux_initColin Cross
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>
2011-06-01ARM: omap2+: mux: Allow board mux settings to be NULLColin Cross
OMAP4 has two mux instances, and the board may not have settings for one of them. Allow the board file to pass NULL for an instance's mux settings, which will initialize the mux instance but skip writing board settings. Signed-off-by: Colin Cross <ccross@android.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01OMAP4: fix return value of omap4_l3_initRabin Vincent
Don't PTR_ERR() a non-error pointer: initcall omap4_l3_init+0x0/0xdc returned -544980480 after 0 usecs initcall omap4_l3_init+0x0/0xdc returned with error code -544980480 Signed-off-by: Rabin Vincent <rabin@rab.in> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-06-01OMAP2+: mux: fix compilation warningsGovindraj.R
Fix below compilation warnings. arch/arm/mach-omap2/omap_hwmod.c: In function 'omap_hwmod_for_each': arch/arm/mach-omap2/omap_hwmod.c:1631: warning: 'ret' may be used uninitialized in this function arch/arm/mach-omap2/mux.c: In function 'omap_mux_get_gpio': arch/arm/mach-omap2/mux.c:917: warning: 'm' may be used uninitialized in this function Signed-off-by: Govindraj.R <govindraj.raja@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-05-31arm: omap3: cm-t3517: fix section mismatch warningIgor Grinberg
WARNING: arch/arm/mach-omap2/built-in.o(.text+0x11014): Section mismatch in reference from the function cm_t3517_init_usbh() to the (unknown reference) .init.data:(unknown) The function cm_t3517_init_usbh() references the (unknown reference) __initdata (unknown). This is often because cm_t3517_init_usbh lacks a __initdata annotation or the annotation of (unknown) is wrong. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
2011-05-31OMAP2+: Fix 9 section mismatch(es) warnings from mach-omap2/built-in.oSantosh Shilimkar
The serial*_data should have been marked as __initdata as per it's usage in the board files. Fix the same to remove the section mismatch warnings caused by it. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Silesh C V <silesh@ti.com> [tony@atomide.com: updated with additional fixes from Silesh] Signed-off-by: Tony Lindgren <tony@atomide.com>