diff options
Diffstat (limited to 'board/cm-bf537e/gpio_cfi_flash.c')
-rw-r--r-- | board/cm-bf537e/gpio_cfi_flash.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/board/cm-bf537e/gpio_cfi_flash.c b/board/cm-bf537e/gpio_cfi_flash.c index ab6af81..1075cc4 100644 --- a/board/cm-bf537e/gpio_cfi_flash.c +++ b/board/cm-bf537e/gpio_cfi_flash.c @@ -22,7 +22,12 @@ #else #define GPIO_MASK_2 (1 << 22) #endif -#define GPIO_MASK (GPIO_MASK_1 | GPIO_MASK_2) +#ifndef GPIO_PIN_3 +#define GPIO_MASK_3 (0) +#else +#define GPIO_MASK_3 (1 << 23) +#endif +#define GPIO_MASK (GPIO_MASK_1 | GPIO_MASK_2 | GPIO_MASK_3) void *gpio_cfi_flash_swizzle(void *vaddr) { @@ -34,6 +39,10 @@ void *gpio_cfi_flash_swizzle(void *vaddr) gpio_set_value(GPIO_PIN_2, addr & GPIO_MASK_2); #endif +#ifdef GPIO_PIN_3 + gpio_set_value(GPIO_PIN_3, addr & GPIO_MASK_3); +#endif + SSYNC(); udelay(1); @@ -65,4 +74,8 @@ void gpio_cfi_flash_init(void) gpio_request(GPIO_PIN_2, "gpio_cfi_flash"); gpio_direction_output(GPIO_PIN_2, 0); #endif +#ifdef GPIO_PIN_3 + gpio_request(GPIO_PIN_3, "gpio_cfi_flash"); + gpio_direction_output(GPIO_PIN_3, 0); +#endif } |