Lines Matching refs:st
444 static int dib7000m_reset_gpio(struct dib7000m_state *st) in dib7000m_reset_gpio() argument
447 dib7000m_write_word(st, 773, st->cfg.gpio_dir); in dib7000m_reset_gpio()
448 dib7000m_write_word(st, 774, st->cfg.gpio_val); in dib7000m_reset_gpio()
452 dib7000m_write_word(st, 775, st->cfg.gpio_pwm_pos); in dib7000m_reset_gpio()
454 dib7000m_write_word(st, 780, st->cfg.pwm_freq_div); in dib7000m_reset_gpio()
1112 struct dib7000m_state *st = demod->demodulator_priv; in dib7000m_sleep() local
1113 dib7000m_set_output_mode(st, OUTMODE_HIGH_Z); in dib7000m_sleep()
1114 dib7000m_set_power_mode(st, DIB7000M_POWER_INTERFACE_ONLY); in dib7000m_sleep()
1115 return dib7000m_set_adc_state(st, DIBX000_SLOW_ADC_OFF) | in dib7000m_sleep()
1116 dib7000m_set_adc_state(st, DIBX000_ADC_OFF); in dib7000m_sleep()
1316 struct dib7000m_state *st = demod->demodulator_priv; in dib7000m_release() local
1317 dibx000_exit_i2c_master(&st->i2c_master); in dib7000m_release()
1318 kfree(st); in dib7000m_release()
1323 struct dib7000m_state *st = demod->demodulator_priv; in dib7000m_get_i2c_master() local
1324 return dibx000_get_i2c_adapter(&st->i2c_master, intf, gating); in dib7000m_get_i2c_master()
1352 struct dib7000m_state st = { .i2c_adap = i2c };
1357 st.cfg = cfg[k];
1361 st.i2c_addr = new_addr;
1362 if (dib7000m_identify(&st) != 0) {
1363 st.i2c_addr = default_addr;
1364 if (dib7000m_identify(&st) != 0) {
1371 dib7000m_set_output_mode(&st, OUTMODE_DIVERSITY);
1373 dib7000m_write_word(&st, 1796, 0x0); // select DVB-T output
1376 dib7000m_write_word(&st, 1794, (new_addr << 2) | 0x2);
1382 st.cfg = cfg[k];
1383 st.i2c_addr = (0x40 + k) << 1;
1386 dib7000m_write_word(&st,1794, st.i2c_addr << 2);
1389 dib7000m_set_output_mode(&st, OUTMODE_HIGH_Z);
1401 struct dib7000m_state *st; in dib7000m_attach() local
1402 st = kzalloc(sizeof(struct dib7000m_state), GFP_KERNEL); in dib7000m_attach()
1403 if (st == NULL) in dib7000m_attach()
1406 memcpy(&st->cfg, cfg, sizeof(struct dib7000m_config)); in dib7000m_attach()
1407 st->i2c_adap = i2c_adap; in dib7000m_attach()
1408 st->i2c_addr = i2c_addr; in dib7000m_attach()
1410 demod = &st->demod; in dib7000m_attach()
1411 demod->demodulator_priv = st; in dib7000m_attach()
1412 memcpy(&st->demod.ops, &dib7000m_ops, sizeof(struct dvb_frontend_ops)); in dib7000m_attach()
1413 mutex_init(&st->i2c_buffer_lock); in dib7000m_attach()
1415 st->timf_default = cfg->bw->timf; in dib7000m_attach()
1417 if (dib7000m_identify(st) != 0) in dib7000m_attach()
1420 if (st->revision == 0x4000) in dib7000m_attach()
1421 dibx000_init_i2c_master(&st->i2c_master, DIB7000, st->i2c_adap, st->i2c_addr); in dib7000m_attach()
1423 dibx000_init_i2c_master(&st->i2c_master, DIB7000MC, st->i2c_adap, st->i2c_addr); in dib7000m_attach()
1425 dib7000m_demod_reset(st); in dib7000m_attach()
1430 kfree(st); in dib7000m_attach()