-
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 'master' of git://git.kernel.org/pub/scm/linux/kernel/gi…
…t/nico/orion into devel-stable
- Loading branch information
Showing
6 changed files
with
574 additions
and
6 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
/* | ||
* arch/arm/mach-kirkwood/guruplug-setup.c | ||
* | ||
* Marvell GuruPlug Reference Board Setup | ||
* | ||
* 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/gpio.h> | ||
#include <linux/leds.h> | ||
#include <asm/mach-types.h> | ||
#include <asm/mach/arch.h> | ||
#include <mach/kirkwood.h> | ||
#include <plat/mvsdio.h> | ||
#include "common.h" | ||
#include "mpp.h" | ||
|
||
static struct mtd_partition guruplug_nand_parts[] = { | ||
{ | ||
.name = "u-boot", | ||
.offset = 0, | ||
.size = SZ_1M | ||
}, { | ||
.name = "uImage", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = SZ_4M | ||
}, { | ||
.name = "root", | ||
.offset = MTDPART_OFS_NXTBLK, | ||
.size = MTDPART_SIZ_FULL | ||
}, | ||
}; | ||
|
||
static struct mv643xx_eth_platform_data guruplug_ge00_data = { | ||
.phy_addr = MV643XX_ETH_PHY_ADDR(0), | ||
}; | ||
|
||
static struct mv643xx_eth_platform_data guruplug_ge01_data = { | ||
.phy_addr = MV643XX_ETH_PHY_ADDR(1), | ||
}; | ||
|
||
static struct mv_sata_platform_data guruplug_sata_data = { | ||
.n_ports = 1, | ||
}; | ||
|
||
static struct mvsdio_platform_data guruplug_mvsdio_data = { | ||
/* unfortunately the CD signal has not been connected */ | ||
}; | ||
|
||
static struct gpio_led guruplug_led_pins[] = { | ||
{ | ||
.name = "guruplug:red:health", | ||
.gpio = 46, | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "guruplug:green:health", | ||
.gpio = 47, | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "guruplug:red:wmode", | ||
.gpio = 48, | ||
.active_low = 1, | ||
}, | ||
{ | ||
.name = "guruplug:green:wmode", | ||
.gpio = 49, | ||
.active_low = 1, | ||
}, | ||
}; | ||
|
||
static struct gpio_led_platform_data guruplug_led_data = { | ||
.leds = guruplug_led_pins, | ||
.num_leds = ARRAY_SIZE(guruplug_led_pins), | ||
}; | ||
|
||
static struct platform_device guruplug_leds = { | ||
.name = "leds-gpio", | ||
.id = -1, | ||
.dev = { | ||
.platform_data = &guruplug_led_data, | ||
} | ||
}; | ||
|
||
static unsigned int guruplug_mpp_config[] __initdata = { | ||
MPP46_GPIO, /* M_RLED */ | ||
MPP47_GPIO, /* M_GLED */ | ||
MPP48_GPIO, /* B_RLED */ | ||
MPP49_GPIO, /* B_GLED */ | ||
0 | ||
}; | ||
|
||
static void __init guruplug_init(void) | ||
{ | ||
/* | ||
* Basic setup. Needs to be called early. | ||
*/ | ||
kirkwood_init(); | ||
kirkwood_mpp_conf(guruplug_mpp_config); | ||
|
||
kirkwood_uart0_init(); | ||
kirkwood_nand_init(ARRAY_AND_SIZE(guruplug_nand_parts), 25); | ||
|
||
kirkwood_ehci_init(); | ||
kirkwood_ge00_init(&guruplug_ge00_data); | ||
kirkwood_ge01_init(&guruplug_ge01_data); | ||
kirkwood_sata_init(&guruplug_sata_data); | ||
kirkwood_sdio_init(&guruplug_mvsdio_data); | ||
|
||
platform_device_register(&guruplug_leds); | ||
} | ||
|
||
MACHINE_START(GURUPLUG, "Marvell GuruPlug Reference Board") | ||
/* Maintainer: Siddarth Gore <gores@marvell.com> */ | ||
.phys_io = KIRKWOOD_REGS_PHYS_BASE, | ||
.io_pg_offst = ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc, | ||
.boot_params = 0x00000100, | ||
.init_machine = guruplug_init, | ||
.map_io = kirkwood_map_io, | ||
.init_irq = kirkwood_init_irq, | ||
.timer = &kirkwood_timer, | ||
MACHINE_END |
Oops, something went wrong.