summaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2012-05-09Merge tag 'v3.4-rc6' into next/cleanupOlof Johansson
Linux 3.4-rc6 Resolve conflict where an u5500 file had a bugfix go in, but was deleted in the branch staged for next merge window. Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge tag 'omap-cleanup-hwmod-for-v3.5' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup Clean up of hwmod to shrink down the IP block interconnections By Paul Walmsley via Paul Walmsley (1) and Tony Lindgren (1) * tag 'omap-cleanup-hwmod-for-v3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (29 commits) ARM: OMAP2xxx: hwmod data: start to fix the IVA1, IVA2 and DSP ARM: OMAP3: hwmod data: add IVA hard reset lines, main clock, clockdomain ARM: OMAP3: hwmod data: fix IVA interface clock ARM: OMAP2xxx: hwmod data: share common interface data ARM: OMAP2xxx: hwmod data: share common hwmods between OMAP2420 and OMAP2430 ARM: OMAP2+: hwmod data: remove forward declarations, reorganize ARM: OMAP: hwmod: remove code support for direct hwmod registration ARM: OMAP2+: hwmod data: convert to link registration ARM: OMAP2+: hwmod: add support for link registration ARM: OMAP2+: hwmod: consolidate finding the MPU port index and storing it ARM: OMAP2+: hwmod: add function to iterate over struct omap_hwmod_ocp_if ARM: OMAP2+: hwmod: add _find_mpu_rt_port() ARM: OMAP2+: hwmod: extend OCP_* register offsets from 16 to 32 bits ARM: OMAP4: hwmod data: uncomment some "excluded" hwmods ARM: OMAP4: hwmod data: add OCP_USER_DSP; mark omap44xx_dsp__iva appropriately ARM: OMAP4: hwmod data: remove bandgap hwmod ARM: OMAP3: hwmod data: GPTIMER12 is attached to a separate interconnect ARM: OMAP3: hwmod data: add DSS->L3 interconnect for 3430ES1 ARM: OMAP3: hwmod data: fix interfaces for the MMC hwmods ARM: OMAP2/3: hwmod data: update old names ... Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge tag 'omap-cleanup-sparse-for-v3.5' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/cleanup Sparse and cppcheck warning fixes By Paul Walmsley via Paul Walmsley (1) and Tony Lindgren (1) * tag 'omap-cleanup-sparse-for-v3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: clean up some cppcheck warnings ARM: OMAP1: board files: deduplicate and clean some NAND-related code ARM: OMAP: USB: remove unnecessary sideways include ARM: OMAP: DMA: use constant array maximum, drop some LCD DMA code ARM: OMAP: OCM RAM: use memset_io() when clearing SRAM ARM: OMAP: fix 'using plain integer as NULL pointer' sparse warnings ARM: OMAP2+: GPMC: resolve type-conversion warning from sparse ARM: OMAP1: OHCI: use platform_data fn ptr to enable OCPI bus ARM: OMAP1: OCPI: move to mach-omap1/ ARM: OMAP: add includes for missing prototypes ARM: OMAP2+: declare file-local functions as static Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge tag 'omap-devel-hwmod-for-v3.5' of ↵Olof Johansson
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/pm Add most of remaining hwmods for omap4 By Paul Walmsley (37) and others via Tony Lindgren (2) and Paul Walmsley (1) * tag 'omap-devel-hwmod-for-v3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (44 commits) ARM: OMAP4: hwmod data: add DEBUGSS skeleton ARM: OMAP4: hwmod data: add PRCM and related IP blocks ARM: OMAP4: hwmod data: add System Control Module ARM: OMAP4: hwmod data: add the OCP-WP IP block ARM: OMAP4: hwmod data: add OCM RAM IP block ARM: OMAP4: hwmod data: add remaining USB-related IP blocks ARM: OMAP4: hwmod data: add some interconnect-related IP blocks ARM: OMAP4: hwmod data: add McASP ARM: OMAP4: hwmod data: add the Slimbus IP blocks ARM: OMAP4: hwmod data: add GPU ARM: OMAP4: hwmod data: add EMIF1 and 2 ARM: OMAP4: hwmod data: add GPMC ARM: OMAP4: hwmod data: add HDQ/1-wire ARM: OMAP4: hwmod data: introduce fdif(face detect module) hwmod ARM: OMAP2+: clockdomains: make {prm,cm}_clkdm common ARM: OMAP2xxx: hwmod data: start to fix the IVA1, IVA2 and DSP ARM: OMAP3: hwmod data: add IVA hard reset lines, main clock, clockdomain ARM: OMAP3: hwmod data: fix IVA interface clock ARM: OMAP2xxx: hwmod data: share common interface data ARM: OMAP2xxx: hwmod data: share common hwmods between OMAP2420 and OMAP2430 ...
2012-05-09Merge branch 'ux500-devicetree-for-arm-soc' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt From: Linus Walleij <linus.walleij@linaro.org>: Four core patches paving the way for device tree enablement of the Snowball and ux500 at large by Lee Jones. * 'ux500-devicetree-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: ARM: ux500: Enable PRCMU Timer 4 (clocksource) for Device Tree ARM: ux500: Disable SMSC911x platform code registration when DT is enabled ARM: ux500: Fork cpu-db8500 platform_devs for sequential DT enablement ARM: ux500: Do not attempt to register non-existent i2c devices on Snowball Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge tag 'at91-for-next-dt' of git://github.com/at91linux/linux-at91 into ↵Arnd Bergmann
next/dt "Jean-Christophe PLAGNIOL-VILLARD" <plagnioj@jcrosoft.com> writes: ARM: AT91 more DT material New SoC conversion and boards support SoC convertion to DT: - at91sam9260 - at91sam9263 boards: - Atmel at91sam9g20ek/9263ek - Calao TNY-A9260/A9263/A9G20 - Calao USB-A9260/A9263 - Ethernnut 5 - Kizbox * tag 'at91-for-next-dt' of git://github.com/at91linux/linux-at91: (32 commits) Ethernut 5 board support ARM: at91: add kizbox board dt support. ARM: at91: DT: add Calao TNY A9263 board support ARM: at91: DT: add Calao USB A9263 board support ARM: at91: add at91sam9263ek DT support ARM: at91: add at91sam9263 DT support ARM: at91: standard device init only if DT is not populated. ARM: at91: DT: add Calao USB A9260 DT support ARM: at91: Calao USB A926x factorize common binding in usb_a9260_common ARM: at91: USB A926x update nand partition ARM: at91: add at91sam9g20ek boards dt support arm: at91: add Calao TNY-A9260 and TNY-A9G20 board support ARM: at91: add at91sam9260 DT support ARM: at91: add defconfig for device tree ARM: at91/dt: do not specify the board any more ARN: at91: introduce SOC_AT91xxx define to allow to compile SoC core support ARM: at91: add SOC_AT91SAM9 kconfig option to factorise select ARM: at91: pm select memory controler at runtime ARM: at91: move at91_init_leds to board init ARM: at91: do not pin mux the UARTs in init_early ... Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'ux500-devicetree-for-arm-soc' of ↵Arnd Bergmann
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/dt Linus Walleij <linus.walleij@linaro.org> writes: this pull request contains some device tree work by Lee Jones. I have tried to keep these patches in the arch/arm/boot/dts/* space to get some sanity in the branch proliferation. There is still one patch that touches arch/arm/mach-ux500 too though (but it should merge fine with the other ux500 stuff). The changes to the device tree are of course dependent on some core changes and some patching in the GPIO/pin driver, but as the device tree files are believed to be a different world (and should one day live in their own git) I split this off anyway. I don't think people bisect the device trees per se and the board code in conjunction anyway. * 'ux500-devicetree-for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: ARM: ux500: Configure the PRCMU Timer for db8500 based devices in DT ARM: ux500: Enable the SMSC9115 on Snowball via Device Tree drivers/gpio: represent gpio-nomadik as an IRQ controller in DT documentation ARM: ux500: Rename gpio_keys in the Device Tree file drivers/gpio: gpio-nomadik: Provide documentation for Device Tree bindings drivers/gpio: gpio-nomadik: Device Tree bindings ARM: ux500: Enable the external bus with Device Tree ARM: ux500: Shorten Snowball's DT compatible gpio entry ARM: ux500: Rename the DT compatible entry for i2c devices on Snowball Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'spear/dt' into next/dtArnd Bergmann
* spear/dt: ARM: SPEAr3xx: Correct keyboard data passed from DT Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'lpc32xx/dt' of git://git.antcom.de/linux-2.6 into next/dtArnd Bergmann
Roland Stigge <stigge@antcom.de> writes: this is a rearrangement of all mach-lpc32xx specific patches for device tree conversion. Please note that: * It builds upon the i2c-pnx changes (see previous pull request, branch lpc32xx/i2c) * Dave Miller gave permission to merge the lpc_eth.c change via arm-soc (patch 1/8) The rest of the patches is mach-lpc32xx only. * 'lpc32xx/dt' of git://git.antcom.de/linux-2.6: ARM: LPC32xx: Defconfig update ARM: LPC32xx: Move common code to common.c ARM: LPC32xx: Device tree support ARM: LPC32xx: DTS files for device tree conversion ARM: LPC32xx: Remove obsolete platform Kconfig ARM: LPC32xx: clock.c registration adjustment ARM: LPC32xx: clock.c cleanup net: Add device tree support to LPC32xx Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'depends/i2c/lpc32xx' into next/dtArnd Bergmann
As a prerequisite for merging the lpc32xx DT changes, this pulls in the depends/i2c/lpc32xx branch that contains changes to the pnx-i2c driver, which are already in the i2c tree. The branch is available also on git://git.antcom.de/linux-2.6.git lpc32xx/i2c Roland Stigge <stigge@antcom.de> writes: this is the series of the 4 patches adding device tree support to i2c-pnx (used by LPC32xx) that Wolfram Sang already applied to the i2c subsystem. Since both drivers/i2c/ and mach-lpc32xx are touched here, there will probably be conflicts that you need to be aware of. I'm posting this again for arm-soc since the actual mach-lpc32xx specific DT conversion builds upon those changes (see next pull request), especially in arch/arm/mach-lpc32xx/common.c. Wolfram already gave permission to merge this via arm-soc, but please coordinate and tell me if I can help resolving this. Further, this implicitly updates the next/dt branch to v3.4-rc4, which causes a trivial conflict from a change in one branch in code that gets removed in another. Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'spear/dt' into next/dtArnd Bergmann
This is a rebased version of parts of git://git.stlinux.com/spear/linux-2.6.git spear-v3.5 which was accidentally based on the linux-next tree and mixed too many different things. The pinctrl related changes from the same branch are now in the spear/pinctrl branch of arm-soc. There are a few non-DT cleanups mixed in here, but fundamentally it's all related to the DT conversion. * spear/dt: (9 commits) ARM: spear: remove most mach/*.h header contents SPEAr: Update defconfigs SPEAr: Add PL080 DMA support for 3xx and 6xx ARM: SPEAr3xx: Add device-tree support to SPEAr3xx architecture SPEAr3xx: Replace printk() with pr_*() SPEAr6xx: Add compilation support for dtbs using 'make dtbs' SPEAr3xx: Add clock instance of usb hosts - ehci and ohci 0 and 1 SPEAr: Use CLKDEV_INIT for defining clk_lookups ARM: SPEAr600: Change FSMC and SMI clock names Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09Merge branch 'renesas/dt' into next/dtArnd Bergmann
First part of DT changes for the Renesas shmobile platform, pulled from: git://git.kernel.org/pub/scm/linux/kernel/git/rafael/renesas.git dt * renesas/dt: ARM: mach-shmobile: sh7372 generic board support via DT V2 ARM: mach-shmobile: Rework sh7372 INTCS demuxer V2 ARM: mach-shmobile: Use INTC_IRQ_PINS_16H on sh7372 ARM: mach-shmobile: Use 0x3400 as INTCS vector offset ARM: mach-shmobile: Introduce INTC_IRQ_PINS_16H ARM: mach-shmobile: Introduce shmobile_setup_delay() Signed-off-by: Arnd Bergmann <arnd@arndb.de> [olof: rebuilt branch due to drop of an early merge] Signed-off-by: Olof Johansson <olof@lixom.net>
2012-05-09OMAPDSS: DSI: implement generic DSI pin configTomi Valkeinen
In preparation for device tree, this patch changes how the DSI pins are configured. The current configuration method is only doable with board files and the configuration data is OMAP specific. This patch moves the configuration data to the panel's platform data, and the data can easily be given via DT in the future. The configuration data format is also changed to a generic one which should be suitable for all platforms. The new format is an array of pin numbers, where the array items start from clock + and -, then data1 + and -, and so on. For example: { 0, // pin num for clock lane + 1, // pin num for clock lane - 2, // pin num for data1 lane + 3, // pin num for data1 lane - ... } The pin numbers are translated by the DSI driver and used to configure the hardware appropriately. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2012-05-09OMAPDSS: Taal: move reset gpio handling to taal driverTomi Valkeinen
The reset GPIO for Taal panel driver is currently requested in the 4430sdp board file. This patch moves the gpio request/free into the Taal driver, where it should be. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2012-05-09OMAPDSS: TFP410: rename dvi files to tfp410Tomi Valkeinen
Now that the tfp410 driver has been renamed in the code, this patch finishes the renaming by renaming the files. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2012-05-09OMAPDSS: TFP410: rename dvi -> tfp410Tomi Valkeinen
The driver for the TFP410 DPI-to-DVI chip was named quite badly as "DVI panel driver". This patch renames the code to use tfp410 name for the driver. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2012-05-09OMAP: board-files: remove custom PD GPIO handling for DVI outputTomi Valkeinen
Now that the panel-dvi driver handles the PD (power-down) GPIO, we can remove the custom PD handling from the board files. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
2012-05-09ARM i.MX: remove now unused clock filesSascha Hauer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2012-05-09ARM: i.MX6: implement clocks using common clock frameworkShawn Guo
Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2012-05-09ARM i.MX35: implement clocks using common clock frameworkSascha Hauer
This patch also adds the SPDIF baud clock mux and dividers. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2012-05-09ARM i.MX5: implement clocks using common clock frameworkSascha Hauer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2012-05-08ARM: OMAP4: hsmmc: check for null pointerBalaji T K
platform_device pdev can be NULL if CONFIG_MMC_OMAP_HS is not set. Add check for NULL pointer. while at it move the duplicated functions to omap4-common.c Fixes the following boot crash seen with omap4sdp and omap4panda when MMC is disabled. Unable to handle kernel NULL pointer dereference at virtual address 0000008c pgd = c0004000 [0000008c] *pgd=00000000 Internal error: Oops: 5 [#1] SMP ARM Modules linked in: CPU: 0 Not tainted (3.4.0-rc1-05971-ga4dfa82 #4) PC is at omap_4430sdp_init+0x184/0x410 LR is at device_add+0x1a0/0x664 Signed-off-by: Balaji T K <balajitk@ti.com> Reported-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2012-05-08ARM: OMAP1: fix compilation issue in board-sx1.cArtem Bityutskiy
SX1 board requirese i2c, so select it in Kconfig, otherwise I have the following build error: arch/arm/mach-omap1/board-sx1.c: In function 'sx1_i2c_write_byte': arch/arm/mach-omap1/board-sx1.c:58:2: error: implicit declaration of function 'i2c_get_adapter' [-Werror=implicit-function-declaration] arch/arm/mach-omap1/board-sx1.c:58:7: warning: assignment makes pointer from integer without a cast [enabled by default] arch/arm/mach-omap1/board-sx1.c:67:2: error: implicit declaration of function 'i2c_transfer' [-Werror=implicit-function-declaration] arch/arm/mach-omap1/board-sx1.c:68:2: error: implicit declaration of function 'i2c_put_adapter' [-Werror=implicit-function-declaration] arch/arm/mach-omap1/board-sx1.c: In function 'sx1_i2c_read_byte': arch/arm/mach-omap1/board-sx1.c:82:7: warning: assignment makes pointer from integer without a cast [enabled by default] cc1: some warnings being treated as errors make[1]: *** [arch/arm/mach-omap1/board-sx1.o] Error 1 make: *** [arch/arm/mach-omap1] Error 2 make: *** Waiting for unfinished jobs.... Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2012-05-08OMAP4: devices: Do not create mcpdm device if the dtb has been providedPeter Ujfalusi
If dtb is provided the needed device will be created dynamically. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2012-05-08OMAP4: devices: Do not create dmic device if the dtb has been providedPeter Ujfalusi
If dtb is provided the needed device will be created dynamically. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
2012-05-08ARM: Kirkwood: Replace clock gatingAndrew Lunn
Add a varient of the basic clk-gate code. This variant calls a function before gating the clock off. This function is used to disable the SATA or PCIe PHY. Now that all the drivers prepare and enable there clk as needed, there is no need for the common code to keep track of which clocks need gating on. Let the common clock framework turn off clocks which are not used. Buy using the added clk varient, when the clk framework turns off SATA or PCIe clocks, we also disabled SATA and PCIe PHYs which were not needed. The function kirkwood_pcie_id() can now be called outside of __init code, so remove this property for it, and functions it calls. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: Audio: Add clk/clkdev supportAndrew Lunn
Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: PCIE: Add support for clkAndrew Lunn
Prepare and enable the clocks when the board indicates the pcie buses will be used. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: XOR: Add support for clkAndrew Lunn
Some orion platforms can gate the XOR driver clock. If the clock exisits, unable/disable it as appropriate. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: CESA: Add support for clkAndrew Lunn
Some orion platforms support gating of the clock. If the clock exists enable/disbale it as appropriate. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: SDIO: Add support for clk.Andrew Lunn
Some orion devices can gate the SDIO clock. If the clock exists, enable/disable it as appropriate. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: NAND: Add support for clk, if there is one.Andrew Lunn
Not all orion platforms can gate the clock, but if it does exist, enable/disable it as appropriate. v2: Fix the name of the clkdev entry. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: EHCI: Add support for enabling clocksAndrew Lunn
Not all platforms support gating the clock, so it is not an error if the clock does not exist. However, if it does exist, we should enable/disable it as appropriate. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: SATA: Add per channel clk/clkdev support.Andrew Lunn
The Orion kirkwood chips have a gatable clock per SATA channel. Add code to get and enable this clk if it exists. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: UART: Get the clock rate via clk_get_rate().Andrew Lunn
Let the machine pass to the platform which clock is used by the uart. Enable the clock and use clk_get_rate() to determine its rate. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: WDT: Add clk/clkdev supportAndrew Lunn
Remove tclk from platform data. This makes the platform data structure empty, so remove it. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: Eth: Add clk/clkdev support.Andrew Lunn
The t_clk is moved from the shared part of the ethernet driver into the per port section. Each port can have its own gated clock, which it needs to enable/disable, as oppossed to there being one clock shared by all ports. In practice, only kirkwood supports this at the moment. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: SPI: Add clk/clkdev support.Andrew Lunn
Remove now redundant tclk from SPI platform data. This makes the platform data empty, so remove it. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: Orion: Add clocks using the generic clk infrastructure.Andrew Lunn
Add tclk as a fixed rate clock for all platforms. In addition, on kirkwood, add a gated clock for most of the clocks which can be gated. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Jamie Lentin <jm@lentin.co.uk> [mturquette@linaro.org: removed redundant CLKDEV_LOOKUP from Kconfig] [mturquette@linaro.org: removed redundant clk.h from mach-dove/common.c] Signed-off-by: Mike Turquette <mturquette@linaro.org>
2012-05-08ARM: OMAP2+: WDTIMER integration: fix !PM boot crash, disarm timer after ↵Kevin Hilman
hwmod reset Without runtime PM enabled, hwmod needs to leave all IP blocks in an enabled state by default so any driver access to the HW will succeed. This is accomplished by seting the postsetup_state to enabled for all hwmods during init when runtime PM is disabled. Currently, we have a special case for WDT in that its postsetup_state is always set to disabled. This is done so that the WDT is disabled and the timer is disarmed at boot in case there is no WDT driver. This also means that when runtime PM is disabled, if a WDT driver *is* built in the kernel, the kernel will crash on the first access to the WDT hardware. We can't simply leave the WDT module enabled, because the timer is armed by default after reset. That means that if there is no WDT driver initialzed or loaded before the timer expires, the kernel will reboot. To fix this, a custom reset method is added to the watchdog class of omap_hwmod. This method will *always* disarm the timer after hwmod reset. The WDT timer then will only be rearmed when/if the driver is loaded for the WDT. With the timer disarmed by default, we no longer need a special-case for the postsetup_state of WDT during init, so it is removed. Any platforms wishing to ensure the watchdog remains armed across the entire boot boot can simply disable the reset-on-init feature of the watchdog hwmod using omap_hwmod_no_setup_reset(). Tested on 3530/Overo, 4430/Panda. NOTE: on 4430, the hwmod OCP reset does not seem to rearm the timer as documented in the TRM (and what happens on OMAP3.) I noticed this because testing the HWMOD_INIT_NO_RESET feature with no driver loaded, I expected a reboot part way through the boot, but did not see a reboot. Adding some debug to read the counter, I verified that right after OCP softreset, the counter is not firing. After writing the magic start sequence, the timer starts counting. This means that the timer disarm sequence added here does not seem to be needed for 4430, but is technically the correct way to ensure the timer is disarmed, so it is left in for OMAP4. Special thanks to Paul Walmsley for helping brainstorm ideas to fix this problem. Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Kevin Hilman <khilman@ti.com> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> [paul@pwsan.com: updated the omap2_wd_timer_reset() function in the wake of commit 3c55c1baffa5f719eb2ae9729088bc867f972f53 ("ARM: OMAP2+: hwmod: Revert "ARM: OMAP2+: hwmod: Make omap_hwmod_softreset wait for reset status""); added kerneldoc; rolled in warning fix from Kevin] Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP2/3: hwmod data: Add 32k-sync timer data to hwmod databaseVaibhav Hiremath
Add 32k-sync timer hwmod-data and add ocp_if details to omap2 & 3 hwmod table. Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com> Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Benoit Cousson <b-cousson@ti.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Paul Walmsley <paul@pwsan.com> Cc: Kevin Hilman <khilman@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP4: hwmod_data: Name the common irq for McBSP portsPeter Ujfalusi
Use 'common' as name for the common irq number in hwmod data for the McBSP ports. The same name already in use for OMAP2430, and OMAP3. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP4: hwmod data: I2C: add flag for context restoreShubhrajyoti D
Restore of context is not done for OMAP4. This patch adds the OMAP_I2C_FLAG_RESET_REGS_POSTIDLE in the OMAP4 hwmod data which activates the restore for OMAP4. Currently the OMAP4 does not hit device off still the driver may have support for it. Cc: Benoit Cousson <b-cousson@ti.com> Cc: Paul Wamsley <paul@pwsan.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP3: hwmod_data: Rename the common irq for McBSP portsPeter Ujfalusi
Use 'common' as name for the common irq number in hwmod data for the McBSP ports. The same name already in use for OMAP2430, and the OMAP4 hwmod data will be using the same name. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP2xxx: hwmod data: add HDQ/1-wire hwmodPaul Walmsley
Add the HDQ1W hwmod for all OMAP2xxx devices. Assume that OMAP2xxx chips have the same HDQ idle handling bug as OMAP3: http://www.spinics.net/lists/linux-omap/msg63576.html and set the OCPIF_SWSUP_IDLE flag accordingly on the HDQ's OCP interface. Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: OMAP3: hwmod data: add HDQ/1-wire hwmodPaul Walmsley
Add the HDQ1W hwmod for OMAP34xx, OMAP36xx, and AM3505/3517 devices. According to the respective TRMs, it doesn't appear to be available for the 816x/814x or the AM335x. The OCPIF_SWSUP_IDLE flag is added to work around an apparent hardware bug: the hardware is not taking the CM_FCLKEN*_CORE.EN_HDQ bit into account when considering whether to go idle: http://www.spinics.net/lists/linux-omap/msg63576.html This causes HDQ transfers to fail or become corrupt. Thanks to NeilBrown for his help diagnosing and testing fixes for this problem. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: NeilBrown <neilb@suse.de> Tested-by: NeilBrown <neilb@suse.de>
2012-05-08ARM: OMAP2+: hwmod data: add HDQ/1-wire hwmod shared dataPaul Walmsley
Much of the HDQ1W integration data is common between multiple generations of OMAP SoCs, so rather than make several copies, we add it once into files which are compiled for multiple SoCs. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: NeilBrown <neilb@suse.de> Tested-by: NeilBrown <neilb@suse.de>
2012-05-08ARM: OMAP2+: HDQ1W: add custom reset functionPaul Walmsley
Implement a custom reset function for the HDQ1W IP block. This is because the HDQ1W IP block, like I2C, has an internal clock gating bit that needs to be toggled after setting the SOFTRESET bit to allow the reset to propagate. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: NeilBrown <neilb@suse.de> Cc: Avinash.H.M <avinashhm@ti.com> Tested-by: NeilBrown <neilb@suse.de>
2012-05-08ARM: OMAP2420: hwmod data: Add MMC hwmod data for 2420Tony Lindgren
Add MMC for 2420 so we can pass the DMA request lines the same way as we already do on omap2430 and later. Cc: Benoit Cousson <b-cousson@ti.com> Cc: Paul Walmsley <paul@pwsan.com> Signed-off-by: Tony Lindgren <tony@atomide.com> [paul@pwsan.com: updated to apply on top of the 3.5 hwmod cleanup; changed mmc hwmod name/class to "msdi" as documented in the 2420 TRM Rev X; added sysconfig register information; added 16 bit register width flag; added MSDI custom reset code] Signed-off-by: Paul Walmsley <paul@pwsan.com>
2012-05-08ARM: tegra: Add SMMU enabler in AHBHiroshi DOYU
Add extern func, "tegra_ahb_enable_smmu()" to inform AHB that SMMU is ready. Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com> Cc: Felipe Balbi <balbi@ti.com> Signed-off-by: Stephen Warren <swarren@nvidia.com>