dedd5bd33900696f363b6169a41d7d585647d75f |
|
05-Mar-2012 |
Igor Grinberg <grinberg@compulab.co.il> |
ARM: OMAP3: cm-t3517: add EMAC support Add support for the EMAC Ethernet controller in the AM35xx SoC. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
baa9588344d35d751d6e2b1677ec67e7b32d2878 |
|
05-Nov-2011 |
Russell King <rmk+kernel@arm.linux.org.uk> |
ARM: restart: omap: use new restart hook Hook these platforms restart code into the new restart hook rather than using arch_reset(). Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
|
4e65331c6bb4a777bd61a4dac0daa9fc47777b63 |
|
10-Nov-2011 |
Tony Lindgren <tony@atomide.com> |
ARM: 7159/1: OMAP: Introduce local common.h files As suggested by Russell King - ARM Linux <linux@arm.linux.org.uk>, there's no need to keep local prototypes in non-local headers. Add mach-omap1/common.h and mach-omap2/common.h and move the local prototypes there from plat/common.h and mach/omap4-common.h. Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
|
6b2f55d7851aa358d3a99cff344c560c4967f042 |
|
06-Sep-2011 |
Marc Zyngier <marc.zyngier@arm.com> |
ARM: omap2plus: convert to CONFIG_MULTI_IRQ_HANDLER Convert the omap2plus platforms to be using CONFIG_MULTI_IRQ_HANDLER. Each machine is modified to provide either omap2_intc_handle_irq(), omap3_intc_handle_irq() or gic_handle_irq(). This allows for a major cleanup, removing the MULTI_OMAP setup from the interrupt path. Tested on both Panda and IGEPv2 (single kernel image) Tested-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
|
8f5b5a41ebc750ffcc2c410371b2b4998955709e |
|
23-Aug-2011 |
Tony Lindgren <tony@atomide.com> |
ARM: OMAP: Introduce SoC specific early_init Introduce them for each omap variant and just make them all call omap2_init_common_infrastructure for now. Do this for each board-*.c file except for board-generic and board-omap3beagle as they use the same machine ID for multiple SoCs. No functional changes. Signed-off-by: Tony Lindgren <tony@atomide.com>
|
a4ca9dbe44a167d63545c7ac2b5a36d7b0b415b6 |
|
23-Aug-2011 |
Tony Lindgren <tony@atomide.com> |
ARM: OMAP: Move omap2_init_common_devices out of init_early There's no need to call omap2_init_common_devices from init_early. It no longer does anything else except reprogram the memory timings for some boards, so it's better to do it later so we have a chance to get console messages if something goes wrong. Move it to happen after omap_serial_init gets called. And while patching it anyways, rename it to omap_sdrc_init as suggested by Benoit Cousson <b-cousson@ti.com>. Signed-off-by: Tony Lindgren <tony@atomide.com>
|
5e52b435b7bf0a884c8c4ad938180da6561ed5c0 |
|
06-Jul-2011 |
Nicolas Pitre <nicolas.pitre@linaro.org> |
ARM: mach-omap2: convert boot_params to atag_offset Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org> Acked-by: Tony Lindgren <tony@atomide.com> Acked-by: Arnd Bergmann <arnd@arndb.de>
|
7a559c7882db55c7a40dab19ea43ad747a51185a |
|
03-Jun-2011 |
Grazvydas Ignotas <notasas@gmail.com> |
omap: cleanup NAND platform data omap_nand_platform_data fields 'options', 'gpio_irq', 'nand_setup' and 'dma_channel' are never referenced by the NAND driver, yet various board files are initializing those fields. This is both incorrect and confusing, so remove them. This allows to get rid of a global variable in gpmc-nand.c. This also corrects an issue where some boards are trying to pass NAND 16bit flag through .options, but the driver is using .devsize instead and ignoring .options. Finally, .dev_ready is treated as a flag by the driver, so make it bool instead of a function pointer. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
e74984e46e899c22137a385869fb4f3ae756e3df |
|
30-Mar-2011 |
Tony Lindgren <tony@atomide.com> |
omap: Set separate timer init functions to avoid cpu_is_omap tests This is needed for the following patches so we can initialize the rest of the hardware timers later on. As with the init_irq calls, there's no need to do cpu_is_omap calls during the timer init as we only care about the major omap generation. This means that we can initialize the sys_timer with the .timer entries alone. Note that for now we just set stubs for the various sys_timer entries that will get populated in a later patch. The following patches will also remove the omap_dm_timer_init calls and change the init for the rest of the hardware timers to happen with an arch_initcall. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
|
741e3a89dee8a17aa9373975d51f130a65e1683d |
|
17-May-2011 |
Tony Lindgren <tony@atomide.com> |
omap: Use separate init_irq functions to avoid cpu_is_omap tests early This allows us to remove cpu_is_omap calls from init_irq functions. There should not be any need for cpu_is_omap calls as at this point. During the timer init we only care about SoC generation, and not about subrevisions. The main reason for the patch is that we want to initialize only minimal omap specific code from the init_early call. Signed-off-by: Tony Lindgren <tony@atomide.com> Reviewed-by: Kevin Hilman <khilman@ti.com>
|
1704bf15deb6de20f8f4272c8d8232b36bbc7484 |
|
30-May-2011 |
Igor Grinberg <grinberg@compulab.co.il> |
arm: omap2plus: move NAND_BLOCK_SIZE out of boards Several boards defining mtd partitions also defined NAND_BLOCK_SIZE as SZ_128K. Move the define to common-board-devices.h This removes multiple defines of NAND_BLOCK_SIZE. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren <tony@atomide.com>
|
026fe79d75c3a7a257ca72250f46b472835784c9 |
|
30-May-2011 |
Igor Grinberg <grinberg@compulab.co.il> |
arm: omap3: cm-t3517: fix section mismatch warning WARNING: arch/arm/mach-omap2/built-in.o(.text+0x11014): Section mismatch in reference from the function cm_t3517_init_usbh() to the (unknown reference) .init.data:(unknown) The function cm_t3517_init_usbh() references the (unknown reference) __initdata (unknown). This is often because cm_t3517_init_usbh lacks a __initdata annotation or the annotation of (unknown) is wrong. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
bc593f5d787d0a015539e21868302fb44a47c3e3 |
|
03-May-2011 |
Igor Grinberg <grinberg@compulab.co.il> |
arm: omap2plus: GPIO cleanup use gpio_request_<one|array>() instead of multiple gpiolib calls, remove unneeded variables, etc. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
c7ecea24e26037fdfe9cbe83c9821689336f70d5 |
|
11-Mar-2011 |
Tony Lindgren <tony@atomide.com> |
omap2+: mux: Fix compile when CONFIG_OMAP_MUX is not selected Fix compile when CONFIG_OMAP_MUX is not selected Signed-off-by: Tony Lindgren <tony@atomide.com>
|
9e64bb1e9f0613093b3e34ac5402fcfef0dcc35a |
|
01-Mar-2011 |
Keshava Munegowda <keshava_mgowda@ti.com> |
arm: omap: usb: Invoke usbhs core device initialization The usbhs intialization is invoked by all omap3 and omap4 variant board files. Signed-off-by: Keshava Munegowda <keshava_mgowda@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
|
181b250cf53233a7a7c6d7e1e9df402506712e93 |
|
01-Mar-2011 |
Keshava Munegowda <keshava_mgowda@ti.com> |
arm: omap: usb: create common enums and structures for ehci and ohci Create the ehci and ohci specific platform data structures. The port enum values are made common for both ehci and ohci. Signed-off-by: Keshava Munegowda <keshava_mgowda@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
|
e41cccfe794d188b0ae7f17f01692bcbc0e0dc87 |
|
24-Feb-2011 |
Tony Lindgren <tony@atomide.com> |
omap2+: Minimize board specific init_early calls We should only call init_common_infrastructure and init_common_devices from init_early. Signed-off-by: Tony Lindgren <tony@atomide.com>
|
3dc3bad6f1b316d79d9d1d596a590b5097cb3dc4 |
|
15-Feb-2011 |
Russell King - ARM Linux <linux@arm.linux.org.uk> |
ARM: OMAP2: use early init hook Move non-mapping and non-irq initialization code out of .map_io and .init_irq respectively into the new init_early hook. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
2216b436ed8788f1a6d51b136ed1421956aa18e0 |
|
13-Jan-2011 |
Igor Grinberg <grinberg@compulab.co.il> |
arm: omap3: cm-t3517: minor comment fix offsets in the comment were wrong - fix this. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
fec5568cbcf3b5d701d2adf9a22f0110bcc6eb33 |
|
13-Jan-2011 |
Igor Grinberg <grinberg@compulab.co.il> |
arm: omap3: cm-t3517: rtc fix Fix rtc gpios and mux Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
4805734bcc5a6b28b527a13a5c1603a2912c9f48 |
|
21-Dec-2010 |
Paul Walmsley <paul@pwsan.com> |
OMAP2+: io: split omap2_init_common_hw() Split omap2_init_common_hw() into two functions. The first, omap2_init_common_infrastructure(), initializes the hwmod code and data, the OMAP PM code, and the clock code and data. The second, omap2_init_common_devices(), handles any other early device initialization that, for whatever reason, has not been or cannot be moved to initcalls or early platform devices. This patch is required for the hwmod postsetup patch, which allows board files to change the state that hwmods should be placed into at the conclusion of the hwmod _setup() function. For example, for a board whose creators wish to ensure watchdog coverage across the entire kernel boot process, code to change the watchdog's postsetup state will be added in the board-*.c file between the omap2_init_common_infrastructure() and omap2_init_common_devices() function calls. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Tony Lindgren <tony@atomide.com>
|
77640aabd7558e43b65bc1a0311be2dbb42c3ff8 |
|
08-Dec-2010 |
Varadarajan, Charulatha <charu@ti.com> |
OMAP: GPIO: Implement GPIO as a platform device Implement GPIO as a platform device. GPIO APIs are used in machine_init functions. Hence it is required to complete GPIO probe before board_init. Therefore GPIO device register and driver register are implemented as postcore_initcalls. omap_gpio_init() does nothing now and this function would be removed in the next patch as it's usage is spread across most of the board files. Inorder to convert GPIO as platform device, modifications are required in clockxxxx_data.c file for OMAP1 so that device names can be used to obtain clock instead of getting clocks by name/NULL ptr. Use runtime pm APIs (pm_runtime_put*/pm_runtime_get*) for enabling or disabling the clocks, modify sysconfig settings and remove usage of clock FW APIs. Note 1: Converting GPIO driver to use runtime PM APIs is not done as a separate patch because GPIO clock names are different for various OMAPs and are different for some of the banks in the same CPU. This would need usage of cpu_is checks and bank id checks while using clock FW APIs in the gpio driver. Hence while making GPIO a platform driver framework, PM runtime APIs are used directly. Note 2: While implementing GPIO as a platform device, pm runtime APIs are used as mentioned above and modification is not done in gpio's prepare for idle/ resume after idle functions. This would be done in the next patch series and GPIO driver would be made to use dev_pm_ops instead of sysdev_class in that series only. Due to the above, the GPIO driver implicitly relies on CM_AUTOIDLE = 1 on its iclk for power management to work, since the driver never disables its iclk. This would be taken care in the next patch series (see Note 3 below). Refer to http://www.mail-archive.com/linux-omap@vger.kernel.org/msg39112.html for more details. Note 3: only pm_runtime_get_sync is called in gpio's probe() and pm_runtime_put* is never called. This is to make the implementation similar to the existing GPIO code. Another patch series would be sent to correct this. In OMAP3 and OMAP4 gpio's debounce clocks are optional clocks. They are enabled/ disabled whenever required using clock framework APIs TODO: 1. Cleanup the GPIO driver. Use function pointers and register offest pointers instead of using hardcoded values 2. Remove all cpu_is_ checks and OMAP specific macros 3. Remove usage of gpio_bank array so that only instance specific information is used in driver code 4. Rename 'method'/ avoid it's usage 5. Fix the non-wakeup gpios handling for OMAP2430, OMAP3 & OMAP4 6. Modify gpio's prepare for idle/ resume after idle functions to use runtime pm implentation. Signed-off-by: Charulatha V <charu@ti.com> Signed-off-by: Rajendra Nayak <rnayak@ti.com> Reviewed-by: Basak, Partha <p-basak2@ti.com> Acked-by: Kevin Hilman <khilman@deeprootsystems.com> [tony@atomide.com: updated for bank specific revision and updated boards] Signed-off-by: Tony Lindgren <tony@atomide.com>
|
bc487fb341af05120bccb9f59ce76302391dcc77 |
|
22-Oct-2010 |
Anand Gadiyar <gadiyar@ti.com> |
omap: complete removal of machine_desc.io_pg_offst and .phys_io Commit ab69bcd66fb4be64edfc767365cb9eb084961246 (arm: remove machine_desc.io_pg_offst and .phys_io) could not update the new boards in the omap tree. This causes the build of omap2plus_defconfig to fail. Fix this. Signed-off-by: Anand Gadiyar <gadiyar@ti.com> Cc: Nicolas Pitre <nicolas.pitre@linaro.org> Cc: Eric Miao <eric.miao at canonical.com> [tony@atomide.com: updated description] Signed-off-by: Tony Lindgren <tony@atomide.com>
|
4814ced5116e3b73dc4f63eec84999739fc8ed11 |
|
08-Oct-2010 |
Paul Walmsley <paul@pwsan.com> |
OMAP: control: move plat-omap/control.h to mach-omap2/control.h Only OMAP2+ platforms have the System Control Module (SCM) IP block. In the past, we've kept the SCM header file in plat-omap. This has led to abuse - device drivers including it; includes being added that create implicit dependencies on OMAP2+ builds; etc. In response, move the SCM headers into mach-omap2/. As part of this, remove the direct SCM access from the OMAP UDC driver. It was clearly broken. The UDC code needs an indepth review for use on OMAP2+ chips. Signed-off-by: Paul Walmsley <paul@pwsan.com> Cc: Cory Maccarrone <darkstar6262@gmail.com> Cc: Kyungmin Park <kyungmin.park@samsung.com>
|
b6a26b4b87d7b030a546e7bdaf390ffc58323f36 |
|
21-Sep-2010 |
Igor Grinberg <grinberg@compulab.co.il> |
omap3: cm-t3517: add support for TI HECC add support for TI HECC. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
ec34fccd3a8ed4997c38797b49e37535ad387401 |
|
21-Sep-2010 |
Igor Grinberg <grinberg@compulab.co.il> |
omap3: cm-t3517: add support for NAND flash add support for NAND flash. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
525d75b31bc97354870b5991d57b2607d7b88602 |
|
21-Sep-2010 |
Igor Grinberg <grinberg@compulab.co.il> |
omap3: cm-t3517: add support for usb host add support for hsusb host ports 1, 2 and on-module usb hub. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
46893a56aad011764003703b06303515ea670c57 |
|
21-Sep-2010 |
Igor Grinberg <grinberg@compulab.co.il> |
omap3: cm-t3517: add support for v3020 rtc add support for v3020 rtc. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|
d04b620e6e6e72a95b7b88ccb7b002cb8f6b8113 |
|
21-Sep-2010 |
Igor Grinberg <grinberg@compulab.co.il> |
omap3: Introduce CompuLab CM-T3517 module Add basic suppot, enable uart and led. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Tony Lindgren <tony@atomide.com>
|