From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Date: Wed, 18 Mar 2015 13:23:50 +0000 Subject: Re: [PATCH/RFC] v4l: vsp1: Change VSP1 LIF linebuffer FIFO Message-Id: <35670369.0N4n9OXz2m@avalon> List-Id: References: <1426430018-3172-1-git-send-email-ykaneko0929@gmail.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Geert Uytterhoeven Cc: Yoshihiro Kaneko , Yoshifumi Hosoya , Linux Media Mailing List , Mauro Carvalho Chehab , Laurent Pinchart , Simon Horman , Magnus Damm , Linux-sh list Hello, On Monday 16 March 2015 09:06:22 Geert Uytterhoeven wrote: > On Sun, Mar 15, 2015 at 3:33 PM, Yoshihiro Kaneko wrote: > > From: Yoshifumi Hosoya > > > > Change to VSPD hardware recommended value. > > Purpose is highest pixel clock without underruns. > > In the default R-Car Linux BSP config this value is > > wrong and therefore there are many underruns. > > > > Here are the original settings: > > HBTH = 1300 (VSPD stops when 1300 pixels are buffered) > > LBTH = 200 (VSPD resumes when buffer level has decreased > > below 200 pixels) > > > > The display underruns can be eliminated > > by applying the following settings: > > HBTH = 1504 > > LBTH = 1248 > > > > --- a/drivers/media/platform/vsp1/vsp1_lif.c > > +++ b/drivers/media/platform/vsp1/vsp1_lif.c > > @@ -44,9 +44,9 @@ static int lif_s_stream(struct v4l2_subdev *subdev, int > > enable) > > { > > const struct v4l2_mbus_framefmt *format; > > struct vsp1_lif *lif = to_lif(subdev); > > - unsigned int hbth = 1300; > > - unsigned int obth = 400; > > - unsigned int lbth = 200; > > + unsigned int hbth = 1536; > > + unsigned int obth = 128; > > + unsigned int lbth = 1520; > > These values don't match the patch description? Indeed. And where do these values come from ? A 16 bytes hysteresis is very small, the VSP1 will constantly start and stop. Isn't that bad from a power consumption point of view ? > BTW, what's the significance of changing obth? -- Regards, Laurent Pinchart