fimc-is: Set all buffer queues as bidirectional
authorSylwester Nawrocki <s.nawrocki@samsung.com>
Tue, 3 Apr 2018 13:34:36 +0000 (15:34 +0200)
committerJunghoon Kim <jhoon20.kim@samsung.com>
Thu, 14 Feb 2019 05:57:23 +0000 (14:57 +0900)
commita58d5f07f52f1b1b776e21115349878e97d5d5bf
treee0e620f4d553e10384c480f1427f3016cf1d1572
parent091bef148170e7beecaba656c6c3f333264acbfa
fimc-is: Set all buffer queues as bidirectional

This prevent SYSMMU fault from FIMC-IS CPU access:

[   42.220252] exynos-sysmmu 142d0000.sysmmu: 14180000.fimc_is: AW ACCESS PROTECTION FAULT occurred at 0x7ff98af0
[   42.220634] ------------[ cut here ]------------
[   42.222578] kernel BUG at drivers/iommu/exynos-iommu.c:449!
[   42.228136] Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
[   42.233602] Modules linked in:
[   42.236641] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G        W       4.14.24+ #154
[   42.244105] Hardware name: Samsung TM2 board (DT)
[   42.248790] task: ffffff800905eb80 task.stack: ffffff8009040000
[   42.254699] PC is at exynos_sysmmu_irq+0x17c/0x188
[   42.259468] LR is at exynos_sysmmu_irq+0x108/0x188
[   42.264241] pc : [<ffffff80084d68b4>] lr : [<ffffff80084d6840>] pstate: 600001c5
[   42.271620] sp : ffffff8008003e00
[   42.274915] x29: ffffff8008003e00 x28: ffffff8009031010
[   42.280211] x27: ffffff8009043db0 x26: ffffff8009031000
[   42.285506] x25: ffffff800913c000 x24: 000000007ff98af0
[   42.290800] x23: ffffffc0c9c4a918 x22: 0000000000000064
[   42.296095] x21: ffffffc0c9c4a958 x20: 0000000000000013
[   42.301390] x19: ffffff8008ad87c8 x18: 0000000000000010
[   42.306685] x17: 0000000000000000 x16: fffffffffffffffe
[   42.311980] x15: ffffff8089180f9f x14: 0720072007200720
[   42.317275] x13: 0720072007200720 x12: 0720072007200720
[   42.322569] x11: 0720072007200720 x10: 0720072007200720
[   42.327864] x9 : 0720072007200720 x8 : 0720072007200720
[   42.333159] x7 : 0720072007200720 x6 : 00000000000003cb
[   42.338454] x5 : 0000000000000000 x4 : 0000000000000000
[   42.343748] x3 : 0000000000000001 x2 : 000000007ff98af0
[   42.349044] x1 : ffffff8009140c80 x0 : 00000000ffffffda
[   42.354340] Process swapper/0 (pid: 0, stack limit = 0xffffff8009040000)
[   42.361024] Call trace:
[   42.363451] Exception stack(0xffffff8008003cc0 to 0xffffff8008003e00)
[   42.369879] 3cc0: 00000000ffffffda ffffff8009140c80 000000007ff98af0 0000000000000001
[   42.377692] 3ce0: 0000000000000000 0000000000000000 00000000000003cb 0720072007200720
[   42.385504] 3d00: 0720072007200720 0720072007200720 0720072007200720 0720072007200720
[   42.393317] 3d20: 0720072007200720 0720072007200720 0720072007200720 ffffff8089180f9f
[   42.401128] 3d40: fffffffffffffffe 0000000000000000 0000000000000010 ffffff8008ad87c8
[   42.408940] 3d60: 0000000000000013 ffffffc0c9c4a958 0000000000000064 ffffffc0c9c4a918
[   42.416753] 3d80: 000000007ff98af0 ffffff800913c000 ffffff8009031000 ffffff8009043db0
[   42.424564] 3da0: ffffff8009031010 ffffff8008003e00 ffffff80084d6840 ffffff8008003e00
[   42.432376] 3dc0: ffffff80084d68b4 00000000600001c5 ffffff8008ad87c8 0000000000000013
[   42.440189] 3de0: 0000007fffffffff 0000000000000064 ffffff8008003e00 ffffff80084d68b4
[   42.448001] [<ffffff80084d68b4>] exynos_sysmmu_irq+0x17c/0x188
[   42.453817] [<ffffff80080f4b14>] __handle_irq_event_percpu+0x64/0x280
[   42.460238] [<ffffff80080f4d4c>] handle_irq_event_percpu+0x1c/0x58
[   42.466400] [<ffffff80080f4dd0>] handle_irq_event+0x48/0x78
[   42.471956] [<ffffff80080f8a34>] handle_fasteoi_irq+0xbc/0x1b0
[   42.477772] [<ffffff80080f3bac>] generic_handle_irq+0x24/0x38
[   42.483499] [<ffffff80080f426c>] __handle_domain_irq+0x84/0xf8
[   42.489315] [<ffffff80080817c8>] gic_handle_irq+0x68/0xc8
[   42.494695] Exception stack(0xffffff8009043db0 to 0xffffff8009043ef0)
[   42.501119] 3da0:                                   0000000000000000 ffffff8008e3c628
[   42.508934] 3dc0: ffffff8009031010 0000000000000001 00000040d657b000 0000000000005dc0
[   42.516746] 3de0: 0000000000000008 0000000000000000 0000000000000002 ffffff8009043e70
[   42.524558] 3e00: 0000000000000980 000000000011fa88 0000000000000000 0000000000000001
[   42.532370] 3e20: 0000000000000000 ffffff8089180f9f fffffffffffffffe 0000000000000000
[   42.540183] 3e40: 0000000000000010 ffffff800913c000 ffffff800913ce78 0000000000000000
[   42.547993] 3e60: ffffff8008e1ee50 0000000000000000 0000000000000000 ffffff800905eb80
[   42.555806] 3e80: 00000000df6e4808 0000000000000000 0000000020f80018 ffffff8009043ef0
[   42.563618] 3ea0: ffffff8008085de0 ffffff8009043ef0 ffffff8008085de4 0000000060000145
[   42.571430] 3ec0: ffffff800903b048 ffffff8008e1ee50 ffffffffffffffff ffffff8009052000
[   42.579241] 3ee0: ffffff8009043ef0 ffffff8008085de4
[   42.584100] [<ffffff8008083130>] el1_irq+0xb0/0x124
[   42.588962] [<ffffff8008085de4>] arch_cpu_idle+0x34/0x1c8
[   42.594344] [<ffffff80080e2b1c>] do_idle+0x114/0x1e0
[   42.599289] [<ffffff80080e2d84>] cpu_startup_entry+0x24/0x28
[   42.604935] [<ffffff8008a390c8>] rest_init+0xc8/0xd8
[   42.609883] [<ffffff8008f80b94>] start_kernel+0x39c/0x3b0
[   42.615264] Code: 2a1803e4 9401e0bc f94032e0 b5fffbe0 (d4210000)
[   42.621339] ---[ end trace f42ebbac31eb0484 ]---

Change-Id: I2467a1646a6c6cdcb6898fd4911cb64f9f0d658e
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
drivers/media/platform/exynos/fimc-is/fimc-is-video.c