summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2
AgeCommit message (Collapse)AuthorFilesLines
2013-04-23ARM: OMAP2+: add dependencies on ARCH_MULTI_V6/V7Arnd Bergmann1-0/+5
CONFIG_ARCH_OMAP2PLUS depends on (ARCH_MULTI_V6 || ARCH_MULTI_V7) as of a0694861 "ARM: OMAP2+: Enable ARCH_MULTIPLATFORM support", but the individual OMAP2/3/4/5 and AM33XX platforms can all be selected independent of what we are building for, which is a bug and prevents us from easily building e.g. an ARMv7-only defconfig. This makes ARCH_OMAP2 depend on ARCH_MULTI_V6 and the others depend on ARCH_MULTI_V7, to ensure we really only build the platforms for the CPUs we have enabled in the global multiplatform configuration step. Cc: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-23ARM: OMAP4: cpuidle: use init/exit common routineDaniel Lezcano1-24/+2
Remove the duplicated code and use the cpuidle common code for initialization. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Reviewed-by: Kevin Hilman <khilman@linaro.org> Tested-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-04-23ARM: OMAP3: cpuidle: use init/exit common routineDaniel Lezcano1-20/+2
Remove the duplicated code and use the cpuidle common code for initialization. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Reviewed-by: Kevin Hilman <khilman@linaro.org> Tested-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-04-23cpuidle: remove en_core_tk_irqen flagDaniel Lezcano2-2/+0
The en_core_tk_irqen flag is set in all the cpuidle driver which means it is not necessary to specify this flag. Remove the flag and the code related to it. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Kevin Hilman <khilman@linaro.org> # for mach-omap2/* Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-04-22ARM: OMAP3: remove cpuidle_wrap_enterDaniel Lezcano1-21/+9
In a previous commit the en_core_tk_irqen flag has been added but we missed the cpuidle_wrap_enter which was doing the job to measure the time for the 'omap3_enter_idle' function. Actually, I don't see any reason to use this wrapper in the code. In the better case, the time computation is not correctly done because of the different operations done in omap3_enter_idle_bm which were not taken into account before the en_core_tk_irqen flag was set. As the time is reflected for the state overridden by the omap3_enter_idle_bm, using the wrapper is pointless now, so removing it. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Kevin Hilman <khilman@linaro.org> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-04-19Merge tag 'omap-for-v3.10/dss-signed' of ↵Olof Johansson16-475/+140
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into late/cleanup From Tony Lindgren: Display related clean-up from Tomi Valkeinen. These were separated from the DSS driver changes to leave out a dependency between the driver and arch/arm related code. * tag 'omap-for-v3.10/dss-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: arm: dss-common: don't use reset_gpio from omap4_panda_dvi_device arm: omap boards: Remove unnecessary platform_enable/disable callbacks for VENC devices arm: omap: dss-common: use picodlp panel's gpio handling arm: omap: board-omap3pandora: use tpo panel's gpio handling arm: omap: board-zoom: use NEC panel's gpio handling arm: omap: board-rx-51: use acx565akm panel's gpio handling arm: omap: board-sdp3430: use sharp panel's gpio handling arm: omap: board-omap3evm: use sharp panel's gpio handling arm: omap: board-overo: use lb035q02 dpi panel's gpio handling arm: omap: board-ldp: use generic dpi panel's gpio handling arm: omap: board-am3517: use generic dpi panel's gpio handling arm: omap: board-cm-t35: use generic dpi panel's gpio handling arm: omap: board-devkit8000: use generic dpi panel's gpio handling arm: omap: board-2430: use generic dpi panel's gpio handling ARM: OMAP: zoom: Use pwm stack for lcd and keyboard backlight OMAPDSS: add fields to panels' platform data OMAPDSS: panels: keep platform data of all panels in a single header Conflicts: arch/arm/mach-omap2/board-2430sdp.c arch/arm/mach-omap2/board-zoom-display.c
2013-04-19Merge branch 'omap/boards' into late/cleanupOlof Johansson5-60/+62
* omap/boards: ARM: OMAP: board-4430sdp: Provide regulator to pwm-backlight ARM: OMAP: zoom: Use pwm stack for lcd and keyboard backlight ARM: OMAP2+: omap2plus_defconfig: Add support for BMP085 pressure sensor omap2+: Remove useless Makefile line omap2+: Remove useless Makefile line ARM: OMAP: RX-51: add missing regulator supply definitions for lis3lv02d ARM: OMAP1: fix omap_udc registration
2013-04-19Merge branch 'omap/fixes-non-critical' into late/cleanupOlof Johansson18-56/+94
* omap/fixes-non-critical: ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS" ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD" ARM: OMAP: dpll: enable bypass clock only when attempting dpll bypass ARM: OMAP2+: powerdomain: avoid testing whether an unsigned char is less than 0 ARM: OMAP2+: hwmod: Remove unused _HWMOD_WAKEUP_ENABLED flag ARM: OMAP2+: am335x: Change the wdt1 func clk src to per_32k clk ARM: OMAP2+: AM33xx: hwmod: Add missing sysc definition to wdt1 entry ARM: OMAP: fix typo "CONFIG_SMC91x_MODULE" ARM: OMAP5: clock: No Freqsel on OMAP5 devices too ARM: OMAP5: Make errata i688 workaround available ARM: OMAP5: Update SAR memory layout for WakeupGen ARM: OMAP5: Update SAR RAM base address ARM: OMAP5: Reuse prm read_inst/write_inst ARM: OMAP5: prm: Allow prm init to succeed ARM: OMAP5: timer: Update the clocksource name as per clock data ARM: OMAP5: Update SOC id detection code for ES2
2013-04-18ARM: cpu hotplug: remove majority of cache flushing from platformsRussell King1-3/+0
Remove the majority of cache flushing calls from the individual platform files. This is now handled by the core code. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2013-04-17Merge tag 'clksrc-cleanup-for-3.10-part2' of ↵Olof Johansson1-4/+1
git://sources.calxeda.com/kernel/linux into late/clksrc This is the 2nd part of ARM timer clean-ups for 3.10. This series has the following changes: - Add sched_clock selection logic to select the highest frequency clock - Use full 64-bit arch timer counter for sched_clock - Convert arch timer, sp804 and integrator-cp timers to CLKSRC_OF and adapt all users to use clocksource_of_init * tag 'clksrc-cleanup-for-3.10-part2' of git://sources.calxeda.com/kernel/linux: devtree: add binding documentation for sp804 ARM: integrator-cp: convert use CLKSRC_OF for timer init ARM: versatile: use OF init for sp804 timer ARM: versatile: add versatile dtbs to dtbs target ARM: vexpress: remove extra timer-sp control register clearing ARM: dts: vexpress: disable CA9 core tile sp804 timer ARM: vexpress: remove sp804 OF init ARM: highbank: use OF init for sp804 timer ARM: timer-sp: convert to use CLKSRC_OF init OF: add empty of_device_is_available for !OF ARM: convert arm/arm64 arch timer to use CLKSRC_OF init ARM: make machine_desc->init_time default to clocksource_of_init ARM: arch_timer: use full 64-bit counter for sched_clock ARM: make sched_clock just call a function pointer ARM: sched_clock: allow changing to higher frequency counter Signed-off-by: Olof Johansson <olof@lixom.net> This has a nasty set of conflicts with the exynos MCT code, which was moved in a separate branch, and then fixed up when merged in, but still conflicts a bit here. It should have been sorted out by this merge though.
2013-04-16Merge tag 'omapdss-for-3.10' of git://gitorious.org/linux-omap-dss2/linux ↵Dave Airlie13-20/+13
into drm-next Omapdss patches for 3.10 merge window The biggest changes are: * DSI video mode: automatic clock and timing calculation * Lots of platform data related panel driver cleanups, to prepare for DT * tag 'omapdss-for-3.10' of git://gitorious.org/linux-omap-dss2/linux: (69 commits) drm/omap: add statics to a few structs drm/omap: Fix and improve crtc and overlay manager correlation drm/omap: Take a fb reference in omap_plane_update() drm/omap: Make fixed resolution panels work drm/omap: fix modeset_init if a panel doesn't satisfy omapdrm requirements OMAPDSS: DPI: widen the pck search when using dss fck OMAPDSS: fix dss_fck clock rate rounding omapdss: use devm_clk_get() OMAPDSS: nec-nl8048 panel: Use dev_pm_ops OMAPDSS: DISPC: Revert to older DISPC Smart Standby mechanism for OMAP5 OMAPDSS: DISPC: Configure doublestride for NV12 when using 2D Tiler buffers omapdss: Features: Fix some parameter ranges omapdss: DISPC: add max pixel clock limits for LCD and TV managers OMAPDSS: DSI: Use devm_clk_get() drivers: video: omap2: dss: Use PTR_RET function OMAPDSS: VENC: remove platform_enable/disable calls OMAPDSS: n8x0 panel: remove use of platform_enable/disable OMAPDSS: n8x0 panel: handle gpio data in panel driver OMAPDSS: picodlp panel: remove platform_enable/disable callbacks OMAPDSS: picodlp panel: handle gpio data in panel driver ...
2013-04-15dmaengine: OMAP: Register SDMA controller with Device Tree DMA driverJon Hunter1-0/+4
If the device-tree blob is present during boot, then register the SDMA controller with the device-tree DMA driver so that we can use device-tree to look-up DMA client information. Signed-off-by: Jon Hunter <jon-hunter@ti.com> Reviewed-by: Felipe Balbi <balbi@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
2013-04-11ARM: convert arm/arm64 arch timer to use CLKSRC_OF initRob Herring1-4/+1
This converts arm and arm64 to use CLKSRC_OF DT based initialization for the arch timer. A new function arch_timer_arch_init is added to allow for arch specific setup. This has a side effect of enabling sched_clock on omap5 and exynos5. There should not be any reason not to use the arch timers for sched_clock. Signed-off-by: Rob Herring <rob.herring@calxeda.com> Cc: Russell King <linux@arm.linux.org.uk> Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Simon Horman <horms@verge.net.au> Cc: Magnus Damm <magnus.damm@gmail.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will.deacon@arm.com> Cc: John Stultz <john.stultz@linaro.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-samsung-soc@vger.kernel.org Cc: linux-omap@vger.kernel.org Cc: linux-sh@vger.kernel.org Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-04-11Merge tag 'omap-for-v3.10/dt-signed-v2' of ↵Olof Johansson4-8/+62
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt2 From Tony Lindgren: Device tree updates for omaps via Benoit Cousson <b-cousson@ti.com>. Note that the branch has dependencies to two other branches: - omap-devel-b-for-3.10 from Paul to get the AM33xx missing hwmod and thus avoid a regression with Santosh's hwmod cleanup including in this DT series [1]. It avoids breaking bisect if this series is merged before Paul's fixes. - omap-for-v3.10/usb branch to avoid nasty merge conflict in omap3.dtsi and omap4.dtsi due to the DTS patches contained in the USB branch because of a screw up by the unnamed person typing this signed tag based on Benoit's comments. [1] https://patchwork.kernel.org/patch/2366291/ * tag 'omap-for-v3.10/dt-signed-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (69 commits) ARM/dts: OMAP3: fix pinctrl-single configuration ARM: dts: Add OMAP3430 SDP NOR flash memory binding ARM: dts: Add NOR flash bindings for OMAP2420 H4 ARM: dts: Update OMAP3430 SDP NAND and ONENAND properties ARM: dts: OMAP2+: Identify GPIO banks that are always powered ARM: OMAP2+: Populate DMTIMER errata when using device-tree ARM: dts: OMAP2+: Update DMTIMER compatibility property ARM: OMAP: Add function to request timer by node ARM: OMAP: Force dmtimer restore if context loss is not detectable ARM: OMAP: Simplify dmtimer context-loss handling ARM: dts: AM33XX: Corrects typo in interrupt field in SPI node ARM: dts: OMAP4460: Add CPU OPP table ARM: dts: omap4-panda: move generic sections to panda-common ARM: dts: OMAP443x: Add CPU OPP table ARM: dts: OMAP3: use twl4030 vdd1 regulator for CPU ARM: dts: OMAP36xx: Add CPU OPP table ARM: dts: OMAP34xx/35xx: Add CPU OPP table Documentation: dt: gpio-omap: Move interrupt-controller from #interrupt-cells description ARM: OMAP2+: hwmod: Don't call _init_mpu_rt_base if no sysc ARM: OMAP2+: hwmod: extract module address space from DT blob ... Signed-off-by: Olof Johansson <olof@lixom.net>
2013-04-11Merge branch 'omap/usb' into next/dt2Olof Johansson18-160/+371
Merging in dependencies for the omap/dt branch. * omap/usb: (21 commits) ARM: dts: omap3-beagle: Add USB Host support ARM: dts: OMAP3: Add HS USB Host IP nodes ARM: dts: OMAP4: Add HS USB Host IP nodes ARM: OMAP: zoom: Adapt to ehci-omap changes ARM: OMAP3: overo: Adapt to ehci-omap changes ARM: OMAP3: omap3touchbook: Adapt to ehci-omap changes ARM: OMAP3: omap3stalker: Adapt to ehci-omap changes ARM: OMAP3: omap3pandora: Adapt to ehci-omap changes ARM: OMAP3: omap3evm: Adapt to ehci-omap changes ARM: OMAP3: igep0020: Adapt to ehci-omap changes ARM: OMAP: devkit8000: Adapt to ehci-omap changes ARM: OMAP3: cm-t3517: Adapt to ehci-omap changes ARM: OMAP3: cm-t35: Adapt to ehci-omap changes ARM: OMAP: AM3517evm: Adapt to ehci-omap changes ARM: OMAP: AM3517crane: Adapt to ehci-omap changes ARM: OMAP3: 3630SDP: Adapt to ehci-omap changes ARM: OMAP3: 3430SDP: Adapt to ehci-omap changes ARM: OMAP3: Beagle: Adapt to ehci-omap changes ARM: OMAP2+: omap4panda: Adapt to ehci-omap changes ARM: OMAP2+: omap-usb-host: Add usbhs_init_phys() ... Signed-off-by: Olof Johansson <olof@lixom.net>
2013-04-11Merge branch 'omap/fixes-non-critical' into next/dt2Olof Johansson18-56/+94
Merging in dependencies for the omap/dt branch. * omap/fixes-non-critical: ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS" ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD" ARM: OMAP: dpll: enable bypass clock only when attempting dpll bypass ARM: OMAP2+: powerdomain: avoid testing whether an unsigned char is less than 0 ARM: OMAP2+: hwmod: Remove unused _HWMOD_WAKEUP_ENABLED flag ARM: OMAP2+: am335x: Change the wdt1 func clk src to per_32k clk ARM: OMAP2+: AM33xx: hwmod: Add missing sysc definition to wdt1 entry ARM: OMAP: fix typo "CONFIG_SMC91x_MODULE" ARM: OMAP5: clock: No Freqsel on OMAP5 devices too ARM: OMAP5: Make errata i688 workaround available ARM: OMAP5: Update SAR memory layout for WakeupGen ARM: OMAP5: Update SAR RAM base address ARM: OMAP5: Reuse prm read_inst/write_inst ARM: OMAP5: prm: Allow prm init to succeed ARM: OMAP5: timer: Update the clocksource name as per clock data ARM: OMAP5: Update SOC id detection code for ES2 Signed-off-by: Olof Johansson <olof@lixom.net>
2013-04-10ARM: OMAP4: hwmod data: make 'ocp2scp_usb_phy_phy_48m" as the main clockKishon Vijay Abraham I1-7/+11
Commit 92702df3570e ("ARM: OMAP4: PM: fix PM regression introduced by recent clock cleanup") makes the 'ocp2scp_usb_phy_phy_48m' as optional functional clock causing regression in MUSB. But this 48MHz clock is a mandatory clock for usb phy attached to ocp2scp and hence made as the main clock for ocp2scp. Cc: Keerthy <j-keerthy@ti.com> Cc: Benoît Cousson <b-cousson@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> [paul@pwsan.com: add comment to the hwmod data to try to prevent any future mistakes here] Signed-off-by: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-10cpufreq: OMAP: instantiate omap-cpufreq as a platform_driverNishanth Menon1-0/+9
As multi-platform build is being adopted by more and more ARM platforms, initcall function should be used very carefully. For example, when CONFIG_ARM_OMAP2PLUS_CPUFREQ is built in the kernel, omap_cpufreq_init() will be called on all the platforms to initialize omap-cpufreq driver. Further, on OMAP, we now use Soc generic cpufreq-cpu0 driver using device tree entries. To allow cpufreq-cpu0 and omap-cpufreq drivers to co-exist for OMAP in a single image, we need to ensure the following: 1. With device tree boot, we use cpufreq-cpu0 2. With non device tree boot, we use omap-cpufreq In the case of (1), we will have cpu OPPs and regulator registered as part of the device tree nodes, to ensure that omap-cpufreq and cpufreq-cpu0 don't conflict in managing the frequency of the same CPU, we should not permit omap-cpufreq to be probed. In the case of (2), we will not have the cpufreq-cpu0 device, hence only omap-cpufreq will be active. To eliminate this undesired these effects, we change omap-cpufreq driver to have it instantiated as a platform_driver and register "omap-cpufreq" device only when booted without device tree nodes on OMAP platforms. This allows the following: a) Will only run on platforms that create the platform_device "omap-cpufreq". b) Since the platform_device is registered only when device tree nodes are *not* populated, omap-cpufreq driver does not conflict with the usage of cpufreq-cpu0 driver which is used on OMAP platforms when device tree nodes are present. Inspired by commit 5553f9e26f6f49a93ba732fd222eac6973a4cf35 (cpufreq: instantiate cpufreq-cpu0 as a platform_driver) [robherring2@gmail.com: reported conflict of omap-cpufreq vs other driver in an non-device tree supported boot] Reported-by: Rob Herring <robherring2@gmail.com> Signed-off-by: Nishanth Menon <nm@ti.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2013-04-09ARM: Push selects for TWD/SCU into machine entriesStephen Boyd1-0/+2
The TWD and SCU configs are selected by default as long as MSM_SCORPIONMP is false and/or MCT is false. Implementing the logic this way certainly saves lines in the Kconfig but it precludes those machines which select MSM_SCORPIONMP or MCT from participating in the single zImage effort because when those machines are combined with other SMP capable machines the TWD and SCU are no longer selected by default. Push the select out to the machine entries so that we can compile these machines together and still select the appropriate configs. Cc: Barry Song <baohua.song@csr.com> Acked-by: David Brown <davidb@codeaurora.org> Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Linus Walleij <linus.walleij@linaro.org> Acked-by: Pawel Moll <pawel.moll@arm.com> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Russell King <linux@arm.linux.org.uk> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Sascha Hauer <kernel@pengutronix.de> Cc: Shiraz Hashim <shiraz.hashim@st.com> Acked-by: Simon Horman <horms@verge.net.au> Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Cc: Tony Lindgren <tony@atomide.com> Acked-by: Viresh Kumar <viresh.linux@gmail.com> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-09ARM: OMAP4+: CPUidle: Consolidate idle driver for OMAP5 supportSantosh Shilimkar1-15/+16
The OMAP5 idle driver can re-use most of OMAP4 CPUidle driver implementation. Also the next derivative SOCs are going to re-use the MPUSS so, same driver with minor updates can be re-used. Prepare the code so that its easier to add CPUidle support for OMAP5 devices. Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09ARM: OMAP4+: CPUidle: Deprecate use of omap4_mpuss_read_prev_context_state()Santosh Shilimkar3-20/+2
Current OMAP4 CPUIdle driver is using omap4_mpuss_read_prev_context_state() to check whether the MPU cluster lost context or not before calling cpu_cluster_pm_exit(). This was initially done an optimization for corner cases, where if the cluster low power entry fails for some reason, the cluster context restore gets skipped. However, since reading the previous context is expensive (involving slow accesses to the PRCM), it's better to avoid it and simply check the target cluster state instead. Moving forward, OMAP CPUidle drivers needs to be moved to drivers/idle/* once the PRM/CM code gets moved to drivers. This patch also reduces one dependency with platform code for idle driver movement. Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> [khilman@linaro.org: minor changelog edits] Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09ARM: OMAP4: CPUidle: Make C-state description field more preciseSantosh Shilimkar1-3/+3
It is useful to know the CPU power state along with MPUSS power state in a supported C-state. Since the data is available via sysfs, one can avoid scrolling the source code for precise construction of C-state. Reported-by: Nishanth Menon <nm@ti.com> Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09ARM: OMAP: CPUidle: Unregister drivere on device registration failureSantosh Shilimkar2-2/+10
If the CPUidle device registration fails for some reason, we should unregister the driver on error path. Fix the code accordingly. Also when at it, check of the driver registration failure too. Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09ARM: OMAP4: CPUidle: Avoid double idle driver registrationSantosh Shilimkar1-2/+2
OMAP4 CPUidle driver registration call is under a loop which leads to calling cpuidle_register_driver twice which is not intended. Fix it by moving the driver registration outside the loop. Reported-by: Nishanth Menon <nm@ti.com> Acked-by: Nishanth Menon <nm@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09ARM: omap3: cpuidle: enable time keepingDaniel Lezcano1-2/+3
The TIME_VALID flag is specified for the different states but the time residency computation is not done, no tk flag, no time computation in the idle function. Set the en_core_tk_irqen flag to activate it. Cc: stable@vger.kernel.org Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-04-09Merge tag 'omap-for-v3.10/soc-signed' of ↵Arnd Bergmann10-37/+177
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc From Tony Lindgren <tony@atomide.com>: Changes needed for enabling SOC_BUS for the SoC revision information. Also enable few HW errata workarounds for omap4. * tag 'omap-for-v3.10/soc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (236 commits) ARM: OMAP4: Enable fix for Cortex-A9 erratas ARM: OMAP2+: Export SoC information to userspace ARM: OMAP2+: SoC name and revision unification ARM: OMAP2+: Move common part of late init into common function Includes an update to Linux 3.9-rc6 Conflicts: arch/arm/mach-omap2/cclock44xx_data.c Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-09Merge tag 'v3.9-rc3' into next/multiplatformArnd Bergmann6-14/+12
Linux 3.9-rc3 Conflicts: arch/arm/Kconfig arch/arm/mach-spear/spear3xx.c arch/arm/plat-spear/Kconfig This is a dependency for ux500/multiplatform Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-09Merge tag 'omap-for-v3.10/fixes-pm-signed' of ↵Arnd Bergmann2-2/+11
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup From Tony Lindgren <tony@atomide.com>: Non-critical PM fix via Kevin Hilman <khilman@linaro.org>: OMAP PM fixes for v3.10 Note that this has a dependency to omap-for-v3.10/cleanup-v2-signed. * tag 'omap-for-v3.10/fixes-pm-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP4+: PM: Restore CPU power state to ON with clockdomain force wakeup method Signed-off-by: Arnd Bergmann <arnd@arndb.de<
2013-04-08ARM: OMAP4: Enable fix for Cortex-A9 erratasSricharan R1-0/+2
This enables the fixes for the below erratas applicable for OMAP4 Socs. 754322: Faulty MMU translations following ASID switch 775420: A data cache maintenance operation which aborts, followed by an ISB, without any DSB in-between, might lead to deadlock Signed-off-by: Sricharan R <r.sricharan@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08ARM: OMAP2+: Export SoC information to userspaceRuslan Bilovol4-0/+75
In some situations it is useful for userspace to know some SoC-specific information. For example, this may be used for deciding what kernel module to use or how to better configure some settings etc. This patch exports OMAP SoC information to userspace using existing in Linux kernel SoC infrastructure. This information can be read under /sys/devices/socX directory Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com> [tony@atomide.com: updated for multiplatform changes] Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08ARM: OMAP2+: SoC name and revision unificationRuslan Bilovol1-8/+22
This is a long story where for each new generation of OMAP we used different approaches for creating strings for SoCs names and revisions that this patch fixes. It makes future exporting of this information to SoC infrastructure easier. Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08ARM: OMAP2+: Move common part of late init into common functionRuslan Bilovol1-18/+15
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-09ARM: dts: OMAP2+: Update DMTIMER compatibility propertyJon Hunter1-1/+6
Update the DMTIMER compatibility property to reflect the register level compatibilty between devices and update the various OMAP/AM timer bindings with the appropriate compatibility string. By doing this we can add platform specific data applicable to specific timer versions to the driver. For example, errata flags can be populated for the timer versions that are impacted. Signed-off-by: Jon Hunter <jon-hunter@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Benoit Cousson <benoit.cousson@linaro.org>
2013-04-09ARM: OMAP2+: hwmod: Don't call _init_mpu_rt_base if no syscSantosh Shilimkar1-1/+2
OMAP hwmod layer does the reset of the IPs in early code so that we have SOC in sane state. To do the soft-reset, it needs to ioremap() the IP address space to be able to write to sysconfig registers. But there are few hwmod which doesn't have sysconfig registers and hence no need to ioremap() them in early init code. Prevent calling the _init_mpu_rt_base() conditional based on sysc availability. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Benoit Cousson <benoit.cousson@linaro.org>
2013-04-09ARM: OMAP2+: hwmod: extract module address space from DT blobSantosh Shilimkar1-3/+42
Patch adds the code for extracting the module ocp address space from device tree blob in case the hwmod address space look up fails. The idea is to remove the address space data from hwmod and extract it from DT blob. Signed-off-by: Rajendra Nayak <rnayak@ti.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Benoit Cousson <benoit.cousson@linaro.org>
2013-04-09ARM: dts: Add minimal DT support for DevKit8000Anil Kumar1-0/+1
DevKit8000 is a beagle board clone from Timll, sold by armkits.com. The DevKit8000 has RS232 serial port, LCD, DVI-D, S-Video, Ethernet, SD/MMC, keyboard, camera, SPI, I2C, USB and JTAG interface. Add the basic DT support for devkit8000. It includes: - twl4030 (PMIC) - MMC1 - I2C1 - leds Signed-off-by: Anil Kumar <anilk4.v@gmail.com> Tested-by: Thomas Weber <thomas@tomweber.eu> Signed-off-by: Benoit Cousson <benoit.cousson@linaro.org>
2013-04-09ARM: OMAP2+: Prepare for device-tree PMU supportJon Hunter1-3/+11
If device-tree is present, then do not create the PMU device from within the OMAP specific PMU code. This is required to allow device-tree to create the PMU device from the PMU device-tree node. PMU is not currently supported for OMAP4430 (due to a dependency on having a cross-trigger interface driver) and so ensure that this indicated on boot with or without device-tree. Signed-off-by: Jon Hunter <jon-hunter@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Benoit Cousson <benoit.cousson@linaro.org>
2013-04-09Merge tag 'omap-devel-b-for-3.10' of ↵Benoit Cousson6-28/+42
git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into for_3.10/dts_merged
2013-04-08ARM: OMAP: board-4430sdp: Provide regulator to pwm-backlightAndrew Chew1-0/+6
The pwm-backlight driver now takes a mandatory regulator that is gotten during driver probe. Initialize a dummy regulator to satisfy this requirement. Signed-off-by: Andrew Chew <achew@nvidia.com> Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com> [tony@atomide.com: updated fixed regulator id to avoid errors] Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08ARM: OMAP: zoom: Use pwm stack for lcd and keyboard backlightPeter Ujfalusi2-57/+52
Use pwm_leds driver for the keyboard light and pwm-backlight for the lcd backlight control (instead of implementing the PWM driver part in the board file). Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08omap2+: Remove useless Makefile linePaul Bolle1-2/+0
Merge commit 952414505f55afe5cd6dc004765076aa22b3ed7e ("Merge branch 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc") added references to CONFIG_MACH_PCM049 and board-omap4pcm049.o to this Makefile. But there's no Kconfig symbol MACH_PCM049 and there's no file board-omap4pcm049.c. This line can safely be removed. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08omap2+: Remove useless Makefile linePaul Bolle1-1/+0
Commit f41caddbe73f52a42f529d668ce47b4d693fd2c0 ("omap2+: Use Kconfig symbol in Makefile instead of obj-y") reorganized this Makefile. But, for some reason, it also added references to CONFIG_MACH_ENCORE and board-omap3encore.o. But there's no Kconfig symbol MACH_ENCORE and there's no file board-omap3encore.c. This line can safely be removed. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08ARM: OMAP: RX-51: add missing regulator supply definitions for lis3lv02dAaro Koskinen1-0/+4
Add missing regulator definitions for lis3lv02d accelerometer. Fixes the following probe issue: [ 57.737518] lis3lv02d_i2c 3-001d: Failed to get supply 'Vdd': -517 [ 57.747100] i2c 3-001d: Driver lis3lv02d_i2c requests probe deferral Reported-by: Pali Rohár <pali.rohar@gmail.com> Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-04-08Merge tag 'omap-for-v3.10/gpmc-signed' of ↵Arnd Bergmann6-281/+558
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/drivers From Tony Lindgren <tony@atomide.com>: GPMC updates from Jon Hunter <jon-hunter@ti.com>: Adds GPMC (General Purpose Memory Controller) DT support for NOR flash and Ethernet and includes various GPMC cleans-up and fixes. This series is dependent on commit 7185684 (ARM: OMAP: use consistent error checking) from RMK's clean-up branch and commit 31d9adc (ARM: OMAP2+: Fix broken gpmc support). * tag 'omap-for-v3.10/gpmc-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (29 commits) ARM: OMAP2+: Add GPMC DT support for Ethernet child nodes ARM: OMAP2+: rename gpmc_probe_nor_child() to gpmc_probe_generic_child() ARM: OMAP2+: return -ENODEV if GPMC child device creation fails ARM: OMAP2+: Allow GPMC probe to complete even if CS mapping fails ARM: OMAP2+: Remove unnecesssary GPMC definitions and variable ARM: OMAP2+: Detect incorrectly aligned GPMC base address ARM: OMAP2+: Convert ONENAND to retrieve GPMC settings from DT ARM: OMAP2+: Convert NAND to retrieve GPMC settings from DT ARM: OMAP2+: Add device-tree support for NOR flash ARM: OMAP2+: Add additional GPMC timing parameters ARM: OMAP2+: Add function to read GPMC settings from device-tree ARM: OMAP2+: Don't configure of chip-select options in gpmc_cs_configure() ARM: OMAP2+: Convert TUSB to use gpmc_cs_program_settings() ARM: OMAP2+: Convert SMC91x to use gpmc_cs_program_settings() ARM: OMAP2+: Convert NAND to use gpmc_cs_program_settings() ARM: OMAP2+: Convert ONENAND to use gpmc_cs_program_settings() ARM: OMAP2+: Add function for configuring GPMC settings ARM: OMAP2+: Add structure for storing GPMC settings ARM: OMAP2+: Add variable to store number of GPMC waitpins ARM: OMAP2+: Simplify code configuring ONENAND devices ... Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-08Merge tag 'omap-for-v3.10/timer-signed' of ↵Arnd Bergmann27-140/+176
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/drivers From Tony Lindgren <tony@atomide.com>: Clean-up for omap2+ timers from Jon Hunter <jon-hunter@ti.com>: This series consists mainly of clean-ups for clockevents and clocksource timers on OMAP2+ devices. The most significant change in functionality comes from the 5th patch which is changing the selection of the clocksource timer for OMAP3 and AM335x devices when gptimers are used for clocksource. Note that this series depends on 7185684 (ARM: OMAP: use consistent error checking) in RMK's tree and 960cba6 (ARM: OMAP5: timer: Update the clocksource name as per clock data) in omap-for-v3.10/fixes-non-critical. So this branch is based on a merge of 7185684 and omap-for-v3.10/fixes-non-critical to avoid non-trivial merge conflicts. * tag 'omap-for-v3.10/timer-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP4+: Fix sparse warning in system timers ARM: OMAP2+: Store ID of system timers in timer structure ARM: OMAP3: Update clocksource timer selection ARM: OMAP2+: Simplify system timers definitions ARM: OMAP2+: Simplify system timer clock definitions ARM: OMAP2+: Remove hard-coded test on timer ID ARM: OMAP2+: Display correct system timer name ARM: OMAP2+: fix typo "CONFIG_BRIDGE_DVFS" ARM: OMAP1: remove "config MACH_OMAP_HTCWIZARD" ARM: OMAP: dpll: enable bypass clock only when attempting dpll bypass ARM: OMAP2+: powerdomain: avoid testing whether an unsigned char is less than 0 ARM: OMAP2+: hwmod: Remove unused _HWMOD_WAKEUP_ENABLED flag ARM: OMAP2+: am335x: Change the wdt1 func clk src to per_32k clk ARM: OMAP2+: AM33xx: hwmod: Add missing sysc definition to wdt1 entry Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-08Merge tag 'omap-for-v3.10/usb-signed' of ↵Arnd Bergmann18-160/+371
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/drivers From Tony Lindgren <tony@atomide.com>: EHCI platform data related changes for v3.10 merge window. These are needed for the USB PHY support, and are based on commit 1f0972f5 from Felipe Balbi's tree as agreed on the mailing lists. * tag 'omap-for-v3.10/usb-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (21 commits) ARM: dts: omap3-beagle: Add USB Host support ARM: dts: OMAP3: Add HS USB Host IP nodes ARM: dts: OMAP4: Add HS USB Host IP nodes ARM: OMAP: zoom: Adapt to ehci-omap changes ARM: OMAP3: overo: Adapt to ehci-omap changes ARM: OMAP3: omap3touchbook: Adapt to ehci-omap changes ARM: OMAP3: omap3stalker: Adapt to ehci-omap changes ARM: OMAP3: omap3pandora: Adapt to ehci-omap changes ARM: OMAP3: omap3evm: Adapt to ehci-omap changes ARM: OMAP3: igep0020: Adapt to ehci-omap changes ARM: OMAP: devkit8000: Adapt to ehci-omap changes ARM: OMAP3: cm-t3517: Adapt to ehci-omap changes ARM: OMAP3: cm-t35: Adapt to ehci-omap changes ARM: OMAP: AM3517evm: Adapt to ehci-omap changes ARM: OMAP: AM3517crane: Adapt to ehci-omap changes ARM: OMAP3: 3630SDP: Adapt to ehci-omap changes ARM: OMAP3: 3430SDP: Adapt to ehci-omap changes ARM: OMAP3: Beagle: Adapt to ehci-omap changes ARM: OMAP2+: omap4panda: Adapt to ehci-omap changes ARM: OMAP2+: omap-usb-host: Add usbhs_init_phys() ... Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-08Merge branch 'zynq/clksrc/cleanup' of git://git.xilinx.com/linux-xlnx into ↵Arnd Bergmann1-1/+1
next/drivers From Michal Simek <michal.simek@xilinx.com>: * 'zynq/clksrc/cleanup' of git://git.xilinx.com/linux-xlnx: arm: zynq: Move timer to generic location arm: zynq: Do not use xilinx specific function names arm: zynq: Move timer to clocksource interface arm: zynq: Use standard timer binding Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-08Merge tag 'omap-for-v3.10/cleanup-v2-signed' of ↵Arnd Bergmann17-1150/+1059
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup From Tony Lindgren <tony@atomide.com>: Clean up related changes for v3.10 merge window. Mostly clock and PM related with removal of now unused DMA channel definitions. The clock change to use SoC specific lists will make it a little bit easier to add support for new SoCs variants without having to patch all over the place. * tag 'omap-for-v3.10/cleanup-v2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP4: Fix the init code to have OMAP4460 errata available in DT build ARM: OMAP4: PM: Now remove L4 per clockdomain static depedency with MPU ARM: OMAP4: PM: Remove L4 wakeup depedency with MPU since errata fix exist now ARM: OMAP4+: Move the CPU wakeup prepare code under smp_prepare_cpus() ARM: OMAP4+: Remove out of placed smp_wmb() in secondary wakeup code ARM: OMAP4+: Remove un-necessary cacheflush in secondary CPU boot path ARM: OMAP4+: Remove the un-necessary cache flush from hotplug code ARM: OMAP2+: PM: Remove bogus fiq_[enable/disable] tuple ARM: OMAP4+: Use common scratchpad SAR RAM offsets for all architectures ARM: OMAP2+: Remove unused DMA channel definitions ARM: OMAP1: Remove unused DMA channel definitions ARM: OMAP2+: clock data: Remove CK_* flags Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2013-04-08arm: Use generic idle loopThomas Gleixner2-6/+6
Use the generic idle loop and replace enable/disable_hlt with the respective core functions. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Paul McKenney <paulmck@linux.vnet.ibm.com> Cc: Peter Zijlstra <peterz@infradead.org> Reviewed-by: Cc: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Cc: Magnus Damm <magnus.damm@gmail.com> Cc: Russell King <linux@arm.linux.org.uk> Tested-by: Kevin Hilman <khilman@linaro.org> # OMAP Link: http://lkml.kernel.org/r/20130321215233.826238797@linutronix.de
2013-04-08Merge branch 'pm-cpuidle-next' into linux-nextRafael J. Wysocki1-21/+4
* pm-cpuidle-next: cpuidle: imx6: remove timer broadcast initialization cpuidle: OMAP4: remove timer broadcast initialization cpuidle: ux500: remove timer broadcast initialization cpuidle: initialize the broadcast timer framework timer: move enum definition out of ifdef section cpuidle: kirkwood: fix coccicheck warnings cpuidle / kirkwood: remove redundant Kconfig option cpuidle / ux500 : use CPUIDLE_FLAG_TIMER_STOP flag cpuidle / imx6 : use CPUIDLE_FLAG_TIMER_STOP flag cpuidle / omap4 : use CPUIDLE_FLAG_TIMER_STOP flag cpuidle : handle clockevent notify from the cpuidle framework