Comment 4 for bug 836062

Revision history for this message
TJ (tj) wrote :

Update:

Using debugging kernel 3.1.0-rc3+ (commit 7a54f5e19f + debug patches).

dmesg:

cx88[0]: i2c register ok
cx88[0]: i2c init: enabling analog demod on HVR1300/3000/4000 tuner
cx88[0]: i2c init: failed, error=-6

That error is:

#define ENXIO 6 /* No such device or address */

The code in cx88-i2c.c::i2c_transfer() can only return an error code other than -EAGAIN or -EOPNOTSUPP in the code:

  /* Retry automatically on arbitration loss */
  orig_jiffies = jiffies;
  for (ret = 0, try = 0; try <= adap->retries; try++) {
   ret = adap->algo->master_xfer(adap, msgs, num);
   if (ret != -EAGAIN)
    break;
   if (time_after(jiffies, orig_jiffies + adap->timeout))
    break;
  }

I'm investigating that algo->master_xfer() now.