{
struct i2c_client *client = m41t80->client;
struct device_node *node = client->dev.of_node;
+ struct device_node *fixed_clock;
struct clk *clk;
struct clk_init_data init;
int ret;
+ fixed_clock = of_get_child_by_name(node, "clock");
+ if (fixed_clock) {
+ /*
+ * skip registering square wave clock when a fixed
+ * clock has been registered. The fixed clock is
+ * registered automatically when being referenced.
+ */
+ of_node_put(fixed_clock);
+ return 0;
+ }
+
/* First disable the clock */
ret = i2c_smbus_read_byte_data(client, M41T80_REG_ALARM_MON);
if (ret < 0)
static int boot_flag;
/**
- * wdt_ping:
- *
- * Reload counter one with the watchdog timeout. We don't bother reloading
- * the cascade counter.
+ * wdt_ping - Reload counter one with the watchdog timeout.
+ * We don't bother reloading the cascade counter.
*/
static void wdt_ping(void)
{
}
/**
- * wdt_disable:
- *
- * disables watchdog.
+ * wdt_disable - disables watchdog.
*/
static void wdt_disable(void)
{
}
/**
- * wdt_write:
+ * wdt_write - write to watchdog.
* @file: file handle to the watchdog
* @buf: buffer to write (unused as data does not matter here
* @count: count of bytes
}
/**
- * wdt_ioctl:
+ * wdt_ioctl - ioctl handler to set watchdog.
* @file: file handle to the device
* @cmd: watchdog command
* @arg: argument pointer
}
/**
- * wdt_open:
+ * wdt_open - open a watchdog.
* @inode: inode of device
* @file: file handle to device
*
}
/**
- * wdt_close:
+ * wdt_release - release a watchdog.
* @inode: inode to board
* @file: file handle to board
*
}
/**
- * notify_sys:
+ * wdt_notify_sys - notify to watchdog.
* @this: our notifier block
* @code: the event being reported
* @unused: unused