Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59e8ce574445c5e7a65ec36f47a54803de704e96
Commit:     59e8ce574445c5e7a65ec36f47a54803de704e96
Parent:     a0dd005d1d9f4c3beab52086f3844ef9342d1e67
Author:     Byron Bradley <[EMAIL PROTECTED]>
AuthorDate: Sun Feb 10 22:31:09 2008 +0100
Committer:  Russell King <[EMAIL PROTECTED]>
CommitDate: Sun Feb 17 10:42:06 2008 +0000

    [ARM] 4826/1: Orion: Register the RTC interrupt on the TS-209
    
    The QNAP TS-209 has its RTC interrupt on GPIO 3. Setup this
    as an interrupt and pass it to the i2c_board_info.
    
    Signed-off-by: Byron Bradley <[EMAIL PROTECTED]>
    Acked-by: Nicolas Pitre <[EMAIL PROTECTED]>
    Signed-off-by: Russell King <[EMAIL PROTECTED]>
---
 arch/arm/mach-orion/ts209-setup.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-orion/ts209-setup.c 
b/arch/arm/mach-orion/ts209-setup.c
index 306dbcd..b8cfe68 100644
--- a/arch/arm/mach-orion/ts209-setup.c
+++ b/arch/arm/mach-orion/ts209-setup.c
@@ -192,9 +192,13 @@ static struct mv643xx_eth_platform_data 
qnap_ts209_eth_data = {
 /*****************************************************************************
  * RTC S35390A on I2C bus
  ****************************************************************************/
+
+#define TS209_RTC_GPIO 3
+
 static struct i2c_board_info __initdata qnap_ts209_i2c_rtc = {
        .driver_name = "rtc-s35390a",
        .addr        = 0x30,
+       .irq         = 0,
 };
 
 /****************************************************************************
@@ -328,7 +332,18 @@ static void __init qnap_ts209_init(void)
 
        platform_add_devices(qnap_ts209_devices,
                                ARRAY_SIZE(qnap_ts209_devices));
+
+       /* Get RTC IRQ and register the chip */
+       if (gpio_request(TS209_RTC_GPIO, "rtc") == 0) {
+               if (gpio_direction_input(TS209_RTC_GPIO) == 0)
+                       qnap_ts209_i2c_rtc.irq = gpio_to_irq(TS209_RTC_GPIO);
+               else
+                       gpio_free(TS209_RTC_GPIO);
+       }
+       if (qnap_ts209_i2c_rtc.irq == 0)
+               pr_warning("qnap_ts209_init: failed to get RTC IRQ\n");
        i2c_register_board_info(0, &qnap_ts209_i2c_rtc, 1);
+
        orion_eth_init(&qnap_ts209_eth_data);
        orion_sata_init(&qnap_ts209_sata_data);
 }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to