static int msm_eeprom_match_id(struct msm_eeprom_ctrl_t *e_ctrl) { int rc; struct msm_camera_i2c_client *client = &e_ctrl->i2c_client; uint8_t id[2]; rc = msm_camera_spi_query_id(client, 0, &id[0], 2); if (rc < 0) return rc; pr_info("%s: read 0x%02X%02X, check Fidelix 16M:0x%02X%02X, Winbond 8M:0x%02X%02X, Winbond 16M:0x%02X%02X\n", __func__, id[0], id[1], client->spi_client->mfr_id0, client->spi_client->device_id0, client->spi_client->mfr_id1, client->spi_client->device_id1, client->spi_client->mfr_id2, client->spi_client->device_id2); #if defined(CONFIG_MACH_CRATERVE_CHN_CTC) if ((id[0] == client->spi_client->mfr_id0 && id[1] == client->spi_client->device_id0) || (id[0] == client->spi_client->mfr_id1 && id[1] == client->spi_client->device_id1) || (id[0] == client->spi_client->mfr_id2 && id[1] == client->spi_client->device_id2) || (id[0] == client->spi_client->mfr_id3 && id[1] == client->spi_client->device_id3)) return 0; #else if ((id[0] == client->spi_client->mfr_id0 && id[1] == client->spi_client->device_id0) || (id[0] == client->spi_client->mfr_id1 && id[1] == client->spi_client->device_id1) || (id[0] == client->spi_client->mfr_id2 && id[1] == client->spi_client->device_id2)) return 0; #endif return -ENODEV; }
static int msm_eeprom_match_id(struct msm_eeprom_ctrl_t *e_ctrl) { int rc; struct msm_camera_i2c_client *client = &e_ctrl->i2c_client; uint8_t id[2]; rc = msm_camera_spi_query_id(client, 0, &id[0], 2); if (rc < 0) return rc; pr_info("%s: read 0x%x 0x%x, check 0:0x%x 0x%x 1:0x%x 0x%x\n", __func__, id[0], id[1], client->spi_client->mfr_id0, client->spi_client->device_id0, client->spi_client->mfr_id1, client->spi_client->device_id1); if ((id[0] == client->spi_client->mfr_id0 && id[1] == client->spi_client->device_id0) || (id[0] == client->spi_client->mfr_id1 && id[1] == client->spi_client->device_id1)) return 0; return -ENODEV; }
static int msm_eeprom_check_id(struct msm_eeprom_ctrl_t *e_ctrl) { int rc; struct msm_camera_i2c_client *client = &e_ctrl->i2c_client; uint8_t id[2]; rc = msm_camera_spi_query_id(client, 0, &id[0], 2); if (rc) return rc; if (id[0] != client->spi_client->mfr_id || id[1] != client->spi_client->device_id) { CDBG("%s: read 0x%x 0x%x, check 0x%x 0x%x\n", __func__, id[0], id[1], client->spi_client->mfr_id, client->spi_client->device_id); return -ENODEV; } return 0; }