-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'next/board' of git://git.linaro.org/people/arnd/arm-soc
* 'next/board' of git://git.linaro.org/people/arnd/arm-soc: (34 commits) ep93xx: add support Vision EP9307 SoM ARM: mxs: Add initial support for DENX MX28 ARM: EXYNOS4: Add support SMDK4412 Board ARM: EXYNOS4: Add MCT support for EXYNOS4412 ARM: EXYNOS4: Add functions for gic interrupt handling ARM: EXYNOS4: Add support clock for EXYNOS4412 ARM: EXYNOS4: Add support new EXYNOS4412 SoC ARM: EXYNOS4: Add support MCT PPI for EXYNOS4212 ARM: EXYNOS4: Add support PPI in external GIC ARM: EXYNOS4: convert boot_params to atag_offset ixp4xx: support omicron ixp425 based boards ARM: EXYNOS4: Add support SMDK4212 Board ARM: EXYNOS4: Add support PM for EXYNOS4212 ARM: EXYNOS4: Add support clock for EXYNOS4212 ARM: EXYNOS4: Add support new EXYNOS4212 SoC at91: USB-A9G20 C01 & C11 board support at91: merge board USB-A9260 and USB-A9263 together at91: add support for RSIs EWS board ARM: SAMSUNG: Fix mask value for S5P64X0 CPU IDs ARM: SAMSUNG: Fix mask for S3C64xx CPU IDs ...
- Loading branch information
Showing
59 changed files
with
3,147 additions
and
586 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,233 @@ | ||
/* | ||
* board-rsi-ews.c | ||
* | ||
* Copyright (C) | ||
* 2005 SAN People, | ||
* 2008-2011 R-S-I Elektrotechnik GmbH & Co. KG | ||
* | ||
* Licensed under GPLv2 or later. | ||
*/ | ||
|
||
#include <linux/types.h> | ||
#include <linux/init.h> | ||
#include <linux/mm.h> | ||
#include <linux/module.h> | ||
#include <linux/platform_device.h> | ||
#include <linux/spi/spi.h> | ||
#include <linux/mtd/physmap.h> | ||
|
||
#include <asm/setup.h> | ||
#include <asm/mach-types.h> | ||
#include <asm/irq.h> | ||
|
||
#include <asm/mach/arch.h> | ||
#include <asm/mach/map.h> | ||
#include <asm/mach/irq.h> | ||
|
||
#include <mach/hardware.h> | ||
#include <mach/board.h> | ||
|
||
#include <linux/gpio.h> | ||
|
||
#include "generic.h" | ||
|
||
static void __init rsi_ews_init_early(void) | ||
{ | ||
/* Initialize processor: 18.432 MHz crystal */ | ||
at91_initialize(18432000); | ||
|
||
/* Setup the LEDs */ | ||
at91_init_leds(AT91_PIN_PB6, AT91_PIN_PB9); | ||
|
||
/* DBGU on ttyS0. (Rx & Tx only) */ | ||
/* This one is for debugging */ | ||
at91_register_uart(0, 0, 0); | ||
|
||
/* USART1 on ttyS2. (Rx, Tx, CTS, RTS, DTR, DSR, DCD, RI) */ | ||
/* Dialin/-out modem interface */ | ||
at91_register_uart(AT91RM9200_ID_US1, 2, ATMEL_UART_CTS | ATMEL_UART_RTS | ||
| ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD | ||
| ATMEL_UART_RI); | ||
|
||
/* USART3 on ttyS4. (Rx, Tx, RTS) */ | ||
/* RS485 communication */ | ||
at91_register_uart(AT91RM9200_ID_US3, 4, ATMEL_UART_RTS); | ||
|
||
/* set serial console to ttyS0 (ie, DBGU) */ | ||
at91_set_serial_console(0); | ||
} | ||
|
||
/* | ||
* Ethernet | ||
*/ | ||
static struct at91_eth_data rsi_ews_eth_data __initdata = { | ||
.phy_irq_pin = AT91_PIN_PC4, | ||
.is_rmii = 1, | ||
}; | ||
|
||
/* | ||
* USB Host | ||
*/ | ||
static struct at91_usbh_data rsi_ews_usbh_data __initdata = { | ||
.ports = 1, | ||
}; | ||
|
||
/* | ||
* SD/MC | ||
*/ | ||
static struct at91_mmc_data rsi_ews_mmc_data __initdata = { | ||
.slot_b = 0, | ||
.wire4 = 1, | ||
.det_pin = AT91_PIN_PB27, | ||
.wp_pin = AT91_PIN_PB29, | ||
}; | ||
|
||
/* | ||
* I2C | ||
*/ | ||
static struct i2c_board_info rsi_ews_i2c_devices[] __initdata = { | ||
{ | ||
I2C_BOARD_INFO("ds1337", 0x68), | ||
}, | ||
{ | ||
I2C_BOARD_INFO("24c01", 0x50), | ||
} | ||
}; | ||
|
||
/* | ||
* LEDs | ||
*/ | ||
static struct gpio_led rsi_ews_leds[] = { | ||
{ | ||
.name = "led0", | ||
.gpio = AT91_PIN_PB6, | ||
.active_low = 0, | ||
}, | ||
{ | ||
.name = "led1", | ||
.gpio = AT91_PIN_PB7, | ||
.active_low = 0, | ||
}, | ||
{ | ||
.name = "led2", | ||
.gpio = AT91_PIN_PB8, | ||
.active_low = 0, | ||
}, | ||
{ | ||
.name = "led3", | ||
.gpio = AT91_PIN_PB9, | ||
.active_low = 0, | ||
}, | ||
}; | ||
|
||
/* | ||
* DataFlash | ||
*/ | ||
static struct spi_board_info rsi_ews_spi_devices[] = { | ||
{ /* DataFlash chip 1*/ | ||
.modalias = "mtd_dataflash", | ||
.chip_select = 0, | ||
.max_speed_hz = 5 * 1000 * 1000, | ||
}, | ||
{ /* DataFlash chip 2*/ | ||
.modalias = "mtd_dataflash", | ||
.chip_select = 1, | ||
.max_speed_hz = 5 * 1000 * 1000, | ||
}, | ||
}; | ||
|
||
/* | ||
* NOR flash | ||
*/ | ||
static struct mtd_partition rsiews_nor_partitions[] = { | ||
{ | ||
.name = "boot", | ||
.offset = 0, | ||
.size = 3 * SZ_128K, | ||
.mask_flags = MTD_WRITEABLE | ||
}, | ||
{ | ||
.name = "kernel", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = SZ_2M - (3 * SZ_128K) | ||
}, | ||
{ | ||
.name = "root", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = SZ_8M | ||
}, | ||
{ | ||
.name = "kernelupd", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = 3 * SZ_512K, | ||
.mask_flags = MTD_WRITEABLE | ||
}, | ||
{ | ||
.name = "rootupd", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = 9 * SZ_512K, | ||
.mask_flags = MTD_WRITEABLE | ||
}, | ||
}; | ||
|
||
static struct physmap_flash_data rsiews_nor_data = { | ||
.width = 2, | ||
.parts = rsiews_nor_partitions, | ||
.nr_parts = ARRAY_SIZE(rsiews_nor_partitions), | ||
}; | ||
|
||
#define NOR_BASE AT91_CHIPSELECT_0 | ||
#define NOR_SIZE SZ_16M | ||
|
||
static struct resource nor_flash_resources[] = { | ||
{ | ||
.start = NOR_BASE, | ||
.end = NOR_BASE + NOR_SIZE - 1, | ||
.flags = IORESOURCE_MEM, | ||
} | ||
}; | ||
|
||
static struct platform_device rsiews_nor_flash = { | ||
.name = "physmap-flash", | ||
.id = 0, | ||
.dev = { | ||
.platform_data = &rsiews_nor_data, | ||
}, | ||
.resource = nor_flash_resources, | ||
.num_resources = ARRAY_SIZE(nor_flash_resources), | ||
}; | ||
|
||
/* | ||
* Init Func | ||
*/ | ||
static void __init rsi_ews_board_init(void) | ||
{ | ||
/* Serial */ | ||
at91_add_device_serial(); | ||
at91_set_gpio_output(AT91_PIN_PA21, 0); | ||
/* Ethernet */ | ||
at91_add_device_eth(&rsi_ews_eth_data); | ||
/* USB Host */ | ||
at91_add_device_usbh(&rsi_ews_usbh_data); | ||
/* I2C */ | ||
at91_add_device_i2c(rsi_ews_i2c_devices, | ||
ARRAY_SIZE(rsi_ews_i2c_devices)); | ||
/* SPI */ | ||
at91_add_device_spi(rsi_ews_spi_devices, | ||
ARRAY_SIZE(rsi_ews_spi_devices)); | ||
/* MMC */ | ||
at91_add_device_mmc(0, &rsi_ews_mmc_data); | ||
/* NOR Flash */ | ||
platform_device_register(&rsiews_nor_flash); | ||
/* LEDs */ | ||
at91_gpio_leds(rsi_ews_leds, ARRAY_SIZE(rsi_ews_leds)); | ||
} | ||
|
||
MACHINE_START(RSI_EWS, "RSI EWS") | ||
/* Maintainer: Josef Holzmayr <holzmayr@rsi-elektrotechnik.de> */ | ||
.timer = &at91rm9200_timer, | ||
.map_io = at91_map_io, | ||
.init_early = rsi_ews_init_early, | ||
.init_irq = at91_init_irq_default, | ||
.init_machine = rsi_ews_board_init, | ||
MACHINE_END |
Oops, something went wrong.