aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-at91/board-sam9260ek.c20
-rw-r--r--arch/arm/mach-at91/board-sam9263ek.c21
2 files changed, 39 insertions, 2 deletions
diff --git a/arch/arm/mach-at91/board-sam9260ek.c b/arch/arm/mach-at91/board-sam9260ek.c
index cb20e70b3b0..0a53c038b51 100644
--- a/arch/arm/mach-at91/board-sam9260ek.c
+++ b/arch/arm/mach-at91/board-sam9260ek.c
@@ -27,6 +27,7 @@
27#include <linux/spi/spi.h> 27#include <linux/spi/spi.h>
28#include <linux/spi/at73c213.h> 28#include <linux/spi/at73c213.h>
29#include <linux/clk.h> 29#include <linux/clk.h>
30#include <linux/i2c/at24.h>
30 31
31#include <mach/hardware.h> 32#include <mach/hardware.h>
32#include <asm/setup.h> 33#include <asm/setup.h>
@@ -222,6 +223,23 @@ static struct gpio_led ek_leds[] = {
222 } 223 }
223}; 224};
224 225
226/*
227 * I2C devices
228 */
229static struct at24_platform_data at24c512 = {
230 .byte_len = SZ_512K / 8,
231 .page_size = 128,
232 .flags = AT24_FLAG_ADDR16,
233};
234
235static struct i2c_board_info __initdata ek_i2c_devices[] = {
236 {
237 I2C_BOARD_INFO("24c512", 0x50),
238 .platform_data = &at24c512,
239 },
240 /* more devices can be added using expansion connectors */
241};
242
225static void __init ek_board_init(void) 243static void __init ek_board_init(void)
226{ 244{
227 /* Serial */ 245 /* Serial */
@@ -239,7 +257,7 @@ static void __init ek_board_init(void)
239 /* MMC */ 257 /* MMC */
240 at91_add_device_mmc(0, &ek_mmc_data); 258 at91_add_device_mmc(0, &ek_mmc_data);
241 /* I2C */ 259 /* I2C */
242 at91_add_device_i2c(NULL, 0); 260 at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices));
243 /* SSC (to AT73C213) */ 261 /* SSC (to AT73C213) */
244 at73c213_set_clk(&at73c213_data); 262 at73c213_set_clk(&at73c213_data);
245 at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX); 263 at91_add_device_ssc(AT91SAM9260_ID_SSC, ATMEL_SSC_TX);
diff --git a/arch/arm/mach-at91/board-sam9263ek.c b/arch/arm/mach-at91/board-sam9263ek.c
index b1d11960a73..c51f2eb3874 100644
--- a/arch/arm/mach-at91/board-sam9263ek.c
+++ b/arch/arm/mach-at91/board-sam9263ek.c
@@ -26,6 +26,7 @@
26#include <linux/platform_device.h> 26#include <linux/platform_device.h>
27#include <linux/spi/spi.h> 27#include <linux/spi/spi.h>
28#include <linux/spi/ads7846.h> 28#include <linux/spi/ads7846.h>
29#include <linux/i2c/at24.h>
29#include <linux/fb.h> 30#include <linux/fb.h>
30#include <linux/gpio_keys.h> 31#include <linux/gpio_keys.h>
31#include <linux/input.h> 32#include <linux/input.h>
@@ -203,6 +204,24 @@ static struct atmel_nand_data __initdata ek_nand_data = {
203 204
204 205
205/* 206/*
207 * I2C devices
208 */
209static struct at24_platform_data at24c512 = {
210 .byte_len = SZ_512K / 8,
211 .page_size = 128,
212 .flags = AT24_FLAG_ADDR16,
213};
214
215
216static struct i2c_board_info __initdata ek_i2c_devices[] = {
217 {
218 I2C_BOARD_INFO("24c512", 0x50),
219 .platform_data = &at24c512,
220 },
221 /* more devices can be added using expansion connectors */
222};
223
224/*
206 * LCD Controller 225 * LCD Controller
207 */ 226 */
208#if defined(CONFIG_FB_ATMEL) || defined(CONFIG_FB_ATMEL_MODULE) 227#if defined(CONFIG_FB_ATMEL) || defined(CONFIG_FB_ATMEL_MODULE)
@@ -360,7 +379,7 @@ static void __init ek_board_init(void)
360 /* NAND */ 379 /* NAND */
361 at91_add_device_nand(&ek_nand_data); 380 at91_add_device_nand(&ek_nand_data);
362 /* I2C */ 381 /* I2C */
363 at91_add_device_i2c(NULL, 0); 382 at91_add_device_i2c(ek_i2c_devices, ARRAY_SIZE(ek_i2c_devices));
364 /* LCD Controller */ 383 /* LCD Controller */
365 at91_add_device_lcdc(&ek_lcdc_data); 384 at91_add_device_lcdc(&ek_lcdc_data);
366 /* Push Buttons */ 385 /* Push Buttons */