diff options
author | Antti Palosaari <crope@iki.fi> | 2012-06-16 23:13:06 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-08-04 12:56:35 +0200 |
commit | e80896616c11f4c0a0bc17ebd87b86da194b859a (patch) | |
tree | 75b63a334a17c1075d0977f6a8d0814e008c6a45 /drivers/media/dvb/dvb-usb/af9015.c | |
parent | [media] dvb_usb_v2: helper macros for device/adapter/frontend pointers (diff) | |
download | linux-e80896616c11f4c0a0bc17ebd87b86da194b859a.tar.xz linux-e80896616c11f4c0a0bc17ebd87b86da194b859a.zip |
[media] af9015: use helper macros for some pointers
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/dvb-usb/af9015.c')
-rw-r--r-- | drivers/media/dvb/dvb-usb/af9015.c | 97 |
1 files changed, 45 insertions, 52 deletions
diff --git a/drivers/media/dvb/dvb-usb/af9015.c b/drivers/media/dvb/dvb-usb/af9015.c index a429c24d8b30..0f87eafae2d2 100644 --- a/drivers/media/dvb/dvb-usb/af9015.c +++ b/drivers/media/dvb/dvb-usb/af9015.c @@ -36,7 +36,7 @@ static int af9015_ctrl_msg(struct dvb_usb_device *d, struct req_t *req) #define BUF_LEN 63 #define REQ_HDR_LEN 8 /* send header size */ #define ACK_HDR_LEN 2 /* rece header size */ - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret, wlen, rlen; u8 buf[BUF_LEN]; u8 write = 1; @@ -146,7 +146,7 @@ static int af9015_read_reg(struct dvb_usb_device *d, u16 addr, u8 *val) static int af9015_write_reg_i2c(struct dvb_usb_device *d, u8 addr, u16 reg, u8 val) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); struct req_t req = {WRITE_I2C, addr, reg, 1, 1, 1, &val}; if (addr == state->af9013_config[0].i2c_addr || @@ -159,7 +159,7 @@ static int af9015_write_reg_i2c(struct dvb_usb_device *d, u8 addr, u16 reg, static int af9015_read_reg_i2c(struct dvb_usb_device *d, u8 addr, u16 reg, u8 *val) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); struct req_t req = {READ_I2C, addr, reg, 0, 1, 1, val}; if (addr == state->af9013_config[0].i2c_addr || @@ -205,7 +205,7 @@ static int af9015_i2c_xfer(struct i2c_adapter *adap, struct i2c_msg msg[], int num) { struct dvb_usb_device *d = i2c_get_adapdata(adap); - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret = 0, i = 0; u16 addr; u8 uninitialized_var(mbox), addr_len; @@ -346,7 +346,7 @@ static int af9015_identify_state(struct dvb_usb_device *d) static int af9015_download_firmware(struct dvb_usb_device *d, const struct firmware *fw) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int i, len, remaining, ret; struct req_t req = {DOWNLOAD_FIRMWARE, 0, 0, 0, 0, 0, NULL}; u16 checksum = 0; @@ -394,7 +394,7 @@ error: /* hash (and dump) eeprom */ static int af9015_eeprom_hash(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; static const unsigned int eeprom_size = 256; unsigned int reg; @@ -436,7 +436,7 @@ free: static int af9015_read_config(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; u8 val, i, offset = 0; struct req_t req = {READ_I2C, AF9015_I2C_EEPROM, 0, 0, 1, 1, &val}; @@ -602,10 +602,9 @@ error: static int af9015_get_usb_stream_config(struct dvb_frontend *fe, struct usb_data_stream_properties *stream) { - struct dvb_usb_adapter *adap = fe->dvb->priv; - deb_info("%s: adap=%d\n", __func__, adap->id); + deb_info("%s: adap=%d\n", __func__, fe_to_adap(fe)->id); - if (adap->dev->udev->speed == USB_SPEED_FULL) + if (fe_to_d(fe)->udev->speed == USB_SPEED_FULL) stream->u.bulk.buffersize = TS_USB11_FRAME_SIZE; return 0; @@ -613,7 +612,7 @@ static int af9015_get_usb_stream_config(struct dvb_frontend *fe, static int af9015_get_adapter_count(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); return state->dual_mode + 1; } @@ -621,13 +620,12 @@ static int af9015_get_adapter_count(struct dvb_usb_device *d) static int af9015_af9013_set_frontend(struct dvb_frontend *fe) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->set_frontend[adap->id](fe); + ret = state->set_frontend[fe_to_adap(fe)->id](fe); mutex_unlock(&state->fe_mutex); @@ -639,13 +637,12 @@ static int af9015_af9013_read_status(struct dvb_frontend *fe, fe_status_t *status) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->read_status[adap->id](fe, status); + ret = state->read_status[fe_to_adap(fe)->id](fe, status); mutex_unlock(&state->fe_mutex); @@ -656,13 +653,12 @@ static int af9015_af9013_read_status(struct dvb_frontend *fe, static int af9015_af9013_init(struct dvb_frontend *fe) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->init[adap->id](fe); + ret = state->init[fe_to_adap(fe)->id](fe); mutex_unlock(&state->fe_mutex); @@ -673,13 +669,12 @@ static int af9015_af9013_init(struct dvb_frontend *fe) static int af9015_af9013_sleep(struct dvb_frontend *fe) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->sleep[adap->id](fe); + ret = state->sleep[fe_to_adap(fe)->id](fe); mutex_unlock(&state->fe_mutex); @@ -690,13 +685,12 @@ static int af9015_af9013_sleep(struct dvb_frontend *fe) static int af9015_tuner_init(struct dvb_frontend *fe) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->tuner_init[adap->id](fe); + ret = state->tuner_init[fe_to_adap(fe)->id](fe); mutex_unlock(&state->fe_mutex); @@ -707,13 +701,12 @@ static int af9015_tuner_init(struct dvb_frontend *fe) static int af9015_tuner_sleep(struct dvb_frontend *fe) { int ret; - struct dvb_usb_adapter *adap = fe->dvb->priv; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = fe_to_priv(fe); if (mutex_lock_interruptible(&state->fe_mutex)) return -EAGAIN; - ret = state->tuner_sleep[adap->id](fe); + ret = state->tuner_sleep[fe_to_adap(fe)->id](fe); mutex_unlock(&state->fe_mutex); @@ -722,7 +715,7 @@ static int af9015_tuner_sleep(struct dvb_frontend *fe) static int af9015_copy_firmware(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; u8 fw_params[4]; u8 val, i; @@ -804,7 +797,7 @@ exit: static int af9015_af9013_frontend_attach(struct dvb_usb_adapter *adap) { int ret; - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = adap_to_priv(adap); if (adap->id == 0) { state->af9013_config[0].ts_mode = AF9013_TS_USB; @@ -819,7 +812,7 @@ static int af9015_af9013_frontend_attach(struct dvb_usb_adapter *adap) /* copy firmware to 2nd demodulator */ if (state->dual_mode) { - ret = af9015_copy_firmware(adap->dev); + ret = af9015_copy_firmware(adap_to_d(adap)); if (ret) { err("firmware copy to 2nd frontend " \ "failed, will disable it"); @@ -833,7 +826,7 @@ static int af9015_af9013_frontend_attach(struct dvb_usb_adapter *adap) /* attach demodulator */ adap->fe[0] = dvb_attach(af9013_attach, - &state->af9013_config[adap->id], &adap->dev->i2c_adap); + &state->af9013_config[adap->id], &adap_to_d(adap)->i2c_adap); /* * AF9015 firmware does not like if it gets interrupted by I2C adapter @@ -928,7 +921,7 @@ static struct mxl5007t_config af9015_mxl5007t_config = { static int af9015_tuner_attach(struct dvb_usb_adapter *adap) { - struct af9015_state *state = adap->dev->priv; + struct af9015_state *state = adap_to_priv(adap); int ret; deb_info("%s:\n", __func__); @@ -936,50 +929,50 @@ static int af9015_tuner_attach(struct dvb_usb_adapter *adap) case AF9013_TUNER_MT2060: case AF9013_TUNER_MT2060_2: ret = dvb_attach(mt2060_attach, adap->fe[0], - &adap->dev->i2c_adap, &af9015_mt2060_config, + &adap_to_d(adap)->i2c_adap, &af9015_mt2060_config, state->mt2060_if1[adap->id]) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_QT1010: case AF9013_TUNER_QT1010A: ret = dvb_attach(qt1010_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_qt1010_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_TDA18271: ret = dvb_attach(tda18271_attach, adap->fe[0], 0xc0, - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_tda18271_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_TDA18218: ret = dvb_attach(tda18218_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_tda18218_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_MXL5003D: ret = dvb_attach(mxl5005s_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_mxl5003_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_MXL5005D: case AF9013_TUNER_MXL5005R: ret = dvb_attach(mxl5005s_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_mxl5005_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_ENV77H11D5: ret = dvb_attach(dvb_pll_attach, adap->fe[0], 0xc0, - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, DVB_PLL_TDA665X) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_MC44S803: ret = dvb_attach(mc44s803_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, &af9015_mc44s803_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_MXL5007T: ret = dvb_attach(mxl5007t_attach, adap->fe[0], - &adap->dev->i2c_adap, + &adap_to_d(adap)->i2c_adap, 0xc0, &af9015_mxl5007t_config) == NULL ? -ENODEV : 0; break; case AF9013_TUNER_UNKNOWN: @@ -1010,9 +1003,9 @@ static int af9015_pid_filter_ctrl(struct dvb_usb_adapter *adap, int onoff) deb_info("%s: onoff:%d\n", __func__, onoff); if (onoff) - ret = af9015_set_reg_bit(adap->dev, 0xd503, 0); + ret = af9015_set_reg_bit(adap_to_d(adap), 0xd503, 0); else - ret = af9015_clear_reg_bit(adap->dev, 0xd503, 0); + ret = af9015_clear_reg_bit(adap_to_d(adap), 0xd503, 0); return ret; } @@ -1026,16 +1019,16 @@ static int af9015_pid_filter(struct dvb_usb_adapter *adap, int index, u16 pid, deb_info("%s: set pid filter, index %d, pid %x, onoff %d\n", __func__, index, pid, onoff); - ret = af9015_write_reg(adap->dev, 0xd505, (pid & 0xff)); + ret = af9015_write_reg(adap_to_d(adap), 0xd505, (pid & 0xff)); if (ret) goto error; - ret = af9015_write_reg(adap->dev, 0xd506, (pid >> 8)); + ret = af9015_write_reg(adap_to_d(adap), 0xd506, (pid >> 8)); if (ret) goto error; idx = ((index & 0x1f) | (1 << 5)); - ret = af9015_write_reg(adap->dev, 0xd504, idx); + ret = af9015_write_reg(adap_to_d(adap), 0xd504, idx); error: return ret; @@ -1043,7 +1036,7 @@ error: static int af9015_init_endpoint(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; u16 frame_size; u8 packet_size; @@ -1128,7 +1121,7 @@ error: static int af9015_init(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; deb_info("%s:\n", __func__); @@ -1180,7 +1173,7 @@ static const struct af9015_rc_setup af9015_rc_setup_hashes[] = { static int af9015_rc_query(struct dvb_usb_device *d) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); int ret; u8 buf[17]; @@ -1249,7 +1242,7 @@ error: static int af9015_get_rc_config(struct dvb_usb_device *d, struct dvb_usb_rc *rc) { - struct af9015_state *state = d->priv; + struct af9015_state *state = d_to_priv(d); u16 vid = le16_to_cpu(d->udev->descriptor.idVendor); if (state->ir_mode == AF9015_IR_MODE_DISABLED) |