Post Go back to editing

AFE MAP SET registers in ADV7842 not able to write but able to read

We have made a board, using ADV7842 connected to Processor board running on linux.

We are using linux driver(GPL.lisence).

Here we could able to read and write CP memory map registers but we are not able to write AFE memory map registers.

Evolution board scripts are use as such.

Is there any enable mechanism or any hidden information is there to access AFE memory map registers.

Please suggest to resolve this issue.

Parents
  • Hi,

    Please let us know, have you followed the sequence that mentioned in reference script.

    For Example:

      40 FF 80 ; I2C reset
      40 F1 90 ; SDP map
      40 F2 94 ; SDPIO map
      40 F3 84 ; AVLINK
      40 F4 80 ; CEC
      40 F5 7C ; INFOFRAME
      40 F8 4C ; AFE

    Note:  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 before
    configuring any Analog Front End (AFE) features or applying any ADI recommended initialization
    setting.

    Thanks,

    Poornima

  • Hi,

    Yes I am following same as in script file, please find the below scipt file I am following.


    40 FF 80 ; I2C reset
    40 F1 90 ; SDP map
    40 F2 94 ; SDPIO map
    40 F3 84 ; AVLINK
    40 F4 80 ; CEC
    40 F5 7C ; INFOFRAME
    40 F8 4C ; AFE
    40 F9 64 ; KSV
    40 FA 6C ; EDID
    40 FB 68 ; HDMI
    40 FD 44 ; CP
    40 FE 48 ; VDP
    40 00 0A ; VID_STD=01010b for VGA75
    40 01 82 ; Prim_Mode to graphics input
    40 02 F6 ; Auto input color space, Limited Range RGB Output
    40 03 42 ; 24 bit SDR 444
    40 05 28 ; Disable AV Codes
    40 0C 40 ; Power up Part
    40 15 B0 ; Disable Tristate of Pins except for Audio pins
    44 73 EA ; Set manual gain of 0x2A8
    44 74 8A ; Set manual gain of 0x2A8
    44 75 A2 ; Set manual gain of 0x2A8
    44 76 A8 ; Set manual gain of 0x2A8
    44 85 0B ; Disable Autodetectmode for Sync_Source for CH1. Force CH1 to use HS&VS
    44 C3 39 ; ADI recommended write
    4C 0C 1F ; ADI recommended write
    4C 12 63 ; ADI recommended write
    4C 00 80 ; ADC power Up
    4C 02 00 ; Ain_Sel to 000. (Ain 1,2,3)
    4C C8 0B ; DLL_PHASE - 001011b

    I am able to read Analog Front End (AFE) registers default values properly but I am not able to write into AFE registers.

    I am able to read/write for slave devices 0x40 and 0x44.

    Thanks & Regards,

    Mallikarjuna B.

  • Do you have Eval board in your side, are you able to write into AFE(0x4C) map registers, we are worrying AFE map is not working as per the datasheet.

    Please suggest to resolve the problem.

  • Hi,

      Apologies for the delay response,We verified in our ADV7842 eval board but we could able to read & write the AFE map.

       Could you please try the below seq and let us know.

         Read back and verify register 40 F8 and verify 4C has really been written to it.

    For example:
    Read back and verify register 40 F8 and 4C as follow:
       Read OK: addr=0x40,command=0xf8,  value=0x4c
       Write:  addr=0x4c,command=0x12, value=0x63
       Read OK:  addr=0x4c,command=0x12, value=0x63

    Thanks,

    Poornima

  • Hi,

    We Read back and verify register 40 F8 and it's value is 0x4C only, In below Image detailed debug info provided.

    Assume i2c bus number is used in this design is 7, Here I2C client device addressed at (0x40 >> 1) 0x20.

    1) By using i2cset I am writing 0x4C into 0xF8 Register, By using i2cget read back 0xF8 register and it's value is 0x4C only.

    2) AFE I2C client device addressed at (0x4C >> 1) 0x26.

    3) I am writing (0x4C >> 1) 0x12 0x63, while read back default value 0xFF is coming.

    4) Here 0xC8 register values of AFE map is updating(First 2 bits) only, Please find the below image for updated values of register 0xC8.

    Thanks & Regards,

    Mallikarjuna B.

  • Hi,

    Please check the below info and let us know these are valid one or not.

    1) Silicon Revision ID mentioned in Registers programming is
    0x2001 - ADV7844 ES2 Silicon
    All other values - Invalid for ADV7844

    I am getting silicon revision ID - 0x2012, Please find the below image(highlighted one) for the same.

    2) Please find the Image of ADV7842-5P which is using in my board, Please confirm this version of ADV7842 is Ok for writing into AFE map registers.

    Thanks & Regards,

    Mallikarjuna B.

  • Hi,

      In our eval board also we are using "ADV7842 KBCZ-5P" part but we could able to read or write the AFE map registers. Please refer below snap for your reference.

     

    Thanks,

    Poornima

Reply Children