summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert McNamara <rmcnamara@mythtv.org>2011-06-18 00:23:28 (GMT)
committer Robert McNamara <rmcnamara@mythtv.org>2011-06-18 00:23:28 (GMT)
commit0ac73fbb3d067e6a740e71de7ac6afd1528e4c15 (patch)
treee48ede6ff79a331b19a1fed0a60397701e169b4c
parentc50a0721da72a58ef84b5f84be5b7bb384d53bc6 (diff)
Firewire: Add a new DCX-3200 model and split out generic changers.
Add a DCX-3200 model reported on the list. While I was looking at it, I noticed that the fallback changer (DEFAULT) only follows the Scientific Atlanta/Cisco STB code path. So, I split the GENERIC STB into two different boxes. A quick analysis of the code of some of the other firewire changers out there suggests that nearly every single Motorola box will behave with the code we use to change "known" motorola STBs. So, now there's a Generic SA device and a Generic Motorola selection. If the motorola STB isn't already in the code, the Motorola Generic should work pretty reliably without new code.
-rw-r--r--mythtv/libs/libmythtv/firewiredevice.cpp11
-rw-r--r--mythtv/libs/libmythtv/videosource.cpp3
2 files changed, 9 insertions, 5 deletions
diff --git a/mythtv/libs/libmythtv/firewiredevice.cpp b/mythtv/libs/libmythtv/firewiredevice.cpp
index c4ca8e9..609e832 100644
--- a/mythtv/libs/libmythtv/firewiredevice.cpp
+++ b/mythtv/libs/libmythtv/firewiredevice.cpp
@@ -180,7 +180,7 @@ bool FirewireDevice::SetChannel(const QString &panel_model,
vector<uint8_t> cmd;
vector<uint8_t> ret;
- if ((panel_model.toUpper() == "GENERIC") ||
+ if ((panel_model.toUpper() == "SA GENERIC") ||
(panel_model.toUpper() == "SA4200HD") ||
(panel_model.toUpper() == "SA4250HDC"))
{
@@ -230,6 +230,7 @@ bool FirewireDevice::SetChannel(const QString &panel_model,
(panel_model.toUpper().left(4) == "DCH-") ||
(panel_model.toUpper().left(4) == "DCX-") ||
(panel_model.toUpper().left(4) == "QIP-") ||
+ (panel_model.toUpper().left(4) == "MOTO") ||
(panel_model.toUpper().left(5) == "PACE-"));
if (is_mot && !alt_method)
@@ -359,7 +360,7 @@ QString FirewireDevice::GetModelName(uint vendor_id, uint model_id)
QString ret = s_id_to_model[(((uint64_t) vendor_id) << 32) | model_id];
if (ret.isEmpty())
- return "GENERIC";
+ return "MOTO GENERIC";
ret.detach();
return ret;
@@ -424,7 +425,7 @@ static void fw_init(QMap<uint64_t,QString> &id_to_model)
{
/* DCH-3200, DCX-3200 */
0x1c11, 0x1cfb, 0x1fc4, 0x23a3, 0x23ee, 0x25f1,
- 0xfa01, 0x25f2,
+ 0xfa01, 0x25f1, 0x25f2,
/* DCX-3432 */
0x24a0,
/* DCH-3416 */
@@ -458,6 +459,7 @@ static void fw_init(QMap<uint64_t,QString> &id_to_model)
for (uint i = 0; i < motorola_vendor_id_cnt; i++)
{
id_to_model[motorola_vendor_ids[i] << 32 | 0xf740] = "DCX-3200";
+ id_to_model[motorola_vendor_ids[i] << 32 | 0xf804] = "DCX-3200";
id_to_model[motorola_vendor_ids[i] << 32 | 0xfa03] = "DCX-3200";
id_to_model[motorola_vendor_ids[i] << 32 | 0xfa07] = "DCX-3200";
id_to_model[motorola_vendor_ids[i] << 32 | 0x24a1] = "DCX-3200";
@@ -511,6 +513,7 @@ bool FirewireDevice::IsSTBSupported(const QString &panel_model)
(model == "PACE-779") ||
(model == "QIP-6200") ||
(model == "QIP-7100") ||
- (model == "GENERIC"));
+ (model == "SA GENERIC") ||
+ (model == "MOTO GENERIC"));
}
diff --git a/mythtv/libs/libmythtv/videosource.cpp b/mythtv/libs/libmythtv/videosource.cpp
index 56fa627..796a6af 100644
--- a/mythtv/libs/libmythtv/videosource.cpp
+++ b/mythtv/libs/libmythtv/videosource.cpp
@@ -1176,7 +1176,8 @@ FirewireModel::FirewireModel(const CaptureCard &parent,
guid(_guid)
{
setLabel(QObject::tr("Cable box model"));
- addSelection(QObject::tr("Generic"), "GENERIC");
+ addSelection(QObject::tr("Motorola Generic"), "MOTO GENERIC");
+ addSelection(QObject::tr("SA/Cisco Generic"), "SA GENERIC");
addSelection("DCH-3200");
addSelection("DCX-3200");
addSelection("DCT-3412");