Announcement

Collapse
No announcement yet.

ADV7611 Linux Driver for IMX6Q

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • robertferanec
    replied
    Honestly I have no idea. I am the hardware guy. We very often design HW and build the SW which is able to test it. We usually do not work on further SW development

    Leave a comment:


  • ranaya
    replied
    Hi, finally solved the issue. The workaround was some DTB changes. I figured out that for the IPU1_CSI0, the pin mux configuration values should be different (1b0b0) as their register bit arrangement (so properties) is different to IPU2_CSI1. Btw have you ever got interlace hdmi input modes captured with this ? Now I am working on that, I was wondering whether by changing only the EDID settings we would be able to do that, wouldn't we ?

    Thanks
    Anuradha

    Leave a comment:


  • robertferanec
    replied
    This is answer from the friend of mine. It was long time ago, so I hope at least this can help:
    RE the error: I don't know the exact solution to the problem, but you can find the working driver here: https://github.com/OpenSolo/imx6-lin...ture/adv7610.c

    Leave a comment:


  • ranaya
    replied
    Thanks, awaiting your response too. If it was added as a commit then would be easier to find it in git repo. Do you remember you've done something like that ?

    Btw I saw the structure of mxc_v4l2_capture.c of Rex kernel is bit different to the one I am work on (it's from boudnary devices). I did some modifications to the file according to Rex, but the errors seems to be appearing ! Was that a HW change you guys did to overcome the issue ?

    Anuradha

    Leave a comment:


  • robertferanec
    replied
    I asked him for help. However, he is very busy and because it was some time ago, even he may not remember exactly what the solution was. Let's see ..

    Leave a comment:


  • ranaya
    replied
    Hi Robert, I ran into the same mxc_v4l_dqueue timeout enc_counter 0, when trying this with an IMX6 custom board, but utilizing IPU1_CSI0 interface. That's the only difference I see between OpenRex (IPU2CSI1) board and this custom (IPU1_CSI0) one. If you do not mind can you kindly point me the person who solved this issue for you ?

    Anuradha

    Leave a comment:


  • robertferanec
    replied
    This is AWESOME!!! Thanks for letting us know.

    Leave a comment:


  • ranaya
    replied
    Hi Robert, I managed to get the hdmi encoder to work. It works well for 720p and 1080p. The issue was in my EMI chip connections. Assuming it to be a pass through IC I hadn't routed the connections between each TMDS IN and OUT differential signal. So that encoder cannot lock-in to the TMDS clock and hence reporting "DE Regeneration Issue". Now it works. You can make this thread "SOLVED" Thanks for the support !!!

    Anuradha

    Leave a comment:


  • robertferanec
    replied
    1. That is the schematic which is on the website (I believe you have this one): http://www.imx6rex.com/wp-content/up...-Schematic.pdf

    2. You can find all information about the TinyRex baseboard on the iMX6 Rex website - including BOMs and Layout. But I believe they are fitted (if they were not fitted, there would be NF text). HOwever you may want to compare it with BOM: http://www.imx6rex.com/downloads/

    Leave a comment:


  • ranaya
    replied
    I am referring to the following video :
    I hope you will like TinyRex HDMI input interface. You can connect there any HDMI output (e.g. GoPro, Settopbox, PC ....) and process the video or transfer i...


    1. But here the tinyRex is used for the HDMI camera. I think it is used with a Base Board right (tinyRex does not have HDMI chip, it connects to the HDMI through Base Board) ? So here if you can share the adv7610 input side schematic, I'd be able to take an idea. Since 16-Bit free run is working, I am sure from chip to imx6, the hardware works. Unknown part is the hardware between hdmi input port to chip !

    2. DE Regeneration is related to HDMI input signal locking. This error appears because the chip cannot lock into HDMI input signal. So I want to make sure whether this happens because of hardware or software issue. Can you kindly take a look at the attached pdf and tell me, how those resistors are arranged in actual layout ?

    Thanks
    Anuradha

    Leave a comment:


  • robertferanec
    replied
    1. I do not remember exactly, but I think ADV chip may be able to handle DDC by itself. You may also use software through I2C2 to read info about connected device to be able to set the correct resolution. However, I do not know exactly how it is handled - for the tests we did we only used fixed resolution. We never needed to support different HDMI devices and switch between resolutions automatically. But as it is, you should be able to read DDC info about the connected device and use software to set the correct resolution. That is only my theory.

    2. I am not sure what mean by DE regeneration issue. Please, could you be more specific?

    Leave a comment:


  • ranaya
    replied
    Dear Robert,

    Hi, thought to write you to report another issue. I managed to get the chip running in 16bit free run mode as well (on openrex max board). However for an hdmi input signal from a camera, the chip cannot lock into the hdmi input signal. The driver reports "ADV7610 DE regen filter no lock" error and pushed the chip to free run mode. So I'd like to get review the ADV7610 schematic from you. If you do not mind can you share the schematic of working adv7610 chip ? Particularly I have a question about I2C2_DDC_SCL and SDA signals. in baseboard schematic, those signals are shown in attached pdf.

    1. In that pdf can you kindly tell me how R6-R7 and R8-R9 should be arranged to properly work in HDMI input mode (let's say 720P) ?
    2. According to your opinion what could cause this DE regeneration issue ?

    Thanks in advance

    Best Regards
    Anuradha
    Attached Files

    Leave a comment:


  • robertferanec
    replied
    ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
    This is exactly the problem which I was getting, could not figure out how to fix it and friend of mine fixed it.

    Btw were you able to get different color windows in free run mode
    I have never played with these

    Leave a comment:


  • ranaya
    replied
    Btw were you able to get different color windows in free run mode ? I am trying to change the settings in addresses : C0,C1 and C2 to confirm it !

    Leave a comment:


  • ranaya
    replied
    Hi Robert, just want to let you know that, I was able to make some progress on this interfacing thing. Now I can see the device registration in kernel log :

    mxc_v4l2_master_attach: ipu0:/csi0 parallel attached adv7610-video:mxc_v4l2_cap0

    Now I can take the chip to free run mode, but in most of the time, the free run window crashes returning :

    ERROR: v4l2 capture: mxc_v4l_dqueue timeout enc_counter 0
    ERROR: v4l2 capture: unsupported ioctrl!

    dqueue timeout thing need to be resolved. I am just updating this post, probably be useful for someone else in future.

    Leave a comment:

Working...
X
😀
🥰
🤢
😎
😡
👍
👎