diff options
author | Catalin Marinas <catalin.marinas@arm.com> | 2009-02-12 09:58:20 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-02-19 06:30:25 -0500 |
commit | 533ad5e60c0a5ff3cef7583b5b1b0eee84c2bda6 (patch) | |
tree | 8fee4ffecf0b42314d20d2a906c46938bad3c543 /arch/arm/mach-versatile | |
parent | 2514cca06be9dc7ae12908085ebaf0ef49e6d8ae (diff) |
[ARM] 5395/1: RealView: Add support for the DS1338 RTC chip
This chip is on the I2C bus on the RealView and Versatile boards. The
patch adds the i2c_board_info definition for this device and registers
it with the I2C subsystem.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-versatile')
-rw-r--r-- | arch/arm/mach-versatile/core.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c index 1c43494f5c42..565776680d8c 100644 --- a/arch/arm/mach-versatile/core.c +++ b/arch/arm/mach-versatile/core.c | |||
@@ -335,11 +335,25 @@ static struct resource versatile_i2c_resource = { | |||
335 | 335 | ||
336 | static struct platform_device versatile_i2c_device = { | 336 | static struct platform_device versatile_i2c_device = { |
337 | .name = "versatile-i2c", | 337 | .name = "versatile-i2c", |
338 | .id = -1, | 338 | .id = 0, |
339 | .num_resources = 1, | 339 | .num_resources = 1, |
340 | .resource = &versatile_i2c_resource, | 340 | .resource = &versatile_i2c_resource, |
341 | }; | 341 | }; |
342 | 342 | ||
343 | static struct i2c_board_info versatile_i2c_board_info[] = { | ||
344 | { | ||
345 | I2C_BOARD_INFO("rtc-ds1307", 0xd0 >> 1), | ||
346 | .type = "ds1338", | ||
347 | }, | ||
348 | }; | ||
349 | |||
350 | static int __init versatile_i2c_init(void) | ||
351 | { | ||
352 | return i2c_register_board_info(0, versatile_i2c_board_info, | ||
353 | ARRAY_SIZE(versatile_i2c_board_info)); | ||
354 | } | ||
355 | arch_initcall(versatile_i2c_init); | ||
356 | |||
343 | #define VERSATILE_SYSMCI (__io_address(VERSATILE_SYS_BASE) + VERSATILE_SYS_MCI_OFFSET) | 357 | #define VERSATILE_SYSMCI (__io_address(VERSATILE_SYS_BASE) + VERSATILE_SYS_MCI_OFFSET) |
344 | 358 | ||
345 | unsigned int mmc_status(struct device *dev) | 359 | unsigned int mmc_status(struct device *dev) |