From: Gabor Juhos Date: Sat, 20 Dec 2008 08:28:39 +0000 (+0000) Subject: fix GPIO function select bit definitions (based on a patch by Jonas ) SVN-Revision: 13699 --- diff --git a/target/linux/ar71xx/files-2.6.28/arch/mips/include/asm/mach-ar71xx/ar71xx.h b/target/linux/ar71xx/files-2.6.28/arch/mips/include/asm/mach-ar71xx/ar71xx.h index 8379aedab1..f5de7c0330 100644 --- a/target/linux/ar71xx/files-2.6.28/arch/mips/include/asm/mach-ar71xx/ar71xx.h +++ b/target/linux/ar71xx/files-2.6.28/arch/mips/include/asm/mach-ar71xx/ar71xx.h @@ -201,9 +201,8 @@ extern void ar71xx_add_device_usb(void) __init; #define GPIO_FUNC_STEREO_EN BIT(17) #define GPIO_FUNC_SLIC_EN BIT(16) -#define GPIO_FUNC_SPI_CS1_EN BIT(15) -#define GPIO_FUNC_SPI_CS0_EN BIT(14) -#define GPIO_FUNC_SPI_EN BIT(13) +#define GPIO_FUNC_SPI_CS2_EN BIT(13) +#define GPIO_FUNC_SPI_CS1_EN BIT(12) #define GPIO_FUNC_UART_EN BIT(8) #define GPIO_FUNC_USB_OC_EN BIT(4) #define GPIO_FUNC_USB_CLK_EN BIT(0) diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c index f8e76c40c6..ec3ac0497d 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/mach-rb-4xx.c @@ -152,6 +152,9 @@ static inline void rb433_add_device_spi(void) {} static void __init rb4xx_generic_setup(void) { + ar71xx_gpio_function_enable(GPIO_FUNC_SPI_CS1_EN | + GPIO_FUNC_SPI_CS2_EN); + ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(rb4xx_leds_gpio), rb4xx_leds_gpio); diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/platform.c b/target/linux/ar71xx/files/arch/mips/ar71xx/platform.c index ab9cabb1b7..705f24315a 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/platform.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/platform.c @@ -481,8 +481,6 @@ void __init ar71xx_add_device_spi(struct ar71xx_spi_platform_data *pdata, struct spi_board_info const *info, unsigned n) { - ar71xx_gpio_function_enable(GPIO_FUNC_SPI_EN); - spi_register_board_info(info, n); ar71xx_spi_device.dev.platform_data = pdata; platform_device_register(&ar71xx_spi_device); diff --git a/target/linux/ar71xx/files/include/asm-mips/mach-ar71xx/ar71xx.h b/target/linux/ar71xx/files/include/asm-mips/mach-ar71xx/ar71xx.h index 8379aedab1..f5de7c0330 100644 --- a/target/linux/ar71xx/files/include/asm-mips/mach-ar71xx/ar71xx.h +++ b/target/linux/ar71xx/files/include/asm-mips/mach-ar71xx/ar71xx.h @@ -201,9 +201,8 @@ extern void ar71xx_add_device_usb(void) __init; #define GPIO_FUNC_STEREO_EN BIT(17) #define GPIO_FUNC_SLIC_EN BIT(16) -#define GPIO_FUNC_SPI_CS1_EN BIT(15) -#define GPIO_FUNC_SPI_CS0_EN BIT(14) -#define GPIO_FUNC_SPI_EN BIT(13) +#define GPIO_FUNC_SPI_CS2_EN BIT(13) +#define GPIO_FUNC_SPI_CS1_EN BIT(12) #define GPIO_FUNC_UART_EN BIT(8) #define GPIO_FUNC_USB_OC_EN BIT(4) #define GPIO_FUNC_USB_CLK_EN BIT(0)