Hi
I tested the rotation on Linux and it is working fine for yuv422p. So, the format is supported
I dumped the info from linux with the idma configuration
So, this can be helpful to see if there is something missing in the SDK.
Resizing is made first and then rotation.
Please take a look and check if you can find some idma config missing in the sdk.
imx-ipuv3 imx-ipuv3.0: [0xdf938000]input:
imx-ipuv3 imx-ipuv3.0: [0xdf938000] format = 0x50323234 <-- yuv422p in linux
imx-ipuv3 imx-ipuv3.0: [0xdf938000] width = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000] height = 768
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.w = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.h = 768
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.pos.x = 0
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.pos.y = 0
imx-ipuv3 imx-ipuv3.0: [0xdf938000]input buffer:
imx-ipuv3 imx-ipuv3.0: [0xdf938000] paddr = 0x18a00000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] i_off = 0x0
imx-ipuv3 imx-ipuv3.0: [0xdf938000] i_uoff = 0xc0000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] i_voff = 0x120000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] istride = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000]output:
imx-ipuv3 imx-ipuv3.0: [0xdf938000] format = 0x50323234 <-- yuv422p in linux
imx-ipuv3 imx-ipuv3.0: [0xdf938000] width = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000] height = 768
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.w = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.h = 768
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.pos.x = 0
imx-ipuv3 imx-ipuv3.0: [0xdf938000] crop.pos.y = 0
imx-ipuv3 imx-ipuv3.0: [0xdf938000] rotate = 5
imx-ipuv3 imx-ipuv3.0: [0xdf938000]output buffer:
imx-ipuv3 imx-ipuv3.0: [0xdf938000] paddr = 0x18000000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] o_off = 0x0
imx-ipuv3 imx-ipuv3.0: [0xdf938000] o_uoff = 0xc0000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] o_voff = 0x120000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] ostride = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000]want task_id = 1
imx-ipuv3 imx-ipuv3.0: [0xdf938000]want task mode is 0x3
imx-ipuv3 imx-ipuv3.0: [0xdf938000] IC_MODE = 0x1
imx-ipuv3 imx-ipuv3.0: [0xdf938000] ROT_MODE = 0x2
imx-ipuv3 imx-ipuv3.0: [0xdf938000] VDI_MODE = 0x4
imx-ipuv3 imx-ipuv3.0: [0xdf938000] Task_no = 0x100
imx-ipuv3 imx-ipuv3.0: [0xdf938000]ic channel MEM_PRP_VF_MEM
imx-ipuv3 imx-ipuv3.0: [0xdf938000]rot channel MEM_ROT_VF_MEM
imx-ipuv3 imx-ipuv3.0: ipu_channel_status, dma_status:0.
imx-ipuv3 imx-ipuv3.0: ipu_channel_status, dma_status:0.
imx-ipuv3 imx-ipuv3.0: ipu_channel_status, dma_status:0.
imx-ipuv3 imx-ipuv3.0: [0xdf938000]ic + rot mode
imx-ipuv3 imx-ipuv3.0: [0xdf938000]rotation:
imx-ipuv3 imx-ipuv3.0: [0xdf938000] format = 0x50323234 <-- yuv422p in linux
imx-ipuv3 imx-ipuv3.0: [0xdf938000] width = 768
imx-ipuv3 imx-ipuv3.0: [0xdf938000] height = 1024
imx-ipuv3 imx-ipuv3.0: [0xdf938000] paddr = 0x18e00000
imx-ipuv3 imx-ipuv3.0: [0xdf938000] rstride = 768
imx-ipuv3 imx-ipuv3.0: init channel = 5
imx-ipuv3 imx-ipuv3.0: resizing from 768 -> 1024 pixels, downsize=0, resize=0.7496 (reg=6141)
imx-ipuv3 imx-ipuv3.0: resizing from 1024 -> 768 pixels, downsize=0, resize=1.3337 (reg=10926)
imx-ipuv3 imx-ipuv3.0: initializing idma ch 12 @ ea8c0300
imx-ipuv3 imx-ipuv3.0: ch 12 word 0 - 00000000 60000000 00240000 E0000000 000BFC7F
imx-ipuv3 imx-ipuv3.0: ch 12 word 1 - 03140000 00000000 2023C000 0000FFC0 000001FF
imx-ipuv3 imx-ipuv3.0: PFS 0x1,
imx-ipuv3 imx-ipuv3.0: BPP 0x0,
imx-ipuv3 imx-ipuv3.0: NPB 0xf
imx-ipuv3 imx-ipuv3.0: FW 1023,
imx-ipuv3 imx-ipuv3.0: FH 767,
imx-ipuv3 imx-ipuv3.0: EBA0 0x18a00000
imx-ipuv3 imx-ipuv3.0: EBA1 0x0
imx-ipuv3 imx-ipuv3.0: Stride 1023
imx-ipuv3 imx-ipuv3.0: scan_order 0
imx-ipuv3 imx-ipuv3.0: uv_stride 511
imx-ipuv3 imx-ipuv3.0: u_offset 0xc0000
imx-ipuv3 imx-ipuv3.0: v_offset 0x120000
imx-ipuv3 imx-ipuv3.0: Width0 0+1,
imx-ipuv3 imx-ipuv3.0: Width1 0+1,
imx-ipuv3 imx-ipuv3.0: Width2 0+1,
imx-ipuv3 imx-ipuv3.0: Width3 0+1,
imx-ipuv3 imx-ipuv3.0: Offset0 31,
imx-ipuv3 imx-ipuv3.0: Offset1 15,
imx-ipuv3 imx-ipuv3.0: Offset2 0,
imx-ipuv3 imx-ipuv3.0: Offset3 0
imx-ipuv3 imx-ipuv3.0: initializing idma ch 21 @ ea8c0540
imx-ipuv3 imx-ipuv3.0: ch 21 word 0 - 00000000 60000000 00240000 E0000000 000FFC5F
imx-ipuv3 imx-ipuv3.0: ch 21 word 1 - 031C0000 00000000 2023C000 0000BFC0 0000017F
imx-ipuv3 imx-ipuv3.0: PFS 0x1,
imx-ipuv3 imx-ipuv3.0: BPP 0x0,
imx-ipuv3 imx-ipuv3.0: NPB 0xf
imx-ipuv3 imx-ipuv3.0: FW 767,
imx-ipuv3 imx-ipuv3.0: FH 1023,
imx-ipuv3 imx-ipuv3.0: EBA0 0x18e00000
imx-ipuv3 imx-ipuv3.0: EBA1 0x0
imx-ipuv3 imx-ipuv3.0: Stride 767
imx-ipuv3 imx-ipuv3.0: scan_order 0
imx-ipuv3 imx-ipuv3.0: uv_stride 383
imx-ipuv3 imx-ipuv3.0: u_offset 0xc0000
imx-ipuv3 imx-ipuv3.0: v_offset 0x120000
imx-ipuv3 imx-ipuv3.0: Width0 0+1,
imx-ipuv3 imx-ipuv3.0: Width1 0+1,
imx-ipuv3 imx-ipuv3.0: Width2 0+1,
imx-ipuv3 imx-ipuv3.0: Width3 0+1,
imx-ipuv3 imx-ipuv3.0: Offset0 31,
imx-ipuv3 imx-ipuv3.0: Offset1 11,
imx-ipuv3 imx-ipuv3.0: Offset2 0,
imx-ipuv3 imx-ipuv3.0: Offset3 0
imx-ipuv3 imx-ipuv3.0: init channel = 2
imx-ipuv3 imx-ipuv3.0: initializing idma ch 46 @ ea8c0b80
imx-ipuv3 imx-ipuv3.0: ch 46 word 0 - 00000000 60000000 00240000 E2A00000 000FFC5F
imx-ipuv3 imx-ipuv3.0: ch 46 word 1 - 031C0000 00000000 2021C000 0000BFC0 0000017F
imx-ipuv3 imx-ipuv3.0: PFS 0x1,
imx-ipuv3 imx-ipuv3.0: BPP 0x0,
imx-ipuv3 imx-ipuv3.0: NPB 0x7
imx-ipuv3 imx-ipuv3.0: FW 767,
imx-ipuv3 imx-ipuv3.0: FH 1023,
imx-ipuv3 imx-ipuv3.0: EBA0 0x18e00000
imx-ipuv3 imx-ipuv3.0: EBA1 0x0
imx-ipuv3 imx-ipuv3.0: Stride 767
imx-ipuv3 imx-ipuv3.0: scan_order 0
imx-ipuv3 imx-ipuv3.0: uv_stride 383
imx-ipuv3 imx-ipuv3.0: u_offset 0xc0000
imx-ipuv3 imx-ipuv3.0: v_offset 0x120000
imx-ipuv3 imx-ipuv3.0: Width0 0+1,
imx-ipuv3 imx-ipuv3.0: Width1 0+1,
imx-ipuv3 imx-ipuv3.0: Width2 0+1,
imx-ipuv3 imx-ipuv3.0: Width3 0+1,
imx-ipuv3 imx-ipuv3.0: Offset0 31,
imx-ipuv3 imx-ipuv3.0: Offset1 11,
imx-ipuv3 imx-ipuv3.0: Offset2 0,
imx-ipuv3 imx-ipuv3.0: Offset3 0
imx-ipuv3 imx-ipuv3.0: initializing idma ch 49 @ ea8c0c40
imx-ipuv3 imx-ipuv3.0: ch 49 word 0 - 00000000 60000000 00240000 E0200000 000BFC7F
imx-ipuv3 imx-ipuv3.0: ch 49 word 1 - 03000000 00000000 2021C000 0000FFC0 000001FF
imx-ipuv3 imx-ipuv3.0: PFS 0x1,
imx-ipuv3 imx-ipuv3.0: BPP 0x0,
imx-ipuv3 imx-ipuv3.0: NPB 0x7
imx-ipuv3 imx-ipuv3.0: FW 1023,
imx-ipuv3 imx-ipuv3.0: FH 767,
imx-ipuv3 imx-ipuv3.0: EBA0 0x18000000
imx-ipuv3 imx-ipuv3.0: EBA1 0x0
imx-ipuv3 imx-ipuv3.0: Stride 1023
imx-ipuv3 imx-ipuv3.0: scan_order 0
imx-ipuv3 imx-ipuv3.0: uv_stride 511
imx-ipuv3 imx-ipuv3.0: u_offset 0xc0000
imx-ipuv3 imx-ipuv3.0: v_offset 0x120000
imx-ipuv3 imx-ipuv3.0: Width0 0+1,
imx-ipuv3 imx-ipuv3.0: Width1 0+1,
imx-ipuv3 imx-ipuv3.0: Width2 0+1,
imx-ipuv3 imx-ipuv3.0: Width3 0+1,
imx-ipuv3 imx-ipuv3.0: Offset0 31,
imx-ipuv3 imx-ipuv3.0: Offset1 15,
imx-ipuv3 imx-ipuv3.0: Offset2 0,
imx-ipuv3 imx-ipuv3.0: Offset3 0