Skip to contentSkip to conversation

ISP buffer issue

DISCUSSION Gary Thomas 2 participants 3 messages Aug 4, 2009 – Aug 6, 2009

lore
Share & tools
lore
#0 lore raw

I'm having trouble with the OMAP3 camera (ISP) support when I have a large sensor. I'm working with a 3M CCD sensor which has a native resolution of 2048x1536. The problem is when I run V4L2 code which tries to allocate & map buffers for input streaming. If the frame is much bigger than PAL size (720x576) the system hangs.

I traced this into the ISP layer and found that when the buffer being allocated is over 1MB, this happens:
isp_tmp_buf_alloc: allocating 1531904 bytes
which eventually fails in iommu_vmalloc()

Looking at the code, there seems to be some magic here - the buffer allocation falls over if the request is large. I'm working from this code:
http://arago-project.org/git/people/vaibhav/ti-psp-omap-video.git
starting from commit (ti_display head on 2009-07-23)
6810d6d683e768c3bc6b5647c214804045665e22

Ideas?

Thanks

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#1 lore raw
Quoted 12 lines · Gary Thomas

I'm having trouble with the OMAP3 camera (ISP) support when I have a large sensor. I'm working with a 3M CCD sensor which has a native resolution of 2048x1536. The problem is when I run V4L2 code which tries to allocate & map buffers for input streaming. If the frame is much bigger than PAL size (720x576) the system hangs.

I traced this into the ISP layer and found that when the buffer being allocated is over 1MB, this happens:
isp_tmp_buf_alloc: allocating 1531904 bytes
which eventually fails in iommu_vmalloc()

Quoted 6 lines

Looking at the code, there seems to be some magic here - the buffer allocation falls over if the request is large. I'm working from this code:
http://arago-project.org/git/people/vaibhav/ti-psp-omap-video.git
starting from commit (ti_display head on 2009-07-23)
6810d6d683e768c3bc6b5647c214804045665e22

Hiroshi - I CC'd you directly as this code seems to be yours. Could you comment on my problem?

Thanks

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#2 lore raw

From: ext Gary Thomas <[email protected]>
Subject: Re: ISP buffer issue
Date: Thu, 6 Aug 2009 16:30:29 +0200

Quoted 20 lines
Quoted 12 lines · Gary Thomas

I'm having trouble with the OMAP3 camera (ISP) support when I have a large sensor. I'm working with a 3M CCD sensor which has a native resolution of 2048x1536. The problem is when I run V4L2 code which tries to allocate & map buffers for input streaming. If the frame is much bigger than PAL size (720x576) the system hangs.

I traced this into the ISP layer and found that when the buffer being allocated is over 1MB, this happens:
isp_tmp_buf_alloc: allocating 1531904 bytes
which eventually fails in iommu_vmalloc()

Quoted 6 lines

Looking at the code, there seems to be some magic here - the buffer allocation falls over if the request is large. I'm working from this code:
http://arago-project.org/git/people/vaibhav/ti-psp-omap-video.git
starting from commit (ti_display head on 2009-07-23)
6810d6d683e768c3bc6b5647c214804045665e22

Quoted 2 lines

Hiroshi - I CC'd you directly as this code seems to be yours. Could you comment on my problem?

Can you point out which function returns error in iommu_vmalloc()?