Lines Matching refs:dev

21 static int zd1301_demod_wreg(struct zd1301_demod_dev *dev, u16 reg, u8 val)  in zd1301_demod_wreg()  argument
23 struct platform_device *pdev = dev->pdev; in zd1301_demod_wreg()
24 struct zd1301_demod_platform_data *pdata = pdev->dev.platform_data; in zd1301_demod_wreg()
29 static int zd1301_demod_rreg(struct zd1301_demod_dev *dev, u16 reg, u8 *val) in zd1301_demod_rreg() argument
31 struct platform_device *pdev = dev->pdev; in zd1301_demod_rreg()
32 struct zd1301_demod_platform_data *pdata = pdev->dev.platform_data; in zd1301_demod_rreg()
39 struct zd1301_demod_dev *dev = fe->demodulator_priv; in zd1301_demod_set_frontend() local
40 struct platform_device *pdev = dev->pdev; in zd1301_demod_set_frontend()
46 dev_dbg(&pdev->dev, "frequency=%u bandwidth_hz=%u\n", in zd1301_demod_set_frontend()
63 dev_dbg(&pdev->dev, "if_frequency=%u\n", if_frequency); in zd1301_demod_set_frontend()
84 ret = zd1301_demod_wreg(dev, 0x6a60, 0x11); in zd1301_demod_set_frontend()
87 ret = zd1301_demod_wreg(dev, 0x6a47, 0x46); in zd1301_demod_set_frontend()
90 ret = zd1301_demod_wreg(dev, 0x6a48, 0x46); in zd1301_demod_set_frontend()
93 ret = zd1301_demod_wreg(dev, 0x6a4a, 0x15); in zd1301_demod_set_frontend()
96 ret = zd1301_demod_wreg(dev, 0x6a4b, 0x63); in zd1301_demod_set_frontend()
99 ret = zd1301_demod_wreg(dev, 0x6a5b, 0x99); in zd1301_demod_set_frontend()
102 ret = zd1301_demod_wreg(dev, 0x6a3b, 0x10); in zd1301_demod_set_frontend()
105 ret = zd1301_demod_wreg(dev, 0x6806, 0x01); in zd1301_demod_set_frontend()
108 ret = zd1301_demod_wreg(dev, 0x6a41, 0x08); in zd1301_demod_set_frontend()
111 ret = zd1301_demod_wreg(dev, 0x6a42, 0x46); in zd1301_demod_set_frontend()
114 ret = zd1301_demod_wreg(dev, 0x6a44, 0x14); in zd1301_demod_set_frontend()
117 ret = zd1301_demod_wreg(dev, 0x6a45, 0x67); in zd1301_demod_set_frontend()
120 ret = zd1301_demod_wreg(dev, 0x6a38, 0x00); in zd1301_demod_set_frontend()
123 ret = zd1301_demod_wreg(dev, 0x6a4c, 0x52); in zd1301_demod_set_frontend()
126 ret = zd1301_demod_wreg(dev, 0x6a49, 0x2a); in zd1301_demod_set_frontend()
129 ret = zd1301_demod_wreg(dev, 0x6840, 0x2e); in zd1301_demod_set_frontend()
132 ret = zd1301_demod_wreg(dev, 0x6a50, r6a50_val); in zd1301_demod_set_frontend()
135 ret = zd1301_demod_wreg(dev, 0x6a38, 0x07); in zd1301_demod_set_frontend()
141 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_set_frontend()
147 struct zd1301_demod_dev *dev = fe->demodulator_priv; in zd1301_demod_sleep() local
148 struct platform_device *pdev = dev->pdev; in zd1301_demod_sleep()
151 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_sleep()
153 ret = zd1301_demod_wreg(dev, 0x6a43, 0x70); in zd1301_demod_sleep()
156 ret = zd1301_demod_wreg(dev, 0x684e, 0x00); in zd1301_demod_sleep()
159 ret = zd1301_demod_wreg(dev, 0x6849, 0x00); in zd1301_demod_sleep()
162 ret = zd1301_demod_wreg(dev, 0x68e2, 0xd7); in zd1301_demod_sleep()
165 ret = zd1301_demod_wreg(dev, 0x68e0, 0x39); in zd1301_demod_sleep()
168 ret = zd1301_demod_wreg(dev, 0x6840, 0x21); in zd1301_demod_sleep()
174 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_sleep()
180 struct zd1301_demod_dev *dev = fe->demodulator_priv; in zd1301_demod_init() local
181 struct platform_device *pdev = dev->pdev; in zd1301_demod_init()
184 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_init()
186 ret = zd1301_demod_wreg(dev, 0x6840, 0x26); in zd1301_demod_init()
189 ret = zd1301_demod_wreg(dev, 0x68e0, 0xff); in zd1301_demod_init()
192 ret = zd1301_demod_wreg(dev, 0x68e2, 0xd8); in zd1301_demod_init()
195 ret = zd1301_demod_wreg(dev, 0x6849, 0x4e); in zd1301_demod_init()
198 ret = zd1301_demod_wreg(dev, 0x684e, 0x01); in zd1301_demod_init()
201 ret = zd1301_demod_wreg(dev, 0x6a43, zd1301_demod_gain); in zd1301_demod_init()
207 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_init()
214 struct zd1301_demod_dev *dev = fe->demodulator_priv; in zd1301_demod_get_tune_settings() local
215 struct platform_device *pdev = dev->pdev; in zd1301_demod_get_tune_settings()
217 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_get_tune_settings()
228 struct zd1301_demod_dev *dev = fe->demodulator_priv; in zd1301_demod_read_status() local
229 struct platform_device *pdev = dev->pdev; in zd1301_demod_read_status()
233 ret = zd1301_demod_rreg(dev, 0x6a24, &u8tmp); in zd1301_demod_read_status()
242 dev_dbg(&pdev->dev, "lock byte=%02x\n", u8tmp); in zd1301_demod_read_status()
258 if (dev->gain != zd1301_demod_gain) { in zd1301_demod_read_status()
259 dev->gain = zd1301_demod_gain; in zd1301_demod_read_status()
261 ret = zd1301_demod_wreg(dev, 0x6a43, dev->gain); in zd1301_demod_read_status()
268 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_read_status()
301 struct zd1301_demod_dev *dev = platform_get_drvdata(pdev); in zd1301_demod_get_dvb_frontend() local
303 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_get_dvb_frontend()
305 return &dev->frontend; in zd1301_demod_get_dvb_frontend()
312 struct zd1301_demod_dev *dev = i2c_get_adapdata(adapter); in zd1301_demod_i2c_master_xfer() local
313 struct platform_device *pdev = dev->pdev; in zd1301_demod_i2c_master_xfer()
326 dev_dbg(&pdev->dev, "write&read msg[0].len=%u msg[1].len=%u\n", in zd1301_demod_i2c_master_xfer()
333 ret = zd1301_demod_wreg(dev, 0x6811, 0x80); in zd1301_demod_i2c_master_xfer()
336 ret = zd1301_demod_wreg(dev, 0x6812, 0x05); in zd1301_demod_i2c_master_xfer()
339 ret = zd1301_demod_wreg(dev, 0x6813, msg[1].addr << 1); in zd1301_demod_i2c_master_xfer()
342 ret = zd1301_demod_wreg(dev, 0x6801, msg[0].buf[0]); in zd1301_demod_i2c_master_xfer()
345 ret = zd1301_demod_wreg(dev, 0x6802, 0x00); in zd1301_demod_i2c_master_xfer()
348 ret = zd1301_demod_wreg(dev, 0x6803, 0x06); in zd1301_demod_i2c_master_xfer()
351 ret = zd1301_demod_wreg(dev, 0x6805, 0x00); in zd1301_demod_i2c_master_xfer()
354 ret = zd1301_demod_wreg(dev, 0x6804, msg[1].len); in zd1301_demod_i2c_master_xfer()
363 ret = zd1301_demod_rreg(dev, 0x6804, &u8tmp); in zd1301_demod_i2c_master_xfer()
369 ret = zd1301_demod_rreg(dev, 0x0600 + i, &msg[1].buf[i]); in zd1301_demod_i2c_master_xfer()
374 dev_dbg(&pdev->dev, "write msg[0].len=%u\n", msg[0].len); in zd1301_demod_i2c_master_xfer()
380 ret = zd1301_demod_wreg(dev, 0x6811, 0x80); in zd1301_demod_i2c_master_xfer()
383 ret = zd1301_demod_wreg(dev, 0x6812, 0x01); in zd1301_demod_i2c_master_xfer()
386 ret = zd1301_demod_wreg(dev, 0x6813, msg[0].addr << 1); in zd1301_demod_i2c_master_xfer()
389 ret = zd1301_demod_wreg(dev, 0x6800, msg[0].buf[0]); in zd1301_demod_i2c_master_xfer()
392 ret = zd1301_demod_wreg(dev, 0x6802, 0x00); in zd1301_demod_i2c_master_xfer()
395 ret = zd1301_demod_wreg(dev, 0x6803, 0x06); in zd1301_demod_i2c_master_xfer()
400 ret = zd1301_demod_wreg(dev, 0x0600 + i, msg[0].buf[1 + i]); in zd1301_demod_i2c_master_xfer()
405 ret = zd1301_demod_wreg(dev, 0x6805, 0x80); in zd1301_demod_i2c_master_xfer()
408 ret = zd1301_demod_wreg(dev, 0x6804, msg[0].len - 1); in zd1301_demod_i2c_master_xfer()
417 ret = zd1301_demod_rreg(dev, 0x6804, &u8tmp); in zd1301_demod_i2c_master_xfer()
422 dev_dbg(&pdev->dev, "unknown msg[0].len=%u\n", msg[0].len); in zd1301_demod_i2c_master_xfer()
429 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_i2c_master_xfer()
445 struct zd1301_demod_dev *dev = platform_get_drvdata(pdev); in zd1301_demod_get_i2c_adapter() local
447 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_get_i2c_adapter()
449 return &dev->adapter; in zd1301_demod_get_i2c_adapter()
456 struct zd1301_demod_dev *dev; in zd1301_demod_probe() local
457 struct zd1301_demod_platform_data *pdata = pdev->dev.platform_data; in zd1301_demod_probe()
460 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_probe()
464 dev_err(&pdev->dev, "cannot proceed without platform data\n"); in zd1301_demod_probe()
467 if (!pdev->dev.parent->driver) { in zd1301_demod_probe()
469 dev_dbg(&pdev->dev, "no parent device\n"); in zd1301_demod_probe()
473 dev = kzalloc(sizeof(*dev), GFP_KERNEL); in zd1301_demod_probe()
474 if (!dev) { in zd1301_demod_probe()
480 dev->pdev = pdev; in zd1301_demod_probe()
481 dev->gain = zd1301_demod_gain; in zd1301_demod_probe()
484 ret = zd1301_demod_wreg(dev, 0x6840, 0x21); in zd1301_demod_probe()
487 ret = zd1301_demod_wreg(dev, 0x6a38, 0x07); in zd1301_demod_probe()
492 strscpy(dev->adapter.name, "ZyDAS ZD1301 demod", in zd1301_demod_probe()
493 sizeof(dev->adapter.name)); in zd1301_demod_probe()
494 dev->adapter.algo = &zd1301_demod_i2c_algorithm; in zd1301_demod_probe()
495 dev->adapter.algo_data = NULL; in zd1301_demod_probe()
496 dev->adapter.dev.parent = pdev->dev.parent; in zd1301_demod_probe()
497 i2c_set_adapdata(&dev->adapter, dev); in zd1301_demod_probe()
498 ret = i2c_add_adapter(&dev->adapter); in zd1301_demod_probe()
500 dev_err(&pdev->dev, "I2C adapter add failed %d\n", ret); in zd1301_demod_probe()
505 memcpy(&dev->frontend.ops, &zd1301_demod_ops, sizeof(dev->frontend.ops)); in zd1301_demod_probe()
506 dev->frontend.demodulator_priv = dev; in zd1301_demod_probe()
507 platform_set_drvdata(pdev, dev); in zd1301_demod_probe()
508 dev_info(&pdev->dev, "ZyDAS ZD1301 demod attached\n"); in zd1301_demod_probe()
512 kfree(dev); in zd1301_demod_probe()
514 dev_dbg(&pdev->dev, "failed=%d\n", ret); in zd1301_demod_probe()
520 struct zd1301_demod_dev *dev = platform_get_drvdata(pdev); in zd1301_demod_remove() local
522 dev_dbg(&pdev->dev, "\n"); in zd1301_demod_remove()
524 i2c_del_adapter(&dev->adapter); in zd1301_demod_remove()
525 kfree(dev); in zd1301_demod_remove()