* [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes
@ 2023-02-03 9:34 Christian Hewitt
2023-02-03 9:34 ` [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding Christian Hewitt
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Christian Hewitt @ 2023-02-03 9:34 UTC (permalink / raw)
To: Sean Young, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, linux-kernel, linux-media, devicetree
Cc: Christian Hewitt, Emanuel Strobel
This series adds bindings and common keymap for the Dreambox RC10/RC0
and RC20/RC-BT remote devices.
Changes since v1:
- Split bindings and keymap into separate patches
- Revise keymap description to clarify non-IR keys and mappings
- Revise tagging and key ordering in the keymap
In v1 the RC10/RC0 keymap is incorrectly tagged as RC20/RC-BT and vice
versa, resulting in some missing //RADIO and //TV keys. Correcting the
tagging then reordering the keys to match physical layouts [0] and [1]
results in no missing keys. The keymaps worked, but I've gotten things
confused when translating from Emanuel's original keymap. So apologies
for the confusion.
Christian Hewitt (1):
dt-bindings: media: rc: add rc-dreambox binding
Emanuel Strobel (1):
media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT
remotes
.../devicetree/bindings/media/rc.yaml | 1 +
drivers/media/rc/keymaps/Makefile | 1 +
drivers/media/rc/keymaps/rc-dreambox.c | 151 ++++++++++++++++++
include/media/rc-map.h | 1 +
4 files changed, 154 insertions(+)
create mode 100644 drivers/media/rc/keymaps/rc-dreambox.c
--
2.34.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding
2023-02-03 9:34 [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
@ 2023-02-03 9:34 ` Christian Hewitt
2023-02-03 10:13 ` Krzysztof Kozlowski
2023-02-03 9:34 ` [PATCH v2 2/2] media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT remotes Christian Hewitt
2023-02-03 9:41 ` [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
2 siblings, 1 reply; 5+ messages in thread
From: Christian Hewitt @ 2023-02-03 9:34 UTC (permalink / raw)
To: Sean Young, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, linux-kernel, linux-media, devicetree
Cc: Christian Hewitt, Emanuel Strobel
Add a binding for the rc-dreambox remote keymap
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
Documentation/devicetree/bindings/media/rc.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/media/rc.yaml b/Documentation/devicetree/bindings/media/rc.yaml
index e732b7f3a635..e7d2ae5a7eb9 100644
--- a/Documentation/devicetree/bindings/media/rc.yaml
+++ b/Documentation/devicetree/bindings/media/rc.yaml
@@ -55,6 +55,7 @@ properties:
- rc-dm1105-nec
- rc-dntv-live-dvb-t
- rc-dntv-live-dvbt-pro
+ - rc-dreambox
- rc-dtt200u
- rc-dvbsky
- rc-dvico-mce
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v2 2/2] media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT remotes
2023-02-03 9:34 [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
2023-02-03 9:34 ` [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding Christian Hewitt
@ 2023-02-03 9:34 ` Christian Hewitt
2023-02-03 9:41 ` [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
2 siblings, 0 replies; 5+ messages in thread
From: Christian Hewitt @ 2023-02-03 9:34 UTC (permalink / raw)
To: Sean Young, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, linux-kernel, linux-media, devicetree
Cc: Christian Hewitt, Emanuel Strobel
From: Emanuel Strobel <emanuel.strobel@yahoo.com>
Add a common keymap for the RC10/RC0 and RC20/RC-BT remotes used with
the Dreambox One and Dreambox Two DVB-S/T boxes. The maps are combined
since the IR codes do not conflict and both boxes have shipped with
both remote designs over time.
Both remote types can be programmed to control TVs, so include non-IR
keys that are used to switch-to or toggle the remote mode:
- DREAM in RC10/RC0 switches to (Dreambox) STB control mode
- TV in RC10/RC0 switches to TV control mode
- MODE in RC20/RC-BT toggles between STB/TV/BT control modes
In the RC20 keymap the Android MIC (voice search) key maps to KEY_HELP
and EXIT is mapped to KEY_ESC to replicate the go-backwards navigation
behaviour in the Android vendor OS that ships on Dreambox devices.
Signed-off-by: Emanuel Strobel <emanuel.strobel@yahoo.com>
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
drivers/media/rc/keymaps/Makefile | 1 +
drivers/media/rc/keymaps/rc-dreambox.c | 151 +++++++++++++++++++++++++
include/media/rc-map.h | 1 +
3 files changed, 153 insertions(+)
create mode 100644 drivers/media/rc/keymaps/rc-dreambox.c
diff --git a/drivers/media/rc/keymaps/Makefile b/drivers/media/rc/keymaps/Makefile
index f513ff5caf4e..6931c89fca99 100644
--- a/drivers/media/rc/keymaps/Makefile
+++ b/drivers/media/rc/keymaps/Makefile
@@ -37,6 +37,7 @@ obj-$(CONFIG_RC_MAP) += \
rc-dm1105-nec.o \
rc-dntv-live-dvb-t.o \
rc-dntv-live-dvbt-pro.o \
+ rc-dreambox.o \
rc-dtt200u.o \
rc-dvbsky.o \
rc-dvico-mce.o \
diff --git a/drivers/media/rc/keymaps/rc-dreambox.c b/drivers/media/rc/keymaps/rc-dreambox.c
new file mode 100644
index 000000000000..dea024fa3a22
--- /dev/null
+++ b/drivers/media/rc/keymaps/rc-dreambox.c
@@ -0,0 +1,151 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (c) 2021 Emanuel Strobel <emanuel.strobel@yahoo.com>
+ */
+
+#include <media/rc-map.h>
+#include <linux/module.h>
+
+/*
+ * Keytable for Dreambox RC10/RC0 and RC20/RC-BT remote controls
+ *
+ * Keys that are not IR addressable:
+ *
+ * // DREAM switches to STB control mode
+ * // TV switches to TV control mode
+ * // MODE toggles STB/TV/BT control modes
+ *
+ */
+
+static struct rc_map_table dreambox[] = {
+ /* Dreambox RC10/RC0/RCU-BT remote */
+ { 0x3200, KEY_POWER },
+
+ // DREAM
+ { 0x3290, KEY_HELP },
+ // TV
+
+ { 0x3201, KEY_1 },
+ { 0x3202, KEY_2 },
+ { 0x3203, KEY_3 },
+ { 0x3204, KEY_4 },
+ { 0x3205, KEY_5 },
+ { 0x3206, KEY_6 },
+ { 0x3207, KEY_7 },
+ { 0x3208, KEY_8 },
+ { 0x3209, KEY_9 },
+ { 0x320a, KEY_PREVIOUS },
+ { 0x320b, KEY_0 },
+ { 0x320c, KEY_NEXT },
+
+ { 0x321f, KEY_RED },
+ { 0x3220, KEY_GREEN },
+ { 0x3221, KEY_YELLOW },
+ { 0x3222, KEY_BLUE },
+
+ { 0x3210, KEY_INFO },
+ { 0x3212, KEY_MENU },
+ { 0x320e, KEY_AUDIO },
+ { 0x3218, KEY_PVR },
+
+ { 0x3213, KEY_LEFT },
+ { 0x3211, KEY_UP },
+ { 0x3215, KEY_RIGHT },
+ { 0x3217, KEY_DOWN },
+ { 0x3214, KEY_OK },
+
+ { 0x3219, KEY_VOLUMEUP },
+ { 0x321c, KEY_VOLUMEDOWN },
+
+ { 0x321d, KEY_ESC }, // EXIT
+ { 0x321a, KEY_MUTE },
+
+ { 0x321b, KEY_PAGEUP },
+ { 0x321e, KEY_PAGEDOWN },
+
+ { 0x3223, KEY_PREVIOUSSONG },
+ { 0x3224, KEY_PLAYPAUSE },
+ { 0x3225, KEY_STOP },
+ { 0x3226, KEY_NEXTSONG },
+
+ { 0x3227, KEY_TV },
+ { 0x3228, KEY_RADIO },
+ { 0x3229, KEY_TEXT },
+ { 0x322a, KEY_RECORD },
+
+ /* Dreambox RC20/RC-BT */
+ { 0x3407, KEY_MUTE },
+ // MODE
+ { 0x3401, KEY_POWER },
+
+ { 0x3432, KEY_PREVIOUSSONG },
+ { 0x3433, KEY_PLAYPAUSE },
+ { 0x3435, KEY_NEXTSONG },
+
+ { 0x3436, KEY_RECORD },
+ { 0x3434, KEY_STOP },
+ { 0x3425, KEY_TEXT },
+
+ { 0x341f, KEY_RED },
+ { 0x3420, KEY_GREEN },
+ { 0x3421, KEY_YELLOW },
+ { 0x3422, KEY_BLUE },
+
+ { 0x341b, KEY_INFO },
+ { 0x341c, KEY_MENU },
+ { 0x3430, KEY_AUDIO },
+ { 0x3431, KEY_PVR },
+
+ { 0x3414, KEY_LEFT },
+ { 0x3411, KEY_UP },
+ { 0x3416, KEY_RIGHT },
+ { 0x3419, KEY_DOWN },
+ { 0x3415, KEY_OK },
+
+ { 0x3413, KEY_VOLUMEUP },
+ { 0x3418, KEY_VOLUMEDOWN },
+
+ { 0x3412, KEY_ESC }, // EXIT
+ { 0x3426, KEY_HELP }, // MIC
+
+ { 0x3417, KEY_PAGEUP },
+ { 0x341a, KEY_PAGEDOWN },
+
+ { 0x3404, KEY_1 },
+ { 0x3405, KEY_2 },
+ { 0x3406, KEY_3 },
+ { 0x3408, KEY_4 },
+ { 0x3409, KEY_5 },
+ { 0x340a, KEY_6 },
+ { 0x340c, KEY_7 },
+ { 0x340d, KEY_8 },
+ { 0x340e, KEY_9 },
+ { 0x340b, KEY_PREVIOUS },
+ { 0x3410, KEY_0 },
+ { 0x340f, KEY_NEXT },
+};
+
+static struct rc_map_list dreambox_map = {
+ .map = {
+ .scan = dreambox,
+ .size = ARRAY_SIZE(dreambox),
+ .rc_proto = RC_PROTO_NEC,
+ .name = RC_MAP_DREAMBOX,
+ }
+};
+
+static int __init init_rc_map_dreambox(void)
+{
+ return rc_map_register(&dreambox_map);
+}
+
+static void __exit exit_rc_map_dreambox(void)
+{
+ rc_map_unregister(&dreambox_map);
+}
+
+module_init(init_rc_map_dreambox)
+module_exit(exit_rc_map_dreambox)
+
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Emanuel Strobel <emanuel.strobel@yahoo.com>");
diff --git a/include/media/rc-map.h b/include/media/rc-map.h
index 793b54342dff..94ee968d4722 100644
--- a/include/media/rc-map.h
+++ b/include/media/rc-map.h
@@ -241,6 +241,7 @@ struct rc_map *rc_map_get(const char *name);
#define RC_MAP_DM1105_NEC "rc-dm1105-nec"
#define RC_MAP_DNTV_LIVE_DVB_T "rc-dntv-live-dvb-t"
#define RC_MAP_DNTV_LIVE_DVBT_PRO "rc-dntv-live-dvbt-pro"
+#define RC_MAP_DREAMBOX "rc-dreambox"
#define RC_MAP_DTT200U "rc-dtt200u"
#define RC_MAP_DVBSKY "rc-dvbsky"
#define RC_MAP_DVICO_MCE "rc-dvico-mce"
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes
2023-02-03 9:34 [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
2023-02-03 9:34 ` [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding Christian Hewitt
2023-02-03 9:34 ` [PATCH v2 2/2] media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT remotes Christian Hewitt
@ 2023-02-03 9:41 ` Christian Hewitt
2 siblings, 0 replies; 5+ messages in thread
From: Christian Hewitt @ 2023-02-03 9:41 UTC (permalink / raw)
To: Christian Hewitt
Cc: Sean Young, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, linux-kernel, linux-media, devicetree,
Emanuel Strobel
> On 3 Feb 2023, at 1:34 pm, Christian Hewitt <christianshewitt@gmail.com> wrote:
>
> This series adds bindings and common keymap for the Dreambox RC10/RC0
> and RC20/RC-BT remote devices.
>
> Changes since v1:
> - Split bindings and keymap into separate patches
> - Revise keymap description to clarify non-IR keys and mappings
> - Revise tagging and key ordering in the keymap
>
> In v1 the RC10/RC0 keymap is incorrectly tagged as RC20/RC-BT and vice
> versa, resulting in some missing //RADIO and //TV keys. Correcting the
> tagging then reordering the keys to match physical layouts [0] and [1]
> results in no missing keys. The keymaps worked, but I've gotten things
> confused when translating from Emanuel's original keymap. So apologies
> for the confusion.
[0] https://www.satking.de/receiver--sat-technik/receiver-zubehoer/fernbedienungen/fernbedienung-dreambox-original-rc10-500hd-525hd-7020hd-dm900-dm920
[1] https://www.satking.de/receiver--sat-technik/receiver-zubehoer/fernbedienungen/dreambox-original-ir-fernbedienung-rc20-fuer-alle-dreamboxen
^ missed these references
> Christian Hewitt (1):
> dt-bindings: media: rc: add rc-dreambox binding
>
> Emanuel Strobel (1):
> media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT
> remotes
>
> .../devicetree/bindings/media/rc.yaml | 1 +
> drivers/media/rc/keymaps/Makefile | 1 +
> drivers/media/rc/keymaps/rc-dreambox.c | 151 ++++++++++++++++++
> include/media/rc-map.h | 1 +
> 4 files changed, 154 insertions(+)
> create mode 100644 drivers/media/rc/keymaps/rc-dreambox.c
>
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding
2023-02-03 9:34 ` [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding Christian Hewitt
@ 2023-02-03 10:13 ` Krzysztof Kozlowski
0 siblings, 0 replies; 5+ messages in thread
From: Krzysztof Kozlowski @ 2023-02-03 10:13 UTC (permalink / raw)
To: Christian Hewitt, Sean Young, Mauro Carvalho Chehab, Rob Herring,
Krzysztof Kozlowski, linux-kernel, linux-media, devicetree
Cc: Emanuel Strobel
On 03/02/2023 10:34, Christian Hewitt wrote:
> Add a binding for the rc-dreambox remote keymap
>
> Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
If there is going to be resend:
Subject: drop second/last, redundant "bindins". The "dt-bindings" prefix
is already stating that these are bindings.
> ---
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-02-03 10:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-03 9:34 [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
2023-02-03 9:34 ` [PATCH v2 1/2] dt-bindings: media: rc: add rc-dreambox binding Christian Hewitt
2023-02-03 10:13 ` Krzysztof Kozlowski
2023-02-03 9:34 ` [PATCH v2 2/2] media: rc: add common keymap for Dreambox RC10/RC0 and RC20/RC-BT remotes Christian Hewitt
2023-02-03 9:41 ` [PATCH v2 0/2] media: rc: add keymap and bindings for Dreambox remotes Christian Hewitt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).