Re: [PATCH] Multifrontend support for saa7134
Am Dienstag, den 24.11.2009, 02:08 +0100 schrieb hermann pitton: Hi Mauro, Am Montag, den 23.11.2009, 14:04 -0200 schrieb Mauro Carvalho Chehab: Hi Lukáš/Hermann, Any news about this patch? I'll mark it as RFC at the patchwork, since it seems that this is not finished yet. Please let me know if you make some progress. @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, Just one suggestion here: it is a way better to assume that an uninitialized value (e. g. num_frontends = 0) for num_frontends to mean that just one frontend exists. This saves space at the initialization segment of the module and avoids the risk of someone forget to add num_frontends=0. cheers, Mauro. I currently don't have time to work on it and Lukáš' time is also limited. We stay in contact and I can provide a device not yet working for me to him, if he wants. I'll keep you posted. You can have one too ;) Currently the hardware reset in saa7134-dvb.c seems to break tda8275a hybrid tuners on my saa7131e devices for DVB-T. This is not restricted to the devices with multiple frontends, but also hits such with single frontend only. The TRIO has two tda8275a, they are not in use as hybrid tuners and don't need extra initialization again, that might be the difference. We should avoid such saa7133 hardware reset on those cards not needing it in any case, means all with single frontend. Or find a solution for this ridiculous frontend is superior over the bridge going on since years against any common sense and claiming to cover hybrid stuff too, imposing total nonsense on all such interested. ON DVB-S is also a regression visible, in one of two cases needs a second tuning attempt now and it also seems to be related to the hardware reset, since without works fine like previously. Patch is not ready yet for inclusion. Getting hands dirty on what is around now on specs, that hardware reset changes all gpios to be input on the bridge. Of course nothing left after it for that five years work on such on that dvb stuff. Mike proceed. Cheers, Hermann -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] Multifrontend support for saa7134
Hi Lukáš/Hermann, Any news about this patch? I'll mark it as RFC at the patchwork, since it seems that this is not finished yet. Please let me know if you make some progress. @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, Just one suggestion here: it is a way better to assume that an uninitialized value (e. g. num_frontends = 0) for num_frontends to mean that just one frontend exists. This saves space at the initialization segment of the module and avoids the risk of someone forget to add num_frontends=0. cheers, Mauro. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] Multifrontend support for saa7134
Hi Mauro, Am Montag, den 23.11.2009, 14:04 -0200 schrieb Mauro Carvalho Chehab: Hi Lukáš/Hermann, Any news about this patch? I'll mark it as RFC at the patchwork, since it seems that this is not finished yet. Please let me know if you make some progress. @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, +.num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, Just one suggestion here: it is a way better to assume that an uninitialized value (e. g. num_frontends = 0) for num_frontends to mean that just one frontend exists. This saves space at the initialization segment of the module and avoids the risk of someone forget to add num_frontends=0. cheers, Mauro. I currently don't have time to work on it and Lukáš' time is also limited. We stay in contact and I can provide a device not yet working for me to him, if he wants. I'll keep you posted. You can have one too ;) Currently the hardware reset in saa7134-dvb.c seems to break tda8275a hybrid tuners on my saa7131e devices for DVB-T. This is not restricted to the devices with multiple frontends, but also hits such with single frontend only. The TRIO has two tda8275a, they are not in use as hybrid tuners and don't need extra initialization again, that might be the difference. We should avoid such saa7133 hardware reset on those cards not needing it in any case, means all with single frontend. ON DVB-S is also a regression visible, in one of two cases needs a second tuning attempt now and it also seems to be related to the hardware reset, since without works fine like previously. Patch is not ready yet for inclusion. Cheers, Hermann -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] Multifrontend support for saa7134
Hi Lukáš, Am Dienstag, den 17.11.2009, 15:06 +0100 schrieb Lukáš Karas: Hi Hermann At first, sorry for my late reaction, I havn't enough time for hacking... Thank you for detailed subscription. So, the main problem probably is LNB supply as I understand, yes? Please, try modified patch, that turn on (off) LNB supply after software reset. I don't know if I do it right. Hacking without access to hardware is hard. well, it is totally unchanged, also I had at least some Asus 3in1 up on some F11 with the same results. We need someone with some time and skills going through it. If the i2c traffic is not corrupted, should be doable, else also ;) I would not say, that MFE support on such an old driver has high prio. Looking back on it, you see of course the roots for later stuff. But given the low level of feedback, and they are already through on m$ now and bought the cx remains, means a now most likely working hardware concept is already there, though. If you, or likely even better Jean or both, have some time for it, I do happily provide you with such hardware. And can read some new book, eventually ;) Cheers, Hermann Lukas diff -uprN linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c linux/drivers/media/video/saa7134/saa7134- cards.c --- linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c 2009-10-31 10:40:46.0 +0100 +++ linux/drivers/media/video/saa7134/saa7134-cards.c 2009-10-31 17:47:51.0 +0100 @@ -614,6 +614,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1895,6 +1897,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -1987,6 +1990,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .gpiomask = 0x0020, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -2020,6 +2024,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_comp1, .vmux = 0, @@ -2126,6 +2131,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .gpiomask = 0x0020, .inputs = {{ .name = name_tv, @@ -2426,6 +2432,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -2450,6 +2457,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -2473,6 +2481,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_comp1, .vmux = 0, @@ -2596,6 +2605,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, +
Re: [PATCH] Multifrontend support for saa7134
Hi Herman I analyse related dvb code today and I'm totally confused that your card dosn't work. So, it is handled like MEDION_MD8800_QUADRO yes? Could you send me full log with enabled i2c debug please? With and without my patch, using DVB-S part. Thank you for your time. Lukas Dne Ne 1. listopadu 2009 03:40:50 jste napsal(a): Hi Lukas, Petr and Eddi, thanks for working on it. Am Samstag, den 31.10.2009, 21:21 +0100 schrieb Lukáš Karas: Hi all, here is patch for multifrontend support in saa7134 driver. It is derived from patches on page http://tux.dpeddi.com/lr319sta/ This patch has effect on these cards: * FlyDVB Trio * Medion MD8800 Quadro * ASUSTeK Tiger 3in1 The a little bit hidden low profile triple CTX948 is also involved, just to have it mentioned. We treat it like the Medion MD8800 Quadro, CTX944, with subsystem 16be:0007. It was tested with FlyDVB Trio card. If you could, please test it with other cards too. Some first tests on the CTX944 don't look such promising yet. On DVB-T only one transponder remains and even that one is heavily disturbed. On DVB-S only about one third of the previous services is still available. Lots of such. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) I do have the Asus Tiger 3in1 and the triple CTX948 too, but can't promise when I get time to test on those less complicated devices. Cheers, Hermann Regards, Lukas Signed-off-by: Lukas Karas lukas.ka...@centrum.cz Tested-by: Petr Fiala petr.fi...@gmail.com diff -uprN ./linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c ./linux/drivers/media/video/saa7134/saa7134- cards.c --- ./linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c2009-10- 31 10:40:46.0 +0100 +++ ./linux/drivers/media/video/saa7134/saa7134-cards.c 2009-10-31 17:47:51.0 +0100 @@ -614,6 +614,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, +.num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1895,6 +1897,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -1987,6 +1990,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .gpiomask = 0x0020, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -2020,6 +2024,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_comp1, .vmux = 0, @@ -2126,6 +2131,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .gpiomask = 0x0020, .inputs = {{ .name = name_tv, @@ -2426,6 +2432,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv,
Re: [PATCH] Multifrontend support for saa7134
Hi, Am Sonntag, den 01.11.2009, 03:40 +0100 schrieb hermann pitton: Hi Lukas, Petr and Eddi, thanks for working on it. Am Samstag, den 31.10.2009, 21:21 +0100 schrieb Lukáš Karas: Hi all, here is patch for multifrontend support in saa7134 driver. It is derived from patches on page http://tux.dpeddi.com/lr319sta/ This patch has effect on these cards: * FlyDVB Trio * Medion MD8800 Quadro * ASUSTeK Tiger 3in1 The a little bit hidden low profile triple CTX948 is also involved, just to have it mentioned. We treat it like the Medion MD8800 Quadro, CTX944, with subsystem 16be:0007. It was tested with FlyDVB Trio card. If you could, please test it with other cards too. Some first tests on the CTX944 don't look such promising yet. On DVB-T only one transponder remains and even that one is heavily disturbed. just some small updates on it, unfortunately I don't have the time currently it deserves. The triple CTX948 shows the same behaviour, not such surprising. But, the Trio has two separate tuners for analog and DVB-T and the DVB-T problem seems only to be with hybrid devices. It is also on such silicon hybrid tuners without multiple frontends. So, likely some bug for hybrid tuner initialization, unfortunately i2c_debug and related tuner debug seem not to catch it and i2c gate control reports as being operable. Devices with FMD1216ME/I MK3 hybrid do still work for DVB-T! On DVB-S only about one third of the previous services is still available. Lots of such. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) I do have the Asus Tiger 3in1 and the triple CTX948 too, but can't promise when I get time to test on those less complicated devices. If the above diseqc queue not ready appears, it fails, but a second attempt almost always works. Might be some unsynced timing problems between the different LNB supplies. (need to get the Tiger 3in1 up too) However, it is very close to fully working already. Cheers, Hermann -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] Multifrontend support for saa7134
Hi Lukas, Petr and Eddi, thanks for working on it. Am Samstag, den 31.10.2009, 21:21 +0100 schrieb Lukáš Karas: Hi all, here is patch for multifrontend support in saa7134 driver. It is derived from patches on page http://tux.dpeddi.com/lr319sta/ This patch has effect on these cards: * FlyDVB Trio * Medion MD8800 Quadro * ASUSTeK Tiger 3in1 The a little bit hidden low profile triple CTX948 is also involved, just to have it mentioned. We treat it like the Medion MD8800 Quadro, CTX944, with subsystem 16be:0007. It was tested with FlyDVB Trio card. If you could, please test it with other cards too. Some first tests on the CTX944 don't look such promising yet. On DVB-T only one transponder remains and even that one is heavily disturbed. On DVB-S only about one third of the previous services is still available. Lots of such. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. tda10086_diseqc_wait: diseqc queue not ready, command may be lost. saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=1) returns 0 saa7133[1]/dvb: saa7134_dvb_bus_ctrl(acquire=0) I do have the Asus Tiger 3in1 and the triple CTX948 too, but can't promise when I get time to test on those less complicated devices. Cheers, Hermann Regards, Lukas Signed-off-by: Lukas Karas lukas.ka...@centrum.cz Tested-by: Petr Fiala petr.fi...@gmail.com diff -uprN ./linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c ./linux/drivers/media/video/saa7134/saa7134- cards.c --- ./linux-a76d06e9ff9b/drivers/media/video/saa7134/saa7134-cards.c 2009-10-31 10:40:46.0 +0100 +++ ./linux/drivers/media/video/saa7134/saa7134-cards.c 2009-10-31 17:47:51.0 +0100 @@ -614,6 +614,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1352,6 +1353,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -1895,6 +1897,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_INTERCARRIER | TDA9887_PORT2_INACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -1987,6 +1990,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .gpiomask = 0x0020, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 1, @@ -2020,6 +2024,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_comp1, .vmux = 0, @@ -2126,6 +2131,7 @@ struct saa7134_board saa7134_boards[] = .tuner_addr = ADDR_UNSET, .radio_addr = ADDR_UNSET, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .gpiomask = 0x0020, .inputs = {{ .name = name_tv, @@ -2426,6 +2432,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{ .name = name_tv, .vmux = 3, @@ -2450,6 +2457,7 @@ struct saa7134_board saa7134_boards[] = .radio_addr = ADDR_UNSET, .tda9887_conf = TDA9887_PRESENT | TDA9887_PORT1_ACTIVE, .mpeg = SAA7134_MPEG_DVB, + .num_frontends = 1, .inputs = {{