summaryrefslogtreecommitdiff
path: root/arch/arm/mach-shmobile/board-koelsch-reference.c
AgeCommit message (Collapse)Author
2014-06-02Merge tag 'boards-for-3.16' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc into next Pull ARM SoC board support updates from Olof Johansson: "The bulk of this branch is updates for Renesas Shmobile. They are still doing some enablement for classic boards first, and then come up with DT bindings when they've had a chance to learn more about the hardware. Not necessarily a bad way to go about it, and they're looking at moving some of the temporary board code resulting from it to drivers/staging instead to avoid the churn here. As a result of the shmobile clock cleanups, we end up merging quite a bit of SH code here as well. We ended up merging it here instead of in the cleanup branch due to the other board changes depending on it" * tag 'boards-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (130 commits) ARM: davinci: remove checks for CONFIG_USB_MUSB_PERIPHERAL ARM: add drivers for Colibri T30 to multi_v7_defconfig ARM: shmobile: Remove Genmai reference DTS ARM: shmobile: Let Genmai multiplatform boot with Genmai DTB ARM: shmobile: Sync Genmai DTS with Genmai reference DTS ARM: shmobile: genmai-reference: Remove legacy clock support ARM: shmobile: Remove non-multiplatform Genmai reference support ARM: configs: enable XHCI mvebu support in multi_v7_defconfig ARM: OMAP: replace checks for CONFIG_USB_GADGET_OMAP ARM: OMAP: AM3517EVM: remove check for CONFIG_PANEL_SHARP_LQ043T1DG01 ARM: OMAP: SX1: remove check for CONFIG_SX1_OLD_FLASH ARM: OMAP: remove some dead code ARM: OMAP: omap3stalker: remove two Kconfig macros ARM: tegra: tegra_defconfig updates ARM: shmobile: r7s72100: use workaround for non DT-clocks ARM: shmobile: Add forward declaration of struct clk to silence warning ARM: shmobile: r7s72100: remove SPI DT clocks from legacy clock support ARM: shmobile: r7s72100: add spi clocks to dtsi ARM: shmobile: r7s72100: remove I2C DT clocks from legacy clock support ARM: shmobile: r7s72100: add i2c clocks to dtsi ...
2014-05-14ARM: shmobile: koelsch: Enable SCIF0 and SCIF1 serial ports in DTLaurent Pinchart
SCIF0 and SCIF1 are used as debug serial ports. Enable them and configure pinmuxing appropriately. We can now remove the clkdev registration hack for SCIF devices from the Koelsch reference board file. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> [horms+renesas@verge.net.au: added aliases to avoid device renumbering] [horms+renesas@verge.net.au: resolved conflicts] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-05-12ARM: shmobile: Use r8a7791 DT CPU Frequency for KoelschMagnus Damm
Convert the Koelsch board support to use shmobile_init_delay() to be able to migrate away from per-SoC delay setup functions. Signed-off-by: Magnus Damm <damm+renesas@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-05-11ARM: shmobile: r8a7791: Switch to new style CMT deviceLaurent Pinchart
The CMT (Compare Match Timer) driver implements a new style of platform data that handles the timer as a single device with multiple channel. Switch from the old-style platform data to the new-style platform data. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> [horms+renesas@verge.net.au resolved conflict: use clk_names] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-04-14ARM: shmobile: Add Koelsch clock workarounds for SDHIMagnus Damm
Add SDHI0, SDHI1 and SDHI2 to the clock workaround list for Koelsch multiplatform. Without these additional lines wakeup from Suspend-to-RAM never happens. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-04-14ARM: shmobile: koelsch-reference: Annotate clk_enables as __initconstSimon Horman
Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
2014-04-14ARM: shmobile: koelsch-reference: Work around core clock issuesGeert Uytterhoeven
Due to issues with runtime PM clock management, clocks not explicitly managed by their drivers may not be enabled at all, or be inadvertently disabled by the clk_disable_unused() late initcall. Until this is fixed, add a temporary workaround, calling shmobile_clk_workaround() with enable == true. For now this enables the clocks for: ether, i2c2, msiof0, qspi_mod, and thermal. More clocks can be added if needed. Signed-off-by: Geert Uytterhoeven <geert+renesas@linux-m68k.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-04-14ARM: shmobile: koelsch: Annotate clk_names with __initconstSimon Horman
Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
2014-04-14ARM: shmobile: Use shmobile_clk_workaround() on KoelschMagnus Damm
Convert the Koelsch DT reference code to use the newly introduced function shmobile_clk_workaround(). Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-02-18ARM: shmobile: Remove Koelsch DT reference legacy clock bitsMagnus Damm
Koelsch DT reference is these days built for multiplatform only which means that CCF comes with the package. Remove unused legacy code ifdefs to clean up the code. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-02-17ARM: shmobile: koelsch-reference: Add DU deviceLaurent Pinchart
The DU device has no DT bindings yet, instantiate it as a platform device for now. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Magnus Damm <damm@opensource.se> [horms+renesas@verge.net.au: omitted DTS portion] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-02-17ARM: shmobile: koelsch-reference: Refactor clock lookup hackLaurent Pinchart
Make the clock lookup hack more generic to ease the addition of more devices. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2014-02-04ARM: shmobile: koelsch: fix error return code check from clk_get()Ben Dooks
The koelsch_add_standard_devices() function calls clk_get() but then fails to check that it returns an error pointer instead of NULL on failure. This was added by f31239ef ("ARM: shmobile: koelsch-reference: Instantiate clkdevs for SCIF and CMT") in Simon Horman's renesas-boards2-for-v3.14 tag. The issue is not serious as it does not cause a crash and seems to not be actually causing any issues now the other clock bugs have been fixed. Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [horms+renesas@verge.net.au: tweaked changelog] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-19ARM: shmobile: Let Koelsch multiplatform boot with Koelsch DTBLaurent Pinchart
Let the multiplatform Koelsch support boot with the legacy DTS for Koelsch as well as the Koelsch reference DTS. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-19ARM: shmobile: koelsch-reference: Instantiate clkdevs for SCIF and CMTLaurent Pinchart
Now that the common clock framework is supported, the clock lookup entries in clock-r8a7791.c are not registered anymore. Devices must instead reference their clocks in the device tree. However, SCIF and CMT devices are still instantiated through platform code, and thus need a clock lookup entry. Retrieve the SCIF and CMT clock entries by name and register clkdevs for the corresponding devices. This will be removed when the SCIF and CMT devices will be instantiated from the device tree. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-19ARM: shmobile: koelsch-reference: Remove duplicate CCF initializationLaurent Pinchart
The common clock framework is initialized in the rcar_gen2_init_timer() function, remove the of_clk_init() call. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-10ARM: shmobile: Use ->init_late() on KoelschMagnus Damm
Hook in shmobile_init_late() on Koelsch. This enables some PM related things like CPUIdle and Suspend-to-RAM. With this patch applied it is possible to use Suspend-to-RAM: # echo enabled > /sys/class/tty/ttySC6/power/wakeup # echo mem > /sys/power/state (wake by sending a character on the serial console) Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-10ARM: shmobile: Initial r8a7791 and Koelsch multiplatform supportMagnus Damm
Add Koelsch and r8a7791 to CONFIG_SHMOBILE_MULTI. At this point CCF is not yet supported so you cannot run this code yet. For CCF support to happen several different components are needed, and this is one simple portion that moves us forward. Other patches need to build on top of this one. Koelsch board support exists in 3 flavors: 1) SHMOBILE_MULTI, MACH_KOELSCH - board-koelsch-reference.c (CCF + DT) 2) SHMOBILE, MACH_KOELSCH_REFERENCE - board-koelsch-reference.c (DT) 3) SHMOBILE, MACH_KOELSCH - board-koelsch.c (legacy C code) When CCF is done then 2) will be removed. When 1) includes same features as 3) then 3) will be removed. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-10ARM: shmobile: r8a7791 Koelsch DT reference C bitsMagnus Damm
Add DT reference support for the r8a7791 Koelsch board. This board support file will be used together with common clocks and multiplatform in the future. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>