On 10/26/2009 06:09 PM, Devin Heitmueller wrote:
On Mon, Oct 26, 2009 at 12:02 PM, Antti Palosaari<crope@xxxxxx> wrote:
Is there any way to speed up Empia to handle streams bigger than ~45
Mbit/sec?
Can you add a debug line that dumps out the values of register 0x01
and register 0x5d and then send me the values?
Here you are.
Antti
--
http://palosaari.fi/
[crope@localhost linuxtv]$ czap -a 0 -r "LIV"
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
110 LIV:290000000:INVERSION_AUTO:6875000:FEC_AUTO:QAM_256:451:452:8
110 LIV: f 290000000, s 6875000, i 2, fec 9, qam 5, v 0x1c3, a 0x1c4
status 00 | signal 8181 | snr bfbf | ber 000fffff | unc 00000199 |
status 1f | signal 0c0c | snr efef | ber 000fffff | unc 0000062c | FE_HAS_LOCK
status 1f | signal 0c0c | snr efef | ber 0000000f | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr efef | ber 00000020 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr eeee | ber 00000014 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr f0f0 | ber 0000001e | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr efef | ber 0000001b | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr efef | ber 00000008 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr ecec | ber 00000016 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr efef | ber 00000014 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr eeee | ber 00000014 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr f0f0 | ber 00000012 | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr f0f0 | ber 0000000a | unc 00000000 | FE_HAS_LOCK
status 1f | signal 0c0c | snr f0f0 | ber 00000021 | unc 00000001 | FE_HAS_LOCK
^C
[crope@localhost linuxtv]$
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
0000 5 p/s 0 kb/s 8 kbit
0001 9 p/s 1 kb/s 14 kbit
0010 8 p/s 1 kb/s 13 kbit
0011 0 p/s 0 kb/s 1 kbit
0012 141 p/s 25 kb/s 213 kbit
0020 48 p/s 8 kb/s 73 kbit
012d 9 p/s 1 kb/s 14 kbit
0191 10198 p/s 1872 kb/s 15338 kbit
0192 174 p/s 31 kb/s 262 kbit
01c2 9 p/s 1 kb/s 14 kbit
01c3 4428 p/s 812 kb/s 6659 kbit
01c4 261 p/s 47 kb/s 393 kbit
0202 10604 p/s 1946 kb/s 15949 kbit
020a 9 p/s 1 kb/s 14 kbit
0240 99 p/s 18 kb/s 150 kbit
025d 1 p/s 0 kb/s 2 kbit
025e 1 p/s 0 kb/s 2 kbit
025f 1 p/s 0 kb/s 2 kbit
0260 1 p/s 0 kb/s 2 kbit
0289 266 p/s 48 kb/s 400 kbit
17f2 9 p/s 1 kb/s 14 kbit
1ffe 25 p/s 4 kb/s 38 kbit
1fff 7400 p/s 1358 kb/s 11129 kbit
2000 33724 p/s 6191 kb/s 50721 kbit
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
^C
[crope@localhost linuxtv]$
Oct 26 19:51:13 localhost kernel: usbcore: deregistering interface driver em28xx
Oct 26 19:51:15 localhost kernel: usb 1-5: new high speed USB device using ehci_hcd and address 9
Oct 26 19:51:15 localhost kernel: usb 1-5: New USB device found, idVendor=eb1a, idProduct=2868
Oct 26 19:51:15 localhost kernel: usb 1-5: New USB device strings: Mfr=0, Product=1, SerialNumber=0
Oct 26 19:51:15 localhost kernel: usb 1-5: configuration #1 chosen from 1 choice
Oct 26 19:51:16 localhost kernel: Linux video capture interface: v2.00
Oct 26 19:51:16 localhost kernel: em28xx: New device @ 480 Mbps (eb1a:2868, interface 0, class 0)
Oct 26 19:51:16 localhost kernel: em28xx #0: chip ID is em2870
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 00: 1a eb 67 95 1a eb 68 28 c0 13 5c 00 6a 22 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 10: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 20: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 30: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 40: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 50: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 60: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 70: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 80: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom 90: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom a0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom b0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom c0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom d0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom e0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: i2c eeprom f0: b8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Oct 26 19:51:16 localhost kernel: em28xx #0: EEPROM ID= 0x9567eb1a, EEPROM hash = 0x63f653bd
Oct 26 19:51:16 localhost kernel: em28xx #0: EEPROM info:
Oct 26 19:51:16 localhost kernel: em28xx #0: No audio on board.
Oct 26 19:51:16 localhost kernel: em28xx #0: 500mA max power
Oct 26 19:51:16 localhost kernel: em28xx #0: Table at 0x00, strings=0x226a, 0x0000, 0x00b8
Oct 26 19:51:16 localhost kernel: em28xx #0: Identified as Unknown EM2750/28xx video grabber (card=1)
Oct 26 19:51:16 localhost kernel: em28xx #0: Your board has no unique USB ID.
Oct 26 19:51:16 localhost kernel: em28xx #0: A hint were successfully done, based on eeprom hash.
Oct 26 19:51:16 localhost kernel: em28xx #0: This method is not 100% failproof.
Oct 26 19:51:16 localhost kernel: em28xx #0: If the board were missdetected, please email this log to:
Oct 26 19:51:16 localhost kernel: em28xx #0: V4L Mailing List <linux-media@xxxxxxxxxxxxxxx>
Oct 26 19:51:16 localhost kernel: em28xx #0: Board detected as Reddo DVB-C USB TV Box
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx #0: v4l2 driver version 0.1.2
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_set_alternate :minimum isoc packet size: 2888 (alt=6)
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_set_alternate :setting alternate 6 with wMaxPacketSize=2892
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_accumulator_set :em28xx Scale: (1,1)-(179,143)
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_capture_area_set :em28xx Area Set: (180,144)
Oct 26 19:51:16 localhost kernel: em28xx #0: V4L2 video device registered as /dev/video0
Oct 26 19:51:16 localhost kernel: usbcore: registered new interface driver em28xx
Oct 26 19:51:16 localhost kernel: em28xx driver loaded
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: tuner-simple 2-0060: creating new instance
Oct 26 19:51:16 localhost kernel: tuner-simple 2-0060: type set to 82 (Philips CU1216L)
Oct 26 19:51:16 localhost kernel: DVB: registering new adapter (em28xx #0)
Oct 26 19:51:16 localhost kernel: DVB: registering adapter 0 frontend 0 (Philips TDA10023 DVB-C)...
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: Successfully loaded em28xx-dvb
Oct 26 19:51:16 localhost kernel: Em28xx: Initialized (Em28xx dvb Extension) extension
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_accumulator_set :em28xx Scale: (1,1)-(179,143)
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_capture_area_set :em28xx Area Set: (180,144)
Oct 26 19:51:16 localhost kernel: em28xx #0 em28xx_uninit_isoc :em28xx: called em28xx_uninit_isoc
Oct 26 19:51:16 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:51:59 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:52:00 localhost kernel: <<< 13
Oct 26 19:52:00 localhost kernel: em28xx #0 em28xx_isoc_dvb_max_packetsize :dvb max packet size=752
Oct 26 19:52:00 localhost kernel: em28xx #0 em28xx_init_isoc :em28xx: called em28xx_prepare_isoc
Oct 26 19:52:00 localhost kernel: em28xx #0 em28xx_uninit_isoc :em28xx: called em28xx_uninit_isoc
Oct 26 19:52:47 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:52:47 localhost kernel: em28xx #0 em28xx_uninit_isoc :em28xx: called em28xx_uninit_isoc
Oct 26 19:52:59 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:53:00 localhost kernel: <<< 13
Oct 26 19:53:00 localhost kernel: em28xx #0 em28xx_isoc_dvb_max_packetsize :dvb max packet size=752
Oct 26 19:53:00 localhost kernel: em28xx #0 em28xx_init_isoc :em28xx: called em28xx_prepare_isoc
Oct 26 19:53:00 localhost kernel: em28xx #0 em28xx_uninit_isoc :em28xx: called em28xx_uninit_isoc
Oct 26 19:53:18 localhost kernel: em28xx_gpio_set: r01:0x13 r5d:0x0
Oct 26 19:53:18 localhost kernel: em28xx #0 em28xx_uninit_isoc :em28xx: called em28xx_uninit_isoc
^C
[root@localhost em28xx-modeswitch]# hg diff
Not trusting file /home/crope/linuxtv/code/reddo_dvbc/em28xx-modeswitch/.hg/hgrc from untrusted user crope, group crope
Not trusting file /home/crope/linuxtv/code/reddo_dvbc/em28xx-modeswitch/.hg/hgrc from untrusted user crope, group crope
diff -r 6702a0527680 linux/drivers/media/video/em28xx/em28xx-core.c
--- a/linux/drivers/media/video/em28xx/em28xx-core.c Tue Oct 13 23:44:09 2009 -0400
+++ b/linux/drivers/media/video/em28xx/em28xx-core.c Mon Oct 26 19:53:37 2009 +0200
@@ -32,7 +32,7 @@
/* #define ENABLE_DEBUG_ISOC_FRAMES */
-static unsigned int core_debug;
+static unsigned int core_debug = -1;
module_param(core_debug, int, 0644);
MODULE_PARM_DESC(core_debug, "enable debug messages [core]");
@@ -41,7 +41,7 @@
printk(KERN_INFO "%s %s :"fmt, \
dev->name, __func__ , ##arg); } while (0)
-static unsigned int reg_debug;
+static unsigned int reg_debug = -1;
module_param(reg_debug, int, 0644);
MODULE_PARM_DESC(reg_debug, "enable debug messages [URB reg]");
@@ -817,6 +817,12 @@
int em28xx_gpio_set(struct em28xx *dev, struct em28xx_reg_seq *gpio)
{
int rc = 0;
+ int r01, r5d;
+
+ r01 = em28xx_read_reg(dev, 0x01);
+ r5d = em28xx_read_reg(dev, 0x5d);
+ printk(KERN_INFO "%s: r01:0x%x r5d:0x%x\n", __func__, r01, r5d);
+// printk(KERN_INFO "Em28xx: Initialized (%s) extension\n", ops->name);
if (!gpio)
return rc;
diff -r 6702a0527680 linux/drivers/media/video/em28xx/em28xx-dvb.c
--- a/linux/drivers/media/video/em28xx/em28xx-dvb.c Tue Oct 13 23:44:09 2009 -0400
+++ b/linux/drivers/media/video/em28xx/em28xx-dvb.c Mon Oct 26 19:53:37 2009 +0200
@@ -40,7 +40,7 @@
MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxx>");
MODULE_LICENSE("GPL");
-static unsigned int debug;
+static unsigned int debug = 1;
module_param(debug, int, 0644);
MODULE_PARM_DESC(debug, "enable debug messages [dvb]");
@@ -48,7 +48,7 @@
#define dprintk(level, fmt, arg...) do { \
if (debug >= level) \
- printk(KERN_DEBUG "%s/2-dvb: " fmt, dev->name, ## arg); \
+ printk(KERN_INFO "%s/2-dvb: " fmt, dev->name, ## arg); \
} while (0)
#define EM28XX_DVB_NUM_BUFS 5
[root@localhost em28xx-modeswitch]#
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
0000 7 p/s 1 kb/s 11 kbit
0001 6 p/s 1 kb/s 10 kbit
0010 8 p/s 1 kb/s 13 kbit
0011 0 p/s 0 kb/s 1 kbit
0012 122 p/s 22 kb/s 183 kbit
0020 60 p/s 11 kb/s 90 kbit
012d 7 p/s 1 kb/s 11 kbit
0191 9321 p/s 1711 kb/s 14019 kbit
0192 161 p/s 29 kb/s 243 kbit
01c2 11 p/s 2 kb/s 17 kbit
01c3 4055 p/s 744 kb/s 6099 kbit
01c4 230 p/s 42 kb/s 346 kbit
0202 9747 p/s 1789 kb/s 14659 kbit
020a 10 p/s 1 kb/s 16 kbit
022f 0 p/s 0 kb/s 1 kbit
0240 97 p/s 17 kb/s 146 kbit
025d 1 p/s 0 kb/s 2 kbit
025e 2 p/s 0 kb/s 4 kbit
025f 1 p/s 0 kb/s 2 kbit
0260 1 p/s 0 kb/s 2 kbit
0279 0 p/s 0 kb/s 1 kbit
0289 234 p/s 42 kb/s 352 kbit
0374 0 p/s 0 kb/s 1 kbit
0398 0 p/s 0 kb/s 1 kbit
0408 0 p/s 0 kb/s 1 kbit
0523 0 p/s 0 kb/s 1 kbit
0542 0 p/s 0 kb/s 1 kbit
056d 0 p/s 0 kb/s 1 kbit
0611 0 p/s 0 kb/s 1 kbit
0624 0 p/s 0 kb/s 1 kbit
070e 0 p/s 0 kb/s 1 kbit
07ab 0 p/s 0 kb/s 1 kbit
081b 0 p/s 0 kb/s 1 kbit
0873 0 p/s 0 kb/s 1 kbit
08b7 0 p/s 0 kb/s 1 kbit
09e3 0 p/s 0 kb/s 1 kbit
0a42 0 p/s 0 kb/s 1 kbit
0bf6 0 p/s 0 kb/s 1 kbit
0c4e 0 p/s 0 kb/s 1 kbit
0c98 0 p/s 0 kb/s 1 kbit
0e67 0 p/s 0 kb/s 1 kbit
0f52 0 p/s 0 kb/s 1 kbit
0fcd 0 p/s 0 kb/s 1 kbit
1017 0 p/s 0 kb/s 1 kbit
104c 0 p/s 0 kb/s 1 kbit
10ed 0 p/s 0 kb/s 1 kbit
1243 0 p/s 0 kb/s 1 kbit
128b 0 p/s 0 kb/s 1 kbit
12c2 0 p/s 0 kb/s 1 kbit
12d1 0 p/s 0 kb/s 1 kbit
138e 0 p/s 0 kb/s 1 kbit
13bf 0 p/s 0 kb/s 1 kbit
14b2 0 p/s 0 kb/s 1 kbit
15ad 0 p/s 0 kb/s 1 kbit
15d4 0 p/s 0 kb/s 1 kbit
16a8 0 p/s 0 kb/s 1 kbit
1750 0 p/s 0 kb/s 1 kbit
17f2 6 p/s 1 kb/s 10 kbit
183d 0 p/s 0 kb/s 1 kbit
1880 0 p/s 0 kb/s 1 kbit
18e7 0 p/s 0 kb/s 1 kbit
196f 0 p/s 0 kb/s 1 kbit
198a 0 p/s 0 kb/s 1 kbit
19fe 0 p/s 0 kb/s 1 kbit
1b8b 0 p/s 0 kb/s 1 kbit
1bd0 0 p/s 0 kb/s 1 kbit
1c9f 0 p/s 0 kb/s 1 kbit
1d19 0 p/s 0 kb/s 1 kbit
1e35 0 p/s 0 kb/s 1 kbit
1ffe 20 p/s 3 kb/s 31 kbit
1fff 6814 p/s 1251 kb/s 10248 kbit
2000 30984 p/s 5688 kb/s 46600 kbit
-PID--FREQ-----BANDWIDTH-BANDWIDTH-
^C
[crope@localhost linuxtv]$
[crope@localhost linuxtv]$ czap -a 0 -r "LIV"
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
110 LIV:290000000:INVERSION_AUTO:6875000:FEC_AUTO:QAM_256:451:452:8
110 LIV: f 290000000, s 6875000, i 2, fec 9, qam 5, v 0x1c3, a 0x1c4
status 03 | signal b4b4 | snr dbdb | ber 000fffff | unc 000000bd |
status 1f | signal c3c3 | snr f3f3 | ber 000006c0 | unc 00000002 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000008 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000002 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal f9f9 | snr f6f6 | ber 00000000 | unc 00000393 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000000 | unc 000005bd | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 000002d3 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f2f2 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000000 | unc 00000000 | FE_HAS_LOCK
status 1f | signal c3c3 | snr f3f3 | ber 00000001 | unc 00000000 | FE_HAS_LOCK
^C
[crope@localhost linuxtv]$