• Home
  • Raw
  • Download

Lines Matching full:isl1208

3  * Intersil ISL1208 rtc class driver
112 { "isl1208", .driver_data = (kernel_ulong_t)&config_isl1208 },
122 { .compatible = "isil,isl1208", .data = &config_isl1208 },
165 /* simple check to see whether we have a isl1208 */
628 struct isl1208_state *isl1208 = i2c_get_clientdata(client); in isl1208_rtc_interrupt() local
651 rtc_update_irq(isl1208->rtc, 1, RTC_IRQF | RTC_AF); in isl1208_rtc_interrupt()
668 if (isl1208->config->has_tamper && (sr & ISL1208_REG_SR_EVT)) { in isl1208_rtc_interrupt()
671 if (isl1208->config->has_timestamp) in isl1208_rtc_interrupt()
672 sysfs_notify(&isl1208->rtc->dev.kobj, NULL, in isl1208_rtc_interrupt()
776 struct isl1208_state *isl1208 = priv; in isl1208_nvmem_read() local
777 struct i2c_client *client = to_i2c_client(isl1208->rtc->dev.parent); in isl1208_nvmem_read()
791 struct isl1208_state *isl1208 = priv; in isl1208_nvmem_write() local
792 struct i2c_client *client = to_i2c_client(isl1208->rtc->dev.parent); in isl1208_nvmem_write()
846 struct isl1208_state *isl1208; in isl1208_probe() local
859 isl1208 = devm_kzalloc(&client->dev, sizeof(*isl1208), GFP_KERNEL); in isl1208_probe()
860 if (!isl1208) in isl1208_probe()
862 i2c_set_clientdata(client, isl1208); in isl1208_probe()
865 isl1208->config = i2c_get_match_data(client); in isl1208_probe()
866 if (!isl1208->config) in isl1208_probe()
882 isl1208->rtc = devm_rtc_allocate_device(&client->dev); in isl1208_probe()
883 if (IS_ERR(isl1208->rtc)) in isl1208_probe()
884 return PTR_ERR(isl1208->rtc); in isl1208_probe()
886 isl1208->rtc->ops = &isl1208_rtc_ops; in isl1208_probe()
889 isl1208->nvmem_config = isl1208_nvmem_config; in isl1208_probe()
890 isl1208->nvmem_config.size = isl1208->config->nvmem_length; in isl1208_probe()
891 isl1208->nvmem_config.priv = isl1208; in isl1208_probe()
899 if (isl1208->config->has_inverted_osc_bit) in isl1208_probe()
910 if (isl1208->config->has_tamper) { in isl1208_probe()
933 if (isl1208->config->has_timestamp) { in isl1208_probe()
934 rc = rtc_add_group(isl1208->rtc, &isl1219_rtc_sysfs_files); in isl1208_probe()
939 rc = rtc_add_group(isl1208->rtc, &isl1208_rtc_sysfs_files); in isl1208_probe()
948 clear_bit(RTC_FEATURE_UPDATE_INTERRUPT, isl1208->rtc->features); in isl1208_probe()
956 rc = devm_rtc_nvmem_register(isl1208->rtc, &isl1208->nvmem_config); in isl1208_probe()
960 return devm_rtc_register_device(isl1208->rtc); in isl1208_probe()
965 .name = "rtc-isl1208",
975 MODULE_DESCRIPTION("Intersil ISL1208 RTC driver");