summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2013-03-07 18:28:25 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2013-03-21 19:01:00 -0300
commit431a6d4ab9cfc41dd541544f8afdd517090e49b1 (patch)
treea502ca8f15bf55b4ffe9b550659bf0c512ba5fe7
parent8229da506488ec67a051593fe452ee54e91c70cf (diff)
[media] af9035: use already detected eeprom base addr
eeprom memory mapped base address is detected at the very first. Use it everywhere. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/usb/dvb-usb-v2/af9035.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c
index 75d99aec10b6..1ccc9ce02d8c 100644
--- a/drivers/media/usb/dvb-usb-v2/af9035.c
+++ b/drivers/media/usb/dvb-usb-v2/af9035.c
@@ -606,18 +606,14 @@ static int af9035_read_config(struct dvb_usb_device *d)
if (ret < 0)
goto err;
- if (tmp) {
- addr = EEPROM_BASE_IT9135;
- } else {
+ if (tmp == 0x00) {
dev_dbg(&d->udev->dev, "%s: no eeprom\n", __func__);
goto skip_eeprom;
}
- } else {
- addr = EEPROM_BASE_AF9035;
}
/* check if there is dual tuners */
- ret = af9035_rd_reg(d, addr + EEPROM_DUAL_MODE, &tmp);
+ ret = af9035_rd_reg(d, state->eeprom_addr + EEPROM_DUAL_MODE, &tmp);
if (ret < 0)
goto err;
@@ -627,7 +623,9 @@ static int af9035_read_config(struct dvb_usb_device *d)
if (state->dual_mode) {
/* read 2nd demodulator I2C address */
- ret = af9035_rd_reg(d, addr + EEPROM_2ND_DEMOD_ADDR, &tmp);
+ ret = af9035_rd_reg(d,
+ state->eeprom_addr + EEPROM_2ND_DEMOD_ADDR,
+ &tmp);
if (ret < 0)
goto err;
@@ -636,6 +634,8 @@ static int af9035_read_config(struct dvb_usb_device *d)
__func__, tmp);
}
+ addr = state->eeprom_addr;
+
for (i = 0; i < state->dual_mode + 1; i++) {
/* tuner */
ret = af9035_rd_reg(d, addr + EEPROM_1_TUNER_ID, &tmp);
@@ -1258,7 +1258,7 @@ static int af9035_get_rc_config(struct dvb_usb_device *d, struct dvb_usb_rc *rc)
if (state->chip_type == 0x9135)
return 0;
- ret = af9035_rd_reg(d, EEPROM_BASE_AF9035 + EEPROM_IR_MODE, &tmp);
+ ret = af9035_rd_reg(d, state->eeprom_addr + EEPROM_IR_MODE, &tmp);
if (ret < 0)
goto err;
@@ -1266,7 +1266,7 @@ static int af9035_get_rc_config(struct dvb_usb_device *d, struct dvb_usb_rc *rc)
/* don't activate rc if in HID mode or if not available */
if (tmp == 5) {
- ret = af9035_rd_reg(d, EEPROM_BASE_AF9035 + EEPROM_IR_TYPE,
+ ret = af9035_rd_reg(d, state->eeprom_addr + EEPROM_IR_TYPE,
&tmp);
if (ret < 0)
goto err;