diff options
author | Graf Yang <graf.yang@analog.com> | 2009-05-20 02:06:15 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-06-12 06:11:35 -0400 |
commit | ee0263cc2e7d774655bba6a6750a06099a3cebf0 (patch) | |
tree | d61cab8a80e616156239defc5ebcf4a995035164 /arch/blackfin | |
parent | 7f3aee3c187641ec7c7e260d9cabb71ac4ac9f7c (diff) |
Blackfin: BF518F-EZBRD: handle required portmuxing of async pins
The two high address lines on the BF51x are not dedicated which means we
need to handle them like any other peripheral pin if we want to access the
upper 2MB of parallel flash.
Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin')
-rw-r--r-- | arch/blackfin/mach-bf518/boards/ezbrd.c | 9 | ||||
-rw-r--r-- | arch/blackfin/mach-bf518/include/mach/portmux.h | 6 |
2 files changed, 14 insertions, 1 deletions
diff --git a/arch/blackfin/mach-bf518/boards/ezbrd.c b/arch/blackfin/mach-bf518/boards/ezbrd.c index 41f2eacfef20..602dce028b7b 100644 --- a/arch/blackfin/mach-bf518/boards/ezbrd.c +++ b/arch/blackfin/mach-bf518/boards/ezbrd.c | |||
@@ -82,7 +82,11 @@ static struct physmap_flash_data ezbrd_flash_data = { | |||
82 | 82 | ||
83 | static struct resource ezbrd_flash_resource = { | 83 | static struct resource ezbrd_flash_resource = { |
84 | .start = 0x20000000, | 84 | .start = 0x20000000, |
85 | #if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE) | ||
86 | .end = 0x202fffff, | ||
87 | #else | ||
85 | .end = 0x203fffff, | 88 | .end = 0x203fffff, |
89 | #endif | ||
86 | .flags = IORESOURCE_MEM, | 90 | .flags = IORESOURCE_MEM, |
87 | }; | 91 | }; |
88 | 92 | ||
@@ -678,6 +682,11 @@ static int __init ezbrd_init(void) | |||
678 | ARRAY_SIZE(bfin_i2c_board_info)); | 682 | ARRAY_SIZE(bfin_i2c_board_info)); |
679 | platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices)); | 683 | platform_add_devices(stamp_devices, ARRAY_SIZE(stamp_devices)); |
680 | spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info)); | 684 | spi_register_board_info(bfin_spi_board_info, ARRAY_SIZE(bfin_spi_board_info)); |
685 | /* setup BF518-EZBRD GPIO pin PG11 to AMS2, PG15 to AMS3. */ | ||
686 | peripheral_request(P_AMS2, "ParaFlash"); | ||
687 | #if !defined(CONFIG_SPI_BFIN) && !defined(CONFIG_SPI_BFIN_MODULE) | ||
688 | peripheral_request(P_AMS3, "ParaFlash"); | ||
689 | #endif | ||
681 | return 0; | 690 | return 0; |
682 | } | 691 | } |
683 | 692 | ||
diff --git a/arch/blackfin/mach-bf518/include/mach/portmux.h b/arch/blackfin/mach-bf518/include/mach/portmux.h index f618b487b2b0..a0fc77fd3315 100644 --- a/arch/blackfin/mach-bf518/include/mach/portmux.h +++ b/arch/blackfin/mach-bf518/include/mach/portmux.h | |||
@@ -185,6 +185,10 @@ | |||
185 | #define P_PTP_PPS (P_DEFINED | P_IDENT(GPIO_PG12) | P_FUNCT(2)) | 185 | #define P_PTP_PPS (P_DEFINED | P_IDENT(GPIO_PG12) | P_FUNCT(2)) |
186 | #define P_PTP_CLKOUT (P_DEFINED | P_IDENT(GPIO_PG13) | P_FUNCT(2)) | 186 | #define P_PTP_CLKOUT (P_DEFINED | P_IDENT(GPIO_PG13) | P_FUNCT(2)) |
187 | 187 | ||
188 | #define P_HWAIT (P_DEFINED | P_IDENT(GPIO_PG000000000) | P_FUNCT(1)) | 188 | /* AMS */ |
189 | #define P_AMS2 (P_DEFINED | P_IDENT(GPIO_PG11) | P_FUNCT(1)) | ||
190 | #define P_AMS3 (P_DEFINED | P_IDENT(GPIO_PG15) | P_FUNCT(2)) | ||
191 | |||
192 | #define P_HWAIT (P_DEFINED | P_IDENT(GPIO_PG000000000) | P_FUNCT(1)) | ||
189 | 193 | ||
190 | #endif /* _MACH_PORTMUX_H_ */ | 194 | #endif /* _MACH_PORTMUX_H_ */ |