-
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 'kirkwood_dt_for_3.4_v3' of git://git.infradead.org/user…
…s/jcooper/linux-kirkwood into kirkwood/dt * 'kirkwood_dt_for_3.4_v3' of git://git.infradead.org/users/jcooper/linux-kirkwood: ARM: kirkwood: use devicetree for rtc-mv ARM: kirkwood: rtc-mv devicetree bindings ARM: kirkwood: fdt: define uart[01] as disabled, enable uart0 ARM: kirkwood: fdt: facilitate new boards during fdt migration ARM: kirkwood: fdt: absorb kirkwood_init() ARM: kirkwood: fdt: use mrvl ticker symbol ARM: orion: wdt: use resource vice direct access ARM: Kirkwood: Remove tclk from kirkwood_asoc_platform_data. ARM: orion: spi: remove enable_clock_fix which is not used
- Loading branch information
Showing
13 changed files
with
264 additions
and
160 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,36 @@ | ||
/include/ "skeleton.dtsi" | ||
|
||
/ { | ||
compatible = "marvell,kirkwood"; | ||
}; | ||
compatible = "mrvl,kirkwood"; | ||
|
||
ocp@f1000000 { | ||
compatible = "simple-bus"; | ||
ranges = <0 0xf1000000 0x1000000>; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
|
||
serial@12000 { | ||
compatible = "ns16550a"; | ||
reg = <0x12000 0x100>; | ||
reg-shift = <2>; | ||
interrupts = <33>; | ||
/* set clock-frequency in board dts */ | ||
status = "disabled"; | ||
}; | ||
|
||
serial@12100 { | ||
compatible = "ns16550a"; | ||
reg = <0x12100 0x100>; | ||
reg-shift = <2>; | ||
interrupts = <34>; | ||
/* set clock-frequency in board dts */ | ||
status = "disabled"; | ||
}; | ||
|
||
rtc@10300 { | ||
compatible = "mrvl,kirkwood-rtc", "mrvl,orion-rtc"; | ||
reg = <0x10300 0x20>; | ||
interrupts = <53>; | ||
}; | ||
}; | ||
}; |
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,152 @@ | ||
/* | ||
* Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net> | ||
* | ||
* arch/arm/mach-kirkwood/board-dreamplug.c | ||
* | ||
* Marvell DreamPlug Reference Board Init for drivers not converted to | ||
* flattened device tree yet. | ||
* | ||
* This file is licensed under the terms of the GNU General Public | ||
* License version 2. This program is licensed "as is" without any | ||
* warranty of any kind, whether express or implied. | ||
*/ | ||
|
||
#include <linux/kernel.h> | ||
#include <linux/init.h> | ||
#include <linux/platform_device.h> | ||
#include <linux/mtd/partitions.h> | ||
#include <linux/ata_platform.h> | ||
#include <linux/mv643xx_eth.h> | ||
#include <linux/of.h> | ||
#include <linux/of_address.h> | ||
#include <linux/of_fdt.h> | ||
#include <linux/of_irq.h> | ||
#include <linux/of_platform.h> | ||
#include <linux/gpio.h> | ||
#include <linux/leds.h> | ||
#include <linux/mtd/physmap.h> | ||
#include <linux/spi/flash.h> | ||
#include <linux/spi/spi.h> | ||
#include <linux/spi/orion_spi.h> | ||
#include <asm/mach-types.h> | ||
#include <asm/mach/arch.h> | ||
#include <asm/mach/map.h> | ||
#include <mach/kirkwood.h> | ||
#include <mach/bridge-regs.h> | ||
#include <plat/mvsdio.h> | ||
#include "common.h" | ||
#include "mpp.h" | ||
|
||
struct mtd_partition dreamplug_partitions[] = { | ||
{ | ||
.name = "u-boot", | ||
.size = SZ_512K, | ||
.offset = 0, | ||
}, | ||
{ | ||
.name = "u-boot env", | ||
.size = SZ_64K, | ||
.offset = SZ_512K + SZ_512K, | ||
}, | ||
{ | ||
.name = "dtb", | ||
.size = SZ_64K, | ||
.offset = SZ_512K + SZ_512K + SZ_512K, | ||
}, | ||
}; | ||
|
||
static const struct flash_platform_data dreamplug_spi_slave_data = { | ||
.type = "mx25l1606e", | ||
.name = "spi_flash", | ||
.parts = dreamplug_partitions, | ||
.nr_parts = ARRAY_SIZE(dreamplug_partitions), | ||
}; | ||
|
||
static struct spi_board_info __initdata dreamplug_spi_slave_info[] = { | ||
{ | ||
.modalias = "m25p80", | ||
.platform_data = &dreamplug_spi_slave_data, | ||
.irq = -1, | ||
.max_speed_hz = 50000000, | ||
.bus_num = 0, | ||
.chip_select = 0, | ||
}, | ||
}; | ||
|
||
static struct mv643xx_eth_platform_data dreamplug_ge00_data = { | ||
.phy_addr = MV643XX_ETH_PHY_ADDR(0), | ||
}; | ||
|
||
static struct mv643xx_eth_platform_data dreamplug_ge01_data = { | ||
.phy_addr = MV643XX_ETH_PHY_ADDR(1), | ||
}; | ||
|
||
static struct mv_sata_platform_data dreamplug_sata_data = { | ||
.n_ports = 1, | ||
}; | ||
|
||
static struct mvsdio_platform_data dreamplug_mvsdio_data = { | ||
/* unfortunately the CD signal has not been connected */ | ||
}; | ||
|
||
static struct gpio_led dreamplug_led_pins[] = { | ||
{ | ||
.name = "dreamplug:blue:bluetooth", | ||
.gpio = 47, | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "dreamplug:green:wifi", | ||
.gpio = 48, | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "dreamplug:green:wifi_ap", | ||
.gpio = 49, | ||
.active_low = 1, | ||
}, | ||
}; | ||
|
||
static struct gpio_led_platform_data dreamplug_led_data = { | ||
.leds = dreamplug_led_pins, | ||
.num_leds = ARRAY_SIZE(dreamplug_led_pins), | ||
}; | ||
|
||
static struct platform_device dreamplug_leds = { | ||
.name = "leds-gpio", | ||
.id = -1, | ||
.dev = { | ||
.platform_data = &dreamplug_led_data, | ||
} | ||
}; | ||
|
||
static unsigned int dreamplug_mpp_config[] __initdata = { | ||
MPP0_SPI_SCn, | ||
MPP1_SPI_MOSI, | ||
MPP2_SPI_SCK, | ||
MPP3_SPI_MISO, | ||
MPP47_GPIO, /* Bluetooth LED */ | ||
MPP48_GPIO, /* Wifi LED */ | ||
MPP49_GPIO, /* Wifi AP LED */ | ||
0 | ||
}; | ||
|
||
void __init dreamplug_init(void) | ||
{ | ||
/* | ||
* Basic setup. Needs to be called early. | ||
*/ | ||
kirkwood_mpp_conf(dreamplug_mpp_config); | ||
|
||
spi_register_board_info(dreamplug_spi_slave_info, | ||
ARRAY_SIZE(dreamplug_spi_slave_info)); | ||
kirkwood_spi_init(); | ||
|
||
kirkwood_ehci_init(); | ||
kirkwood_ge00_init(&dreamplug_ge00_data); | ||
kirkwood_ge01_init(&dreamplug_ge01_data); | ||
kirkwood_sata_init(&dreamplug_sata_data); | ||
kirkwood_sdio_init(&dreamplug_mvsdio_data); | ||
|
||
platform_device_register(&dreamplug_leds); | ||
} |
Oops, something went wrong.