1. 17 Apr, 2018 32 commits
    • Mauro Carvalho Chehab's avatar
      media: vpbe_display: properly handle error case · 693035dc
      Mauro Carvalho Chehab authored
      if v4l2_subdev_call(..., VENC_GET_FLD,...) fails, it
      currently returns a random value. Instead, return 1.
      
      That's probably better than returning 0, as this is very
      likely what happens in practice with the current code, as
      as the probably of an unititialized 32 bits integer to
      have an specific value (0, in this case), is 1/(2^32).
      
      An alternative would be to return an error code, and
      let the caller to hint, based on the past received
      frame, but that sounds weird.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      693035dc
    • Mauro Carvalho Chehab's avatar
      media: mmp-driver: add needed __iomem marks to power_regs · bef6b894
      Mauro Carvalho Chehab authored
      Solve those warnings:
      
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:135:41:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:136:44:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:174:38:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:175:38:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48: warning: incorrect type in argument 1 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:195:48:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:196:55:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:197:54:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48: warning: incorrect type in argument 1 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:202:48:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:203:55:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54: warning: incorrect type in argument 2 (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54:    expected void [noderef] <asn:2>*<noident>
          drivers/media/platform/marvell-ccic/mmp-driver.c:204:54:    got void *
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25:    expected void *power_regs
          drivers/media/platform/marvell-ccic/mmp-driver.c:389:25:    got void [noderef] <asn:2>*
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      bef6b894
    • Mauro Carvalho Chehab's avatar
      media: davinci: fix an inconsistent ident · 3022b988
      Mauro Carvalho Chehab authored
      drivers/media/platform/davinci/vpbe_osd.c:849 try_layer_config() warn: inconsistent indenting
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3022b988
    • Mauro Carvalho Chehab's avatar
      media: isif: reorder a statement to match coding style · 09821dfd
      Mauro Carvalho Chehab authored
      On all places, we do:
      	void <asn_ref> *foo;
      
      Here, it is doing, instead:
      	void * <asn_ref> foo;
      
      That tricks static analyzers, making it see errors where
      there's none. So, just reorder in order to cleanup those
      warnings:
      
          drivers/media/platform/davinci/isif.c:1066:22: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1066:22:    expected void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1066:22:    got void [noderef] <asn:2>*
          drivers/media/platform/davinci/isif.c:1074:44: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1074:44:    expected void [noderef] <asn:2>*static [toplevel] [assigned] base_addr
          drivers/media/platform/davinci/isif.c:1074:44:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1078:51: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1078:51:    expected void [noderef] <asn:2>*static [toplevel] [assigned] linear_tbl0_addr
          drivers/media/platform/davinci/isif.c:1078:51:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1082:51: warning: incorrect type in assignment (different address spaces)
          drivers/media/platform/davinci/isif.c:1082:51:    expected void [noderef] <asn:2>*static [toplevel] [assigned] linear_tbl1_addr
          drivers/media/platform/davinci/isif.c:1082:51:    got void *[noderef] <asn:2>addr
          drivers/media/platform/davinci/isif.c:1067:22: warning: dereference of noderef expression
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      09821dfd
    • Mauro Carvalho Chehab's avatar
      media: si470x: fix __be16 annotations · 90db5c82
      Mauro Carvalho Chehab authored
      The annotations there are wrong as warned:
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:107:35: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24: warning: incorrect type in assignment (different base types)
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24:    expected unsigned short [unsigned] [short] <noident>
         drivers/media/radio/si470x/radio-si470x-i2c.c:129:24:    got restricted __be16 [usertype] <noident>
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
         drivers/media/radio/si470x/radio-si470x-i2c.c:163:39: warning: cast to restricted __be16
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      90db5c82
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix __user annotations · 644ddbe1
      Mauro Carvalho Chehab authored
      The __user annotations on this driver are wrong, causing lots
      of warnings:
      
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22: warning: incorrect type in assignment (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22:    expected void [noderef] <asn:1>*from
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1269:22:    got void *[noderef] <asn:1><noident>
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20: warning: incorrect type in assignment (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20:    expected void [noderef] <asn:1>*to
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1313:20:    got void *[noderef] <asn:1><noident>
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41: warning: incorrect type in initializer (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41:    expected struct ipipeif_params *config
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:424:41:    got void [noderef] <asn:1>*arg
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46: warning: incorrect type in argument 2 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46:    expected void [noderef] <asn:1>*arg
          drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:474:46:    got void *arg
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32: warning: incorrect type in argument 2 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32:    expected void const [noderef] <asn:1>*from
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:922:32:    got struct vpfe_rsz_config_params *config
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27: warning: incorrect type in argument 1 (different address spaces)
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27:    expected void [noderef] <asn:1>*to
          drivers/staging/media/davinci_vpfe/dm365_resizer.c:945:27:    got void *<noident>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      644ddbe1
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: cleanup ipipe_[g|s]_config logic · aa8485d6
      Mauro Carvalho Chehab authored
      Reduce one ident level inside those functions and use BIT()
      macro.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      aa8485d6
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix a typo for "default" · b2f92225
      Mauro Carvalho Chehab authored
      resizer_set_defualt_configuration -> resizer_set_default_configuration
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b2f92225
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: don't use kernel-doc markup for simple comments · 89d4318a
      Mauro Carvalho Chehab authored
      Fix those two warnings:
         drivers/staging/media/davinci_vpfe/vpfe_mc_capture.c:90: warning: Function parameter or member 'interface' not described in 'MODULE_PARM_DESC'
         drivers/staging/media/davinci_vpfe/vpfe_mc_capture.c:90: warning: Function parameter or member '(default' not described in 'MODULE_PARM_DESC'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      89d4318a
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: vpfe_video: remove an unused var · 58594098
      Mauro Carvalho Chehab authored
      as warned:
      
        drivers/staging/media/davinci_vpfe/vpfe_video.c: In function 'vpfe_streamon':
        drivers/staging/media/davinci_vpfe/vpfe_video.c:1471:31: warning: variable 'sdinfo' set but not used [-Wunused-but-set-variable]
          struct vpfe_ext_subdev_info *sdinfo;
                                     ^~~~~~
      
      While here, cleanup this kernel-doc warning:
      
        drivers/staging/media/davinci_vpfe/vpfe_video.c:225: warning: Function parameter or member 'pipe' not described in 'vpfe_video_validate_pipeline'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      58594098
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: get rid of an unused var at dm365_isif.c · 9d52210a
      Mauro Carvalho Chehab authored
      Not sure what was the original idea here, but the implementation
      went into a different way, and the fmt var is not used
      anymore, as warned:
      
      drivers/staging/media/davinci_vpfe/dm365_isif.c: In function '__isif_get_format':
      drivers/staging/media/davinci_vpfe/dm365_isif.c:1401:29: warning: variable 'fmt' set but not used [-Wunused-but-set-variable]
         struct v4l2_subdev_format fmt;
                                   ^~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      9d52210a
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: mark __iomem as such · 1ac9fe8c
      Mauro Carvalho Chehab authored
      There are several usages of an __iomem memory that aren't
      marked as such, causing those warnings:
      
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27: warning: incorrect type in assignment (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:201:27:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42: warning: incorrect type in initializer (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:510:42:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27: warning: incorrect type in argument 1 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    expected void const volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:71:27:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42: warning: incorrect type in initializer (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42:    expected void *ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:797:42:    got void [noderef] <asn:2>*ipipeif_base_addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/staging/media/davinci_vpfe/dm365_ipipeif.c:76:26:    got void *
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      1ac9fe8c
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: fix vpfe_ipipe_init() error handling · 3585fdc7
      Mauro Carvalho Chehab authored
      As warned:
      	drivers/staging/media/davinci_vpfe/dm365_ipipe.c:1834 vpfe_ipipe_init() error: we previously assumed 'res' could be null (see line 1797)
      
      There's something wrong at vpfe_ipipe_init():
      
      1) it caches the resourse_size() from from the first region
         and reuses to the second region;
      
      2) the "res" var is overridden 3 times;
      
      3) at free logic, it assumes that "res->start" is not
         overridden by platform_get_resource(pdev, IORESOURCE_MEM, 6),
         but that's not true, as it can even be NULL there.
      
      This patch fixes the above issues by:
      
      a) store the resources used by release_mem_region() on
         a separate var;
      
      b) stop caching resource_size(), using the function where
         needed.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3585fdc7
    • Mauro Carvalho Chehab's avatar
      media: dm365_ipipe: remove an unused var · a8a04370
      Mauro Carvalho Chehab authored
      drivers/staging/media/davinci_vpfe/dm365_ipipe.c:74:17: warning: variable 'dev' set but not used [-Wunused-but-set-variable]
        struct device *dev;
                       ^~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      a8a04370
    • Mauro Carvalho Chehab's avatar
      media: davinci_vpfe: remove useless checks from ipipe · 3d37383b
      Mauro Carvalho Chehab authored
      The dm365_ipipe_hw.c and dm365_ipipe.c file check if several table
      pointers, declared at davinci_vpfe_user.h, are filled before using
      them.
      
      The problem is that those pointers come from struct declarations
      like:
      
      	struct vpfe_ipipe_yee {
      	...
      	short table[VPFE_IPIPE_MAX_SIZE_YEE_LUT];
      	};
      
      So, they can't be NULL! Solve those warnings:
      
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:433 ipipe_set_lutdpc_regs() warn: this array is probably non-NULL. 'dpc->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:763 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_r'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:766 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_b'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:769 ipipe_set_gamma_regs() warn: this array is probably non-NULL. 'gamma->table_g'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:791 ipipe_set_3d_lut_regs() warn: this array is probably non-NULL. 'lut_3d->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:903 ipipe_set_gbce_regs() warn: this array is probably non-NULL. 'gbce->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe_hw.c:946 ipipe_set_ee_regs() warn: this array is probably non-NULL. 'ee->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:59 ipipe_validate_lutdpc_params() warn: this array is probably non-NULL. 'lutdpc->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:697 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_r'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:705 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_g'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:712 ipipe_get_gamma_params() warn: this array is probably non-NULL. 'gamma_param->table_b'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:745 ipipe_get_3d_lut_params() warn: this array is probably non-NULL. 'lut_param->table'
          drivers/staging/media/davinci_vpfe/dm365_ipipe.c:926 ipipe_get_gbce_params() warn: this array is probably non-NULL. 'gbce_param->table'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3d37383b
    • Mauro Carvalho Chehab's avatar
      media: staging: davinci_vpfe: allow building with COMPILE_TEST · 4907c73d
      Mauro Carvalho Chehab authored
      This is a little bit hashish, but this driver is at staging,
      so it won't become worse.
      
      With this small change at Makefile, we can now build it with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      4907c73d
    • Mauro Carvalho Chehab's avatar
      media: si470x: allow build both USB and I2C at the same time · 58757984
      Mauro Carvalho Chehab authored
      Currently, either USB or I2C is built. Change it to allow
      having both enabled at the same time.
      
      The main reason is that COMPILE_TEST all[yes/mod]builds will
      now contain all drivers under drivers/media.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      58757984
    • Mauro Carvalho Chehab's avatar
      media: omap4iss: make it build with COMPILE_TEST · 84fc727e
      Mauro Carvalho Chehab authored
      This driver compile as-is with COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      84fc727e
    • Mauro Carvalho Chehab's avatar
      media: omap: allow building it with COMPILE_TEST · 7f8e175a
      Mauro Carvalho Chehab authored
      Now that we have stubs for omap FB driver, let it build with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      7f8e175a
    • Mauro Carvalho Chehab's avatar
      media: omap2: omapfb: allow building it with COMPILE_TEST · 7378f114
      Mauro Carvalho Chehab authored
      This driver builds cleanly with COMPILE_TEST, and it is
      needed in order to allow building drivers/media omap2
      driver.
      
      So, change the logic there to allow building it.
      Acked-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      7378f114
    • Mauro Carvalho Chehab's avatar
      media: davinci: get rid of lots of kernel-doc warnings · e199fa7c
      Mauro Carvalho Chehab authored
      Driver build produce lots of warnings due to wrong kernel-doc markups:
      
          drivers/media/platform/davinci/vpbe.c:60: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_current_encoder_info'
          drivers/media/platform/davinci/vpbe.c:78: warning: Function parameter or member 'cfg' not described in 'vpbe_find_encoder_sd_index'
          drivers/media/platform/davinci/vpbe.c:78: warning: Function parameter or member 'index' not described in 'vpbe_find_encoder_sd_index'
          drivers/media/platform/davinci/vpbe.c:105: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_cropcap'
          drivers/media/platform/davinci/vpbe.c:105: warning: Function parameter or member 'cropcap' not described in 'vpbe_g_cropcap'
          drivers/media/platform/davinci/vpbe.c:127: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_enum_outputs'
          drivers/media/platform/davinci/vpbe.c:127: warning: Function parameter or member 'output' not described in 'vpbe_enum_outputs'
          drivers/media/platform/davinci/vpbe.c:221: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_set_output'
          drivers/media/platform/davinci/vpbe.c:221: warning: Function parameter or member 'index' not described in 'vpbe_set_output'
          drivers/media/platform/davinci/vpbe.c:316: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_get_output'
          drivers/media/platform/davinci/vpbe.c:328: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_s_dv_timings'
          drivers/media/platform/davinci/vpbe.c:328: warning: Function parameter or member 'dv_timings' not described in 'vpbe_s_dv_timings'
          drivers/media/platform/davinci/vpbe.c:380: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_dv_timings'
          drivers/media/platform/davinci/vpbe.c:380: warning: Function parameter or member 'dv_timings' not described in 'vpbe_g_dv_timings'
          drivers/media/platform/davinci/vpbe.c:405: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_enum_dv_timings'
          drivers/media/platform/davinci/vpbe.c:405: warning: Function parameter or member 'timings' not described in 'vpbe_enum_dv_timings'
          drivers/media/platform/davinci/vpbe.c:436: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_s_std'
          drivers/media/platform/davinci/vpbe.c:436: warning: Function parameter or member 'std_id' not described in 'vpbe_s_std'
          drivers/media/platform/davinci/vpbe.c:475: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_g_std'
          drivers/media/platform/davinci/vpbe.c:475: warning: Function parameter or member 'std_id' not described in 'vpbe_g_std'
          drivers/media/platform/davinci/vpbe.c:500: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_set_mode'
          drivers/media/platform/davinci/vpbe.c:500: warning: Function parameter or member 'mode_info' not described in 'vpbe_set_mode'
          drivers/media/platform/davinci/vpbe.c:585: warning: Function parameter or member 'dev' not described in 'vpbe_initialize'
          drivers/media/platform/davinci/vpbe.c:585: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_initialize'
          drivers/media/platform/davinci/vpbe.c:779: warning: Function parameter or member 'dev' not described in 'vpbe_deinitialize'
          drivers/media/platform/davinci/vpbe.c:779: warning: Function parameter or member 'vpbe_dev' not described in 'vpbe_deinitialize'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'sd' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'field_inversion' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'fb_base_phys' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:144: warning: Function parameter or member 'lconfig' not described in '_osd_dm6446_vid0_pingpong'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'sd' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'layer' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_osd.c:799: warning: Function parameter or member 'lconfig' not described in 'try_layer_config'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'disp_dev' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'pixfmt' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:578: warning: Function parameter or member 'check' not described in 'vpbe_try_format'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'file' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:943: warning: Function parameter or member 'std_id' not described in 'vpbe_display_s_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'file' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:975: warning: Function parameter or member 'std_id' not described in 'vpbe_display_g_std'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'file' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'priv' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:998: warning: Function parameter or member 'output' not described in 'vpbe_display_enum_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'file' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1025: warning: Function parameter or member 'i' not described in 'vpbe_display_s_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'file' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1054: warning: Function parameter or member 'i' not described in 'vpbe_display_g_output'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'file' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'priv' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1074: warning: Function parameter or member 'timings' not described in 'vpbe_display_enum_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'file' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'priv' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1104: warning: Function parameter or member 'timings' not described in 'vpbe_display_s_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'file' not described in 'vpbe_display_g_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'priv' not described in 'vpbe_display_g_dv_timings'
          drivers/media/platform/davinci/vpbe_display.c:1137: warning: Function parameter or member 'dv_timings' not described in 'vpbe_display_g_dv_timings'
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      e199fa7c
    • Mauro Carvalho Chehab's avatar
      media: vpbe_venc: don't store return codes if they won't be used · 79eab28d
      Mauro Carvalho Chehab authored
      Fix those two warnings
      
      drivers/media/platform/davinci/vpbe_venc.c: In function ‘venc_set_ntsc’:
      drivers/media/platform/davinci/vpbe_venc.c:230:6: warning: variable ‘val’ set but not used [-Wunused-but-set-variable]
        u32 val;
            ^~~
      drivers/media/platform/davinci/vpbe_venc.c: In function ‘venc_sub_dev_init’:
      drivers/media/platform/davinci/vpbe_venc.c:611:6: warning: variable ‘err’ set but not used [-Wunused-but-set-variable]
        int err;
            ^~~
        AR      drivers/media/platform/davinci/built-in.a
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      79eab28d
    • Mauro Carvalho Chehab's avatar
      media: davinci: allow build vpbe_display with COMPILE_TEST · 05c90900
      Mauro Carvalho Chehab authored
      Except for some includes (with doesn't seem to be used), this
      driver builds fine with COMPILE_TEST.
      
      So, add checks there to avoid building it if ARCH_DAVINCI
      is not selected.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      05c90900
    • Mauro Carvalho Chehab's avatar
      media: davinci: allow building isif code · b8952ee6
      Mauro Carvalho Chehab authored
      The only reason why this driver doesn't build with COMPILE_TEST
      is because it includes mach/mux.h. It turns that none of the
      macros defined there are used.
      
      So, get rid of it, in order to allow it to build with
      COMPILE_TEST.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b8952ee6
    • Mauro Carvalho Chehab's avatar
      media: mmp-driver: make two functions static · e81afa6f
      Mauro Carvalho Chehab authored
      Those functions are used only internally:
      
        CC      drivers/media/platform/marvell-ccic/mmp-driver.o
      drivers/media/platform/marvell-ccic/mmp-driver.c:186:6: warning: no previous prototype for ‘mcam_ctlr_reset’ [-Wmissing-prototypes]
       void mcam_ctlr_reset(struct mcam_camera *mcam)
            ^~~~~~~~~~~~~~~
      drivers/media/platform/marvell-ccic/mmp-driver.c:217:6: warning: no previous prototype for ‘mmpcam_calc_dphy’ [-Wmissing-prototypes]
       void mmpcam_calc_dphy(struct mcam_camera *mcam)
            ^~~~~~~~~~~~~~~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      e81afa6f
    • Mauro Carvalho Chehab's avatar
      media: marvel-ccic: re-enable mmp-driver build · 0a9c643c
      Mauro Carvalho Chehab authored
      This driver was disabled back in 2015 from builds because
      of some troubles with the platform_data definition. Now
      that this got fixed, re-enable it.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      0a9c643c
    • Mauro Carvalho Chehab's avatar
      media: mmp-camera.h: add missing platform data · 8b4aa4d8
      Mauro Carvalho Chehab authored
      Those definitions used to be part of the original patch:
      	https://patchwork.kernel.org/patch/2815221/
      
      But, somehow, nobody ever noticed until today. Years later,
      Arnd discovered that mmp-camera driver doesn't build and make
      it depend on BROKEN.
      
      Add the missing bits here, in order to remove BROKEN dependency.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      8b4aa4d8
    • Mauro Carvalho Chehab's avatar
      media: exymos4-is: allow compile test for EXYNOS FIMC-LITE · b29c0dda
      Mauro Carvalho Chehab authored
      There's nothing that prevents building this driver with
      COMPILE_TEST. So, enable it.
      
      While here, make the Kconfig dependency cleaner by removing
      the unneeded if block.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b29c0dda
    • Mauro Carvalho Chehab's avatar
      media: cec_gpio: allow building CEC_GPIO with COMPILE_TEST · b5d9f09e
      Mauro Carvalho Chehab authored
      At least on i386, building with allyesconfig doesn't enable
      PREEMPT, causing cec_gpio to not build.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      b5d9f09e
    • Mauro Carvalho Chehab's avatar
      media: fsl-viu: allow building it with COMPILE_TEST · 29d75068
      Mauro Carvalho Chehab authored
      There aren't many things that would be needed to allow it
      to build with compile test.
      
      Add the needed bits.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      29d75068
    • Mauro Carvalho Chehab's avatar
      media: fsl-viu: mark static functions as such · adfcf2e9
      Mauro Carvalho Chehab authored
      There are several functions that are used only inside the
      driver. Stop exposing that to global symbolspace.
      
      Get rid of the following gcc warnings:
      
      drivers/media/platform/fsl-viu.c:240:17: warning: no previous prototype for ‘format_by_fourcc’ [-Wmissing-prototypes]
       struct viu_fmt *format_by_fourcc(int fourcc)
                       ^~~~~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:253:6: warning: no previous prototype for ‘viu_start_dma’ [-Wmissing-prototypes]
       void viu_start_dma(struct viu_dev *dev)
            ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:262:6: warning: no previous prototype for ‘viu_stop_dma’ [-Wmissing-prototypes]
       void viu_stop_dma(struct viu_dev *dev)
            ^~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:807:5: warning: no previous prototype for ‘vidioc_g_fbuf’ [-Wmissing-prototypes]
       int vidioc_g_fbuf(struct file *file, void *priv, struct v4l2_framebuffer *arg)
           ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c:818:5: warning: no previous prototype for ‘vidioc_s_fbuf’ [-Wmissing-prototypes]
       int vidioc_s_fbuf(struct file *file, void *priv, const struct v4l2_framebuffer *arg)
           ^~~~~~~~~~~~~
      drivers/media/platform/fsl-viu.c: In function ‘viu_open’:
      drivers/media/platform/fsl-viu.c:1170:6: warning: variable ‘status_cfg’ set but not used [-Wunused-but-set-variable]
        u32 status_cfg;
            ^~~~~~~~~~
      drivers/media/platform/fsl-viu.c: At top level:
      drivers/media/platform/fsl-viu.c:1304:6: warning: no previous prototype for ‘viu_reset’ [-Wmissing-prototypes]
       void viu_reset(struct viu_reg *reg)
            ^~~~~~~~~
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      adfcf2e9
    • Mauro Carvalho Chehab's avatar
      media: omap3isp/isp: remove an unused static var · 3f4836be
      Mauro Carvalho Chehab authored
      The isp_xclk_init_data const data isn't used anywere.
      
      drivers/media/platform/omap3isp/isp.c:294:35: warning: ‘isp_xclk_init_data’ defined but not used [-Wunused-const-variable=]
       static const struct clk_init_data isp_xclk_init_data = {
                                         ^~~~~~~~~~~~~~~~~~
      
      Fixes: 9b28ee3c ("[media] omap3isp: Use the common clock framework")
      Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      3f4836be
  2. 16 Apr, 2018 5 commits
    • Linus Torvalds's avatar
      Linux 4.17-rc1 · 60cc43fc
      Linus Torvalds authored
      60cc43fc
    • Linus Torvalds's avatar
      Merge tag 'for-4.17-part2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · e37563bb
      Linus Torvalds authored
      Pull more btrfs updates from David Sterba:
       "We have queued a few more fixes (error handling, log replay,
        softlockup) and the rest is SPDX updates that touche almost all files
        so the diffstat is long"
      
      * tag 'for-4.17-part2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux:
        btrfs: Only check first key for committed tree blocks
        btrfs: add SPDX header to Kconfig
        btrfs: replace GPL boilerplate by SPDX -- sources
        btrfs: replace GPL boilerplate by SPDX -- headers
        Btrfs: fix loss of prealloc extents past i_size after fsync log replay
        Btrfs: clean up resources during umount after trans is aborted
        btrfs: Fix possible softlock on single core machines
        Btrfs: bail out on error during replay_dir_deletes
        Btrfs: fix NULL pointer dereference in log_dir_items
      e37563bb
    • Linus Torvalds's avatar
      Merge tag '4.17-rc1SMB3-Fixes' of git://git.samba.org/sfrench/cifs-2.6 · 09c9b0ea
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "SMB3 fixes, a few for stable, and some important cleanup work from
        Ronnie of the smb3 transport code"
      
      * tag '4.17-rc1SMB3-Fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: change validate_buf to validate_iov
        cifs: remove rfc1002 hardcoded constants from cifs_discard_remaining_data()
        cifs: Change SMB2_open to return an iov for the error parameter
        cifs: add resp_buf_size to the mid_q_entry structure
        smb3.11: replace a 4 with server->vals->header_preamble_size
        cifs: replace a 4 with server->vals->header_preamble_size
        cifs: add pdu_size to the TCP_Server_Info structure
        SMB311: Improve checking of negotiate security contexts
        SMB3: Fix length checking of SMB3.11 negotiate request
        CIFS: add ONCE flag for cifs_dbg type
        cifs: Use ULL suffix for 64-bit constant
        SMB3: Log at least once if tree connect fails during reconnect
        cifs: smb2pdu: Fix potential NULL pointer dereference
      09c9b0ea
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · f0d98d85
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "This is a set of minor (and safe changes) that didn't make the initial
        pull request plus some bug fixes.
      
        The status handling code is actually a running regression from the
        previous merge window which had an incomplete fix (now reverted) and
        most of the remaining bug fixes are for problems older than the
        current merge window"
      
      [ Side note: this merge also takes the base kernel git repository to 6+
        million objects for the first time. Technically we hit it a couple of
        merges ago already if you count all the tag objects, but now it
        reaches 6M+ objects reachable from HEAD.
      
        I was joking around that that's when I should switch to 5.0, because
        3.0 happened at the 2M mark, and 4.0 happened at 4M objects. But
        probably not, even if numerology is about as good a reason as any.
      
                                                                    - Linus ]
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: devinfo: Add Microsoft iSCSI target to 1024 sector blacklist
        scsi: cxgb4i: silence overflow warning in t4_uld_rx_handler()
        scsi: dpt_i2o: Use after free in I2ORESETCMD ioctl
        scsi: core: Make scsi_result_to_blk_status() recognize CONDITION MET
        scsi: core: Rename __scsi_error_from_host_byte() into scsi_result_to_blk_status()
        Revert "scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte()"
        scsi: aacraid: Insure command thread is not recursively stopped
        scsi: qla2xxx: Correct setting of SAM_STAT_CHECK_CONDITION
        scsi: qla2xxx: correctly shift host byte
        scsi: qla2xxx: Fix race condition between iocb timeout and initialisation
        scsi: qla2xxx: Avoid double completion of abort command
        scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure
        scsi: scsi_dh: Don't look for NULL devices handlers by name
        scsi: core: remove redundant assignment to shost->use_blk_mq
      f0d98d85
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v4.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · ca71b3ba
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - pass HOSTLDFLAGS when compiling single .c host programs
      
       - build genksyms lexer and parser files instead of using shipped
         versions
      
       - rename *-asn1.[ch] to *.asn1.[ch] for suffix consistency
      
       - let the top .gitignore globally ignore artifacts generated by flex,
         bison, and asn1_compiler
      
       - let the top Makefile globally clean artifacts generated by flex,
         bison, and asn1_compiler
      
       - use safer .SECONDARY marker instead of .PRECIOUS to prevent
         intermediate files from being removed
      
       - support -fmacro-prefix-map option to make __FILE__ a relative path
      
       - fix # escaping to prepare for the future GNU Make release
      
       - clean up deb-pkg by using debian tools instead of handrolled
         source/changes generation
      
       - improve rpm-pkg portability by supporting kernel-install as a
         fallback of new-kernel-pkg
      
       - extend Kconfig listnewconfig target to provide more information
      
      * tag 'kbuild-v4.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kconfig: extend output of 'listnewconfig'
        kbuild: rpm-pkg: use kernel-install as a fallback for new-kernel-pkg
        Kbuild: fix # escaping in .cmd files for future Make
        kbuild: deb-pkg: split generating packaging and build
        kbuild: use -fmacro-prefix-map to make __FILE__ a relative path
        kbuild: mark $(targets) as .SECONDARY and remove .PRECIOUS markers
        kbuild: rename *-asn1.[ch] to *.asn1.[ch]
        kbuild: clean up *-asn1.[ch] patterns from top-level Makefile
        .gitignore: move *-asn1.[ch] patterns to the top-level .gitignore
        kbuild: add %.dtb.S and %.dtb to 'targets' automatically
        kbuild: add %.lex.c and %.tab.[ch] to 'targets' automatically
        genksyms: generate lexer and parser during build instead of shipping
        kbuild: clean up *.lex.c and *.tab.[ch] patterns from top-level Makefile
        .gitignore: move *.lex.c *.tab.[ch] patterns to the top-level .gitignore
        kbuild: use HOSTLDFLAGS for single .c executables
      ca71b3ba
  3. 15 Apr, 2018 3 commits
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9fb71c2f
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of fixes and updates for x86:
      
         - Address a swiotlb regression which was caused by the recent DMA
           rework and made driver fail because dma_direct_supported() returned
           false
      
         - Fix a signedness bug in the APIC ID validation which caused invalid
           APIC IDs to be detected as valid thereby bloating the CPU possible
           space.
      
         - Fix inconsisten config dependcy/select magic for the MFD_CS5535
           driver.
      
         - Fix a corruption of the physical address space bits when encryption
           has reduced the address space and late cpuinfo updates overwrite
           the reduced bit information with the original value.
      
         - Dominiks syscall rework which consolidates the architecture
           specific syscall functions so all syscalls can be wrapped with the
           same macros. This allows to switch x86/64 to struct pt_regs based
           syscalls. Extend the clearing of user space controlled registers in
           the entry patch to the lower registers"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Fix signedness bug in APIC ID validity checks
        x86/cpu: Prevent cpuinfo_x86::x86_phys_bits adjustment corruption
        x86/olpc: Fix inconsistent MFD_CS5535 configuration
        swiotlb: Use dma_direct_supported() for swiotlb_ops
        syscalls/x86: Adapt syscall_wrapper.h to the new syscall stub naming convention
        syscalls/core, syscalls/x86: Rename struct pt_regs-based sys_*() to __x64_sys_*()
        syscalls/core, syscalls/x86: Clean up compat syscall stub naming convention
        syscalls/core, syscalls/x86: Clean up syscall stub naming convention
        syscalls/x86: Extend register clearing on syscall entry to lower registers
        syscalls/x86: Unconditionally enable 'struct pt_regs' based syscalls on x86_64
        syscalls/x86: Use 'struct pt_regs' based syscall calling for IA32_EMULATION and x32
        syscalls/core: Prepare CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y for compat syscalls
        syscalls/x86: Use 'struct pt_regs' based syscall calling convention for 64-bit syscalls
        syscalls/core: Introduce CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
        x86/syscalls: Don't pointlessly reload the system call number
        x86/mm: Fix documentation of module mapping range with 4-level paging
        x86/cpuid: Switch to 'static const' specifier
      9fb71c2f
    • Linus Torvalds's avatar
      Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6b0a02e8
      Linus Torvalds authored
      Pull x86 pti updates from Thomas Gleixner:
       "Another series of PTI related changes:
      
         - Remove the manual stack switch for user entries from the idtentry
           code. This debloats entry by 5k+ bytes of text.
      
         - Use the proper types for the asm/bootparam.h defines to prevent
           user space compile errors.
      
         - Use PAGE_GLOBAL for !PCID systems to gain back performance
      
         - Prevent setting of huge PUD/PMD entries when the entries are not
           leaf entries otherwise the entries to which the PUD/PMD points to
           and are populated get lost"
      
      * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/pgtable: Don't set huge PUD/PMD on non-leaf entries
        x86/pti: Leave kernel text global for !PCID
        x86/pti: Never implicitly clear _PAGE_GLOBAL for kernel image
        x86/pti: Enable global pages for shared areas
        x86/mm: Do not forbid _PAGE_RW before init for __ro_after_init
        x86/mm: Comment _PAGE_GLOBAL mystery
        x86/mm: Remove extra filtering in pageattr code
        x86/mm: Do not auto-massage page protections
        x86/espfix: Document use of _PAGE_GLOBAL
        x86/mm: Introduce "default" kernel PTE mask
        x86/mm: Undo double _PAGE_PSE clearing
        x86/mm: Factor out pageattr _PAGE_GLOBAL setting
        x86/entry/64: Drop idtentry's manual stack switch for user entries
        x86/uapi: Fix asm/bootparam.h userspace compilation errors
      6b0a02e8
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 71b8ebbf
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
       "A few scheduler fixes:
      
         - Prevent a bogus warning vs. runqueue clock update flags in
           do_sched_rt_period_timer()
      
         - Simplify the helper functions which handle requests for skipping
           the runqueue clock updat.
      
         - Do not unlock the tunables mutex in the error path of the cpu
           frequency scheduler utils. Its not held.
      
         - Enforce proper alignement for 'struct util_est' in sched_avg to
           prevent a misalignment fault on IA64"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/core: Force proper alignment of 'struct util_est'
        sched/core: Simplify helpers for rq clock update skip requests
        sched/rt: Fix rq->clock_update_flags < RQCF_ACT_SKIP warning
        sched/cpufreq/schedutil: Fix error path mutex unlock
      71b8ebbf