13 #include <linux/kernel.h>
15 #include <linux/string.h>
16 #include <linux/types.h>
24 #include <asm/setup.h>
27 #include <mach/board.h>
29 #include <mach/portmux.h>
50 #ifdef CONFIG_BOARD_ATSTK1006
62 .ncs_write_pulse = 30,
68 .ncs_read_recover = 0,
70 .ncs_write_recover = 0,
75 static struct smc_config nand_config __initdata = {
99 .parts = nand_partitions,
108 static struct eth_addr __initdata hw_addr[2];
116 .phy_mask = ~(1
U << 16),
119 .phy_mask = ~(1
U << 17),
123 #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC
126 .shortname =
"AVR32 STK1000 external DAC",
130 #ifndef CONFIG_BOARD_ATSTK100X_SW1_CUSTOM
132 #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC
135 .modalias =
"at73c213",
136 .max_speed_hz = 200000,
139 .platform_data = &at73c213_data,
144 .modalias =
"ltv350qv",
145 .max_speed_hz = 16000000,
152 #ifdef CONFIG_BOARD_ATSTK100X_SPI1
173 sizeof(hw_addr[i].addr));
191 addr = hw_addr[pdev->
id].addr;
192 if (!is_valid_ether_addr(addr))
207 | (addr[1] << 8) | addr[0], regs + 0x98);
213 #ifdef CONFIG_BOARD_ATSTK1000_EXTDAC
214 static void __init atstk1002_setup_extdac(
void)
227 pr_debug(
"STK1000: failed to set pll0 as parent for DAC clock\n");
242 static void __init atstk1002_setup_extdac(
void)
250 #ifdef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM
261 #ifndef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM
268 #ifdef CONFIG_BOARD_ATSTK1002_SW6_CUSTOM
280 static int __init atstk1002_init(
void)
288 #ifdef CONFIG_BOARD_ATSTK1006
294 #ifdef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM
301 #ifndef CONFIG_BOARD_ATSTK1002_SW6_CUSTOM
304 #ifndef CONFIG_BOARD_ATSTK100X_SW1_CUSTOM
307 #ifdef CONFIG_BOARD_ATSTK100X_SPI1
310 #ifndef CONFIG_BOARD_ATSTK100X_SW2_CUSTOM
313 #ifdef CONFIG_BOARD_ATSTK1002_SW5_CUSTOM
321 #ifndef CONFIG_BOARD_ATSTK100X_SW3_CUSTOM
326 atstk1002_setup_extdac();