We have designed a video capture card based on ADV7604. Our system scenario is:
We are referring below script to program the registers:
##Graphics - XGA, 1024x768##:Graphics-3.1 1024x768 _@ 60 65.000MHz Out through DAC:40 0C 42 ; Power up part and Power down VDP40 00 0C ; VID_STD=01100b for 1024x768 _@ 6040 01 82 ; Enable Simultaneous Mode ,Prim_Mode =0010b for GR40 02 F2 ; Auto CSC , RGB Out40 03 42 ; 36 Bit SDR40 05 28 ; TURN OFF EAV & SAV CODES & Enable Freerun40 0B 44 ; Power down ESDP block40 14 7F ; Drive strength adjustment40 15 90 ; Disable Tristate of Pins except for Audio pins40 33 60 ; LLC DLL Mux Enable44 3E 04 ; Enable gain control for CP44 40 5C ; Adjust CP gain for PGA gain of 1.444 69 30 ; Enable CP CSC44 85 0B ; Disable Autodetectmode for Sync_Source for CH1. Force CH1 to use seperate HS & VS.44 C3 39 ; ADI recommended write44 CF 01 ; Power off macrovision4C 13 93 ; Set LLC DLL Phase4C 02 02 ; Ain_Sel to 010. (Ain 7,8,9)4C 05 07 ; AA filter Enable4C 06 20 ; Set AA_filt_high_BW to 114C 07 A0 ; Set AA_filt_high_BW to 11 & aa_filt_prog_bw to 014C 12 63 ; Turn Noise shaping OFF4C 0C 1F ; Set PGA gain to 1.44C C6 5F ; Disable Audio Core50 10 00 ; MuxEnd
When we are trying to read the registers from I2cget utility, getting all the Analog front end registers with their default values. Getting same default value even after programming by i2cset utility.
We are able to write other I2C map like HDMI Map.
So I am not able to understand that why this AFE registers is not getting programmed. Are some other registers need to get programmed?
Quick response will be appreciated.
Thanks and Regards,
Below are the I2C initialization sequence we need to take care from our end. Please make sure with that,
Initialization Sequence:I2C initialization must be carried out in the following order:1. If required, configure any I2C writes for the desired configuration of the I2C Slave Map addresses.2. Configure the I2C writes for the desired power-up configuration. This should be done beforeconfiguring any Analog Front End (AFE) features or applying any ADI recommended initializationsetting.
Please note that in the script provided earlier AFE is being programmed in the last section starting at AFE map address 4C. ADI recommended setting is just before of AFE settings.
Hence I have followed recommendation provided by you in section 5.1. I suspected that my AFE is power off so I read 0x01 register and it's default value is 0x06 and the read back value is also 0x06. I tried to change 0x01 register to 0xFE; which disables the AFE engine but again my read back value of 0x01 is 0x06.
Please review the script again and let me know if any changes we need to make to solve this AFE engine not working problem
Please find the attached schematic and review it and correct me if I am missing something.
We could not face any issue with our eval board, Could you please crosscheck your schematic here 8182.EVAL-ADV7604EB1Z_RevC_schematic.pdf
Thanks for your suggestions.
We developed our video capture card based on your eval board. But after your reply I cross checked my schematic but I don't think so there is any issue in schematic. Please review it from your side.
One more thing I would like to add the we are able to read and write on this register of AFE map:
4C C6 5F ; Disable Audio Core
Except this C6 we are not able to write on any registers mentioned in the script:
4C 02 02 ; Ain_Sel to 010. (Ain 7,8,9)4C 05 07 ; AA filter Enable4C 06 20 ; Set AA_filt_high_BW to 114C 07 A0 ; Set AA_filt_high_BW to 11 & aa_filt_prog_bw to 014C 12 63 ; Turn Noise shaping OFF4C 0C 1F ; Set PGA gain to 1.4
Any other suggestion or debugging approach will be appreciated.