Sorry for bothering, Thierry and Terje, do you guys have time to take a look at my questions? Thanks, -Bryan On Mon, Feb 10, 2014 at 4:08 PM, Bryan Wu <cooloney@xxxxxxxxx> wrote: > Ping, > > -Bryan > > On Thu, Feb 6, 2014 at 6:11 PM, Bryan Wu <cooloney@xxxxxxxxx> wrote: >> Hi Terje, >> >> Forget to add you to this email, could you please help to take a look >> at my questions? >> >> Thanks, >> -Bryan >> >> On Tue, Feb 4, 2014 at 3:51 PM, Bryan Wu <cooloney@xxxxxxxxx> wrote: >>> Hi Stephen and Thierry, >>> >>> Recently I'm working on upstreaming my V4L2 driver for Tegra video >>> input module, which is using host1x syncpt to wait for frame >>> capturing. >>> >>> So here is my basic steps for handling host1x syncpt, >>> >>> 1. Call host1x_syncpt_request(cam->client.dev, flags); to allocate >>> syncpts for my driver. >>> >>> 2. Program host1x_syncpt_id(sp) into Tegra VI syncpt event register. >>> So when VI captures one frame, syncpt will be increased one. >>> >>> 3. Call thresh = host1x_syncpt_incr_max(sp, 1) to incr max_val of the >>> syncpt, which is the threshold for waiting. >>> >>> 4. Start capture and wait for host1x syncpt event like this >>> host1x_syncpt_wait(sp, thresh, WAIT_TIMEOUT, &value); >>> >>> Is that the right sequence? >>> >>> host1x_syncpt_incr_max() is not exported and without calling it I >>> always got error message like this: >>> "tegra-host1x 50000000.host1x: syncpt_load failed: id=1, min=46, max=0, live=46" >>> So I have to increase the max_val manually like step 3. And >>> host1x_syncpt_incr() won't increase the max_val which will still >>> generate this error message. >>> >>> Actually with the steps I listed, I can capture data from real sensor now. >>> >>> Thanks, >>> -Bryan -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html