Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 208599
b: refs/heads/master
c: f95bb54
h: refs/heads/master
i:
  208597: 1b366e2
  208595: 8c1ee5d
  208591: 6f34007
v: v3
  • Loading branch information
Marek Vasut authored and Eric Miao committed Jun 18, 2010
1 parent 204b192 commit 8972209
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 36 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 97dbc5164adb9e3f9c3a49183f616763fe43ea26
refs/heads/master: f95bb54016ae2465a74f5eeb04b539ef213ce6c9
69 changes: 41 additions & 28 deletions trunk/arch/arm/mach-pxa/colibri-pxa270.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
*
* Support for Toradex PXA270 based Colibri module
* Daniel Mack <daniel@caiaq.de>
* Marek Vasut <marek.vasut@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
Expand Down Expand Up @@ -36,23 +37,25 @@
#include "generic.h"
#include "devices.h"

/*
* GPIO configuration
*/
/******************************************************************************
* Pin configuration
******************************************************************************/
static mfp_cfg_t colibri_pxa270_pin_config[] __initdata = {
/* Ethernet */
GPIO78_nCS_2, /* Ethernet CS */
GPIO114_GPIO, /* Ethernet IRQ */
};

/*
* NOR flash
*/
/******************************************************************************
* NOR Flash
******************************************************************************/
#if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE)
static struct mtd_partition colibri_partitions[] = {
{
.name = "Bootloader",
.offset = 0x00000000,
.size = 0x00040000,
.mask_flags = MTD_WRITEABLE /* force read-only */
.mask_flags = MTD_WRITEABLE /* force read-only */
}, {
.name = "Kernel",
.offset = 0x00040000,
Expand Down Expand Up @@ -90,50 +93,60 @@ static struct platform_device colibri_pxa270_flash_device = {
.num_resources = 1,
};

/*
* DM9000 Ethernet
*/
#if defined(CONFIG_DM9000)
static struct resource dm9000_resources[] = {
static void __init colibri_pxa270_nor_init(void)
{
platform_device_register(&colibri_pxa270_flash_device);
}
#else
static inline void colibri_pxa270_nor_init(void) {}
#endif

/******************************************************************************
* Ethernet
******************************************************************************/
#if defined(CONFIG_DM9000) || defined(CONFIG_DM9000_MODULE)
static struct resource colibri_pxa270_dm9000_resources[] = {
[0] = {
.start = COLIBRI_PXA270_ETH_PHYS,
.end = COLIBRI_PXA270_ETH_PHYS + 3,
.start = PXA_CS2_PHYS,
.end = PXA_CS2_PHYS + 3,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = COLIBRI_PXA270_ETH_PHYS + 4,
.end = COLIBRI_PXA270_ETH_PHYS + 4 + 500,
.start = PXA_CS2_PHYS + 4,
.end = PXA_CS2_PHYS + 4 + 500,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = COLIBRI_PXA270_ETH_IRQ,
.end = COLIBRI_PXA270_ETH_IRQ,
.start = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ),
.end = gpio_to_irq(GPIO114_COLIBRI_PXA270_ETH_IRQ),
.flags = IORESOURCE_IRQ | IRQF_TRIGGER_RISING,
},
};

static struct platform_device dm9000_device = {
static struct platform_device colibri_pxa270_dm9000_device = {
.name = "dm9000",
.id = -1,
.num_resources = ARRAY_SIZE(dm9000_resources),
.resource = dm9000_resources,
.num_resources = ARRAY_SIZE(colibri_pxa270_dm9000_resources),
.resource = colibri_pxa270_dm9000_resources,
};
#endif /* CONFIG_DM9000 */

static struct platform_device *colibri_pxa270_devices[] __initdata = {
&colibri_pxa270_flash_device,
#if defined(CONFIG_DM9000)
&dm9000_device,
static void __init colibri_pxa270_eth_init(void)
{
platform_device_register(&colibri_pxa270_dm9000_device);
}
#else
static inline void colibri_pxa270_eth_init(void) {}
#endif
};

static void __init colibri_pxa270_init(void)
{
pxa2xx_mfp_config(ARRAY_AND_SIZE(colibri_pxa270_pin_config));
pxa_set_ffuart_info(NULL);
pxa_set_btuart_info(NULL);
pxa_set_stuart_info(NULL);
platform_add_devices(ARRAY_AND_SIZE(colibri_pxa270_devices));

colibri_pxa270_nor_init();
colibri_pxa270_eth_init();
}

MACHINE_START(COLIBRI, "Toradex Colibri PXA270")
Expand Down
9 changes: 2 additions & 7 deletions trunk/arch/arm/mach-pxa/include/mach/colibri.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,8 @@ static inline void colibri_pxa3xx_init_nand(void) {}
/* physical memory regions */
#define COLIBRI_SDRAM_BASE 0xa0000000 /* SDRAM region */

/* definitions for Colibri PXA270 */

#define COLIBRI_PXA270_FLASH_PHYS (PXA_CS0_PHYS) /* Flash region */
#define COLIBRI_PXA270_ETH_PHYS (PXA_CS2_PHYS) /* Ethernet */
#define COLIBRI_PXA270_ETH_IRQ_GPIO 114
#define COLIBRI_PXA270_ETH_IRQ \
gpio_to_irq(mfp_to_gpio(COLIBRI_PXA270_ETH_IRQ_GPIO))
/* GPIO definitions for Colibri PXA270 */
#define GPIO114_COLIBRI_PXA270_ETH_IRQ 114

#endif /* _COLIBRI_H_ */

0 comments on commit 8972209

Please sign in to comment.