summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-06-19ARM: SAMSUNG: Include most of mach/ headers conditionallyTomasz Figa
Since it is illegal to include mach/ headers from source files outside of respective mach-* directory and DT-only Samsung platforms might not have all of them anyway, this patches makes inclusion of them conditional, based on CONFIG_SAMSUNG_ATAGS. Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19ARM: EXYNOS: Decouple ARCH_EXYNOS from PLAT_S5PTomasz Figa
After removing support for ATAGS based boot on Exynos, there is not much that can be shared between Exynos and other S5P platforms. This patch makes Exynos a standalone Samsung platform, not using PLAT_S5P. Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19USB: Check for ARCH_EXYNOS separatelyTomasz Figa
ARCH_EXYNOS is going to be excluded from PLAT_S5P, so it must be checked separately in Exynos-related Kconfig entries. Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19platform: Check for ARCH_EXYNOS separatelyTomasz Figa
ARCH_EXYNOS is going to be excluded from PLAT_S5P, so it must be checked separately in Exynos-related Kconfig entries. Cc: linux-media@vger.kernel.org Cc: Mauro Carvalho Chehab <mchehab@redhat.com> Cc: Sylwester Nawrocki <s.nawrocki@samsung.com> Cc: Kamil Debski <k.debski@samsung.com> Cc: Tomasz Stanislawski <t.stanislaws@samsung.com> Cc: Jeongtae Park <jtp.park@samsung.com> Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19ARM: SAMSUNG: Compile legacy IRQ and GPIO PM code only with ATAGS supportTomasz Figa
This patch adds new Kconfig symbols, SAMSUNG_PM_GPIO and S5P_IRQ_PM that get enabled when GPIO_SAMSUNG, PM and S5P_PM are enabled, but only if SAMSUNG_ATAGS is selected. Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19ARM: EXYNOS: Provide compatibility stubs for PM code in pm-core.h headerTomasz Figa
This patch adds several compatibility definitions that are not relevant for Exynos, but are required by Samsung PM core. Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19ARM: SAMSUNG: Introduce GPIO_SAMSUNG Kconfig entryTomasz Figa
This patch adds Kconfig entry that selects whether legacy Samsung GPIO driver should be built or not. For platforms that support only DT based boot, the new pinctrl driver is used and so the old one is not needed. Cc: Grant Likely <grant.likely@linaro.org> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-19ARM: exynos_defconfig: Enable GPIO buttons and RTC driversTushar Behera
Many of the boards use GPIO-mapped buttons for generic input. For Arndale board, these buttons also serve as wakeup source. And the issues reported in commit 522ccdb6fd0e ("ARM: dts: Disable the RTC by default on exynos5") are no longer reproduced on EXYNOS5250 based systems. Hence it would be better to re-enable RTC support for EXYNOS5250. Signed-off-by: Tushar Behera <tushar.behera@linaro.org> [mturquette@linaro.org: ack on RTC enabling] Acked-by: Mike Turquette <mturquette@linaro.org> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2013-06-18ARM: OMAP3+: am33xx id: Add new am33xx specific function to check dev_featureVaibhav Hiremath
Layout of DEV_FEATURE register (offset = 0x604) is different between TI81xx and AM33xx device, so create separate function which will check for features available on specific AM33xx SoC and set the flags accordingly. Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com> Reviewed-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-06-18ARM: edma: Convert to devm_* apiLad, Prabhakar
Use devm_ioremap_resource instead of reques_mem_region()/ioremap(), devm_request_irq() instead of request_irq() and kzalloc() calls to devm_kzalloc(). This ensures more consistent error values and simplifies error paths. Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> [nsekhar@ti.com: add missing err.h include] Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2013-06-18ARM: OMAP: TI816X: add powerdomains for TI816xAida Mynzhasova
This patch adds required structures for powerdomain initialization on the ti816x. It is impossible to use omap3430 structures in order to initialize powerdomains on ti816x, because there are big differences between PRCM module base address offsets on these CPUs. Signed-off-by: Aida Mynzhasova <aida.mynzhasova@skitlab.ru> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-06-18ARM: OMAP2: TI81XX: id: Add cpu id for TI816x ES2.0 and ES2.1Aida Mynzhasova
Currently omap3xxx_check_revision() detects ES1.0 and ES1.1 only, this patch extends it by adding ES2.0 and ES2.1 versions support. Signed-off-by: Aida Mynzhasova <aida.mynzhasova@skitlab.ru> Signed-off-by: Tony Lindgren <tony@atomide.com>
2013-06-18Merge tag 'omap-pm-v3.11/voltdm' of ↵Tony Lindgren
git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into omap-for-v3.11/pm-voltdomain OMAP: PM: remove requirement for voltage domain data; remove dummy data
2013-06-18Merge tag 'keystone-soc-for-arm-soc' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc From Santosh Shilimkar: SOC support for Keystone II devices: - Minimal machine and device-tree support with arch_timers and console UART - Reboot hook using PLL reset - Low level debug support using UART - SMP boot support * tag 'keystone-soc-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: keystone: Enable SMP support on Keystone machines ARM: keystone: Add minimal TI Keystone platform support ARM: dts: keystone: Add minimal Keystone SOC device tree data Signed-off-by: Olof Johansson <olof@lixom.net>
2013-06-18ARM: edma: remove unused transfer controller handlersMatt Porter
Fix build on OMAP, the irqs are undefined on AM33xx. These error interrupt handlers were hardcoded as disabled so since they are unused code, simply remove them. Signed-off-by: Matt Porter <mporter@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2013-06-18ARM: davinci: move private EDMA API to arm/commonMatt Porter
Move mach-davinci/dma.c to common/edma.c so it can be used by OMAP (specifically AM33xx) as well. Signed-off-by: Matt Porter <mporter@ti.com> Acked-by: Chris Ball <cjb@laptop.org> # davinci_mmc.c Acked-by: Mark Brown <broonie@linaro.org> Acked-by: Olof Johansson <olof@lixom.net> [nsekhar@ti.com: dropped davinci sffsdr changes] Signed-off-by: Sekhar Nori <nsekhar@ti.com>
2013-06-17ARM: keystone: Enable SMP support on Keystone machinesSantosh Shilimkar
Add basic SMP support for Keystone machines. This does not include support for CPU hotplug for now. Cc: Arnd Bergmann <arnd@arndb.de> Cc: arm@kernel.org Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-06-17ARM: keystone: Add minimal TI Keystone platform supportSantosh Shilimkar
Texas Instruments Keystone family of multi-core devices are based on ARM Cortex A15. Patch adds basic definitions for a new Keystone sub-architecture in ARM. The TCI66xxK2H Communications Infrastructure Keystone SoCs are member of the C66x family based on TI's new KeyStone 2 multi-core SoC Architecture designed specifically for high performance wireless and networking infrastructure applications. The SOCs contains many subsystems like Cortex A15 ARM CorePacs, C66XX DSP CorePacs, MSMC memory controller, Tera Net bus, IP Network, Navigator, Hyperlink, 1G/10G Ethernet, Radio layers and queue based communication systems. Cc: Arnd Bergmann <arnd@arndb.de> Cc: arm@kernel.org Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-06-17ARM: dts: keystone: Add minimal Keystone SOC device tree dataSantosh Shilimkar
Add minimal device tree data for Keystone2 based SOCs. Patch contains mainly ARM related SOC data and nothing about EVM specific yet. Cc: Grant Likely <grant.likely@linaro.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: arm@kernel.org Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
2013-06-17ARM: AM33xx: Remove the unused voltagedomain dataRajendra Nayak
Now that there is a way to tell the powerdomain core about missing voltage domain auto-scaling control in SoCs', get rid of the dummy voltage domain data populated for AM33xx devices. Acked-by: Nishanth Menon <nm@ti.com> Acked-by: Vaibhav Hiremath <hvaibhav@ti.com> Signed-off-by: Rajendra Nayak <rnayak@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Afzal Mohammed <afzal@ti.com> # am335x evm Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-06-17ARM: OMAP2+: Powerdomain: Remove the need to always have a voltdm associated ↵Rajendra Nayak
to a pwrdm The powerdomain framework currently expects all powerdomains to be associated with a corresponding voltagedomain. For some SoCs' (like the already existing AM33xx family, or for the upcoming AM437x and DRA7 SoCs') which do not have a Voltage controller/Voltage Processor (neither the SR I2C bus to communicate with the PMIC) there is no need for a Powerdomain to have a voltage domain association since there is no auto-scaling of voltages possible using the voltage FSM. Extend the arch operations to add an api which the powerdomain core can then use to identify if a voltdm lookup and association for a powerdomain is really needed. Acked-by: Nishanth Menon <nm@ti.com> Acked-by: Vaibhav Hiremath <hvaibhav@ti.com> Signed-off-by: Rajendra Nayak <rnayak@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Afzal Mohammed <afzal@ti.com> # am335x evm Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-06-17ARM: u300: switch to using syscon regmap for boardLinus Walleij
This switches the code using a local remapping of the system controller to enable the U300 board to be self-powered over to making the U300-specific syscon compatible with the MFD generic syscon driver, selecting the generic syscon driver, and augmenting the board power code to pick the regmap and manipulate the syscon from the regmap side of things. Cc: Dong Aisheng <dong.aisheng@linaro.org> Suggested-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: Update MMC configs for u300 defconfigUlf Hansson
Enable MMC_UNSAFE_RESUME to be accomplish a proper suspend/resume cycle for SD/SDIO/(e)MMC. ARMMMCI host driver supports clock gating through runtime PM, thus MMC_CLKGATE is not needed. Moreover ARMMMCI can do scatter-gather which means we can explicity disable MMC_BLOCK_BOUNCE, since it's default enabled, to skip unnecessary bounce buffer copying. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17spi: pl022: use DMA by default when probing from DTLinus Walleij
In the past we controlled the selection of DMA for a certain host by a boolean switch in the platform data. Currently there is no way to enable DMA on a PL022 probed from the device tree. Let's default to trying to obtain DMA channels in the DT case, and then we can always fail (and thus fall back to PIO mode). Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17pinctrl: get rid of all platform data for coh901Linus Walleij
This deletes the dependency on any platform data for the COH901 pin controller. There is only one user in the kernel, and if we at some point want to support more variants, they shall provide their variant info through the device tree. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: convert MMC/SD clock to device treeLinus Walleij
This converts the last of the U300 clocks to being probed from the device tree. Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: move the gated system controller clocks to DTLinus Walleij
This moves the slow, fast, AHB bridge and "rest" clocks on the U300 system controller over to registration from the device tree. Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17i2c: stu300: do not request a specific clock nameLinus Walleij
We have used the default clock associated with the block for a long time, only heuristics in the clock system has made this work anyway. This needs to be done away with as we start probing this driver and its clocks exclusively from the device tree. Acked-by: Wolfram Sang <wsa@the-dreams.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17clk: move the U300 fixed and fixed-factor to DTLinus Walleij
This converts the fixed and fixed-factor clocks in the U300 platform to register themselves from the device tree. Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: remove register definition fileLinus Walleij
Now that the core file is the only one actually using any of the base addresses, we can delete that header and move the base address definitions into the one and only core file. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: add syscon nodeLinus Walleij
This adds a device tree node for the U300 system controller and remaps this dynamically instead of using hard-coded virtual addresses. The board power set-up code is altered to fetch a reference to the syscon using ampersand <&syscon> notation. This way of passing a pointer to the syscon will also be used by the clocks. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300 use module_spi_driver to register driverPeter Huewe
Removing some boilerplate by using module_spi_driver instead of calling register and unregister in the otherwise empty init/exit functions. Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: delete remnant machine headersLinus Walleij
Two files remain in <mach/*> for U300: timex.h and uncompress.h. The former is done away with by using defaults, the latter is unused in multiplatform. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: convert to multiplatformLinus Walleij
Now that we removed our dependency on <mach/*> the U300 can be converted to mutliplatform. Remove the invalid restriction that U300 would not support AUTO_ZRELADDR (it does) and update the defconfig in the process. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: localize <mach/u300-regs.h>Linus Walleij
This register base file is now only used in the machine itself so move it down into mach-u300. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: delete <mach/irqs.h>Linus Walleij
All IRQs are now obtained from the device tree, and this file is unused, so delete it. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: delete <mach/hardware.h>Linus Walleij
This file is now unused and can be deleted. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: push down syscon registersLinus Walleij
Get rid of the <mach/syscon.h> header as a prerequisite for multiplatform support. Do this by pushing the registers down to their respective drivers and deleting the unused remainder. Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: remove deps from debug macroLinus Walleij
This rids the dependency to <mach/hardware.h> (which is an implicit dependency to <mach/u300-regs.h>) from the U300 debug macro. Take this opportunity to update the file header. Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: move debugmacro to debug includesLinus Walleij
This moves the U300 debug macro to the debug headers to make way for multiplatform support. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: delete all static board dataLinus Walleij
We have now transferred all the U300 peripherals to the device tree, so we just select USE_OF, and delete all static board data, then require that this platform shall be booted using the device tree and nothing else. This gets rid of the MMCI (PL180), PL022, and serial PL011 platform data entries and more. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: add FSMC flash into the device treeLinus Walleij
This registers the U300 FSMC flash controller from the device tree, and defines the three partitions. Skip the BBT scan as in the current platform data. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: probe the U300 dummy-spichip from device treeLinus Walleij
This probes the U300 dummy-spichip from the device tree and adds the apropriate node to the tree. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: add SPI PL022 to the device treeLinus Walleij
This registers the PL022 PrimeCell from the U300 device tree. We make a new copy of the platform data for the device tree boot path, as the old platform data is in an older file which will be going away. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: add the COH 901 318 DMAC to device treeLinus Walleij
This adds the COH 901 318 DMA controller to the U300 device tree. All devices now converted to device tree so far will start to find their DMA channels. Note that the U300 is not yet using the device tree to obtain DMA channels, but this is a first step. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: augment device tree with DMA channelsLinus Walleij
This adds DMA channel assignments to the MMC/SD-controller and the two UARTs already in the U300 device tree, as we have now defined a way to obtain DMA channels from the device tree. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17dma: coh901318: add devicetree supportLinus Walleij
This adds support for probing the COH 901 318 DMA controller and channels from the device tree. Contains portions of a sketch patch from Arnd Bergmann. Cc: Arnd Bergmann <arnd@arndb.de> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: enable MMC/SD card from device treeLinus Walleij
This adds support for the U300 MMC/SD card slot from the device tree boot. No other changes needed. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: support regulators in the device treeLinus Walleij
Now that we have enabled board power and the AB3100 regulators, put the regulator data into the device tree and enable it so we can start to tie regulators to devices. To begin with we're only supplying the power to the board itself. Cc: Mark Brown <broonie@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2013-06-17ARM: u300: set up board power from device treeLinus Walleij
This adds support for setting up the board power from the device tree on the U300. We use a board-specific node in the device tree for the S365 board and bind a regulator for the board power to this node. Cc: Mark Brown <broonie@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>