media: ddbridge: return stv09xx id in port_has_stv0900_aa()
The returned value is required for further evaluation of the exact demodulator chip (stv090x or stv0910). Signed-off-by: Daniel Scheller <d.scheller@gmx.net> Tested-by: Richard Scobie <r.scobie@clear.net.nz> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
44173fda45
commit
76103bac71
|
@ -1480,10 +1480,9 @@ static int port_has_stv0900(struct ddb_port *port)
|
|||
return 1;
|
||||
}
|
||||
|
||||
static int port_has_stv0900_aa(struct ddb_port *port)
|
||||
static int port_has_stv0900_aa(struct ddb_port *port, u8 *id)
|
||||
{
|
||||
u8 val;
|
||||
if (i2c_read_reg16(&port->i2c->adap, 0x68, 0xf100, &val) < 0)
|
||||
if (i2c_read_reg16(&port->i2c->adap, 0x68, 0xf100, id) < 0)
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
@ -1530,7 +1529,7 @@ static void ddb_port_probe(struct ddb_port *port)
|
|||
{
|
||||
struct ddb *dev = port->dev;
|
||||
char *modname = "NO MODULE";
|
||||
u8 xo2_type, xo2_id, cxd_id;
|
||||
u8 xo2_type, xo2_id, cxd_id, stv_id;
|
||||
|
||||
port->class = DDB_PORT_NONE;
|
||||
|
||||
|
@ -1622,7 +1621,7 @@ static void ddb_port_probe(struct ddb_port *port)
|
|||
port->class = DDB_PORT_TUNER;
|
||||
port->type = DDB_TUNER_DVBS_ST;
|
||||
ddbwritel(I2C_SPEED_100, port->i2c->regs + I2C_TIMING);
|
||||
} else if (port_has_stv0900_aa(port)) {
|
||||
} else if (port_has_stv0900_aa(port, &stv_id)) {
|
||||
modname = "DUAL DVB-S2";
|
||||
port->class = DDB_PORT_TUNER;
|
||||
port->type = DDB_TUNER_DVBS_ST_AA;
|
||||
|
|
Loading…
Reference in New Issue