Lines Matching full:client

142 	struct i2c_client	*client;  member
185 struct i2c_client *client = to_i2c_client(dev); in show_hotplug_status() local
186 struct v4l2_subdev *sd = i2c_get_clientdata(client); in show_hotplug_status()
196 struct i2c_client *client = to_i2c_client(dev); in nvp6188_debug_func() local
197 struct v4l2_subdev *sd = i2c_get_clientdata(client); in nvp6188_debug_func()
860 static int nvp6188_write_reg(struct i2c_client *client, u8 reg, u8 val) in nvp6188_write_reg() argument
869 msg.addr = client->addr; in nvp6188_write_reg()
870 msg.flags = client->flags; in nvp6188_write_reg()
874 ret = i2c_transfer(client->adapter, &msg, 1); in nvp6188_write_reg()
880 dev_err(&client->dev, in nvp6188_write_reg()
886 static int nvp6188_write_array(struct i2c_client *client, in nvp6188_write_array() argument
893 ret = nvp6188_write_reg(client, regs[i].addr, regs[i].val); in nvp6188_write_array()
895 dev_err(&client->dev, "%s failed !\n", __func__); in nvp6188_write_array()
905 static int nvp6188_read_reg(struct i2c_client *client, u8 reg, u8 *val) in nvp6188_read_reg() argument
913 msg[0].addr = client->addr; in nvp6188_read_reg()
914 msg[0].flags = client->flags; in nvp6188_read_reg()
918 msg[1].addr = client->addr; in nvp6188_read_reg()
919 msg[1].flags = client->flags | I2C_M_RD; in nvp6188_read_reg()
923 ret = i2c_transfer(client->adapter, msg, 2); in nvp6188_read_reg()
929 dev_err(&client->dev, "nvp6188 read reg(0x%x) failed !\n", reg); in nvp6188_read_reg()
938 struct i2c_client *client = nvp6188->client; in nv6188_read_htotal() local
940 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_read_htotal()
941 nvp6188_read_reg(client, 0xf2, &val_5xf2); in nv6188_read_htotal()
942 nvp6188_read_reg(client, 0xf3, &val_5xf3); in nv6188_read_htotal()
951 struct i2c_client *client = nvp6188->client; in nv6188_read_vfc() local
953 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_read_vfc()
954 nvp6188_read_reg(client, 0xf0, &ch_vfc); in nv6188_read_vfc()
962 struct i2c_client *client = nvp6188->client; in nvp6188_auto_detect_hotplug() local
963 nvp6188_write_reg(client, 0xff, 0x00); in nvp6188_auto_detect_hotplug()
964 nvp6188_read_reg(client, 0xa8, &nvp6188->detect_status); in nvp6188_auto_detect_hotplug()
1028 dev_info(&nvp6188->client->dev, "mipi_freq_idx %d\n", mode->mipi_freq_idx); in nvp6188_set_fmt()
1029 dev_info(&nvp6188->client->dev, "pixel_rate %lld\n", pixel_rate); in nvp6188_set_fmt()
1041 struct i2c_client *client = nvp6188->client; in nvp6188_get_fmt() local
1065 dev_dbg(&client->dev, "%s: %x %dx%d vc %x\n", in nvp6188_get_fmt()
1105 struct i2c_client *client = nvp6188->client; in nvp6188_enum_frame_sizes() local
1107 dev_dbg(&client->dev, "%s:\n", __func__); in nvp6188_enum_frame_sizes()
1246 struct i2c_client *client = nvp6188->client; in nvp6188_set_streaming() local
1248 dev_info(&client->dev, "%s: on: %d\n", __func__, on); in nvp6188_set_streaming()
1427 struct i2c_client *client = nvp6188->client; in nv6188_set_chn_960p() local
1429 dev_info(&client->dev, "%s: ch %d ntpal %d", __func__, ch, ntpal); in nv6188_set_chn_960p()
1431 nvp6188_write_reg(client, 0xff, 0x00); in nv6188_set_chn_960p()
1432 nvp6188_write_reg(client, 0x00 + ch, 0x10); in nv6188_set_chn_960p()
1433 nvp6188_write_reg(client, 0x08 + ch, 0x00); in nv6188_set_chn_960p()
1434 nvp6188_write_reg(client, 0x18 + ch, 0x0f); in nv6188_set_chn_960p()
1435 nvp6188_write_reg(client, 0x30 + ch, 0x12); in nv6188_set_chn_960p()
1436 nvp6188_write_reg(client, 0x34 + ch, 0x00); in nv6188_set_chn_960p()
1437 nvp6188_read_reg(client, 0x54, &val_0x54); in nv6188_set_chn_960p()
1439 nvp6188_write_reg(client, 0x54, val_0x54); in nv6188_set_chn_960p()
1440 nvp6188_write_reg(client, 0x58 + ch, ntpal ? 0x40 : 0x48); in nv6188_set_chn_960p()
1441 nvp6188_write_reg(client, 0x5c + ch, ntpal ? 0x80 : 0x80); in nv6188_set_chn_960p()
1442 nvp6188_write_reg(client, 0x64 + ch, ntpal ? 0x28 : 0x28); in nv6188_set_chn_960p()
1443 nvp6188_write_reg(client, 0x81 + ch, ntpal ? 0x07 : 0x06); in nv6188_set_chn_960p()
1444 nvp6188_write_reg(client, 0x85 + ch, 0x0b); in nv6188_set_chn_960p()
1445 nvp6188_write_reg(client, 0x89 + ch, 0x00); in nv6188_set_chn_960p()
1446 nvp6188_write_reg(client, 0x8e + ch, 0x00); in nv6188_set_chn_960p()
1447 nvp6188_write_reg(client, 0xa0 + ch, 0x05); in nv6188_set_chn_960p()
1448 nvp6188_write_reg(client, 0xff, 0x01); in nv6188_set_chn_960p()
1449 nvp6188_write_reg(client, 0x84 + ch, 0x02); in nv6188_set_chn_960p()
1450 nvp6188_write_reg(client, 0x88 + ch, 0x00); in nv6188_set_chn_960p()
1451 nvp6188_write_reg(client, 0x8c + ch, 0x40); in nv6188_set_chn_960p()
1452 nvp6188_write_reg(client, 0xa0 + ch, 0x20); in nv6188_set_chn_960p()
1453 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_set_chn_960p()
1454 nvp6188_write_reg(client, 0x00, 0xd0); in nv6188_set_chn_960p()
1455 nvp6188_write_reg(client, 0x01, 0x22); in nv6188_set_chn_960p()
1456 nvp6188_write_reg(client, 0x05, 0x04); in nv6188_set_chn_960p()
1457 nvp6188_write_reg(client, 0x08, 0x55); in nv6188_set_chn_960p()
1458 nvp6188_write_reg(client, 0x25, 0xdc); in nv6188_set_chn_960p()
1459 nvp6188_write_reg(client, 0x28, 0x80); in nv6188_set_chn_960p()
1460 nvp6188_write_reg(client, 0x2f, 0x00); in nv6188_set_chn_960p()
1461 nvp6188_write_reg(client, 0x30, 0xe0); in nv6188_set_chn_960p()
1462 nvp6188_write_reg(client, 0x31, 0x43); in nv6188_set_chn_960p()
1463 nvp6188_write_reg(client, 0x32, 0xa2); in nv6188_set_chn_960p()
1464 nvp6188_write_reg(client, 0x47, 0xee); in nv6188_set_chn_960p()
1465 nvp6188_write_reg(client, 0x50, 0xc6); in nv6188_set_chn_960p()
1466 nvp6188_write_reg(client, 0x57, 0x00); in nv6188_set_chn_960p()
1467 nvp6188_write_reg(client, 0x58, 0x77); in nv6188_set_chn_960p()
1468 nvp6188_write_reg(client, 0x5b, 0x41); in nv6188_set_chn_960p()
1469 nvp6188_write_reg(client, 0x5c, 0x78); in nv6188_set_chn_960p()
1470 nvp6188_write_reg(client, 0x5f, 0x00); in nv6188_set_chn_960p()
1471 nvp6188_write_reg(client, 0x62, 0x00); in nv6188_set_chn_960p()
1472 nvp6188_write_reg(client, 0x6C, 0x00); in nv6188_set_chn_960p()
1473 nvp6188_write_reg(client, 0x6d, 0x00); in nv6188_set_chn_960p()
1474 nvp6188_write_reg(client, 0x6e, 0x00); in nv6188_set_chn_960p()
1475 nvp6188_write_reg(client, 0x6f, 0x00); in nv6188_set_chn_960p()
1476 nvp6188_write_reg(client, 0x7b, 0x11); in nv6188_set_chn_960p()
1477 nvp6188_write_reg(client, 0x7c, 0x01); in nv6188_set_chn_960p()
1478 nvp6188_write_reg(client, 0x7d, 0x80); in nv6188_set_chn_960p()
1479 nvp6188_write_reg(client, 0x80, 0x00); in nv6188_set_chn_960p()
1480 nvp6188_write_reg(client, 0x90, 0x01); in nv6188_set_chn_960p()
1481 nvp6188_write_reg(client, 0xa9, 0x00); in nv6188_set_chn_960p()
1482 nvp6188_write_reg(client, 0xb5, 0x40); in nv6188_set_chn_960p()
1483 nvp6188_write_reg(client, 0xb8, 0x39); in nv6188_set_chn_960p()
1484 nvp6188_write_reg(client, 0xb9, 0x72); in nv6188_set_chn_960p()
1485 nvp6188_write_reg(client, 0xd1, 0x00); in nv6188_set_chn_960p()
1486 nvp6188_write_reg(client, 0xd5, 0x80); in nv6188_set_chn_960p()
1487 nvp6188_write_reg(client, 0xff, 0x09); in nv6188_set_chn_960p()
1488 nvp6188_write_reg(client, 0x96 + (ch * 0x20), 0x00); in nv6188_set_chn_960p()
1489 nvp6188_write_reg(client, 0x98 + (ch * 0x20), 0x00); in nv6188_set_chn_960p()
1490 nvp6188_write_reg(client, 0x9e + (ch * 0x20), 0x00); in nv6188_set_chn_960p()
1491 nvp6188_write_reg(client, 0xff, 0x11); in nv6188_set_chn_960p()
1492 nvp6188_write_reg(client, 0x00 + (ch * 0x20), 0x00); in nv6188_set_chn_960p()
1493 nvp6188_write_reg(client, 0xff, _MAR_BANK_); in nv6188_set_chn_960p()
1494 nvp6188_read_reg(client, 0x01, &val_20x01); in nv6188_set_chn_960p()
1497 nvp6188_write_reg(client, 0x01, val_20x01); in nv6188_set_chn_960p()
1498 nvp6188_write_reg(client, 0x12 + (ch * 2), 0x80); in nv6188_set_chn_960p()
1499 nvp6188_write_reg(client, 0x13 + (ch * 2), 0x02); in nv6188_set_chn_960p()
1512 struct i2c_client *client = nvp6188->client; in nv6188_set_chn_960h() local
1514 dev_err(&client->dev, "%s: ch %d ntpal %d", __func__, ch, ntpal); in nv6188_set_chn_960h()
1515 nvp6188_write_reg(client, 0xff, 0x00); in nv6188_set_chn_960h()
1516 nvp6188_write_reg(client, 0x00 + ch, 0x10); in nv6188_set_chn_960h()
1517 nvp6188_write_reg(client, 0x08 + ch, ntpal ? 0xdd : 0xa0); in nv6188_set_chn_960h()
1518 nvp6188_write_reg(client, 0x18 + ch, 0x08); in nv6188_set_chn_960h()
1519 nvp6188_write_reg(client, 0x22 + ch * 4, 0x0b); in nv6188_set_chn_960h()
1520 nvp6188_write_reg(client, 0x23 + ch * 4, 0x41); in nv6188_set_chn_960h()
1521 nvp6188_write_reg(client, 0x30 + ch, 0x12); in nv6188_set_chn_960h()
1522 nvp6188_write_reg(client, 0x34 + ch, 0x01); in nv6188_set_chn_960h()
1523 nvp6188_read_reg(client, 0x54, &val_0x54); in nv6188_set_chn_960h()
1528 nvp6188_write_reg(client, 0x54, val_0x54); in nv6188_set_chn_960h()
1529 nvp6188_write_reg(client, 0x58 + ch, ntpal ? 0x80 : 0x90); in nv6188_set_chn_960h()
1530 nvp6188_write_reg(client, 0x5c + ch, ntpal ? 0xbe : 0xbc); in nv6188_set_chn_960h()
1531 nvp6188_write_reg(client, 0x64 + ch, ntpal ? 0xa0 : 0x81); in nv6188_set_chn_960h()
1532 nvp6188_write_reg(client, 0x81 + ch, ntpal ? 0xf0 : 0xe0); in nv6188_set_chn_960h()
1533 nvp6188_write_reg(client, 0x85 + ch, 0x00); in nv6188_set_chn_960h()
1534 nvp6188_write_reg(client, 0x89 + ch, 0x00); in nv6188_set_chn_960h()
1535 nvp6188_write_reg(client, 0x8e + ch, 0x00); in nv6188_set_chn_960h()
1536 nvp6188_write_reg(client, 0xa0 + ch, 0x05); in nv6188_set_chn_960h()
1537 nvp6188_write_reg(client, 0xff, 0x01); in nv6188_set_chn_960h()
1538 nvp6188_write_reg(client, 0x84 + ch, 0x02); in nv6188_set_chn_960h()
1539 nvp6188_write_reg(client, 0x88 + ch, 0x00); in nv6188_set_chn_960h()
1540 nvp6188_write_reg(client, 0x8c + ch, 0x40); in nv6188_set_chn_960h()
1541 nvp6188_write_reg(client, 0xa0 + ch, 0x20); in nv6188_set_chn_960h()
1542 nvp6188_write_reg(client, 0xed, 0x00); in nv6188_set_chn_960h()
1543 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_set_chn_960h()
1544 nvp6188_write_reg(client, 0x00, 0xd0); in nv6188_set_chn_960h()
1545 nvp6188_write_reg(client, 0x01, 0x22); in nv6188_set_chn_960h()
1546 nvp6188_write_reg(client, 0x05, 0x00); in nv6188_set_chn_960h()
1547 nvp6188_write_reg(client, 0x08, 0x55); in nv6188_set_chn_960h()
1548 nvp6188_write_reg(client, 0x25, 0xdc); in nv6188_set_chn_960h()
1549 nvp6188_write_reg(client, 0x28, 0x80); in nv6188_set_chn_960h()
1550 nvp6188_write_reg(client, 0x2f, 0x00); in nv6188_set_chn_960h()
1551 nvp6188_write_reg(client, 0x30, 0xe0); in nv6188_set_chn_960h()
1552 nvp6188_write_reg(client, 0x31, 0x43); in nv6188_set_chn_960h()
1553 nvp6188_write_reg(client, 0x32, 0xa2); in nv6188_set_chn_960h()
1554 nvp6188_write_reg(client, 0x47, 0x04); in nv6188_set_chn_960h()
1555 nvp6188_write_reg(client, 0x50, 0x84); in nv6188_set_chn_960h()
1556 nvp6188_write_reg(client, 0x57, 0x00); in nv6188_set_chn_960h()
1557 nvp6188_write_reg(client, 0x58, 0x77); in nv6188_set_chn_960h()
1558 nvp6188_write_reg(client, 0x5b, 0x43); in nv6188_set_chn_960h()
1559 nvp6188_write_reg(client, 0x5c, 0x78); in nv6188_set_chn_960h()
1560 nvp6188_write_reg(client, 0x5f, 0x00); in nv6188_set_chn_960h()
1561 nvp6188_write_reg(client, 0x62, 0x20); in nv6188_set_chn_960h()
1562 nvp6188_write_reg(client, 0x7b, 0x00); in nv6188_set_chn_960h()
1563 nvp6188_write_reg(client, 0x7c, 0x01); in nv6188_set_chn_960h()
1564 nvp6188_write_reg(client, 0x7d, 0x80); in nv6188_set_chn_960h()
1565 nvp6188_write_reg(client, 0x80, 0x00); in nv6188_set_chn_960h()
1566 nvp6188_write_reg(client, 0x90, 0x01); in nv6188_set_chn_960h()
1567 nvp6188_write_reg(client, 0xa9, 0x00); in nv6188_set_chn_960h()
1568 nvp6188_write_reg(client, 0xb5, 0x00); in nv6188_set_chn_960h()
1569 nvp6188_write_reg(client, 0xb8, 0xb9); in nv6188_set_chn_960h()
1570 nvp6188_write_reg(client, 0xb9, 0x72); in nv6188_set_chn_960h()
1571 nvp6188_write_reg(client, 0xd1, 0x00); in nv6188_set_chn_960h()
1572 nvp6188_write_reg(client, 0xd5, 0x80); in nv6188_set_chn_960h()
1573 nvp6188_write_reg(client, 0xff, 0x09); in nv6188_set_chn_960h()
1574 nvp6188_write_reg(client, 0x96 + (ch * 0x20), 0x10); in nv6188_set_chn_960h()
1575 nvp6188_write_reg(client, 0x98 + (ch * 0x20), ntpal ? 0xc0 : 0xe0); in nv6188_set_chn_960h()
1576 nvp6188_write_reg(client, 0x9e + (ch * 0x20), 0x00); in nv6188_set_chn_960h()
1577 nvp6188_write_reg(client, 0xff, 0x11); in nv6188_set_chn_960h()
1578 nvp6188_write_reg(client, 0x00 + (ch * 0x20), 0x00); in nv6188_set_chn_960h()
1579 nvp6188_write_reg(client, 0xff, _MAR_BANK_); in nv6188_set_chn_960h()
1580 nvp6188_read_reg(client, 0x01, &val_20x01); in nv6188_set_chn_960h()
1583 nvp6188_write_reg(client, 0x01, val_20x01); in nv6188_set_chn_960h()
1584 nvp6188_write_reg(client, 0x12 + (ch * 2), 0xe0); in nv6188_set_chn_960h()
1585 nvp6188_write_reg(client, 0x13 + (ch * 2), 0x01); in nv6188_set_chn_960h()
1598 struct i2c_client *client = nvp6188->client; in nv6188_set_chn_720p() local
1600 dev_info(&client->dev, "%s: ch %d ntpal %d", __func__, ch, ntpal); in nv6188_set_chn_720p()
1601 nvp6188_write_reg(client, 0xff, 0x00); in nv6188_set_chn_720p()
1602 nvp6188_write_reg(client, 0x00 + ch, 0x00); in nv6188_set_chn_720p()
1603 nvp6188_write_reg(client, 0x08 + ch, 0x00); in nv6188_set_chn_720p()
1604 nvp6188_write_reg(client, 0x18 + ch, 0x10); in nv6188_set_chn_720p()
1605 nvp6188_write_reg(client, 0x30 + ch, 0x12); in nv6188_set_chn_720p()
1606 nvp6188_write_reg(client, 0x34 + ch, 0x00); in nv6188_set_chn_720p()
1607 nvp6188_read_reg(client, 0x54, &val_0x54); in nv6188_set_chn_720p()
1609 nvp6188_write_reg(client, 0x54, val_0x54); in nv6188_set_chn_720p()
1610 nvp6188_write_reg(client, 0x58 + ch, ntpal ? 0x80 : 0x80); in nv6188_set_chn_720p()
1611 nvp6188_write_reg(client, 0x5c + ch, ntpal ? 0x00 : 0x00); in nv6188_set_chn_720p()
1612 nvp6188_write_reg(client, 0x64 + ch, ntpal ? 0x01 : 0x01); in nv6188_set_chn_720p()
1613 nvp6188_write_reg(client, 0x81 + ch, ntpal ? 0x0d : 0x0c); in nv6188_set_chn_720p()
1614 nvp6188_write_reg(client, 0x85 + ch, 0x00); in nv6188_set_chn_720p()
1615 nvp6188_write_reg(client, 0x89 + ch, 0x00); in nv6188_set_chn_720p()
1616 nvp6188_write_reg(client, 0x8e + ch, 0x00); in nv6188_set_chn_720p()
1617 nvp6188_write_reg(client, 0xa0 + ch, 0x05); in nv6188_set_chn_720p()
1618 nvp6188_write_reg(client, 0xff, 0x01); in nv6188_set_chn_720p()
1619 nvp6188_write_reg(client, 0x84 + ch, 0x02); in nv6188_set_chn_720p()
1620 nvp6188_write_reg(client, 0x88 + ch, 0x00); in nv6188_set_chn_720p()
1621 nvp6188_write_reg(client, 0x8c + ch, 0x40); in nv6188_set_chn_720p()
1622 nvp6188_write_reg(client, 0xa0 + ch, 0x20); in nv6188_set_chn_720p()
1623 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_set_chn_720p()
1624 nvp6188_write_reg(client, 0x00, 0xf0); in nv6188_set_chn_720p()
1625 nvp6188_write_reg(client, 0x01, 0x22); in nv6188_set_chn_720p()
1626 nvp6188_write_reg(client, 0x05, 0x04); in nv6188_set_chn_720p()
1627 nvp6188_write_reg(client, 0x08, 0x55); in nv6188_set_chn_720p()
1628 nvp6188_write_reg(client, 0x25, 0xdc); in nv6188_set_chn_720p()
1629 nvp6188_write_reg(client, 0x28, 0x80); in nv6188_set_chn_720p()
1630 nvp6188_write_reg(client, 0x2f, 0x00); in nv6188_set_chn_720p()
1631 nvp6188_write_reg(client, 0x30, 0xe0); in nv6188_set_chn_720p()
1632 nvp6188_write_reg(client, 0x31, 0x43); in nv6188_set_chn_720p()
1633 nvp6188_write_reg(client, 0x32, 0xa2); in nv6188_set_chn_720p()
1634 nvp6188_write_reg(client, 0x47, 0x04); in nv6188_set_chn_720p()
1635 nvp6188_write_reg(client, 0x50, 0x84); in nv6188_set_chn_720p()
1636 nvp6188_write_reg(client, 0x57, 0x00); in nv6188_set_chn_720p()
1637 nvp6188_write_reg(client, 0x58, 0x77); in nv6188_set_chn_720p()
1638 nvp6188_write_reg(client, 0x5b, 0x41); in nv6188_set_chn_720p()
1639 nvp6188_write_reg(client, 0x5c, 0x78); in nv6188_set_chn_720p()
1640 nvp6188_write_reg(client, 0x5f, 0x00); in nv6188_set_chn_720p()
1641 nvp6188_write_reg(client, 0x62, 0x00); in nv6188_set_chn_720p()
1642 nvp6188_write_reg(client, 0x7b, 0x11); in nv6188_set_chn_720p()
1643 nvp6188_write_reg(client, 0x7c, 0x01); in nv6188_set_chn_720p()
1644 nvp6188_write_reg(client, 0x7d, 0x80); in nv6188_set_chn_720p()
1645 nvp6188_write_reg(client, 0x80, 0x00); in nv6188_set_chn_720p()
1646 nvp6188_write_reg(client, 0x90, 0x01); in nv6188_set_chn_720p()
1647 nvp6188_write_reg(client, 0xa9, 0x00); in nv6188_set_chn_720p()
1648 nvp6188_write_reg(client, 0xb5, 0x00); in nv6188_set_chn_720p()
1649 nvp6188_write_reg(client, 0xb8, 0xb9); in nv6188_set_chn_720p()
1650 nvp6188_write_reg(client, 0xb9, 0x72); in nv6188_set_chn_720p()
1651 nvp6188_write_reg(client, 0xd1, 0x00); in nv6188_set_chn_720p()
1652 nvp6188_write_reg(client, 0xd5, 0x80); in nv6188_set_chn_720p()
1653 nvp6188_write_reg(client, 0xff, 0x09); in nv6188_set_chn_720p()
1654 nvp6188_write_reg(client, 0x96 + (ch * 0x20), 0x00); in nv6188_set_chn_720p()
1655 nvp6188_write_reg(client, 0x98 + (ch * 0x20), 0x00); in nv6188_set_chn_720p()
1656 nvp6188_write_reg(client, 0x9e + (ch * 0x20), 0x00); in nv6188_set_chn_720p()
1657 nvp6188_write_reg(client, 0xff, 0x11); in nv6188_set_chn_720p()
1658 nvp6188_write_reg(client, 0x00 + (ch * 0x20), 0x00); in nv6188_set_chn_720p()
1659 nvp6188_write_reg(client, 0xff, _MAR_BANK_); in nv6188_set_chn_720p()
1660 nvp6188_read_reg(client, 0x01, &val_20x01); in nv6188_set_chn_720p()
1663 nvp6188_write_reg(client, 0x01, val_20x01); in nv6188_set_chn_720p()
1664 nvp6188_write_reg(client, 0x12 + (ch * 2), 0x80); in nv6188_set_chn_720p()
1665 nvp6188_write_reg(client, 0x13 + (ch * 2), 0x02); in nv6188_set_chn_720p()
1678 struct i2c_client *client = nvp6188->client; in nv6188_set_chn_1080p() local
1680 dev_info(&client->dev, "%s ch %d ntpal %d", __func__, ch, ntpal); in nv6188_set_chn_1080p()
1681 nvp6188_write_reg(client, 0xff, 0x00); in nv6188_set_chn_1080p()
1682 nvp6188_write_reg(client, 0x00 + ch, 0x10); in nv6188_set_chn_1080p()
1683 nvp6188_write_reg(client, 0x08 + ch, 0x00); in nv6188_set_chn_1080p()
1684 nvp6188_write_reg(client, 0x18 + ch, 0x10); in nv6188_set_chn_1080p()
1685 nvp6188_write_reg(client, 0x30 + ch, 0x12); in nv6188_set_chn_1080p()
1686 nvp6188_write_reg(client, 0x34 + ch, 0x00); in nv6188_set_chn_1080p()
1687 nvp6188_read_reg(client, 0x54, &val_0x54); in nv6188_set_chn_1080p()
1689 nvp6188_write_reg(client, 0x54, val_0x54); in nv6188_set_chn_1080p()
1690 nvp6188_write_reg(client, 0x58 + ch, ntpal ? 0x80 : 0x80); in nv6188_set_chn_1080p()
1691 nvp6188_write_reg(client, 0x5c + ch, ntpal ? 0x00 : 0x00); in nv6188_set_chn_1080p()
1692 nvp6188_write_reg(client, 0x64 + ch, ntpal ? 0x01 : 0x01); in nv6188_set_chn_1080p()
1693 nvp6188_write_reg(client, 0x81 + ch, ntpal ? 0x03 : 0x02); in nv6188_set_chn_1080p()
1694 nvp6188_write_reg(client, 0x85 + ch, 0x00); in nv6188_set_chn_1080p()
1695 nvp6188_write_reg(client, 0x89 + ch, 0x10); in nv6188_set_chn_1080p()
1696 nvp6188_write_reg(client, 0x8e + ch, 0x00); in nv6188_set_chn_1080p()
1697 nvp6188_write_reg(client, 0xa0 + ch, 0x05); in nv6188_set_chn_1080p()
1698 nvp6188_write_reg(client, 0xff, 0x01); in nv6188_set_chn_1080p()
1699 nvp6188_write_reg(client, 0x84 + ch, 0x02); in nv6188_set_chn_1080p()
1700 nvp6188_write_reg(client, 0x88 + ch, 0x00); in nv6188_set_chn_1080p()
1701 nvp6188_write_reg(client, 0x8c + ch, 0x40); in nv6188_set_chn_1080p()
1702 nvp6188_write_reg(client, 0xa0 + ch, 0x20); in nv6188_set_chn_1080p()
1703 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_set_chn_1080p()
1704 nvp6188_write_reg(client, 0x00, 0xd0); in nv6188_set_chn_1080p()
1705 nvp6188_write_reg(client, 0x01, 0x22); in nv6188_set_chn_1080p()
1706 nvp6188_write_reg(client, 0x05, 0x04); in nv6188_set_chn_1080p()
1707 nvp6188_write_reg(client, 0x08, 0x55); in nv6188_set_chn_1080p()
1708 nvp6188_write_reg(client, 0x25, 0xdc); in nv6188_set_chn_1080p()
1709 nvp6188_write_reg(client, 0x28, 0x80); in nv6188_set_chn_1080p()
1710 nvp6188_write_reg(client, 0x2f, 0x00); in nv6188_set_chn_1080p()
1711 nvp6188_write_reg(client, 0x30, 0xe0); in nv6188_set_chn_1080p()
1712 nvp6188_write_reg(client, 0x31, 0x41); in nv6188_set_chn_1080p()
1713 nvp6188_write_reg(client, 0x32, 0xa2); in nv6188_set_chn_1080p()
1714 nvp6188_write_reg(client, 0x47, 0xee); in nv6188_set_chn_1080p()
1715 nvp6188_write_reg(client, 0x50, 0xc6); in nv6188_set_chn_1080p()
1716 nvp6188_write_reg(client, 0x57, 0x00); in nv6188_set_chn_1080p()
1717 nvp6188_write_reg(client, 0x58, 0x77); in nv6188_set_chn_1080p()
1718 nvp6188_write_reg(client, 0x5b, 0x41); in nv6188_set_chn_1080p()
1719 nvp6188_write_reg(client, 0x5c, 0x7C); in nv6188_set_chn_1080p()
1720 nvp6188_write_reg(client, 0x5f, 0x00); in nv6188_set_chn_1080p()
1721 nvp6188_write_reg(client, 0x62, 0x20); in nv6188_set_chn_1080p()
1722 nvp6188_write_reg(client, 0x7b, 0x11); in nv6188_set_chn_1080p()
1723 nvp6188_write_reg(client, 0x7c, 0x01); in nv6188_set_chn_1080p()
1724 nvp6188_write_reg(client, 0x7d, 0x80); in nv6188_set_chn_1080p()
1725 nvp6188_write_reg(client, 0x80, 0x00); in nv6188_set_chn_1080p()
1726 nvp6188_write_reg(client, 0x90, 0x01); in nv6188_set_chn_1080p()
1727 nvp6188_write_reg(client, 0xa9, 0x00); in nv6188_set_chn_1080p()
1728 nvp6188_write_reg(client, 0xb5, 0x40); in nv6188_set_chn_1080p()
1729 nvp6188_write_reg(client, 0xb8, 0x39); in nv6188_set_chn_1080p()
1730 nvp6188_write_reg(client, 0xb9, 0x72); in nv6188_set_chn_1080p()
1731 nvp6188_write_reg(client, 0xd1, 0x00); in nv6188_set_chn_1080p()
1732 nvp6188_write_reg(client, 0xd5, 0x80); in nv6188_set_chn_1080p()
1733 nvp6188_write_reg(client, 0xff, 0x09); in nv6188_set_chn_1080p()
1734 nvp6188_write_reg(client, 0x96 + (ch * 0x20), 0x00); in nv6188_set_chn_1080p()
1735 nvp6188_write_reg(client, 0x98 + (ch * 0x20), 0x00); in nv6188_set_chn_1080p()
1736 nvp6188_write_reg(client, 0x9e + (ch * 0x20), 0x00); in nv6188_set_chn_1080p()
1737 nvp6188_write_reg(client, 0xff, 0x11); in nv6188_set_chn_1080p()
1738 nvp6188_write_reg(client, 0x00 + (ch * 0x20), 0x00); in nv6188_set_chn_1080p()
1739 nvp6188_write_reg(client, 0xff, _MAR_BANK_); in nv6188_set_chn_1080p()
1740 nvp6188_read_reg(client, 0x01, &val_20x01); in nv6188_set_chn_1080p()
1742 nvp6188_write_reg(client, 0x01, val_20x01); in nv6188_set_chn_1080p()
1743 nvp6188_write_reg(client, 0x12 + (ch * 2), 0xc0); in nv6188_set_chn_1080p()
1744 nvp6188_write_reg(client, 0x13 + (ch * 2), 0x03); in nv6188_set_chn_1080p()
1758 struct i2c_client *client = nvp6188->client; in nv6188_set_chn_1300p() local
1760 dev_info(&client->dev, "%s ch %d ntpal %d", __func__, ch, ntpal); in nv6188_set_chn_1300p()
1762 nvp6188_write_reg(client, 0xff, 0x00); in nv6188_set_chn_1300p()
1763 nvp6188_write_reg(client, 0x00 + ch, 0x10); in nv6188_set_chn_1300p()
1764 nvp6188_write_reg(client, 0x08 + ch, 0x00); in nv6188_set_chn_1300p()
1765 nvp6188_write_reg(client, 0x18 + ch, 0x10); in nv6188_set_chn_1300p()
1766 nvp6188_write_reg(client, 0x30 + ch, 0x12); in nv6188_set_chn_1300p()
1767 nvp6188_write_reg(client, 0x34 + ch, 0x00); in nv6188_set_chn_1300p()
1768 nvp6188_read_reg(client, 0x54, &val_0x54); in nv6188_set_chn_1300p()
1770 nvp6188_write_reg(client, 0x54, val_0x54); in nv6188_set_chn_1300p()
1771 nvp6188_write_reg(client, 0x58 + ch, ntpal ? 0x80 : 0x80); in nv6188_set_chn_1300p()
1772 nvp6188_write_reg(client, 0x5c + ch, ntpal ? 0x80 : 0x80); in nv6188_set_chn_1300p()
1773 nvp6188_write_reg(client, 0x64 + ch, ntpal ? 0x00 : 0x01); in nv6188_set_chn_1300p()
1774 nvp6188_write_reg(client, 0x81 + ch, ntpal ? 0x03 : 0x02); in nv6188_set_chn_1300p()
1775 nvp6188_write_reg(client, 0x85 + ch, 0x00); in nv6188_set_chn_1300p()
1776 nvp6188_write_reg(client, 0x89 + ch, 0x10); in nv6188_set_chn_1300p()
1777 nvp6188_write_reg(client, 0x8e + ch, 0x00); in nv6188_set_chn_1300p()
1778 nvp6188_write_reg(client, 0xa0 + ch, 0x05); in nv6188_set_chn_1300p()
1779 nvp6188_write_reg(client, 0xff, 0x01); in nv6188_set_chn_1300p()
1780 nvp6188_write_reg(client, 0x84 + ch, 0x02); in nv6188_set_chn_1300p()
1781 nvp6188_write_reg(client, 0x88 + ch, 0x00); in nv6188_set_chn_1300p()
1782 nvp6188_write_reg(client, 0x8c + ch, 0x40); in nv6188_set_chn_1300p()
1783 nvp6188_write_reg(client, 0xa0 + ch, 0x20); in nv6188_set_chn_1300p()
1784 nvp6188_write_reg(client, 0xff, 0x05 + ch); in nv6188_set_chn_1300p()
1785 nvp6188_write_reg(client, 0x00, 0xd0); in nv6188_set_chn_1300p()
1786 nvp6188_write_reg(client, 0x01, 0x22); in nv6188_set_chn_1300p()
1787 nvp6188_write_reg(client, 0x05, 0x04); in nv6188_set_chn_1300p()
1788 nvp6188_write_reg(client, 0x08, 0x55); in nv6188_set_chn_1300p()
1789 nvp6188_write_reg(client, 0x25, 0xdc); in nv6188_set_chn_1300p()
1790 nvp6188_write_reg(client, 0x28, 0x80); in nv6188_set_chn_1300p()
1791 nvp6188_write_reg(client, 0x2f, 0x00); in nv6188_set_chn_1300p()
1792 nvp6188_write_reg(client, 0x30, 0xe0); in nv6188_set_chn_1300p()
1793 nvp6188_write_reg(client, 0x31, 0x41); in nv6188_set_chn_1300p()
1794 nvp6188_write_reg(client, 0x32, 0xa2); in nv6188_set_chn_1300p()
1795 nvp6188_write_reg(client, 0x47, 0xee); in nv6188_set_chn_1300p()
1796 nvp6188_write_reg(client, 0x50, 0xc6); in nv6188_set_chn_1300p()
1797 nvp6188_write_reg(client, 0x57, 0x00); in nv6188_set_chn_1300p()
1798 nvp6188_write_reg(client, 0x58, 0x77); in nv6188_set_chn_1300p()
1799 nvp6188_write_reg(client, 0x5b, 0x41); in nv6188_set_chn_1300p()
1800 nvp6188_write_reg(client, 0x5c, 0x78); in nv6188_set_chn_1300p()
1801 nvp6188_write_reg(client, 0x5f, 0x00); in nv6188_set_chn_1300p()
1802 nvp6188_write_reg(client, 0x62, 0x00); in nv6188_set_chn_1300p()
1803 nvp6188_write_reg(client, 0x6C, 0x00); in nv6188_set_chn_1300p()
1804 nvp6188_write_reg(client, 0x6d, 0x00); in nv6188_set_chn_1300p()
1805 nvp6188_write_reg(client, 0x6e, 0x00); in nv6188_set_chn_1300p()
1806 nvp6188_write_reg(client, 0x6f, 0x00); in nv6188_set_chn_1300p()
1807 nvp6188_write_reg(client, 0x7b, 0x11); in nv6188_set_chn_1300p()
1808 nvp6188_write_reg(client, 0x7c, 0x01); in nv6188_set_chn_1300p()
1809 nvp6188_write_reg(client, 0x7d, 0x80); in nv6188_set_chn_1300p()
1810 nvp6188_write_reg(client, 0x80, 0x00); in nv6188_set_chn_1300p()
1811 nvp6188_write_reg(client, 0x90, 0x01); in nv6188_set_chn_1300p()
1812 nvp6188_write_reg(client, 0xa9, 0x00); in nv6188_set_chn_1300p()
1813 nvp6188_write_reg(client, 0xb5, 0x00); in nv6188_set_chn_1300p()
1814 nvp6188_write_reg(client, 0xb8, 0xb9); in nv6188_set_chn_1300p()
1815 nvp6188_write_reg(client, 0xb9, 0x72); in nv6188_set_chn_1300p()
1816 nvp6188_write_reg(client, 0xd1, 0x00); in nv6188_set_chn_1300p()
1817 nvp6188_write_reg(client, 0xd5, 0x80); in nv6188_set_chn_1300p()
1818 nvp6188_write_reg(client, 0xff, 0x09); in nv6188_set_chn_1300p()
1819 nvp6188_write_reg(client, 0x96 + (ch * 0x20), 0x00); in nv6188_set_chn_1300p()
1820 nvp6188_write_reg(client, 0x98 + (ch * 0x20), 0x00); in nv6188_set_chn_1300p()
1821 nvp6188_write_reg(client, 0x9e + (ch * 0x20), 0x00); in nv6188_set_chn_1300p()
1822 nvp6188_write_reg(client, 0xff, 0x11); //additional settings for 1300p in nv6188_set_chn_1300p()
1823 nvp6188_write_reg(client, 0x01 + (ch * 0x20), ntpal ? 0x01 : 0x00); in nv6188_set_chn_1300p()
1824 nvp6188_write_reg(client, 0x02 + (ch * 0x20), ntpal ? 0xb2 : 0x50); in nv6188_set_chn_1300p()
1825 nvp6188_write_reg(client, 0x03 + (ch * 0x20), 0x06); in nv6188_set_chn_1300p()
1826 nvp6188_write_reg(client, 0x04 + (ch * 0x20), 0x40); in nv6188_set_chn_1300p()
1827 nvp6188_write_reg(client, 0x05 + (ch * 0x20), ntpal ? 0x08 : 0x07); in nv6188_set_chn_1300p()
1828 nvp6188_write_reg(client, 0x06 + (ch * 0x20), ntpal ? 0x70 : 0x08); in nv6188_set_chn_1300p()
1829 nvp6188_write_reg(client, 0x07 + (ch * 0x20), 0x00); in nv6188_set_chn_1300p()
1830 nvp6188_write_reg(client, 0x08 + (ch * 0x20), 0x00); in nv6188_set_chn_1300p()
1831 nvp6188_write_reg(client, 0x0a + (ch * 0x20), 0x05); in nv6188_set_chn_1300p()
1832 nvp6188_write_reg(client, 0x0b + (ch * 0x20), 0x14); in nv6188_set_chn_1300p()
1833 nvp6188_write_reg(client, 0x0c + (ch * 0x20), 0x05); in nv6188_set_chn_1300p()
1834 nvp6188_write_reg(client, 0x0d + (ch * 0x20), 0x5f); in nv6188_set_chn_1300p()
1835 nvp6188_write_reg(client, 0x00 + (ch * 0x20), 0x03); in nv6188_set_chn_1300p()
1836 nvp6188_write_reg(client, 0xff, 0x20); in nv6188_set_chn_1300p()
1837 nvp6188_read_reg(client, 0x01, &val_20x01); in nv6188_set_chn_1300p()
1839 nvp6188_write_reg(client, 0x01, val_20x01); in nv6188_set_chn_1300p()
1840 nvp6188_write_reg(client, 0x12 + (ch * 2), 0x20); in nv6188_set_chn_1300p()
1841 nvp6188_write_reg(client, 0x13 + (ch * 2), 0x03); in nv6188_set_chn_1300p()
1847 struct i2c_client *client = nvp6188->client; in nvp6188_manual_mode() local
1850 nvp6188_write_reg(client, 0xFF, 0x13); in nvp6188_manual_mode()
1851 nvp6188_read_reg(client, 0x70, &val_13x70); in nvp6188_manual_mode()
1853 nvp6188_write_reg(client, 0x70, val_13x70); in nvp6188_manual_mode()
1854 nvp6188_read_reg(client, 0x71, &val_13x71); in nvp6188_manual_mode()
1856 nvp6188_write_reg(client, 0x71, val_13x71); in nvp6188_manual_mode()
1892 dev_err(&client->dev, "channel %d not detect\n", ch); in nvp6188_manual_mode()
1893 nvp6188_write_reg(client, 0xFF, 0x13); in nvp6188_manual_mode()
1894 nvp6188_read_reg(client, 0x70, &val_13x70); in nvp6188_manual_mode()
1896 nvp6188_write_reg(client, 0x70, val_13x70); in nvp6188_manual_mode()
1897 nvp6188_write_reg(client, 0xFF, 0x05 + ch); in nvp6188_manual_mode()
1898 nvp6188_write_reg(client, 0x58, 0x77); in nvp6188_manual_mode()
1899 nvp6188_write_reg(client, 0xb8, 0xb8); in nvp6188_manual_mode()
1913 struct i2c_client *client = nvp6188->client; in nvp6188_auto_detect_fmt() local
1926 dev_dbg(&client->dev, "channel %d det 960h nstc", ch); in nvp6188_auto_detect_fmt()
1930 dev_dbg(&client->dev, "channel %d det 960h pal", ch); in nvp6188_auto_detect_fmt()
1934 dev_dbg(&client->dev, "channel %d det 720p nstc", ch); in nvp6188_auto_detect_fmt()
1938 dev_dbg(&client->dev, "channel %d det 720p pal", ch); in nvp6188_auto_detect_fmt()
1942 dev_dbg(&client->dev, "channel %d det 1080p nstc", ch); in nvp6188_auto_detect_fmt()
1946 dev_dbg(&client->dev, "channel %d det 1080p pal", ch); in nvp6188_auto_detect_fmt()
1950 dev_dbg(&client->dev, "channel %d det 960p nstc", ch); in nvp6188_auto_detect_fmt()
1954 dev_dbg(&client->dev, "channel %d det 960p pal", ch); in nvp6188_auto_detect_fmt()
1958 dev_dbg(&client->dev, "channel %d det 1300p nstc", ch); in nvp6188_auto_detect_fmt()
1962 dev_dbg(&client->dev, "channel %d det 1300p pal", ch); in nvp6188_auto_detect_fmt()
1966 dev_dbg(&client->dev, "channel %d not detect\n", ch); in nvp6188_auto_detect_fmt()
1975 dev_info(&client->dev, "channel(%d) fmt(%d) -> invalid(0x%x)", in nvp6188_auto_detect_fmt()
1978 nvp6188_write_reg(client, 0xFF, 0x13); in nvp6188_auto_detect_fmt()
1979 nvp6188_read_reg(client, 0x70, &val_13x70); in nvp6188_auto_detect_fmt()
1981 nvp6188_write_reg(client, 0x70, val_13x70); in nvp6188_auto_detect_fmt()
1986 dev_info(&client->dev, "channel(%d) fmt(%d) -> cur(%d)", in nvp6188_auto_detect_fmt()
2007 struct i2c_client *client = nvp6188->client; in detect_thread_function() local
2023 dev_info(&client->dev, "last_detect_status(0x%x) -> detect_status(0x%x)", in detect_thread_function()
2035 dev_info(&client->dev, "trigger reset time up\n"); in detect_thread_function()
2047 struct i2c_client *client = nvp6188->client; in detect_thread_start() local
2052 dev_err(&client->dev, "kthread_create nvp6188_kthread failed\n"); in detect_thread_start()
2074 struct i2c_client *client = nvp6188->client; in nvp6188_reg_check() local
2076 nvp6188_write_reg(client, 0xff, 0x20); in nvp6188_reg_check()
2077 nvp6188_write_reg(client, 0x00, 0xff); // open mipi in nvp6188_reg_check()
2079 //nvp6188_write_reg(client, 0x40, 0x01); in nvp6188_reg_check()
2080 //nvp6188_write_reg(client, 0x40, 0x00); in nvp6188_reg_check()
2082 nvp6188_write_reg(client, 0xff, 0x20); in nvp6188_reg_check()
2083 nvp6188_read_reg(client, 0x52, &val_20x52); in nvp6188_reg_check()
2084 nvp6188_read_reg(client, 0x53, &val_20x53); in nvp6188_reg_check()
2087 nvp6188_write_reg(client, 0xff, 0x20); in nvp6188_reg_check()
2088 nvp6188_read_reg(client, 0x52, &val_20x52); in nvp6188_reg_check()
2089 nvp6188_read_reg(client, 0x53, &val_20x53); in nvp6188_reg_check()
2092 dev_err(&client->dev, "attention!!! check cnt = %d\n", check_cnt); in nvp6188_reg_check()
2093 nvp6188_write_reg(client, 0xff, 0x01); in nvp6188_reg_check()
2094 nvp6188_write_reg(client, 0x97, 0xf0); in nvp6188_reg_check()
2096 nvp6188_write_reg(client, 0x97, 0x0f); in nvp6188_reg_check()
2098 dev_err(&client->dev, "check_value1=%x, check_value2=%x,check cnt = %d\n", in nvp6188_reg_check()
2108 struct i2c_client *client = nvp6188->client; in nvp6188_auto_det_set() local
2110 dev_info(&client->dev, "[%s::%d]\n", __func__, __LINE__); in nvp6188_auto_det_set()
2112 nvp6188_write_reg(client, 0xff, 0x13); in nvp6188_auto_det_set()
2113 nvp6188_write_reg(client, 0x30, 0x7f); in nvp6188_auto_det_set()
2114 nvp6188_write_reg(client, 0x70, 0xf0); in nvp6188_auto_det_set()
2115 nvp6188_write_reg(client, 0xff, 0x00); in nvp6188_auto_det_set()
2116 nvp6188_write_reg(client, 0x00, 0x18); in nvp6188_auto_det_set()
2117 nvp6188_write_reg(client, 0x01, 0x18); in nvp6188_auto_det_set()
2118 nvp6188_write_reg(client, 0x02, 0x18); in nvp6188_auto_det_set()
2119 nvp6188_write_reg(client, 0x03, 0x18); in nvp6188_auto_det_set()
2121 nvp6188_write_reg(client, 0x00, 0x10); in nvp6188_auto_det_set()
2122 nvp6188_write_reg(client, 0x01, 0x10); in nvp6188_auto_det_set()
2123 nvp6188_write_reg(client, 0x02, 0x10); in nvp6188_auto_det_set()
2124 nvp6188_write_reg(client, 0x03, 0x10); in nvp6188_auto_det_set()
2133 struct i2c_client *client = nvp6188->client; in nvp6188_video_init() local
2143 ret = nvp6188_write_array(nvp6188->client, in nvp6188_video_init()
2146 dev_err(&client->dev, "__nvp6188_start_stream global_reg_list faild"); in nvp6188_video_init()
2160 struct i2c_client *client = nvp6188->client; in __nvp6188_start_stream() local
2163 nvp6188_write_reg(client, 0xff, 0x20); in __nvp6188_start_stream()
2164 nvp6188_write_reg(client, 0x00, 0xff); in __nvp6188_start_stream()
2176 struct i2c_client *client = nvp6188->client; in __nvp6188_stop_stream() local
2178 nvp6188_write_reg(client, 0xff, 0x20); in __nvp6188_stop_stream()
2179 nvp6188_write_reg(client, 0x00, 0x00); in __nvp6188_stop_stream()
2180 nvp6188_write_reg(client, 0x40, 0x01); in __nvp6188_stop_stream()
2181 nvp6188_write_reg(client, 0x40, 0x00); in __nvp6188_stop_stream()
2191 struct i2c_client *client = nvp6188->client; in nvp6188_stream() local
2193 dev_info(&client->dev, "s_stream: %d. %dx%d\n", on, in nvp6188_stream()
2219 struct i2c_client *client = nvp6188->client; in nvp6188_power() local
2229 ret = pm_runtime_get_sync(&client->dev); in nvp6188_power()
2231 pm_runtime_put_noidle(&client->dev); in nvp6188_power()
2236 pm_runtime_put(&client->dev); in nvp6188_power()
2249 struct device *dev = &nvp6188->client->dev; in __nvp6188_power_on()
2308 struct device *dev = &nvp6188->client->dev; in __nvp6188_power_off()
2354 dev_err(&nvp6188->client->dev, in nvp6188_initialize_controls()
2359 dev_dbg(&nvp6188->client->dev, "mipi_freq_idx %d\n", mode->mipi_freq_idx); in nvp6188_initialize_controls()
2360 dev_dbg(&nvp6188->client->dev, "pixel_rate %lld\n", pixel_rate); in nvp6188_initialize_controls()
2361 dev_dbg(&nvp6188->client->dev, "link_freq %lld\n", link_freq_items[mode->mipi_freq_idx]); in nvp6188_initialize_controls()
2375 struct i2c_client *client = to_i2c_client(dev); in nvp6188_runtime_resume() local
2376 struct v4l2_subdev *sd = i2c_get_clientdata(client); in nvp6188_runtime_resume()
2384 struct i2c_client *client = to_i2c_client(dev); in nvp6188_runtime_suspend() local
2385 struct v4l2_subdev *sd = i2c_get_clientdata(client); in nvp6188_runtime_suspend()
2401 dev_dbg(&nvp6188->client->dev, "%s\n", __func__); in nvp6188_open()
2459 struct i2c_client *client = nvp6188->client; in nvp6188_codec_read() local
2464 ret = nvp6188_read_reg(client, reg, &val); in nvp6188_codec_read()
2466 dev_err(&client->dev, "%s failed: (%d)\n", __func__, ret); in nvp6188_codec_read()
2480 struct i2c_client *client = nvp6188->client; in nvp6188_codec_write() local
2484 ret = nvp6188_write_reg(client, reg, val); in nvp6188_codec_write()
2486 dev_err(&client->dev, "%s failed: (%d)\n", __func__, ret); in nvp6188_codec_write()
2510 struct i2c_client *client = nvp6188->client; in nvp6188_pcm_set_dai_fmt() local
2515 nvp6188_write_reg(client, 0xff, 0x01); /* Switch to bank1 for audio */ in nvp6188_pcm_set_dai_fmt()
2516 nvp6188_read_reg(client, 0x07, &val_rm); in nvp6188_pcm_set_dai_fmt()
2517 nvp6188_read_reg(client, 0x13, &val_pb); in nvp6188_pcm_set_dai_fmt()
2567 nvp6188_write_reg(client, 0x07, val_rm); in nvp6188_pcm_set_dai_fmt()
2568 nvp6188_write_reg(client, 0x13, val_pb); in nvp6188_pcm_set_dai_fmt()
2582 struct i2c_client *client = nvp6188->client; in nvp6188_pcm_hw_params() local
2587 nvp6188_write_reg(client, 0xff, 0x01); /* Switch to bank1 for audio */ in nvp6188_pcm_hw_params()
2591 nvp6188_read_reg(client, 0x13, &val); in nvp6188_pcm_hw_params()
2631 dev_err(&client->dev, "Invalid audio_out mclk_fs: %d\n", in nvp6188_pcm_hw_params()
2638 nvp6188_write_reg(client, 0x13, val); in nvp6188_pcm_hw_params()
2641 nvp6188_read_reg(client, 0x07, &val); in nvp6188_pcm_hw_params()
2681 dev_err(&client->dev, "Invalid audio_in mclk_fs: %d\n", in nvp6188_pcm_hw_params()
2687 nvp6188_write_reg(client, 0x07, val); in nvp6188_pcm_hw_params()
2689 nvp6188_read_reg(client, 0x08, &val); in nvp6188_pcm_hw_params()
2698 dev_err(&client->dev, "Not supported channels: %d\n", in nvp6188_pcm_hw_params()
2703 nvp6188_write_reg(client, 0x08, val); in nvp6188_pcm_hw_params()
2766 struct i2c_client *client = nvp6188->client; in nvp6188_codec_tlv_get() local
2769 nvp6188_write_reg(client, 0xff, 0x01); /* Switch to bank1 for audio */ in nvp6188_codec_tlv_get()
2846 static int check_chip_id(struct i2c_client *client){ in check_chip_id() argument
2847 struct device *dev = &client->dev; in check_chip_id()
2849 nvp6188_write_reg(client, 0xFF, 0x00); in check_chip_id()
2850 nvp6188_read_reg(client, 0xF4, &chip_id); in check_chip_id()
2852 nvp6188_write_reg(client, 0xFF, 0x00); in check_chip_id()
2853 nvp6188_read_reg(client, 0xF5, &chip_revid); in check_chip_id()
2863 struct i2c_client *client = nvp6188->client; in nvp6188_audio_init() local
2869 nvp6188_write_reg(client, 0xff, 0x01); in nvp6188_audio_init()
2870 nvp6188_write_reg(client, 0x94, 0x00); in nvp6188_audio_init()
2873 nvp6188_write_reg(client, 0x06, 0x03); in nvp6188_audio_init()
2876 nvp6188_write_reg(client, 0x08, 0x01); in nvp6188_audio_init()
2879 nvp6188_write_reg(client, 0x0a, 0x20); in nvp6188_audio_init()
2880 nvp6188_write_reg(client, 0x0b, 0x98); in nvp6188_audio_init()
2881 nvp6188_write_reg(client, 0x0f, 0x31); in nvp6188_audio_init()
2884 nvp6188_write_reg(client, 0x22, 0x08); in nvp6188_audio_init()
2886 nvp6188_write_reg(client, 0x23, 0x10); in nvp6188_audio_init()
2889 nvp6188_write_reg(client, 0x39, 0x82); in nvp6188_audio_init()
2891 nvp6188_write_reg(client, 0x01, 0x09); in nvp6188_audio_init()
2892 nvp6188_write_reg(client, 0x02, 0x09); in nvp6188_audio_init()
2893 nvp6188_write_reg(client, 0x03, 0x09); in nvp6188_audio_init()
2894 nvp6188_write_reg(client, 0x04, 0x09); in nvp6188_audio_init()
2895 nvp6188_write_reg(client, 0x05, 0x09); in nvp6188_audio_init()
2897 nvp6188_write_reg(client, 0x31, 0x0a); in nvp6188_audio_init()
2898 nvp6188_write_reg(client, 0x47, 0x01); in nvp6188_audio_init()
2899 nvp6188_write_reg(client, 0x49, 0x88); in nvp6188_audio_init()
2900 nvp6188_write_reg(client, 0x44, 0x00); in nvp6188_audio_init()
2902 nvp6188_write_reg(client, 0x32, 0x00); in nvp6188_audio_init()
2904 nvp6188_write_reg(client, 0x00, 0x02); in nvp6188_audio_init()
2905 nvp6188_write_reg(client, 0x46, 0x10); in nvp6188_audio_init()
2906 nvp6188_write_reg(client, 0x48, 0xD0); in nvp6188_audio_init()
2907 nvp6188_write_reg(client, 0x94, 0x40); in nvp6188_audio_init()
2909 nvp6188_write_reg(client, 0x38, 0x18); in nvp6188_audio_init()
2911 nvp6188_write_reg(client, 0x38, 0x08); in nvp6188_audio_init()
2914 nvp6188_write_reg(client, 0xff, 0x01); in nvp6188_audio_init()
2915 nvp6188_write_reg(client, 0x07, 0x08); in nvp6188_audio_init()
2916 nvp6188_write_reg(client, 0x13, 0x08); in nvp6188_audio_init()
2921 static int nvp6188_probe(struct i2c_client *client, in nvp6188_probe() argument
2924 struct device *dev = &client->dev; in nvp6188_probe()
2955 nvp6188->client = client; in nvp6188_probe()
2997 v4l2_i2c_subdev_init(sd, client, &nvp6188_subdev_ops); in nvp6188_probe()
3010 ret = check_chip_id(client); in nvp6188_probe()
3174 static int nvp6188_remove(struct i2c_client *client) in nvp6188_remove() argument
3176 struct v4l2_subdev *sd = i2c_get_clientdata(client); in nvp6188_remove()
3186 pm_runtime_disable(&client->dev); in nvp6188_remove()
3187 if (!pm_runtime_status_suspended(&client->dev)) in nvp6188_remove()
3189 pm_runtime_set_suspended(&client->dev); in nvp6188_remove()