summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/da850.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'staging/for_v3.7' into v4l_for_linusMauro Carvalho Chehab2012-10-111-0/+152
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Applied on the top of changeset 782cd9e, as some of those patches depend on some fixes that went via -arm tree. * staging/for_v3.7: (109 commits) [media] m5mols: Add missing #include <linux/sizes.h> [media] stk1160: Add support for S-Video input Revert "[media] omap3isp: Replace cpu_is_omap3630() with ISP revision check" [media] dvb: LNA implementation changes [media] v4l2-ioctl: fix W=1 warnings [media] v4l2-ioctl: add blocks check for VIDIOC_SUBDEV_G/S_EDID [media] omap3isp: Fix compilation error in ispreg.h [media] rc-msi-digivox-ii: Add full scan keycodes [media] cx25821: testing the wrong variable [media] tda18271-common: hold the I2C adapter during write transfers [media] ds3000: add module parameter to force firmware upload [media] drivers/media: Remove unnecessary semicolon [media] winbond: remove space from driver name [media] iguanair: cannot send data from the stack [media] omap3isp: Replace cpu_is_omap3630() with ISP revision check [media] dvb-usb: print small buffers via %*ph [media] uvc: Add return code check at vb2_queue_init() [media] em28xx: Replace memcpy with struct assignment [media] bt8xx: Add video4linux control V4L2_CID_COLOR_KILLER [media] mem2mem_testdev: Use devm_kzalloc() in probe ...
| * [media] ARM: davinci: da850: Add SoC related definitions for VPIFManjunath Hadli2012-10-051-0/+152
| | | | | | | | | | | | | | | | | | | | Add clock, pin mux definitions and registration function for VPIF capture and display driver on DA850/OMAP-L138 SoC. Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com> Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | Merge branch 'late/fixes' into fixesOlof Johansson2012-10-071-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a series from Arnd that fixes a number of compiler warnings when building defconfigs on ARM. * late/fixes: ARM: footbridge: nw_gpio_lock is raw_spin_lock ARM: mv78xx0: correct addr_map_cfg __initdata annotation ARM: footbridge: remove RTC_IRQ definition ARM: soc: dependency warnings for errata ARM: ks8695: __arch_virt_to_dma type handling ARM: rpc: check device_register return code in ecard_probe ARM: davinci: don't mark da850_register_cpufreq as __init ARM: iop13xx: fix iq81340sc_atux_map_irq prototype ARM: iop13xx: mark iop13xx_scan_bus as __devinit ARM: mv78xx0: mark mv78xx0_timer_init as __init_refok ARM: s3c24xx: fix multiple section mismatch warnings ARM: at91: unused variable in at91_pm_verify_clocks ARM: at91: skip at91_io_desc definition for NOMMU ARM: pxa: work around duplicate definition of GPIO24_SSP1_SFRM ARM: pxa: remove sharpsl_fatal_check function ARM: pxa: define palmte2_pxa_keys conditionally ARM: pxa: Wunused-result warning in viper board file ARM: shark: fix shark_pci_init return code Fixed trivial conflicts in arch/arm/mach-at91/setup.c. Signed-off-by: Olof Johansson <olof@lixom.net>
| * | ARM: davinci: don't mark da850_register_cpufreq as __initArnd Bergmann2012-10-071-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The mityomapl138_cpufreq_init and read_factory_config function in board-mityomapl138.c are not __init functions and might be called at a later stage, so da850_register_cpufreq must not be __init either. Without this patch, building da8xx_omapl_defconfig results in: WARNING: arch/arm/mach-davinci/built-in.o(.text+0x2eb4): Section mismatch in reference from the function read_factory_config() to the function .init.text:da850_register_cpufreq() The function read_factory_config() references the function __init da850_register_cpufreq(). This is often because read_factory_config lacks a __init annotation or the annotation of da850_register_cpufreq is wrong. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Sekhar Nori <nsekhar@ti.com> Cc: Kevin Hilman <khilman@ti.com>
* | sections: fix section conflicts in arch/arm/Andi Kleen2012-10-061-3/+3
|/ | | | | | | Signed-off-by: Andi Kleen <ak@linux.intel.com> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* ARM: davinci: DA850: move da850_register_pm to .init.textUwe Kleine-König2012-03-131-1/+1
| | | | | | | | | | | | | | | | All callers (board-mityomapl138.c and board-da850-evm.c) use it in __init functions only. This fixes: WARNING: vmlinux.o(.text+0xd664): Section mismatch in reference from the function da850_register_pm() to the function .init.text:da8xx_get_mem_ctlr() The function da850_register_pm() references the function __init da8xx_get_mem_ctlr(). This is often because da850_register_pm lacks a __init annotation or the annotation of da8xx_get_mem_ctlr is wrong. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* ARM: davinci: DA850: remove non-existing pll1_sysclk4-7 clocksBas van den Berg2012-01-201-32/+0
| | | | | | | | | DA850: sysclk4-7 only exist for pll0. for pll1 sysclk1-3 exist. Remove the non-existing clocks. Signed-off-by: Bas van den Berg <b.van.den.berg.nl@gmail.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* ARM: 7190/1: restart: davinci: use new restart hookSekhar Nori2012-01-051-1/+0
| | | | | | | | | | | | | | | Rather than using DaVinci specific davinci_soc_info based restart hook, use the restart hook available in the machine descriptor instead. Tested on DM365 and AM18x EVMs. v2: Changed to use restart hook in machine descriptor per Russell's comment. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* Merge branch 'depends/rmk/gpio' into next/develArnd Bergmann2011-10-311-1/+2
|\ | | | | | | | | | | | | | | Conflicts: arch/arm/mach-mxs/include/mach/gpio.h arch/arm/plat-mxc/include/mach/gpio.h Signed-off-by: Arnd Bergmann <arnd@arndb.de>
| * ARM: 7040/1: mach-davinci: break out GPIO driver specificsLinus Walleij2011-08-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | The <mach/gpio.h> file is included from upper directories and deal with generic GPIO and gpiolib stuff. Break out the platform and driver specific defines and functions into its own header file. Cc: Sekhar Nori <nsekhar@ti.com> Cc: Kevin Hilman <khilman@ti.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * ARM: gpio: convert includes of mach/gpio.h and asm/gpio.h to linux/gpio.hRussell King2011-08-081-1/+1
| | | | | | | | | | | | | | | | Convert arch/arm includes of mach/gpio.h and asm/gpio.h to linux/gpio.h before we start consolidating the individual platform implementations of the gpio header files. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* | ARM: davinci: DA850: Add GPIO pinmux configuration for wl1271Ido Yariv2011-09-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | The wl1271 daughter board makes use of a few GPIOs: GPIO6_9 is used for powering down/up the WLAN functionality. GPIO6_10 is used as an input IRQ line from the WLAN chip. Add the required pinmux configuration for these GPIOs. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* | ARM: davinci: DA850: Add MMC/SD1 pinmux configurationIdo Yariv2011-09-171-0/+7
|/ | | | | | | | AM18x has two MMC slots. Add the required pinmux configuration for the second slot. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* davinci: da850: add support for SATA interfaceSekhar Nori2011-07-081-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for SATA controller on the DA850/OMAP-L138/AM18x devices. The patch adds the necessary clocks, platform resources and a routine to initialize the SATA controller. The PHY configuration in this patch is courtesy the work done by Zegeye Alemu, Swaminathan and Mansoor Ahamed from TI. While testing this patch, enable port multiplier support iff you are actually using one. The reasons of this behaviour are discussed here: http://patchwork.ozlabs.org/patch/78163/ ChangeLog: v3: Removed fields which were being initialized to zero in PHY configuration. Moved SATA base address definition to the top of the file to make it inline with what is done for the rest of the modules. v2: Addressed comments from Sergei. Removed unnecessary braces and removed unnecessary else after goto. Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* davinci: da850: add a .set_rate method to ref_clkChristian Riesch2011-07-061-0/+1
| | | | | | | | | This patch allows setting the input clock frequency of the SoC from the board specific code using the davinci_set_refclk_rate function. Suggested-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Christian Riesch <christian.riesch@omicron.at> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* DA8xx: kill duplicate #define DA8XX_PLL1_BASESergei Shtylyov2011-05-061-1/+1
| | | | | | | | | Commit 044ca01521d077a35b46a445b02b93f413109a4b (davinci: da850/omap-l138: add support for SoC suspend) introduced DA8XX_PLL1_BASE despite PLL1 exists only on DA850/OMAP-L138 and da850.c even already #define'd DA850_PLL1_BASE. Kill the duplicate macro, renaming an existing reference to it... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
* Fix common misspellingsLucas De Marchi2011-03-311-1/+1
| | | | | | Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
* davinci: da850: add spi device clock definitionsMichael Williamson2011-03-111-0/+16
| | | | | | | | Add spi clock information for da850. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: da850: remove unused uart pinmux arrays.Michael Williamson2011-02-281-15/+0
| | | | | | | | The da850 uart pinmux arrays are not used. Remove them. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: da850: move da850_evm specific mmcsd pinmux array to board file.Michael Williamson2011-02-281-7/+0
| | | | | | | | | | The da850_mmcsd0_pins pinmux array contains pins that are specific to the da850 evm board (the write protect and card detect GPIO pins). Move the array to the board file. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: da850: move da850_evm specific mcasp pins to board file.Michael Williamson2011-02-281-7/+0
| | | | | | | | | | The da850_mcasp_pins pinmux array is specific to the da850_evm, and is not generic. Move the array to the board file, make it static initdata, and rename it accordingly. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: da850: remove unused emif pinmux arrayMichael Williamson2011-02-281-16/+0
| | | | | | | | The da850_emif25_pins pinmux array is not used. Remove it. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: da850: remove unused pinmux arrayMichael Williamson2011-02-281-11/+0
| | | | | | | | The da850_cpgmac_pins pinmux array is not used. Remove it. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: Add additional JTAG code for AM-1808 and OMAP-L138 Rev 2.0 SoCsSudhakar Rajashekhara2011-02-281-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | From: Sudhakar Rajashekhara <sudhakar.raj@ti.com> The JTAG variant code for Rev-2.0 silicon of the OMAP-L138 has changed. In addition, the variant code for the AM-1808 SoC appears to match the Rev-2.0 code for the OMAP-L138. Add an additional entry to support these chips. This patch is originally from a patch on the arago project, here: http://arago-project.org/git/projects/?p=linux-omapl1.git;a=commit;h=6157618435e313a444cdf059702bd34036a6e2b7 Further information related to the need for this patch can be located at http://e2e.ti.com/support/embedded/f/354/p/67290/248486.aspx http://linux.davincidsp.com/pipermail/davinci-linux-open-source/2010-November/021224.html This patch was tested using an AM-1808 SoC on a MityARM-1808 SoM card. It was also tested using a Rev 1.0 silicon OMAP-L138 on a MityDSP-L138F card. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Michael Williamson <michael.williamson@criticallink.com> Reported-by: Nicolas Luna <luna.id@gmail.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: USB clocks for Omapl138-HawkboardVictor Rodriguez2011-02-281-0/+16
| | | | | | | | | This patch adds USB1.1 and USB2.0 clocks for the Hawkboard-L138 system Signed-off-by: Victor Rodriguez <vm.rod25@gmail.com> Tested-by: Rene Gonzalez <renegs.2378@gmail.com> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: MMC/SD and USB-OHCI configuration for Omapl138-HawkboardVictor Rodriguez2011-02-281-0/+4
| | | | | | | | | | This patch defines Pin Mux configuration to enable MMC/SD and USB-OHCI on the Hawkboard-L138 system Signed-off-by: Victor Rodriguez <vm.rod25@gmail.com> Tested-by: Rene Gonzalez <renegs.2378@gmail.com> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: am18x/da850/omap-l138: add support for higher speed gradesSekhar Nori2010-12-221-15/+60
| | | | | | | | | | | | | | | | | | | | | | | AM18x/DA850/OMAP-L138 SoCs have variants that can operate at a maximum of 456 MHz at 1.3V operating point. Also the 1.2V operating point has a variant that can support a maximum of 375 MHz. This patch adds three new OPPs (456 MHz, 408 MHz and 372 MHz) to the list of DA850 OPPs. Not all silicon is qualified to run at higher speeds and unfortunately the maximum speed the chip can support can only be determined from the label on the package (not software readable). Because of this, we depend on the maximum speed grade information to be provided to us in some board specific way. The board informs the maximum speed grade information by setting the da850_max_speed variable. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* DA850: Split MMCSD clock into two to support both MMCSD peripheralsJuha Kuikka2010-09-241-3/+11
| | | | | | | | Split mmcsd_clk into mmcsd0_clk and mmcsd1_clk and add davinci_mmc.1 in preparation for adding support for MMCSD1 peripheral in DA850. Signed-off-by: Juha Kuikka <juha.kuikka@elektrobit.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* DA850: move MII/RMII pin lists to the board fileSergei Shtylyov2010-09-241-9/+3
| | | | | | | | | | | | The CPGMAC pin list in da850.c was incorrectly split into two MII/RMII mode specific pin lists, while what pin group is used is a function of how the board is wired. Copy the pin lists to board-da850-evm.c, renaming them accordingly, and merge the two lists in da850.c into one, da850_cpgmac_pins[], representing the CPGMAC module as a whole... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Tested-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* DA850: move NAND/NOR pin lists to the board fileSergei Shtylyov2010-09-241-20/+12
| | | | | | | | | | | | | | | The NAND/NOR flash pin lists (da850_nand_pins/da850_nor_pins) are purely board specific and as such shouldn't be in da850.c -- copy them to board-da850-evm.c, renaming to da850_evm_nand_pins/da850_evm_nor_pins respectively, and merge the two lists in da850.c into one, representing the EMIF 2.5 module as a whole, just like we have it in da830.c... While at it, remove the '__init' modifier from da850_evm_setup_nor_nand() as this function is called from non '__init' code... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Tested-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: am18x/da850/omap-l138: keep async clock constant with cpufreqSekhar Nori2010-09-241-1/+9
| | | | | | | | | Keep PLL0 SYSCLK3 at a constant rate of 100MHz. This enables the AEMIF timing to remain valid even as the PLL0 output is changed by cpufreq driver to save power. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: am18x/da850/omap-l138: use 'NOM' voltage defined in datasheet as ↵Sekhar Nori2010-09-241-3/+3
| | | | | | | | | | | | | | | | | | min voltage For each DA850 OPP, the normal ('NOM') voltage defined in the tecnical reference manual (TRM) is actually the minimum voltage the frequency is supported at. The minimum ('MIN') voltage defined in TRM is meant to take care of voltage fluctuations and the device should not be run at this voltage for extended periods of time. Fix the OPP definitions to define the cvdd_min as the normal voltage defined in the datasheet. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: cpufreq: bailout on regulator errorsSekhar Nori2010-09-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | Current cpufreq code does not consider errors that can occur while changing voltage. Code to increase CPU frequency goes ahead even in the case the regulator has failed to increase the voltage. This leads to hard error since lower voltages cannot support increased frequency. Prevent this by not increasing frequency in case increasing voltage is not successful. Also, do not lower the voltage if changing the cpu frequency has failed for some reason. Note that we do not return error on failure to decrease voltage as that is not a hard error. Build fix for non-cpufreq kernels by Caglar Akyuz. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Cc: Caglar Akyuz <caglar@bilkon-kontrol.com.tr> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da8xx: sparse cleanup: remove duplicate entries in irq prioritiesSekhar Nori2010-08-051-25/+0
| | | | | | | | | | | | | | | | | | | | | This patch helps get rid of the following sparse warnings of the type: CHECK arch/arm/mach-davinci/da830.c arch/arm/mach-davinci/da830.c:1026:3: warning: Initializer entry defined twice arch/arm/mach-davinci/da830.c:1027:3: also defined here coming from the irq priorities array init. Apart from one instance of genuinie repetition, most are are instances of multiple #defines of the same interrupt number. I have not removed the multiple definitions from the irq.h file in the hope that someone might decide to use them as shared interrupts at some point of time. The priority initialization however needs to be done only once and hence has been corrected. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: iotable based ioremap() interceptionCyril Chemparathy2010-05-131-2/+2
| | | | | | | | | | | | | | This patch allows for a more flexible ioremap() interception based on iotable contents. With this patch, the ioremap() interception code can properly translate addresses only after davinci_soc_info has been initialized. Consequently, in soc-specific init functions, davinci_common_init() has to happen before any ioremap() attempts. The da8xx init sequence has been suitably modified to meet this restriction. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: pinmux - use ioremap()Cyril Chemparathy2010-05-131-2/+1
| | | | | | | | This patch modifies the pinmux implementation so as to ioremap() the pinmux register area on first use. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: aintc/cpintc - use ioremap()Cyril Chemparathy2010-05-131-1/+1
| | | | | | | | | | | | | | | | | | This patch implements the following: - interrupt initialization uses ioremap() instead of passing a virtual address via davinci_soc_info. - machine definitions directly point to cp_intc_init() or davinci_irq_init() - davinci_intc_type and davinci_intc_base now get initialized in controller specific init functions instead of davinci_common_init() - minor fix in davinci_irq_init() to use intc_irq_num instead of DAVINCI_N_AINTC_IRQ Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: psc - use ioremap()Cyril Chemparathy2010-05-131-4/+1
| | | | | | | | This patch modifies the psc and clock control code to use ioremap()ed registers. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: timer - use ioremap()Cyril Chemparathy2010-05-131-4/+4
| | | | | | | | This patch eliminates IO_ADDRESS() usage for Davinci timer definitions. The timer code has correspondingly been modified to ioremap() MMRs instead. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: jtag_id - use ioremap()Cyril Chemparathy2010-05-131-2/+1
| | | | | | | | | | | This patch replaces the jtag id base info in davinci_soc_info with a physical address which is then ioremap()ed within common code. This patch (in combination with a similar change for PSC) will allow us to eliminate the SYSCFG nastiness in DA8xx code. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: gpio - use ioremap()Cyril Chemparathy2010-05-131-1/+1
| | | | | | | | | This patch modifies the gpio_base definition in davinci_soc_info to be a physical address, which is then ioremap()ed by the gpio initialization function. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: watchdog reset separation across socsCyril Chemparathy2010-05-061-0/+1
| | | | | | | | | | | | | | | | | The earlier watchdog reset mechanism had a couple of limitations. First, it embedded a reference to "davinci_wdt_device" inside common code. This forced all derived platforms (da8xx and tnetv107x) to define such a device. This also would have caused problems in including multiple socs in a single build due to symbol redefinition. With this patch, davinci_watchdog_reset() now takes the platform device as an argument. The davinci_soc_info struct has been extended to include a reset function and a watchdog platform_device. arch_reset() then uses these elements to reset the system in a SoC specific fashion. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Tested-by: Sandeep Paulraj <s-paulraj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: gpio - controller type supportCyril Chemparathy2010-05-061-0/+2
| | | | | | | | | | | | | This patch allows for gpio controllers that deviate from those found on traditional davinci socs. davinci_soc_info has an added field to indicate the soc-specific gpio controller type. The gpio initialization code then bails out if necessary. More elements (tnetv107x) to be added later into enum davinci_gpio_type. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Tested-by: Sandeep Paulraj <s-paulraj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: clkdev cleanup: remove clk_lookup wrapper, use clkdev_add_table()Kevin Hilman2010-02-041-4/+4
| | | | | | | Remove unneeded 'struct davinci_clk' wrapper around 'struct clk_lookup' and use clkdev_add_table() to add the list of clocks in one go. Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138: add support for SoC suspendSekhar Nori2010-02-041-0/+39
| | | | | | | | | | | | | | | | | | This patch adds support for registering for suspend-to-RAM functionality on da850/omap-l138 SoCs. da850 supports wakeup based on external event and RTC alarm. Currently only RTC alarm based wakeup is supported. Support for wakeup based on external event will be added as later improvements. For scheduling an alarm event on RTC some useful code is present in Documentation/rtc.txt Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138: create static map for SRAMSekhar Nori2010-02-041-0/+8
| | | | | | | | | | | | | Create static map for internal SRAM and populate SRAM base and size in soc_info structure to allow SRAM allocation functions from arch/arm/mach-davinci/sram.c to work. On DA850 SRAM is used for suspend-to-RAM implementation in places where DDR2 cannot be accessed as its clocks are stopped. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138: unlock PLL registers during initSekhar Nori2010-02-041-6/+13
| | | | | | | | | | | | | | | | | On omap-l1 devices the PLL registers can be locked from writes. Currently the cpufreq rate setting code unlocks PLL0 before the write actually happens. With suspend support getting added PLL1 registers need be be unlocked as well. To facilitate this, unlock both PLLs during the init time itself. This also obviates the need to unlock PLL registers for each CPUFreq transtition. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da8xx/omapl1: add support for the second sysconfig moduleSekhar Nori2010-02-041-8/+12
| | | | | | | | | | | | | OMAP-L138 adds a second SYSCFG region having useful functionality like deep sleep, pull up/down control and SATA clock stop. This patch makes provision for accessing registers from second SYSCFG region in da8xx code. Note that OMAP-L137 has a single SYSCFG region. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138: avoid using separate initcall for initializing ↵Sekhar Nori2009-11-251-33/+31
| | | | | | | | | | | | | | | | | | regulator Using a device_initcall() for initializing the voltage regulator on DA850 is not such a good idea because it gets called for all platforms - even those who do not have a regulator implemented. This leads to a big fat warning message during boot-up when regulator cannot be found. Instead, tie initialization of voltage regulator to cpufreq init. Define a platform specific init call which in case of DA850 gets used for initializing the regulator. On other future platforms it can be used for other purposes. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138: Set ASYNC3 domain flag for McASPChaithrika U S2009-11-251-0/+1
| | | | | | | | In the McASP clock definition add a flag to indicate that the peripheral clock belongs to ASYNC3 clock domain. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
OpenPOWER on IntegriCloud