[linux-dvb] DVB-T card H6 of Beholder
Dmitri Belimov
d.belimov at gmail.com
Mon Oct 6 03:16:50 CEST 2008
Hi All.
I try wrote support the Beholder's DVB-T H6 card.
This is my simple patch for the Beholder H6 card. Not for main tree, for discuss only.
diff -r 6032ecd6ad7e linux/drivers/media/video/saa7134/saa7134-cards.c
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c Sat Aug 30 11:07:04 2008 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c Thu Oct 02 06:28:13 2008 +1000
@@ -4427,26 +4427,25 @@
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
- .inputs = {{
- .name = name_tv,
- .vmux = 3,
- .amux = TV,
- .tv = 1,
- }, {
- .name = name_comp1,
- .vmux = 1,
- .amux = LINE1,
- }, {
- .name = name_svideo,
- .vmux = 8,
- .amux = LINE1,
- } },
- .radio = {
- .name = name_radio,
- .amux = LINE2,
- },
- /* no DVB support for now */
- /* .mpeg = SAA7134_MPEG_DVB, */
+ .mpeg = SAA7134_MPEG_DVB,
+ .inputs = {{
+ .name = name_tv,
+ .vmux = 3,
+ .amux = TV,
+ .tv = 1,
+ }, {
+ .name = name_comp1,
+ .vmux = 1,
+ .amux = LINE1,
+ }, {
+ .name = name_svideo,
+ .vmux = 8,
+ .amux = LINE1,
+ } },
+ .radio = {
+ .name = name_radio,
+ .amux = LINE2,
+ },
},
};
@@ -5853,6 +5852,7 @@
case SAA7134_BOARD_BEHOLD_M6:
case SAA7134_BOARD_BEHOLD_M63:
case SAA7134_BOARD_BEHOLD_M6_EXTRA:
+ case SAA7134_BOARD_BEHOLD_H6:
dev->has_remote = SAA7134_REMOTE_I2C;
break;
case SAA7134_BOARD_AVERMEDIA_A169_B:
diff -r 6032ecd6ad7e linux/drivers/media/video/saa7134/saa7134-dvb.c
--- a/linux/drivers/media/video/saa7134/saa7134-dvb.c Sat Aug 30 11:07:04 2008 -0300
+++ b/linux/drivers/media/video/saa7134/saa7134-dvb.c Thu Oct 02 06:28:13 2008 +1000
@@ -48,6 +48,8 @@
#include "isl6405.h"
#include "lnbp21.h"
#include "tuner-simple.h"
+
+#include "zl10353.h"
MODULE_AUTHOR("Gerd Knorr <kraxel at bytesex.org> [SuSE Labs]");
MODULE_LICENSE("GPL");
@@ -838,6 +840,115 @@
.if_freq = TDA10046_FREQ_045,
.tuner_address = 0x61,
.request_firmware = philips_tda1004x_request_firmware
+};
+
+#if 0
+static int behold_h6_tuner_set_params(struct dvb_frontend* fe,
+ struct dvb_frontend_parameters* params)
+{
+ struct saa7134_dev *dev = fe->dvb->priv;
+ u8 addr = 0x61;
+ u8 tuner_buf[4];
+ struct i2c_msg tuner_msg = {.addr = addr,.flags = 0,.buf = tuner_buf,.len =
+ sizeof(tuner_buf) };
+ int tuner_frequency = 0;
+ u8 band, cp, opmode, filter;
+
+ printk("DEBUG: behold_h6_tuner_set_params\n");
+
+ /* determine band */
+ if (params->frequency < 48250000)
+ return -EINVAL;
+ else if (params->frequency < 160000000)
+ band = 1;
+ else if (params->frequency < 442000000)
+ band = 2;
+ else if (params->frequency < 863000000)
+ band = 4;
+ else
+ return -EINVAL;
+
+ /* determine charge pump */
+ switch (band) {
+ case 1:
+ if (params->frequency < 142000000){
+ cp = 0;
+ opmode = 0x07;
+ }
+ else {
+ cp = 1;
+ opmode = 0x06;
+ }
+ break;
+ case 2:
+ cp = 0;
+ if (params->frequency < 328000000){
+ opmode = 0x06;
+ }
+ else {
+ opmode = 0x07;
+ }
+ break;
+ case 4:
+ if (params->frequency < 638000000){
+ cp = 0;
+ opmode = 0x06;
+ }
+ else if (params->frequency < 846000000) {
+ cp = 0;
+ opmode = 0x07;
+ } else {
+ cp = 1;
+ opmode = 0x06;
+ }
+ break;
+ default:
+ break;
+ }
+
+ /* setup PLL filter */
+ switch (params->u.ofdm.bandwidth) {
+ case BANDWIDTH_6_MHZ:
+ filter = 0;
+ break;
+
+ case BANDWIDTH_7_MHZ:
+ filter = 0;
+ break;
+
+ case BANDWIDTH_8_MHZ:
+ filter = 1;
+ break;
+
+ default:
+ return -EINVAL;
+ }
+
+ /* calculate divisor
+ * ((36166000+((1000000/6)/2)) + Finput)/(1000000/6)
+ */
+ tuner_frequency = (((params->frequency / 1000) * 6) + 217496) / 1000;
+
+ /* setup tuner buffer */
+ tuner_buf[0] = (tuner_frequency >> 8) & 0x7f;
+ tuner_buf[1] = tuner_frequency & 0xff;
+ tuner_buf[2] = 0xca;
+ tuner_buf[3] = (cp << 5) | (filter << 3) | band;
+
+ if (i2c_transfer(addr, &tuner_msg, 1) != 1) {
+ wprintk("could not write to tuner at addr: 0x%02x\n",
+ addr << 1);
+ return -EIO;
+ }
+ msleep(1);
+ return 0;
+}
+#endif
+
+static struct zl10353_config behold_h6_config = {
+ .demod_address = 0x1e>>1,
+ .no_tuner = 1,
+ .parallel_ts = 1,
};
/* ==================================================================
@@ -1304,6 +1415,16 @@
&dev->i2c_adap);
attach_xc3028 = 1;
break;
+ case SAA7134_BOARD_BEHOLD_H6:
+ dev->dvb.frontend = dvb_attach(zl10353_attach,
+ &behold_h6_config,
+ &dev->i2c_adap);
+ if (dev->dvb.frontend) {
+ dvb_attach(simple_tuner_attach, dev->dvb.frontend,
+ &dev->i2c_adap, 0x61,
+ TUNER_PHILIPS_FMD1216ME_MK3);
+ }
+ break;
default:
wprintk("Huh? unknown DVB card?\n");
break;
In the dmesg file I see
Linux video capture interface: v2.00
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:02:00.0, rev: 209, irq: 16, latency: 32, mmio: 0xe0002000
saa7133[0]: subsystem: 5ace:6290, board: Beholder BeholdTV H6 [card=142,autodetected]
saa7133[0]: board init: gpio is 800000
saa7133[0]: i2c eeprom 00: ce 5a 90 62 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom e0: ae 01 00 00 ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom f0: 42 54 56 30 30 30 30 ff ff ff ff ff ff ff ff ff
tuner' 0-0043: chip found @ 0x86 (saa7133[0])
tda9887 0-0043: creating new instance
tda9887 0-0043: tda988[5/6/7] found
tuner' 0-0061: chip found @ 0xc2 (saa7133[0])
tuner-simple 0-0061: creating new instance
tuner-simple 0-0061: type set to 63 (Philips FMD1216ME MK3 Hybrid Tuner)
input: BeholdTV as /class/input/input7
ir-kbd-i2c: BeholdTV detected at i2c-0/0-002d/ir0 [saa7133[0]]
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
tuner-simple 0-0061: unable to probe Philips FMD1216ME MK3 Hybrid Tuner, proceeding anyway.zl10353: write to reg 62 failed (err = -5)!
tuner-simple 0-0061: attaching existing instance
tuner-simple 0-0061: type set to 63 (Philips FMD1216ME MK3 Hybrid Tuner)
DVB: registering new adapter (saa7133[0])
DVB: registering frontend 0 (Zarlink ZL10353 DVB-T)...
zl10353_read_register: readreg error (reg=80, ret==-5)
zl10353: write to reg 50 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
tuner-simple 0-0061: i2c i/o error: rc == -5 (should be 4)
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
zl10353_read_register: readreg error (reg=80, ret==-5)
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 55 failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg 56 failed (err = -5)!
zl10353: write to reg 5e failed (err = -5)!
zl10353: write to reg 5c failed (err = -5)!
zl10353: write to reg 64 failed (err = -5)!
zl10353: write to reg 65 failed (err = -5)!
zl10353: write to reg 66 failed (err = -5)!
zl10353: write to reg 6c failed (err = -5)!
zl10353: write to reg 6d failed (err = -5)!
zl10353: write to reg 6e failed (err = -5)!
zl10353: write to reg 6f failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 5f failed (err = -5)!
zl10353: write to reg 71 failed (err = -5)!
zl10353_read_register: readreg error (reg=6, ret==-5)
zl10353: write to reg 55 failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg 56 failed (err = -5)!
zl10353: write to reg 5e failed (err = -5)!
zl10353: write to reg 5c failed (err = -5)!
zl10353: write to reg 64 failed (err = -5)!
zl10353: write to reg 65 failed (err = -5)!
zl10353: write to reg 66 failed (err = -5)!
zl10353: write to reg 6c failed (err = -5)!
zl10353: write to reg 6d failed (err = -5)!
zl10353: write to reg 6e failed (err = -5)!
zl10353: write to reg 6f failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 62 failed (err = -5)!
zl10353: write to reg 5f failed (err = -5)!
zl10353: write to reg 71 failed (err = -5)!
zl10353_read_register: readreg error (reg=10, ret==-5)
zl10353_read_register: readreg error (reg=11, ret==-5)
zl10353_read_register: readreg error (reg=16, ret==-5)
zl10353_read_register: readreg error (reg=6, ret==-5)
zl10353_read_register: readreg error (reg=6, ret==-5)
zl10353: write to reg 55 failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg ea failed (err = -5)!
zl10353: write to reg 56 failed (err = -5)!
zl10353: write to reg 5e failed (err = -5)!
zl10353: write to reg 5c failed (err = -5)!
zl10353: write to reg 64 failed (err = -5)!
zl10353: write to reg 65 failed (err = -5)!
I write this patch same as SAA7134_BOARD_MD7134, SAA7134_BOARD_ASUS_EUROPA2_HYBRID.
The zl10353 want write data to zl10353 chip but wrote it to tuner. This is dmesg with i2c_debug=1
Linux video capture interface: v2.00
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:02:00.0, rev: 209, irq: 16, latency: 32, mmio: 0xe0002000
saa7133[0]: subsystem: 5ace:6290, board: Beholder BeholdTV H6 [card=142,autodetected]
saa7133[0]: board init: gpio is 800000
saa7133[0]: i2c xfer: < a0 00 >
saa7133[0]: i2c xfer: < a1 =ce =5a =90 =62 =54 =20 =00 =00 =00 =00 =00 =00 =00 =00 =00 =01
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ae =01 =00 =00 =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=42 =54 =56 =30 =30 =30 =30 =ff =ff =ff =ff =ff =ff =ff =ff =ff >
saa7133[0]: i2c eeprom 00: ce 5a 90 62 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom e0: ae 01 00 00 ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom f0: 42 54 56 30 30 30 30 ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c xfer: < 20 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 84 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 86 >
saa7133[0]: i2c xfer: < 86 00 >
saa7133[0]: i2c xfer: < 87 =10 =10 =10 =10 =10 =10 =10 =10 >
tuner' 0-0043: chip found @ 0x86 (saa7133[0])
tda9887 0-0043: creating new instance
tda9887 0-0043: tda988[5/6/7] found
saa7133[0]: i2c xfer: < 86 00 c0 00 00 >
tuner' i2c attach [addr=0x43,client=tuner']
saa7133[0]: i2c xfer: < 94 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 96 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c0 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c2 >
tuner' 0-0061: chip found @ 0xc2 (saa7133[0])
tuner' i2c attach [addr=0x61,client=tuner']
saa7133[0]: i2c xfer: < c4 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c6 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c8 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < ca ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < cc ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < ce ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d0 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d2 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d4 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d6 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d8 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < da ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < dc ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < de ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c2 0b dc 9c 60 >
saa7133[0]: i2c xfer: < c2 0b dc 86 54 >
saa7133[0]: i2c xfer: < c3 =30 >
tuner-simple 0-0061: creating new instance
tuner-simple 0-0061: type set to 63 (Philips FMD1216ME MK3 Hybrid Tuner)
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 c2 00 00 >
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < f5 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 8f ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < e3 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 5b >
ir-kbd-i2c i2c attach [addr=0x2d,client=i2c IR (SAA713x rem]
ir-kbd-i2c i2c IR detected ().
input: BeholdTV as /class/input/input7
ir-kbd-i2c: BeholdTV detected at i2c-0/0-002d/ir0 [saa7133[0]]
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 9c 60 85 54 >
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
DEBUG: zl10353_read_register start
Read from 0xF dev, 0x7F reg
saa7133[0]: i2c xfer: < 1e 7f [fd quirk] < 1f =14 >
DEBUG: zl10353_read_register stop
zl10353_i2c_gate_ctrl
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x62 reg, 0x1A val
saa7133[0]: i2c xfer: < 1e 62 1a >
DEBUG: zl10353_single_write stop
saa7133[0]: i2c xfer: < c3 ERROR: ARB_LOST
tuner-simple 0-0061: unable to probe Philips FMD1216ME MK3 Hybrid Tuner, proceeding anyway.zl10353_i2c_gate_ctrl
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x62 reg, 0xA val
saa7133[0]: i2c xfer: < 1e ERROR: BUSY
zl10353: write to reg 62 failed (err = -5)!
tuner-simple 0-0061: attaching existing instance
tuner-simple 0-0061: type set to 63 (Philips FMD1216ME MK3 Hybrid Tuner)
DVB: registering new adapter (saa7133[0])
DVB: registering frontend 0 (Zarlink ZL10353 DVB-T)...
zl10353_init start
DEBUG: zl10353_read_register start
Read from 0xF dev, 0x50 reg
saa7133[0]: i2c xfer: < 1e ERROR: ST_ERR
zl10353_read_register: readreg error (reg=80, ret==-5)
DEBUG: zl10353_write start
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x50 reg, 0x3 val
saa7133[0]: i2c xfer: < 1e ERROR: BUSY
zl10353: write to reg 50 failed (err = -5)!
zl10353_init stop
zl10353_sleep start
DEBUG: zl10353_write start
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x50 reg, 0xC val
saa7133[0]: i2c xfer: < 1e ERROR: ST_ERR
zl10353: write to reg 50 failed (err = -5)!
zl10353_sleep stop
zl10353_i2c_gate_ctrl
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x62 reg, 0x1A val
saa7133[0]: i2c xfer: < 1e ERROR: BUSY
zl10353: write to reg 62 failed (err = -5)!
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
saa7133[0]: i2c xfer: < 86 ERROR: BUSY
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
saa7133[0]: i2c xfer: < 86 ERROR: BUSY
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
tuner-simple 0-0061: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < 86 ERROR: BUSY
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
saa7133[0]: i2c xfer: < 86 ERROR: BUSY
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
tuner-simple 0-0061: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < 86 ERROR: BUSY
tda9887 0-0043: i2c i/o error: rc == -5 (should be 4)
saa7133[0]: i2c xfer: < c2 ERROR: ST_ERR
tda9887 0-0043: destroying instance
tuner-simple 0-0061: destroying instance
When I set comments to this part.
+ if (dev->dvb.frontend) {
+ dvb_attach(simple_tuner_attach, dev->dvb.frontend,
+ &dev->i2c_adap, 0x61,
+ TUNER_PHILIPS_FMD1216ME_MK3);
+ }
Communication ZL10353 driver with ZL10353 chip is OK, but card in not tunnable.
Linux video capture interface: v2.00
saa7130/34: v4l2 driver version 0.2.14 loaded
saa7133[0]: found at 0000:02:00.0, rev: 209, irq: 16, latency: 32, mmio: 0xe0002000
saa7133[0]: subsystem: 5ace:6290, board: Beholder BeholdTV H6 [card=142,autodetected]
saa7133[0]: board init: gpio is 800000
saa7133[0]: i2c xfer: < a0 00 >
saa7133[0]: i2c xfer: < a1 =ce =5a =90 =62 =54 =20 =00 =00 =00 =00 =00 =00 =00 =00 =00 =01
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ff =ae =01 =00 =00 =ff =ff =ff
=ff =ff =ff =ff =ff =ff =ff =ff =ff =42 =54 =56 =30 =30 =30 =30 =ff =ff =ff =ff =ff =ff =ff =ff =ff >
saa7133[0]: i2c eeprom 00: ce 5a 90 62 54 20 00 00 00 00 00 00 00 00 00 01
saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom e0: ae 01 00 00 ff ff ff ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c eeprom f0: 42 54 56 30 30 30 30 ff ff ff ff ff ff ff ff ff
saa7133[0]: i2c xfer: < 20 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 84 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 86 >
saa7133[0]: i2c xfer: < 86 00 >
saa7133[0]: i2c xfer: < 87 =10 =10 =10 =10 =10 =10 =10 =10 >
tuner' 0-0043: chip found @ 0x86 (saa7133[0])
tda9887 0-0043: creating new instance
tda9887 0-0043: tda988[5/6/7] found
saa7133[0]: i2c xfer: < 86 00 c0 00 00 >
tuner' i2c attach [addr=0x43,client=tuner']
saa7133[0]: i2c xfer: < 94 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 96 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c0 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c2 >
tuner' 0-0061: chip found @ 0xc2 (saa7133[0])
tuner' i2c attach [addr=0x61,client=tuner']
saa7133[0]: i2c xfer: < c4 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c6 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c8 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < ca ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < cc ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < ce ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d0 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d2 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d4 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d6 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < d8 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < da ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < dc ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < de ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < c2 0b dc 9c 60 >
saa7133[0]: i2c xfer: < c2 0b dc 86 54 >
saa7133[0]: i2c xfer: < c3 =30 >
tuner-simple 0-0061: creating new instance
tuner-simple 0-0061: type set to 63 (Philips FMD1216ME MK3 Hybrid Tuner)
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 c2 00 00 >
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 00 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < f5 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 8f ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < e3 ERROR: NO_DEVICE
saa7133[0]: i2c xfer: < 5b >
ir-kbd-i2c i2c attach [addr=0x2d,client=i2c IR (SAA713x rem]
ir-kbd-i2c i2c IR detected ().
input: BeholdTV as /class/input/input8
ir-kbd-i2c: BeholdTV detected at i2c-0/0-002d/ir0 [saa7133[0]]
saa7133[0]: registered device video0 [v4l2]
saa7133[0]: registered device vbi0
saa7133[0]: registered device radio0
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 9c 60 85 54 >
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 9c 60 85 54 >
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 1b 6f 86 52 >
saa7133[0]: i2c xfer: < 86 00 20 00 00 >
saa7133[0]: i2c xfer: < c2 9c 60 85 54 >
DEBUG: zl10353_read_register start
Read from 0xF dev, 0x7F reg
saa7133[0]: i2c xfer: < 1e 7f [fd quirk] < 1f =14 >
DEBUG: zl10353_read_register stop
DVB: registering new adapter (saa7133[0])
DVB: registering frontend 0 (Zarlink ZL10353 DVB-T)...
zl10353_init start
DEBUG: zl10353_read_register start
Read from 0xF dev, 0x50 reg
saa7133[0]: i2c xfer: < 1e 50 [fd quirk] < 1f =0c >
DEBUG: zl10353_read_register stop
DEBUG: zl10353_write start
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x50 reg, 0x3 val
saa7133[0]: i2c xfer: < 1e 50 03 >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x51 reg, 0x44 val
saa7133[0]: i2c xfer: < 1e 51 44 >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x52 reg, 0x46 val
saa7133[0]: i2c xfer: < 1e 52 46 >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x53 reg, 0x15 val
saa7133[0]: i2c xfer: < 1e 53 15 >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x54 reg, 0xF val
saa7133[0]: i2c xfer: < 1e 54 0f >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_write stop
zl10353_init stop
zl10353_sleep start
DEBUG: zl10353_write start
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x50 reg, 0xC val
saa7133[0]: i2c xfer: < 1e 50 0c >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_single_write start
write data into 0xF dev, 0x51 reg, 0x44 val
saa7133[0]: i2c xfer: < 1e 51 44 >
DEBUG: zl10353_single_write stop
DEBUG: zl10353_write stop
zl10353_sleep stop
saa7133[0]: i2c xfer: < 86 00 a0 00 00 >
saa7133[0]: i2c xfer: < c2 07 ac 80 19 >
saa7133[0]: i2c xfer: < 86 00 a0 00 00 >
saa7133[0]: i2c xfer: < c2 9c 60 85 54 >
Have you any suggestion?
With my best regards, Dmitry.
More information about the linux-dvb
mailing list