1. 03 Oct, 2015 7 commits
  2. 01 Oct, 2015 33 commits
    • Mauro Carvalho Chehab's avatar
      [media] rcar_jpu: Fix namespace for two __be16 vars · 99634761
      Mauro Carvalho Chehab authored
      Fixes those sparse warnings:
      	drivers/media/platform/rcar_jpu.c:1150:51: warning: incorrect type in assignment (different base types)
      	drivers/media/platform/rcar_jpu.c:1150:51:    expected unsigned short [unsigned] [short] [usertype] <noident>
      	drivers/media/platform/rcar_jpu.c:1150:51:    got restricted __be16 [usertype] <noident>
      	drivers/media/platform/rcar_jpu.c:1152:50: warning: incorrect type in assignment (different base types)
      	drivers/media/platform/rcar_jpu.c:1152:50:    expected unsigned short [unsigned] [short] [usertype] <noident>
      	drivers/media/platform/rcar_jpu.c:1152:50:    got restricted __be16 [usertype] <noident>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      99634761
    • Mauro Carvalho Chehab's avatar
      [media] c8sectpfe: fix namespace on memcpy/memset · 5347f97c
      Mauro Carvalho Chehab authored
      Solves those sparse warnings:
      
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1087:9: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1087:9:    expected void *<noident>
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1087:9:    got void [noderef] <asn:2>*<noident>
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1090:9: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1090:9:    expected void *<noident>
      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:1090:9:    got void [noderef] <asn:2>*
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      5347f97c
    • Mauro Carvalho Chehab's avatar
      [media] mipi-csis: make sparse happy · de2ce8fd
      Mauro Carvalho Chehab authored
      Fix the namespace issue that causes this warning:
      
      drivers/media/platform/exynos4-is/mipi-csis.c:709:17: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/platform/exynos4-is/mipi-csis.c:709:17:    expected void const *<noident>
      drivers/media/platform/exynos4-is/mipi-csis.c:709:17:    got void [noderef] <asn:2>*
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      de2ce8fd
    • Mauro Carvalho Chehab's avatar
      [media] netup_unidvb_ci: Fix dereference of noderef expression · 340ccedb
      Mauro Carvalho Chehab authored
      Fix those sparse warnings:
      	drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:150:40: warning: dereference of noderef expression
      	drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:165:31: warning: dereference of noderef expression
      	drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:174:36: warning: dereference of noderef expression
      	drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:189:27: warning: dereference of noderef expression
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      340ccedb
    • Mauro Carvalho Chehab's avatar
      [media] netup_unidvb: remove most of the sparse warnings · d91b1d91
      Mauro Carvalho Chehab authored
      There is a mess at the namespace on netup_unidvb:
      
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:192:41: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:192:41:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:192:41:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:194:26: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:194:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:194:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:194:26:    got unsigned short [usertype] *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:196:41: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:196:41:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:196:41:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:198:26: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:198:26: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:198:26:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:198:26:    got unsigned short [usertype] *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:210:37: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:210:37:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:210:37:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:211:32: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:211:32:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:211:32:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:213:33: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:213:33:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:213:33:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:528:49: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:528:49:    expected void const volatile [noderef] <asn:2>*src
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:528:49:    got unsigned char [usertype] *
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:541:49: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:541:49:    expected void const volatile [noderef] <asn:2>*src
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:541:49:    got unsigned char [usertype] *
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:647:22: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:647:22:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:647:22:    got unsigned char [usertype] *addr_virt
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:650:22: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:654:59: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:654:59:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:654:59:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:655:56: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:655:56:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:655:56:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:656:23: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:656:23:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:656:23:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:658:31: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:658:31:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:658:31:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:660:33: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:660:33:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_core.c:660:33:    got restricted __le32 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:81:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:81:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:81:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:82:38: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:82:38:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:82:38:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:104:33: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:104:33:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:104:33:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:105:47: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:105:47:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:105:47:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:112:33: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:112:33:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:112:33:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:113:47: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:113:47:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:113:47:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:132:36: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:132:36:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:132:36:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:133:32: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:133:32:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:133:32:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:134:32: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:134:32:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:134:32:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:135:32: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:135:32:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:135:32:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:136:27: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:136:27:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:136:27:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:137:27: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:137:27:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:137:27:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:144:28: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:144:28:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:144:28:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:150:34: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:150:34:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:150:34:    got unsigned char *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:157:34: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:157:34:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:157:34:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:158:29: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:158:29:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:158:29:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:165:35: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:165:35:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:165:35:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:170:34: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:170:34:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:170:34:    got unsigned char *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:181:34: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:181:34:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:181:34:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:182:29: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:182:29:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:182:29:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:189:29: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:189:29:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:189:29:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:191:37: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:191:37:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:191:37:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:192:35: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:192:35:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:192:35:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:194:21: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:194:21:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:194:21:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:195:9:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:205:47: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:205:47:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:205:47:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:206:29: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:206:29:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:206:29:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:272:53: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:272:53:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:272:53:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:274:53: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:274:53:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:274:53:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_i2c.c:323:22: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:229:38: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:229:38: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:229:38:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_ci.c:229:38:    got unsigned short [usertype] *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:89:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:89:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:89:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:96:46: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:96:46:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:96:46:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:97:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:97:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:97:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:98:49: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:98:49:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:98:49:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:116:44: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:116:44:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:116:44:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:117:23: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:117:23:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:117:23:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:132:48: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:132:48:    expected void volatile [noderef] <asn:2>*dst
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:132:48:    got unsigned char *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:136:46: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:136:46:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:136:46:    got unsigned char *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:144:37: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:144:37:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:144:37:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:145:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:145:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:145:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:154:52: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:154:52:    expected void const volatile [noderef] <asn:2>*src
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:154:52:    got unsigned char *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:205:23: warning: cast removes address space of expression
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:206:24: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:206:24:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:206:24:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:243:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:243:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:243:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:244:46: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:244:46:    expected void volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:244:46:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:245:25: warning: incorrect type in argument 1 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:245:25:    expected void const volatile [noderef] <asn:2>*addr
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:245:25:    got restricted __le16 *<noident>
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:246:49: warning: incorrect type in argument 2 (different address spaces)
      drivers/media/pci/netup_unidvb/netup_unidvb_spi.c:246:49:    expected void volatile [noderef] <asn:2>*addr
      
      Fix the above sparse warnings.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      d91b1d91
    • Mauro Carvalho Chehab's avatar
      [media] s5c73m3: fix a sparse warning · c84a71c8
      Mauro Carvalho Chehab authored
      drivers/media/i2c/s5c73m3/s5c73m3-core.c:170:39: warning: incorrect type in argument 1 (different base types)
      drivers/media/i2c/s5c73m3/s5c73m3-core.c:170:39:    expected restricted __be16 const [usertype] *p
      drivers/media/i2c/s5c73m3/s5c73m3-core.c:170:39:    got unsigned short [usertype] *<noident>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      c84a71c8
    • Mauro Carvalho Chehab's avatar
      [media] media-entity.c: get rid of var length arrays · ef69ee1b
      Mauro Carvalho Chehab authored
      Fix those sparse warnings:
      	drivers/media/media-entity.c:238:17: warning: Variable length array is used.
      	drivers/media/media-entity.c:239:17: warning: Variable length array is used.
      
      That allows sparse and other code check tools to verify if the
      function is using more stack than allowed.
      
      It also solves a bad Kernel pratice of using var length arrays
      at the stack.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      ef69ee1b
    • Mauro Carvalho Chehab's avatar
      Revert "[media] rcar_vin: call g_std() instead of querystd()" · ca739eb0
      Mauro Carvalho Chehab authored
      As pointed by Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>,
      this patch depends on two adv7180 patches that got rejected.
      
      This reverts commit f00ae754.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      ca739eb0
    • Mauro Carvalho Chehab's avatar
      [media] DocBook: Remove a warning at videobuf2-v4l2.h · d383b579
      Mauro Carvalho Chehab authored
      There's no need to document to_foo() macros, and the macro is
      badly documented anyway. That removes this warning:
      	include/media/videobuf2-v4l2.h:43: warning: No description found for parameter 'vb'
      
      While here, remove the parenthesis for container_of(). The
      countainer_of() already have parenthesis inside it.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      d383b579
    • Mauro Carvalho Chehab's avatar
      [media] DocBook: fix most of warnings at videobuf2-core.h · 32d81b41
      Mauro Carvalho Chehab authored
      	include/media/videobuf2-core.h:112: warning: No description found for parameter 'get_dmabuf'
      	include/media/videobuf2-core.h:146: warning: No description found for parameter 'm'
      	include/media/videobuf2-core.h:146: warning: Excess struct/union/enum/typedef member 'mem_offset' description in 'vb2_plane'
      
      There are still several warnings, but those are hard to fix,
      as they're actually a bug at DocBook. Those should be fixed on
      separate patches.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      32d81b41
    • Mauro Carvalho Chehab's avatar
      [media] DocBook: Fix documentation for struct v4l2_dv_timings · fb91aecb
      Mauro Carvalho Chehab authored
      Fix this warning:
      	include/media/v4l2-dv-timings.h:29: warning: cannot understand function prototype: 'const struct v4l2_dv_timings v4l2_dv_timings_presets[]; '
      
      Unfortunately, currently, it seems that doc-nano doesn't support
      documenting extern static vars.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      fb91aecb
    • Mauro Carvalho Chehab's avatar
      [media] dvbdev: Remove two cut-and-paste errors · 5a11cb1c
      Mauro Carvalho Chehab authored
      Those two came from dvb_register_adapter cut-and-paste:
      
      	.//drivers/media/dvb-core/dvbdev.h:199: warning: Excess function parameter 'device' description in 'dvb_register_device'
      	.//drivers/media/dvb-core/dvbdev.h:199: warning: Excess function parameter 'adapter_nums' description in 'dvb_register_device'
      
      Remove them.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      5a11cb1c
    • Mauro Carvalho Chehab's avatar
      [media] DocBook: add the new videobuf2-v4l2 header · 1ccd66cc
      Mauro Carvalho Chehab authored
      This header should also be used to generate documentation. So,
      add it.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      1ccd66cc
    • Mauro Carvalho Chehab's avatar
      [media] s5p-jpeg: remove unused var · b0dcc5f6
      Mauro Carvalho Chehab authored
      changeset 6c96dbbc added a new function that seems to be
      a modified version of an existing function. That's ok, but
      it was adding a "word" var from the previous code that it is
      not used on the new function. So, remove this left-over.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      b0dcc5f6
    • Junghak Sung's avatar
      [media] media: videobuf2: Restructure vb2_buffer · 2d700715
      Junghak Sung authored
      Remove v4l2 stuff - v4l2_buf, v4l2_plane - from struct vb2_buffer.
      
      Add new member variables - bytesused, length, offset, userptr, fd,
      data_offset - to struct vb2_plane in order to cover all information
      of v4l2_plane.
      struct vb2_plane {
              <snip>
              unsigned int            bytesused;
              unsigned int            length;
              union {
                      unsigned int    offset;
                      unsigned long   userptr;
                      int             fd;
              } m;
              unsigned int            data_offset;
      }
      
      Replace v4l2_buf with new member variables - index, type, memory - which
      are common fields for buffer management.
      struct vb2_buffer {
              <snip>
              unsigned int            index;
              unsigned int            type;
              unsigned int            memory;
              unsigned int            num_planes;
              struct vb2_plane        planes[VIDEO_MAX_PLANES];
              <snip>
      };
      
      v4l2 specific fields - flags, field, timestamp, timecode,
      sequence - are moved to vb2_v4l2_buffer in videobuf2-v4l2.c
      struct vb2_v4l2_buffer {
              struct vb2_buffer       vb2_buf;
      
              __u32                   flags;
              __u32                   field;
              struct timeval          timestamp;
              struct v4l2_timecode    timecode;
              __u32                   sequence;
      };
      Signed-off-by: default avatarJunghak Sung <jh1009.sung@samsung.com>
      Signed-off-by: default avatarGeunyoung Kim <nenggun.kim@samsung.com>
      Acked-by: default avatarSeung-Woo Kim <sw0312.kim@samsung.com>
      Acked-by: default avatarInki Dae <inki.dae@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      2d700715
    • Junghak Sung's avatar
      [media] media: videobuf2: Replace videobuf2-core with videobuf2-v4l2 · c139990e
      Junghak Sung authored
      Make videobuf2-v4l2 as a wrapper of videobuf2-core for v4l2-use.
      And replace videobuf2-core.h with videobuf2-v4l2.h.
      This renaming change should be accompanied by the modifications
      of all device drivers that include videobuf2-core.h.
      It can be done with just running this shell script.
      
      replace()
      {
      str1=$1
      str2=$2
      dir=$3
      for file in $(find $dir -name *.h -o -name *.c -o -name Makefile)
      do
          echo $file
          sed "s/$str1/$str2/g" $file > $file.out
          mv $file.out $file
      done
      }
      
      replace "videobuf2-core" "videobuf2-v4l2" "include/media/"
      replace "videobuf2-core" "videobuf2-v4l2" "drivers/media/"
      replace "videobuf2-core" "videobuf2-v4l2" "drivers/usb/gadget/"
      replace "videobuf2-core" "videobuf2-v4l2" "drivers/staging/media/"
      Signed-off-by: default avatarJunghak Sung <jh1009.sung@samsung.com>
      Signed-off-by: default avatarGeunyoung Kim <nenggun.kim@samsung.com>
      Acked-by: default avatarSeung-Woo Kim <sw0312.kim@samsung.com>
      Acked-by: default avatarInki Dae <inki.dae@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      c139990e
    • Benoit Parrot's avatar
      [media] media: v4l2-ctrls: Fix 64bit support in get_ctrl() · a8077734
      Benoit Parrot authored
      When trying to use v4l2_ctrl_g_ctrl_int64() to retrieve a
      V4L2_CTRL_TYPE_INTEGER64 type value the internal helper function
      get_ctrl() would prematurely exit because for this control type
      the 'is_int' flag is not set. This would result in v4l2_ctrl_g_ctrl_int64
      always returning 0.
      
      Also v4l2_ctrl_g_ctrl_int64() is reading and returning the 32bit value
      member instead of the 64bit version, so fixing that as well.
      
      This patch extends the condition check to allow the V4L2_CTRL_TYPE_INTEGER64
      type to continue processing instead of exiting.
      Signed-off-by: default avatarBenoit Parrot <bparrot@ti.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Cc: <stable@vger.kernel.org>      # for v3.17 and up
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      a8077734
    • Luis de Bethencourt's avatar
      [media] cx25821, cx88, tm6000: use SNDRV_DEFAULT_ENABLE_PNP · d275d935
      Luis de Bethencourt authored
      Instead of manually initializing the bool array enable, use the
      SNDRV_DEFAULT_ENABLE_PNP macro. As most drivers do.
      Signed-off-by: default avatarLuis de Bethencourt <luisbg@osg.samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      d275d935
    • Hans Verkuil's avatar
      [media] cobalt: fix Kconfig dependency · fc88dd16
      Hans Verkuil authored
      The cobalt driver should depend on VIDEO_V4L2_SUBDEV_API.
      
      This fixes this kbuild error:
      
      tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
      head:   99bc7215
      commit: 85756a06 [media] cobalt: add new driver
      config: x86_64-randconfig-s0-09201514 (attached as .config)
      reproduce:
        git checkout 85756a06
        # save the attached .config to linux build tree
        make ARCH=x86_64
      
      All error/warnings (new ones prefixed by >>):
      
         drivers/media/i2c/adv7604.c: In function 'adv76xx_get_format':
      >> drivers/media/i2c/adv7604.c:1853:9: error: implicit declaration of function 'v4l2_subdev_get_try_format' [-Werror=implicit-function-declaration]
            fmt = v4l2_subdev_get_try_format(sd, cfg, format->pad);
                  ^
         drivers/media/i2c/adv7604.c:1853:7: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
            fmt = v4l2_subdev_get_try_format(sd, cfg, format->pad);
                ^
         drivers/media/i2c/adv7604.c: In function 'adv76xx_set_format':
         drivers/media/i2c/adv7604.c:1882:7: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
            fmt = v4l2_subdev_get_try_format(sd, cfg, format->pad);
                ^
         cc1: some warnings being treated as errors
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      fc88dd16
    • Javier Martinez Canillas's avatar
      c7d97499
    • Joe Perches's avatar
      [media] s5p-mfc: Correct misuse of %0x<decimal> · f5b5fbd3
      Joe Perches authored
      Correct misuse of 0x%d in logging message.
      Signed-off-by: default avatarJoe Perches <joe@perches.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      f5b5fbd3
    • Andrzej Pietrasiewicz's avatar
      [media] MAINTAINERS: add exynos jpeg codec maintainers · 7d9f9bf4
      Andrzej Pietrasiewicz authored
      Add Andrzej Pietrasiewicz and Jacek Anaszewski
      as maintainers of drivers/media/platform/s5p-jpeg.
      Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@samsung.com>
      Acked-by: default avatarJacek Anaszewski <j.anaszewski@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      7d9f9bf4
    • Andrzej Pietrasiewicz's avatar
      [media] s5p-jpeg: add support for 5433 · 6c96dbbc
      Andrzej Pietrasiewicz authored
      JPEG IP found in Exynos5433 is similar to what is in Exynos4, but
      there are some subtle differences which this patch takes into account.
      
      The most important difference is in what is processed by the JPEG IP and
      what has to be provided to it. In case of 5433 the IP does not parse
      Huffman and quantisation tables, so this has to be performed with the CPU
      and the majority of the code in this patch does that.
      
      A small but important difference is in what address is passed to the JPEG
      IP. In case of 5433 it is the SOS (start of scan) position, which is
      natural, because the headers must be parsed elsewhere.
      
      There is also a difference in how the hardware is put to work in
      device_run.
      
      Data structures are extended as appropriate to accommodate the above
      changes.
      Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@samsung.com>
      Reviewed-by: default avatarJacek Anaszewski <j.anaszewski@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      6c96dbbc
    • Marek Szyprowski's avatar
      [media] s5p-jpeg: generalize clocks handling · b95a24d6
      Marek Szyprowski authored
      Allow jpeg codec variants declare clocks they need.
      Before this patch is applied jpeg-core gets jpeg->sclk
      "speculatively": if it is not there, we assume no problem.
      
      This patch eliminates this by explicitly declaring
      what clocks are needed for each variant.
      
      This is a preparation for adding Exynos 5433 variant support, which
      needs 4 clocks of names not compatible with any previous version of
      jpeg hw module.
      
      [Rebase and commit message]
      Signed-off-by: default avatarMarek Szyprowski <m.szyprowski@samsung.com>
      Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@samsung.com>
      Reviewed-by: default avatarJacek Anaszewski <j.anaszewski@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      b95a24d6
    • Javier Martinez Canillas's avatar
      [media] go7007: Fix returned errno code in gen_mjpeghdr_to_package() · 5bcc0dd7
      Javier Martinez Canillas authored
      The driver is using -1 instead of the -ENOMEM defined macro to specify
      that a buffer allocation failed. Since the error number is propagated,
      the caller will get a -EPERM which is the wrong error condition.
      
      Also, the smatch tool complains with the following warning:
      
      gen_mjpeghdr_to_package() warn: returning -1 instead of -ENOMEM is sloppy
      Signed-off-by: default avatarJavier Martinez Canillas <javier@osg.samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      5bcc0dd7
    • Javier Martinez Canillas's avatar
      [media] s5c73m3: Export OF module alias information · 5aa2ccfc
      Javier Martinez Canillas authored
      The SPI core always reports the MODALIAS uevent as "spi:<modalias>"
      regardless of the mechanism that was used to register the device
      (i.e: OF or board code) and the table that is used later to match
      the driver with the device (i.e: SPI id table or OF match table).
      
      So drivers needs to export the SPI id table and this be built into
      the module or udev won't have the necessary information to autoload
      the needed driver module when the device is added.
      
      But this means that OF-only drivers needs to have both OF and SPI id
      tables that have to be kept in sync and also the dev node compatible
      manufacturer prefix is stripped when reporting the MODALIAS. Which can
      lead to issues if two vendors use the same SPI device name for example.
      
      To avoid the above, the SPI core behavior may be changed in the future
      to not require an SPI device table for OF-only drivers and report the
      OF module alias. So, it's better to also export the OF table even when
      is unused now to prevent breaking module loading when the core changes.
      Signed-off-by: default avatarJavier Martinez Canillas <javier@osg.samsung.com>
      Reviewed-by: default avatarAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      5aa2ccfc
    • Hans Verkuil's avatar
      [media] DocBook/media: clarify control documentation · 60f4570d
      Hans Verkuil authored
      - Add missing V4L2_CTRL_TYPE_U32 documentation
      - Remove 'which are actually different on the hardware' sentence which
        is confusing. I think the idea was to let the user know that the step can
        be different for different hardware, but that's obvious because otherwise
        you wouldn't need to specify the step value.
      - Clarify that V4L2_CTRL_COMPOUND_TYPES also applies to arrays.
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      60f4570d
    • Hans Verkuil's avatar
      [media] v4l2-ctrls: arrays are also considered compound controls · 35204e2e
      Hans Verkuil authored
      Array controls weren't skipped when only V4L2_CTRL_FLAG_NEXT_CTRL was
      provided (so no V4L2_CTRL_FLAG_NEXT_COMPOUND was set). This is wrong
      since arrays are also considered compound controls (i.e. with more than
      one value), and applications that do not know about arrays will not
      be able to handle such controls.
      
      Fix the test to include arrays.
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Reported-by: default avatarRicardo Ribalda Delgado <ricardo.ribalda@gmail.com>
      Cc: <stable@vger.kernel.org>      # for v3.17 and up
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      35204e2e
    • Arnd Bergmann's avatar
      [media] use v4l2_get_timestamp where possible · 5ba0e2c3
      Arnd Bergmann authored
      This is a preparation for a change to the type of v4l2 timestamps.
      v4l2_get_timestamp() is a helper function that reads the monotonic
      time and stores it into a 'struct timeval'. Multiple drivers implement
      the same thing themselves for historic reasons.
      
      Changing them all to use v4l2_get_timestamp() is more consistent
      and reduces the amount of code duplication, and most importantly
      simplifies the following changes.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
      [hans.verkuil@cisco.com: dropped the v4l2-dev.c patch that didn't belong here]
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      5ba0e2c3
    • Arnd Bergmann's avatar
      [media] exynos4-is: use monotonic timestamps as advertized · 2ef3b6fe
      Arnd Bergmann authored
      The exynos4 fimc capture driver claims to use monotonic
      timestamps but calls ktime_get_real_ts(). This is both
      an incorrect API use, and a bad idea because of the y2038
      problem and the fact that the wall clock time is not reliable
      for timestamps across suspend or settimeofday().
      
      This changes the driver to use the normal v4l2_get_timestamp()
      function like all other drivers.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Acked-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      2ef3b6fe
    • Sergei Shtylyov's avatar
      [media] ml86v7667: implement g_std() method · 280e87b2
      Sergei Shtylyov authored
      The driver was written with the 'soc_camera' use in mind, however the g_std()
      video method was forgotten. Implement it at last...
      Signed-off-by: default avatarSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      280e87b2
    • Hans Verkuil's avatar
      [media] saa7164: video and vbi ports share the same input/tuner/std · 225b783b
      Hans Verkuil authored
      The vbi port should pass any tuner/input/standard information on
      to the video port since in the input and tuner are shared between
      the two.
      
      There is no reason to duplicate this code, just pass the ioctls on
      to the video encoder port.
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      225b783b
    • Hans Verkuil's avatar
      [media] saa7164: fix input and tuner compliance problems · 6b996126
      Hans Verkuil authored
      - the frequency range was never set
      - there was no initial frequency
      - missing index/tuner checks
      - inconsistent standard reporting
      - removed unnecessary tuner type checks (the core handles that)
      - clamp frequency to the valid frequency range as per the V4L2 spec
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
      6b996126