From patchwork Sat Feb 3 12:47:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nils Rothaug X-Patchwork-Id: 13544238 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A10AC17C77 for ; Sat, 3 Feb 2024 12:48:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964524; cv=none; b=XHT8MgOHnAqwwPLWHYSh/1QxLJvop2ISgESuEg+3xMRHG6upmw40EGnR/mlWhhPkqCwNz00xeHWu/Ac1Z4eCu7rPDl/ME6xdSI9NqPgHwnGPtboyAY/os4d3yxoYYnZ3jAVjYNmF/iRMeP85qIh07ihBR4QNOztKlWAP3q7DtDk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964524; c=relaxed/simple; bh=U6od2DYtunY9aMSjDwtHn426/lUJpbHFnbl+LRJoGVM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=gDBOQI4nZ6xRBkLChljAlznTzG0i9qTIUTYunTfJtTUKErIkJj9ogTHRkpmT/j18PpfnRiOlpghfKXyihlWtE7H/oCmnAJ2APT9NjYGrfce8WeZR9SpRTXhDsXgqfMp1rk1H5LRd+Pf3lXtgWkDWxlonNHG+sOeRixhqaKuyAZw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b=mCwJyvpZ; arc=none smtp.client-ip=212.227.15.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b="mCwJyvpZ" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1706964515; x=1707569315; i=nils.rothaug@gmx.de; bh=U6od2DYtunY9aMSjDwtHn426/lUJpbHFnbl+LRJoGVM=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To: References; b=mCwJyvpZ0MUEUwl0vkHtiyLuEL5GTpYu0Uc95OUYNHeua8VKArsPor+NXNJRilVV n251JjcDCkF0Iiri3bBsItyIL2dd04ovRMeE2BKANYbQEUw3H7zVQ44LZeOpeHWyu 21iXNaD80mvwCWzlOCDUz77LcW0Yb8D1ChY+JrmxszQT9OYULBIO9RonwpCOseKDE oQwuX8PmNH812hI6cjAHW0zj1pKh35xUT1zSy8h484DBIsyW+YI1OgMn+aUrUDTFo z5ZdZGIvepWKsGIrwCustff9Kx1c8Vph0hyMR8lgYJrQ4IvB8PCeAu3klO05YVkk+ TQct+49w4ypM35SI2w== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from nilsr-VirtualBox ([83.78.44.59]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1My32L-1r6rsK2VA7-00zXCq; Sat, 03 Feb 2024 13:48:35 +0100 From: Nils Rothaug To: mchehab@kernel.org Cc: linux-media@vger.kernel.org, Nils Rothaug Subject: [PATCH 1/4] media: tuner-simple: Add support for Tena TNF931D-DFDR1 Date: Sat, 3 Feb 2024 13:47:42 +0100 Message-Id: <20240203124745.10257-2-nils.rothaug@gmx.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240203124745.10257-1-nils.rothaug@gmx.de> References: <20240203124745.10257-1-nils.rothaug@gmx.de> Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Provags-ID: V03:K1:BThAH31c96jWPIr7OVfH4HvDoP/cjavBzPV493RDQHa2lDeShfi UNgNx//NGYpGpxCTDawdo0+BLsEtVEH0Nw7NOzUvuht7Od6nDX1OIUSgFz7vnsRFe4KSw3r OpehFZjfXW3Vbwy99TjrtzSHTNQDr6CLBc2iACElD6T1eeHge1yrlKZ4ouu8lESiimoUb7Q NZEvCjJTMN1pnfo06qMQA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:p6KcgjkXByA=;Z/2A/L2zyxFYD+okVr0sZRElh5z NI0DxCSyPrb+PhSNqhjQJTNCbl2euN8qzvfsHT8OSuFcihzMmB6j7vBY5kSl+NHpb5uhBLqGd f74z7vnnh+aLSV/67kCaBA3Ek0pVHuAMT7XQAq+6jJj+Q3VoTibxlEPFZATXUz52p2Q2GtRzw rIKzdz+vTWsggL7KyKSAhyo2Zz+eSs53RCAH3J7OrhqDTxjhJEdYlMXNoJdGo/l9YOi4Oc2TH eSV+8Oe9Hduh+lTladwOL78SEpmkTAXXne+J4j0Fx0VK9/CNUw+T/sDzJKo/WNnh1ERmGZwQx wjAs3QD3dzhDx9C5HvEj+9Mc34g1GhqOI5kdsA4iRBVM3fRPONPEtTw9fijhR6JvklP0n6rFB Mdoj9K71Jfo4fO8otEj7rC630abZLpC5P9qdnJhAHMhFw5b3kioRAaZasrXyG60hxQIq2N9Gq W/mge6Dr60UQDqTLzENAykET/ePMwvusDuGlBJ7LsKrPepBFrVUmeZbtQBrCR94Fga2iXePRN NsqdcXAMYHip3FuuNNuEP+5+AKpMbCmta1h/R1kSDLM6n682IHXbfjLkGhBArXdIR6ppBmk3p 2DxesfUZXle98/s9+JUlHYe4DAG41WtbOlBeSbyiurxtDEPRmkh8ovHJgw7patid05EAMb3Jx Dkp5/b3JZTeZPCqGHlo0pN2JuOoVwCx+NcFP5L7wKt1erJtcn69bMKDi2FZyb3Cs+P25usU2U cpm7DLFcYIn3wkZSwfPuujVrKJAIESYA2kbwD4M7NbsbVmlwrJPim0G/3vcfrNJmfkH57oJlQ Vm4MDYlCAGX7h7jKZ36x9Em6KmTSNn/Db7Ns+erHZTeMI= Tuner ranges were determined by USB capturing the vendor driver of a MyGica UTV3 video capture card. Signed-off-by: Nils Rothaug --- drivers/media/tuners/tuner-types.c | 22 ++++++++++++++++++++++ include/media/tuner.h | 1 + 2 files changed, 23 insertions(+) -- 2.34.1 diff --git a/drivers/media/tuners/tuner-types.c b/drivers/media/tuners/tuner-types.c index ff5a6c0acdd..cec2d6fefd7 100644 --- a/drivers/media/tuners/tuner-types.c +++ b/drivers/media/tuners/tuner-types.c @@ -1434,6 +1434,23 @@ static struct tuner_params tuner_sony_btf_pg463z_params[] = { }, }; + +/* ------------- TUNER_TENA_TNF_931D_DFDR1 - NXP TDA6509A ------------- */ + +static struct tuner_range tuner_tena_tnf_931d_dfdr1_ranges[] = { + { 16 * 161.15 /*MHz*/, 0x8e, 0x01, }, + { 16 * 463.15 /*MHz*/, 0x8e, 0x02, }, + { 16 * 999.99 , 0x8e, 0x08, }, +}; + +static struct tuner_params tuner_tena_tnf_931d_dfdr1_params[] = { + { + .type = TUNER_PARAM_TYPE_PAL, + .ranges = tuner_tena_tnf_931d_dfdr1_ranges, + .count = ARRAY_SIZE(tuner_tena_tnf_931d_dfdr1_ranges), + }, +}; + /* --------------------------------------------------------------------- */ struct tunertype tuners[] = { @@ -1946,6 +1963,11 @@ struct tunertype tuners[] = { .name = "Silicon Labs Si2157 tuner", /* see si2157.c for details */ }, + [TUNER_TENA_TNF_931D_DFDR1] = { + .name = "Tena TNF931D-DFDR1", + .params = tuner_tena_tnf_931d_dfdr1_params, + .count = ARRAY_SIZE(tuner_tena_tnf_931d_dfdr1_params), + } }; EXPORT_SYMBOL(tuners); diff --git a/include/media/tuner.h b/include/media/tuner.h index a7796e0a365..c5fd6faabfd 100644 --- a/include/media/tuner.h +++ b/include/media/tuner.h @@ -133,6 +133,7 @@ #define TUNER_SONY_BTF_PK467Z 90 /* NTSC_JP */ #define TUNER_SONY_BTF_PB463Z 91 /* NTSC */ #define TUNER_SI2157 92 +#define TUNER_TENA_TNF_931D_DFDR1 93 /* tv card specific */ #define TDA9887_PRESENT (1<<0) From patchwork Sat Feb 3 12:47:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nils Rothaug X-Patchwork-Id: 13544239 Received: from mout.gmx.net (mout.gmx.net [212.227.15.15]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CC25C17C77 for ; Sat, 3 Feb 2024 12:48:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.15 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964531; cv=none; b=cZvvLWpgmwLpBlBgVFhrFuBKEAE4xp9D6eVusOlEZgqdPmvsR0jEicBLTmqT10vyXbCt1RZ4m3SZJzVIWGJnTsOwagUc6Xcpb4S6xWn1PDW6VNWp7nj4VjVi0nnASFvVYZskn+1bMAd199W6eItMsg8ok4PKh3iWoSWbHkDv5os= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964531; c=relaxed/simple; bh=gslTGFzhJiHvAV79gQ0nGIwPRX8ueRIUM6pb7lmqNxc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=BdqdYeWu4bDNrnhcjkAfQGY+I12bseN7OgPilsNk6Vg1/cpOEJB49Ag7tJPpo9d3q0PejPfRTM11pQ5BOn/staVMvbUMC1UUcjitV7mcXRKBrklVrRvdogD4BFNBx/8ZP+21cMSST/jOqe0aoCsMzTdDTcIQLZrU6e4Dz+CzLmE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b=K7CjxCmC; arc=none smtp.client-ip=212.227.15.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b="K7CjxCmC" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1706964522; x=1707569322; i=nils.rothaug@gmx.de; bh=gslTGFzhJiHvAV79gQ0nGIwPRX8ueRIUM6pb7lmqNxc=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To: References; b=K7CjxCmCDdCSB813CXfQHN39UIWngZ4HvK7EjIBCCVH48OKQcZ53DWmuM1cnefjc RAhIH8yJF6XMMLY/v/KxCW9+g8PFxp/GOAXgp0N3q+rmYgzILiWnTg8gxs5i/RLbG UQnq0/Uj3ekHR3B67JDn8M14tI4E5luIi3iDPQkwUo8FuKEBv+qQX5XVqub758WEs ao9Qrw96GFLZtGvB4rxRZHAMtzJ0KjR8A1HQO/WYwJptHjSNGxgz6LAN4TsTKr+Hk jm3qqNZSMLw3rmR5pVPacctJnm/8Zf2I/t0IM4FIegg/TONPNrRn1fvrtHyGUK9OI pCo7CRs4i3eJ0pl/Pg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from nilsr-VirtualBox ([83.78.44.59]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MuDXz-1rBpwt1hTZ-00ubFq; Sat, 03 Feb 2024 13:48:42 +0100 From: Nils Rothaug To: mchehab@kernel.org Cc: linux-media@vger.kernel.org, Nils Rothaug Subject: [PATCH 2/4] media: em28xx: Add support for MyGica UTV3 Date: Sat, 3 Feb 2024 13:47:43 +0100 Message-Id: <20240203124745.10257-3-nils.rothaug@gmx.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240203124745.10257-1-nils.rothaug@gmx.de> References: <20240203124745.10257-1-nils.rothaug@gmx.de> Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Provags-ID: V03:K1:PlJRJe3d21Qf6fLhjYQ4BRM3cGnFaz65fXZDmYQV1MG5rOvRBJ9 5n4AK7/beBv7inc4PHRwC+La3pfLqqhCSyaqrdXxav2H49e/XFXzx2UGGiSkXzTuiThDKhj GyM3mgLl2BytIKcwJtwaSdrcI7LhyqbexV0omG95CRr1uDiWq/Rr13sgDLoMS4D84HA9Cxu Epm0LuLTKjTLLibFg4Ong== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:cLbUgXKlYQY=;r7BRd6GvUSnLHqpPz0+yJqORtEJ SPKkHYRgD7RjFb6cDwqngl0aqlcqL6SBUcCs2vj/t4xZHWb1PNozQ8/CcFQg/Nd3dF1SM2cru gpnisV+UnY56b27GUBA8g/6um677hfkytZkMo2ALRLZ8/PnZT3EZcLKnDDWyfbsm+R3sFQm/e 2FvQ+6kkazK9oTtRLgjsCUgZtMnbvka1kMFL4jbNX+KH1WLqir315/IskrkwAOn5gHl3VWCXi Sh0ALKIQisEjYW6QLyrgErBrsNEIO0mIIUhbrWb9J5NLqKeNR3SQ3/H8GByQN/wpLGAvgpbz1 v3e5CQFuOYdsRbu/QjyrYokHTalR7ogK2a+6WjPKEAft9WQttLIH/SLUhS5UKQCgAdDujtGWF Lo7TH50QVaUybb4S2CxSOdecMWy6r8DCENQNPg0xBVfzsnh7S9rWsDP/cvCkqzAfxUavZSKtT uZWaQzcoPTdzXepu84H9wU7NlNXczobOsQmtIW32vY3JKrIzYKtzKWHlMjYpJk/H/PIrhi92m LrJqm8SFVP3Bqu2KW0m74WLqIQ5ECTJiBeUoVJ933TnSuEEoPw9ZZ5HC5OMVpknvQY6BgYtYd j1nQBnnzFLNCL0qQ86NBoOvhI1IETxnkyyfa8It50hwzh4Sahc0r4ngA++bWJJOTH3eTW9BPq sILwkk132sNcRsbY3fd04O1P/CrWmcQCLZ5NbZFbqr8JyNXB/X8ZQkJofIdjQxcyWlkG7J9lh v0Q8ftLCOk9fatVWHpo6kBJnyXiXa2O3oFe6DpMWexMIkzko1OYOSFEbnHbtN21Vec0KZ216t dvHpAre24hAmFl69LNNkoAGgDN6nXNGUgyTdqj0CONeJQ= The MyGica UTV3 Analog USB2.0 TV Box is a USB video capture card that has analog TV, composite video, and FM radio inputs, an IR remote, and provides audio only as Line Out, but not over USB. Mine is prepared for an FM tuner, but not equipped with one. Support for FM radio is therefore missing. The device contains: - Empia EM2860 USB bridge - Philips SAA7113 video decoder - NXP TDA9801T demodulator - Tena TNF931D-DFDR1 tuner - ST HCF4052 demux, switches input audio to Line Out Signed-off-by: Nils Rothaug --- drivers/media/rc/keymaps/Makefile | 1 + drivers/media/rc/keymaps/rc-mygica-utv3.c | 69 +++++++++++++++++++++++ drivers/media/usb/em28xx/em28xx-cards.c | 52 +++++++++++++++++ drivers/media/usb/em28xx/em28xx.h | 1 + include/media/rc-map.h | 1 + 5 files changed, 124 insertions(+) create mode 100644 drivers/media/rc/keymaps/rc-mygica-utv3.c -- 2.34.1 diff --git a/drivers/media/rc/keymaps/Makefile b/drivers/media/rc/keymaps/Makefile index f19558fdab0..7fdf0d9edbf 100644 --- a/drivers/media/rc/keymaps/Makefile +++ b/drivers/media/rc/keymaps/Makefile @@ -84,6 +84,7 @@ obj-$(CONFIG_RC_MAP) += \ rc-msi-digivox-ii.o \ rc-msi-tvanywhere.o \ rc-msi-tvanywhere-plus.o \ + rc-mygica-utv3.o \ rc-nebula.o \ rc-nec-terratec-cinergy-xs.o \ rc-norwood.o \ diff --git a/drivers/media/rc/keymaps/rc-mygica-utv3.c b/drivers/media/rc/keymaps/rc-mygica-utv3.c new file mode 100644 index 00000000000..f32b8281459 --- /dev/null +++ b/drivers/media/rc/keymaps/rc-mygica-utv3.c @@ -0,0 +1,69 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/* rc-mygica-utv3.c - Keytable for the MyGica UTV3 Analog USB2.0 TV Box + * + * Copyright (c) 2024 by Nils Rothaug + */ + +#include +#include + +static struct rc_map_table mygica_utv3[] = { + { 0x0d, KEY_MUTE }, + { 0x38, KEY_VIDEO }, /* Source */ + { 0x14, KEY_RADIO }, /* FM Radio */ + { 0x0c, KEY_POWER2 }, + + { 0x01, KEY_NUMERIC_1}, + { 0x02, KEY_NUMERIC_2}, + { 0x03, KEY_NUMERIC_3}, + { 0x04, KEY_NUMERIC_4}, + { 0x05, KEY_NUMERIC_5}, + { 0x06, KEY_NUMERIC_6}, + { 0x07, KEY_NUMERIC_7}, + { 0x08, KEY_NUMERIC_8}, + { 0x09, KEY_NUMERIC_9}, + { 0x00, KEY_NUMERIC_0}, + + { 0x0a, KEY_DIGITS }, /* Single/double/triple digit */ + { 0x0e, KEY_CAMERA }, /* Snapshot */ + { 0x0f, KEY_ZOOM }, /* Full Screen */ + { 0x29, KEY_LAST }, /* Recall (return to previous channel) */ + + { 0x17, KEY_PLAY }, + { 0x1f, KEY_RECORD }, + { 0x0b, KEY_STOP }, + { 0x16, KEY_PAUSE }, + + { 0x20, KEY_CHANNELUP }, + { 0x21, KEY_CHANNELDOWN }, + { 0x10, KEY_VOLUMEUP }, + { 0x11, KEY_VOLUMEDOWN }, + { 0x26, KEY_REWIND }, + { 0x27, KEY_FASTFORWARD }, +}; + +static struct rc_map_list mygica_utv3_map = { + .map = { + .scan = mygica_utv3, + .size = ARRAY_SIZE(mygica_utv3), + .rc_proto = RC_PROTO_RC5, + .name = RC_MAP_MYGICA_UTV3, + } +}; + +static int __init init_rc_map_mygica_utv3(void) +{ + return rc_map_register(&mygica_utv3_map); +} + +static void __exit exit_rc_map_mygica_utv3(void) +{ + rc_map_unregister(&mygica_utv3_map); +} + +module_init(init_rc_map_mygica_utv3) +module_exit(exit_rc_map_mygica_utv3) + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Nils Rothaug"); +MODULE_DESCRIPTION("MyGica UTV3 Analog USB2.0 TV Box remote keytable"); diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em28xx/em28xx-cards.c index 4d037c92af7..2c53063d69c 100644 --- a/drivers/media/usb/em28xx/em28xx-cards.c +++ b/drivers/media/usb/em28xx/em28xx-cards.c @@ -554,6 +554,30 @@ static struct em28xx_reg_seq hauppauge_usb_quadhd_atsc_reg_seq[] = { {-1, -1, -1, -1}, }; +/* + * MyGica USB TV Box + * GPIO_1,0: 00=Composite audio + * 01=Tuner audio + * 10=Mute audio + * 11=FM radio? (if equipped) + * GPIO_2-6: Unused + * GPIO_7: ?? + */ +static const struct em28xx_reg_seq mygica_utv3_composite_audio_gpio[] = { + {EM2820_R08_GPIO_CTRL, 0xfc, 0xff, 0}, + { -1, -1, -1, -1}, +}; + +static const struct em28xx_reg_seq mygica_utv3_tuner_audio_gpio[] = { + {EM2820_R08_GPIO_CTRL, 0xfd, 0xff, 0}, + { -1, -1, -1, -1}, +}; + +static const struct em28xx_reg_seq mygica_utv3_suspend_gpio[] = { + {EM2820_R08_GPIO_CTRL, 0xfe, 0xff, 0}, + { -1, -1, -1, -1}, +}; + /* * Button definitions */ @@ -2578,6 +2602,32 @@ const struct em28xx_board em28xx_boards[] = { .tuner_gpio = hauppauge_usb_quadhd_atsc_reg_seq, .leds = hauppauge_usb_quadhd_leds, }, + /* + * eb1a:2860 MyGica UTV3 Analog USB2.0 TV Box + * Empia EM2860, Philips SAA7113, NXP TDA9801T demod, + * Tena TNF931D-DFDR1 tuner (contains NXP TDA6509A), + * ST HCF4052 demux (switches audio to line out), + * no audio over USB + */ + [EM2860_BOARD_MYGICA_UTV3] = { + .name = "MyGica UTV3 Analog USB2.0 TV Box", + .xclk = EM28XX_XCLK_IR_RC5_MODE | EM28XX_XCLK_FREQUENCY_12MHZ, + .tuner_type = TUNER_TENA_TNF_931D_DFDR1, + .ir_codes = RC_MAP_MYGICA_UTV3, + .decoder = EM28XX_SAA711X, + .suspend_gpio = mygica_utv3_suspend_gpio, + .input = { { + .type = EM28XX_VMUX_COMPOSITE, + .vmux = SAA7115_COMPOSITE0, + .amux = EM28XX_AMUX_VIDEO, + .gpio = mygica_utv3_composite_audio_gpio, + }, { + .type = EM28XX_VMUX_TELEVISION, + .vmux = SAA7115_COMPOSITE2, + .amux = EM28XX_AMUX_VIDEO, + .gpio = mygica_utv3_tuner_audio_gpio, + } }, + }, }; EXPORT_SYMBOL_GPL(em28xx_boards); @@ -2819,6 +2869,7 @@ static const struct em28xx_hash_table em28xx_eeprom_hash[] = { {0x63f653bd, EM2870_BOARD_REDDO_DVB_C_USB_BOX, TUNER_ABSENT}, {0x4e913442, EM2882_BOARD_DIKOM_DK300, TUNER_XC2028}, {0x85dd871e, EM2882_BOARD_ZOLID_HYBRID_TV_STICK, TUNER_XC2028}, + {0x8f597549, EM2860_BOARD_MYGICA_UTV3, TUNER_TENA_TNF_931D_DFDR1}, }; /* I2C devicelist hash table for devices with generic USB IDs */ @@ -2831,6 +2882,7 @@ static const struct em28xx_hash_table em28xx_i2c_hash[] = { {0x4ba50080, EM2861_BOARD_GADMEI_UTV330PLUS, TUNER_TNF_5335MF}, {0x6b800080, EM2874_BOARD_LEADERSHIP_ISDBT, TUNER_ABSENT}, {0x27e10080, EM2882_BOARD_ZOLID_HYBRID_TV_STICK, TUNER_XC2028}, + {0x840d0484, EM2860_BOARD_MYGICA_UTV3, TUNER_TENA_TNF_931D_DFDR1}, }; /* NOTE: introduce a separate hash table for devices with 16 bit eeproms */ diff --git a/drivers/media/usb/em28xx/em28xx.h b/drivers/media/usb/em28xx/em28xx.h index db18dd814a6..f3449c240d2 100644 --- a/drivers/media/usb/em28xx/em28xx.h +++ b/drivers/media/usb/em28xx/em28xx.h @@ -143,6 +143,7 @@ #define EM28178_BOARD_PCTV_461E_V2 104 #define EM2860_BOARD_MYGICA_IGRABBER 105 #define EM2874_BOARD_HAUPPAUGE_USB_QUADHD 106 +#define EM2860_BOARD_MYGICA_UTV3 107 /* Limits minimum and default number of buffers */ #define EM28XX_MIN_BUF 4 diff --git a/include/media/rc-map.h b/include/media/rc-map.h index 4676545ffd8..4867eb2f931 100644 --- a/include/media/rc-map.h +++ b/include/media/rc-map.h @@ -290,6 +290,7 @@ struct rc_map *rc_map_get(const char *name); #define RC_MAP_MSI_DIGIVOX_III "rc-msi-digivox-iii" #define RC_MAP_MSI_TVANYWHERE "rc-msi-tvanywhere" #define RC_MAP_MSI_TVANYWHERE_PLUS "rc-msi-tvanywhere-plus" +#define RC_MAP_MYGICA_UTV3 "rc-mygica-utv3" #define RC_MAP_NEBULA "rc-nebula" #define RC_MAP_NEC_TERRATEC_CINERGY_XS "rc-nec-terratec-cinergy-xs" #define RC_MAP_NORWOOD "rc-norwood" From patchwork Sat Feb 3 12:47:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nils Rothaug X-Patchwork-Id: 13544240 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0C45417C77 for ; Sat, 3 Feb 2024 12:48:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964536; cv=none; b=RakWKWxQx4Y6yNOiU1kzfcunK70NduTpwj89xgKp2OX2LC2A6cd46AoEZYLbXRa38oIBHl314CEUWSKeMoNo2R12O1y605QWcZUQWaod++f48a3GC4n/e7m0KCIq0dDnu9uiaape4XawVLQYvWGADtuzDaJPbtgyUk8D0/KQPME= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964536; c=relaxed/simple; bh=bQdgxq7JKkTQMVcemcI0Q30F+V3xBLEtQBlbbYzuY7Y=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=gTQ2J8hdOOHx8LW9Ts+galbhmdzrI71ojz+0Ito1vU4AirWCtnXcZbiOubOuJovhP04Mlg+XRBxyPrOj5C4g+AYBl95Eq7i/faQPYO+xZlwBY6yDwOCbEFOHI33GCh87pW9TaZ0VEYYoX72m3/yjbBUxXcDt+iYuIHuVHjbVT04= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b=X6nX1vFp; arc=none smtp.client-ip=212.227.15.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b="X6nX1vFp" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1706964528; x=1707569328; i=nils.rothaug@gmx.de; bh=bQdgxq7JKkTQMVcemcI0Q30F+V3xBLEtQBlbbYzuY7Y=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To: References; b=X6nX1vFpW3zP3NP5epstYOmo7Mni+I/zQgx/270omWwugbUixle/T3moJ7Y47rDi paQXYPb0Vcv/l3uwUeCD9MoK9c+Q6q59SFPEoRwQtGOPtoC8xawdvrBzi1YYIlfE9 xuNgw9NNbgd4kBqLZUnOSXKgprnxCpdqPnA3SjSuSIGsfESrM5HQ1ct007W96UCU1 +7D4L423prMMdpqe/jWSa8E96vB0rtDT44TgJEhmHUV1jtELIHgrHeEAbvZDm0i07 4lbpchZhArcCtJF3V3Pt3/511h6GlYSZeQxKU/xe5jmVo/G9A/wz1hHo2xbqsBL02 96qvG4SxolDMVB8yLg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from nilsr-VirtualBox ([83.78.44.59]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1MeCpR-1qvoAh0zhf-00bIFU; Sat, 03 Feb 2024 13:48:48 +0100 From: Nils Rothaug To: mchehab@kernel.org Cc: linux-media@vger.kernel.org, Nils Rothaug Subject: [PATCH 3/4] media: em28xx: Set GPIOs for non-audio boards when switching input Date: Sat, 3 Feb 2024 13:47:44 +0100 Message-Id: <20240203124745.10257-4-nils.rothaug@gmx.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240203124745.10257-1-nils.rothaug@gmx.de> References: <20240203124745.10257-1-nils.rothaug@gmx.de> Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Provags-ID: V03:K1:D2sDkVqz42yz0REyFPGmSt9dcl6T3Lp4KTkTlVLX34sHv4hw8sg 5YgsljCH9vygvobi1obXY4aKO7fHOXtJHJOV+XAcZ5lcAoXXPJ8IRFTFQOeFg4GyEnATJ14 /rV1ZwCRh+oLy3cR/EsuBtNYtBQcsOsBJGjGf6mQqScQBTncUN/wx2o7zwIdo8fSqHvWLKE t1IMisY2b5CWvsOGiaEJQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:vI+udklihIc=;VMbrgWjyWIzhfLR0gT77IvMOYn9 EbiyPNQrl5KqrFcC7zrZcAV+q+Ka1oxRau5oNnYxGugD8Yhc6OOdqsrH+0msHYgEb5CjPGCI+ zjFyvf9urb/u0TdNjkYNNVBXWXuc1+X1TYzYVw2biaegE2yIVYUSvw9z2F2Jlzo6IKNsn8wYp lF9D4Ih59B/2pz7zmUBXg3LfKQFbrQiDwjaLPl7rssUUfky8ygMcpt8F/HGe0CiFeO6jtmp7J rss9vVlj9dBEvg9ZrdLKrTywoAq8S8Uqz4brybTcB5LHiuZk2aZ1IjZ1bDSgb5p4C4HitpL9o QPVgyj+1WZlYxCSwCojE47xDcA+QkhzJ3+CInTP0k6Q1XR7zDIOro93xm7SWOTQxIHuG9F+r+ R246DycWoaDSWoM1qNvV3hEcr7k44bhHUfFiZ5R55v1HGYWERHNkQ/0DZfjBdLff5dUS72omL kRRFBKFXhX05WRZvqPvUeS0ywpfholoXsmBH6Hz5kM2yPtjpNbGoH6AzUlgEJKQyrQGuokaRX euEgGTX5gNfQj9MHXU/+5gXdJzw0ycGb7yKd4boucG7Ves9u8etP2ubGOSp1EyNcBENrs6idD Lxk+zkQGLOX1zTxdWmZ8Bin/Otc/K11rNUi7A3Cw0k9EnrEo2sovwlpw18m6Y/biglfFIqvee h1SFLj4MVn1fVqRnoOlHqHfn1xOWxg7V92O+bCOb8ahbMWlKwH39yUKF2YNQT9LtLl53i8DIk jHqaCwBZLLMm6I/rrbCbzpeeRW15cnRxjjhtfw3YGg94gMktz4QXEf13QTA7z7C30PqheKQze KixFDWRwAgDIk33leg5A55UUaSkPr5iL5/vvbr9IMOirM= Fixes changing the Line Out audio source with the video input on MyGica UTV3 board. Previously, GPIOs were only set in em28xx_set_audio_source(), which only boards with USB audio support reach. Signed-off-by: Nils Rothaug --- drivers/media/usb/em28xx/em28xx-core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) -- 2.34.1 diff --git a/drivers/media/usb/em28xx/em28xx-core.c b/drivers/media/usb/em28xx/em28xx-core.c index 61d7bf701d5..e390138f57e 100644 --- a/drivers/media/usb/em28xx/em28xx-core.c +++ b/drivers/media/usb/em28xx/em28xx-core.c @@ -416,8 +416,9 @@ int em28xx_audio_analog_set(struct em28xx *dev) int ret, i; u8 xclk; + /* GPIOs are set later for boards with audio */ if (dev->int_audio_type == EM28XX_INT_AUDIO_NONE) - return 0; + return em28xx_gpio_set(dev, INPUT(dev->ctl_input)->gpio); /* * It is assumed that all devices use master volume for output. From patchwork Sat Feb 3 12:47:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nils Rothaug X-Patchwork-Id: 13544241 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C991B17C77 for ; Sat, 3 Feb 2024 12:48:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=212.227.15.19 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964539; cv=none; b=I5llivk7MvAXCJiOVjXOGO9UMXynvdXKX5LtZlAnaDynsEbZpJhbfEaLBzNcf1entDkf8lppDADJ1hiHegXwzki4/R3c3jmuNglUcW6FD6OXJCU/YzCVgn1CKFRRZ/Ouelaq5x/CdJohNjrvjWuTVSpZSsP5lcqzrM4vc92uwZI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706964539; c=relaxed/simple; bh=yfIwFf8l8LnvVzGeMvjilsUdq7I9sIV6v2qPFcH2Ysg=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=HubcBsXeBUvmXWCTch6ZSCYz6q/pDjX+bB+9miZgwkwITRU0/T3lE77VUYAFXx814ExsSVVpgvClbPzK8SbpM0L6FOWZHKjD3Ry68k2pHlrL5AJ5V4I8riz5V1WLwGTNtuJNkS4DO6bHo0Fjqf62cJTWzF5/1wDhfY/j0/LZGl0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de; spf=pass smtp.mailfrom=gmx.de; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b=FzIIViSG; arc=none smtp.client-ip=212.227.15.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gmx.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmx.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmx.de header.i=nils.rothaug@gmx.de header.b="FzIIViSG" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.de; s=s31663417; t=1706964531; x=1707569331; i=nils.rothaug@gmx.de; bh=yfIwFf8l8LnvVzGeMvjilsUdq7I9sIV6v2qPFcH2Ysg=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To: References; b=FzIIViSGeI/mOqzQqGebz6B0KqGojxpekWL+xKhSmF+T/BJc9Yrg/PFBh59ZEvVM szmU4LWJFYr/Rn173WkerD6yZRO8dDvll8fWtqnua+2dSTIpFWFU4ksuBz5RG4rNu 8uVOJYttSLthEM6B9kX/qpft6z3xvCmsAo16qs4SSq4Qt0cQjThcFsoKcWDe1YCf/ 3xwBhdprdErZpU1QmHk80n4OREBz1GNi6/JzMLKUfhxnCLhzcaYGjvYnY1jXqiHK0 QFcU4STnholAz6KbZhbO9OoAArLKIE3yXgQ2iMBQLalgkQgatDVyYGiKmQBuRN4nV dnaOE+xi99oHOTwq0Q== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from nilsr-VirtualBox ([83.78.44.59]) by mail.gmx.net (mrgmx005 [212.227.17.184]) with ESMTPSA (Nemesis) id 1N6siz-1qy2AO2dd1-018MtU; Sat, 03 Feb 2024 13:48:51 +0100 From: Nils Rothaug To: mchehab@kernel.org Cc: linux-media@vger.kernel.org, Nils Rothaug Subject: [PATCH 4/4] media: admin-guide: Update cardlists Date: Sat, 3 Feb 2024 13:47:45 +0100 Message-Id: <20240203124745.10257-5-nils.rothaug@gmx.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240203124745.10257-1-nils.rothaug@gmx.de> References: <20240203124745.10257-1-nils.rothaug@gmx.de> Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Provags-ID: V03:K1:VBH1Hhf/WgFQFDrzfrb5VZLDxagZCpIG75pAplXM1fC2vlnAVGN LN+3WdpIfTKITjRIko4t7FVKrcz2gnDU8W2Laz+4LNgZhyvC9i7/SbouZs0rSij49gvOZ/w Ad0SRadgYyfUlVCkCo5FE65C5cB6Us+OUY3EU6SijoG+pqy0XrqDVIAh75WDkodh7VD09vQ bfa3I0YVNBgjARY1OoIUw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:gSwP02ckTnQ=;GEIcQfhAb0jDKAaCb0J+O4F4wCn 32uiUdM3vDPn6tLL77S4ti5Q+4Sv/6uN2xf9wWMbvS0Sq90Y0/I1UCoBgHGwumM7UFvUJU/Z8 LXBRbCs2fGKaJD6RUtdNuiLlvhUpKLOxk0FiEfFKfP+ZS/m3W7kjUFYl8yCZ+QDqwblknnrwZ pQBuqxjyhXr0XKI/IJqd7sLGYj6jAg+/ZZGITupU4AGgeHtYK3jdn8mpA8NNpUjhmcC2sCbJS mgQ7gl/dFYZegtzQ1XHxzJoOP00MuOBAV5yIyqEFLTQIPjChXCgqhtpNalCCzCxsc4c4W76yW W/7FACYOdpe6bJiIV7BEfR9PWS5xEsJHSH1oBRGILWXrO8LRi80kD2ZXng6yu6yRxJ8Cf1i1K YAPS9/dhjH3Z3eTiQwCeH5GhwlXDOry0GBT9/9b3k2QMUwPJKU62sNBrIhApFvBwEAjCace+d 6B4ktMo48h6LyOY5sXike4zpeMiKTSAFNJAXbscGKgdguOJj9Vdvt8RvdOY6b/PvofRPYErTl 4OzcAria3JZ3pvN0+L4XgTygG1SCmi+HPkp68AffrWtsZ4ipkHzbM4N1Lz7lgmpQFZUgpQVma JXFpnmBwlZMJvfJSiDfOlU0IBEtHXCzK7mIj4shX0VvsF3R6aQ5iMYcoY2pGSp6cXLeagpDR5 xSNqkVRdLrYV78OIPikepRHcycR8+5PXGMsDRFtBnhmym3VE1g7hVQ+nK25pLLnAl116eaWnX kubVI9LJ7CfOzwwywq8+NsryS34roxV2PVJG8+6pO5AfdBlK7ZRVgZN+00Yx7OsUEXh1rgPy5 4+IXLiCEosV5X7qj7zkOw9H5F5IlAQEXjiqTPsfaHnJys= Add a few recently supported cards. Signed-off-by: Nils Rothaug --- Documentation/admin-guide/media/em28xx-cardlist.rst | 8 ++++++++ Documentation/admin-guide/media/tuner-cardlist.rst | 2 ++ Documentation/devicetree/bindings/media/rc.yaml | 1 + 3 files changed, 11 insertions(+) -- 2.34.1 diff --git a/Documentation/admin-guide/media/em28xx-cardlist.rst b/Documentation/admin-guide/media/em28xx-cardlist.rst index ace65718ea2..7dac07986d9 100644 --- a/Documentation/admin-guide/media/em28xx-cardlist.rst +++ b/Documentation/admin-guide/media/em28xx-cardlist.rst @@ -438,3 +438,11 @@ EM28xx cards list - MyGica iGrabber - em2860 - 1f4d:1abe + * - 106 + - Hauppauge USB QuadHD ATSC + - em28274 + - 2040:846d + * - 107 + - MyGica UTV3 Analog USB2.0 TV Box + - em2860 + - eb1a:2860 diff --git a/Documentation/admin-guide/media/tuner-cardlist.rst b/Documentation/admin-guide/media/tuner-cardlist.rst index 362617c59c5..65ecf48ddf2 100644 --- a/Documentation/admin-guide/media/tuner-cardlist.rst +++ b/Documentation/admin-guide/media/tuner-cardlist.rst @@ -97,4 +97,6 @@ Tuner number Card name 89 Sony BTF-PG472Z PAL/SECAM 90 Sony BTF-PK467Z NTSC-M-JP 91 Sony BTF-PB463Z NTSC-M +92 Silicon Labs Si2157 tuner +93 Tena TNF931D-DFDR1 ============ ===================================================== diff --git a/Documentation/devicetree/bindings/media/rc.yaml b/Documentation/devicetree/bindings/media/rc.yaml index 7bbe580c80f..dedc5a4b81e 100644 --- a/Documentation/devicetree/bindings/media/rc.yaml +++ b/Documentation/devicetree/bindings/media/rc.yaml @@ -103,6 +103,7 @@ properties: - rc-msi-digivox-iii - rc-msi-tvanywhere - rc-msi-tvanywhere-plus + - rc-mygica-utv3 - rc-nebula - rc-nec-terratec-cinergy-xs - rc-norwood