Lines Matching refs:edid
90 /* edid */
1740 struct v4l2_subdev_edid *edid)
1744 memset(edid->reserved, 0, sizeof(edid->reserved));
1746 if (edid->pad != 0)
1749 if (edid->start_block == 0 && edid->blocks == 0) {
1750 edid->blocks = state->edid_blocks_written;
1757 if (edid->start_block >= state->edid_blocks_written ||
1758 edid->blocks == 0)
1761 if (edid->start_block + edid->blocks > state->edid_blocks_written)
1762 edid->blocks = state->edid_blocks_written - edid->start_block;
1764 i2c_rd(sd, EDID_RAM + (edid->start_block * EDID_BLOCK_SIZE), edid->edid,
1765 edid->blocks * EDID_BLOCK_SIZE);
1771 struct v4l2_subdev_edid *edid)
1774 u16 edid_len = edid->blocks * EDID_BLOCK_SIZE;
1780 __func__, edid->pad, edid->start_block, edid->blocks);
1782 memset(edid->reserved, 0, sizeof(edid->reserved));
1784 if (edid->pad != 0)
1787 if (edid->start_block != 0)
1790 if (edid->blocks > EDID_NUM_BLOCKS_MAX) {
1791 edid->blocks = EDID_NUM_BLOCKS_MAX;
1794 pa = cec_get_edid_phys_addr(edid->edid, edid->blocks * 128, NULL);
1806 if (edid->blocks == 0) {
1812 i2c_wr(sd, EDID_RAM + i, edid->edid + i, EDID_BLOCK_SIZE);
1814 state->edid_blocks_written = edid->blocks;