Lines Matching refs:dmcst
823 struct dib3000mc_state *dmcst; in dib3000mc_i2c_enumeration() local
829 dmcst = kzalloc(sizeof(struct dib3000mc_state), GFP_KERNEL); in dib3000mc_i2c_enumeration()
830 if (dmcst == NULL) in dib3000mc_i2c_enumeration()
833 dmcst->i2c_adap = i2c; in dib3000mc_i2c_enumeration()
836 dmcst->cfg = &cfg[k]; in dib3000mc_i2c_enumeration()
840 dmcst->i2c_addr = new_addr; in dib3000mc_i2c_enumeration()
841 if (dib3000mc_identify(dmcst) != 0) { in dib3000mc_i2c_enumeration()
842 dmcst->i2c_addr = default_addr; in dib3000mc_i2c_enumeration()
843 if (dib3000mc_identify(dmcst) != 0) { in dib3000mc_i2c_enumeration()
845 kfree(dmcst); in dib3000mc_i2c_enumeration()
850 dib3000mc_set_output_mode(dmcst, OUTMODE_MPEG2_PAR_CONT_CLK); in dib3000mc_i2c_enumeration()
853 dib3000mc_write_word(dmcst, 1024, (new_addr << 3) | 0x1); in dib3000mc_i2c_enumeration()
854 dmcst->i2c_addr = new_addr; in dib3000mc_i2c_enumeration()
858 dmcst->cfg = &cfg[k]; in dib3000mc_i2c_enumeration()
859 dmcst->i2c_addr = DIB3000MC_I2C_ADDRESS[k]; in dib3000mc_i2c_enumeration()
861 dib3000mc_write_word(dmcst, 1024, dmcst->i2c_addr << 3); in dib3000mc_i2c_enumeration()
864 dib3000mc_set_output_mode(dmcst, OUTMODE_HIGH_Z); in dib3000mc_i2c_enumeration()
867 kfree(dmcst); in dib3000mc_i2c_enumeration()