alistair23-linux/arch/arm/mach-shmobile/board-bockw-reference.c
Kevin Hilman 1c928d10fd Renesas ARM based SoC DT updates for v3.14
* Global
   - Use interrupt macros
   - Use #include in device tree sources
   - Tidyup DT node naming
 
 * emev2 (Emma Mobile EV2) SoC
   - Setup internal peripheral interrupts as level high
   - Use interrupt macros in DT files
   - Add clock tree description in DT
 
 * r8a7791 (R-Car M2) SoC
   - Correct GPIO resources
 
 * r8a7791 (R-Car M2) based Koelsch board
   - Configure PFC and GPO
   - Use r8a7791 suffix for IRQC compat string
   - Add DT reference
 
 * r8a7790 (R-Car H2) based Lager board
   - Include all 4 GiB of memory
   - Use r8a7790 suffix for IRQC and MMCIF compat strings
   - Enable MMCIF
   - Add default PFC settings
 
 * r8a7778 (R-Car M1) SoC
   - Suffix for INTC compat string
   - Add HSPI, MMCIF, SDHI and I2C suppport on DTSI
   - Correct pin control device addresses
 
 * r8a7778 (R-Car M1) based Bock-W board
   - Use falling edge IRQ for LAN9221 in DT reference
   - Enable I2C, HSPI0, MMCIF and SDHI
   - Correct MMC pin conflict
   - Remove manual PFC settings from DT reference
   - Add default PFC settings
 
 * r8a7779 (R-Car H1) SoC
   - Add HSPI and SDHI support
   - Suffix for INTC compat string
 
 * r8a7779 (R-Car H1) based Marzen board
   - Enable HSPI0 and SDHI in DTS
   - Remove SDHI0 WP pin setting
   - Use falling edge IRQ for LAN9221 in DT reference
   - Add SDHI support
 
 * r8a7740 (R-Mobile A1) SoC
   - Suffix for INTC compat string
   - Add FSI support via DTSI
   - Use interrupt macros
 
 * r8a7740 based Armadillo board
   - Add FSI support for DTS
   - Use low level IRQ for ST1231 in DT reference
 
 * r8a73a4 (SH-Mobile APE6) SoC
   - Use interrupt macros in DT files
 
 * r8a73a4 (R-Mobile APE6) based ape6evm board
   - Include all 2 GiB of memory
 
 * r8a73a0 (SH-Mobile AG5) SoC
   - Correct SDHI compat string
 
 * r8a73a0 (SH-Mobile AG5) based kzm9d board
   - Add GPIO keys and Add PCF8575 GPIO extender to DT
   - Enable DSW2 with gpio-keys
   - Use falling edge IRQ for LAN9221 in DT reference
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSqm6XAAoJENfPZGlqN0++pOoQAIgdo3M/CCP56+wAop/nYOfx
 DDdozpEt+V6RcNytVwGEkQboIDMqnekiAvhLiJ7GHT7sMHmf7au2KFkNPpxN+noU
 QVgmJaMsi2AoaoV6T+rc0ice7sve+3gbHE0S49frNVlabNlo69y5Y3prYBzLmfdt
 hefvngIUx6vhosaH00elYhsRTSTd1i5Pkj+jAYQNil1sI+QBJKC61buZrlLPMOfh
 WBMZXKROSN+jIYsqwmz+O7LvqNZa+Wjm9M8NFQnKWkv4fj9on+RZtkLuNo62Yy2P
 AaOM5Z0B2q5q35a7QcsLX23QiHOtkGOXIXehzjakzA56L5kUaZMWdfSUWGXPE+DU
 B163SndwQhRPiYFrb8//Ri5+GQxls6Pw6UKtT7owDMmqkqsYUrJHm7zfu88RcX1O
 UcDrtd3ZlF4XMmr3iNxIRzscFx8faQbIErfG2VornRRkEKLT+ILRvcAedZxkhGLk
 6fs8efTcxR7lvY+7pDtJ1N/xyGGykSnsf0LiCp5BkADamSyhGhqUcr8CjUfjMhKD
 r7WhzbHEQ7FdQ7B4Y8QmxKyH9dC1wNPxB8kZ4m6YjEKFYC95XCehMQhWvbUsx9vM
 jBrvvG7414+t3M2CmROwrs9NujJ0Kf0i6078Hvi06l+w4XYe55ytLUGMnXsJAuCL
 B7aAaVRIAt3UYK7tncK+
 =jkNE
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

From Simon Horman:
Renesas ARM based SoC DT updates for v3.14

* Global
  - Use interrupt macros
  - Use #include in device tree sources
  - Tidyup DT node naming

* emev2 (Emma Mobile EV2) SoC
  - Setup internal peripheral interrupts as level high
  - Use interrupt macros in DT files
  - Add clock tree description in DT

* r8a7791 (R-Car M2) SoC
  - Correct GPIO resources

* r8a7791 (R-Car M2) based Koelsch board
  - Configure PFC and GPO
  - Use r8a7791 suffix for IRQC compat string
  - Add DT reference

* r8a7790 (R-Car H2) based Lager board
  - Include all 4 GiB of memory
  - Use r8a7790 suffix for IRQC and MMCIF compat strings
  - Enable MMCIF
  - Add default PFC settings

* r8a7778 (R-Car M1) SoC
  - Suffix for INTC compat string
  - Add HSPI, MMCIF, SDHI and I2C suppport on DTSI
  - Correct pin control device addresses

* r8a7778 (R-Car M1) based Bock-W board
  - Use falling edge IRQ for LAN9221 in DT reference
  - Enable I2C, HSPI0, MMCIF and SDHI
  - Correct MMC pin conflict
  - Remove manual PFC settings from DT reference
  - Add default PFC settings

* r8a7779 (R-Car H1) SoC
  - Add HSPI and SDHI support
  - Suffix for INTC compat string

* r8a7779 (R-Car H1) based Marzen board
  - Enable HSPI0 and SDHI in DTS
  - Remove SDHI0 WP pin setting
  - Use falling edge IRQ for LAN9221 in DT reference
  - Add SDHI support

* r8a7740 (R-Mobile A1) SoC
  - Suffix for INTC compat string
  - Add FSI support via DTSI
  - Use interrupt macros

* r8a7740 based Armadillo board
  - Add FSI support for DTS
  - Use low level IRQ for ST1231 in DT reference

* r8a73a4 (SH-Mobile APE6) SoC
  - Use interrupt macros in DT files

* r8a73a4 (R-Mobile APE6) based ape6evm board
  - Include all 2 GiB of memory

* r8a73a0 (SH-Mobile AG5) SoC
  - Correct SDHI compat string

* r8a73a0 (SH-Mobile AG5) based kzm9d board
  - Add GPIO keys and Add PCF8575 GPIO extender to DT
  - Enable DSW2 with gpio-keys
  - Use falling edge IRQ for LAN9221 in DT reference

* tag 'renesas-dt-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (102 commits)
  ARM: shmobile: marzen: enable HSPI0 in DTS
  ARM: shmobile: r8a7779: add HSPI support to DTSI
  ARM: shmobile: Use r8a7779 suffix for INTC compat string
  ARM: shmobile: Use r8a7778 suffix for INTC compat string
  ARM: shmobile: Use r8a7740 suffix for INTC compat string
  ARM: shmobile: Use sh73a0 suffix for INTC compat string
  ARM: shmobile: armadillo: add FSI support for DTS
  ARM: shmobile: r8a7740: add FSI support via DTSI
  ARM: shmobile: emev2: Setup internal peripheral interrupts as level high
  ARM: shmobile: emev2: Use interrupt macros in DT files
  ARM: shmobile: Use interrupt macros in r8a73a4 and r8a7778 DT files
  ARM: shmobile: Fix r8a7791 GPIO resources in DTS
  ARM: shmobile: Include all 4 GiB of memory on Lager DT Ref
  ARM: shmobile: Include all 4 GiB of memory on Lager
  ARM: shmobile: Include all 2 GiB of memory on APE6EVM
  ARM: shmobile: Include all 2 GiB of memory on APE6EVM DT Ref
  ARM: shmobile: kzm9g-reference: Add GPIO keys to DT
  ARM: shmobile: kzm9g-reference: Add PCF8575 GPIO extender to DT
  ARM: shmobile: Koelsch DT reference GPIO LED support
  ARM: shmobile: Enable DSW2 with gpio-keys on KZM9D
  ...

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-12-20 12:17:18 -08:00

69 lines
1.9 KiB
C

/*
* Bock-W board support
*
* Copyright (C) 2013 Renesas Solutions Corp.
* Copyright (C) 2013 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <linux/of_platform.h>
#include <mach/common.h>
#include <mach/r8a7778.h>
#include <asm/mach/arch.h>
/*
* see board-bock.c for checking detail of dip-switch
*/
#define FPGA 0x18200000
#define IRQ0MR 0x30
#define COMCTLR 0x101c
static void __init bockw_init(void)
{
static void __iomem *fpga;
r8a7778_clock_init();
r8a7778_init_irq_extpin_dt(1);
r8a7778_add_dt_devices();
fpga = ioremap_nocache(FPGA, SZ_1M);
if (fpga) {
/*
* CAUTION
*
* IRQ0/1 is cascaded interrupt from FPGA.
* it should be cared in the future
* Now, it is assuming IRQ0 was used only from SMSC.
*/
u16 val = ioread16(fpga + IRQ0MR);
val &= ~(1 << 4); /* enable SMSC911x */
iowrite16(val, fpga + IRQ0MR);
}
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
}
static const char *bockw_boards_compat_dt[] __initdata = {
"renesas,bockw-reference",
NULL,
};
DT_MACHINE_START(BOCKW_DT, "bockw")
.init_early = r8a7778_init_delay,
.init_irq = r8a7778_init_irq_dt,
.init_machine = bockw_init,
.dt_compat = bockw_boards_compat_dt,
MACHINE_END