1. 24 Mar, 2017 4 commits
  2. 23 Mar, 2017 4 commits
    • Koji Matsuoka's avatar
      [media] soc-camera: fix rectangle adjustment in cropping · 8bc4793b
      Koji Matsuoka authored
      update_subrect() adjusts the sub-rectangle to be inside a base area.
      It checks width and height to not exceed those of the area, then it
      checks the low border (left or top) to lie within the area, then the
      high border (right or bottom) to lie there too. This latter check has
      a bug, which is fixed by this patch.
      Signed-off-by: default avatarKoji Matsuoka <koji.matsuoka.xm@renesas.com>
      Signed-off-by: default avatarYoshihiro Kaneko <ykaneko0929@gmail.com>
      [g.liakhovetski@gmx.de: dropped supposedly wrong hunks]
      Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      8bc4793b
    • Bhumika Goyal's avatar
      [media] media: i2c: soc_camera: constify v4l2_subdev_* structures · 6713c88f
      Bhumika Goyal authored
      v4l2_subdev_{core/video}_ops structures are stored in the
      fields of the v4l2_subdev_ops structure which are of type const.
      Also, v4l2_subdev_ops structure is passed to a function
      having its argument of type const. As these structures are never
      modified, so declare them as const.
      Done using Coccinelle: (One of the scripts used)
      
      @r1 disable optional_qualifier @
      identifier i;
      position p;
      @@
      static struct v4l2_subdev_video_ops i@p = {...};
      
      @ok1@
      identifier r1.i;
      position p;
      struct v4l2_subdev_ops obj;
      @@
      obj.video=&i@p;
      
      @bad@
      position p!={r1.p,ok1.p};
      identifier r1.i;
      @@
      i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r1.i;
      @@
      +const
      struct v4l2_subdev_video_ops i;
      
      File sizes before and after the changes:
         text	   data	    bss	    dec	    hex	filename
      
         3459	    696	      0	   4155	   103b	/media/i2c/soc_camera/imx074.o
         3835	    320	      0	   4155	   103b	/media/i2c/soc_camera/imx074.o
      
         4749	   1048	      8	   5805	   16ad	/media/i2c/soc_camera/mt9m001.o
         5133	    672	      8	   5813	   16b5	/media/i2c/soc_camera/mt9m001.o
      
         5658	   1112	      8	   6778	   1a7a	/media/i2c/soc_camera/mt9t031.o
         6042	    728	      8	   6778	   1a7a	/media/i2c/soc_camera/mt9t031.o
      
         6726	    784	      0	   7510	   1d56	/media/i2c/soc_camera/mt9t112.o
         7110	    408	      0	   7518	   1d5e	/media/i2c/soc_camera/mt9t112.o
      
         6700	    960	     16	   7676	   1dfc	/media/i2c/soc_camera/mt9v022.o
         7084	    584	     16	   7684	   1e04	/media/i2c/soc_camera/mt9v022.o
      
         5569	   1576	      8	   7153	   1bf1	/media/i2c/soc_camera/ov2640.o
         5953	   1200	      8	   7161	   1bf9	/media/i2c/soc_camera/ov2640.o
      
         3018	   2736	      0	   5754	   167a	/media/i2c/soc_camera/ov5642.o
         3394	   2352	      0	   5746	   1672	/media/i2c/soc_camera/ov5642.o
      
         8348	   2104	      8	  10460	   28dc	/media/i2c/soc_camera/ov6650.o
         8716	   1728	      8	  10452	   28d4	/media/i2c/soc_camera/ov6650.o
      
         4165	    696	      8	   4869	   1305	/media/i2c/soc_camera/ov772x.o
         4549	    320	      8	   4877	   130d	/media/i2c/soc_camera/ov772x.o
      
         4033	    608	      8	   4649	   1229	/media/i2c/soc_camera/ov9640.o
         4417	    232	      8	   4657	   1231	/media/i2c/soc_camera/ov9640.o
      
         4983	    784	      8	   5775	   168f	/media/i2c/soc_camera/ov9740.o
         5367	    408	      8	   5783	   1697	/media/i2c/soc_camera/ov9740.o
      
         8578	   1312	      8	   9898	   26aa i2c/soc_camera/rj54n1cb0c.o
         8962	    936	      8	   9906	   26b2 i2c/soc_camera/rj54n1cb0c.o
      
         3886	    696	      0	   4582	   11e6	/media/i2c/soc_camera/tw9910.o
         4270	    320	      0	   4590	   11ee	/media/i2c/soc_camera/tw9910.o
      Signed-off-by: default avatarBhumika Goyal <bhumirks@gmail.com>
      Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      6713c88f
    • Geliang Tang's avatar
      [media] sh_mobile_ceu_camera: use module_platform_driver · 855749a7
      Geliang Tang authored
      Use module_platform_driver() helper to simplify the code.
      Signed-off-by: default avatarGeliang Tang <geliangtang@gmail.com>
      Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      855749a7
    • Janusz Krzysztofik's avatar
      [media] media: i2c/soc_camera: fix ov6650 sensor getting wrong clock · 54449af0
      Janusz Krzysztofik authored
      After changes to v4l2_clk API introduced in v4.1 by commits a37462b9
      '[media] V4L: remove clock name from v4l2_clk API' and 4f528afc
      '[media] V4L: add CCF support to the v4l2_clk API', ov6650 sensor
      stopped responding because v4l2_clk_get(), still called with
      depreciated V4L2 clock name "mclk", started to return respective CCF
      clock instead of the V4l2 one registered by soc_camera. Fix it by
      calling v4l2_clk_get() with NULL clock name.
      
      Created and tested on Amstrad Delta against Linux-4.7-rc3 with
      omap1_camera fixes.
      Signed-off-by: default avatarJanusz Krzysztofik <jmkrzyszt@gmail.com>
      Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      54449af0
  3. 22 Mar, 2017 32 commits