[media] mt2063: Don't violate the DVB API
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
01e0dafc64
commit
8c64f93285
|
@ -10,10 +10,6 @@ module_param(verbose, int, 0644);
|
||||||
|
|
||||||
/* Internal structures and types */
|
/* Internal structures and types */
|
||||||
|
|
||||||
/* FIXME: we probably don't need these new FE get/set property types for tuner */
|
|
||||||
#define DVBFE_TUNER_SOFTWARE_SHUTDOWN 100
|
|
||||||
#define DVBFE_TUNER_CLEAR_POWER_MASKBITS 101
|
|
||||||
|
|
||||||
/* FIXME: Those two error codes need conversion*/
|
/* FIXME: Those two error codes need conversion*/
|
||||||
/* Error: Upconverter PLL is not locked */
|
/* Error: Upconverter PLL is not locked */
|
||||||
#define MT2063_UPC_UNLOCK (0x80000002)
|
#define MT2063_UPC_UNLOCK (0x80000002)
|
||||||
|
@ -411,6 +407,9 @@ static u32 MT2063_GetParam(struct mt2063_state *state, enum MT2063_Param param,
|
||||||
static u32 MT2063_SetReg(struct mt2063_state *state, u8 reg, u8 val);
|
static u32 MT2063_SetReg(struct mt2063_state *state, u8 reg, u8 val);
|
||||||
static u32 MT2063_SetParam(struct mt2063_state *state, enum MT2063_Param param,
|
static u32 MT2063_SetParam(struct mt2063_state *state, enum MT2063_Param param,
|
||||||
enum MT2063_DNC_Output_Enable nValue);
|
enum MT2063_DNC_Output_Enable nValue);
|
||||||
|
static u32 MT2063_SoftwareShutdown(struct mt2063_state *state, u8 Shutdown);
|
||||||
|
static u32 MT2063_ClearPowerMaskBits(struct mt2063_state *state, enum MT2063_Mask_Bits Bits);
|
||||||
|
|
||||||
|
|
||||||
/*****************/
|
/*****************/
|
||||||
/* From drivers/media/common/tuners/mt2063_cfg.h */
|
/* From drivers/media/common/tuners/mt2063_cfg.h */
|
||||||
|
@ -466,34 +465,12 @@ unsigned int mt2063_lockStatus(struct dvb_frontend *fe)
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int tuner_MT2063_Open(struct dvb_frontend *fe)
|
|
||||||
{
|
|
||||||
struct dvb_frontend_ops *frontend_ops = &fe->ops;
|
|
||||||
struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
|
|
||||||
struct tuner_state t_state;
|
|
||||||
int err = 0;
|
|
||||||
|
|
||||||
if (&fe->ops)
|
|
||||||
frontend_ops = &fe->ops;
|
|
||||||
if (&frontend_ops->tuner_ops)
|
|
||||||
tuner_ops = &frontend_ops->tuner_ops;
|
|
||||||
if (tuner_ops->set_state) {
|
|
||||||
if ((err =
|
|
||||||
tuner_ops->set_state(fe, DVBFE_TUNER_OPEN,
|
|
||||||
&t_state)) < 0) {
|
|
||||||
printk("%s: Invalid parameter\n", __func__);
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned int tuner_MT2063_SoftwareShutdown(struct dvb_frontend *fe)
|
unsigned int tuner_MT2063_SoftwareShutdown(struct dvb_frontend *fe)
|
||||||
{
|
{
|
||||||
|
struct mt2063_state *state = fe->tuner_priv;
|
||||||
struct dvb_frontend_ops *frontend_ops = &fe->ops;
|
struct dvb_frontend_ops *frontend_ops = &fe->ops;
|
||||||
struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
|
struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
|
||||||
struct tuner_state t_state;
|
|
||||||
int err = 0;
|
int err = 0;
|
||||||
|
|
||||||
if (&fe->ops)
|
if (&fe->ops)
|
||||||
|
@ -501,9 +478,8 @@ unsigned int tuner_MT2063_SoftwareShutdown(struct dvb_frontend *fe)
|
||||||
if (&frontend_ops->tuner_ops)
|
if (&frontend_ops->tuner_ops)
|
||||||
tuner_ops = &frontend_ops->tuner_ops;
|
tuner_ops = &frontend_ops->tuner_ops;
|
||||||
if (tuner_ops->set_state) {
|
if (tuner_ops->set_state) {
|
||||||
if ((err =
|
err = MT2063_SoftwareShutdown(state, 1);
|
||||||
tuner_ops->set_state(fe, DVBFE_TUNER_SOFTWARE_SHUTDOWN,
|
if (err < 0) {
|
||||||
&t_state)) < 0) {
|
|
||||||
printk("%s: Invalid parameter\n", __func__);
|
printk("%s: Invalid parameter\n", __func__);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -514,9 +490,9 @@ unsigned int tuner_MT2063_SoftwareShutdown(struct dvb_frontend *fe)
|
||||||
|
|
||||||
unsigned int tuner_MT2063_ClearPowerMaskBits(struct dvb_frontend *fe)
|
unsigned int tuner_MT2063_ClearPowerMaskBits(struct dvb_frontend *fe)
|
||||||
{
|
{
|
||||||
|
struct mt2063_state *state = fe->tuner_priv;
|
||||||
struct dvb_frontend_ops *frontend_ops = &fe->ops;
|
struct dvb_frontend_ops *frontend_ops = &fe->ops;
|
||||||
struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
|
struct dvb_tuner_ops *tuner_ops = &frontend_ops->tuner_ops;
|
||||||
struct tuner_state t_state;
|
|
||||||
int err = 0;
|
int err = 0;
|
||||||
|
|
||||||
if (&fe->ops)
|
if (&fe->ops)
|
||||||
|
@ -524,9 +500,8 @@ unsigned int tuner_MT2063_ClearPowerMaskBits(struct dvb_frontend *fe)
|
||||||
if (&frontend_ops->tuner_ops)
|
if (&frontend_ops->tuner_ops)
|
||||||
tuner_ops = &frontend_ops->tuner_ops;
|
tuner_ops = &frontend_ops->tuner_ops;
|
||||||
if (tuner_ops->set_state) {
|
if (tuner_ops->set_state) {
|
||||||
if ((err =
|
err = MT2063_ClearPowerMaskBits(state, MT2063_ALL_SD);
|
||||||
tuner_ops->set_state(fe, DVBFE_TUNER_CLEAR_POWER_MASKBITS,
|
if (err < 0) {
|
||||||
&t_state)) < 0) {
|
|
||||||
printk("%s: Invalid parameter\n", __func__);
|
printk("%s: Invalid parameter\n", __func__);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -3771,14 +3746,6 @@ static int mt2063_set_state(struct dvb_frontend *fe,
|
||||||
case DVBFE_TUNER_REFCLOCK:
|
case DVBFE_TUNER_REFCLOCK:
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case DVBFE_TUNER_SOFTWARE_SHUTDOWN:
|
|
||||||
status = MT2063_SoftwareShutdown(state, 1);
|
|
||||||
break;
|
|
||||||
case DVBFE_TUNER_CLEAR_POWER_MASKBITS:
|
|
||||||
status =
|
|
||||||
MT2063_ClearPowerMaskBits(state,
|
|
||||||
MT2063_ALL_SD);
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue