On 04/01/2016 12:03 AM, Tomi Valkeinen wrote: > On 01/04/16 03:46, Hans Verkuil wrote: > >>> Apparently we set it always to 0 in >>> hdmi4_core.c:hdmi_core_powerdown_disable(), but never enable it. I guess >>> it only affects core irqs, so there have been no side effects. >>> >>> But it would make sense to either have a matching call in the enable >>> path, or then just set it to 0 when initializing the IP. >> >> I think it should be set in hdmi_core_video_config(). It sets other >> SYS_CTRL1 bits there as >> well, and that is probably why I missed it. I just never realized that >> the PD bit wasn't set >> there. > > Hmm. Well, it's "power-down". It's quite unclear what it actually does, > but from the name of it, I think it makes sense to set it only when HDMI > core is enabled. > > In hdmi4.c, there are hdmi_power_on_core() and hdmi_power_off_core() > functions, those might be good places to handle the bit. > > Ehh... Actually, looking at the code more carefully... > > hdmi_core_powerdown_disable() is called from hdmi4_configure() when > setting everything up, and there's a comment "power down off". So > apparently the intention of the code is to disable power-down mode, but > it sets the bit to a wrong state. > > So probably we could just fix hdmi_core_powerdown_disable(), so that it > sets PD to 1, which is what it was meant to do. This assumes that there > are no bad side effects having PD 1 even if the HDMI is blanked, which > is something we need to verify. I can do a few tests with that.
Sounds good. BTW, I got confused yesterday by the name 'powerdown_disable()'. How about calling it 'powerup()'? :-) Regards, Hans