summaryrefslogtreecommitdiff
path: root/arch/arm/mach-shmobile
AgeCommit message (Collapse)Author
2013-07-17ARM: shmobile: select the fixed regulator driver on BockWKuninori Morimoto
34767f8dccc326026f97cd63f759dd36bd83502d (ARM: mach-shmobile: select the fixed regulator driver on several boards) decided to select fixed regulator driver on Kconfig. BockW follows same style. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> [horms+renesas@verge.net.au: Change mach-shmobile to shmobile in changelog] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: lager: add MMCIF supportGuennadi Liakhovetski
Add support for the MMCIF1 interface on Lager. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: armadillo800eva: add DMA support to MMCIFGuennadi Liakhovetski
Add DMA slave IDs to MMCIF Tx and Rx channels. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Minor update for the Lager DT reference codeMagnus Damm
Update the Lager DT reference code to get rid of the redundant irqchip header and also make lager_add_standard_devices() static. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: lager: Add DT referenceSimon Horman
This is sufficient to allow boot of the Lager board with a console without boards-lager.c compiled into the kernel. This is an example of a minimal but still useful initialisation of the board using DT as much as possible. As such it is the same as the boot of Lager that can be achieved without a board file. The intention of adding this file is to facilitate further work to allow board specific devices to be initialised via DT. Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: ape6evm-reference: add CPUFreq supportGuennadi Liakhovetski
Add CPUFreq support to ape6evm-reference, using a max8973 regulator, that is supplying V_DVFS for the 4 CA15 cores on r8a73a4. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: ape6evm: add DT referenceGuennadi Liakhovetski
This patch adds a sample DT-based APE6EVM "reference" implementation. The use of platform-specific C-code should be avoided with this configuration as much as possible. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Setup r8a7790 arch timer based on MD pinsMagnus Damm
Update the r8a7790 arch timer setup code to configure the frequency dynamically at boot time. This means that the arch timer driver will be able to detect a timer frequency that has been calculated based on the MD pins instead of a fixed and potentially incorrect 13 MHz. With this patch applied the Linux kernel will correctly support the r8a7790 Lager board that uses a 20 Mhz EXTAL. The arch timer will operate on 10 MHz and the Linux arch timer driver will be correctly configured to use 10 MHz. Without this patch the 20 MHz EXTAL will be used to drive the arch timer at 10 MHz, but the Linux arch timer driver will believe it is counting at 13 Mhz. Reported-by: Ulrich Hecht <ulrich.hecht@gmail.com> Signed-off-by: Magnus Damm <damm@opensource.se> Tested-by: Ulrich Hecht <ulrich.hecht@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Introduce r8a7790_read_mode_pins()Magnus Damm
Break out the r8a7790 boot mode code into a separate function so it can be shared by multiple users. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a7740: add MMCIF DMA definitionsGuennadi Liakhovetski
Add DMA channel slave IDs and configuration entries for the r8a7740 MMCIF controller. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Disconnect EMEV2 SMP code from clocksMagnus Damm
Update the EMEV2 SMP code to access the SMU directly instead of relying on help from the legacy clock code. This change moves us one step closer to common clocks. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Make r8a73a4 Arch timer optionalMagnus Damm
Update the r8a73a4 code to allow using other timers than Arch timer for clock event Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Add r8a73a4 CMT10 clock eventMagnus Damm
Add clock event support for CMT1 timer channel 0 to the r8a73a4 SoC code. The CMT is used together with a 32KHz clock in this case. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Make r8a7790 Arch timer optionalMagnus Damm
Update the r8a7790 code to allow using other timers than Arch timer for clock events. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Add r8a7790 CMT00 clock eventMagnus Damm
Add clock event support for CMT0 timer channel 0 to the r8a7790 SoC code. On most ARM mach-shmobile the CMT is hooked up to a 32KHz clock but on r8a7790 a 31.7KHz clock is instead used. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Sort r8a7790 MSTP entriesMagnus Damm
The r8a7790 MSTP bits should be kept sorted in the same way as on other mach-shmobile SoCs. Move the HSCIF and thermal bits to clean up the current state. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: add clocks for I2C controllersGuennadi Liakhovetski
r8a73a4 SoCs have numerous I2C controllers, of which 9 are compatible with the i2c-sh_mobile.c driver. This patch adds clock definitions for them. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: add Z2 clock supportGuennadi Liakhovetski
The Z2 clock on r8a73a4 is used to clock the 4 Cortex A7 cores on the SoC. Add a definition for this clock to later use it from the arm_big_little CPUFreq driver. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: safeguard against wrong clk_set_rate() usesGuennadi Liakhovetski
clk_set_rate() should only be called with exact rates, returned by clk_round_rate(). However, it is still good to verify, that the value, passed to clock's .set_rate() method is at least valid. This patch adds such a check for the Z-clock on r8a73a4. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: implement CPU clock scaling for CPUFreqGuennadi Liakhovetski
This patch adds support for the Z-clock on r8a73a4 SoCs, which is driving the Cortex A15 core, and a "cpufreq-cpu0" platform device. Adding an "operating-points" property to the CPU0 DT node and a regulator, this patch allows platforms to use the generic cpufreq-cpu0 driver to use SoC's DVFS capabilities. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: wait for completion when kicking the clockGuennadi Liakhovetski
To reconfigure clocks, controlled by FRQCRA and FRQCRB, a kick bit has to be set and to make sure the setting has taken effect, it has to be read back repeatedly until it is cleared by the hardware. This patch adds the waiting part, that was missing until now. Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a7790: add thermal driver supportSimon Horman
The current temperature may be read using: cat /sys/class/thermal/thermal_zone0/temp Based on similar work for the r8a73a4 by Kuninori Morimoto. Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a7790: add clocks for thermalSimon Horman
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: KZM9D DT reference implementationMagnus Damm
Add a DT reference implementation for the KZM9D board. Only DT devices are used in this case. UART, STI, GPIO and SMP / GIC are all provided by emev2.dtsi. There is still a board specific C file used for enabling legacy SH clocks. This file will be removed after we have moved over to common clocks. Signed-off-by: Magnus Damm <damm@opensource.se> [horms+renesas@verge.net.au: Do not include trailing blank line in board-kzm9d-reference.c ] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: EMEV2 map_io updateMagnus Damm
Update the EMEV2 struct map_desc to exclude the SMU and also include the ->map_io() callback in the DT version of EMEV2 board support. The EMEV2 SMP code can these days perform ioremap() early on without the SMU information in the io_desc[]. To correctly support SMP in case of DT-only board support then the ->map_io() callback is needed. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Use DT for SMP on EMEV2 and KZM9DMagnus Damm
Rework the EMEV2 SMP code to rely on DT for CPU information instead of reading out number of CPU cores from the SCU. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Use DT for GIC on EMEV2 and KZM9DMagnus Damm
Remove the C version of the EMEV2 GIC setup code, instead rely on GIC information provided by DT. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: mach-shmobile: ag5evm: Use bd6107 backlight driverLaurent Pinchart
Replace the backlight callback with a bd6107 backlight platform device. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: mach-shmobile: mackerel: Use gpio-backlightLaurent Pinchart
Replace the backlight callback with a gpio-backlight platform device. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Update romImage to relocate appended DTBMagnus Damm
Instead of relying of MACH_TYPE for board identification, update the romImage code to relocate an appended DTB to the beginning of RAM. This implementation is independent of ARM_APPENDED_DTB, this because it is necessary to copy the DTB to memory so the kernel can access it. Without this patch Mackerel does not boot via the Mask ROM over USB (r_usb_boot) - this since non-DT boot was broken ages ago in commit: 0ce53cd ARM: mach-shmobile: Use DT_MACHINE for mackerel Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused mach/dma.hMagnus Damm
Remove mach-shmobile mach/dma.h since it only seems to be used on non-mach-shmobile platforms. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a7778: remove r8a7778_init_irq()Kuninori Morimoto
This patch removes r8a7778_init_irq(), since no-one is using it. And now, there is no reason to have r8a7778_init_irq_common(). r8a7778_init_irq_dt() includes it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Fix EMEV2 clock comment typoMagnus Damm
Update the STI timer frequency comment to 32.768 kHz to fix 37 kHz typo. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Make EMEV2 platform devices more compactMagnus Damm
Convert the EMEV2 SoC device setup code from using very verbose resources and static platform devices to the same style as more recent boards. This reduces the size of the code. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused EMEV2/KZM9D early consoleMagnus Damm
Remove EMEV2 early console code from KZM9D and instead rely on console setup during regular platform device probe time. This makes the DT code and the KZM9D board support behave the same. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove redundant r8a7790 callbackMagnus Damm
Replace the SoC-specific callback init_machine() with a NULL to use the default code. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused sh73a0 auxdata tableMagnus Damm
Pass NULL to of_platform_populate instead of passing an empty list. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused sh7372 auxdata tableMagnus Damm
Pass NULL to of_platform_populate instead of passing an empty list. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused r8a7779 auxdata tableMagnus Damm
Pass NULL to of_platform_populate instead of passing an empty list. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused r8a7778 auxdata and callbackMagnus Damm
Replace the SoC-specific callback init_machine() with a NULL to use the default code. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused r8a7740 auxdata tableMagnus Damm
Pass NULL to of_platform_populate instead of passing an empty list. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: Remove unused EMEV2 auxdata and callbackMagnus Damm
Replace the SoC-specific callback init_machine() with a NULL to use the default code. This cleans up the code and reduces the number of lines. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: kzm9g: Remove init_irq declaration in machine descriptionMagnus Damm
Remove redundant irqchip_init() callback. The default case of NULL will result in invoking irqchip_init() anyway. Signed-off-by: Magnus Damm <damm@opensource.se> [ horms+renesas@verge.net.au: Trimmed patch to remove portion that updates the sh73a0 SoC and altered the subject to use the same format as the patch that updates the sh73a0. ] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: sh73a0: Remove init_irq declaration in machine descriptionMaxime Ripard
Commit ebafed7a ("ARM: irq: Call irqchip_init if no init_irq function is specified") removed the need to explictly setup the init_irq field in the machine description when using only irqchip_init. Remove that declaration for shmobile as well. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: lager: Remove init_irq declaration in machine descriptionMagnus Damm
Remove redundant irqchip_init() callback. The default case of NULL will result in invoking irqchip_init() anyway. Signed-off-by: Magnus Damm <damm@opensource.se> [ horms+renesas@verge.net.au: Trimmed patch to remove portion that updates the r8a7790 SoC and altered the subject to use the same format as the patch that updates the r8a7790. ] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a7790: Remove init_irq declaration in machine descriptionMaxime Ripard
Commit ebafed7a ("ARM: irq: Call irqchip_init if no init_irq function is specified") removed the need to explictly setup the init_irq field in the machine description when using only irqchip_init. Remove that declaration for shmobile as well. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: ape6evm: Remove init_irq declaration in machine descriptionMagnus Damm
Remove redundant irqchip_init() callback. The default case of NULL will result in invoking irqchip_init() anyway. Signed-off-by: Magnus Damm <damm@opensource.se> [ horms+renesas@verge.net.au: Trimmed patch to remove portion that updates the r8a73a4 SoC and altered the subject to use the same format as the patch that updates the r8a73a4. ] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: r8a73a4: Remove init_irq declaration in machine descriptionMaxime Ripard
Commit ebafed7a ("ARM: irq: Call irqchip_init if no init_irq function is specified") removed the need to explictly setup the init_irq field in the machine description when using only irqchip_init. Remove that declaration for shmobile as well. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: emev2: Remove init_irq declaration in machine descriptionMaxime Ripard
Commit ebafed7a ("ARM: irq: Call irqchip_init if no init_irq function is specified") removed the need to explictly setup the init_irq field in the machine description when using only irqchip_init. Remove that declaration for shmobile as well. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-07-17ARM: shmobile: sh73a0 pinmux platform device cleanupMagnus Damm
Use DEFINE_RES_MEM() and platform_device_register_simple() to save a couple of lines of code. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [ remove const from resource pfc_resources to avoid section miss-match reported by 4.4.5 ] Signed-off-by: Simon Horman <horms+renesas@verge.net.au>