diff options
-rw-r--r-- | drivers/media/dvb-frontends/af9033.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/media/dvb-frontends/af9033.c b/drivers/media/dvb-frontends/af9033.c index 7f22f011f8f5..7d637b92ff25 100644 --- a/drivers/media/dvb-frontends/af9033.c +++ b/drivers/media/dvb-frontends/af9033.c | |||
@@ -1061,6 +1061,7 @@ struct dvb_frontend *af9033_attach(const struct af9033_config *config, | |||
1061 | int ret; | 1061 | int ret; |
1062 | struct af9033_state *state; | 1062 | struct af9033_state *state; |
1063 | u8 buf[8]; | 1063 | u8 buf[8]; |
1064 | u32 reg; | ||
1064 | 1065 | ||
1065 | dev_dbg(&i2c->dev, "%s:\n", __func__); | 1066 | dev_dbg(&i2c->dev, "%s:\n", __func__); |
1066 | 1067 | ||
@@ -1081,7 +1082,21 @@ struct dvb_frontend *af9033_attach(const struct af9033_config *config, | |||
1081 | } | 1082 | } |
1082 | 1083 | ||
1083 | /* firmware version */ | 1084 | /* firmware version */ |
1084 | ret = af9033_rd_regs(state, 0x0083e9, &buf[0], 4); | 1085 | switch (state->cfg.tuner) { |
1086 | case AF9033_TUNER_IT9135_38: | ||
1087 | case AF9033_TUNER_IT9135_51: | ||
1088 | case AF9033_TUNER_IT9135_52: | ||
1089 | case AF9033_TUNER_IT9135_60: | ||
1090 | case AF9033_TUNER_IT9135_61: | ||
1091 | case AF9033_TUNER_IT9135_62: | ||
1092 | reg = 0x004bfc; | ||
1093 | break; | ||
1094 | default: | ||
1095 | reg = 0x0083e9; | ||
1096 | break; | ||
1097 | } | ||
1098 | |||
1099 | ret = af9033_rd_regs(state, reg, &buf[0], 4); | ||
1085 | if (ret < 0) | 1100 | if (ret < 0) |
1086 | goto err; | 1101 | goto err; |
1087 | 1102 | ||