fix wrong qam register access for SDR cad

This commit is contained in:
Ralph Metzler 2017-01-19 16:37:50 +01:00
parent d069dc051f
commit f6c7586815
2 changed files with 6 additions and 5 deletions

View File

@ -5254,13 +5254,13 @@ static void tempmon_setfan(struct ddb_link *link)
pwm -= 1; pwm -= 1;
} }
ddblwritel(link, (pwm << 8), TEMPMON_FANCONTROL); ddblwritel(link, (pwm << 8), TEMPMON_FANCONTROL);
} }
static void temp_handler(unsigned long data) static void temp_handler(unsigned long data)
{ {
struct ddb_link *link = (struct ddb_link *) data; struct ddb_link *link = (struct ddb_link *) data;
spin_lock(&link->temp_lock); spin_lock(&link->temp_lock);
tempmon_setfan(link); tempmon_setfan(link);
spin_unlock(&link->temp_lock); spin_unlock(&link->temp_lock);
@ -5308,7 +5308,6 @@ static int ddb_init_tempmon(struct ddb_link *link)
if (link->ids.regmapid < 0x00010002) if (link->ids.regmapid < 0x00010002)
return; return;
spin_lock_init(&link->temp_lock); spin_lock_init(&link->temp_lock);
printk("init_tempmon\n");
tempmon_init(link, 1); tempmon_init(link, 1);
} }

View File

@ -374,11 +374,13 @@ int ddbridge_mod_output_start(struct ddb_output *output)
if (mod_SendChannelCommand(dev, Channel, CHANNEL_CONTROL_CMD_SETUP)) if (mod_SendChannelCommand(dev, Channel, CHANNEL_CONTROL_CMD_SETUP))
return -EINVAL; return -EINVAL;
mod->Control |= CHANNEL_CONTROL_ENABLE_DVB; mod->Control |= CHANNEL_CONTROL_ENABLE_DVB;
} else { } else if (dev->link[0].info->version == 1) {
/* QAM: 600 601 602 903 604 = 16 32 64 128 256 */ /* QAM: 600 601 602 903 604 = 16 32 64 128 256 */
/* ddbwritel(dev, 0x604, CHANNEL_SETTINGS(output->nr)); */ /* ddbwritel(dev, 0x604, CHANNEL_SETTINGS(output->nr)); */
ddbwritel(dev, qamtab[mod->modulation], CHANNEL_SETTINGS(output->nr)); ddbwritel(dev, qamtab[mod->modulation], CHANNEL_SETTINGS(output->nr));
mod->Control |= (CHANNEL_CONTROL_ENABLE_IQ | CHANNEL_CONTROL_ENABLE_DVB); mod->Control |= (CHANNEL_CONTROL_ENABLE_IQ | CHANNEL_CONTROL_ENABLE_DVB);
} else if (dev->link[0].info->version == 3) {
mod->Control |= (CHANNEL_CONTROL_ENABLE_IQ | CHANNEL_CONTROL_ENABLE_DVB);
} }
if (dev->link[0].info->version < 3) { if (dev->link[0].info->version < 3) {
mod_set_rateinc(dev, output->nr); mod_set_rateinc(dev, output->nr);
@ -1618,7 +1620,7 @@ static int mod_init_3(struct ddb *dev, u32 Frequency)
{ {
int status, i; int status, i;
printk("%s\n", __func__); //printk("%s\n", __func__);
return 0; return 0;
} }