Hi,
I do have a H96 Pro+ board with 2/16GB, green PCB, CZ-S32-V2.2.
I have CoreELEC 8.95.2 on the SD card. The system is up and running!
But now I will take a look to the standby of the box.
First I enabled the standby mode in the “sleep.conf”.
The box is going to standby but I can only wake it up with the original remote - not by CEC or USB.
This I found out with the original Android ROM:
[ 202.433276@6] remote: back_usrcode = fe01,mouse shitch FN_KEY_SCANCODE = 0
[ 202.434571@6] remote: OK_KEY_SCANCODE = 13
[ 202.439040@6] remote: press ircode = 0x40,
[ 202.442508@0] remote: scancode = 0x0074,maptable = 4,code:0xbf40fe01
[ 202.444847@0]
[ 202.678377@0] remote: release ircode = 0x40,
[ 202.678524@0] remote: scancode = 0x0074, maptable = 4,code:0x00000000
[ 202.679230@0]
[ 203.277753@7] request_suspend_state: sleep (0->3) at 203179605928 (2015-01-01 00:03:26.038306428 UTC)
[ 203.281347@7] request_suspend_state,164,old_sleep=0,new_state=3
[ 203.287250@6] early_suspend: call handlers
[ 203.318173@6] avmute set to 2
[ 203.418533@3] hdmitx: system: HDMITX: early suspend
[ 203.418588@3] hdmitx: system: unmux DDC for gpio read edid
[ 203.423704@3]
[ 203.423704@3] vdac_enable: on:0,module_sel:8
[ 203.429219@3] fb: osd_suspended
[ 203.432186@3] remote: remote_early_suspend, set sleep 1
[ 203.437361@3] gxbb_pm: meson_system_early_suspend
[ 203.442030@3] sysled: edwin–> led_gpio_set val = 1
[ 203.446952@3] DEBUG:usb_early_suspend:: DWC_OTG: going early suspend! is_mount=0
[ 203.446952@3]
[ 203.455913@3] early_suspend: sync
[ 203.498015@3] suspend: exit suspend, ret = -22 (2015-01-01 00:03:26.258594928 UTC)
[ 208.548940@6] suspend: exit suspend, ret = -22 (2015-01-01 00:03:31.309510388 UTC)
[ 213.597058@6] suspend: exit suspend, ret = -22 (2015-01-01 00:03:36.357627516 UTC)
[ 218.646896@6] suspend: exit suspend, ret = -22 (2015-01-01 00:03:41.407464810 UTC)
[ 223.696949@6] suspend: exit suspend, ret = -22 (2015-01-01 00:03:46.457517937 UTC)
[ 228.747247@6] suspend: exit suspend, ret = -22 (2015-01-01 00:03:51.507817023 UTC)
The box is in standby and I can meassure 5V on the USB ports. So a wakeup on USB is working:
[ 230.632315@7] request_suspend_state: wakeup (3->0) at 230534169775 (2015-01-01 00:03:53.392869732 UTC)
[ 230.635988@7] request_suspend_state,164,old_sleep=1,new_state=0
[ 230.641921@4] late_resume: call handlers
[ 230.645748@4] DEBUG:usb_early_resume:: DWC_OTG: going early resume
[ 230.645748@4]
[ 230.653760@7] gxbb_pm: meson_system_late_resume
[ 230.658348@4] sysled: edwin–> led_gpio_set val = 0
[ 230.662950@4] fb: osd_resumed
[ 230.666112@4] tv_vout: tv_set_current_vmode[759]fps_target_mode=16
[ 230.672471@4] tv_vout: mode is 16,sync_duration_den=1,sync_duration_num=60
[ 230.678996@2] tv_vout: TV mode 1080p60hz selected.
[ 230.683549@2]
[ 230.683549@2] vdac_enable: on:0,module_sel:8
[ 230.689577@2]
[ 230.689577@2] vdac_enable: on:0,module_sel:8
[ 230.695292@2] tv_vout: new mode =1080p60hz set ok
[ 230.699904@2] hdmitx: set clk: VIC = 512 cd = 4
[ 230.704461@2] config HPLL = 3450000
[ 230.707922@2] HPLL: 0xc000028f
[ 230.710953@2] config HPLL done
[ 230.713964@2] set_hpll_od3_clk_div[441] div = 6
[ 230.713973@2] j = 9 vid_clk_div = 1
[ 230.796467@2] hdmitx: edid: check sum valid
[ 230.796500@2] hdmitx: edid: blk0 raw data
[ 230.799035@2] 00ffffffffffff0030ae4f11010101012a13010380251e782af7c1a3554c9b25
[ 230.799035@2] 125054bdef00714f8190010101010101010101010101302a009851002a403070
[ 230.799035@2] 1300782d1100001e000000ff00563154393932340a2020202020000000fd0038
[ 230.799035@2] 4c1e510e000a202020202020000000fc004c454e204c3139303070410a2000df
[ 230.799035@2]
[ 230.799035@2]
[ 230.830935@2] EDID Parser:
[ 230.833613@2] EDID BlockCount=0
[ 230.836682@2] hdmitx: edid: HDMI: set default vic
[ 230.841363@2] hdmitx: edid: edid blk0 checksum:0 ext_flag:0
[ 230.846883@2] hdmitx: video: get current mode: 1080p60hz
[ 230.852134@2] hdmitx: update rx hdr info 0
[ 230.856189@2] hdmitx: get ext_name 1080p60hz
[ 230.860438@2] hdmitx: system: already init VIC = 0 Now VIC = 16
[ 230.866353@2] hdmitx: rx edid only support RGB format
[ 230.871366@2] hdmitx: rx no SCDC present indicator
[ 230.880116@2] hdmirx version is 1.4 or below
[ 230.880325@2] hdmitx div40: 0
[ 230.908140@2] hdmitx: system: set mode VIC 16 (cd0,cs0,pm1,vd0,1)
[ 230.908581@2] hdmitx: system: set pll
[ 230.912203@2] hdmitx: system: param->VIC:16
[ 230.916343@2] hdmitx: set clk: VIC = 16 cd = 4
[ 230.926861@2] config HPLL = 2970000
[ 230.926894@2] HPLL: 0xc000027b
[ 230.927736@2] config HPLL done
[ 230.930769@2] set_hpll_od3_clk_div[441] div = 6
[ 230.935246@2] j = 4 vid_clk_div = 1
[ 230.938799@2] hdmitx: set enc for VIC: 16
[ 230.942758@2] hdmitx_set_hw[5011] set VIC = 16
[ 230.947329@0] hdmitx: system: irq 80000001
[ 230.951239@0] Start = 0x10000100 End = 0x100001ff
[ 230.956034@0] [0x10000104]: 0x00000001
[ 230.959945@0] [0x10000180]: 0x000000ff
[ 230.963446@0] [0x10000181]: 0x000000ff
[ 230.967154@0] [0x10000182]: 0x00000003
[ 230.970881@0] [0x10000183]: 0x00000007
[ 230.974572@0] [0x10000184]: 0x0000003f
[ 230.978315@0] [0x10000185]: 0x00000002
[ 230.981991@0] [0x10000187]: 0x000000ff
[ 230.985698@0] [0x10000188]: 0x00000003
[ 231.070146@2] hdmitx: system: phy setting done
[ 231.074174@2] Sink is DVI device
[ 231.074223@2] hdmitx: system: packet: can’t get vendor data
[ 231.077658@2] hdmtix: set audio
[ 231.080802@2] hdmitx tx_aud_src = 0
[ 231.084235@2] hdmitx: fs = 3, cd = 4, tmds_clk = 148500
[ 231.089395@2] hdmitx aud_n_para = 6144
[ 231.093111@2] hdmitx set channel status
[ 231.096947@2] hdmitx: audio: Audio Type: PCM
[ 231.105998@2] amhdmitx: late resume module 204
[ 231.106082@2] hdmitx: swrstzreq
[ 231.106532@4] avmute set to 2
[ 231.107141@4] vout_serve: vmode set to 1080p60hz
[ 231.107159@4] vout_serve: don’t set the same mode as current
[ 231.121756@4] fb: osd[0] enable: 1 (systemcontrol)
[ 231.121758@2] hdmitx: system: late resume
[ 231.121760@2] late_resume: done
[ 231.154770@4] vout_serve: osd0=> x:0,y:0,w:1920,h:1080
[ 231.154770@4] osd1=> x:0,y:0,w:18,h:18
[ 231.157991@4] fb: current vmode=1080p60hz
[ 231.171401@4] fb: osd[1] set scale, h_scale: ENABLE, v_scale: ENABLE
[ 231.172114@4] fb: osd[1].scaledata: 1920 1920 1080 1080
[ 231.177286@4] fb: osd[1].pandata: 0 0 0 0
[ 231.188019@4] avmute set to 1
On CoreELEC I send to standby:
bl30 get wakeup sources!
process command 00000006
bl30 enter suspend!
cpu clk suspend rate 1200000000
suspend_counter: 1
Enter ddr suspend
first time suspend
ddr suspend time: 1885us
store restore gp0 pll
process command 00000001
CEC cfg:0x0000
set vddee to 0x035cmv
089
The USB power got switched off (~1,1V) so wakeup by USB isn’t possible. Also CEC wakeup isn’t possible because the CEC device isn’t in the list on the TV. So I use the original remote to power up from standby:
exit_reason:0x02
set vddee to 0x03e8mv
set vdd_cpu a to 0x0460mv
set vdd_cpu a to 0x041amv
store restore gp0 pll
gp0 pll can’t lock
read gp0_ctrl 40000000
read gp0_ctrl2 0
read gp0_ctrl3 0
read gp0_ctrl4 0
Enter ddr resume
ddr resume time: 360us
cfg15 3b00000
cfg15 23b00000
cpu clk resume rate 1000000000
The box is resuming and working normaly. So something is wrong in standby mode.
It looks more than a hibernate because all of the hardware is switched off.
So my question is about how to fix the resume to be possible through USB or CEC!?
I am able to do hardware and software modification.
Please give me a hint where I have to start to fix this problem.