diff options
Diffstat (limited to 'include/asm-arm/arch-at91/board.h')
-rw-r--r-- | include/asm-arm/arch-at91/board.h | 38 |
1 files changed, 34 insertions, 4 deletions
diff --git a/include/asm-arm/arch-at91/board.h b/include/asm-arm/arch-at91/board.h index 79054965baa6..55b07bd5316c 100644 --- a/include/asm-arm/arch-at91/board.h +++ b/include/asm-arm/arch-at91/board.h | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/mtd/partitions.h> | 34 | #include <linux/mtd/partitions.h> |
35 | #include <linux/device.h> | 35 | #include <linux/device.h> |
36 | #include <linux/i2c.h> | 36 | #include <linux/i2c.h> |
37 | #include <linux/leds.h> | ||
37 | #include <linux/spi/spi.h> | 38 | #include <linux/spi/spi.h> |
38 | 39 | ||
39 | /* USB Device */ | 40 | /* USB Device */ |
@@ -71,7 +72,7 @@ struct at91_eth_data { | |||
71 | }; | 72 | }; |
72 | extern void __init at91_add_device_eth(struct at91_eth_data *data); | 73 | extern void __init at91_add_device_eth(struct at91_eth_data *data); |
73 | 74 | ||
74 | #if defined(CONFIG_ARCH_AT91SAM9260) || defined(CONFIG_ARCH_AT91SAM9263) | 75 | #if defined(CONFIG_ARCH_AT91SAM9260) || defined(CONFIG_ARCH_AT91SAM9263) || defined(CONFIG_ARCH_AT91CAP9) |
75 | #define eth_platform_data at91_eth_data | 76 | #define eth_platform_data at91_eth_data |
76 | #endif | 77 | #endif |
77 | 78 | ||
@@ -101,13 +102,23 @@ extern void __init at91_add_device_i2c(struct i2c_board_info *devices, int nr_de | |||
101 | extern void __init at91_add_device_spi(struct spi_board_info *devices, int nr_devices); | 102 | extern void __init at91_add_device_spi(struct spi_board_info *devices, int nr_devices); |
102 | 103 | ||
103 | /* Serial */ | 104 | /* Serial */ |
105 | #define ATMEL_UART_CTS 0x01 | ||
106 | #define ATMEL_UART_RTS 0x02 | ||
107 | #define ATMEL_UART_DSR 0x04 | ||
108 | #define ATMEL_UART_DTR 0x08 | ||
109 | #define ATMEL_UART_DCD 0x10 | ||
110 | #define ATMEL_UART_RI 0x20 | ||
111 | |||
112 | extern void __init at91_register_uart(unsigned id, unsigned portnr, unsigned pins); | ||
113 | extern void __init at91_set_serial_console(unsigned portnr); | ||
114 | |||
104 | struct at91_uart_config { | 115 | struct at91_uart_config { |
105 | unsigned short console_tty; /* tty number of serial console */ | 116 | unsigned short console_tty; /* tty number of serial console */ |
106 | unsigned short nr_tty; /* number of serial tty's */ | 117 | unsigned short nr_tty; /* number of serial tty's */ |
107 | short tty_map[]; /* map UART to tty number */ | 118 | short tty_map[]; /* map UART to tty number */ |
108 | }; | 119 | }; |
109 | extern struct platform_device *atmel_default_console_device; | 120 | extern struct platform_device *atmel_default_console_device; |
110 | extern void __init at91_init_serial(struct at91_uart_config *config); | 121 | extern void __init __deprecated at91_init_serial(struct at91_uart_config *config); |
111 | 122 | ||
112 | struct atmel_uart_data { | 123 | struct atmel_uart_data { |
113 | short use_dma_tx; /* use transmit DMA? */ | 124 | short use_dma_tx; /* use transmit DMA? */ |
@@ -116,6 +127,23 @@ struct atmel_uart_data { | |||
116 | }; | 127 | }; |
117 | extern void __init at91_add_device_serial(void); | 128 | extern void __init at91_add_device_serial(void); |
118 | 129 | ||
130 | /* | ||
131 | * SSC -- accessed through ssc_request(id). Drivers don't bind to SSC | ||
132 | * platform devices. Their SSC ID is part of their configuration data, | ||
133 | * along with information about which SSC signals they should use. | ||
134 | */ | ||
135 | #define ATMEL_SSC_TK 0x01 | ||
136 | #define ATMEL_SSC_TF 0x02 | ||
137 | #define ATMEL_SSC_TD 0x04 | ||
138 | #define ATMEL_SSC_TX (ATMEL_SSC_TK | ATMEL_SSC_TF | ATMEL_SSC_TD) | ||
139 | |||
140 | #define ATMEL_SSC_RK 0x10 | ||
141 | #define ATMEL_SSC_RF 0x20 | ||
142 | #define ATMEL_SSC_RD 0x40 | ||
143 | #define ATMEL_SSC_RX (ATMEL_SSC_RK | ATMEL_SSC_RF | ATMEL_SSC_RD) | ||
144 | |||
145 | extern void __init at91_add_device_ssc(unsigned id, unsigned pins); | ||
146 | |||
119 | /* LCD Controller */ | 147 | /* LCD Controller */ |
120 | struct atmel_lcdfb_info; | 148 | struct atmel_lcdfb_info; |
121 | extern void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data); | 149 | extern void __init at91_add_device_lcdc(struct atmel_lcdfb_info *data); |
@@ -126,10 +154,12 @@ struct atmel_ac97_data { | |||
126 | }; | 154 | }; |
127 | extern void __init at91_add_device_ac97(struct atmel_ac97_data *data); | 155 | extern void __init at91_add_device_ac97(struct atmel_ac97_data *data); |
128 | 156 | ||
157 | /* ISI */ | ||
158 | extern void __init at91_add_device_isi(void); | ||
159 | |||
129 | /* LEDs */ | 160 | /* LEDs */ |
130 | extern u8 at91_leds_cpu; | ||
131 | extern u8 at91_leds_timer; | ||
132 | extern void __init at91_init_leds(u8 cpu_led, u8 timer_led); | 161 | extern void __init at91_init_leds(u8 cpu_led, u8 timer_led); |
162 | extern void __init at91_gpio_leds(struct gpio_led *leds, int nr); | ||
133 | 163 | ||
134 | /* FIXME: this needs a better location, but gets stuff building again */ | 164 | /* FIXME: this needs a better location, but gets stuff building again */ |
135 | extern int at91_suspend_entering_slow_clock(void); | 165 | extern int at91_suspend_entering_slow_clock(void); |