mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-22 09:11:26 +03:00
camera: Fix ISP prefence address calculation
If syncpoint_info is on page boundary the address calculation for where to write syncpoint address wraps to beginning of the page. Fix ISP prefence syncpoint address calculation on page boundary. Bug 4811006 Change-Id: I8b5b39c9ad55ff5b7c4d365588e27282258191d9 Signed-off-by: Matti Ryttylainen <mryttylainen@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3199341 Reviewed-by: Akihiro Mizusawa <amizusawa@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com> Reviewed-by: Semi Malinen <smalinen@nvidia.com> Reviewed-by: Frank Chen <frankc@nvidia.com>
This commit is contained in:
committed by
Jon Hunter
parent
21a95b938b
commit
5f010bd073
@@ -332,9 +332,13 @@ static int isp_capture_populate_fence_info(
|
||||
gos_info = ((((uint16_t)gos_offset << 16) | ((uint8_t)gos_index) << 8)
|
||||
& 0xFFFFFFFF);
|
||||
|
||||
reloc_page_addr += (((fence_offset + gos_relative) & PAGE_MASK) - (fence_offset & PAGE_MASK));
|
||||
|
||||
__raw_writeq(gos_info, (void __iomem *)(reloc_page_addr +
|
||||
((fence_offset + gos_relative) & ~PAGE_MASK)));
|
||||
|
||||
reloc_page_addr += (((fence_offset + sp_relative) & PAGE_MASK) - ((fence_offset + gos_relative) & PAGE_MASK));
|
||||
|
||||
__raw_writeq((uint64_t)syncpt_addr, (void __iomem *)(reloc_page_addr +
|
||||
((fence_offset + sp_relative) & ~PAGE_MASK)));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user