xbmc-imx6 / xbmc

XBMC Main Repository
http://xbmc.org
Other
32 stars 5 forks source link

HDMI-CEC signal lost after restarting TV #39

Closed rkorn86 closed 10 years ago

rkorn86 commented 10 years ago

When my TV is restarted while XBMC is running, the CEC-Signal is not properly restored. My Samsung TV is not finding the XBMC CEC-Device. The same error occours while using the cec test client. Maybe it is only on my Wandboard, but Ive heard from other wandboard users, having the same problem. Is it a wandboard problem? Can it be fixed in the imx6 tree? Any1 else having such a trouble?

PS: Ive fixed the wandboard CEC hardware problem by following this guide: http://www.project-insanity.org/blog/2014/01/24/wandboard-with-hdmi-cec-and-xbmc/ and it is working when I start XBMC or cec-client AFTER I've started the TV till the next TV restart.

wolfgar commented 10 years ago

It is reminiscent of a report I have read : I will try to reproduce this issue and tell you Can you confirm you really use the latest version I have just forked in this account : https://github.com/xbmc-imx6/libcec ?

rkorn86 commented 10 years ago

Ive just forked the new account and still have the same reproducable error:

root@wandboard:~ # cec-client 
No device type given. Using 'recording device'
CEC Parser created - libCEC version 2.1.4
no serial port given. trying autodetect: 
 path:     /dev/mxc_hdmi_cec
 com port: i.MX

opening a connection to the CEC adapter...
DEBUG:   [              43]     unregistering all CEC clients
DEBUG:   [              43]     Broadcast (F): osd name set to 'Broadcast'
NOTICE:  [              44]     connection opened
DEBUG:   [              44]     << Broadcast (F) -> TV (0): POLL
DEBUG:   [              44]     processor thread started
TRAFFIC: [              44]     << f0
DEBUG:   [             105]     >> POLL sent
DEBUG:   [             105]     TV (0): device status changed into 'present'
DEBUG:   [             105]     << requesting vendor ID of 'TV' (0)
TRAFFIC: [             105]     << f0:8c
TRAFFIC: [             315]     >> 0f:87:00:00:f0
DEBUG:   [             315]     >> TV (0) -> Broadcast (F): device vendor id (87)
DEBUG:   [             315]     TV (0): vendor = Samsung (0000f0)
DEBUG:   [             315]     expected response received (87: device vendor id)
DEBUG:   [             315]     replacing the command handler for device 'TV' (0)
NOTICE:  [             316]     registering new CEC client - v2.1.4
DEBUG:   [             316]     detecting logical address for type 'recording device'
DEBUG:   [             316]     trying logical address 'Recorder 1'
DEBUG:   [             316]     << Recorder 1 (1) -> Recorder 1 (1): POLL
TRAFFIC: [             316]     << 11
ERROR:   [             365]     Write: sent command error !
TRAFFIC: [             365]     << 11
ERROR:   [             405]     Write: sent command error !
DEBUG:   [             405]     >> POLL not sent
DEBUG:   [             405]     using logical address 'Recorder 1'
DEBUG:   [             405]     Recorder 1 (1): device status changed into 'handled by libCEC'
DEBUG:   [             405]     Recorder 1 (1): power status changed from 'unknown' to 'on'
DEBUG:   [             405]     Recorder 1 (1): vendor = Pulse Eight (001582)
DEBUG:   [             405]     Recorder 1 (1): CEC version 1.4
DEBUG:   [             405]     AllocateLogicalAddresses - device '0', type 'recording device', LA '1'
DEBUG:   [             406]     Recorder 1 (1): osd name set to 'CECTester'
DEBUG:   [             406]     Recorder 1 (1): menu language set to 'eng'
DEBUG:   [             406]     SetDevicePhysicalAddress - not setting invalid physical address 0001
NOTICE:  [             406]     setting HDMI port to 1 on device TV (0)
DEBUG:   [             406]     Recorder 1 (1): physical address changed from ffff to 1000
DEBUG:   [             406]     << Recorder 1 (1) -> broadcast (F): physical adddress 1000
TRAFFIC: [             406]     << 1f:84:10:00:01
NOTICE:  [             545]     CEC client registered: libCEC version = 2.1.4, client version = 2.1.4, firmware version = 0, logical address(es) = Recorder 1 (1) , base device: TV (0), HDMI port number: 1, physical address: 1.0.0.0, host: armv7l-unknown-linux-gnueabihf, features: 'P8 USB' 'P8 USB detect' 'i.MX6', git revision: ea25675, compiled on: Wed Mar 12 21:52:31 UTC 2014 by root@wandboard.home on Linux 3.0.35_4.1.0-5-ARCH+ (armv7l)
DEBUG:   [             545]     << Recorder 1 (1) -> TV (0): OSD name 'CECTester'
TRAFFIC: [             545]     << 10:47:43:45:43:54:65:73:74:65:72
DEBUG:   [             835]     << requesting power status of 'TV' (0)
TRAFFIC: [             835]     << 10:8f
TRAFFIC: [             995]     >> 01:90:01
DEBUG:   [             995]     >> TV (0) -> Recorder 1 (1): report power status (90)
DEBUG:   [             995]     TV (0): power status changed from 'unknown' to 'standby'
DEBUG:   [             995]     expected response received (90: report power status)
waiting for input
pow 0
power status: standby
on 0
NOTICE:  [            8158]     << powering on 'TV' (0)
TRAFFIC: [            8158]     << 10:04
DEBUG:   [            8225]     TV (0): power status changed from 'standby' to 'in transition from standby to on'
pow 0
DEBUG:   [           21700]     << requesting power status of 'TV' (0)
TRAFFIC: [           21700]     << 10:8f
pow 0
^Csignal caught: 2 - exiting

cec-client is not responding anymore. Just a sigkill helps.

Restarting TV while cec-client is waiting for commands results in the same.

EDIT: while cec is loosing signal dmesg shows this output several times:

mxc_hdmi mxc_hdmi: same edid
wolfgar commented 10 years ago

Hmm ok... Thanks for your rapid feedback My first guess is the issue is in the driver. If you compile it as a module, you could try to rmmod it and modprobe it after the TV OFF/ON... If it helps it means that we have to force an new initilization when TV is back

rkorn86 commented 10 years ago

Do you mean the "cdc-acm" module? lsmod is not showing anything releated to cec. Which module do you mean, I should rmmod?

wolfgar commented 10 years ago

No I mean "mxc_hdmi-cec", When I say "if you compile it as a module", I mean you would have to change kernel configuration to build this driver as a module and rebuild kernel + module

rkorn86 commented 10 years ago

Ok, after some trouble with my wandboard ive managed to recompile kernel with mxc_hdmi-cec as module. The problem now is, that I cannot rmmod mxc_hdmi-cec, as it used by 2, while running cec-client

# lsmod 
Module                  Size  Used by
mxc_hdmi_cec            5602  2 

killing cec-client lets me rmmod mxc_hdmi_cec, but thats unneeded, as restarting cec-client already brings me the CECTester device back.

forcing rmmod brings the following error:

[  180.943726] HDMI CEC initialized
[  301.184906] mxc_hdmi mxc_hdmi: same edid
[  304.895913] mxc_hdmi mxc_hdmi: same edid
[  307.875951] mxc_hdmi mxc_hdmi: same edid
[  310.474919] mxc_hdmi mxc_hdmi: same edid
[  637.965828] mxc_hdmi mxc_hdmi: same edid
[  643.745815] mxc_hdmi mxc_hdmi: same edid
[  646.714874] mxc_hdmi mxc_hdmi: same edid
[  649.335881] mxc_hdmi mxc_hdmi: same edid
[  709.275733] Disabling lock debugging due to kernel taint
[  711.406393] Unable to handle kernel paging request at virtual address bf147ea0
[  711.406583] pgd = e48cc000
[  711.406673] [bf147ea0] *pgd=39bab811, *pte=00000000, *ppte=00000000
[  711.406839] Internal error: Oops: 7 [#1] PREEMPT SMP
[  711.406961] Modules linked in: bridge stp llc ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack iptable_filter iptable_mangle ip_tables x_tables tun btsdio bluetooth brcmfmac brcmutil cfg80211 ftdi_sio rfkill usbserial autofs4 [last unloaded: mxc_hdmi_cec]
[  711.407648] CPU: 3    Tainted: G  R          (3.0.35_4.1.0-6-ARCH+ #1)
[  711.407809] PC is at do_select+0x260/0x46c
[  711.407925] LR is at fget_light+0xe8/0x100
[  711.408027] pc : [<c01121fc>]    lr : [<c01037ec>]    psr: a00f0013
[  711.408033] sp : e9bcdb28  ip : e9bcdb08  fp : e9bcde14
[  711.408295] r10: e9bcdf68  r9 : 00000003  r8 : 00000000
[  711.408420] r7 : 00000008  r6 : 00000000  r5 : 00000000  r4 : e9bcde18
[  711.408575] r3 : 00000000  r2 : e41d2280  r1 : bf147e84  r0 : e41d2280
[  711.408730] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[  711.408901] Control: 10c5387d  Table: 348cc04a  DAC: 00000015
[  711.409041] Process cec-client (pid: 1025, stack limit = 0xe9bcc2f0)
[  711.409193] Stack: (0xe9bcdb28 to 0xe9bce000)
[  711.409302] db20:                   00000104 00000000 00000008 e9bcde44 e9bcde40 e9bcde3c
[  711.409498] db40: e9bcde38 e9bcde34 e9bcde30 00000020 004c4b3c 00000000 00000000 00000008
[  711.409694] db60: 00000001 e9bcdb80 00000000 00000000 00000001 00000004 00000000 00000001
[  711.409889] db80: 9550d5e6 000000a5 00000000 c0111a8c 000000db 00000000 e9fbf660 00000000
[  711.410084] dba0: 00000000 00000001 e41d2280 000000db 00000000 e9bcdb8c c0111d1c bf148294
[  711.410281] dbc0: bf148294 bf14828c 5abf1598 0000006a 00000000 00000000 e9be8a58 e4216ad8
[  711.410477] dbe0: 0000008c e9bcdbe4 e9bcdbe4 e9bcdbec e9bcdbec 00000000 00000000 00000000
[  711.410676] dc00: 00000000 00000000 00000000 00000000 00000020 00000000 ffffffff 00000000
[  711.410874] dc20: 00000000 00800000 00000000 000003d1 0000014f e42169e0 e42169e0 e9bcdc3c
[  711.411072] dc40: e9bcdc3c e9bcdc44 e9bcdc44 e41dee20 e9bcdc50 e9bcdc50 e9bcdc58 e9bcdc58
[  711.411268] dc60: 00000740 cc672060 c0719c80 c0719c88 e9bcdc8c e9bcdc80 c0508428 c0508388
[  711.411465] dc80: e9bcdcb4 e9bcdc90 000200da 00000000 e9bcdcb4 e9bcdca0 c00cddc0 c00cd6c4
[  711.411660] dca0: 00000041 0003b9b2 e9bcdd2c e9bcdcb8 c00cf4b8 c00cdda4 00000041 e9bcc018
[  711.411855] dcc0: 0c7ec000 c06f01e0 ffffffff e9bcdcd8 c004e1cc 00000002 00000000 00000000
[  711.412052] dce0: e9fccc00 e9fccc00 e9bcdd7c e9bcdcf8 c00fe14c c00bb900 00000041 c06f0580
[  711.412248] dd00: ccf185a0 cc44cb40 e9fccc00 e9fccc00 e9bcdd54 e9bcdd20 c00fb194 c00fa480
[  711.412445] dd20: e9bcdd3c e9bcdd30 c0508428 ccf185a0 e9bcc000 e9fccc00 00000001 cc44cb40
[  711.412640] dd40: c06c3aac e48cd080 e9bcdd7c e9bcdd58 c00fb76c c00fb180 00000000 0000f0e3
[  711.412836] dd60: e9bcdd8c e9bcdd70 c0065b24 c00bb900 0000f0e3 00000000 e9fabae0 00000000
[  711.413031] dd80: 00000002 c934f43e 00000002 cc827398 e9bcddc4 e9bcdda0 c0066dfc c02857cc
[  711.413226] dda0: c821833d 00000002 00000005 00000094 cc827370 e9fbf698 e9fabad8 e9fbf660
[  711.413423] ddc0: cc827320 00000002 e9fbf698 e9fabad8 e9bcde04 e9bcdde0 c0068580 c0067524
[  711.413617] dde0: cc827320 e9fbf660 c050e440 00000004 e9bcde30 00000004 40d39c88 00000000
[  711.413814] de00: 00000000 e9bcc018 e9bcdf5c e9bcde18 c011260c c0111fa8 e9bcde30 e9bcde34
[  711.414009] de20: e9bcde38 e9bcde3c e9bcde40 e9bcde44 00000008 00000000 00000000 00000000
[  711.414203] de40: 00000000 00000000 c0069318 c00683e8 e9fabaa0 00000003 e9bcde9c e9bcde68
[  711.414401] de60: c006b594 c0507cd4 c00ec0bc 600f0013 80000000 e9fabaa0 e9fabaa8 e4a2be68
[  711.414596] de80: c0714fb8 c0714b10 00020f4c 00000000 e9bcdeac e9bcdea0 c006bb0c c006b2bc
[  711.414793] dea0: e9bcdecc e9bcdeb0 c009e520 c006bb04 00000001 c0714b04 00000000 c0714b04
[  711.414992] dec0: e9bcdf4c e9bcded0 c00a0a70 c009ed50 e9bcdf30 e9bcdef8 00000005 000002c2
[  711.415191] dee0: e9bcdf1c e9bcdef0 c0079230 c0078a54 000002c2 0a69cfe6 000002c7 0a69cfe6
[  711.415387] df00: e9bcdf68 00000000 e9bcdf30 00000005 e9bcdf5c e9bcdf28 c0111f7c c00791f4
[  711.423304] df20: c0111f68 00000005 00000000 00000000 000002c7 40d39d08 00000000 00000000
[  711.431131] df40: 40d39c88 00000004 00000000 00000005 e9bcdfa4 e9bcdf60 c01127d8 c0112414
[  711.439165] df60: e9bcdf68 00000001 000002c7 0a69cfe6 00000005 00000000 00000008 40d39d08
[  711.447052] df80: 00000000 be952488 0000008e c0041704 e9bcc000 00000000 00000000 e9bcdfa8
[  711.454629] dfa0: c0041580 c0112708 40d39d08 00000000 00000004 40d39c88 00000000 00000000
[  711.462273] dfc0: 40d39d08 00000000 be952488 0000008e 00023dd8 be952488 00000000 40d39d44
[  711.469885] dfe0: 00000000 40d39c60 40371848 40371858 800f0010 00000004 00000000 00000000
[  711.477278] Backtrace: 
[  711.484718] [<c0111f9c>] (do_select+0x0/0x46c) from [<c011260c>] (core_sys_select+0x204/0x2f4)
[  711.492409] [<c0112408>] (core_sys_select+0x0/0x2f4) from [<c01127d8>] (sys_select+0xdc/0x10c)
[  711.492425] [<c01126fc>] (sys_select+0x0/0x10c) from [<c0041580>] (ret_fast_syscall+0x0/0x30)
[  711.492440] Code: 0a00003e e5921010 e3510000 0a000018 (e591001c) 
[  711.492533] ---[ end trace 23c02a7ac3fdbb78 ]---
[  770.847708] Unable to handle kernel paging request at virtual address bf147534
[  770.856226] pgd = e48cc000
[  770.864600] [bf147534] *pgd=39bab811, *pte=00000000, *ppte=00000000
[  770.873029] Internal error: Oops: 80000007 [#2] PREEMPT SMP
[  770.881364] Modules linked in: bridge stp llc ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack iptable_filter iptable_mangle ip_tables x_tables tun btsdio bluetooth brcmfmac brcmutil cfg80211 ftdi_sio rfkill usbserial autofs4 [last unloaded: mxc_hdmi_cec]
[  770.890418] CPU: 1    Tainted: G  R   D      (3.0.35_4.1.0-6-ARCH+ #1)
[  770.890432] PC is at 0xbf147534
[  770.890445] LR is at __schedule+0x598/0x754
[  770.890455] pc : [<bf147534>]    lr : [<c0505b94>]    psr: 60070013
[  770.890460] sp : e41adef0  ip : e41ade30  fp : e41adf3c
[  770.890468] r10: 00000000  r9 : 00000002  r8 : e41ac000
[  770.890476] r7 : 00000002  r6 : e41adef3  r5 : bf148204  r4 : 00000002
[  770.890485] r3 : 00000001  r2 : 00000000  r1 : 00000000  r0 : e41ac030
[  770.890496] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[  770.890505] Control: 10c5387d  Table: 348cc04a  DAC: 00000015
[  770.890515] Process cec-client (pid: 1024, stack limit = 0xe41ac2f0)
[  770.890524] Stack: (0xe41adef0 to 0xe41ae000)
[  770.890533] dee0:                                     10000000 0000008f 00000000 00000000
[  770.890547] df00: 00000000 00000000 e4082520 c008e7ac bf148284 bf148284 e41d2280 be9522dc
[  770.890560] df20: e41d2280 e41ac000 e41adf78 e41ac000 e41adf6c e41adf40 c0101ee8 bf147384
[  770.890573] df40: e41adf6c e41adf50 00000000 00000000 e41d2280 be9522dc 00000002 e41ac000
[  770.890586] df60: e41adfa4 e41adf70 c0102298 c0101e40 c0041704 00000001 00000000 00000000
[  770.890599] df80: 00000000 00000000 00000000 00020e38 00000004 c0041704 00000000 e41adfa8
[  770.890611] dfa0: c0041580 c0102264 00000000 00000000 00000003 be9522dc 00000002 00000002
[  770.890623] dfc0: 00000000 00000000 00020e38 00000004 00000000 00000000 40034fb4 be9522ac
[  770.890636] dfe0: 00000000 be9521e8 40078cb4 40078cc4 800f0010 00000003 00000000 00000000
[  770.890643] Backtrace: 
[  770.890652] Backtrace aborted due to bad frame pointer <e41adf3c>
[  770.890661] Code: bad PC value
[  770.890685] ---[ end trace 23c02a7ac3fdbb79 ]---
[  776.506336] Unable to handle kernel paging request at virtual address bf147eb4
[  776.514826] pgd = c0004000
[  776.522992] [bf147eb4] *pgd=39bab811, *pte=00000000, *ppte=00000000
[  776.531388] Internal error: Oops: 7 [#3] PREEMPT SMP
[  776.539721] Modules linked in: bridge stp llc ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_conntrack iptable_filter iptable_mangle ip_tables x_tables tun btsdio bluetooth brcmfmac brcmutil cfg80211 ftdi_sio rfkill usbserial autofs4 [last unloaded: mxc_hdmi_cec]
[  776.557802] CPU: 3    Tainted: G  R   D      (3.0.35_4.1.0-6-ARCH+ #1)
[  776.566835] PC is at filp_close+0x38/0x84
[  776.575661] LR is at put_files_struct+0x9c/0xf4
[  776.584448] pc : [<c01000c0>]    lr : [<c0077200>]    psr: a00f0013
[  776.584453] sp : e4a2bdb0  ip : e4a2bdd0  fp : e4a2bdcc
[  776.602326] r10: 000001be  r9 : 00000000  r8 : 0000000c
[  776.611040] r7 : e443f9c0  r6 : e9fd4e60  r5 : bf147e84  r4 : e41d2280
[  776.619940] r3 : e484d00c  r2 : 00000000  r1 : e9fd4e60  r0 : e41d2280
[  776.628765] Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
[  776.637631] Control: 10c5387d  Table: 348cc04a  DAC: 00000015
[  776.646465] Process cec-client (pid: 1026, stack limit = 0xe4a2a2f0)
[  776.655312] Stack: (0xe4a2bdb0 to 0xe4a2c000)
[  776.664126] bda0:                                     e484d00c e9fd4e60 00000000 00000001
[  776.673046] bdc0: e4a2bdf4 e4a2bdd0 c0077200 c0100094 e9fabaa0 e9fd4e60 e9fabdd0 e4a2a018
[  776.681998] bde0: 0000000f e40032e0 e4a2be14 e4a2bdf8 c00772e0 c0077170 e40c5a2c e9fabaa0
[  776.690845] be00: e99146c0 00000001 e4a2be4c e4a2be18 c0077a68 c00772ac c0080cf8 c00809d4
[  776.699811] be20: 000001aa e9fabaa0 e4a2be6c e4a2be38 c00814f0 c0080ce4 e4a2bee8 e41f1a84
[  776.699825] be40: e4a2be6c e4a2be50 c0077f74 c007783c 00000009 e4a2bee8 e4a2a030 e41f1a84
[  776.699839] be60: e4a2beac e4a2be70 c00832c4 c0077f24 00000008 e4a2bed4 e4a2bfb0 e41f1580
[  776.699852] be80: c0715528 e4a2bfb0 e4a2a030 fffffe00 400787d8 00000000 00000000 c0041704
[  776.699866] bea0: e4a2bf94 e4a2beb0 c00440e0 c0082f20 00000000 00000080 00020eec 00020eec
[  776.699879] bec0: 400787d4 e4a2bed0 c00a0444 c009f000 ffffffff c0093080 e4a2bef4 e4a2bee8
[  776.699891] bee0: c02d1b60 c02d1aac 00000009 00000000 00000000 00000000 00000000 00000000
[  776.699904] bf00: e4a2a038 00000000 00000000 00000000 43ab7744 e9961f28 00000002 0000001b
[  776.699916] bf20: e9fabaa0 00000002 00000080 00000000 00000000 00000080 00000002 00020eec
[  776.699929] bf40: e4a2bfa4 e4a2bf50 c00a0dbc c00a0378 00000002 00000000 ffffffff c0043dd0
[  776.699942] bf60: 00000000 00000000 c01022b8 00000001 00000080 be9524d8 000000f0 00000000
[  776.699954] bf80: e4a2a000 00000000 e4a2bfac e4a2bf98 c0044854 c0044024 00000001 00000002
[  776.699967] bfa0: 00000000 e4a2bfb0 c00415d8 c0044840 00020eec 00000080 00000002 00000000
[  776.699980] bfc0: 00000002 00000080 be9524d8 000000f0 00020ee0 be9524d8 00000000 415ffd24
[  776.699994] bfe0: 00020eec 415ffcfc 40073538 400787d4 200f0010 00020eec 00000000 00000000
[  776.700001] Backtrace: 
[  776.700023] [<c0100088>] (filp_close+0x0/0x84) from [<c0077200>] (put_files_struct+0x9c/0xf4)
[  776.700032]  r6:00000001 r5:00000000 r4:e9fd4e60 r3:e484d00c
[  776.700051] [<c0077164>] (put_files_struct+0x0/0xf4) from [<c00772e0>] (exit_files+0x40/0x44)
[  776.700059]  r9:e40032e0 r8:0000000f r7:e4a2a018 r6:e9fabdd0 r5:e9fd4e60
[  776.700073] r4:e9fabaa0
[  776.700085] [<c00772a0>] (exit_files+0x0/0x44) from [<c0077a68>] (do_exit+0x238/0x6ac)
[  776.700093]  r6:00000001 r5:e99146c0 r4:e9fabaa0 r3:e40c5a2c
[  776.700112] [<c0077830>] (do_exit+0x0/0x6ac) from [<c0077f74>] (do_group_exit+0x5c/0xc4)
[  776.700120]  r7:e41f1a84
[  776.700142] [<c0077f18>] (do_group_exit+0x0/0xc4) from [<c00832c4>] (get_signal_to_deliver+0x3b0/0x3f0)
[  776.700150]  r7:e41f1a84 r6:e4a2a030 r5:e4a2bee8 r4:00000009
[  776.700177] [<c0082f14>] (get_signal_to_deliver+0x0/0x3f0) from [<c00440e0>] (do_signal+0xc8/0x540)
[  776.700191] [<c0044018>] (do_signal+0x0/0x540) from [<c0044854>] (do_notify_resume+0x20/0x58)
[  776.700209] [<c0044834>] (do_notify_resume+0x0/0x58) from [<c00415d8>] (work_pending+0x24/0x28)
[  776.700217]  r4:00000002 r3:00000001
[  776.700229] Code: ea000012 e5905010 e3550000 0a000004 (e5955030) 
[  776.700345] ---[ end trace 23c02a7ac3fdbb7a ]---
[  776.700356] Fixing recursive fault but reboot is needed!

PS: a co-worker has absolutely the same problem with is utilite (we both have a Samsung TV, if that matters)

wolfgar commented 10 years ago

OK, sorry I may have missed an important point in your issue report : You mean that only restarting the cec-client was enough to recover a normal behavior after your TV off/on cycle ?

rkorn86 commented 10 years ago

Yep. Restarting xbmc also helps for the xbmc CEC part.

wolfgar commented 10 years ago

OK ! If so, I think I have an idea about the underlying issue : it may be a problem with address discovery at TV restart... I will have a look at this specific part and report

rkorn86 commented 10 years ago

Is there anything I could do, to help solving this issue?

wolfgar commented 10 years ago

Hi,

I have checked the code and I really think my guess about the address discovery to be replayed on TV plug/poweron is an interesting path... Unfortunately, I have not yet tried to implement it to confirm it solves the issue : Sorry time is a sparse resource...

Ohmegas commented 10 years ago

Please see this. The original ticket seem to be lost, but here is a relevant thread: https://github.com/Pulse-Eight/libcec/issues/9

wolfgar commented 10 years ago

The relevant code is in our branch as we are in sync with Gotham beta 3 at this time.. Unfortunately, I have to add a piece of code in the imx implementation and I am ashamed because I have not found the time to get committed to this task. But I have not forgotten and will do it as soon as possible ...

wolfgar commented 10 years ago

This week I worked to improve CEC Especially the driver has been improved (settled blocking cases, issue with cec clock solved, detection of HPD etc), a few improvements of libcec have also been merged (especially issue with physical address) Unfortunately, this issue is still there I fear and I am not so clear about its root cause at the moment...

wolfgar commented 10 years ago

A last update : In fact everything works fine : I wrote the above message after a test which failed but I made a error during it. Please merge urgently this kernel patch https://github.com/wolfgar/utilite/commit/5403341d8e35384a4efb4c5a6a00d023c6b668b6 and everything will be fine

wolfgar commented 10 years ago

Issue solved, Check this comment for required patches...