This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DVR SR2 section

hi

in the 8168 memmap,a SR2 section 

in the dsp process link,when get the NEW_DATA CMD,i send the phyaddr of video frame to A8,but A8 can

not access the value of the phyaddr.why? A8 can not access the phyaddr from dsp link,is it?

but if in the M3 VPSS DUP link,when it get the NEW_DATA CMD,i send the phyaddr of video frame to A8,A8 can access the value of the phyaddr.And both of the phyaddr of video frame in the DUP link or process link are in the same section SR2.

  • Are you mmaping the physical address before accessing its user virt address ? Does  mmap fail for phyaddr received from c674 dsp.What is the value of phyaddr

  • I don't need to use memmap I use devmem2 to look the value of phyaddr ,it is a cmd in linux ,can print the value of phyaddr if in m 3. Dup link send as i said ,it is right 。 i want to know does. a 8 can access the phyaddr of frames send from dsp best regards
  • Yes a8 can access frame sent from dsp.It is just ddr address .Any core can access.If you are unable to access it means address is wrong.It has nothing to do with c674 dsp.Share devmem2 log for working and not working case

  • in the file algLink_priv.c
    Int32 AlgLink_algProcessData(AlgLink_Obj * pObj) function,i add these codes

    Ch1BufPtr_phy=Ch1BufPtr;
    *(int *)Ch1BufPtr_phy=1;
    System_linkControl(SYSTEM_LINK_ID_HOST, 0x07, &Ch1BufPtr_phy,
    sizeof(Ptr),TRUE);

    in the file systemLink_tsk.c
    SystemLink_tskMain function,i add these codes

    if(cmd==0x07)
    {
    fromm3_phyaddr=(unsigned char *)Utils_msgGetPrm(pMsg);
    fromm3_phyaddr_phy=*((unsigned long *)fromm3_phyaddr);
    sprintf(cmdly,"devmem2 0x%lx w \n",fromm3_phyaddr_phy);
    system(cmdly);
    }

    you can see just when the phyaddr of video frame is 0xb01e5580,then the value is right,other phy ,they are wrong.

    the log is:

    [c6xdsp ] 17813: SYSTEM: Opening MsgQ [HOST_MSGQ] ...
    /dev/mem opened.
    Memory mapped at address 0x40131000.
    Read at address 0xB0166C80 (0x40131c80): 0x80808080
    /dev/mem opened.
    Memory mapped at address 0x402c7000.
    Read at address 0xB01E5580 (0x402c7580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x401ae000.
    Read at address 0xB0263E80 (0x401aee80): 0x01010102
    /dev/mem opened.
    Memory mapped at address 0x402e3000.
    Read at address 0xB02E2780 (0x402e3780): 0x01010102
    /dev/mem opened.
    Memory mapped at address 0x40127000.
    Read at address 0xB0361080 (0x40127080): 0x01010101
    /dev/mem opened.
    Memory mapped at address 0x402d4000.
    Read at address 0xB03DF980 (0x402d4980): 0x02010101
    /dev/mem opened.
    Memory mapped at address 0x4007b000.
    Read at address 0xB045E280 (0x4007b280): 0x02010101
    /dev/mem opened.
    Memory mapped at address 0x40105000.
    Read at address 0xB0166C80 (0x40105c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4025f000.
    Read at address 0xB01E5580 (0x4025f580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x401c2000.
    Read at address 0xB0263E80 (0x401c2e80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40200000.
    Read at address 0xB02E2780 (0x40200780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40211000.
    Read at address 0xB0361080 (0x40211080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40330000.
    Read at address 0xB03DF980 (0x40330980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400d1000.
    Read at address 0xB045E280 (0x400d1280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400c3000.
    Read at address 0xB0166C80 (0x400c3c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402c3000.
    Read at address 0xB01E5580 (0x402c3580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x4014f000.
    Read at address 0xB0263E80 (0x4014fe80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40118000.
    Read at address 0xB02E2780 (0x40118780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402d5000.
    Read at address 0xB0361080 (0x402d5080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4024f000.
    Read at address 0xB03DF980 (0x4024f980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40119000.
    Read at address 0xB045E280 (0x40119280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4018b000.
    Read at address 0xB0166C80 (0x4018bc80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400d7000.
    Read at address 0xB01E5580 (0x400d7580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x40165000.
    Read at address 0xB0263E80 (0x40165e80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402c8000.
    Read at address 0xB02E2780 (0x402c8780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40302000.
    Read at address 0xB0361080 (0x40302080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40207000.
    Read at address 0xB03DF980 (0x40207980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40091000.
    Read at address 0xB045E280 (0x40091280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402e6000.
    Read at address 0xB0166C80 (0x402e6c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40147000.
    Read at address 0xB01E5580 (0x40147580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x40103000.
    Read at address 0xB0263E80 (0x40103e80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402eb000.
    Read at address 0xB02E2780 (0x402eb780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400c4000.
    Read at address 0xB0361080 (0x400c4080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400a9000.
    Read at address 0xB03DF980 (0x400a9980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402ce000.
    Read at address 0xB045E280 (0x402ce280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400e9000.
    Read at address 0xB0166C80 (0x400e9c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400ac000.
    Read at address 0xB01E5580 (0x400ac580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x401fd000.
    Read at address 0xB0263E80 (0x401fde80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4034d000.
    Read at address 0xB02E2780 (0x4034d780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4024c000.
    Read at address 0xB0361080 (0x4024c080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40250000.
    Read at address 0xB03DF980 (0x40250980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40227000.
    Read at address 0xB045E280 (0x40227280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40140000.
    Read at address 0xB0166C80 (0x40140c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40153000.
    Read at address 0xB01E5580 (0x40153580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x4013f000.
    Read at address 0xB0263E80 (0x4013fe80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402ee000.
    Read at address 0xB02E2780 (0x402ee780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40124000.
    Read at address 0xB0361080 (0x40124080): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x400bc000.
    Read at address 0xB03DF980 (0x400bc980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4013a000.
    Read at address 0xB045E280 (0x4013a280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40171000.
    Read at address 0xB0166C80 (0x40171c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4032d000.
    Read at address 0xB01E5580 (0x4032d580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x401cf000.
    Read at address 0xB0263E80 (0x401cfe80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402b0000.
    Read at address 0xB02E2780 (0x402b0780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402a1000.
    Read at address 0xB0361080 (0x402a1080): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x4013b000.
    Read at address 0xB03DF980 (0x4013b980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400ba000.
    Read at address 0xB045E280 (0x400ba280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40289000.
    Read at address 0xB0166C80 (0x40289c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40233000.
    Read at address 0xB01E5580 (0x40233580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x40296000.
    Read at address 0xB0263E80 (0x40296e80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4027f000.
    Read at address 0xB02E2780 (0x4027f780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40148000.
    Read at address 0xB0361080 (0x40148080): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x4009b000.
    Read at address 0xB03DF980 (0x4009b980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40157000.
    Read at address 0xB045E280 (0x40157280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40251000.
    Read at address 0xB0166C80 (0x40251c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x401ca000.
    Read at address 0xB01E5580 (0x401ca580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x40119000.
    Read at address 0xB0263E80 (0x40119e80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402c1000.
    Read at address 0xB02E2780 (0x402c1780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4012a000.
    Read at address 0xB0361080 (0x4012a080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40320000.
    Read at address 0xB03DF980 (0x40320980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4023a000.
    Read at address 0xB045E280 (0x4023a280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x4010d000.
    Read at address 0xB0166C80 (0x4010dc80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402bb000.
    Read at address 0xB01E5580 (0x402bb580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x402ce000.
    Read at address 0xB0263E80 (0x402cee80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40128000.
    Read at address 0xB02E2780 (0x40128780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400f4000.
    Read at address 0xB0361080 (0x400f4080): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400fb000.
    Read at address 0xB03DF980 (0x400fb980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40299000.
    Read at address 0xB045E280 (0x40299280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402ed000.
    Read at address 0xB0166C80 (0x402edc80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400e8000.
    Read at address 0xB01E5580 (0x400e8580): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x4023f000.
    Read at address 0xB0263E80 (0x4023fe80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x402de000.
    Read at address 0xB02E2780 (0x402de780): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x400e3000.
    Read at address 0xB0361080 (0x400e3080): 0x00000001
    /dev/mem opened.
    Memory mapped at address 0x40373000.
    Read at address 0xB03DF980 (0x40373980): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40326000.
    Read at address 0xB045E280 (0x40326280): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x401c3000.
    Read at address 0xB0166C80 (0x401c3c80): 0x02020202
    /dev/mem opened.
    Memory mapped at address 0x40243000.
    Read at address 0xB01E5580 (0x40243580): 0x00000001

  • You have to make the cache coherent by doing Cache_wbInv for contents to be moved from c674 cache to ddr.Refer algLink scd process function

  • thanks for your reply.

    but in my code,i just modify the value of phyaddr,do not use the variable.

     *(int *)Ch1BufPtr_phy=1;

    best regards.