Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b24a7267 authored by Wolfram Sang's avatar Wolfram Sang Committed by Linus Torvalds
Browse files

rtc: ds1307: simplify irq setup code



No need to have two seperate if-blocks for setting up the irq.

Signed-off-by: default avatarWolfram Sang <w.sang@pengutronix.de>
Tested-by: default avatarDavid Anders <danders.dev@gmail.com>
Cc: Austin Boyle <Austin.Boyle@aviatnet.com>
Cc: Alessandro Zummo <alessandro.zummo@towertech.it>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 32d322bc
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -646,11 +646,6 @@ static int __devinit ds1307_probe(struct i2c_client *client,
	case ds_1337:
	case ds_1339:
	case ds_3231:
		/* has IRQ? */
		if (ds1307->client->irq > 0 && chip->alarm) {
			INIT_WORK(&ds1307->work, ds1307_work);
			want_irq = true;
		}
		/* get registers that the "rtc" read below won't read... */
		tmp = ds1307->read_block_data(ds1307->client,
				DS1337_REG_CONTROL, 2, buf);
@@ -668,10 +663,14 @@ static int __devinit ds1307_probe(struct i2c_client *client,
		 * For some variants, be sure alarms can trigger when we're
		 * running on Vbackup (BBSQI/BBSQW)
		 */
		if (want_irq) {
		if (ds1307->client->irq > 0 && chip->alarm) {
			INIT_WORK(&ds1307->work, ds1307_work);

			ds1307->regs[0] |= DS1337_BIT_INTCN
					| bbsqi_bitpos[ds1307->type];
			ds1307->regs[0] &= ~(DS1337_BIT_A2IE | DS1337_BIT_A1IE);

			want_irq = true;
		}

		i2c_smbus_write_byte_data(client, DS1337_REG_CONTROL,