Merge tag 'media/v4.15-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - Documentation for digital TV (both kAPI and uAPI) are now in sync with the implementation (except for legacy/deprecated ioctls). This is a major step, as there were always a gap there - New sensor driver: imx274 - New cec driver: cec-gpio - New platform driver for rockship rga and tegra CEC - New RC driver: tango-ir - Several cleanups at atomisp driver - Core improvements for RC, CEC, V4L2 async probing support and DVB - Lots of drivers cleanup, fixes and improvements. * tag 'media/v4.15-1' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (332 commits) dvb_frontend: don't use-after-free the frontend struct media: dib0700: fix invalid dvb_detach argument media: v4l2-ctrls: Don't validate BITMASK twice media: s5p-mfc: fix lockdep warning media: dvb-core: always call invoke_release() in fe_free() media: usb: dvb-usb-v2: dvb_usb_core: remove redundant code in dvb_usb_fe_sleep media: au0828: make const array addr_list static media: cx88: make const arrays default_addr_list and pvr2000_addr_list static media: drxd: make const array fastIncrDecLUT static media: usb: fix spelling mistake: "synchronuously" -> "synchronously" media: ddbridge: fix build warnings media: av7110: avoid 2038 overflow in debug print media: Don't do DMA on stack for firmware upload in the AS102 driver media: v4l: async: fix unregister for implicitly registered sub-device notifiers media: v4l: async: fix return of unitialized variable ret media: imx274: fix missing return assignment from call to imx274_mode_regs media: camss-vfe: always initialize reg at vfe_set_xbar_cfg() media: atomisp: make function calls cleaner media: atomisp: get rid of storage_class.h media: atomisp: get rid of wrong stddef.h include ...
Este cometimento está contido em:
@@ -3,6 +3,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
|
||||
rc-alink-dtu-m.o \
|
||||
rc-anysee.o \
|
||||
rc-apac-viewcomp.o \
|
||||
rc-astrometa-t2hybrid.o \
|
||||
rc-asus-pc39.o \
|
||||
rc-asus-ps3-100.o \
|
||||
rc-ati-tv-wonder-hd-600.o \
|
||||
@@ -48,6 +49,8 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
|
||||
rc-geekbox.o \
|
||||
rc-genius-tvgo-a11mce.o \
|
||||
rc-gotview7135.o \
|
||||
rc-hisi-poplar.o \
|
||||
rc-hisi-tv-demo.o \
|
||||
rc-imon-mce.o \
|
||||
rc-imon-pad.o \
|
||||
rc-iodata-bctv7e.o \
|
||||
@@ -89,6 +92,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
|
||||
rc-reddo.o \
|
||||
rc-snapstream-firefly.o \
|
||||
rc-streamzap.o \
|
||||
rc-tango.o \
|
||||
rc-tbs-nec.o \
|
||||
rc-technisat-ts35.o \
|
||||
rc-technisat-usb2.o \
|
||||
|
70
drivers/media/rc/keymaps/rc-astrometa-t2hybrid.c
Ficheiro normal
70
drivers/media/rc/keymaps/rc-astrometa-t2hybrid.c
Ficheiro normal
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
* Keytable for the Astrometa T2hybrid remote controller
|
||||
*
|
||||
* Copyright (C) 2017 Oleh Kravchenko <oleg@kaa.org.ua>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <media/rc-map.h>
|
||||
#include <linux/module.h>
|
||||
|
||||
static struct rc_map_table t2hybrid[] = {
|
||||
{ 0x4d, KEY_POWER2 },
|
||||
{ 0x54, KEY_VIDEO }, /* Source */
|
||||
{ 0x16, KEY_MUTE },
|
||||
|
||||
{ 0x4c, KEY_RECORD },
|
||||
{ 0x05, KEY_CHANNELUP },
|
||||
{ 0x0c, KEY_TIME}, /* Timeshift */
|
||||
|
||||
{ 0x0a, KEY_VOLUMEDOWN },
|
||||
{ 0x40, KEY_ZOOM }, /* Fullscreen */
|
||||
{ 0x1e, KEY_VOLUMEUP },
|
||||
|
||||
{ 0x12, KEY_0 },
|
||||
{ 0x02, KEY_CHANNELDOWN },
|
||||
{ 0x1c, KEY_AGAIN }, /* Recall */
|
||||
|
||||
{ 0x09, KEY_1 },
|
||||
{ 0x1d, KEY_2 },
|
||||
{ 0x1f, KEY_3 },
|
||||
|
||||
{ 0x0d, KEY_4 },
|
||||
{ 0x19, KEY_5 },
|
||||
{ 0x1b, KEY_6 },
|
||||
|
||||
{ 0x11, KEY_7 },
|
||||
{ 0x15, KEY_8 },
|
||||
{ 0x17, KEY_9 },
|
||||
};
|
||||
|
||||
static struct rc_map_list t2hybrid_map = {
|
||||
.map = {
|
||||
.scan = t2hybrid,
|
||||
.size = ARRAY_SIZE(t2hybrid),
|
||||
.rc_proto = RC_PROTO_NEC,
|
||||
.name = RC_MAP_ASTROMETA_T2HYBRID,
|
||||
}
|
||||
};
|
||||
|
||||
static int __init init_rc_map_t2hybrid(void)
|
||||
{
|
||||
return rc_map_register(&t2hybrid_map);
|
||||
}
|
||||
|
||||
static void __exit exit_rc_map_t2hybrid(void)
|
||||
{
|
||||
rc_map_unregister(&t2hybrid_map);
|
||||
}
|
||||
|
||||
module_init(init_rc_map_t2hybrid)
|
||||
module_exit(exit_rc_map_t2hybrid)
|
||||
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_AUTHOR("Oleh Kravchenko <oleg@kaa.org.ua>");
|
@@ -43,7 +43,8 @@ static struct rc_map_table avermedia_m135a[] = {
|
||||
{ 0x0213, KEY_RIGHT }, /* -> or L */
|
||||
{ 0x0212, KEY_LEFT }, /* <- or R */
|
||||
|
||||
{ 0x0217, KEY_SLEEP }, /* Capturar Imagem or Snapshot */
|
||||
{ 0x0215, KEY_MENU },
|
||||
{ 0x0217, KEY_CAMERA }, /* Capturar Imagem or Snapshot */
|
||||
{ 0x0210, KEY_SHUFFLE }, /* Amostra or 16 chan prev */
|
||||
|
||||
{ 0x0303, KEY_CHANNELUP },
|
||||
|
69
drivers/media/rc/keymaps/rc-hisi-poplar.c
Ficheiro normal
69
drivers/media/rc/keymaps/rc-hisi-poplar.c
Ficheiro normal
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
* Keytable for remote controller of HiSilicon poplar board.
|
||||
*
|
||||
* Copyright (c) 2017 HiSilicon Technologies Co., Ltd.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*/
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <media/rc-map.h>
|
||||
|
||||
static struct rc_map_table hisi_poplar_keymap[] = {
|
||||
{ 0x0000b292, KEY_1},
|
||||
{ 0x0000b293, KEY_2},
|
||||
{ 0x0000b2cc, KEY_3},
|
||||
{ 0x0000b28e, KEY_4},
|
||||
{ 0x0000b28f, KEY_5},
|
||||
{ 0x0000b2c8, KEY_6},
|
||||
{ 0x0000b28a, KEY_7},
|
||||
{ 0x0000b28b, KEY_8},
|
||||
{ 0x0000b2c4, KEY_9},
|
||||
{ 0x0000b287, KEY_0},
|
||||
{ 0x0000b282, KEY_HOMEPAGE},
|
||||
{ 0x0000b2ca, KEY_UP},
|
||||
{ 0x0000b299, KEY_LEFT},
|
||||
{ 0x0000b2c1, KEY_RIGHT},
|
||||
{ 0x0000b2d2, KEY_DOWN},
|
||||
{ 0x0000b2c5, KEY_DELETE},
|
||||
{ 0x0000b29c, KEY_MUTE},
|
||||
{ 0x0000b281, KEY_VOLUMEDOWN},
|
||||
{ 0x0000b280, KEY_VOLUMEUP},
|
||||
{ 0x0000b2dc, KEY_POWER},
|
||||
{ 0x0000b29a, KEY_MENU},
|
||||
{ 0x0000b28d, KEY_SETUP},
|
||||
{ 0x0000b2c5, KEY_BACK},
|
||||
{ 0x0000b295, KEY_PLAYPAUSE},
|
||||
{ 0x0000b2ce, KEY_ENTER},
|
||||
{ 0x0000b285, KEY_CHANNELUP},
|
||||
{ 0x0000b286, KEY_CHANNELDOWN},
|
||||
{ 0x0000b2da, KEY_NUMERIC_STAR},
|
||||
{ 0x0000b2d0, KEY_NUMERIC_POUND},
|
||||
};
|
||||
|
||||
static struct rc_map_list hisi_poplar_map = {
|
||||
.map = {
|
||||
.scan = hisi_poplar_keymap,
|
||||
.size = ARRAY_SIZE(hisi_poplar_keymap),
|
||||
.rc_proto = RC_PROTO_NEC,
|
||||
.name = RC_MAP_HISI_POPLAR,
|
||||
}
|
||||
};
|
||||
|
||||
static int __init init_rc_map_hisi_poplar(void)
|
||||
{
|
||||
return rc_map_register(&hisi_poplar_map);
|
||||
}
|
||||
|
||||
static void __exit exit_rc_map_hisi_poplar(void)
|
||||
{
|
||||
rc_map_unregister(&hisi_poplar_map);
|
||||
}
|
||||
|
||||
module_init(init_rc_map_hisi_poplar)
|
||||
module_exit(exit_rc_map_hisi_poplar)
|
||||
|
||||
MODULE_LICENSE("GPL v2");
|
81
drivers/media/rc/keymaps/rc-hisi-tv-demo.c
Ficheiro normal
81
drivers/media/rc/keymaps/rc-hisi-tv-demo.c
Ficheiro normal
@@ -0,0 +1,81 @@
|
||||
/*
|
||||
* Keytable for remote controller of HiSilicon tv demo board.
|
||||
*
|
||||
* Copyright (c) 2017 HiSilicon Technologies Co., Ltd.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*/
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <media/rc-map.h>
|
||||
|
||||
static struct rc_map_table hisi_tv_demo_keymap[] = {
|
||||
{ 0x00000092, KEY_1},
|
||||
{ 0x00000093, KEY_2},
|
||||
{ 0x000000cc, KEY_3},
|
||||
{ 0x0000009f, KEY_4},
|
||||
{ 0x0000008e, KEY_5},
|
||||
{ 0x0000008f, KEY_6},
|
||||
{ 0x000000c8, KEY_7},
|
||||
{ 0x00000094, KEY_8},
|
||||
{ 0x0000008a, KEY_9},
|
||||
{ 0x0000008b, KEY_0},
|
||||
{ 0x000000ce, KEY_ENTER},
|
||||
{ 0x000000ca, KEY_UP},
|
||||
{ 0x00000099, KEY_LEFT},
|
||||
{ 0x00000084, KEY_PAGEUP},
|
||||
{ 0x000000c1, KEY_RIGHT},
|
||||
{ 0x000000d2, KEY_DOWN},
|
||||
{ 0x00000089, KEY_PAGEDOWN},
|
||||
{ 0x000000d1, KEY_MUTE},
|
||||
{ 0x00000098, KEY_VOLUMEDOWN},
|
||||
{ 0x00000090, KEY_VOLUMEUP},
|
||||
{ 0x0000009c, KEY_POWER},
|
||||
{ 0x000000d6, KEY_STOP},
|
||||
{ 0x00000097, KEY_MENU},
|
||||
{ 0x000000cb, KEY_BACK},
|
||||
{ 0x000000da, KEY_PLAYPAUSE},
|
||||
{ 0x00000080, KEY_INFO},
|
||||
{ 0x000000c3, KEY_REWIND},
|
||||
{ 0x00000087, KEY_HOMEPAGE},
|
||||
{ 0x000000d0, KEY_FASTFORWARD},
|
||||
{ 0x000000c4, KEY_SOUND},
|
||||
{ 0x00000082, BTN_1},
|
||||
{ 0x000000c7, BTN_2},
|
||||
{ 0x00000086, KEY_PROGRAM},
|
||||
{ 0x000000d9, KEY_SUBTITLE},
|
||||
{ 0x00000085, KEY_ZOOM},
|
||||
{ 0x0000009b, KEY_RED},
|
||||
{ 0x0000009a, KEY_GREEN},
|
||||
{ 0x000000c0, KEY_YELLOW},
|
||||
{ 0x000000c2, KEY_BLUE},
|
||||
{ 0x0000009d, KEY_CHANNELDOWN},
|
||||
{ 0x000000cf, KEY_CHANNELUP},
|
||||
};
|
||||
|
||||
static struct rc_map_list hisi_tv_demo_map = {
|
||||
.map = {
|
||||
.scan = hisi_tv_demo_keymap,
|
||||
.size = ARRAY_SIZE(hisi_tv_demo_keymap),
|
||||
.rc_proto = RC_PROTO_NEC,
|
||||
.name = RC_MAP_HISI_TV_DEMO,
|
||||
}
|
||||
};
|
||||
|
||||
static int __init init_rc_map_hisi_tv_demo(void)
|
||||
{
|
||||
return rc_map_register(&hisi_tv_demo_map);
|
||||
}
|
||||
|
||||
static void __exit exit_rc_map_hisi_tv_demo(void)
|
||||
{
|
||||
rc_map_unregister(&hisi_tv_demo_map);
|
||||
}
|
||||
|
||||
module_init(init_rc_map_hisi_tv_demo)
|
||||
module_exit(exit_rc_map_hisi_tv_demo)
|
||||
|
||||
MODULE_LICENSE("GPL v2");
|
92
drivers/media/rc/keymaps/rc-tango.c
Ficheiro normal
92
drivers/media/rc/keymaps/rc-tango.c
Ficheiro normal
@@ -0,0 +1,92 @@
|
||||
/*
|
||||
* Copyright (C) 2017 Sigma Designs
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* version 2 as published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/module.h>
|
||||
#include <media/rc-map.h>
|
||||
|
||||
static struct rc_map_table tango_table[] = {
|
||||
{ 0x4cb4a, KEY_POWER },
|
||||
{ 0x4cb48, KEY_FILE },
|
||||
{ 0x4cb0f, KEY_SETUP },
|
||||
{ 0x4cb4d, KEY_SUSPEND },
|
||||
{ 0x4cb4e, KEY_VOLUMEUP },
|
||||
{ 0x4cb44, KEY_EJECTCD },
|
||||
{ 0x4cb13, KEY_TV },
|
||||
{ 0x4cb51, KEY_MUTE },
|
||||
{ 0x4cb52, KEY_VOLUMEDOWN },
|
||||
|
||||
{ 0x4cb41, KEY_1 },
|
||||
{ 0x4cb03, KEY_2 },
|
||||
{ 0x4cb42, KEY_3 },
|
||||
{ 0x4cb45, KEY_4 },
|
||||
{ 0x4cb07, KEY_5 },
|
||||
{ 0x4cb46, KEY_6 },
|
||||
{ 0x4cb55, KEY_7 },
|
||||
{ 0x4cb17, KEY_8 },
|
||||
{ 0x4cb56, KEY_9 },
|
||||
{ 0x4cb1b, KEY_0 },
|
||||
{ 0x4cb59, KEY_DELETE },
|
||||
{ 0x4cb5a, KEY_CAPSLOCK },
|
||||
|
||||
{ 0x4cb47, KEY_BACK },
|
||||
{ 0x4cb05, KEY_SWITCHVIDEOMODE },
|
||||
{ 0x4cb06, KEY_UP },
|
||||
{ 0x4cb43, KEY_LEFT },
|
||||
{ 0x4cb01, KEY_RIGHT },
|
||||
{ 0x4cb0a, KEY_DOWN },
|
||||
{ 0x4cb02, KEY_ENTER },
|
||||
{ 0x4cb4b, KEY_INFO },
|
||||
{ 0x4cb09, KEY_HOME },
|
||||
|
||||
{ 0x4cb53, KEY_MENU },
|
||||
{ 0x4cb12, KEY_PREVIOUS },
|
||||
{ 0x4cb50, KEY_PLAY },
|
||||
{ 0x4cb11, KEY_NEXT },
|
||||
{ 0x4cb4f, KEY_TITLE },
|
||||
{ 0x4cb0e, KEY_REWIND },
|
||||
{ 0x4cb4c, KEY_STOP },
|
||||
{ 0x4cb0d, KEY_FORWARD },
|
||||
{ 0x4cb57, KEY_MEDIA_REPEAT },
|
||||
{ 0x4cb16, KEY_ANGLE },
|
||||
{ 0x4cb54, KEY_PAUSE },
|
||||
{ 0x4cb15, KEY_SLOW },
|
||||
{ 0x4cb5b, KEY_TIME },
|
||||
{ 0x4cb1a, KEY_AUDIO },
|
||||
{ 0x4cb58, KEY_SUBTITLE },
|
||||
{ 0x4cb19, KEY_ZOOM },
|
||||
|
||||
{ 0x4cb5f, KEY_RED },
|
||||
{ 0x4cb1e, KEY_GREEN },
|
||||
{ 0x4cb5c, KEY_YELLOW },
|
||||
{ 0x4cb1d, KEY_BLUE },
|
||||
};
|
||||
|
||||
static struct rc_map_list tango_map = {
|
||||
.map = {
|
||||
.scan = tango_table,
|
||||
.size = ARRAY_SIZE(tango_table),
|
||||
.rc_proto = RC_PROTO_NECX,
|
||||
.name = RC_MAP_TANGO,
|
||||
}
|
||||
};
|
||||
|
||||
static int __init init_rc_map_tango(void)
|
||||
{
|
||||
return rc_map_register(&tango_map);
|
||||
}
|
||||
|
||||
static void __exit exit_rc_map_tango(void)
|
||||
{
|
||||
rc_map_unregister(&tango_map);
|
||||
}
|
||||
|
||||
module_init(init_rc_map_tango)
|
||||
module_exit(exit_rc_map_tango)
|
||||
|
||||
MODULE_AUTHOR("Sigma Designs");
|
||||
MODULE_LICENSE("GPL");
|
@@ -66,7 +66,7 @@ static struct rc_map_list twinhan_vp1027_map = {
|
||||
.map = {
|
||||
.scan = twinhan_vp1027,
|
||||
.size = ARRAY_SIZE(twinhan_vp1027),
|
||||
.rc_proto = RC_PROTO_UNKNOWN, /* Legacy IR type */
|
||||
.rc_proto = RC_PROTO_NEC,
|
||||
.name = RC_MAP_TWINHAN_VP1027_DVBS,
|
||||
}
|
||||
};
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador