Commit 7db98fe6 authored by Istvan Varga's avatar Istvan Varga Committed by Mauro Carvalho Chehab

[media] xc4000: detect also xc4100

Added code to detect the XC4100 chip, which is presumably an analog-only
"value" version of the XC4000. It is not sure, however, if any devices
using this have actually been produced and sold, so the patch may be
unneeded.
Signed-off-by: default avatarIstvan Varga <istvan_v@mailbox.hu>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 8f76afe8
...@@ -140,7 +140,8 @@ struct xc4000_priv { ...@@ -140,7 +140,8 @@ struct xc4000_priv {
/* Product id */ /* Product id */
#define XC_PRODUCT_ID_FW_NOT_LOADED 0x2000 #define XC_PRODUCT_ID_FW_NOT_LOADED 0x2000
#define XC_PRODUCT_ID_FW_LOADED 0x0FA0 #define XC_PRODUCT_ID_XC4000 0x0FA0
#define XC_PRODUCT_ID_XC4100 0x1004
/* Registers (Write-only) */ /* Registers (Write-only) */
#define XREG_INIT 0x00 #define XREG_INIT 0x00
...@@ -1071,7 +1072,9 @@ static int check_firmware(struct dvb_frontend *fe, unsigned int type, ...@@ -1071,7 +1072,9 @@ static int check_firmware(struct dvb_frontend *fe, unsigned int type,
#endif #endif
/* Check that the tuner hardware model remains consistent over time. */ /* Check that the tuner hardware model remains consistent over time. */
if (priv->hwmodel == 0 && hwmodel == 4000) { if (priv->hwmodel == 0 &&
(hwmodel == XC_PRODUCT_ID_XC4000 ||
hwmodel == XC_PRODUCT_ID_XC4100)) {
priv->hwmodel = hwmodel; priv->hwmodel = hwmodel;
priv->hwvers = version & 0xff00; priv->hwvers = version & 0xff00;
} else if (priv->hwmodel == 0 || priv->hwmodel != hwmodel || } else if (priv->hwmodel == 0 || priv->hwmodel != hwmodel ||
...@@ -1678,7 +1681,8 @@ struct dvb_frontend *xc4000_attach(struct dvb_frontend *fe, ...@@ -1678,7 +1681,8 @@ struct dvb_frontend *xc4000_attach(struct dvb_frontend *fe,
} }
switch (id) { switch (id) {
case XC_PRODUCT_ID_FW_LOADED: case XC_PRODUCT_ID_XC4000:
case XC_PRODUCT_ID_XC4100:
printk(KERN_INFO printk(KERN_INFO
"xc4000: Successfully identified at address 0x%02x\n", "xc4000: Successfully identified at address 0x%02x\n",
cfg->i2c_address); cfg->i2c_address);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment