diff options
| -rw-r--r-- | arch/avr32/boards/atstk1000/Kconfig | 5 | ||||
| -rw-r--r-- | arch/avr32/boards/atstk1000/atstk1002.c | 28 |
2 files changed, 17 insertions, 16 deletions
diff --git a/arch/avr32/boards/atstk1000/Kconfig b/arch/avr32/boards/atstk1000/Kconfig index dcf9e9e2b289..23e8c84f0237 100644 --- a/arch/avr32/boards/atstk1000/Kconfig +++ b/arch/avr32/boards/atstk1000/Kconfig | |||
| @@ -76,4 +76,9 @@ config BOARD_ATSTK1000_J2_RGB | |||
| 76 | 76 | ||
| 77 | endchoice | 77 | endchoice |
| 78 | 78 | ||
| 79 | config BOARD_ATSTK1000_EXTDAC | ||
| 80 | bool | ||
| 81 | depends on !BOARD_ATSTK1002_SW1_CUSTOM && !BOARD_ATSTK1002_SW3_CUSTOM | ||
| 82 | default y | ||
| 83 | |||
| 79 | endif # stk 1002 | 84 | endif # stk 1002 |
diff --git a/arch/avr32/boards/atstk1000/atstk1002.c b/arch/avr32/boards/atstk1000/atstk1002.c index 2481d2389873..57f610ea30df 100644 --- a/arch/avr32/boards/atstk1000/atstk1002.c +++ b/arch/avr32/boards/atstk1000/atstk1002.c | |||
| @@ -48,18 +48,16 @@ static struct eth_platform_data __initdata eth_data[2] = { | |||
| 48 | }, | 48 | }, |
| 49 | }; | 49 | }; |
| 50 | 50 | ||
| 51 | #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM | 51 | #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC |
| 52 | #ifndef CONFIG_BOARD_ATSTK1002_SW3_CUSTOM | ||
| 53 | static struct at73c213_board_info at73c213_data = { | 52 | static struct at73c213_board_info at73c213_data = { |
| 54 | .ssc_id = 0, | 53 | .ssc_id = 0, |
| 55 | .shortname = "AVR32 STK1000 external DAC", | 54 | .shortname = "AVR32 STK1000 external DAC", |
| 56 | }; | 55 | }; |
| 57 | #endif | 56 | #endif |
| 58 | #endif | ||
| 59 | 57 | ||
| 60 | #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM | 58 | #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM |
| 61 | static struct spi_board_info spi0_board_info[] __initdata = { | 59 | static struct spi_board_info spi0_board_info[] __initdata = { |
| 62 | #ifndef CONFIG_BOARD_ATSTK1002_SW3_CUSTOM | 60 | #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC |
| 63 | { | 61 | { |
| 64 | /* AT73C213 */ | 62 | /* AT73C213 */ |
| 65 | .modalias = "at73c213", | 63 | .modalias = "at73c213", |
| @@ -140,9 +138,8 @@ static void __init set_hw_addr(struct platform_device *pdev) | |||
| 140 | clk_put(pclk); | 138 | clk_put(pclk); |
| 141 | } | 139 | } |
| 142 | 140 | ||
| 143 | #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM | 141 | #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC |
| 144 | #ifndef CONFIG_BOARD_ATSTK1002_SW3_CUSTOM | 142 | static void __init atstk1002_setup_extdac(void) |
| 145 | static void __init at73c213_set_clk(struct at73c213_board_info *info) | ||
| 146 | { | 143 | { |
| 147 | struct clk *gclk; | 144 | struct clk *gclk; |
| 148 | struct clk *pll; | 145 | struct clk *pll; |
| @@ -160,7 +157,7 @@ static void __init at73c213_set_clk(struct at73c213_board_info *info) | |||
| 160 | } | 157 | } |
| 161 | 158 | ||
| 162 | at32_select_periph(GPIO_PIN_PA(30), GPIO_PERIPH_A, 0); | 159 | at32_select_periph(GPIO_PIN_PA(30), GPIO_PERIPH_A, 0); |
| 163 | info->dac_clk = gclk; | 160 | at73c213_data.dac_clk = gclk; |
| 164 | 161 | ||
| 165 | err_set_clk: | 162 | err_set_clk: |
| 166 | clk_put(pll); | 163 | clk_put(pll); |
| @@ -169,8 +166,12 @@ err_pll: | |||
| 169 | err_gclk: | 166 | err_gclk: |
| 170 | return; | 167 | return; |
| 171 | } | 168 | } |
| 172 | #endif | 169 | #else |
| 173 | #endif | 170 | static void __init atstk1002_setup_extdac(void) |
| 171 | { | ||
| 172 | |||
| 173 | } | ||
| 174 | #endif /* CONFIG_BOARD_ATSTK1000_EXTDAC */ | ||
| 174 | 175 | ||
| 175 | void __init setup_board(void) | 176 | void __init setup_board(void) |
| 176 | { | 177 | { |
| @@ -239,12 +240,7 @@ static int __init atstk1002_init(void) | |||
| 239 | #endif | 240 | #endif |
| 240 | 241 | ||
| 241 | atstk1000_setup_j2_leds(); | 242 | atstk1000_setup_j2_leds(); |
| 242 | 243 | atstk1002_setup_extdac(); | |
| 243 | #ifndef CONFIG_BOARD_ATSTK1002_SW3_CUSTOM | ||
| 244 | #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM | ||
| 245 | at73c213_set_clk(&at73c213_data); | ||
| 246 | #endif | ||
| 247 | #endif | ||
| 248 | 244 | ||
| 249 | return 0; | 245 | return 0; |
| 250 | } | 246 | } |
