Hello,
I'm trying to transmit I2S data through McASP1 AXR5 from IPU1 core on our custom board, below is the environment we're using:
bios_6_46_04_53
edma3_lld_02_12_00_20
pdk_01_10_00_08(I copied the mcasp driver code from bsp-01.02.03.04 since there is no mcasp driver code in pdk_01_10_00_08)
The ACLKX, AFSX and ACHLKX output as expected, but there is not any data output on AXR5. The register dump of McASP1:
omapconf dump 0x48460000 0x484602BC Warning: chip not recognized, running in safe mode (only platform-generic functions allowed). |----------------------------| | Address (hex) | Data (hex) | |----------------------------| | 0x48460000 | 0x44307B03 | | 0x48460004 | 0x00000001 | | 0x48460008 | 0x00000000 | | 0x4846000C | 0x00000000 | | 0x48460010 | 0x00000000 | | 0x48460014 | 0x14000020 | | 0x48460018 | 0x00000000 | | 0x4846001C | 0x08000000 | | 0x48460020 | 0x00000000 | | 0x48460024 | 0x00000000 | | 0x48460028 | 0x00000000 | | 0x4846002C | 0x00000000 | | 0x48460030 | 0x0000C291 | | 0x48460034 | 0x00000000 | | 0x48460038 | 0x00000001 | | 0x4846003C | 0x00000000 | | 0x48460040 | 0x00000000 | | 0x48460044 | 0x00001F00 | | 0x48460048 | 0x00000000 | | 0x4846004C | 0x00000000 | | 0x48460050 | 0x00000000 | | 0x48460054 | 0x00000000 | | 0x48460058 | 0x00000000 | | 0x4846005C | 0x00000000 | | 0x48460060 | 0x00001F00 | | 0x48460064 | 0xFFFFFFFF | | 0x48460068 | 0x00000000 | | 0x4846006C | 0x00000000 | | 0x48460070 | 0x00180003 | | 0x48460074 | 0x00188046 | | 0x48460078 | 0x00000001 | | 0x4846007C | 0x00000000 | | 0x48460080 | 0x00000104 | | 0x48460084 | 0x00000000 | | 0x48460088 | 0x00000000 | | 0x4846008C | 0x00000000 | | 0x48460090 | 0x00000000 | | 0x48460094 | 0x00000000 | | 0x48460098 | 0x00000000 | | 0x4846009C | 0x00000000 | | 0x484600A0 | 0x00001F00 | | 0x484600A4 | 0xFFFFFFFF | | 0x484600A8 | 0x000080F4 | | 0x484600AC | 0x00000112 | | 0x484600B0 | 0x000000A3 | | 0x484600B4 | 0x00000000 | | 0x484600B8 | 0x00000003 | | 0x484600BC | 0x00000003 | | 0x484600C0 | 0x00000154 | | 0x484600C4 | 0x00000000 | | 0x484600C8 | 0xB4000000 | | 0x484600CC | 0x00000000 | | 0x484600D0 | 0x00000000 | | 0x484600D4 | 0x00000000 | | 0x484600D8 | 0x00000000 | | 0x484600DC | 0x00000000 | | 0x484600E0 | 0x00000000 | | 0x484600E4 | 0x00000000 | | 0x484600E8 | 0x00000000 | | 0x484600EC | 0x00000000 | | 0x484600F0 | 0x00000000 | | 0x484600F4 | 0x00000000 | | 0x484600F8 | 0x00000000 | | 0x484600FC | 0x00000000 | | 0x48460100 | 0x00000000 | | 0x48460104 | 0x00000000 | | 0x48460108 | 0x00000000 | | 0x4846010C | 0x00000000 | | 0x48460110 | 0x00000000 | | 0x48460114 | 0x00000000 | | 0x48460118 | 0x00000000 | | 0x4846011C | 0x00000000 | | 0x48460120 | 0x00000000 | | 0x48460124 | 0x00000000 | | 0x48460128 | 0x00000000 | | 0x4846012C | 0x00000000 | | 0x48460130 | 0x00000000 | | 0x48460134 | 0x00000000 | | 0x48460138 | 0x00000000 | | 0x4846013C | 0x00000000 | | 0x48460140 | 0x00000000 | | 0x48460144 | 0x00000000 | | 0x48460148 | 0x00000000 | | 0x4846014C | 0x00000000 | | 0x48460150 | 0x00000000 | | 0x48460154 | 0x00000000 | | 0x48460158 | 0x00000000 | | 0x4846015C | 0x00000000 | | 0x48460160 | 0x00000000 | | 0x48460164 | 0x00000000 | | 0x48460168 | 0x00000000 | | 0x4846016C | 0x00000000 | | 0x48460170 | 0x00000000 | | 0x48460174 | 0x00000000 | | 0x48460178 | 0x00000000 | | 0x4846017C | 0x00000000 | | 0x48460180 | 0x00000000 | | 0x48460184 | 0x00000000 | | 0x48460188 | 0x00000000 | | 0x4846018C | 0x00000000 | | 0x48460190 | 0x00000000 | | 0x48460194 | 0x00000001 | | 0x48460198 | 0x00000000 | | 0x4846019C | 0x00000000 | | 0x484601A0 | 0x00000000 | | 0x484601A4 | 0x00000000 | | 0x484601A8 | 0x00000000 | | 0x484601AC | 0x00000000 | | 0x484601B0 | 0x00000000 | | 0x484601B4 | 0x00000000 | | 0x484601B8 | 0x00000000 | | 0x484601BC | 0x00000000 | | 0x484601C0 | 0x00000000 | | 0x484601C4 | 0x00000000 | | 0x484601C8 | 0x00000000 | | 0x484601CC | 0x00000000 | | 0x484601D0 | 0x00000000 | | 0x484601D4 | 0x00000000 | | 0x484601D8 | 0x00000000 | | 0x484601DC | 0x00000000 | | 0x484601E0 | 0x00000000 | | 0x484601E4 | 0x00000000 | | 0x484601E8 | 0x00000000 | | 0x484601EC | 0x00000000 | | 0x484601F0 | 0x00000000 | | 0x484601F4 | 0x00000000 | | 0x484601F8 | 0x00000000 | | 0x484601FC | 0x00000000 | | 0x48460200 | 0x00000000 | | 0x48460204 | 0x00000000 | | 0x48460208 | 0x00000000 | | 0x4846020C | 0x00000000 | | 0x48460210 | 0x00000000 | | 0x48460214 | 0x00000000 | | 0x48460218 | 0x00000000 | | 0x4846021C | 0x00000000 | | 0x48460220 | 0x00000000 | | 0x48460224 | 0x00000000 | | 0x48460228 | 0x00000000 | | 0x4846022C | 0x00000000 | | 0x48460230 | 0x00000000 | | 0x48460234 | 0x00000000 | | 0x48460238 | 0x00000000 | | 0x4846023C | 0x00000000 | | 0x48460240 | 0x00000000 | | 0x48460244 | 0x00000000 | | 0x48460248 | 0x00000000 | | 0x4846024C | 0x00000000 | | 0x48460250 | 0x00000000 | | 0x48460254 | 0x00000000 | | 0x48460258 | 0x00000000 | | 0x4846025C | 0x00000000 | | 0x48460260 | 0x00000000 | | 0x48460264 | 0x00000000 | | 0x48460268 | 0x00000000 | | 0x4846026C | 0x00000000 | | 0x48460270 | 0x00000000 | | 0x48460274 | 0x00000000 | | 0x48460278 | 0x00000000 | | 0x4846027C | 0x00000000 | | 0x48460280 | 0x00000000 | | 0x48460284 | 0x00000000 | | 0x48460288 | 0x00000000 | | 0x4846028C | 0x00000000 | | 0x48460290 | 0x00000000 | | 0x48460294 | 0x00000000 | | 0x48460298 | 0x00000000 | | 0x4846029C | 0x00000000 | | 0x484602A0 | 0x00000000 | | 0x484602A4 | 0x00000000 | | 0x484602A8 | 0x00000000 | | 0x484602AC | 0x00000000 | | 0x484602B0 | 0x00000000 | | 0x484602B4 | 0x00000000 | | 0x484602B8 | 0x00000000 | | 0x484602BC | 0x00000000 | |----------------------------|
The EDMA3 seems work properly too:
[0][ 0.467] [Mcasp1_init][335]: -----> GIO_issue @9e2af5dc 16384 bytes [0][ 0.467] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][129].paRAMId 129, srcAddr @9e2af5dc, destAddr @45800000, aCnt 4, bCnt 32, cCnt 128, linkAddr @00005040 [0][ 0.468] [Mcasp1_init][347]: -----> GIO_issue @9e2b35dc 16384 bytes [0][ 0.468] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][130].paRAMId 130, srcAddr @9e2b35dc, destAddr @45800000, aCnt 4, bCnt 32, cCnt 128, linkAddr @00005020 [0][ 0.511] [edma3ComplHandler][5340]: IPR 0x00000000, IPRH 0x08000000 [0][ 0.511] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][129].paRAMId 129, srcAddr @9e2e9e80, destAddr @45800000, aCnt 4, bCnt 32, cCnt 1, linkAddr @00005020 [0][ 0.511] [Mcasp1_init][347]: -----> GIO_issue @9e2b75dc 16384 bytes [0][ 0.511] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][129].paRAMId 129, srcAddr @9e2b75dc, destAddr @45800000, aCnt 4, bCnt 32, cCnt 128, linkAddr @00005040 [0][ 0.553] [edma3ComplHandler][5340]: IPR 0x00000000, IPRH 0x08000000 [0][ 0.553] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][130].paRAMId 130, srcAddr @9e2e9e80, destAddr @45800000, aCnt 4, bCnt 32, cCnt 1, linkAddr @00005040 [0][ 0.554] [Mcasp1_init][347]: -----> GIO_issue @9e2bb5dc 16384 bytes [0][ 0.554] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][130].paRAMId 130, srcAddr @9e2bb5dc, destAddr @45800000, aCnt 4, bCnt 32, cCnt 128, linkAddr @00005020 [0][ 0.596] [edma3ComplHandler][5340]: IPR 0x00000000, IPRH 0x08000000 [0][ 0.596] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][129].paRAMId 129, srcAddr @9e2e9e80, destAddr @45800000, aCnt 4, bCnt 32, cCnt 1, linkAddr @00005020 [0][ 0.597] [Mcasp1_init][347]: -----> GIO_issue @9e2bf5dc 16384 bytes [0][ 0.597] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][129].paRAMId 129, srcAddr @9e2bf5dc, destAddr @45800000, aCnt 4, bCnt 32, cCnt 128, linkAddr @00005040 [0][ 0.639] [edma3ComplHandler][5340]: IPR 0x00000000, IPRH 0x08000000 [0][ 0.639] [EDMA3_DRV_setPaRAM][721]: edma3DrvChBoundRes[0][130].paRAMId 130, srcAddr @9e2e9e80, destAddr @45800000, aCnt 4, bCnt 32, cCnt 1, linkAddr @00005040 [0][ 0.681] [edma3ComplHandler][5340]: IPR 0x00000000, IPRH 0x08000000
Do I miss something? Can anyone provide some tips on how to investigate this issue?