aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-bf548/boards/ezkit.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin/mach-bf548/boards/ezkit.c')
-rw-r--r--arch/blackfin/mach-bf548/boards/ezkit.c58
1 files changed, 50 insertions, 8 deletions
diff --git a/arch/blackfin/mach-bf548/boards/ezkit.c b/arch/blackfin/mach-bf548/boards/ezkit.c
index 39357693046d..5288187a3ace 100644
--- a/arch/blackfin/mach-bf548/boards/ezkit.c
+++ b/arch/blackfin/mach-bf548/boards/ezkit.c
@@ -38,11 +38,8 @@
38#include <linux/irq.h> 38#include <linux/irq.h>
39#include <linux/i2c.h> 39#include <linux/i2c.h>
40#include <linux/interrupt.h> 40#include <linux/interrupt.h>
41#if defined(CONFIG_USB_MUSB_HDRC) || defined(CONFIG_USB_MUSB_HDRC_MODULE)
42#include <linux/usb/musb.h> 41#include <linux/usb/musb.h>
43#endif
44#include <asm/bfin5xx_spi.h> 42#include <asm/bfin5xx_spi.h>
45#include <asm/cplb.h>
46#include <asm/dma.h> 43#include <asm/dma.h>
47#include <asm/gpio.h> 44#include <asm/gpio.h>
48#include <asm/nand.h> 45#include <asm/nand.h>
@@ -186,6 +183,37 @@ static struct platform_device bf54x_kpad_device = {
186}; 183};
187#endif 184#endif
188 185
186#if defined(CONFIG_JOYSTICK_BFIN_ROTARY) || defined(CONFIG_JOYSTICK_BFIN_ROTARY_MODULE)
187#include <asm/bfin_rotary.h>
188
189static struct bfin_rotary_platform_data bfin_rotary_data = {
190 /*.rotary_up_key = KEY_UP,*/
191 /*.rotary_down_key = KEY_DOWN,*/
192 .rotary_rel_code = REL_WHEEL,
193 .rotary_button_key = KEY_ENTER,
194 .debounce = 10, /* 0..17 */
195 .mode = ROT_QUAD_ENC | ROT_DEBE,
196};
197
198static struct resource bfin_rotary_resources[] = {
199 {
200 .start = IRQ_CNT,
201 .end = IRQ_CNT,
202 .flags = IORESOURCE_IRQ,
203 },
204};
205
206static struct platform_device bfin_rotary_device = {
207 .name = "bfin-rotary",
208 .id = -1,
209 .num_resources = ARRAY_SIZE(bfin_rotary_resources),
210 .resource = bfin_rotary_resources,
211 .dev = {
212 .platform_data = &bfin_rotary_data,
213 },
214};
215#endif
216
189#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE) 217#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE)
190static struct platform_device rtc_device = { 218static struct platform_device rtc_device = {
191 .name = "rtc-bfin", 219 .name = "rtc-bfin",
@@ -314,6 +342,16 @@ static struct resource musb_resources[] = {
314 }, 342 },
315}; 343};
316 344
345static struct musb_hdrc_config musb_config = {
346 .multipoint = 0,
347 .dyn_fifo = 0,
348 .soft_con = 1,
349 .dma = 1,
350 .num_eps = 7,
351 .dma_channels = 7,
352 .gpio_vrsel = GPIO_PE7,
353};
354
317static struct musb_hdrc_platform_data musb_plat = { 355static struct musb_hdrc_platform_data musb_plat = {
318#if defined(CONFIG_USB_MUSB_OTG) 356#if defined(CONFIG_USB_MUSB_OTG)
319 .mode = MUSB_OTG, 357 .mode = MUSB_OTG,
@@ -322,7 +360,7 @@ static struct musb_hdrc_platform_data musb_plat = {
322#elif defined(CONFIG_USB_GADGET_MUSB_HDRC) 360#elif defined(CONFIG_USB_GADGET_MUSB_HDRC)
323 .mode = MUSB_PERIPHERAL, 361 .mode = MUSB_PERIPHERAL,
324#endif 362#endif
325 .multipoint = 0, 363 .config = &musb_config,
326}; 364};
327 365
328static u64 musb_dmamask = ~(u32)0; 366static u64 musb_dmamask = ~(u32)0;
@@ -367,7 +405,7 @@ static struct mtd_partition partition_info[] = {
367 { 405 {
368 .name = "linux kernel(nand)", 406 .name = "linux kernel(nand)",
369 .offset = 0, 407 .offset = 0,
370 .size = 4 * SIZE_1M, 408 .size = 4 * 1024 * 1024,
371 }, 409 },
372 { 410 {
373 .name = "file system(nand)", 411 .name = "file system(nand)",
@@ -424,7 +462,7 @@ static struct mtd_partition ezkit_partitions[] = {
424 .offset = 0, 462 .offset = 0,
425 }, { 463 }, {
426 .name = "linux kernel(nor)", 464 .name = "linux kernel(nor)",
427 .size = 0x1C0000, 465 .size = 0x400000,
428 .offset = MTDPART_OFS_APPEND, 466 .offset = MTDPART_OFS_APPEND,
429 }, { 467 }, {
430 .name = "file system(nor)", 468 .name = "file system(nor)",
@@ -441,7 +479,7 @@ static struct physmap_flash_data ezkit_flash_data = {
441 479
442static struct resource ezkit_flash_resource = { 480static struct resource ezkit_flash_resource = {
443 .start = 0x20000000, 481 .start = 0x20000000,
444 .end = 0x20ffffff, 482 .end = 0x21ffffff,
445 .flags = IORESOURCE_MEM, 483 .flags = IORESOURCE_MEM,
446}; 484};
447 485
@@ -551,7 +589,7 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
551{ 589{
552 .modalias = "ad7877", 590 .modalias = "ad7877",
553 .platform_data = &bfin_ad7877_ts_info, 591 .platform_data = &bfin_ad7877_ts_info,
554 .irq = IRQ_PJ11, 592 .irq = IRQ_PJ11, /* newer boards (Rev 1.4+) use IRQ_PB4 */
555 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */ 593 .max_speed_hz = 12500000, /* max spi clock (SCK) speed in HZ */
556 .bus_num = 0, 594 .bus_num = 0,
557 .chip_select = 2, 595 .chip_select = 2,
@@ -810,6 +848,10 @@ static struct platform_device *ezkit_devices[] __initdata = {
810 &bf54x_kpad_device, 848 &bf54x_kpad_device,
811#endif 849#endif
812 850
851#if defined(CONFIG_JOYSTICK_BFIN_ROTARY) || defined(CONFIG_JOYSTICK_BFIN_ROTARY_MODULE)
852 &bfin_rotary_device,
853#endif
854
813#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE) 855#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
814 &i2c_bfin_twi0_device, 856 &i2c_bfin_twi0_device,
815#if !defined(CONFIG_BF542) 857#if !defined(CONFIG_BF542)