aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/board-da850-evm.c
Commit message (Collapse)AuthorAgeFilesLines
* ARM: davinci: da850 evm: change audio edma event queue to EVENTQ_0Manjunathappa, Prakash2011-12-211-1/+1
| | | | | | | | | | | | | | | | | | | commit f1b21c525693b0159aed83b5871f2d0f077f208e upstream. On OMAP-L138 platform, EDMA event queue 0 should be used for audio transfers so that they are not starved by video data moving on event queue 1. Commit 48519f0ae03bc7e86b3dc93e56f1334d53803770 (ASoC: davinci: let platform data define edma queue numbers) had a side-effect of changing this behavior by making the driver actually honor the platform data passed. Fix this now by passing event queue 0 as the queue to be used for audio transfers. Signed-off-by: Manjunathappa, Prakash <prakash.pm@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* ARM: davinci: da850 EVM: read mac address from SPI flashSudhakar Rajashekhara2011-10-031-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit 810198bc9c109489dfadc57131c5183ce6ad2d7d upstream. DA850/OMAP-L138 EMAC driver uses random mac address instead of a fixed one because the mac address is not stuffed into EMAC platform data. This patch provides a function which reads the mac address stored in SPI flash (registered as MTD device) and populates the EMAC platform data. The function which reads the mac address is registered as a callback which gets called upon addition of MTD device. NOTE: In case the MAC address stored in SPI flash is erased, follow the instructions at [1] to restore it. [1] http://processors.wiki.ti.com/index.php/GSG:_OMAP-L138_DVEVM_Additional_Procedures#Restoring_MAC_address_on_SPI_Flash Modifications in v2: Guarded registering the mtd_notifier only when MTD is enabled. Earlier this was handled using mtd_has_partitions() call, but this has been removed in Linux v3.0. Modifications in v3: a. Guarded da850_evm_m25p80_notify_add() function and da850evm_spi_notifier structure with CONFIG_MTD macros. b. Renamed da850_evm_register_mtd_user() function to da850_evm_setup_mac_addr() and removed the struct mtd_notifier argument to this function. c. Passed the da850evm_spi_notifier structure to register_mtd_user() function. Modifications in v4: Moved the da850_evm_setup_mac_addr() function within the first CONFIG_MTD ifdef construct. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* davinci: DA850 EVM: kill useless variableSergei Shtylyov2011-03-111-4/+1
| | | | | | | | | | Commit 75e2ea643fe43d5aa836475acee5bd97cd9ea4bf (davinci: DA850/OMAP-L138 EVM expander setup and UI card detection) introduced a useless variable: it's always set to 1 before it's checked in da850_evm_setup_nor_nand()... Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
* davinci: add spi devices support for da850/omap-l138/am18x evmSekhar Nori2011-03-111-0/+73
| | | | | | | | | | | | | | This patch adds the on-board SPI flash device to the DA850/OMAP-L138/AM18x EVM. It also registers the SPI flash device to the MTD subsystem. Based on SPI flash device support for MityDSP-L138F platform. Signed-off-by: Sekhar Nori <nsekhar@ti.com> [michael.williamson@criticallink.com: moved da850_evm_spi1_pdata to devices-da8xx.c] [michael.williamson@criticallink.com: moved da850evm_init_spi1 to devices-da8xx.c] Signed-off-by: Michael Williamson <michael.williamson@criticallink.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-1/+8
| | | | | | | | | | 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-1/+8
| | | | | | | | | | 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: am18x/da850/omap-l138 evm: add support for higher speed gradesSekhar Nori2010-12-221-2/+23
| | | | | | | | | | | | | | | | | | | | | | | Apart from the regular AM18x/DA850/OMAP-L138 SoC operating at 300MHz, these SoCs have variants that can operate at a maximum of 456MHz. Variants at 408Mhz and 375 Mhz are available as well. 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). The EVM hardware for all these variants is the same (except for the actual SoC populated). U-Boot on the EVM sets up ATAG_REVISION to inform the OS regarding the speed grade supported by the silicon. We use this information to pass on the speed grade information to the SoC code. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* da850-evm: add baseboard GPIO expander buttons, switches and LEDsBen Gardiner2010-12-221-0/+187
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds a pca953x platform device for the tca6416 found on the evm baseboard. The tca6416 is a GPIO expander, also found on the UI board at a separate I2C address. The pins of the baseboard IO expander are connected to software reset, deep sleep enable, test points, a push button, DIP switches and LEDs. Add support for the push button, DIP switches and LEDs and test points (as free GPIOs). The reset and deep sleep enable connections are reserved by the setup routine so that userspace can't toggle those lines. The existing tca6416-keypad driver was not employed because there was no apararent way to register the LEDs connected to gpio's on the tca6416 while simultaneously registering the tca6416-keypad instance. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Reviewed-by: Chris Cordahi <christophercordahi@nanometrics.ca> CC: Govindarajan, Sriramakrishnan <srk@ti.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> CC: Gabor Juhos <juhosg@openwrt.org> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* da850-evm: extract defines for SEL{A,B,C} pins in UI expanderBen Gardiner2010-12-221-12/+12
| | | | | | | | | | | | | The setup and teardown methods of the UI expander reference the SEL_{A,B,C} pins by 'magic number' in each function. This uses the common enum for their offsets in the expander setup and teardown functions. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Reviewed-by: Chris Cordahi <christophercordahi@nanometrics.ca> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> CC: Victor Rodriguez <vm.rod25@gmail.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* da850-evm: add UI Expander pushbuttonsBen Gardiner2010-12-221-0/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds EV_KEYs for each of the 8 pushbuttons on the UI board via a gpio-key device. The expander is a tca6416; it controls the SEL_{A,B,C} lines which enable and disable the peripherals found on the UI board in addition to the 8 pushbuttons mentioned above. The reason the existing tca6416-keypad driver is not employed is because there was no aparent way to keep the gpio lines used as SEL_{A,B,C} registered while simultaneously registering the pushbuttons as a tca6416-keypad instance. Some experimentation with the polling interval was performed; we were searching for the largest polling interval that did not affect the feel of the responsiveness of the buttons. It is very subjective but 200ms seems to be a good value that accepts firm pushes but rejects very light ones. The key values assigned to the buttons were arbitrarily chosen to be F1-F8. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Reviewed-by: Chris Cordahi <christophercordahi@nanometrics.ca> CC: Govindarajan, Sriramakrishnan <srk@ti.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> CC: Kevin Hilman <khilman@deeprootsystems.com> CC: Gabor Juhos <juhosg@openwrt.org> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* da850-evm, trivial: use da850_evm prefix for consistencyBen Gardiner2010-12-101-3/+3
| | | | | | | | | | There was a single case of 'da850evm' prefix in the board-da850-evm.c file where the reset of the prefixes were 'da850_evm'; change it to 'da850_evm' for consistency. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Acked-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850-evm: UI expander gpio_set_value can sleep, use _cansleepBen Gardiner2010-12-101-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | When the RMII PHY on the UI board is enabled with CONFIG_DA850_UI_RMII then then following will be printed to the console when warnings are also enabled: WARNING: at drivers/gpio/gpiolib.c:1567 __gpio_set_value+0x4c/0x5c() Modules linked in: [<c002c6ac>] (unwind_backtrace+0x0/0xf8) from [<c003b48c>] (warn_slowpath_common+0x4c/0x64) [<c003b48c>] (warn_slowpath_common+0x4c/0x64) from [<c003b4c0>] (warn_slowpath_null+0x1c/0x24) [<c003b4c0>] (warn_slowpath_null+0x1c/0x24) from [<c01aed60>] (__gpio_set_value+0x4c/0x5c) [<c01aed60>] (__gpio_set_value+0x4c/0x5c) from [<c0033bd4>] (da850_evm_ui_expander_setup+0x1e4/0x2 44) [<c0033bd4>] (da850_evm_ui_expander_setup+0x1e4/0x244) from [<c02e2e1c>] (pca953x_probe+0x1f8/0x29 0) <snip> Traced the WARN_ON to the gpio_set_value(rmii_sel,0) call in da850_evm_setup_emac_rmii. Replacing the call with the _cansleep variant results in no more warning. Also replacing the gpio_set_value calls in the teardown function. Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca> Reviewed-by: Chris Cordahi <christophercordahi@nanometrics.ca> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Merge branch 'davinci-next' into davinci-for-linusKevin Hilman2010-10-211-20/+72
|\ | | | | | | | | | | Conflicts: arch/arm/mach-davinci/board-da830-evm.c arch/arm/mach-davinci/board-da850-evm.c
| * arm/davinci: remove duplicated includeNicolas Kaiser2010-10-041-1/+0
| | | | | | | | | | | | | | Remove duplicated include. Signed-off-by: Nicolas Kaiser <nikai@nikai.net> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
| * davinci: cleanup mdio arch code and switch to phy_idCyril Chemparathy2010-09-241-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes davinci architecture code that has now been rendered useless by the previous patches in the MDIO separation series. In addition, the earlier phy_mask definitions have been replaced with corresponding phy_id definitions. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Tested-by: Michael Williamson <michael.williamson@criticallink.com> Tested-by: Caglar Akyuz <caglarakyuz@gmail.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
| * davinci: Add machine checks to DA8XX serial console init routinesMichael Williamson2010-09-241-0/+3
| | | | | | | | | | | | | | | | | | | | This patch adds machine checks in the serial console init routines for the DA8XX EVM boards. This is needed because there are other DA8XX based machines that use a different UART/tty as the console and may be included in a common kernel build. Signed-off-by: Michael Williamson <michael.williamson@criticallink.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
| * davinci: am18x/da850/omap-l138 evm: setup NAND flash timingSekhar Nori2010-09-241-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setup the NAND flash timings for DA850 EVM Before configuring the timing values, throughput calculation using dd command yielded 469 kB/s write and 966 kB/s read speed. After the timing configuration, the throughput was measured to be 2.4 MB/s write and 5 MB/s read. [Mukul Bhatnagar: actual calculation of timing values from the NAND datasheet] Signed-off-by: Sekhar Nori <nsekhar@ti.com> Cc: Mukul Bhatnagar <mbhatnagar@ti.com> Acked-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
| * DA850: move MII/RMII pin lists to the board fileSergei Shtylyov2010-09-241-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | 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-3/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/+1
| | | | | | | | | | | | | | | | | | 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: introduce support for AM1x ARM9 microprocessorsSekhar Nori2010-09-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Sitara AM17x SoCs from TI are an OMAP-L137 pin-to-pin compatible ARM9 microprocessor offering from TI. The Sitara AM18x SoCs from TI are an OMAP-L138 pin-to-pin compatible ARM9 microprocessor offering from TI. More information about these processors available at: www.ti.com/am1x Because of their compatibiliy with OMAP-L1x, the kernel support for OMAP-L1x is fully relevant to AM1x processors. This patch updates the Kconfig prompt and help text to include the AM1x part names to help users select configurations required for these parts easily. Also, the hardware information that shows up in /proc/cpuinfo is updated to show applicability of the respective OMAP-L1x EVMs for AM1x parts. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
| * davinci: da850 evm: sparse cleanup: make file local variables staticSekhar Nori2010-09-241-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without this cleanup, sparse checker reports warnings of the type: CHECK arch/arm/mach-davinci/board-da850-evm.c arch/arm/mach-davinci/board-da850-evm.c:112:22: warning: symbol 'da850_evm_nandflash_partition' was not declared. Should it be static? The nand flash partitions and regulator supplies are used within the EVM file and so should have been static This patch has been boot tested on DA830 and DA850 EVMs. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* | arm: remove machine_desc.io_pg_offst and .phys_ioNicolas Pitre2010-10-201-2/+0
|/ | | | | | | | | | | | | | | Since we're now using addruart to establish the debug mapping, we can remove the io_pg_offst and phys_io members of struct machine_desc. The various declarations were removed using the following script: grep -rl MACHINE_START arch/arm | xargs \ sed -i '/MACHINE_START/,/MACHINE_END/ { /\.\(phys_io\|io_pg_offst\)/d }' [ Initial patch was from Jeremy Kerr, example script from Russell King ] Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org> Acked-by: Eric Miao <eric.miao at canonical.com>
* Merge branch 'davinci-for-linus' of ↵Linus Torvalds2010-08-081-1/+51
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci * 'davinci-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci: davinci: dm646x EVM: Specify reserved EDMA channel/slots davinci: da8xx/omapl EVM: Specify reserved channels/slots davinci: support for EDMA resource sharing davinci: edma: provide ability to detect insufficient CC info data davinci: da8xx: sparse cleanup: remove duplicate entries in irq priorities davinci: DM365: fixed second serial port Davinci: tnetv107x evm board initial support Davinci: tnetv107x initial gpio support Davinci: tnetv107x soc support Davinci: tnetv107x decompresser uart definitions Davinci: generalized debug macros
| * davinci: da8xx/omapl EVM: Specify reserved channels/slotsRajashekhara, Sudhakar2010-08-051-1/+51
| | | | | | | | | | | | | | | | | | | | | | | | The drivers on da8xx/omapl EVMs do not utilize all the channels and slots provided by EDMA. Some of these are better utilitzed by the DSP on the SoC for speeding up codec operations. Reserve these channels/slots for the DSP. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* | Merge branch 'topic/asoc' into for-linusTakashi Iwai2010-08-051-1/+1
|\ \
| * | ASoC: davinci: let platform data define edma queue numbersSekhar Nori2010-07-201-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the EDMA queue to be used by for servicing ASP through internal RAM is fixed to EDMAQ_0 and that to service internal RAM from external RAM is fixed to EDMAQ_1. This may not be the desirable configuration on all platforms. For example, on DM365, queue 0 has large fifo size and is more suitable for video transfers. Having audio and video transfers on the same queue may lead to starvation on audio side. platform data as defined currently passes a queue number to the driver but that remains unused inside the driver. Fix this by defining one queue each for ASP and RAM transfers in the platform data and using it inside the driver. Since EDMAQ_0 maps to 0, thats the queue that will be used if the asp queue number is not initialized. None of the platforms currently utilize ping-pong transfers through internal RAM so that functionality remains unchanged too. This patch has been tested on DM644x and OMAP-L138 EVMs. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | davinci: da850/omap-l138 evm: account for DEFDCDC{2,3} being tied highSekhar Nori2010-07-281-0/+8
|/ | | | | | | | | | | | | Per the da850/omap-l138 Beta EVM SOM schematic, the DEFDCDC2 and DEFDCDC3 lines are tied high. This leads to a 3.3V IO and 1.2V CVDD voltage. Pass the right platform data to the TPS6507x driver so it can operate on the DEFDCDC{2,3}_HIGH register to read and change voltage levels. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
* davinci: da850 TPS6507x touch screen driver board dataTodd Fischer2010-05-281-0/+12
| | | | | | | | | | | The touch screen controller in the TPS6507x chip needs values that are dependent on the characteristics of the touch screen hardware being used in the board design. In addition, the board provides version information that is exposed via the kernel input sub-system. Signed-off-by: Todd Fischer <todd.fischer@ridgerun.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* mfd: Add tps6507x board data structureTodd Fischer2010-05-281-1/+6
| | | | | | | | | | | | Add mfd structure which refrences sub-driver initialization data. For example, for a giving hardware implementation, the voltage regulator sub-driver initialization data provides the mapping betten a voltage regulator and what the output voltage is being used for. Signed-off-by: Todd Fischer <todd.fischer@ridgerun.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* Davinci: aintc/cpintc - use ioremap()Cyril Chemparathy2010-05-131-9/+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: promote da8xx_pinmux_setup()Cyril Chemparathy2010-05-061-9/+9
| | | | | | | | Rename da8xx_pinmux_setup() to davinci_cfg_reg_list() and promote it for use in other SOCs that may need the ability to configure multiple pins in one shot. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* Davinci: cpintc host map configurationCyril Chemparathy2010-05-061-1/+1
| | | | | | | | | | | | | | | Host map configuration instructs the interrupt controller to route interrupt channels to FIQ or IRQ lines. Currently, DA8xx family of devices leave these registers at their reset-default values. TNETV107X however does not have sane reset defaults, and therefore this architecture needs to reconfigure the host-map such that channels 0 and 1 go to FIQ, and the remaining channels raise IRQs. This patch adds an optional host map argument to cp_intc_init() for this. Signed-off-by: Cyril Chemparathy <cyril@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138 EVM: register for suspend supportSekhar Nori2010-02-041-0/+17
| | | | | Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138: Enable 4-bit eccSudhakar Rajashekhara2010-02-041-0/+1
| | | | | | | | This patch initializes the platform data to enable 4-bit ecc support on DA850/OMAP-L138. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da850/omap-l138: Modify NOR partition infoSudhakar Rajashekhara2010-02-041-1/+13
| | | | | | | | | | | | | On DA850/OMAP-L138, NOR flash partition was starting from offset ZERO erasing the UBL and u-boot when the complete NOR is erased. This patch moves the start of the partition to 512K, after the bootloaders and u-boot env variables. This patch also creates a new partition on NOR Flash to store Linux kernel image. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: da8xx/omapl1: add support for the second sysconfig moduleSekhar Nori2010-02-041-1/+1
| | | | | | | | | | | | | 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>
* da850/omap-l138: add callback to control LCD panel powerChaithrika U S2009-12-161-10/+14
| | | | | | | | | | | Add the platform specific callback to control LCD panel and backlight power. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Acked-by: Kevin Hilman <khilman@deeprootsystems.com> Cc: Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* DA8xx/OMAP-L1xx: Add high speed SD/MMC capabilitiesChaithrika U S2009-11-251-0/+2
| | | | | | | | Include high speed capabilities in MMC/SD platform data for DA830/OMAP-L137 and DA850/OMAP-L138 EVMs. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM: register for cpuidle supportSekhar Nori2009-11-251-0/+5
| | | | | Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA8XX/OMAP-L1XX: fix compiler warningSudhakar Rajashekhara2009-11-251-1/+1
| | | | | | | | | | | | | | | | | | | When kernel is built with CONFIG_DEBUG_SECTION_MISMATCH=y option, using da8xx_omapl_defconfig, some warnings are observed: WARNING: vmlinux.o(.text+0xc2a4): Section mismatch in reference from the function da850_evm_setup_nor_nand() to the variable .init.data:da850_nand_pins The function da850_evm_setup_nor_nand() references the variable __initdata da850_nand_pins. This is often because da850_evm_setup_nor_nand lacks a __initdata annotation or the annotation of da850_nand_pins is wrong. This patch fixes such warnings. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138: eliminate static function declarationSudhakar Rajashekhara2009-11-251-52/+51
| | | | | | | | Eliminate the static function declaration by rearranging data in da850/omap-l138 board file. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM: simplify configuration of emac in MII/RMII modeSekhar Nori2009-11-251-20/+15
| | | | | | | | | | There are multiple steps in configuring the EMAC to MII or RMII mode. Current code implements them using multiple checks. Consolidate the multiple checks into a single if construct. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM: implement autodetect of RMII PHYSekhar Nori2009-11-251-22/+28
| | | | | | | | | | | | | | | | | | | | | Implement autodetection of RMII PHY by shifting the decision to use the RMII PHY to da850_evm_ui_expander_setup() from da850_evm_init() earlier. Without this patch, selecting RMII PHY in the UI expander menu will make the MII PHY unusable even though UI board is not connected. The actual configuration and registration of the EMAC device is delayed to device_initcall() so it happens after the UI card detection is complete. A side effect of this patch is the removal of a voilation of Documentation/SubmittingPatches section 2.2 in function da850_evm_init() Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* DaVinci: remove unneeded #include'sSergei Shtylyov2009-11-251-3/+0
| | | | | | | | | | There have accumulated quite a lot of them after the code reorganizations... In several cases I had to replace #include <linux/dma-mapping.h> which wasn't needed directly but happened to #include <linux/err.h> which was needed. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: RMII support for DA850/OMAP-L138 EVMChaithrika U S2009-11-251-3/+65
| | | | | | | | | | | | | | | | DA850/OMAP-L138 EVM has a RMII Ethernet PHY on the UI daughter card. The PHY is enabled by proper programming of the IO Expander (TCA6416) ports. Also for RMII PHY to work, the MDIO clock of MII PHY has to be disabled since both the PHYs have the same address. This is done via the GPIO2[6] pin. This patch adds support for RMII PHY. This patch also adds a menuconfig option to select one or no peripheral connected to expander. Currently, sub-options in this menu are RMII and no peripheral.This menuconfig option is similar to the one present for UI card on DA830/OMAP-L137 EVM. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM expander setup and UI card detectionChaithrika U S2009-11-251-28/+99
| | | | | | | | | | | DA850/OMAP-L138 EVM can be connected to an UI card which has various peripherals on it.The UI card has TCA6416 expander which can be probed to check whether the UI card is connected or not. If the UI card is connected, setup NOR and NAND devices. This is done via the expander setup callback. Signed-off-by: Chaithrika U S <chaithrika@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM: add support for TPS65070 PMICSekhar Nori2009-11-251-0/+153
| | | | | | | | | | | | | | | This patch adds support for using the TPS65070 PMIC found on the DA850/OMAP-L138 EVM. It defines the power rail consumer mapping and registers the the I2C based PMIC as a board device. The power rail constraints are derived from the maxmimum and minimum recommended operating condition values of the respective consumers derived from section 5.2 of the OMAP-L138 datasheet. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: DA850/OMAP-L138 EVM: register for CPUFreq supportSekhar Nori2009-11-251-0/+5
| | | | | Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
* davinci: Correct the GPIO number for LCD panel powerSudhakar Rajashekhara2009-11-251-1/+13
| | | | | | | | | | | | | | | On the latest DA850/OMAP-L138 EVM (Beta) the GPIO pin number of LCD panel power has changed. This patch takes care of this change. Software will support only Beta versions of DA850/OMAP-L138 EVM. In the process, add the missing entry for data pin 0 and remove the GPIO specific pins from da850_lcdcntl_pins structure. EVM specific muxing for LCD is being done in the board file now. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>