Antonio Mancuso wrote:
Hello,
On Monday 28 June 2004 18:54, [EMAIL PROTECTED] wrote:
Also, I found some oddities when looking at the mt352 driver. The TechniSat AirStar2 uses a FlexCop IIB b2c2 chip that works with the SkyStar2 module, but in the linuxtv cvs-tree the skystar2.c has the following check in master_xfer: if ((msgs[i].addr != 0x0e) && (msgs[i].addr != 0x0f) && (msgs[i].addr != 0x68) && (msgs[i].addr != 0x61)) but the I2C address of the mt352 is/defaults to 0x0f, which causes the whole module to fail transferring any I2C messages. Adding 0x0f to that if solves this error.
you are right. My guess is that the driver has been tested and working but when the patch was provided, for some reasons this file wasn't patched.
Another oddity - in master_xfer too - is the following: // read command if ((num == 2) && (msgs[0].flags == 0) && (msgs[1].flags == I2C_M_RD) && (msgs[0].buf != NULL) && (msgs[1].buf != NULL))
In mt352.c the read command is contains the following: struct i2c_msg msg [] = { { .addr = I2C_MT352_ADDR, .flags = I2C_M_NOSTART, .buf = b0, .len = 1 }, { .addr = I2C_MT352_ADDR, .flags = I2C_M_RD, .buf = b1, .len = 1 } };
as I2C_M_NOSTART isn't defined as 0 every read_register command will fail too. Changing I2C_M_NOSTART to 0 solves the problem and the module can read the mt352 registers successfully.
you right again. since I don't have the Infineon tuner supported by the original driver I cannot say this setting is wrong, but for Samsung tuner it is.
Some othe diffs are:
original static struct _tuner_info tuner_info [] = {
.fe_frequency_min = 174000000,
.fe_frequency_max = 862000000,
.....
....
}
my patch: static struct _tuner_info tuner_info [] = { .fe_frequency_min = 474000000, .fe_frequency_max = 858000000, ..... .... }
original: switch (op->constellation) { case QAM_16: tps |= (1 << 14); break; case QAM_64: tps |= (2 << 14); break; default: ; }
my patch: switch (op->constellation) { case QAM_16: tps |= (1 << 4); break; case QAM_64: tps |= (2 << 4); break; default: ; }
also trhe chrage pump and band select values are different.
You may see all the diffs as soon the patch it will be merged into the cvs.
Antonio
Looking forward to hear some comments/explanations or so.
Greets
Bj�rn "Keeper" Stiddien
Thanks for your fast reply, is there any eta for the patch? I'd like to offer my help if you need testers for the patch :)
