Closed LongChair closed 7 years ago
The patch which was provided below seems to solve the playback start issue
diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index 73e0a3f..42cff5d 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -1356,6 +1356,29 @@ static inline int _loop_cyclic(struct pl330_dmac *pl330, unsigned dry_run,
off += _emit_LPEND(dry_run, &buf[off], &lpend);
}
+ if (pl330->peripherals_req_type == BURST) {
+ unsigned int ccr = pxs->ccr;
+ unsigned long c = 0;
+
+ c = BYTE_MOD_BURST_LEN(x->bytes, pxs->ccr);
+
+ if (c) {
+ ccr &= ~(0xf << CC_SRCBRSTLEN_SHFT);
+ ccr &= ~(0xf << CC_DSTBRSTLEN_SHFT);
+ off += _emit_MOV(dry_run, &buf[off], CCR, ccr);
+ //off += _loop(pl330, dry_run, &buf[off], &c, pxs);
+ off += _emit_LP(dry_run, &buf[off], 1, c - 1);
+ ljmp1 = off;
+ off += _bursts(pl330, dry_run, &buf[off], pxs, 1);
+ lpend.cond = ALWAYS;
+ lpend.forever = false;
+ lpend.loop = 1;
+ lpend.bjump = off - ljmp1;
+ off += _emit_LPEND(dry_run, &buf[off], &lpend);
+ off += _emit_MOV(dry_run, &buf[off], CCR, pxs->ccr);
+ }
+ }
+
off += _emit_SEV(dry_run, &buf[off], ev);
lpend.cond = ALWAYS;
@@ -1457,13 +1480,13 @@ static int _setup_req(struct pl330_dmac *pl330, unsigned dry_run,
x = &pxs->desc->px;
- if (!pxs->desc->cyclic) {
- if (pl330->peripherals_req_type != BURST) {
- /* Error if xfer length is not aligned at burst size */
- if (x->bytes % (BRST_SIZE(pxs->ccr) * BRST_LEN(pxs->ccr)))
- return -EINVAL;
- }
+ if (pl330->peripherals_req_type != BURST) {
+ /* Error if xfer length is not aligned at burst size */
+ if (x->bytes % (BRST_SIZE(pxs->ccr) * BRST_LEN(pxs->ccr)))
+ return -EINVAL;
+ }
+ if (!pxs->desc->cyclic) {
off += _setup_xfer(pl330, dry_run, &buf[off], pxs);
/* DMASEV peripheral/event */
@@ -1471,10 +1494,6 @@ static int _setup_req(struct pl330_dmac *pl330, unsigned dry_run,
/* DMAEND */
off += _emit_END(dry_run, &buf[off]);
} else {
- /* Error if xfer length is not aligned at burst size */
- if (x->bytes % (BRST_SIZE(pxs->ccr) * BRST_LEN(pxs->ccr)))
- return -EINVAL;
-
off += _setup_xfer_cyclic(pl330, dry_run, &buf[off],
pxs, thrd->ev);
}
But when stopping playback, we're getting another crash. Here is the associated kernel log :
[ 19.352541] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 20.386706] rk_iommu ff373f00.iommu: Unbalanced pm_runtime_enable!
[ 21.906611] drm_crtc_check_viewport: skip check
[ 38.537905] rk-vcodec ff360000.rkvdec: can not find 132 buffer in list
[ 38.538097] rk_iommu ff360480.iommu: Unbalanced pm_runtime_enable!
[ 47.576472] rk-vcodec ff360000.rkvdec: closed
[ 47.605199] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.605216] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.605227] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.605233]
[ 47.605233] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.605233] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.605233] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.605233] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.605233] 0x00000040: 087f08c2 00030007 00000000 00000000
[ 47.605233] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.605233] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.605233] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.605233] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.605233] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.605233] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.605233] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.605233] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.605233] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.605370] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.605370] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.605370] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.605370] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.605370] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.605370] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.605370] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.605370] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.605370] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.605370] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.605370] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.605370] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.605370] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.605370] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.605505] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.605505] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.605505] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.605505] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.605505] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.605505] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.605505] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.605505] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.605505] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.605505] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.605505] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.605505] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.605505] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.605505] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.605640] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.605640] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.605640] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.605640] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.605640] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.605640] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.605640] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.605640] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.605640] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.605769] Connector: HDMI-A
[ 47.605774] bus_format[100a] output_mode[f]
[ 47.605779] Display mode: 4096x2160p30
[ 47.605784] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.605789] H: 4096 4184 4272 4400
[ 47.605793] V: 2160 2168 2178 2250
[ 47.605798] win0-0: DISABLED
[ 47.605803] win1-0: ACTIVE
[ 47.605810] format: AR24 little-endian (0x34325241)
[ 47.605813] zpos: 1
[ 47.605818] src: pos[0x0] rect[1920x1080]
[ 47.605822] dst: pos[0x0] rect[4096x2160]
[ 47.605829] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.605834] win2-0: ACTIVE
[ 47.605839] format: AR24 little-endian (0x34325241)
[ 47.605843] zpos: 2
[ 47.605847] src: pos[0x0] rect[64x64]
[ 47.605852] dst: pos[0x0] rect[64x64]
[ 47.605857] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.638530] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.638546] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.638556] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.638563]
[ 47.638563] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.638563] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.638563] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.638563] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.638563] 0x00000040: 087f08c2 00010007 00000000 00000000
[ 47.638563] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.638563] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.638563] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.638563] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.638563] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.638563] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.638563] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.638563] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.638563] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.638700] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.638700] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.638700] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.638700] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.638700] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.638700] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.638700] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.638700] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.638700] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.638700] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.638700] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.638700] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.638700] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.638700] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.638836] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.638836] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.638836] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.638836] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.638836] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.638836] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.638836] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.638836] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.638836] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.638836] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.638836] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.638836] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.638836] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.638836] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.638971] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.638971] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.638971] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.638971] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.638971] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.638971] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.638971] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.638971] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.638971] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.639100] Connector: HDMI-A
[ 47.639105] bus_format[100a] output_mode[f]
[ 47.639110] Display mode: 4096x2160p30
[ 47.639115] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.639120] H: 4096 4184 4272 4400
[ 47.639124] V: 2160 2168 2178 2250
[ 47.639129] win0-0: DISABLED
[ 47.639133] win1-0: ACTIVE
[ 47.639141] format: AR24 little-endian (0x34325241)
[ 47.639144] zpos: 1
[ 47.639149] src: pos[0x0] rect[1920x1080]
[ 47.639153] dst: pos[0x0] rect[4096x2160]
[ 47.639159] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.639164] win2-0: ACTIVE
[ 47.639170] format: AR24 little-endian (0x34325241)
[ 47.639173] zpos: 2
[ 47.639177] src: pos[0x0] rect[64x64]
[ 47.639182] dst: pos[0x0] rect[64x64]
[ 47.639187] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.671858] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.671873] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.671883] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.671890]
[ 47.671890] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.671890] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.671890] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.671890] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.671890] 0x00000040: 087f08c2 00030006 00000000 00000000
[ 47.671890] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.671890] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.671890] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.671890] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.671890] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.671890] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.671890] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.671890] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.671890] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.672027] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.672027] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.672027] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.672027] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.672027] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.672027] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.672027] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.672027] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.672027] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.672027] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.672027] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.672027] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.672027] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.672027] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.672163] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.672163] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.672163] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.672163] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.672163] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.672163] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.672163] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.672163] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.672163] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.672163] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.672163] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.672163] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.672163] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.672163] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.672298] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.672298] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.672298] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.672298] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.672298] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.672298] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.672298] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.672298] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.672298] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.672427] Connector: HDMI-A
[ 47.672432] bus_format[100a] output_mode[f]
[ 47.672438] Display mode: 4096x2160p30
[ 47.672443] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.672447] H: 4096 4184 4272 4400
[ 47.672452] V: 2160 2168 2178 2250
[ 47.672456] win0-0: DISABLED
[ 47.672460] win1-0: ACTIVE
[ 47.672468] format: AR24 little-endian (0x34325241)
[ 47.672472] zpos: 1
[ 47.672476] src: pos[0x0] rect[1920x1080]
[ 47.672481] dst: pos[0x0] rect[4096x2160]
[ 47.672487] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.672492] win2-0: ACTIVE
[ 47.672497] format: AR24 little-endian (0x34325241)
[ 47.672501] zpos: 2
[ 47.672505] src: pos[0x0] rect[64x64]
[ 47.672509] dst: pos[0x0] rect[64x64]
[ 47.672514] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.705196] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.705213] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.705223] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.705231]
[ 47.705231] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.705231] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.705231] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.705231] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.705231] 0x00000040: 087f08c2 00030007 00000000 00000000
[ 47.705231] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.705231] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.705231] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.705231] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.705231] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.705231] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.705231] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.705231] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.705231] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.705369] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.705369] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.705369] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.705369] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.705369] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.705369] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.705369] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.705369] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.705369] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.705369] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.705369] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.705369] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.705369] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.705369] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.705506] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.705506] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.705506] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.705506] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.705506] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.705506] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.705506] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.705506] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.705506] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.705506] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.705506] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.705506] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.705506] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.705506] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.705641] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.705641] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.705641] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.705641] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.705641] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.705641] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.705641] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.705641] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.705641] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.705770] Connector: HDMI-A
[ 47.705775] bus_format[100a] output_mode[f]
[ 47.705781] Display mode: 4096x2160p30
[ 47.705786] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.705791] H: 4096 4184 4272 4400
[ 47.705795] V: 2160 2168 2178 2250
[ 47.705801] win0-0: DISABLED
[ 47.705806] win1-0: ACTIVE
[ 47.705815] format: AR24 little-endian (0x34325241)
[ 47.705818] zpos: 1
[ 47.705823] src: pos[0x0] rect[1920x1080]
[ 47.705828] dst: pos[0x0] rect[4096x2160]
[ 47.705833] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.705839] win2-0: ACTIVE
[ 47.705845] format: AR24 little-endian (0x34325241)
[ 47.705848] zpos: 2
[ 47.705853] src: pos[0x0] rect[64x64]
[ 47.705857] dst: pos[0x0] rect[64x64]
[ 47.705863] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.738520] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b820 of type read
[ 47.738536] rk_iommu ff373f00.iommu: iova = 0x000000000379b820: dte_index: 0xd pte_index: 0x39b page_offset: 0x820
[ 47.738546] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.738553]
[ 47.738553] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.738553] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.738553] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.738553] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.738553] 0x00000040: 087f08c2 00030006 00000000 00000000
[ 47.738553] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.738553] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.738553] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.738553] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.738553] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.738553] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.738553] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.738553] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.738553] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.738704] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.738704] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.738704] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.738704] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.738704] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.738704] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.738704] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.738704] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.738704] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.738704] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.738704] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.738704] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.738704] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.738704] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.738841] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.738841] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.738841] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.738841] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.738841] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.738841] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.738841] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.738841] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.738841] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.738841] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.738841] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.738841] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.738841] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.738841] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.738977] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.738977] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.738977] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.738977] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.738977] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.738977] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.738977] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.738977] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.738977] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.739106] Connector: HDMI-A
[ 47.739110] bus_format[100a] output_mode[f]
[ 47.739116] Display mode: 4096x2160p30
[ 47.739120] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.739125] H: 4096 4184 4272 4400
[ 47.739129] V: 2160 2168 2178 2250
[ 47.739134] win0-0: DISABLED
[ 47.739138] win1-0: ACTIVE
[ 47.739145] format: AR24 little-endian (0x34325241)
[ 47.739148] zpos: 1
[ 47.739153] src: pos[0x0] rect[1920x1080]
[ 47.739158] dst: pos[0x0] rect[4096x2160]
[ 47.739163] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.739168] win2-0: ACTIVE
[ 47.739174] format: AR24 little-endian (0x34325241)
[ 47.739177] zpos: 2
[ 47.739182] src: pos[0x0] rect[64x64]
[ 47.739186] dst: pos[0x0] rect[64x64]
[ 47.739191] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.771853] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.771868] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.771878] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.771884]
[ 47.771884] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.771884] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.771884] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.771884] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.771884] 0x00000040: 087f08c2 00030006 00000000 00000000
[ 47.771884] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.771884] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.771884] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.771884] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.771884] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.771884] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.771884] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.771884] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.771884] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.772033] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.772033] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.772033] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.772033] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.772033] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.772033] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.772033] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.772033] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.772033] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.772033] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.772033] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.772033] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.772033] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.772033] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.772169] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.772169] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.772169] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.772169] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.772169] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.772169] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.772169] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.772169] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.772169] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.772169] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.772169] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.772169] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.772169] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.772169] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.772306] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.772306] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.772306] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.772306] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.772306] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.772306] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.772306] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.772306] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.772306] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.772435] Connector: HDMI-A
[ 47.772439] bus_format[100a] output_mode[f]
[ 47.772444] Display mode: 4096x2160p30
[ 47.772449] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.772453] H: 4096 4184 4272 4400
[ 47.772458] V: 2160 2168 2178 2250
[ 47.772462] win0-0: DISABLED
[ 47.772467] win1-0: ACTIVE
[ 47.772473] format: AR24 little-endian (0x34325241)
[ 47.772477] zpos: 1
[ 47.772482] src: pos[0x0] rect[1920x1080]
[ 47.772486] dst: pos[0x0] rect[4096x2160]
[ 47.772492] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.772496] win2-0: ACTIVE
[ 47.772502] format: AR24 little-endian (0x34325241)
[ 47.772506] zpos: 2
[ 47.772510] src: pos[0x0] rect[64x64]
[ 47.772515] dst: pos[0x0] rect[64x64]
[ 47.772520] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
[ 47.805185] rk_iommu ff373f00.iommu: Page fault at 0x000000000379b900 of type read
[ 47.805199] rk_iommu ff373f00.iommu: iova = 0x000000000379b900: dte_index: 0xd pte_index: 0x39b page_offset: 0x900
[ 47.805209] rk_iommu ff373f00.iommu: mmu_dte_addr: 0x0000000076a30000 dte@0x0000000076a30034: 0x4027a001 valid: 1 pte@0x000000004027ae6c: 0x3b6a6006 valid: 0 page@0x0000000000000000 flags: 0x0
[ 47.805215]
[ 47.805215] 0x00000000: 00000000 30818073 20803800 0003a000
[ 47.805215] 0x00000010: 0000000f 00b02400 00000000 00711c08
[ 47.805215] 0x00000020: ed000000 00000000 00000000 00000000
[ 47.805215] 0x00000030: 00000000 00000000 00000000 00000000
[ 47.805215] 0x00000040: 087f08c2 00030006 00000000 00000000
[ 47.805215] 0x00000050: 00000000 00000000 00000000 00000000
[ 47.805215] 0x00000060: 00000000 00000000 00000000 00000000
[ 47.805215] 0x00000070: 00000000 00000000 00000000 00000000
[ 47.805215] 0x00000080: 00000000 00000000 00000000 00000000
[ 47.805215] 0x00000090: 00000000 00000000 00000000 00000000
[ 47.805215] 0x000000a0: 00000000 00000000 00000000 00000000
[ 47.805215] 0x000000b0: 00000000 00000000 00000000 00000000
[ 47.805215] 0x000000c0: 00000000 00000000 00000000 00000000
[ 47.805215] 0x000000d0: 00000000 00000000 00000000 00000000
3a000028 40400000 00000000 00b400b4
[ 47.805362] 0x00000110: 03777000 037c0200 019202cf 086d0fff
[ 47.805362] 0x00000120: 005400d8 2fa62cea 17ad1669 00000000
[ 47.805362] 0x00000130: 00000000 00000000 00000000 00000021
[ 47.805362] 0x00000140: 00000000 00000000 00000000 00000000
[ 47.805362] 0x00000150: 00000000 00000000 00000000 00000000
[ 47.805362] 0x00000160: 00000000 00000000 00000000 00000000
[ 47.805362] 0x00000170: 00000000 00000000 00000000 00000000
[ 47.805362] 0x00000180: 00000000 00000000 00000000 00000000
[ 47.805362] 0x00000190: 00000000 00000000 00000000 00000000
[ 47.805362] 0x000001a0: 00000000 00000000 00000000 00000000
[ 47.805362] 0x000001b0: 00000000 00000000 00000000 00000000
[ 47.805362] 0x000001c0: 00000000 00000000 00000000 00000000
[ 47.805362] 0x000001d0: 00000000 00000000 00000000 00000000
[ 47.805362] 0x000001e0: 00000000 00000000 00000000 00000000
00000000 01400780
[ 47.805499] 0x00000210: 029ad000 00000000 0437077f 086f0fff
[ 47.805499] 0x00000220: 005200d8 7fe177ef 10001000 00000000
[ 47.805499] 0x00000230: 00000069 000000c0 00000000 00000043
[ 47.805499] 0x00000240: 00000000 00000000 00000000 00000000
[ 47.805499] 0x00000250: 00000000 00000000 00000000 00000000
[ 47.805499] 0x00000260: 00000000 00000000 00000000 00000000
[ 47.805499] 0x00000270: 00000000 00000000 00000000 00000000
[ 47.805499] 0x00000280: 00000000 00000000 00000000 00000000
[ 47.805499] 0x00000290: 00000000 00000000 00000000 00000000
[ 47.805499] 0x000002a0: 00000000 00000000 00000000 00000000
[ 47.805499] 0x000002b0: 00000000 00000000 00000000 00000000
[ 47.805499] 0x000002c0: 00000000 00000000 00000000 00000000
[ 47.805499] 0x000002d0: 00000000 00000000 00000000 00000000
[ 47.805499] 0x000002e0: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000310: 021c0000 00000000 003f003f 003f003f
[ 47.805635] 0x00000320: 005200d8 10001000 10001000 00000000
[ 47.805635] 0x00000330: 00000069 000000c0 00000000 00000065
[ 47.805635] 0x00000340: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000350: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000360: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000370: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000380: 00000000 00000000 00000000 00000000
[ 47.805635] 0x00000390: 00000000 00000000 00000000 00000000
[ 47.805635] 0x000003a0: 00000000 00000000 00000000 00000000
[ 47.805635] 0x000003b0: 00000000 00000000 00000000 00000000
[ 47.805635] 0x000003c0: 00000000 00000000 00000000 00000000
[ 47.805635] 0x000003d0: 00000000 00000000 00000000 00000000
[ 47.805635] 0x000003e0: 00000000 00000000 00000000 00000000
[ 47.805764] Connector: HDMI-A
[ 47.805768] bus_format[100a] output_mode[f]
[ 47.805773] Display mode: 4096x2160p30
[ 47.805778] clk[297000] real_clk[297000] type[40] flag[5]
[ 47.805782] H: 4096 4184 4272 4400
[ 47.805786] V: 2160 2168 2178 2250
[ 47.805791] win0-0: DISABLED
[ 47.805796] win1-0: ACTIVE
[ 47.805802] format: AR24 little-endian (0x34325241)
[ 47.805806] zpos: 1
[ 47.805810] src: pos[0x0] rect[1920x1080]
[ 47.805815] dst: pos[0x0] rect[4096x2160]
[ 47.805820] buf[0]: addr: 0x00000000029ad000 pitch: 7680 offset: 0
[ 47.805825] win2-0: ACTIVE
[ 47.805830] format: AR24 little-endian (0x34325241)
[ 47.805834] zpos: 2
[ 47.805838] src: pos[0x0] rect[64x64]
[ 47.805844] dst: pos[0x0] rect[64x64]
[ 47.805848] buf[0]: addr: 0x00000000021c0000 pitch: 256 offset: 0
Here is a full kernel log file where this issue happenned :
Did you modify dma code yourselves? @ayaka said he can't meet by use gstreamer.
No i don't think we changed anything regarding dma. I know @Kwiboo mentionned that recent changes to pl330 seems to have introduced such issues.
try it
The power domain change did not have much affect but I have not seen this issue with latest kernel updates. #20 might be related to this issue.
Since the 4.4 kernel merge and updating to it, as well updating mpp, we have various playback crashes.
Some files will play about right, some other result in a black screen.
Checking kernel log will show :
and then after a few secs we get
I have uploaded a short sample where i see this issue
https://www.dropbox.com/s/grxtyzyzq8dj6i4/My%20Little%20Pony-%20Friendship%20is%20Magic%20-%20S05E04%20-%20Bloom%20and%20Gloom%20SDTV.mp4?dl=0