mfd: Add irq io-resource for tps6586x rtc sub driver
authorLaxman Dewangan <ldewangan@nvidia.com>
Tue, 13 Nov 2012 13:48:06 +0000 (19:18 +0530)
committerSamuel Ortiz <sameo@linux.intel.com>
Tue, 13 Nov 2012 19:02:15 +0000 (20:02 +0100)
Add IRQ IORESOURCE for rtc sub driver of this device.
The rtc driver can get the irq by calling platform_get_irq().

Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/tps6586x.c

index 2cdf1e6c00c82d5571a1123c16aa0d988fe25ff5..c11539a80fc589736a02539d5ab9d468e6a1d513 100644 (file)
@@ -96,12 +96,22 @@ static const struct tps6586x_irq_data tps6586x_irqs[] = {
        [TPS6586X_INT_RTC_ALM2] = TPS6586X_IRQ(TPS6586X_INT_MASK4, 1 << 1),
 };
 
+static struct resource tps6586x_rtc_resources[] = {
+       {
+               .start  = TPS6586X_INT_RTC_ALM1,
+               .end    = TPS6586X_INT_RTC_ALM1,
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
 static struct mfd_cell tps6586x_cell[] = {
        {
                .name = "tps6586x-gpio",
        },
        {
                .name = "tps6586x-rtc",
+               .num_resources = ARRAY_SIZE(tps6586x_rtc_resources),
+               .resources = &tps6586x_rtc_resources[0],
        },
        {
                .name = "tps6586x-onkey",
@@ -562,7 +572,7 @@ static int __devinit tps6586x_i2c_probe(struct i2c_client *client,
 
        ret = mfd_add_devices(tps6586x->dev, -1,
                              tps6586x_cell, ARRAY_SIZE(tps6586x_cell),
-                             NULL, 0, NULL);
+                             NULL, 0, tps6586x->irq_domain);
        if (ret < 0) {
                dev_err(&client->dev, "mfd_add_devices failed: %d\n", ret);
                goto err_mfd_add;