summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/board-dt-sam9.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ARM: at91: change board files into SoC filesNicolas Ferre2015-02-021-90/+0
| | | | | | | As board files are now DT only and can address all aspects of the SoC family, we can rename them so that the mach-at91 directory looks cleaner. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: fix ordering of SRAM and PM initializationNicolas Ferre2015-01-261-6/+6
| | | | | | | | | The PM initialization needs internal SRAM for allocating a gen_pool and use it to store its PM code. So we need to have of_platform_populate() before this code. Suggested-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: sam9: set arm_pm_idle from sam9_dt_device_initAlexandre Belloni2015-01-261-0/+7
| | | | | | | | | | As all sam9 SoCs are setting arm_pm_idle to at91sam9_idle(), do it from sam9_dt_device_init(). Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Suggested-by: Arnd Bergmann <arnd@arndb.de> [nicolas.ferre@atmel.com: adapt patch to newer series] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: mark const init data with __initconst instead of __initdataAlexandre Belloni2015-01-261-1/+1
| | | | | | | | | | | | | | | As long as there is no other non-const variable marked __initdata in the same compilation unit it doesn't hurt. If there were one however compilation would fail with error: $variablename causes a section type conflict because a section containing const variables is marked read only and so cannot contain non-const variables. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> [nicolas.ferre@atmel.com: update the paths after having re-arranged the patches] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: fix PM initialization for newer SoCsNicolas Ferre2015-01-261-0/+20
| | | | | | | | Newer SoCs: at91sam9x5, at91sam9n12, sama5d3 and sama5d4 embed a DDR controller and have a different PMC status register layout than the at91sam9g45. Create another at91_sam9x5_pm_init() function to match this compatibility. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: pm: prepare for multiplatformAlexandre Belloni2015-01-161-0/+27
| | | | | | | | | Split at91_pm_init() in three variants that are called by the respective SoCs .init_machine. This allows to remove the of_machine_is_compatible() calls and move at91_pm_init() out of arch_initcall() which is required for multiplatform. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: remove unused board.h fileArnd Bergmann2014-12-031-1/+0
| | | | | | | | All functions declared in this file are gone. Signed-off-by: Arnd Bergmann <arnd@arndb.de> [nicolas.ferre@atmel.com: re-order patches so modify board-dt-sam9] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: remove legacy IRQ driver and related codeNicolas Ferre2014-11-271-1/+0
| | | | | | | | | | | | | | | | | | | | Remove irc.c and associated header file. The related code was idendified by the CONFIG_OLD_IRQ_AT91 option that was removed previously. It has been spotted by following coccinelle semantic match: @rule1@ expression E; statement S; @@ ( - if (IS_ENABLED(CONFIG_OLD_IRQ_AT91)) S | - if (IS_ENABLED(CONFIG_OLD_IRQ_AT91) && E) S ) Cc: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Boris BREZILLON <boris.brezillon@free-electrons.com>
* ARM: at91: dt: Remove init_time definitionsMaxime Ripard2014-09-031-11/+0
| | | | | | | | | | | | | | | The current AT91 DT boards have a completely generic init_time definition. Remove them from the machine declaration. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Conflicts: arch/arm/mach-at91/board-dt-sam9.c arch/arm/mach-at91/board-dt-sama5.c
* ARM: at91: PIT: Rework probe functionsMaxime Ripard2014-09-031-1/+2
| | | | | | | | | | | | | | | | | | | | The PIT timer driver until now had a single probe function, disregarding wether it was probed through DT or in the old-style way. This code later on was calling some DT function to retrieve the proper values for its base address, interrupts and clocks. While this was working, it was preventing the usage of CLOCKSOURCE_OF_DECLARE, and the two different probe path were not as clearly separated as they could be. Rework the probe path to take this into account, and switch to CLOCKSOURCE_OF_DECLARE. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Acked-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: make use of the new AIC driver for dt enabled boardsBoris BREZILLON2014-08-191-13/+0
| | | | | | | | | | | | | | | | Remove selection of OLD_IRQ_AT91 when selecting dt boards. Select ATMEL_AIC_IRQ for sama5 SoCs (a kernel compiled for this SoC will always use ATMEL_AIC_IRQ driver). Select ATMEL_AIC_IRQ for at91rm9200 and at91sam9 SoCs only if OLD_IRQ_AT91 is not selected (which means we are compiling a pure DT kernel, without any legacy board support). Remove specific irq init code in all dt board files: this init procedure is automatically handled in of_irq_init which is called by the arm irq core code and is in charge of calling the appropriate aic init functions. Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: prepare sam9 dt boards transition to common clkBoris BREZILLON2014-03-121-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | This patch prepare the transition to common clk for sam9 dt boards by replacing the timer init callback. Clocks registration cannot be done in early init callback (as formerly done by the old clk implementation) because it requires dynamic allocation which is not ready yet during early init. In the other hand, at91 clocks must be registered before at91sam926x_pit_init is called because PIT (Periodic Interval Timer) driver request the master clk (mck). A new function (at91sam9_dt_timer_init) is created to fullfil these needs. This function registers all at91 clks using the dt definition before calling the PIT init function. The device tree clock registration is enabled only if common clk is selected. Else the old clk registration is been done during at91_dt_initialize call. Signed-off-by: Boris BREZILLON <b.brezillon@overkiz.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
* ARM: at91: remove init_machine() as default is suitableNicolas Ferre2013-10-161-7/+0
| | | | | | | | | | Since 883a106b0866ca8d75b5520bdb3ca1cf8e3730ba (ARM: default machine descriptor for multiplatform) we can remove the SoC-specific callback init_machine() to use the default code. This cleans up the code and reduces the number of lines. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* ARM: at91: rename board-dt to more specific name board-dt-sam9Jean-Christophe PLAGNIOL-VILLARD2013-03-131-0/+59
We will produce a board-dt file per SoC core type. That will ease code readability and will prevent from including superfluous code for supporting machines that will never be compiled together (particularly the ARM9 and C-A5 upcoming SoCs). Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> [nicolas.ferre@atmel.com: modify commit message] Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>