Lines Matching refs:sma1303

238 static int sma1303_regmap_write(struct sma1303_priv *sma1303,  in sma1303_regmap_write()  argument
242 int cnt = sma1303->retry_cnt; in sma1303_regmap_write()
245 ret = regmap_write(sma1303->regmap, reg, val); in sma1303_regmap_write()
247 dev_err(sma1303->dev, in sma1303_regmap_write()
255 static int sma1303_regmap_update_bits(struct sma1303_priv *sma1303, in sma1303_regmap_update_bits() argument
259 int cnt = sma1303->retry_cnt; in sma1303_regmap_update_bits()
262 ret = regmap_update_bits_check(sma1303->regmap, reg, in sma1303_regmap_update_bits()
265 dev_err(sma1303->dev, in sma1303_regmap_update_bits()
273 static int sma1303_regmap_read(struct sma1303_priv *sma1303, in sma1303_regmap_read() argument
277 int cnt = sma1303->retry_cnt; in sma1303_regmap_read()
280 ret = regmap_read(sma1303->regmap, reg, val); in sma1303_regmap_read()
282 dev_err(sma1303->dev, in sma1303_regmap_read()
314 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_force_mute_get() local
316 ucontrol->value.integer.value[0] = (int)sma1303->force_mute_status; in sma1303_force_mute_get()
317 dev_dbg(sma1303->dev, "%s : Force Mute %s\n", __func__, in sma1303_force_mute_get()
318 sma1303->force_mute_status ? "ON" : "OFF"); in sma1303_force_mute_get()
328 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_force_mute_put() local
331 if (sma1303->force_mute_status == val) in sma1303_force_mute_put()
335 sma1303->force_mute_status = val; in sma1303_force_mute_put()
337 dev_dbg(sma1303->dev, "%s : Force Mute %s\n", __func__, in sma1303_force_mute_put()
338 sma1303->force_mute_status ? "ON" : "OFF"); in sma1303_force_mute_put()
348 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_postscaler_get() local
351 ret = sma1303_regmap_read(sma1303, SMA1303_90_POSTSCALER, &val); in sma1303_postscaler_get()
365 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_postscaler_put() local
369 ret = sma1303_regmap_update_bits(sma1303, in sma1303_postscaler_put()
382 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_tdm_slot_rx_get() local
385 ret = sma1303_regmap_read(sma1303, SMA1303_A5_TDM1, &val); in sma1303_tdm_slot_rx_get()
390 sma1303->tdm_slot_rx = ucontrol->value.integer.value[0]; in sma1303_tdm_slot_rx_get()
400 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_tdm_slot_rx_put() local
404 ret = sma1303_regmap_update_bits(sma1303, in sma1303_tdm_slot_rx_put()
417 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_tdm_slot_tx_get() local
420 ret = sma1303_regmap_read(sma1303, SMA1303_A6_TDM2, &val); in sma1303_tdm_slot_tx_get()
425 sma1303->tdm_slot_tx = ucontrol->value.integer.value[0]; in sma1303_tdm_slot_tx_get()
435 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_tdm_slot_tx_put() local
439 ret = sma1303_regmap_update_bits(sma1303, in sma1303_tdm_slot_tx_put()
449 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_startup() local
452 sma1303_regmap_update_bits(sma1303, SMA1303_8E_PLL_CTRL, in sma1303_startup()
457 sma1303_regmap_update_bits(sma1303, SMA1303_00_SYSTEM_CTRL, in sma1303_startup()
462 if (sma1303->amp_mode == SMA1303_MONO) { in sma1303_startup()
463 sma1303_regmap_update_bits(sma1303, in sma1303_startup()
472 sma1303_regmap_update_bits(sma1303, in sma1303_startup()
481 if (sma1303->check_fault_status) { in sma1303_startup()
482 if (sma1303->check_fault_period > 0) in sma1303_startup()
484 &sma1303->check_fault_work, in sma1303_startup()
485 sma1303->check_fault_period * HZ); in sma1303_startup()
488 &sma1303->check_fault_work, in sma1303_startup()
492 sma1303->amp_power_status = true; in sma1303_startup()
499 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_shutdown() local
502 cancel_delayed_work_sync(&sma1303->check_fault_work); in sma1303_shutdown()
504 sma1303_regmap_update_bits(sma1303, SMA1303_10_SYSTEM_CTRL1, in sma1303_shutdown()
509 sma1303_regmap_update_bits(sma1303, SMA1303_00_SYSTEM_CTRL, in sma1303_shutdown()
513 sma1303_regmap_update_bits(sma1303, SMA1303_8E_PLL_CTRL, in sma1303_shutdown()
518 sma1303->amp_power_status = false; in sma1303_shutdown()
528 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_aif_in_event() local
537 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_in_event()
542 sma1303->amp_mode = SMA1303_MONO; in sma1303_aif_in_event()
545 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_in_event()
552 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_in_event()
559 sma1303->amp_mode = SMA1303_STEREO; in sma1303_aif_in_event()
562 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_in_event()
569 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_in_event()
576 sma1303->amp_mode = SMA1303_STEREO; in sma1303_aif_in_event()
579 dev_err(sma1303->dev, "%s : Invalid value (%d)\n", in sma1303_aif_in_event()
584 dev_dbg(sma1303->dev, "%s : Source : %s\n", __func__, in sma1303_aif_in_event()
598 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_aif_out_event() local
607 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
614 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
623 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
630 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
639 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
646 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
655 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
662 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
671 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
678 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
687 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
694 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
703 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
710 ret += sma1303_regmap_update_bits(sma1303, in sma1303_aif_out_event()
719 dev_err(sma1303->dev, "%s : Invalid value (%d)\n", in sma1303_aif_out_event()
724 dev_dbg(sma1303->dev, "%s : Source : %s\n", __func__, in sma1303_aif_out_event()
738 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_sdo_event() local
744 dev_dbg(sma1303->dev, in sma1303_sdo_event()
746 ret += sma1303_regmap_update_bits(sma1303, in sma1303_sdo_event()
753 ret += sma1303_regmap_update_bits(sma1303, in sma1303_sdo_event()
762 dev_dbg(sma1303->dev, in sma1303_sdo_event()
764 ret += sma1303_regmap_update_bits(sma1303, in sma1303_sdo_event()
771 ret += sma1303_regmap_update_bits(sma1303, in sma1303_sdo_event()
790 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_post_scaler_event() local
796 dev_dbg(sma1303->dev, in sma1303_post_scaler_event()
798 ret += sma1303_regmap_update_bits(sma1303, in sma1303_post_scaler_event()
805 dev_dbg(sma1303->dev, in sma1303_post_scaler_event()
807 ret += sma1303_regmap_update_bits(sma1303, in sma1303_post_scaler_event()
824 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_power_event() local
829 dev_dbg(sma1303->dev, in sma1303_power_event()
834 dev_dbg(sma1303->dev, in sma1303_power_event()
932 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_setup_pll() local
939 if (sma1303->sys_clk_id == SMA1303_PLL_CLKIN_MCLK) { in sma1303_setup_pll()
942 } else if (sma1303->sys_clk_id == SMA1303_PLL_CLKIN_BCLK) { in sma1303_setup_pll()
943 for (i = 0; i < sma1303->num_of_pll_matches; i++) { in sma1303_setup_pll()
944 if (sma1303->pll_matches[i].input_clk == bclk) in sma1303_setup_pll()
947 if (i == sma1303->num_of_pll_matches) { in sma1303_setup_pll()
953 ret += sma1303_regmap_update_bits(sma1303, in sma1303_setup_pll()
960 ret += sma1303_regmap_write(sma1303, in sma1303_setup_pll()
962 sma1303->pll_matches[i].post_n); in sma1303_setup_pll()
964 ret += sma1303_regmap_write(sma1303, in sma1303_setup_pll()
966 sma1303->pll_matches[i].n); in sma1303_setup_pll()
968 ret += sma1303_regmap_write(sma1303, in sma1303_setup_pll()
970 sma1303->pll_matches[i].vco); in sma1303_setup_pll()
972 ret += sma1303_regmap_write(sma1303, in sma1303_setup_pll()
974 sma1303->pll_matches[i].p_cp); in sma1303_setup_pll()
985 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_dai_hw_params_amp() local
989 if (sma1303->format == SND_SOC_DAIFMT_DSP_A) in sma1303_dai_hw_params_amp()
990 bclk = params_rate(params) * sma1303->frame_size; in sma1303_dai_hw_params_amp()
1001 if (sma1303->sys_clk_id == SMA1303_PLL_CLKIN_BCLK) { in sma1303_dai_hw_params_amp()
1002 if (sma1303->last_bclk != bclk) { in sma1303_dai_hw_params_amp()
1004 sma1303->last_bclk = bclk; in sma1303_dai_hw_params_amp()
1017 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1023 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1031 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1037 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1059 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1070 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1080 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1094 switch (sma1303->format) { in sma1303_dai_hw_params_amp()
1096 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1101 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1108 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1113 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1122 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1130 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1139 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1144 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_hw_params_amp()
1173 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_dai_set_sysclk_amp() local
1188 sma1303->sys_clk_id = clk_id; in sma1303_dai_set_sysclk_amp()
1195 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_dai_mute() local
1204 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_mute()
1213 if (!sma1303->force_mute_status) { in sma1303_dai_mute()
1216 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_mute()
1222 dev_dbg(sma1303->dev, in sma1303_dai_mute()
1236 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_dai_set_fmt_amp() local
1244 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_fmt_amp()
1254 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_fmt_amp()
1274 sma1303->format = fmt & SND_SOC_DAIFMT_FORMAT_MASK; in sma1303_dai_set_fmt_amp()
1287 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_fmt_amp()
1296 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_fmt_amp()
1305 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_fmt_amp()
1331 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_dai_set_tdm_slot() local
1337 sma1303->frame_size = slot_width * slots; in sma1303_dai_set_tdm_slot()
1339 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1347 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1354 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1368 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1375 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1387 if (sma1303->tdm_slot_rx < slots) in sma1303_dai_set_tdm_slot()
1388 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1391 (sma1303->tdm_slot_rx) << 3, in sma1303_dai_set_tdm_slot()
1395 __func__, sma1303->tdm_slot_rx); in sma1303_dai_set_tdm_slot()
1397 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1403 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1409 if (sma1303->tdm_slot_tx < slots) in sma1303_dai_set_tdm_slot()
1410 ret += sma1303_regmap_update_bits(sma1303, in sma1303_dai_set_tdm_slot()
1413 (sma1303->tdm_slot_tx) << 3, in sma1303_dai_set_tdm_slot()
1417 __func__, sma1303->tdm_slot_tx); in sma1303_dai_set_tdm_slot()
1460 struct sma1303_priv *sma1303 = in sma1303_check_fault_worker() local
1465 if (sma1303->tsdw_cnt) in sma1303_check_fault_worker()
1466 ret = sma1303_regmap_read(sma1303, in sma1303_check_fault_worker()
1467 SMA1303_0A_SPK_VOL, &sma1303->cur_vol); in sma1303_check_fault_worker()
1469 ret = sma1303_regmap_read(sma1303, in sma1303_check_fault_worker()
1470 SMA1303_0A_SPK_VOL, &sma1303->init_vol); in sma1303_check_fault_worker()
1473 dev_err(sma1303->dev, in sma1303_check_fault_worker()
1478 ret = sma1303_regmap_read(sma1303, SMA1303_FA_STATUS1, &over_temp); in sma1303_check_fault_worker()
1480 dev_err(sma1303->dev, in sma1303_check_fault_worker()
1485 ret = sma1303_regmap_read(sma1303, SMA1303_FB_STATUS2, &ocp_val); in sma1303_check_fault_worker()
1487 dev_err(sma1303->dev, in sma1303_check_fault_worker()
1492 ret = sma1303_regmap_read(sma1303, SMA1303_FF_DEVICE_INDEX, &uvlo_val); in sma1303_check_fault_worker()
1494 dev_err(sma1303->dev, in sma1303_check_fault_worker()
1500 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1503 if ((sma1303->cur_vol + 6) <= 0xFF) in sma1303_check_fault_worker()
1504 sma1303_regmap_write(sma1303, in sma1303_check_fault_worker()
1505 SMA1303_0A_SPK_VOL, sma1303->cur_vol + 6); in sma1303_check_fault_worker()
1507 sma1303->tsdw_cnt++; in sma1303_check_fault_worker()
1508 } else if (sma1303->tsdw_cnt) { in sma1303_check_fault_worker()
1509 sma1303_regmap_write(sma1303, in sma1303_check_fault_worker()
1510 SMA1303_0A_SPK_VOL, sma1303->init_vol); in sma1303_check_fault_worker()
1511 sma1303->tsdw_cnt = 0; in sma1303_check_fault_worker()
1512 sma1303->cur_vol = sma1303->init_vol; in sma1303_check_fault_worker()
1516 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1520 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1524 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1527 if ((ocp_val & SMA1303_CLK_MON_STATUS) && (sma1303->amp_power_status)) { in sma1303_check_fault_worker()
1528 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1532 dev_crit(sma1303->dev, in sma1303_check_fault_worker()
1536 if ((over_temp != sma1303->last_over_temp) || in sma1303_check_fault_worker()
1537 (ocp_val != sma1303->last_ocp_val)) { in sma1303_check_fault_worker()
1539 dev_crit(sma1303->dev, "Please check AMP status"); in sma1303_check_fault_worker()
1540 dev_dbg(sma1303->dev, "STATUS1=0x%02X : STATUS2=0x%02X\n", in sma1303_check_fault_worker()
1542 sma1303->last_over_temp = over_temp; in sma1303_check_fault_worker()
1543 sma1303->last_ocp_val = ocp_val; in sma1303_check_fault_worker()
1546 if (sma1303->check_fault_status) { in sma1303_check_fault_worker()
1547 if (sma1303->check_fault_period > 0) in sma1303_check_fault_worker()
1549 &sma1303->check_fault_work, in sma1303_check_fault_worker()
1550 sma1303->check_fault_period * HZ); in sma1303_check_fault_worker()
1553 &sma1303->check_fault_work, in sma1303_check_fault_worker()
1578 struct sma1303_priv *sma1303 = snd_soc_component_get_drvdata(component); in sma1303_remove() local
1580 cancel_delayed_work_sync(&sma1303->check_fault_work); in sma1303_remove()
1611 struct sma1303_priv *sma1303 = dev_get_drvdata(dev); in check_fault_period_show() local
1613 return sysfs_emit(buf, "%ld\n", sma1303->check_fault_period); in check_fault_period_show()
1619 struct sma1303_priv *sma1303 = dev_get_drvdata(dev); in check_fault_period_store() local
1622 ret = kstrtol(buf, 10, &sma1303->check_fault_period); in check_fault_period_store()
1635 struct sma1303_priv *sma1303 = dev_get_drvdata(dev); in check_fault_status_show() local
1637 return sysfs_emit(buf, "%ld\n", sma1303->check_fault_status); in check_fault_status_show()
1643 struct sma1303_priv *sma1303 = dev_get_drvdata(dev); in check_fault_status_store() local
1646 ret = kstrtol(buf, 10, &sma1303->check_fault_status); in check_fault_status_store()
1651 if (sma1303->check_fault_status) { in check_fault_status_store()
1652 if (sma1303->check_fault_period > 0) in check_fault_status_store()
1654 &sma1303->check_fault_work, in check_fault_status_store()
1655 sma1303->check_fault_period * HZ); in check_fault_status_store()
1658 &sma1303->check_fault_work, in check_fault_status_store()
1679 struct sma1303_priv *sma1303; in sma1303_i2c_probe() local
1683 sma1303 = devm_kzalloc(&client->dev, in sma1303_i2c_probe()
1685 if (!sma1303) in sma1303_i2c_probe()
1687 sma1303->dev = &client->dev; in sma1303_i2c_probe()
1689 sma1303->regmap = devm_regmap_init_i2c(client, &sma_i2c_regmap); in sma1303_i2c_probe()
1690 if (IS_ERR(sma1303->regmap)) { in sma1303_i2c_probe()
1691 ret = PTR_ERR(sma1303->regmap); in sma1303_i2c_probe()
1698 ret = sma1303_regmap_read(sma1303, in sma1303_i2c_probe()
1707 ret += sma1303_regmap_update_bits(sma1303, in sma1303_i2c_probe()
1712 ret += sma1303_regmap_read(sma1303, SMA1303_FF_DEVICE_INDEX, &status); in sma1303_i2c_probe()
1713 sma1303->rev_num = status & SMA1303_REV_NUM_STATUS; in sma1303_i2c_probe()
1714 if (sma1303->rev_num == SMA1303_REV_NUM_TV0) in sma1303_i2c_probe()
1716 else if (sma1303->rev_num == SMA1303_REV_NUM_TV1) in sma1303_i2c_probe()
1719 ret += sma1303_regmap_read(sma1303, SMA1303_FB_STATUS2, &otp_stat); in sma1303_i2c_probe()
1725 if (((sma1303->rev_num == SMA1303_REV_NUM_TV0) && in sma1303_i2c_probe()
1727 ((sma1303->rev_num != SMA1303_REV_NUM_TV0) && in sma1303_i2c_probe()
1734 ret += sma1303_regmap_write(sma1303, in sma1303_i2c_probe()
1738 sma1303->amp_mode = SMA1303_MONO; in sma1303_i2c_probe()
1739 sma1303->amp_power_status = false; in sma1303_i2c_probe()
1740 sma1303->check_fault_period = CHECK_PERIOD_TIME; in sma1303_i2c_probe()
1741 sma1303->check_fault_status = true; in sma1303_i2c_probe()
1742 sma1303->force_mute_status = false; in sma1303_i2c_probe()
1743 sma1303->init_vol = 0x31; in sma1303_i2c_probe()
1744 sma1303->cur_vol = sma1303->init_vol; in sma1303_i2c_probe()
1745 sma1303->last_bclk = 0; in sma1303_i2c_probe()
1746 sma1303->last_ocp_val = 0x08; in sma1303_i2c_probe()
1747 sma1303->last_over_temp = 0xC0; in sma1303_i2c_probe()
1748 sma1303->tsdw_cnt = 0; in sma1303_i2c_probe()
1749 sma1303->retry_cnt = SMA1303_I2C_RETRY_COUNT; in sma1303_i2c_probe()
1750 sma1303->tdm_slot_rx = 0; in sma1303_i2c_probe()
1751 sma1303->tdm_slot_tx = 0; in sma1303_i2c_probe()
1752 sma1303->sys_clk_id = SMA1303_PLL_CLKIN_BCLK; in sma1303_i2c_probe()
1754 sma1303->dev = &client->dev; in sma1303_i2c_probe()
1755 sma1303->kobj = &client->dev.kobj; in sma1303_i2c_probe()
1757 INIT_DELAYED_WORK(&sma1303->check_fault_work, in sma1303_i2c_probe()
1760 i2c_set_clientdata(client, sma1303); in sma1303_i2c_probe()
1762 sma1303->pll_matches = sma1303_pll_matches; in sma1303_i2c_probe()
1763 sma1303->num_of_pll_matches = in sma1303_i2c_probe()
1774 sma1303->attr_grp = &sma1303_attr_group; in sma1303_i2c_probe()
1775 ret = sysfs_create_group(sma1303->kobj, sma1303->attr_grp); in sma1303_i2c_probe()
1779 sma1303->attr_grp = NULL; in sma1303_i2c_probe()
1787 struct sma1303_priv *sma1303 = in sma1303_i2c_remove() local
1790 cancel_delayed_work_sync(&sma1303->check_fault_work); in sma1303_i2c_remove()