aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* ARM: shmobile: r8a7778: Don't define SCIF platform data in an arrayLaurent Pinchart2013-12-24
| | | | | | | | | | | The SCIF driver is transitioning to platform resources. Board code will thus need to define an array of resources for each SCIF device. This is incompatible with the macro-based SCIF platform data definition as an array. Rework the macro to define platform data as individual structures. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: r7s72100: Don't define SCIF platform data in an arrayLaurent Pinchart2013-12-24
| | | | | | | | | | | The SCIF driver is transitioning to platform resources. Board code will thus need to define an array of resources for each SCIF device. This is incompatible with the macro-based SCIF platform data definition as an array. Rework the macro to define platform data as individual structures. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: r8a73a4: Don't define SCIF platform data in an arrayLaurent Pinchart2013-12-24
| | | | | | | | | | | The SCIF driver is transitioning to platform resources. Board code will thus need to define an array of resources for each SCIF device. This is incompatible with the macro-based SCIF platform data definition as an array. Rework the macro to define platform data as individual structures. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: r8a7779: Use macros to declare SCIF devicesLaurent Pinchart2013-12-24
| | | | | | | | Replace copy-n-paste SCIF platform data and device declaration with a macro. This reduces the amount of code and improves readability. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: r8a7740: Use macros to declare SCIF devicesLaurent Pinchart2013-12-24
| | | | | | | | Replace copy-n-paste SCIF platform data and device declaration with a macro. This reduces the amount of code and improves readability. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: sh73a0: Use macros to declare SCIF devicesLaurent Pinchart2013-12-24
| | | | | | | | Replace copy-n-paste SCIF platform data and device declaration with a macro. This reduces the amount of code and improves readability. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: sh7372: Use macros to declare SCIF devicesLaurent Pinchart2013-12-24
| | | | | | | | Replace copy-n-paste SCIF platform data and device declaration with a macro. This reduces the amount of code and improves readability. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* ARM: shmobile: r8a7778: add sound SCU clock supportKuninori Morimoto2013-12-24
| | | | | | | This is needed to use SRC (= Sampling Rate Converter) Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* Merge branch 'sh-sci' into soc3-baseSimon Horman2013-12-24
|\
| * serial: sh-sci: Rework baud rate calculationLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Computing the baud rate register value requires knowledge of the hardware sampling rate. This information is currently encoded in a baud rate calculation algorithm ID passed through platform data. However, it can be derived from the port type directly in most cases. Compute the sampling rate internally in the driver if the baud rate calculation algorithm ID isn't specified, and allow platforms to override the sampling rate through platform data in special cases (this is only required for SCIFA ports on sh7723 and sh7724, the reason needs to be investigated). Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Compute overrun_bit without using baud rate algoLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | | | The overrun bit index is a property of the hardware. It's currently computed based on a different and unrelated hardware property, the baud rate calculation algorithm. Compute it using hardware identification information only. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Remove unused GPIO request codeLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | The driver requests at initialization time GPIOs passed through platform data. No platform makes use of this feature, remove it. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Move overrun_bit and error_mask fields out of pdataLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | None of the fields is ever set by board code, and both of them are set in the driver at probe time. Move them out of struct plat_sci_port to struct sci_port. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Support resources passed through platform resourcesLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | Memory and IRQ resources are currently passed to the driver through platform data. Support passing them through the standard platform resources mechanism instead. This deprecates platform data resources. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Don't check IRQ in verify port operationLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | The IRQ number can't be modified by the user as the port is fixed. There's no need to check the new IRQ number as it will be ignored by the core. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Set the UPF_FIXED_PORT flagLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | The base address, IRQ and baud rate generator parent clock rate can't be changed by userspace. Mark the port as fixed. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Remove duplicate interrupt check in verify port opLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | | | The driver checks if the interrupt number is greater than nr_irqs and returns an error in that case. The same check is already performed by the caller, remove it. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Simplify baud rate calculation algorithmsLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | | | Rewrite the baud rate register value calculations in easier to read forms. The computed value isn't modified. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Remove baud rate calculation algorithm 5Laurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | The algorithm isn't used, remove it. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Sort headers alphabeticallyLaurent Pinchart2013-12-23
| | | | | | | | | | | | | | | | This helps locating duplicates. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Convert to clk_prepare/unprepareLaurent Pinchart2013-12-13
| | | | | | | | | | | | | | | | | | | | | | Turn clk_enable() and clk_disable() calls into clk_prepare_enable() and clk_disable_unprepare() to get ready for the migration to the common clock framework. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Magnus Damm <damm@opensource.se> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Don't enable/disable port from within break timerLaurent Pinchart2013-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The break timer accesses hardware registers and thus requires the port to be enabled. It currently ensures this by enabling the port at the beginning of the timer handler, and disabling it at the end. However, the enable/disable operations call the runtime PM sync functions, which are not allowed in atomic context. The current situation is thus broken. This change relies on non-atomic code to enable/disable the port. The break timer will only be started from the IRQ handler, which already runs with the port enabled. We just need to ensure that the port won't be disabled with the timer running, and that's easily done by just cancelling the timer in the port disable function. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Magnus Damm <damm@opensource.se> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * serial: sh-sci: Fix warnings due to improper casts and printk formatsLaurent Pinchart2013-12-12
| | | | | | | | | | | | | | | | | | | | | | | | Use the %zu and %pad printk specifiers to print size_t and dma_addr_t variables, and cast pointers to uintptr_t instead of unsigned int where applicable. This fixes warnings on platforms where pointers and/or dma_addr_t have a different size than int. Cc: linux-serial@vger.kernel.org Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | arm: shmobile: clks: remove duplicated clock from r7s72100Wolfram Sang2013-12-19
| | | | | | | | | | Signed-off-by: Wolfram Sang <wsa@the-dreams.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: koelsch: Conditionally select MICREL_PHYSimon Horman2013-12-19
| | | | | | | | | | | | | | | | The koelsch board uses has an SH ethernet controller which uses a Micrel phy. Select MICREL_PHY for koelsch if SH_ETH is enabled to make use of the Micrel-specific phy driver rather than relying on the generic phy driver. Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: rcar-gen2: Initialize CCF before clock sourcesLaurent Pinchart2013-12-19
| | | | | | | | | | | | | | | | | | | | | | When CONFIG_COMMON_CLOCK is enabled, call rcar_gen2_clocks_init() in the timer init function to initialize the common clock framework before initializing the clock sources. This will take care of clock initialization when the r8a779[01] boards will be switched to multiplatform kernels. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7791: Add clock index macros for DT sourcesLaurent Pinchart2013-12-19
| | | | | | | | | | | | | | | | Add macros usable by device tree sources to reference r8a7791 clocks by index. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: Add clock index macros for DT sourcesLaurent Pinchart2013-12-19
| | | | | | | | | | | | | | | | Add macros usable by device tree sources to reference r8a7790 clocks by index. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Add select MIGHT_HAVE_PCI for PCI-AHB bridge codeBen Dooks2013-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PCI sub-system is not enabled by default on ARM and on certain Renesas devices the build does not select it. This means that there are configurations that do not allow the AHB-PCI bridge used for the USB sub-systems to be built. For the R8A7790, R8A7791 and EMEV-2 select MIGHT_HAVE_PCI to allow the PCI drivers to be built. Also select MIGHT_HAVE_PCI for the multi-config where there may be many Reneasas devices selected. Reviewed-by: Ian Molton <ian.molton@codethink.co.uk> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7778: add USB Func DMAEngine supportKuninori Morimoto2013-12-12
| | | | | | | | | | | | | | | | HPB-DMAC has 2 channel for USB Func (= D0/D1) D0 is used as Tx, D1 is used as Rx on this patch Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: rcar-gen2: Do not setup timer in non-secure modeBen Dooks2013-12-12
| | | | | | | | | | | | | | | | | | | | | | | | If the system has been started in non-secure mode, then the ARM generic timer is not configurable during the kernel initialisation. Currently the only thing we can check for is if the timer has been correctly configured during the boot process. Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Reviewed-by: Ian Molton <ian.molton@codethink.co.uk> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7791: add Ether clockSergei Shtylyov2013-12-12
| | | | | | | | | | | | | | Add support for R8A7791 Ether clock. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7778: camera-rcar header cleanupKuninori Morimoto2013-12-12
| | | | | | | | | | | | | | | | <linux/platform_data/camera-rcar.h> is needed on BockW, not setup-r8a7778.c Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: sh73a0: add FSI clock support for DTKuninori Morimoto2013-12-12
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: add I2C supportKuninori Morimoto2013-12-12
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7778: add SSIx DMAEngine supportKuninori Morimoto2013-12-10
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7779: add HSPI clock support for DTSimon Horman2013-12-10
| | | | | | | | | | | | | | Based on work for the r8a7778 SoC by Kuninori Morimoto. Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7740: add FSI clock support for DTKuninori Morimoto2013-12-10
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: add SSI MSTP clocksKuninori Morimoto2013-12-10
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7778: add HPBIFx DMAEngine supportKuninori Morimoto2013-12-10
| | | | | | | | | | Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Select AUTO_ZRELADDR for EMEV2Simon Horman2013-12-10
| | | | | | | | | | | | | | | | Since ("ARM: shmobile: Remove legacy KZM9D board code") It is now necessary for AUTO_ZRELADDR to be selected in order for the kernel to build with kzm9d_defconfig. Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: tidyup clock table orderKuninori Morimoto2013-12-10
| | | | | | | | | | | | | | | | | | | | SuperH lookups clock is using CLKDEV_CON/DEV/ICK_ID() macro for a long term. But in these days, the ICK clock is defined in random place. This patch arranges it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: fixup I2C clock sourceKuninori Morimoto2013-12-10
| | | | | | | | | | | | | | I2C clock is based on P clock, not HP clock Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7790: care EXTAL divider settingsKuninori Morimoto2013-12-10
| | | | | | | | | | | | | | | | EXTAL clock frequency needs 1/2 when (MD14, MD13, MD19) = (1, x, x). Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Add r8a7791 clocks for thermal devicesMagnus Damm2013-12-10
| | | | | | | | | | | | | | | | Add the r8a7791 thermal device as legacy clocks. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Add r8a7791 thermal platform deviceMagnus Damm2013-12-10
| | | | | | | | | | | | | | | | | | | | Add a thermal platform device for the legacy case on the r8a7791 SoC. This keeps the r8a7791 in sync with the r8a7790 sister device. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Add r8a7790 clocks for thermal devicesMagnus Damm2013-12-10
| | | | | | | | | | | | | | | | Add the r8a7790 DT thermal device to the legacy clocks. Signed-off-by: Magnus Damm <damm@opensource.se> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: Rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACYLaurent Pinchart2013-12-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SH-Mobile platforms are transitioning from non-multiplatform to multiplatform kernel. A new ARCH_SHMOBILE_MULTI configuration symbol has been created to group all multiplatform-enabled SH-Mobile SoCs. The existing ARCH_SHMOBILE configuration symbol groups SoCs that haven't been converted yet. This arrangement works fine for the arch/ code, but lots of drivers needed on both ARCH_SHMOBILE and ARCH_SHMOBILE_MULTI depend on ARCH_SHMOBILE only. In order to avoid changing them, rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACY, and create a new boolean ARCH_SHMOBILE configuration symbol that is selected by both ARCH_SHMOBILE_LEGACY and ARCH_SHMOBILE_MULTI. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: r8a7791: Add DU and LVDS clocksLaurent Pinchart2013-12-10
| | | | | | | | | | | | | | The ZX parent clock isn't implemented yet, add it as well. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | ARM: shmobile: Select USE_OF on EMEV2Magnus Damm2013-12-04
| | | | | | | | | | | | | | | | Now when the legacy KZM9D board code is gone, make sure USE_OF is selected in case of the EMEV2 SoC. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>